Hallo liebe Forumsbesucher, vielleicht kann mir jemand von Euch bei meinem Problem helfen. Derzeit versuche ich eine Pumpe über den PC anzusteuern - dabei erfolgt der Anschluss über die RS232-Schnittstelle des Computers. Laut Angaben des Herstellers muss ich mit Hilfe einer batch-Datei ein Textfile (in dem die Befehle für die Pumpe drin stehen) an die Pumpe schicken. Mir ist nur etwas unklar, wie das geht. Verwendet man hierfür den Befehl copy - z.B. "copy test1.txt com1:"? Hier bekomme ich als Rückgabe bisher immer "1 file(s) copied", aber die Pumpe tut nichts. Und wie ist es möglich die Rückgaben der Pumpe auf dem PC einzulesen? Würde mich riesig über Eure Hilfe freuen. Viele Grüße, Christina
Vielleicht stimmen nur die Parameter der Schnittstellen COM1 nicht, also Baudrate, Datenbits, Parity und Stoppbits. Die kann man mit dem mode Kommando einstellen bzw. anzeigen lassen. Statt die Kommandodatei "blind" rauszuschicken, würde ich ein Terminalprogramm benutzen und die Kommandos aus der Datei zeilenweise an die Pumpe schicken. Im Terminalprogramm kann man dann auch sehen, ob und wie die Pumpe antwortet. Terminalprogramme sind unter RS232 angegeben. Stimmt die Hardware, d.h. hier das Kabel zwischen PC und Pumpe? Zunächst ist zu klären ob du ein 1:1-Kabel oder ein Nullmodem-Kabel (gekreuzte Leitungen) brauchst. Dann, ob die Pumpe die Handshake-Leitungen benötigt. Wenn dir die Begriffe spanisch vorkommen und der Artikel RS232 nicht weiterhlft, gib einen Link an, wo man mehr über die Pumpe nachforschen kann.
Type Steuerkommado.txt >com1 mit lpt gehts auf jeden fall, so hab ich früher immer kleine textfiles gedruckt ;)
Vorher mit MODE Schnittstellenparameter einstellen.
Hallo :-) die Parameter für die Schnittstelle hatte ich laut Herstellerangaben eingegeben. Habe sie dann auch nochmals mit dem Befehl "mode" kontrolliert und es hat gepasst. Trotzdem tat sich nix. Hab heute auch mal versucht, das ganze über Hyperterminal zu machen. Hab dort die Parameter (Baudrate usw.) eingegeben und die Textdatei (beinhaltet bisher nur den Befehl: Pumpe starten) abgeschickt. Trotzdem niente ... zum verzweifeln. Bei der Pumpe handelt es sich im eine IPC-N der Firma Ismatec (siehe http://www.ismatec.com/de_d/pumpen/s_ipc/ip_ipc.htm). Der Anschluss der Pumpe ist grad das Gegenstück zu dem vom PC. Ein Nullmodemkabel funktioniert also eigentlich nicht, da es zwei gleiche Anschlüsse hat. Der Hersteller sagt in der Betriebsanweisung aber auch nichts dazu. Bzgl. handshake-Leitungen habe ich in der Anleitung auch nichts gefunden. Werde mal versuchen, Montag dazu genaueres beim Hersteller zu erfahren. Den Befehl type hab ich mal versucht. werd's aber nochmal so wie oben ausprobieren. Vielleicht klappt's ja. Danke für Eure Tipps, Christina
Auf Seite 36 der Bedienungsanleitung ist die RS232-Buchse (RS232 IN) abgebildet. Es ist eine 9-polige Buchse, weiblich. Die Pinbelegung ist passend für ein 1:1 Kabel, kein Nullmodemkabel. Als Pins sind markiert TXD, RXD und GND. Ich gehe davon aus, dass die Handshake-Leitungen keine Rolle spielen. Als Schnittstellenparameter können 9600 Baud/8 Datenbits/No Parity/1 Stoppbit oder 1200 Baud/8 Datenbits/No Parity/1 Stoppbit benutzt werden. Die Auswahl scheint der µC in der Pumpe per Software zu machen. Der µC reagiert frühstens 3 s nach Einschalten der Stromversorgung der Pumpe.
Hey, hab den Befehl "type Batch1.txt >com1" wie oben probiert. Hat nicht funktioniert. Wenn ich die Datei über Hyperterminal an den Port schicke, bringt es die Fehlermeldung "connection timed out". Die Parameter Baudrate usw. stimmen. Da bin ich mir sicher. Ich habe das Kabel aus unserer EDV-Abteilung geholt. Eigentlich müsste es passen, denke ich. Ist ja kein Nullmodemkabel. Einziger Fehler der mir noch einfallen würde ist, dass entweder das Kabel oder die Schnittstelle am Computer defekt ist. Werde diese Möglichkeiten kontrollieren. Viele Grüße, Christina
>aus unserer EDV-Abteilung geholt
Dass muss nichts heissen...
Wenn du die Datei per Hyperterminal verschickst, könntest du auf der
Empfängerseite mal die beiden Übertragungspin (RXD und TXD) mit einem
Kabel verbinden. Dann sollte Hyperterminal beim Versand gleichzeitig die
Datei empfangen. Das wäre dann der PC-Schnittstellentest.
Wenn das erfolgreich war, ist entweder das Kabel verdreht oder die
Schnittstelle an der Pumpe defekt.
Du kannst die Pinbelegung relativ leicht ausmessen: bei 9-pol-Sub-D ist Pin 5 Masse, Pins 2 und 3 RX und TX. TX ist spannungsführend (-8..-12V oder +8..+12V) und muss auf der Gegenseite auf den Pin mit 0V. Muss der Befehl mit irgendwas terminiert werden? CR, NL oder so?
Ob die Leitungen zwischen PC und Pumpe korrekt angeschlossen sind kannst Du folgerndermassen feststellen: An serieller Schnittstelle der Pumpe zwischen Tx und GND Spannung messen und Wert notieren. Dasselbe an PC-Seite. Gnd von beiden miteinander verbinden. Tx von Pumpe auf Rx von PC und wieder Spannung zwischen GND und dieser Leitung messen. Spannung muss jetzt in ähnlicher Grösse wie ohne Kabel sein. Wenn nicht (Murks oder Null Volt) hast Du möglicherweise Tx auf Tx angeschlossen (passiert schon mal öfter). Jetzt dasselbe mit Rx Pumpe und Tx PC. Wenn es dann nicht geht könnte es noch sein, dass am PC die Steuerleitungen RTS/CTS usw. kurz geschlossen werden müssen. Ich bin mir ziemlich sicher, dass das im DOS-Mode (type oder copy-Befehl) auf jeden Fall so sein muss. Sonst geht nichts raus. Was bei Hyperterminal ist weiss ich jetzt nicht. Hier im Forum gibt es ein gutes Terminalprogramm (glaube Hterm). Das braucht die Steuerleitungen nicht. Da reichen die drei Leitungen Rx, Tx und Gnd. Schick von dort einfach mal (nach korrektem Anschluss): "1#13" + CR da muss dann von der Pumpe wass mit 2IPC 4031310" zurückkommen. Vorausgesetzt die Pumpe hat die Adresse 1. Zumindest lässt sich so feststellen ob die Pumpe korrekt angeschlossen ist und den PC versteht. Ich habe mir mal kurz die Anleitung angesehen. Befehle müssen mit CR abgeschlossen werden. Möglicherweise wird das mit dem copy-Befehl nicht rausgeschickt. Einstellung muss 9600 Baud, 8 Bit, 1 Stopbit, No Parity sein. Dass die Schnittelle vom PC defekt ist ist meist selten. Einfach mal Rx/Tx (Anschluss 2 und 3) kurzschliessen und mit Hterm/Hyperterminal was rausschicken. Muss dann auch wieder empfangen werden. Wie ich aber schon geschrieben hatte weiss ich nicht was Hyperterminal mit den Steuerleitungen macht. Ausserdem stellt Hyperterminal Sonderzeichen (STX, CR usw.) teilweise nicht richtig dar. Hterm kann das aber alles. Viel Erfolg Andreas
Hey, Bedeutet das, dass das Verbindungskabel im Endeffekt die Pins so verknüpft, dass TxD der Pumpe auf RxD des PCs geht und umgekehrt? Nur die Masse bleibt auf Pin 5? Viele Grüße, Christina
Es ist 100% sicher das die DOS bzw. BIOS Routinen NUR mit Hardware handshaking funktionieren.
Hallo Leute, vielen Dank für Eure zahlreiche Hilfe. Hab das Problem jetzt gelöst bekommen :-) Kabel, Schnittstellenparameter etc. haben am Schluss alle gestimmt. Musste nur noch drauf kommen, bei dem Befehl statt der "13" am Ende die Enter-Taste zu drücken. Kann einem als blutiger Anfänger wahrscheinlich passieren. erröt Ist aber auch etwas umständlich in der Bedienungsanleitung erklärt. Werd Euch später in meiner Diss dankend erwähnen ;-) Viele Grüße, Christina
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.