LabVIEWForum.de
Fehler abfangen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Fehler abfangen (/Thread-Fehler-abfangen)

Seiten: 1 2


RE: Fehler abfangen - Freddy - 21.12.2020 14:27

Wenn Du mit der Error Meldung das Programm beenden möchtest. Musst Du jede der While Schleifen beenden.

Deine unterste Schleife endet mit dem boolen EXIT_FLAG. Die mittlere mit EXIT aus dem state control und die obere Schleife mit dem Ereignis Programm_exit.

Alle drei musst mit den entsprechenden Aufrufen beenden. Erst dann endet dein Programm.
D.h. schreibe ein Programmteil, dass die Error Meldung auswertet und im Fehlerfall die drei Schleifen beendet.

Gruß
Freddy


RE: Fehler abfangen - Martin.Henz - 21.12.2020 15:00

Grrrr....
(21.12.2020 14:12 )hulk schrieb:  Aber war dann mein Ansatz vom Wochenende nicht besser, einen Fehlerfall als event zu triggern? Dann würde ich alles beenden.
besser oder schlechter ... wer soll denn das beurteilen - ich jedenfalls nicht :-)


Selbstverständlich kannst du auch her gehen und einen Event bei der Event Struktur auslösen und anschließend von dort aus dein Programm beenden. Du kannst auch ganz anders machen Tongue. Lediglich die nicht funktionierenden Lösungen solltest du nicht in die engere Wahl ziehen Post-880-1250020234

Zitat:Nur warum funktionierte diese Variante nicht?

Weil der Zweig mit der Event-Struktur nicht beendet wird.

...oder meist du die Variante oben angesprochene Variante mit dem Event? Falls ja, dann musts du auch ein Ereignis auslösen, z.B. ein User Event oder Property Node, Value (signaling).


RE: Fehler abfangen - hulk - 21.12.2020 19:23

Guten Abend,
Ich meinte die Version mit dem Event.
Wenn ich den Fehlercluster als Event registriere, hätte ich vermutet, dass er automatisch etwas in der Event Schleife auslöst. Sah in der Theorie am plausibelsten aus.


RE: Fehler abfangen - Martin.Henz - 21.12.2020 20:11

Hallo Steffen,

da musst du den vom Error Cluster (der auf deinem Front-Panel) den Property Node "Value(signaling)" auswählen. Wenn du dort dann den Error Cluster rein stopfst, dann wird in der oberen Schleife das Ereignis "Value Change" ausgelöst.

[attachment=61519]


RE: Fehler abfangen - hulk - 21.12.2020 21:13

Danke Martin,

ich habe gleichzeitig mal eine Meldung für den user eingefügt.
Und der Form halber das VISA wieder geschlossen. An der Stelle soll nur geprüft werden, ob das Gerät angeschlossen ist.
Die Testsequenz folgt in anderen Schritten.

Gute Nacht Smile
Steffen


RE: Fehler abfangen - hulk - 23.12.2020 09:01

Guten Morgen,

ich muss noch einmal stören. Irgendwas stimmt nicht.
Das Fehlerereignis löst aus, wenn das Gerät angeschlossen. (Verbindungstest erfolgreich).
Jedoch bekomme ich null Rückmeldung am Fehlerindicator oder in der event Schleife für "alter Wert/neuer Wert".
Mit Einzelschritten sehe ich, dass das event auslöst, aber ich sehe wie gesagt keinen Auslösegrund.
Ich habe mal den aktuellen Projektstand als Zip und das Haupt VI einzeln angehangen

Gruß
Steffen


RE: Fehler abfangen - jg - 23.12.2020 11:40

Hallo Steffen,

das Schreiben von "Value Signaling" löst auf jeden Fall ein Event aus, auch wenn sich der Wert mglw. gar nicht ändert (oder wie in deinem Fall, gar kein Fehler vorliegt).

In der Eventstruktur tust du aber so, als ob auf jeden Fall ein Fehler vorliegt, wenn du dieses Event abarbeitest.

Mgl. Lösungen: "Value Signaling" nur auslösen, wenn wirklich ein Fehler anliegt, oder entsprechend eine Fallunterscheidung in der Eventstruktur programmieren.

Gruß, Jens


RE: Fehler abfangen - hulk - 23.12.2020 12:34

Das sind eine Menge Fallstricke.
Wäre das angehängte eine Möglichkeit zur Fallunterscheidung?
Ich habe das Signaling einfach in eine Case structur gesetzt. Das true kommt von der Errorleitung


RE: Fehler abfangen - jg - 23.12.2020 15:06

Ja, das ist eine Möglichkeit, etwas übersichtlicher: Schließe direkt den Error-Cluster am Case-Selektor an...

Gruß, Jens


RE: Fehler abfangen - hulk - 23.12.2020 15:37

Hi,

ich war mittlerweile schon testen. Es nimmt langsam Form an.

Danke
Frohes Fest