cyber40014
Goto Top

Serielle Schnittstelle auslesen und in Logdatei speichern

Wie besitzen eine Fertigung mit Maschinen BJ 1995-1998. Diese besitzen einen 25 Pol sub-D Port,welcher einen Drucker mit serieller(!) 25 Pol Sub-D Schnittstelle ansteuert.
Die Daten kommen seriell raus und werden am Drucker scheinbar seriell weiterverarbeitet.
Wir nutzten einen intelligenten seriellen Switch mit Puffer, welche die Ausgabe von 3 Maschinen speichert und nacheinander an einen Drucker sendet.

Nun zu meinem Problem.
Der Switch ist hin und nicht mehr zu bekommen. Der Hersteller ist nicht mehr existent.
Ich suche nun nach einer möglichst kostengünstigen Lösung.
Der Maschinenhersteller hat noch Restbestände der Drucker und würde diese für 750€ das Stück veräußern.
Das wären für 3 Maschinen, da 1 Drucker vorhanden ist 1500€.

Ansich nicht "viel" Geld, aber hinsichtlich der Tatsache, dass es sich um Restbestände handelt keine wirklich zukunftssichere Lösung.

Ich habe mich mit dem Hersteller der Maschinen in Verbindung gesetzt und mir eine technische Spezifikation der Printeranschlüsse zukommen lassen. Es handelt sich tatsächlich um seriellen Output auf 4 Pins.

Ich habe mir nun aus Teilen des alten Switches und einem Konsolenkabel ein Anschlusskabel für den PC gebastelt, denn laut dieser Spezi soll es möglich sein den Output mithilfe des Hyperterminals abzufragen.

Nun bräuchte ich nur noch ein kleines Script, das dafür sorgt, dass quasi permanente am seriellen Anschluss der PCI Karte "gelauscht" wird und den Input in eine log schreibt. Ggf. dem User noch eine Meldung ausgibt, dass Daten in den Log geschrieben wurden. (Es handelt sich um ein Fehlerprotokoll der über Nacht laufenden Maschinen.

Soviel zur Theorie.

Mal vorausgesetzt der Anschluss des PC mithilfe des Kabels besteht im Praxistest und die techn. Spezi ist kein Märchen, dann bräuchte ich so ein Script.

Das Script sollte mit einfachsten XP Bordmitteln zu bewerkstelligen sein.

Fällt euch dazu etwas ein?

Wenn mir das gelingt, nehme ich einen der beim Win7 Rollout ausgemusterten Rechner und baue dort eine 4 Port Serial-Karte ein.
Stöpsel die 3 Maschinen an und gut ist.

Aufgrund eines anderen Problems brauche ich dort eh einen XP PC um die Sicherungsdisketten der Maschinen auszulesen.
Das wären dann 2 Fliegen mit einer Klappe.

Leider kenne ich mich nicht wirklich mit seriellen Schnittstellen aus. Mein Wissen beschränkt sich darauf, dass ich weiss, wie ich per Putty darauf zugreifen kann.

Ich weiss z.B. nicht wie ein Drucker die Daten über eine seriellen Input verarbeiten kann....

lg

Content-ID: 202851

Url: https://administrator.de/forum/serielle-schnittstelle-auslesen-und-in-logdatei-speichern-202851.html

Ausgedruckt am: 22.12.2024 um 23:12 Uhr

kaiand1
kaiand1 05.03.2013 um 22:31:44 Uhr
Goto Top
Moin
Nun so währe der Kauf der 2 Drucker sicherlich besser da du dann gleich "Reservegeräte" hast.
Warscheinlich wird es des Standard Protokoll sein.
Da aber kein Hersteller & Modell angegeben wurde kann so keiner was dazu sagen.
Je nach Defekt währe ja auch ggfs eine Reparatur möglich von dem Switch.
Abhören würde gehen jedoch hast du ja RX und TX.
cyber40014
cyber40014 05.03.2013 um 22:47:35 Uhr
Goto Top
Nein, da wir allein für jedes Gerät einen Drucker brauchen wenn wir keinen Switch haben (was ja aktuell der Fall ist), müssten wir die 1500€ bezahlen um überhaupt die Fehler aller 3 Maschinen ausgedruckt zu bekommen, falls sie nachts auf Fehler laufen. Dann hätten wir noch kein Reservergerät.
Es handelt sich um ferromatik Industriemaschinen aus der K und F Serie.
Der Drucker ist ein Nec Nadeldrucker mit Endlospapier.

Was genau meinst du mit "Abhören würde gehen jedoch hast du ja RX und TX"?
Beim Verbindungsaufbau müsste der Handshake ja stattfinden. (Bzw. hier ist es XON/XOFF)
Danach müsste die Spritzgussmaschine der Sender und der PC der Empfänger sein.

Vielleicht stelle ich mir eine serielle Verbindung auch zu einfach vor?

lg
kaiand1
kaiand1 05.03.2013 um 23:22:13 Uhr
Goto Top
Nun das mit dem Drucker scheint dann wohl das Serial Protokoll zu sein ggfs das TTY Protokoll.
Mit dem TX und RX ist gemeint das auf der einen Ader der PC ein Signal zum Drucker gibt.
Der Drucker auf der anderen Ader dem PC Antwortet.
Aber evtl würde dir ja auch
http://www.ipcas.de/beschreibungen/protokolldrucker.html
das helfen.
Die haben eine Alternative gemacht für die Druckeranbindung.
Dürfte warscheinlich auch Billiger sein als die Restposten zu nehmen.
Ist sicherlich einfacher als das Rad dafür neu zu Erfinden.
cyber40014
cyber40014 05.03.2013 um 23:33:15 Uhr
Goto Top
vielen dank,
sowas ähnliches habe ich auch schon gefunden allerdings mit zwei geräten. (Eines wandelt die 3 serial streams in netzwerkstreams um und ein anderes schreib diese streams in log dateien und published sie auf dem Webserver.)
Kostenpunkt 700€
mal sehen ob die einen Protokoldrucker für 3 serielle inputs haben die ggf gleichzeitig daten senden.
Dann noch schauen wieviel das kostet.

ich fürchte das wird allerdings teurer als die Drucker.
(Preis auf Anfrage bedeutet meist 4stellig...)

lg
Jottpee
Jottpee 06.03.2013 um 11:52:50 Uhr
Goto Top
Das sollte doch eigentlich alles ganz einfach und sehr preiswert machbar sein ....

- einen PC unter Windows hast du ...
- hol dir die Shareware Extract!mini von www.SerielleSchnittstelle.de
- an Stelle der PCI-Schnittstellkarte würde ich preiswerte USB-Seriell-Wandler verwenden!

Extract!mini liest die an der Schnittstelle ankommenden Daten ein und schreibt sie
in den Tastaturpuffer. Wenn dann ein Textsystem / Editor läuft, werden die Daten da reingehämmert !

Wenn du alternativ oder gleichzeitig eine ASCII-Datei schreiben willst, dann nimm das Programm
Extract!basic
aqui
aqui 06.03.2013 aktualisiert um 12:14:44 Uhr
Goto Top
Richtig, eigentlich ist das kein Hexenwerk und mit minimalsten Anforderungen in 15 Minuten lösbar. Serielle Drucker sind zwar heute etwas veraltet aber ja nichts außergewöhnliches und problemlos integrierbar in heute IT Umgebungen.
Es reicht eine simple serielle Schnittstelle die entweder mit einem USB-seriell Kabel für ein paar Euro oder einer zusätzlichen Karte realisiert werden kann sollten keine nativen seriellen Schnittstellen mehr auf dem Rechner sein.
Unter DOS/Windows reicht ein simples:
type com1: >> datalog.txt

um die Daten von einer seriellen Schnittstelle in eine Datei zu schreiben. Braucht man etwas Klicki Bunti Windows Grafik dann tun es serielle Terminal Programme wie PuTTY und TeraTerm indem man dort einfach eine Log Datei aufmacht und alles von der seriellen Schnittstelle in eine Datei laufen lässt.
Am allerelegantesten macht man das mit einem kleinen Linux Rechner wie dem 30 Euro Raspberri Pi, der wie geschaffen ist für sowas !:
Netzwerk Management Server mit Raspberry Pi
An den schliesst du die obigen seriell-USB_Kabel an. Mit einem USB Hub kannst du sogar deine 3 Maschinen da mit 3 dieser Kabel gleichzeitig anschliessen plus den kleinen Rechner gleich mit Strom versorgen.
Mit einem simplen
cat /dev/ttyUSB0 >> datalog.txt

ist dein Problem gelöst.
Mit einfachen Tools wie "logserial" http://fossies.org/linux/misc/old/logserial-0.4.2.tar.gz:a/logserial-0. ... geht das sogar noch eleganter.
Idealerweise hängt man den kleinen Raspberry Server dann noch per Samba als Shared Directory in ein Windows Netzwerk oder an einen Windows Server und kann die Log Dateien dann von jedem Rechner im Firmen Netzwerk bequem einsehen, drucken, bunt anmalen oder was auch immer.
Für simple 30 Euro plus der seriell-USB Kabel die 5 Euro kosten hast du dann eine Super Duper deLuxe Lösung.
Für die 1470 Euro die du dann gespart hast gehst du dann mal mit dem Chef opulent essen...
Jottpee
Jottpee 06.03.2013 um 12:28:48 Uhr
Goto Top
Die zweite Falsche Wein müssen sie dann aber weglassen....

... weil Netzteil, Flash und Gehäuse auch noch fällig sind.

15 Minuten : weiß sich nicht, könnte mir aber vorstellen, dass
das beim ersten Mal etwas länger dauert, - dies inbesondere auch, weil
die SW erst aufgebracht und eingerichtet werden muss.

Wenn ausrangierte PCS zur Verfügung stehen, dann ist vielleicht Klicki-Bunti
das Schnellere..

.. und sicherer: Im Umfeld von Spritzmaschinen treten immer wieder üble
Probleme wegen Elektrostatik auf. Das sollte beim Aufbau der Raspberri-HW
unbedingt beachtet werden!
aqui
aqui 06.03.2013 aktualisiert um 12:35:03 Uhr
Goto Top
...oder statt dessen eine Flasche "Kellergeister" nehmen, die stresst das Budget nicht so... face-big-smile
cyber40014
cyber40014 07.03.2013 um 11:05:16 Uhr
Goto Top
Danke an alle.
Problem gelöst. Vorerst hält ein XP Rechner mit 3 Seriellen Schnittstellen als
zum mitschreiben der Daten her.
Dieser hat dann auch ein Diskettenlaufwerk zur Sicherung der Maschinenprogramme.
(Die Disketten können nicht unter W7 gelesen werden.

Den Programmtipp Extract! werde ich anschauen um zu überprüfen, ob
die Daten so leserlicher bereitgestellt werden können.

face-smile
aqui
aqui 07.03.2013 um 13:13:05 Uhr
Goto Top
...und kauf dir schon mal ein Raspberry zum testen bevor die XP Gurke den Geist aufgibt !! face-wink

Wenns das denn nun war bitte dann auch
Wie kann ich einen Beitrag als gelöst markieren?
nicht vergessen.