27.08.2006, 13:22
Beitrag #1
|
shk
LVF-Neueinsteiger
Beiträge: 6
Registriert seit: Aug 2006
7.1
2005
kA
Deutschland
|
Status- und Fehlerliste
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
|
|
|
28.08.2006, 10:53
(Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2006 10:58 von Kvasir.)
Beitrag #2
|
|
|
29.08.2006, 10:45
Beitrag #3
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
Status- und Fehlerliste
Hallo,
dann hätte ich da auch gleich noch 'ne Frage dazu.
Kann man die Melder auch netzwerkweit einsetzen, oder nur lokal?
Ich lese z.B. die Register meiner Geräte auf dem einen Rechner (SubVI's zur Kommunikation mit Geräten) aus. Im Fehlerfall wird was in eine Shared-Variable geschrieben und auf einen anderen Rechner (HauptVI) geschrieben.
Gruß Markus
' schrieb:Ich denke hierfür wären Melder genau das richtige.
Hab dir ein kleines Bsp angehängt. Schau dir aber ev. noch die Beispiele in LV zu Meldern an.
Du kannst natürlich auch komplexere Strukturen, als nur Strings (wie in meinem Bsp) an Melder übergeben. Z.B.: einen Cluster, der ähnlich einem Fehlercluster, ID, Beschreibung und Status mitliefert.
Grüße
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
01.09.2006, 09:09
Beitrag #4
|
shk
LVF-Neueinsteiger
Beiträge: 6
Registriert seit: Aug 2006
7.1
2005
kA
Deutschland
|
Status- und Fehlerliste
Danke Kvasir. Hab nur noch ein Timeout an den Baustein Waiting for Notification angeschlossen und dann hat es, so wie ich das wollte, funktioniert.
die shk
|
|
|
01.09.2006, 09:42
Beitrag #5
|
Kvasir
LVF-Freak
Beiträge: 642
Registriert seit: May 2006
10
2004
DE_EN
0000
Oesterreich
|
Status- und Fehlerliste
Freut mich, dass es klappt.
@Markus: Etwas verspätete Antwort, da ich mir nicht sicher war. Aber siehe da, ein Blick in die LabVIEW Hilfe unter "Melder Funktionen" hilft weiter.
Demnach sind Melder nicht für Netzwerke geeignet.
A few weeks of developement and testing can save a WHOLE afternoon in the library!
|
|
|
01.09.2006, 15:47
Beitrag #6
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
Status- und Fehlerliste
............. dann doch lieber wieder meine Shared-Variables, die ich zur Datenübertragung, Synchronisierung, Meldung usw. verwende. :DIch könnte mir LabVIEW gar nicht mehr ohne Share Variables vorstellen.
Gruß Markus
' schrieb:Freut mich, dass es klappt.
@Markus: Etwas verspätete Antwort, da ich mir nicht sicher war. Aber siehe da, ein Blick in die LabVIEW Hilfe unter "Melder Funktionen" hilft weiter.
Demnach sind Melder nicht für Netzwerke geeignet.
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
| |