LabVIEWForum.de - Serielle Schnittstelle bricht ab

LabVIEWForum.de

Normale Version: Serielle Schnittstelle bricht ab
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich Lese einen Controllino und WTW Multimeter per serielle Schnittstelle in Labview ein. Das funktioniert soweit sehr gut, allerdings verbindet die Schnittstelle nie beim ersten mal, sprich, ich muss jedes mal mindestens einmal die VI starten und wieder beenden. Hab es mit Zeitverzögerung probiert, hat alles nicht geholfen. Ich kann es sofort starten, sofort beenden, wieder starten und ad hoc funktioniert es. Geht es auch ohne diesen Neustart, oder kann ich den irgendwie simulieren, damit man nicht stets das Program mindestens einmal beenden muss?

BG.
Hallo cosmo,
das klingt eigenartig. Kannst Du das VI mal anhängen?
Gruß
Freddy
Das passiert, wenn im Labview-Programm Schnittstellenfehler nicht behandelt werden und die Gegenstelle schon sendet, wenn Labview noch gar nichts empfängt. Dann passiert es, wie es der Zufall will, dass Labview mitten in einem gesendeten Byte, oder mitten in einem Datensatz, anfängt zu empfangen. Das gibt Datenfehler, die bei Nichtbehandlung zum Abbruch des Programms führen. Wie lautet denn die Fehlermeldung?
Hey,

ja klar, hier die VI.

Die Fehlermeldung lautet: Eigenschaftsknoten (arg 8) in VISA Configure Serial Port (Instr.).vi->Redoox.vi

Und ja, das Messgerät ist bereits am Senden, während ich die VI starte, allerdings tut es das auch noch, wenn ich sie einmal beendet und wieder gestartet habe und in der Regel erhaltete ich als erste Antwort nur den unvollständigen String, was der VI beim zweiten starten aber nichts ausmacht.

BG,
Cosmo
Nach Deiner VISA Eingabe zu urteilen, gibt es die COM1 nicht nur eine COM11.
Daher kannst Du die COM nicht initialisieren.

Gruß
Freddy
Also wenn ich die VI starte werden mir alle verfügbaren COM Ports angezeigt, wähle den jeweiligen aus und klicke den Button zum starten des Lesevorganges.
Dann versuch es mal mit der "harten" Methode.
Auswahl der COM -> löschen der Verbindung -> neu initialisieren.

Versuch es einfach mal mit diesem kleinen VI.
Ich habe Dein Programm bis zur While Schleife getestet.
Geht ohne Fehler in der Errorleitung.

Gruß
Freddy
Anmerkung: Wenn die Schnittstelle initialisiert ist und der Sender sendet kontinuierlich, man empfängt aber nicht kontinierlich, dann füllt sich in der Zeit in der man nicht empfängt der Empfagspuffer - bis zum Überlauf. Man sollte also, wenn man den Empfang auf "true" schaltet und auf aktuelle Daten Wert legt, als Erstes immer den Empfangspuffer leeren.
Referenz-URLs