Forum: Mikrocontroller und Digitale Elektronik Pollin NET-IO RS232 und Ethernetdrucker


von KoKo (Gast)


Lesenswert?

Hallo zusammen,

kurz zu mir: Ich bin ziemlicher Anfänger was µController angeht. Bin 
eher in der SPS-Welt zuhause. Bin aber durchaus gewillt zu lernen.

Ich hab nun folgende Aufgabe vor mir:

Mittels des NET-IO-Boards von Pollin möchte ich von einer RS232 
Schnittstelle Daten einlesen. Die Daten sollen so zeilenweise eingelesen 
und gespeichert werden (evtl. CSV-Datei auf SD-Karte). Wenn ich nun 
einen externen Trigger bringe (Eingang vom NET-IO) soll das ganze an 
einen Drucker geschickt und ausgedruckt werden. Als Anschlüsse am 
Drucker stehen mir USB und Ethernet zur Verfügung. Dies sind nur mal so 
die groben Anforderungen. Kleiner Spielereien bzw. Zeitstempel der 
emfpangenen Daten etc. kann man ja später ergänzen.

Hat jemand eine Idee wie ich das am einfachsten löse bzw. wie ich an die 
ganze Sache ran gehe?

Für eure Hilfe schon mal herzlichen Dank!

Gruß

KoKo

von Karl H. (kbuchegg)


Lesenswert?

> Als Anschlüsse am
> Drucker stehen mir USB und Ethernet zur Verfügung

> Hat jemand eine Idee wie ich das am einfachsten löse bzw.
> wie ich an die ganze Sache ran gehe?


USB vergisst du gleich mal wieder.

Und ansonsten: Der Typ des Druckers ist wichtig. Du brauchst einen, den 
du noch mit ganz normalen ASCII Zeichen füttern kannst. Die findest du 
in den Mediamärkten nur noch selten im Ramschregal, wenn überhaupt. Die 
heutigen Drucker wollen im Grunde eine Bitmap haben (also ein Bild), in 
dem ihnen der Rechner bereits alles aufbereitet hat. Einfach einen Text 
an den Drucker schicken und der druckt das dann, das war gestern.

Postscript-Drucker würden noch gehen. Aber aufpassen: Der Drucker selber 
muss Postscript können, nicht der Treiber. Wenn der Windows/Linux 
Treiber Postscript entgegennimmt und daraus dann erst recht wieder ein 
Bild fabriziert, welches er zum Drucker schickt, dann hilft dir dieser 
Drucker wieder nichts.

von raketenfred (Gast)


Lesenswert?

Jenachdem, wie komplex das Drucker Protokoll ist, wird das böse.

Ich würde dir erstmal zu Ethersex raten, da kann man sehr gut eigene 
Funktionen einbauen- das Logdaten auf SD speichern sollte es aber sogar 
schon geben würde ich vom Bauch her sagen.

Und dann zum basteln einen Atmega 1284p in das Board setzten (gibt 
nichts schlimmeres als nicht genügend Platz zu haben)

von Martin B. (martin_b35)


Lesenswert?

Du könntest auch nen ollen Nadeldrucker (Epson LQ serie z.B. nehmen). 
Die können Plain text.

Gibt auch viele ältere S/W Kaser die das können (Kyocera 1030D z.B.)

Gruß, Martin

von heinzhorst (Gast)


Lesenswert?

Muss es unbedingt ein vollwertiger Drucker sein, oder reicht ein 
einfacher Bondrucker, wie an der Supermarktkasse? Die Teile werden 
nämlich über RS232 angeschlossen und sind relativ leicht anzusteuern. Da 
könnte man sogar ein weiteres Net-IO als Printserver misbrauchen.

von KoKo (Gast)


Lesenswert?

Hallo,

das Problem ist folgendes... bisher ist dort ein einfacher dummer 
Nadeldrucker angeschlossen welcher sobald auf der RS232 Schnittstelle 
etwas an kommt diese Zeile sofort auf Endlospapier druckt. Der soll aber 
ersetzt werden durch so einen Laserdrucker (Kopierer, Fax, etc.). Dieser 
hat eben USB und Ethernet. Nach der Type schau ich mal genau. Weiter war 
es meine Idee wenn ich die Daten ohnehin schon speichern und aufbereiten 
muß dann doch gleich so, dass sie für eine Auswertung auch als CSV auf 
einer Speicherkarte bspw. bereit stehen.

Gruß
KoKo

von Frank (Gast)


Lesenswert?

Die einfachere der Kombinationen wird die von Ethernet und Postscript 
sein, aber trotzdem nicht simpel.

a) Laserdrucker sind Seitendrucker, d.h. du musst genügend Daten vorher 
sammeln, bis eine Seite voll ist und dann den entsprechenden PS-Code 
erzeugen. PS ist offen dokumentiert, wenn man sich einen Tag damit 
befasst, kann man zumindest Textseiten ausgeben

b) wenn mal einer vorbeikommt und die bisher angefallenen Daten sehen 
will, ohne darauf zu warten, bis die nächste Seite voll wird, muss er 
den Druckvorgang auch per Taste auslösen können. Evtl. sollte der MC 
noch eine Anzeige haben, wie viele Zeilen derzeit noch in der Pipeline 
stecken und darauf warten, die nächste volle Seite zu ergeben ...

c) Ethernet ist das Medium, darauf muss aber noch ein Print-Protokoll 
abgebildet werden (IPP, LPR, RAW) ... was nicht ganz simpel ist. Einfach 
so einen IP-Connect machen und die Daten ins Socket schreiben is' nich'.

d) VOR den eigentlichen Postscript-Code muss noch eine 
Drucker-Spezifische Initialisierungs-Sequenz anhand derer der Drucker 
z.B. zwischen PCL und PostScript umschaltet. Die musst du erstmal 
herausfinden, z.B. indem du eine Druckdatei erzeugst und mit dem 
Hex-Editor untersuchst

e) Viel einfacher wäre es, dem MC nur zum Daten sammeln zu benutzen und 
die in Intervallen einer Anwendung zu senden, die z.B. auf einem ohnehin 
ständig laufenden Server lauert und diese dann den Ausdruck machen zu 
lassen ...

von Frank K. (fchk)


Lesenswert?

KoKo schrieb:

> das Problem ist folgendes... bisher ist dort ein einfacher dummer
> Nadeldrucker angeschlossen welcher sobald auf der RS232 Schnittstelle
> etwas an kommt diese Zeile sofort auf Endlospapier druckt. Der soll aber
> ersetzt werden durch so einen Laserdrucker (Kopierer, Fax, etc.).

Wenn Du jetzt auch noch den exakten Typ des Druckers nennen würdest, 
könnte man Dir vielleicht sogar helfen.

fchk

von Karl H. (kbuchegg)


Lesenswert?

KoKo schrieb:

> das Problem ist folgendes... bisher ist dort ein einfacher dummer
> Nadeldrucker angeschlossen welcher sobald auf der RS232 Schnittstelle
> etwas an kommt diese Zeile sofort auf Endlospapier druckt.

Wenn der mechanisch noch in Schuss ist und es auch in absehbarer Zeit 
noch Farbbänder dafür gibt, würde ich den auf keinen Fall hergeben :-)

Schon alleine deswegen, weil es für heutige moderne Drucker nahezu an 
Unmöglichkeit grenzt, für diese Drucker eine Doku der Ansteuerung zu 
bekommen :-) Mit den ollen Nadeldruckern hat man einfach mal den 
Epson-Standard ausprobiert und bei 8 von 10 Druckern ist man damit zum 
Ziel gekommen.

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
Noch kein Account? Hier anmelden.