LabVIEWForum.de
VISA über MAX geht, im VI nicht mehr - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: VISA über MAX geht, im VI nicht mehr (/Thread-VISA-ueber-MAX-geht-im-VI-nicht-mehr)



VISA über MAX geht, im VI nicht mehr - buettnerstefan - 29.06.2018 08:05

Guten Morgen,

ich habe ein Laborgerät welches ich über RS232 in mein LabVIEW-Programm einbinden möchte.
Nun kann ich das Gerät über den MAX(Version14.5.0f0) sehen und mit dem VISA Testpanel kann ich auch die Befehle senden und das Gerät tut wie es soll.
Wenn ich nun aber in meinem eigenem VI oder dem "Kontinuierliches Lesen und Schreiben von seriellen Daten"-VI aus der Beispielbibliothek versuche die Befehle zu senden regiert das Gerät leider nicht. (LV Version 14.0.1 32bit)

Eingestellt habe ich sowie im MAX als auch im VI den COM Port, die Baudrate, die Datenbits, die Parität, die Stoppbits. Die Befehle habe ich 1 zu 1 eingegeben.
Ich habe auch schon versucht den MAX zu schließen und das Gerät an einen anderen Port anzuschließen um auszuschließen das der MAX die Verbindung noch blockiert..

Hat jemand eine Idee wo mein Fehler liegt? Was macht das Beispiel-VI anders als das VISA-Testpanel?

Beste Grüße
Stefan


RE: VISA über MAX geht, im VI nicht mehr - jg - 29.06.2018 08:23

Was erzählt der Error-Cluster?

Gruß, Jens


RE: VISA über MAX geht, im VI nicht mehr - buettnerstefan - 29.06.2018 08:28

Beim schreiben kommt kein Fehler (aber das Gerät reagiert nicht)

Beim lesen kommt folgender Fehler:

Fehler -1073807339
VISA: (Hex 0xBFFF0015) Zeitüberschreitung, bevor der Vorgang abgeschlossen werden konnte.


RE: VISA über MAX geht, im VI nicht mehr - GerdW - 29.06.2018 09:22

Hallo Stefan,

Zitat:Hat jemand eine Idee wo mein Fehler liegt?
Hast du im VI das korrekte TermChar an den Befehl angehangen?


RE: VISA über MAX geht, im VI nicht mehr - buettnerstefan - 29.06.2018 10:00

Laut Anleitung von dem Gerät soll ich "Befehlxyz"\r\n schreiben. Genau so habe ich es im MAX VISA Testpanel reingeschrieben und so ist es beim Gerät angekommen.
Im VI ist Abschlusszeichen TRUE eingestellt und an TermChar ist 0xA (also dezimal 10 --> sollte \n entsprechen) angeschlossen.
Den Befehl habe ich jetzt so wie oben geschrieben und auch versucht das \n wegzulassen (weil das vllt VISA nun automatisch macht?)
Leider ging es auf beide Arten nicht..
Wie soll ich es mit dem TermChar richtig machen?


RE: VISA über MAX geht, im VI nicht mehr - Ralfk84 - 29.06.2018 10:51

Du schreibst, dass das Gerät nicht reagiert. Meinst du damit, dass du über den Lesebefehl nichts vom Gerät auslesen kannst oder dass sich am Gerät nichts tut? Im ersten Schritt wäre es sinnvoll, herauszubekommen ob der eingegebene Befehl überhaupt am Gerät ankommt?
Ich weiß jetzt nicht, um welches Gerät es sich konkret handelt, aber hast du Befehle bei denen du direkt am Gerät erkennen kannst ob der Befehl auch angekommen ist? Was passiert, wenn du dem Gerät nur verschiedene Befehle nacheinander sendest, ohne zwischenzeitlich zu versuchen Daten auszulesen? Reagiert das Gerät darauf?


RE: VISA über MAX geht, im VI nicht mehr - GerdW - 29.06.2018 11:31

Hallo Stefan,

Zitat:Im VI ist Abschlusszeichen TRUE eingestellt und an TermChar ist 0xA (also dezimal 10 --> sollte \n entsprechen) angeschlossen.
Den Befehl habe ich jetzt so wie oben geschrieben und auch versucht das \n wegzulassen
1. Das TermChar wird per Default nur beim Lesen verwendet, aber nicht beim Schreiben.
2. ein "\n" ist nicht immer das Gleiche wie ein "\n": Du hast hoffentlich den Anzeigemodus deines Strings auf "\-Code" gestellt!?

Wo ist dein VI?
Wie soll man dir helfen, wenn du kein VI zeigst?


RE: VISA über MAX geht, im VI nicht mehr - buettnerstefan - 29.06.2018 13:02

(29.06.2018 11:31 )GerdW schrieb:  Hallo Stefan,

Zitat:Im VI ist Abschlusszeichen TRUE eingestellt und an TermChar ist 0xA (also dezimal 10 --> sollte \n entsprechen) angeschlossen.
Den Befehl habe ich jetzt so wie oben geschrieben und auch versucht das \n wegzulassen
1. Das TermChar wird per Default nur beim Lesen verwendet, aber nicht beim Schreiben.
2. ein "\n" ist nicht immer das Gleiche wie ein "\n": Du hast hoffentlich den Anzeigemodus deines Strings auf "\-Code" gestellt!?
Der String von "Befehl" war in diesem Beispiel-VI leider auf "normale Anzeige" statt auf "\-Code Anzeige" eingestellt. Nachdem ich das umgestellt hatte stand hinter meinem Befehl auf einmal ..xyz..\\r\\n
Die beiden Backslash die zuviel waren gelöscht und schon ging es! Vielen Dank!!!Dais



Wo ist dein VI?
Das Beispiel-VI "Kontinuierliches Lesen und Schreiben von seriellen Daten"
Wie soll man dir helfen, wenn du kein VI zeigst?