Daten mit sub_vi in/aus config files schreiben/lesen
Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
01.12.2008, 14:02 (Dieser Beitrag wurde zuletzt bearbeitet: 01.12.2008 14:43 von jg.)
Daten mit sub_vi in/aus config files schreiben/lesen
hallo,
vorneweg: ich bin absoluter LabVIEW-neuling und versuche das grade im rahmen einer studienarbeit zu lernen
ich will aus einem umfangreicheren haupt_vi materialdaten in ein config file schreiben bzw aus diesem lesen.
dazu hab ich mir jeweils ein sub_vi gebastelt.
folgende probleme hab ich dabei:
ich kann das daten_schreiben.vi nicht aus dem haupt_vi beenden
ich weiß nicht wie ich beim daten_einlesen.vi die abfrage so ändern kann dass ich pro section auch mehr als einen key auslesen kann - und entsprechend im daten_schreiben.vi für eine section mehrere keys schreiben kann (geht das überhaupt)
die pfad-übergabe is irgendwie nicht so optimal, aber nach ewig langem rumbasteln is das das einzige was ich zum funktionieren gekriegt hab, gibts da nen besseren weg
und schließlich: ist es überhaupt sinnvoll das mit nem config file zumachen?
danke für die hilfe
lg
Daten mit sub_vi in/aus config files schreiben/lesen
Hallo
also ich kann deine Vis nicht öffnen da ich nur LV 7.1 habe ... aber
such am bestem mal im example finder nach "configuration settings file" da müsste es write und read finden ... das sollte deine fragen beantworten ...
was das nicht beenden können betrifft verstehe ich das nicht so ganz ... wenn in deinem sub vi eine schleife läuft musst du diese auch stoppen sonst kannst du das VI nicht beenden ...
Daten mit sub_vi in/aus config files schreiben/lesen
' schrieb:Hallo
also ich kann deine Vis nicht öffnen da ich nur LV 7.1 habe ... aber
such am bestem mal im example finder nach "configuration settings file" da müsste es write und read finden ... das sollte deine fragen beantworten ...
was das nicht beenden können betrifft verstehe ich das nicht so ganz ... wenn in deinem sub vi eine schleife läuft musst du diese auch stoppen sonst kannst du das VI nicht beenden ...
T
erstmal danke für die schnelle antwort.
die example finder bsp hab ich ja benutzt um die vi zusammen zubauen
das sub_vi funktioniert ja ohne probleme, nur wenn ich es in ein haup_vi einbaue und den stopp-button verdrahte klappt es nicht und das sub_vi läuft die ganze zeit und deswegen gehts nicht weiter
Daten mit sub_vi in/aus config files schreiben/lesen
Hi,
ich meine, Frontpanel-Elemente eines Sub-VIs, die Du vom Haupt-VI aus schreibst werden nicht jedes Mal beim Elementaufruf abgefragt. Zumindest nicht, ob vom Haupt-VI was neues kommt, sondern nur, was gerade aktuell im Frontpanel drin steht.
Daten mit sub_vi in/aus config files schreiben/lesen
' schrieb:Hi,
ich meine, Frontpanel-Elemente eines Sub-VIs, die Du vom Haupt-VI aus schreibst werden nicht jedes Mal beim Elementaufruf abgefragt. Zumindest nicht, ob vom Haupt-VI was neues kommt, sondern nur, was gerade aktuell im Frontpanel drin steht.
das problem ist dass ich ja eigentlich 2 events hab: einmal wenn ich im hauptprogramm das sub_vi stoppen will
und einmal wenn ich im hauptprogramm im control cluster werte eintragen drücke (damit die werte ins config file eingetragen werden und ich danach neue eintragen kann)
ein kleines bsp zu globaler variable wäre net
Daten mit sub_vi in/aus config files schreiben/lesen
Irgendwie baust du das Ganze für eine LV-Newbie zu kompliziert auf. Events an ein Sub-VI übertragen, das ist schon höheres LV-Level. Geht aber z.B. sehr gut mit Notifier oder Queues.
Ansonsten, bau das doch einfacher auf: Deine Sub-VIs haben nur Speicher- oder Lesefunktion. Und sie werden nur aufgerufen, wenn im Main-VI was entsprechendes passiert.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Daten mit sub_vi in/aus config files schreiben/lesen
' schrieb:Irgendwie baust du das Ganze für eine LV-Newbie zu kompliziert auf. Events an ein Sub-VI übertragen, das ist schon höheres LV-Level. Geht aber z.B. sehr gut mit Notifier oder Queues.
Ansonsten, bau das doch einfacher auf: Deine Sub-VIs haben nur Speicher- oder Lesefunktion. Und sie werden nur aufgerufen, wenn im Main-VI was entsprechendes passiert.
Gruß, Jens
hi
ja du hast recht, so hab ichs jetzt auch gemacht.
hab nur noch ein problem: beim daten_einlesen.vi kann ich immer von einer section nur einen keyname mit entsprechendem keyvalue auslesen auch wenn ich mit daten_schreiben mehrere eingetragen hab.
ich weiß jetzt aber nicht so genau wie ich das vi am intelligentesten anpasse damit ich beliebig viele keys die zu einer section gehören auslesen kann.
Daten mit sub_vi in/aus config files schreiben/lesen
Da musst du schon 2 For-Loops ineinander verschachteln.
Schließlich willst du zu jeder Section (äußere Loop) alle Keyvalues (innere Loop) haben.
Ach ja: und auf die lokalen Variablen kannst du bei entsprechender Verdrahtung verzichten, auch auf die Sequenz, für die richtige Abfolge sorgt der Datenfluß.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Daten mit sub_vi in/aus config files schreiben/lesen
' schrieb:entsprechendem keyvalue auslesen auch wenn ich mit daten_schreiben mehrere eingetragen hab.
man kann doch mehrere Male hintereinander mit jeweiliger Angabe des entsprechenden Keyname lesen. Eleganter ist zwar die Verwendung einer For-Schleife, das setzt jedoch voraus, daß der Datentyp von allen Keys der gleiche ist. Das ist machbar, indem man alle Keyvalues in das Format Text konvertiert (Für diese Hin/Rückkonvertierung gibts VIs).
Beispiel für Schleife zum Auslesen aller Keys (ohne die keynames und deren Anzahl zu kennen) in einem Abschnitt:
Nachtrag: Hier noch ein VI in
Daten mit sub_vi in/aus config files schreiben/lesen
' schrieb:man kann doch mehrere Male hintereinander mit jeweiliger Angabe des entsprechenden Keyname lesen. Eleganter ist zwar die Verwendung einer For-Schleife, das setzt jedoch voraus, daß der Datentyp von allen Keys der gleiche ist. Das ist machbar, indem man alle Keyvalues in das Format Text konvertiert (Für diese Hin/Rückkonvertierung gibts VIs).
Beispiel für Schleife zum Auslesen aller Keys (ohne die keynames und deren Anzahl zu kennen) in einem Abschnitt:
[attachment=43268:ReadKeys.png]
Nachtrag: Hier noch ein VI in
hi
vielen dank für die vis
falls ich nachträglich noch andere kenngrößen haben sollte (was höchstwahrscheinlich nicht vorkommt - nur zum verständnis) muss ich diese bei daten_einlesen.vi einfach übergeben indem ich das versteckte control - element als eingang verbinde?
die tabellenelemente sind ja echt super - jetzt lern ich die auch mal kennen