LabVIEWForum.de - Error Code 1073807300

LabVIEWForum.de

Normale Version: Error Code 1073807300
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

in einem VI wird ein Wert aus einem Gerät (IEEE) ausgelesen.
Willkürlich kommt es zu dem o.g. Fehler.
Die Adresse und GPIB Port sind nicht der Fehler.
Es wird auch nicht parallel auf dieses Gerät zugegriffen.
Anbei das Bild des VI.

Stimmt mit dem Datenablauf etwas nicht. Open Visa -> Read -> Close ???

Hat jemand hierzu Erfahrung?

Lv86_img

Gruss
GT123
Schon mal da geschaut?

Gruß Markus
Ja hatte ich auch schon. Treiber kann es nicht sein. Habe den Code modifiziert.
Nur mit Read Visa den Wert ausgelesen, ohne Open u. Close. Bis jetzt ist der Error nicht mehr aufgetreten.

Wann sollte das Open u. Close eigentlich verwendet werden...

Laut meiner Internetrecherche ist das ein umstrittenes Thema.
Open ist tatsächlich etwas redundant. Die LabVIEW VISA Funktionen machen ein implizites VISA Open wenn Du Ihnen eine Resource gibst die noch nicht geöffnet ist. Mit VISA Close ist das eine andere Sache. Bei seriellen Ports zum Beispiel sind diese solange sie durch eine Applikation geöffnet sind vom Zugriff durch andere Applikationen blockiert. Und da eine offene VISA Resource auch eine geöffnete serielle Schnittstelle bedeutet, kann dieser Port nicht mehr durch andere Applikationen geöffnet werden.

Das kann durchaus lästig sein wenn Dein VI zwar nicht mehr läuft und Du von einer anderen Applikation den zuvor benützten Port nicht ansprechen kannst. Ein explizites VISA Close am Ende Deines VIs stellt sicher dass dieser Port wieder für andere zugänglich ist. Das heisst nicht dass Du in jedem SubVI den Port wieder schliessen sollst (Schliessen und erneut öffnen eines Ports kostet zwar nicht so viel Zeit pro mal aber wenn Du das immer wieder in einer Loop machst kann das ein Programm sehr verlangsamen) aber am Ende Deines Hauptprogrammes ist es immer eine gute Idee. Und da man schon dabei ist mache ich auch immer ein explizites VISA Open Big Grin.

In Deinem VI würde das bedeuten, Open und Close jeweils ausserhalb der Schlaufe zu plazieren.

Rolf Kalbermatter
Guten Morgen Rolf,

aha, vielen Dank für die ausführliche Erklärung.
Dann werde ich einmal schauen wie sich das im dem Programmcode so macht :-)

Gruss
GT123
Referenz-URLs