29.05.2007, 09:42
|
STG
LVF-Grünschnabel
Beiträge: 30
Registriert seit: May 2007
8.6
2006
de
1097
Deutschland
|
Problem mit Serieller Schnittstelle
' schrieb:Versuch doch mal mit dem Free Serial Port Monitor die Kommunikation mit deinem COM Port zu überprüfen.
Cu, katsumi
Hallo,
das habe ich heute gemacht. Ging ganz gut, nur leider bin ich jetzt erst recht richtig ahnungslos. :-)
Hab den Sensor mit Hyperterminal angesprochen und mit LabVIEW.
Wie man sieht bekommt der Sensor immer dasselbe und sendet leider immer was unterschiedliches zurück.
Werd nicht schlau daraus. Vielleicht habt ihr ja auch wieder eine Idee.
In LabVIEW hab ich das Senden auch noch anders Prüfen können - am Serial-Kabel einfach Pin 2 und 3 gebrückt
und mein VI laufen lassen. Da kommt genau das Zurück was ich sende.
Wenn jemand noch ne Idee hat wäre ich sehr Dankbar.
MfG RIchard
|
|
|
29.05.2007, 12:27
|
katsumi
LVF-Gelegenheitsschreiber
Beiträge: 124
Registriert seit: Jul 2006
2011
2006
DE_EN
Niederlande
|
Problem mit Serieller Schnittstelle
' schrieb:[...]
Wie man sieht bekommt der Sensor immer dasselbe und sendet leider immer was unterschiedliches zurück.
Werd nicht schlau daraus. Vielleicht habt ihr ja auch wieder eine Idee.
[...]
Identischer kann es nicht sein. Softwaretechnisch scheint das Senden in Ordnung zu sein, aber der Empfang hakt. Ist dein Read VI vielleicht nicht ok ?
Cu, katsumi
|
|
|
29.05.2007, 12:39
|
IchSelbst
LVF-Guru
Beiträge: 3.700
Registriert seit: Feb 2005
11, 14, 15, 17, 18
-
DE
97437
Deutschland
|
Problem mit Serieller Schnittstelle
' schrieb:Wenn jemand noch ne Idee hat wäre ich sehr Dankbar.
Das 0x15 in deinem Bild bedeutet NAK.
NAK heißt, dass der Empfänger ein ungültiges Telegramm (wie auch immer) bekommen hat. Im Prinzip müsstest du das Zeichen 0x15 auch mit dem Hyperterminal sehen/simulieren können. Sende anstelle eines "T" z.B ein "D", dann sollte, wenn alles "stimmt", auch hier ein 0x15 zusehen sein. Es sei denn, das Hyperterminal ist so konfiguriert, dass Steuerzeichen nicht angezeigt werden.
Im übrigen solltest du exakt das selben senden: Im Hyperterminal und in LV MT - anstelle von XT im LV (man weis ja nie).
Schau mal nach, ob im Hyperterminal eine Wartezeit nach jedem Sendezeichen eingestellt ist. Wobei ich hier davon ausgehen, dass du den String am Stück senden lässt (wie in LV) und nicht die Zeichen einzeln eintippst.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
|
|
|
29.05.2007, 12:41
|
STG
LVF-Grünschnabel
Beiträge: 30
Registriert seit: May 2007
8.6
2006
de
1097
Deutschland
|
Problem mit Serieller Schnittstelle
' schrieb:Identischer kann es nicht sein. Softwaretechnisch scheint das Senden in Ordnung zu sein, aber der Empfang hakt. Ist dein Read VI vielleicht nicht ok ?
Cu, katsumi
Mhh.. diese Möglichkeit bestünde aber habe es schon auf mehreren Rechnern probiert.
Glaube also nicht das es daran liegt. Werde es aber nochmal in ner anderen LabVIEW Version schreiben und Probieren.
Gruß Richard
|
|
|
29.05.2007, 12:52
|
katsumi
LVF-Gelegenheitsschreiber
Beiträge: 124
Registriert seit: Jul 2006
2011
2006
DE_EN
Niederlande
|
Problem mit Serieller Schnittstelle
' schrieb:Mhh.. diese Möglichkeit bestünde aber habe es schon auf mehreren Rechnern probiert.
Glaube also nicht das es daran liegt. Werde es aber nochmal in ner anderen LabVIEW Version schreiben und Probieren.
Gruß Richard
Verbinde doch mal den LV Rechner mit einem zweiten Rechner ueber den Com Port und starte beim zweiten Rechner den Hypertermimal auf lauschen. Vielleicht sieht man dann jeweils nen Unterschied ?
Vielleicht ist die Wartezeit von 250ms doch zu knapp und der Buffer wird nicht ganz ausgelesen, weshalb bei weiteren Sende-/Antwortversuchen es nicht klappt. Gibts nen Befehl, wo du den Buffer "entleeren" kannst (CLR?) ?
cu, katsumi
|
|
|
29.05.2007, 13:15
|
STG
LVF-Grünschnabel
Beiträge: 30
Registriert seit: May 2007
8.6
2006
de
1097
Deutschland
|
Problem mit Serieller Schnittstelle
' schrieb:Das 0x15 in deinem Bild bedeutet NAK.
NAK heißt, dass der Empfänger ein ungültiges Telegramm (wie auch immer) bekommen hat. Im Prinzip müsstest du das Zeichen 0x15 auch mit dem Hyperterminal sehen/simulieren können. Sende anstelle eines "T" z.B ein "D", dann sollte, wenn alles "stimmt", auch hier ein 0x15 zusehen sein. Es sei denn, das Hyperterminal ist so konfiguriert, dass Steuerzeichen nicht angezeigt werden.
Im übrigen solltest du exakt das selben senden: Im Hyperterminal und in LV MT - anstelle von XT im LV (man weis ja nie).
Schau mal nach, ob im Hyperterminal eine Wartezeit nach jedem Sendezeichen eingestellt ist. Wobei ich hier davon ausgehen, dass du den String am Stück senden lässt (wie in LV) und nicht die Zeichen einzeln eintippst.
Danke erstmal für Deine Antwort,
Habe jetzt mit Hyperterminal ein falsches Telegramm gesendet - erhielt dann wie von Dir richtig vermutet bei Port den Wert 0x15 und vom Sensor die Normale Fehlermeldung zurück.
"Im übrigen solltest du exakt das selben senden: Im Hyperterminal und in LV MT - anstelle von XT im LV (man weis ja nie)."
Wie meinst Du das? Sorry wenn ich das nicht gleich verstehe - bin noch nicht so lang am LabVIEWen.
Die Zeichen sende ich in Hyperterminal einzeln oder als Text. Beides Funktioniert.
Grüße Richard
|
|
|
29.05.2007, 15:39
|
STG
LVF-Grünschnabel
Beiträge: 30
Registriert seit: May 2007
8.6
2006
de
1097
Deutschland
|
Problem mit Serieller Schnittstelle
' schrieb:Einen Versuch hätte ich schon noch: Stell mal anstelle von einem Stoppbit in LV zwei Stoppbits ein.
Wußte nicht genau wie Du das meinst. Hab deswegen alle Varianten probiert.
Serielle Schnittstelle mit 2 Stopp Bits Konfiguriert und den String mit einem Stopp bit gesendet
Serielle Schnittstelle mit 2 Stopp Bits Konfiguriert und den String mit 2 Stopp bits gesendet /020T0049..
Serielle Schnittstelle mit 1 Stopp Bits Konfiguriert und den String mit einem Stopp bit gesendet
Serielle Schnittstelle mit 1 Stopp Bits Konfiguriert und den String mit 2 Stopp bits gesendet
Leider alles ohne Erfolg.
Gruß Richard
|
|
|
| |