Monty87
09.01.2013, 19:01 (editiert von Monty87 am 09.01.2013 um 19:03) |
RS232 mit Agilent Multimeter: Handshake brücken? (Computertechnik) |
Hallo zusammen,
mir bereitet seit einigen Tagen die serielle Kommunikation mit einem Agilent Multimeter (34420A) Probleme.
Ich mörchte zur Realisierung eines Automatisierungssystems Daten mit o.g. Gerät über eine RS232 Schnittstelle austauschen.
Laut Bedienungsanleitung nutzt dieses Multimeter einen Hardware-Handshake über DTR/DSR.
Zu Testzwecken kommuniziere ich von meinem PC aus mit dem Seriellen Terminal "Termit". Nutze ich ein vollbelegtes Nullmodemkabel und aktiviere ich in den Einstellungen von Termit den flowcontrol (RTS/CTS oder DTR/DSR) funktioniert die Kommunikation problemlos.
Leider bietet meine eigentliche Hardware(Beckhoff Buskopplet mit RS232-Klemme KL6001) keinen Hardwarehandshake über DTR/DSR. Daher wollte ich diese Funktion überbrücken. Dazu habe ich im Stecker des Messgerätes Pin 4 und 6 (DTR/DSR) sowie Pin 7 und 8 (RTS/CTS) gebrückt. Gesendete Befehle werden zwar vom Messgerät empfangen (Erkennbar daran das gesendete Einstellungen übernommen werden). Das Gerät selber Anwortet aber nicht. Beim Befehl den aktuellen Messwert auszulesen piepst das Multimeter nur kurz zeigt aber sofort Error an, was bedeutet er hat den Befehl zwar erhaltet sendet aber den Messwert vermutlich aufgrund des fehlenden Handshakes nicht zurück.
Wieso hat er meine Brücke nicht geschluckt?
Habe ich etwas falsch gemacht oder wo liegt mein Denkfehler?
Hier ein Link zur Bedienungsanleitung, ab Seite 176 finden sich Infos zur RS232-Schnittstelle:
http://cp.literature.agilent.com/litweb/pdf/34420-90001.pdf
Wäre toll wenn mir jemand weiter helfen kann.
Vielen Dank
mfg
Eike |
Monty87
09.01.2013, 19:53
@ Monty87
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» Hallo zusammen,
» mir bereitet seit einigen Tagen die serielle Kommunikation mit einem
» Agilent Multimeter (34420A) Probleme.
» Ich mörchte zur Realisierung eines Automatisierungssystems Daten mit o.g.
» Gerät über eine RS232 Schnittstelle austauschen.
»
» Laut Bedienungsanleitung nutzt dieses Multimeter einen Hardware-Handshake
» über DTR/DSR.
»
» Zu Testzwecken kommuniziere ich von meinem PC aus mit dem Seriellen
» Terminal "Termit". Nutze ich ein vollbelegtes Nullmodemkabel und aktiviere
» ich in den Einstellungen von Termit den flowcontrol (RTS/CTS oder DTR/DSR)
» funktioniert die Kommunikation problemlos.
»
» Leider bietet meine eigentliche Hardware(Beckhoff Buskopplet mit
» RS232-Klemme KL6001) keinen Hardwarehandshake über DTR/DSR. Daher wollte
» ich diese Funktion überbrücken. Dazu habe ich im Stecker des Messgerätes
» Pin 4 und 6 (DTR/DSR) sowie Pin 7 und 8 (RTS/CTS) gebrückt. Gesendete
» Befehle werden zwar vom Messgerät empfangen (Erkennbar daran das gesendete
» Einstellungen übernommen werden). Das Gerät selber Anwortet aber nicht.
» Beim Befehl den aktuellen Messwert auszulesen piepst das Multimeter nur
» kurz zeigt aber sofort Error an, was bedeutet er hat den Befehl zwar
» erhaltet sendet aber den Messwert vermutlich aufgrund des fehlenden
» Handshakes nicht zurück.
»
» Wieso hat er meine Brücke nicht geschluckt?
» Habe ich etwas falsch gemacht oder wo liegt mein Denkfehler?
»
» Hier ein Link zur Bedienungsanleitung, ab Seite 176 finden sich Infos zur
» RS232-Schnittstelle:
» http://cp.literature.agilent.com/litweb/pdf/34420-90001.pdf
»
» Wäre toll wenn mir jemand weiter helfen kann.
» Vielen Dank
»
» mfg
» Eik
Also ich bin relativ sicher, dass das Multimeter auf Pin 6(DSR) noch TRUE erwartet bevor die Daten gesendet werden können. Auf Seite 180 im Handbuch steht aber auch, dass DTR FALSE wird wenn das MM gerade beschäftigt ist. Also auch wenn es gerade Daten sendet/senden will. Es ist also wahrscheinlich keine gute Idee DTR auf DSR zubrücken um dort TRUE zu haben. Aber wo bekomme ich sonst TRUE her? Habe eben versucht Pin 6(DSR) mit Pin 8(CTS) zubrücken. Auf Pin 8 liegen ja die -10V(TRUE?) vom RTS der anderen Seite(Terminal) an. Doch auch das war leider ohne Erfolg... |
Alexander Bröcker

Hamburg, 10.01.2013, 10:48
@ Monty87
|
RS232 mit Agilent Multimeter: Handshake brücken? |
Hallo,
ich habe mir das ganze ein wenig angeschaut und muss Dir leider sagen, wenn Du das so verwenden möchtest, wirst Du nicht umhin kommen einen Konverter zu bauen. Ein kleiner ATMEL oder PIC kann dies machen. Denn Aufwand das ganze ohne einen Controller zu lösen sehe ich zu hoch. Aber Du kannst ja hier mal rumfragen ob das schon einer hat.
Gruß Alexander |
Monty87
10.01.2013, 16:14 (editiert von Monty87 am 10.01.2013 um 16:15)
@ Alexander Bröcker
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» Hallo,
»
» ich habe mir das ganze ein wenig angeschaut und muss Dir leider sagen,
» wenn Du das so verwenden möchtest, wirst Du nicht umhin kommen einen
» Konverter zu bauen. Ein kleiner ATMEL oder PIC kann dies machen. Denn
» Aufwand das ganze ohne einen Controller zu lösen sehe ich zu hoch. Aber Du
» kannst ja hier mal rumfragen ob das schon einer hat.
»
» Gruß Alexander
Hallo Alexander,
das versteh ich nicht ganz. Welche Funktion soll den dieser Controller übernehmen? Was ist daran so kompliziert, dass ich es nicht manuell brücken kann? Ich verstehe leider mein Problem noch nicht ganz...
mfg
Eike |
hws

59425 Unna, 10.01.2013, 16:55
@ Monty87
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» das versteh ich nicht ganz. Welche Funktion soll den dieser Controller
» übernehmen?
Das korrekte Hardware-Handshake.
» Was ist daran so kompliziert, dass ich es nicht manuell brücken kann?
Nichts, nur scheint das einfache Brücken das Problem ja nicht zu lösen.
Üblich ist, das eigene CTS und DSR mit dem fremden DTR zu verbinden.
Oder DTR, DSR und CTS der einen Seite verbinden und RTS mit CTS der anderen Seite verbinden.
Wie dein Agilent das möchte, weiss ich nicht.
hws |
Monty87
31.01.2013, 22:49
@ hws
|
RS232 mit Agilent Multimeter: Handshake brücken? |
Hallo nochmal. Hier mal ein Auszug aus dem Handbuch:
DTR / DSR Handshake Protocol
The meter is configured as a DTE (Data Terminal Equipment) device and
uses the DTR (Data Terminal Ready) and DSR (Data Set Ready) lines of
the RS-232 interface to handshake. The meter uses the DTR line to send
a hold-off signal. The DTR line must be TRUE before the meter will
accept data from the interface. When the meter sets the DTR line
FALSE, the data must cease within 10 characters.
To disable the DTR/DSR handshake, do not connect the DTR line and tie
the DSR line to logic TRUE. If you disable the DTR/DSR handshake, also
select a slower baud rate (300, 600, or 1200 baud) to ensure that the data
is transmitted correctly
Ich habe wie dort beschrieben versucht den Handshake zu überbrücken:
Externes Netzteil, -16V an DSR. Das brachte leider keinen Erfolg. Was könnte da nur der Grund sein? ich bin einfach ratlos.
Eine andere Idee:
Gibt es eine Art RS232 Hub, der sich ein und ausangsseitig konfigurieren lässt? Soll heißen: Ich bräuchte ein Gerät das Nutzdaten 1 zu 1 weiterleitet und auf der einen Seite den Handshake durchführt auf der anderen Seite aber ohne ihn kommunizieren kann. Gibt es so etwas?
mfg Eike |
hws

59425 Unna, 31.01.2013, 23:24
@ Monty87
|
RS232 mit Agilent Multimeter: Handshake brücken? |
DTR muss vom PC ausgewertet werden. Für solch "kniffelige" Fälle hab ich einen Zwischenstecker, an dem ich die Signale an LEDs sehen kann und auch die "üblichen" Kurzschlüsse per Schalter setzen. Damit und einem guten Terminalprogramm (Brayterm) hab ich bisher alles hingekriegt.
» Eine andere Idee:
» Gibt es eine Art RS232 Hub, der sich ein und ausangsseitig konfigurieren
» lässt?
RS232 ist ein Point to Point Protokoll. Da gibt es keine Hubs wie bei USB. Protokollkonverter - ja sowas gibt es.
hws |
Monty87
02.02.2013, 12:11
@ hws
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» DTR muss vom PC ausgewertet werden.
Wie meinst du das? Am PC kann ich doch den Handshake deaktivieren.
» Für solch "kniffelige" Fälle hab ich
» einen Zwischenstecker, an dem ich die Signale an LEDs sehen kann und auch
» die "üblichen" Kurzschlüsse per Schalter setzen.
Du meinst sicher soetwas:
http://www.ipcas.de/download/prospekt-datenblatt/rs232tester.pdf
Den müsste ich mir mal besorgen. Dann kann ich mir das genaue Vorgehen des Handshakes besser ansehen.
Oder hat jemand eine Anleitung zum selberbauen?
ist ja eigentlich kein Hexenwerk...
» RS232 ist ein Point to Point Protokoll. Da gibt es keine Hubs wie bei USB.
» Protokollkonverter - ja sowas gibt es.
Ja, da habe ich mich falsch ausgedrückt.
Aber ein Protokollkonverter ist ja eigentlich nicht das richtige. Es bleibt ja bei RS232. Er müsste von RS232 ohne Handshake auch RS232 mit Handshake konvertieren... Wird es vermutlich nicht geben oder? |
hws

59425 Unna, 02.02.2013, 17:14
@ Monty87
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» » DTR muss vom PC ausgewertet werden.
» Wie meinst du das? Am PC kann ich doch den Handshake deaktivieren.
Ja klar, aber genau das mag das Agilent nicht! (vermutlich)
» Du meinst sicher soetwas:
» http://www.ipcas.de/download/prospekt-datenblatt/rs232tester.pdf
Ja, sowas ähnliches.
Welches Programm läuft denn auf dem PC? Hängt da evtl ein USB-RS232 Konverter zwischen?
Sonst müsste das mal jemand ausprobieren, der Zugriff auf die Hardware hat oder zumindest ein Agilent.
hws |
Monty87gast
03.02.2013, 17:54
@ hws
|
RS232 mit Agilent Multimeter: Handshake brücken? |
» » » DTR muss vom PC ausgewertet werden.
» » Wie meinst du das? Am PC kann ich doch den Handshake deaktivieren.
» Ja klar, aber genau das mag das Agilent nicht! (vermutlich)
»
» » Du meinst sicher soetwas:
» » http://www.ipcas.de/download/prospekt-datenblatt/rs232tester.pdf
»
» Ja, sowas ähnliches.
»
» Welches Programm läuft denn auf dem PC? Hängt da evtl ein USB-RS232
» Konverter zwischen?
» Sonst müsste das mal jemand ausprobieren, der Zugriff auf die Hardware hat
» oder zumindest ein Agilent.
»
» hws
Also Hard und Software sind von Beckhoff. Das ist diese Schnittstelle die keinen DTR/DSR kann. Wohl aber RTS/CTS, was aber dem Agilent nichts bringt.
Ich habe es nun so gelöst:
RTS/CTS an der Schnittstelle aktiviert. Und eine Loopback-Brücke zwischen Pin 7 und 8 damit ich immer Senden kann.
Jetzt hab ich auf diesen Pins immer TRUE. Also Steuerleitung drauf und auf der anderen Seite beim Agilent auf Pin 6 drauf. Funzt!
Peinlich, dass ich dafür so lange gebraucht hab. Im nachhinein alles ganz logisch. Ich war nur beim experimentieren davon überzeugt dass TRUE -10V sind. Is aber wohl nicht so. Erst als ich mit dem Multimeter nochmal alles durchgemessen hab bin ich drauf gekommen dass er +10V haben will... ubs^^ |