27.08.2006, 13:22
Hallo,
ich soll seit kurzem mit LabVIEW programmieren und hab daher nur sehr wenig Erfahrung.
Mein Problem ist folgenden:
Ich habe ein Liste in der Status- und Fehlermeldungen (die nicht zum Abbruch führen) dargestellt werden und je nachdem ob eine neue Nachricht vorliegt, wird die Liste ergänzt.
Das funktioniert leider nur im eigentlich Hauptprogramm, also muss erst jedes SubVI fertig werden bevor wieder eine neue Meldung möglich ist.
Meine Frage deshalb, wie gehe ich am besten mit Statusmeldungen (z.B. "Starte Funktionsgenerator mit f=100Hz") und Fehlermeldungen (z.B. "Funktionsgenerator (GPIB=12) nicht gefunden") um, so dass jedes SubVI selbstständig melden kann, dass es jetzt gleich etwas macht und wenn es fertig ist, ob es erfolgreich war oder ein Fehler aufgetreten ist. Ich habe zwar überall fleißig einen ErrorIn-Cluster und einen ErrorOut-Cluster, aber die geben ja nur Fehlermeldungen weiter.
Globale Variablen scheinen mir wenig sinnvoll, weil das die gesamte modulare Programmierung nur "austrickst".
Ich habe auch überlegt eine "Reference" auf den Nachrichtenstring (enthält die aktuelle Meldung) mitzugeben und dann in die Liste zu übernehmen, aber dann wird im Hauptprogramm erst nach Beendigung jedes SubVI dieser String ausgewertet und in die Liste eingetragen.
Hat jemand vielleicht Vorschläge. Ich wäre für jeden Tipp dankbar.
Gruß,
die SHK
ich soll seit kurzem mit LabVIEW programmieren und hab daher nur sehr wenig Erfahrung.
Mein Problem ist folgenden:
Ich habe ein Liste in der Status- und Fehlermeldungen (die nicht zum Abbruch führen) dargestellt werden und je nachdem ob eine neue Nachricht vorliegt, wird die Liste ergänzt.
Das funktioniert leider nur im eigentlich Hauptprogramm, also muss erst jedes SubVI fertig werden bevor wieder eine neue Meldung möglich ist.
Meine Frage deshalb, wie gehe ich am besten mit Statusmeldungen (z.B. "Starte Funktionsgenerator mit f=100Hz") und Fehlermeldungen (z.B. "Funktionsgenerator (GPIB=12) nicht gefunden") um, so dass jedes SubVI selbstständig melden kann, dass es jetzt gleich etwas macht und wenn es fertig ist, ob es erfolgreich war oder ein Fehler aufgetreten ist. Ich habe zwar überall fleißig einen ErrorIn-Cluster und einen ErrorOut-Cluster, aber die geben ja nur Fehlermeldungen weiter.
Globale Variablen scheinen mir wenig sinnvoll, weil das die gesamte modulare Programmierung nur "austrickst".
Ich habe auch überlegt eine "Reference" auf den Nachrichtenstring (enthält die aktuelle Meldung) mitzugeben und dann in die Liste zu übernehmen, aber dann wird im Hauptprogramm erst nach Beendigung jedes SubVI dieser String ausgewertet und in die Liste eingetragen.
Hat jemand vielleicht Vorschläge. Ich wäre für jeden Tipp dankbar.
Gruß,
die SHK