LabVIEWForum.de - Messparameter aus .cfg-Datei auslesen

LabVIEWForum.de

Normale Version: Messparameter aus .cfg-Datei auslesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich habe einige zu Messdateien gehörige .cfg Dateien, die ursprünglich von einem LV geschrieben wurden. An dieses LV komme ich jetzt nicht ran, jedoch möchte ich ein Programm schreiben, dass die Messergebnisse, die zu der jeweiligen cfg gehören, auswertet. Dazu muss ich natürlich einige Informationen aus der jeweiligen cfg lesen, die zB Offset-Größen angeben. Das Problem ist, dass ich nicht weiß, mit welchem Subvi ich das bewerkstellige, da es entweder String oder nur Zahlen zum einlesen gibt, in den cfgs aber Werte ala "Const Parameter.Double Pulse (P+A).Rel Temp Phase=0,000000" stehen.

Die cfgs wurden aus einem Cluster geschrieben. Am liebsten wäre mir also eine Möglichkeit, die Datei wieder in einen Cluster umzuinterpretieren, sodass ich dann an die jeweils benannten Größen bequem rankomme.

Ich würde die cfg auch geren hochladen, aber der Dateityp ist offensichtlich nicht erlaubt. Darum hier der Inhalt einer cfg-Datei:

[output cluster]
Pulseshaper Mode="PM (A+B)"
Const Parameter.Double Pulse (P+A).Separation þfsÿ=200,000000
Const Parameter.Double Pulse (P+A).Rel Temp Phase=0,000000
Const Parameter.Double Pulse (P+A).Ratio þ0..1ÿ=1,000000
Const Parameter.Double Pulse (2x PM).Taylor?=FALSE
Const Parameter.Double Pulse (2x PM).w_ref þrad/fsÿ=2,387700
Const Parameter.Double Pulse (2x PM).CEO (A)=0,000000
Const Parameter.Double Pulse (2x PM).GD (A)=-60,000000
Const Parameter.Double Pulse (2x PM).GDD (A)=0,000000
Const Parameter.Double Pulse (2x PM).GDD (B)=0,000000
Const Parameter.Double Pulse (2x PM).Change Displays?=FALSE
Const Parameter.Step.w_step þrad/fsÿ=2,400000
Const Parameter.Step.Theta=3,141600
Const Parameter.V.w_V þrad/fsÿ=2,400000
Const Parameter.V.tau þfsÿ=100,000000
Const Parameter.Sine.Amplitude=0,500000
Const Parameter.Sine.Frequency þfsÿ=120,000000
Const Parameter.Sine.w_ref þrad/fsÿ=2,400000
Const Parameter.Sine.Phase=0,000000
Const Parameter.Sine.Add Const=0,000000
Const Parameter.Poly.Taylor?=FALSE
Const Parameter.Poly.w_ref þrad/fsÿ=2,400000
Const Parameter.Poly.Coefficients=<size(s)=4> 0,000000 0,000000 0,000000 0,000000
Multidim Scan.Parameter 0.# of Points=21
Multidim Scan.Parameter 0.Parameter=Poly GDD
Multidim Scan.Parameter 0.Min=-2000,000000
Multidim Scan.Parameter 0.Max=2000,000000
Multidim Scan.Parameter 1.# of Points=1
Multidim Scan.Parameter 1.Parameter=None (1dim)
Multidim Scan.Parameter 1.Min=0,000000
Multidim Scan.Parameter 1.Max=0,000000
General Parameter.Change Phase Sign
("PM & AM" mode) ?=TRUE
General Parameter.Add CompPhase?=TRUE
General Parameter.SLM Timing þmsÿ=1000
General Parameter.Gaussian Spectrum?=FALSE
General Parameter.Save Scan?=TRUE
General Parameter.Power Monitoring?=FALSE
Additional Comments=""
Diese *.cfg-Datei ist im Prinzip eine *.ini-Datei. Diese kannst du mit den VIs unter 'Programming»File I/O»Configfile VIs' einlesen und auf die Parameter zugreifen. Dazu nimmst du das 'ReadKey.vi' und gibts in der Section (in deinem Fall 'output cluster') den Key an (z.B. 'Pulseshaper Mode'). Dann bekommst das zugehörige Value geliefert. Als Datentypen kannst du neben Numeric auch Strings und Boolean einlesen.

Beste Grüße,
NWO
Vielen Dank,
das hat wunderbar geklappt!
Referenz-URLs