Problem: serielle Schnittstelle und Trockenschrank
Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Problem: serielle Schnittstelle und Trockenschrank
Hallo zusammen!
Zuerst möchte ich mich mal vorstellen:
Bin Chemielaborant und bearbeite seit langer Zeit Synthesen im Bereich Forschung - Entwicklung.
Der Steuerung der verschiedensten Geräte verwende ich schon seit Jahren LabVIEW, aktuell die Version 2010.
Nun stehe ich vor dem Problem, bei einem Vakuumtrockenschrank die Temperatur über die RS-232 ansteuern zu müssen.
Ein Steuerbefehl sieht etwa so aus:
@ABCD;xxxx"CR" (CR = 0D hex)
Wenn ich die Befehle über ZOC schicke funktioniert alles bestens, mit LabVIEW mit den üblichen seriellen VIs bekomme ich nur verstümmelte Fehlermeldungen.
Parameter: 9600, 8N1, keine Flusssteuerung.
Ich habe das auch mit einem anderen Notebook und Version 8.0 versucht, das Problem war das gleiche. Es macht auch keinen Unterschied, ob ich mit Kabel oder drahtlos (XBEE) arbeite.
Kann es sein, dass das "@"-Zeichen ein Problem verursacht?
Gruss
Fredy
16.02.2011, 21:31 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2011 21:33 von GerdW.)
RE: Problem: serielle Schnittstelle und Trockenschrank
Hallo Fredy,
funktioniert die Steuerung auf dem gleichen Rechner per HyperTerm (oder ein beliebiges anderes Terminalprogramm)?
Dies ist immer der erste Test bei Verwendung der seriellen Schnittstelle. Wenn es da funktioniert, funktioniert es (mit den gleichen Einstellungen) auch mittels LabVIEW...
Ansonsten:
Einfach mal dein VI anhängen. Vielleicht ein Problem beim Zusammensetzen des Strings? Ein "@" verursacht normalerweise keine Probleme...
Noch'ne Idee: Hast du CR (\r) als TerminationChar definiert?
RE: Problem: serielle Schnittstelle und Trockenschrank
Hallo Gerd,
danke für die Antwort.
Ich verwende immer das Terminalprogramm ZOC in der Version 6.27 (läuft auch auf 64 Bit).
Damit klappt die Kommunikation einwandfrei, unter LabVIEW jedoch nicht.
Das ist mir in all den Jahren mit unzähligen Geräten noch nicht passiert, bin ziemlich ratlos...
RE: Problem: serielle Schnittstelle und Trockenschrank
(16.02.2011 21:14 )Fredy schrieb: Ein Steuerbefehl sieht etwa so aus:
@ABCD;xxxx"CR" (CR = 0D hex)
Wenn Du nun noch das VI und das Format der nach dem Steuerbefehl empfangenen Nachricht gepostet hättest, könnte man über die Fehlerursache vermutlich etwas sagen Aber so bleibt es nur beim Reden um die Sache drum herum...
17.02.2011, 11:40 (Dieser Beitrag wurde zuletzt bearbeitet: 17.02.2011 22:42 von Fredy.)
RE: Problem: serielle Schnittstelle und Trockenschrank
Hallo Freunde,
hier noch ein paar Ergänzungen:
Das verwendete vi ist das altbekannte "Advanced Serial Write and Read.vi" aus den Beispielen.
Getestet habe ich es mit verschiedenen Befehlen. Beispiel:
@GOTN\r ;der Befehl fragt die Temperatur ab. Die Antwort wäre:
@ROTN;xxxx\r
Was ich bekomme, ist unterschiedlich, z.B.:
@EN@O;1\
oder Bruchstücke davon oder gar nichts.
Bei den VI-Einstellungen soielt es keine Rolle, ob ich den termination character (mit D) verwende oder nicht.
Bei Verwendung des Terminalprogramms ZOC funktioniert mit dem gleichen Equipment alles einwandfrei.
Gruss
Fredy
17.02.2011, 13:57 (Dieser Beitrag wurde zuletzt bearbeitet: 17.02.2011 14:04 von Lucki.)
RE: Problem: serielle Schnittstelle und Trockenschrank
Eigentlich müßte es funktionieren. Ich würde mal den ganzen überflüssigen Code zwischen den VIs "Visa Konfiguration" und "VISA Write" entfernen, vielleicht funktionierts dann.
Und beachte bitte: Wenn Du den Schreibtext mit \r beendest, dann nicht noch extra "Schreiben nach Endzeichen aktivieren" aktivieren. (Entfällt sowieso, wenn Du wie vorgeschlagen den Code entfernst)
RE: Problem: serielle Schnittstelle und Trockenschrank
Hallo Lucki,
ich habe es mit dem absoluten Minimum versucht: keine Verbesserung.
ABER:
Ich habe es mit verschiedenen Baudraten versucht. Ergebnis: 1200 und 4800 funktionieren einwandfrei, bei 4800 gibt es immer wieder mal Störungen und 9600 gibt nur Schrott. Warum funktionieren 9600 Baud mit dem Terminalprogramm ZOC einwandfrei?