Mini Thermodrucker an Arduino

Ich würde gerne folgenden Thermodrucker an den Arduino schließen und damit drucken.

Weiß jemand ob das ohne weiteres möglich ist oder was ich dazu benötige?

Zum Glück kennen wir alle Drucker, die Modellbezeichnung, technische Daten, Schnittstellen und deren Definition.

Jetzt weisst Du, was Du nachreichen darfst.

Nach dem Stecker zu urteilen ist das eine RS232 Schnittstelle. (Ich hoffe, daß ich mich nicht irre). Wenn Du weißt mit welcher Protokollparameter sie arbeite kannst Du mit Arduino und einem Seriel-RS232 Adapter den Drucker ansprechen.

Grüße Uwe

uwefed: Nach dem Stecker zu urteilen ist das eine RS232 Schnittstelle.

Oder doch eine parallele Schnittstelle: http://nervengiftlabs.wordpress.com/2012/01/24/neues-spielzeug-thermodrucker/ Auch bei ebay mit Parallelport: http://www.ebay.de/itm/celectronic-Thermo-Bon-Drucker-Bondrucker-Thermodrucker-Kassendrucker-m-Netzteil-/360532633535

BTW: Bei Watterott gibts einen Thermodrucker mit serieller Schnittstelle: http://www.watterott.com/de/Thermal-Printer

sth77:

uwefed:
Nach dem Stecker zu urteilen ist das eine RS232 Schnittstelle.

Oder doch eine parallele Schnittstelle: …

Paralelle Schnittstellen am Drucker müßten eine 36 polige Centronics-Stecker sein ( außer einige neuere HP Drucker, die benutzen einen kleineren Stecker; den Centronics-Stecker mit 1,27-mm-Raster, IEEE Typ C.)

Grüße Uwe

Hallo,

Also es gibt sehrwohl auch parallele Drucker mit 25pol. Stecker. Gerade bei den Kleinen hätte der Centronics Anschluß kaum Platz. Ein serieller Drucker hätte üblcherweise eine Buchse und keinen Stecker so daß man jeweijs ein 1:1 Kabel zum Pc verwenden kann. Eventuell mal nachmessen, einfach mit dem Durchgangspiepser die Massepins suchen....

Es gab auch mal Wandler für seriell zu parallel, genau für einfache Drucker.

Christian

Da du den Drucker schon hast, schau dir doch mal die Seiten an, die auf den wunderschönen Bildern nicht zu sehen sind. Und gib die Modell-Namen/Nummern auf dem Typenschild mal google zum Verdauen.

Oder sag gleich, wo du das Bild her hast, z.B. (http://www.ebay.de/itm/Thermodrucker-Bondrucker-Kassendrucker-Drucker-Thermo-Quittungsdrucker-D10/261188454363)

Centronics/Parralellport-Drucker ansteuern ist sehr einfach, braucht nur ne Menge Pins.

void setup() { Serial.begin(57600); int cnt; for(cnt = 2; cnt < 10; cnt++) { pinMode(cnt,INPUT); }

}

void loop() { int cnt;

if(digitalRead(2) == 0) {

for(cnt = 3; cnt < 9; cnt++) { Serial.print(digitalRead(cnt)); } Serial.println(digitalRead(10)); } }

Balisto: Weiß jemand ob das ohne weiteres möglich ist oder was ich dazu benötige?

Du benötigst Sorgfalt beim Verkabeln der vielen Anschlüsse des Parallel-Ports. Anschlußhinweise zum Anschließen eines Druckers mit Parallel-Port und Arduino-Sketch zum Testen siehe: http://forum.arduino.cc/index.php?topic=74776.0

Manawyrm: Centronics/Parralellport-Drucker ansteuern ist sehr einfach, braucht nur ne Menge Pins.

void setup() { Serial.begin(57600); int cnt; for(cnt = 2; cnt < 10; cnt++) { pinMode(cnt,INPUT); }

}

void loop() { int cnt;

if(digitalRead(2) == 0) {

for(cnt = 3; cnt < 9; cnt++) { Serial.print(digitalRead(cnt)); } Serial.println(digitalRead(10)); } }

Der Sketch ist aber für einen Eingang und nicht ein anderes Gerät mit paraleller Schnittstelle anzusteuern. Grüße Uwe

Hätte ich detaillierte Technische Angaben gehabt, hätte ich die hier natürlich gepostet. ICh denke diese Angaben:

Technische Daten: • Abmessungen: 12,5 cm x 10,5 cm X 3,8 cm • Gewicht: ca 0,7 kg inkl. Zubehör

Produkteigenschaften: • kompakte Bauweis • ausgestattet mit einer parallelen Schnittstelle • Papierbreite: ca. 5,7 cm, Papierrolle - Durchmesser ca. 2,75 cm< • Kostengünstig, da keine Drucker- Tonerpatronen benötigt werden

Helfen keinem von uns, daher habe ich es gleich gelassen.

Mir ist nun noch aufgefallen das ein Adapter Parallel-USB mitgeliefert wird. Vereinfacht das die Sache das Gerät über Arduino anzusprechen und zu drucken? Ich habe einen Arduino Uno R3, da müssten die Pins reichen. Gibt es dafür vlt. Libraries die man verwenden kann um auf so einem Gerät über den Arduino etwas auszudrucken? Denn meine Programmierkenntnisse sind noch nicht so weit fortgeschritten dies selbst zu erstellen. Es gibt für den Arduino einen Thermal Printer mit Serial TTL aber der ist mir etwas zu teuer. Oder kennt jemand andere günstige alternativen?

Kann ich mit diesem Beispiel http://forum.arduino.cc/index.php?topic=74776.0 jeden x-beliebingen Paralleldrucker betreiben? Also auch diesen Bondrucker?

Serial Printer sind einfacher anzusteuern, oder?

Im Prinzip würde mir sogar nur ein Druckkopf reichen, denn ich muss es eh anders verbauen. Kennt jemand Thermodruckköpfe die man gut mit dem Arduino ansteuern kann? vlt. sogar einen günstigen mit Schneidvorrichtung? Gerne auch aus China oder so :) ODer vielleicht wäre ein Pocket Thermal Printer eine gute wahl oder die Drucker an Taschenrechnern (kann mit mit Arduino verbinden), was meint ihr? Womit man am schnellsten was anfangen könnte...

Kurz gesagt: Ich suche nach eine kostengünstigen und einfachen Möglichkeit mit dem Arduino auch unterwegs über einen kleinen Drucker etwas auszudrucken. Es reichen etwa 26 Zeichen in der breite. Ob das nun ein fertiger Drucke wie oben ist oder nur ein Druckkopf/Druckmechanismus, dass ist erst mal egal.

Balisto: ... • ausgestattet mit einer parallelen Schnittstelle ...

Das hätte schon geholfen. Auf jeden Fall mehr als die Bilder.

Balisto: Kann ich mit diesem Beispiel http://forum.arduino.cc/index.php?topic=74776.0 jeden x-beliebingen Paralleldrucker betreiben? Also auch diesen Bondrucker?

Hardwaretechnisch sicherlich. Den Rest muss man testen oder das Protokoll des Druckers haben. Hast du dich schon mal an den Hersteller gewendet?

Balisto: Serial Printer sind einfacher anzusteuern, oder?

Von dem Hardwareaufwand geringer. Aber ohne den Befehlssatz (Protokoll) kommst du hier auch nicht weiter.

Andere Möglichkeit wäre, den Drucker am PC zum Laufen zu bekommen, und dort dann das LPT Zeug zu analysieren...

Der wäre schon mit Code ;-) https://www.sparkfun.com/products/10438 Aber eine fertige Lösung hat halt seinen Preis!

mde110: Aber ohne den Befehlssatz (Protokoll) kommst du hier auch nicht weiter.

Die einfachen Bondrucker sind im Einschaltzustand normalerweise immer als Zeilendrucker konfiguriert: Wenn sie ein ASCII-Zeichen empfangen, wird das ASCII-Zeichen gedruckt (Buchstaben, Ziffern, Sonderzeichen) und als Steuerzeichen werden Carriage Return ("Wagenrücklauf") und Linefeed ("Zeilenvorschub") verstanden. Das war's.

Falls es sich zusätzlich auch um grafikfähige Drucker handelt, oder es eingebaute zusätzliche Druckeremulationen gibt, so muß man die Geräte in solche erweiterten Betriebsarten erst mit bestimmten Steuerzeichenfolgen ("ESC-Sequenzen") umschalten.

Im Grundzustand drucken die aber genau so auf Papier, wie es der serielle Monitor auf dem Bildschirm macht. Nur die Zeilen sind kürzer. ;)

Ich wärme das Thema noch mal auf. Damals bin ich dann nicht mehr dazu gekommen....

Die Grundlegende Frage die ich habe ist: Welche Eigenschaften sollte der Thermodrucker bzw. Druckkopf haben damit man ihn einfach über den Arduino betreiben kann.

Zusätzliche Bedingung wäre, das ganze soll Batteriebetrieben funktionieren.

Ich habe diese Einheit gefunden: http://www.aliexpress.com/item/Embedded-thermal-printer-all-in-POS-driving-recorder-medical-equipment/1894510380.html

Den kann man mit dem ESC print instruction set ansprechen und hat ttl. Das sollte das ganze doch vereinfachen, oder?

Balisto:
Die Grundlegende Frage die ich habe ist:
Welche Eigenschaften sollte der Thermodrucker bzw. Druckkopf haben damit man ihn einfach über den Arduino betreiben kann.

Wenn Du kein Chinesisch kannst und Du so einen Drucker in China bestellst, dann wäre die wichtigste Eigenschaft des Geräts wohl, dass die Bedienungsanleitung nicht ausschließlich auf Chinesisch verfügbar ist.
:wink:

Beim Betrieb über eine RS232-Schnittstelle kannst Du mit dem Kabel größere Entfernungen überbrücken, brauchst aber für den Aruino einen RS232-TTL Adapter zusätzlich. Beim Direktanschluss per TTL darf das Kabel zum Arduino nur recht kurz sein, wenn es nicht zu Datenfehlern kommen soll.

Batteriebetrieb bei einem “Thermo” Drucker hängt natürlich davon ab, wie fett die Batterie ist, an der Du das betreiben möchtest. Batterien zur Wärmeerzeugung einzusetzen, ist natürlich nicht besonders energieeffizient. In dem von Dir verlinkten Angebot sehe ich nichts von der Stromaufnahme im Betrieb, aber ich würde so grob schon mal von 2 Ampere ausgehen, wenn der Drucker dabei ist, schwarz aufs Papier zu brennen. Normalerweise werden solche Geräte immer mit einem geeigneten externen Netzteil betrieben.

Von der Gewichtsangabe her (0.500kg) scheint das Ding extrem leicht zu sein. Wenn ich micht nicht täusche, würde ein Gerät üblicher Qualität mindestens das doppelte wiegen. Also bei dem niedrigen Gewicht und dem äußerst niedrigen Preis würde es mich nicht wundern, wenn das Ding ein ziemlicher Nusch und Pfusch in Leichtbauweise ist und nichts wirklich solides. Das Ding scheint auch kein Standgerät zu sein, sondern ein Einbaugerät ohne komplettes Gehäuse, sondern nur mit Front für den Einbau in einem Gehäuse. Im Endeffekt mußt Du doch wissen, ob Du so etwas suchst und experimentierfreudig genug bist.

Ich habe vor etwa 1/2 Jahr diesen Thermodrucker bei einem Projekt verwendet. Er sieht dem aus deinem Link recht ähnlich. Ob es sich wirklich um das gleiche Gerät handelt??? Falls ja, gäbe es auf der Website nützliche Links. Ansteuerung über UART (TTL 5Volt) von einem Arduino UNO, ich habe ihn mit einem externen Netzteil betrieben (Details muss ich erst nachsehen, kann mich nicht mehr genau erinnern). Hat ganz gut funktioniert, ist aber schon deutlich langsamer als der Drucker einer Supermarktkassa.

Gruß Udo

Ja, ich finde auch das die sich sehr ähnlich sehen. Würde mich nicht wundern wenn es der gleiche ist. Klar das wenn etwas speziell für zb arduino ist, dass es dann gleich mehr kosten muss :) Die Zettel wo gedruckt werden sollen sind recht kurz, daher werde ich das mit Batteriebetrieb einfach mal versuchen. Grund solide muss das Ding nicht sein, es wird letztendlich ganz anders verbaut und ist nicht ständig in betrieb. Außerdem benötige ich nur einfache Buchstaben und Zahlen.

Wenn ich sehe wie einfach der Drucker von Wattenrot, Adafruit usw anzuschließen und zu betreiben ist, da muss das doch auch mit anderen möglich sein. Siehe hier: http://tronixstuff.com/2011/07/08/tutorial-arduino-and-a-thermal-printer/

Leider findet man im Internet nur sehr wenig über das Betreiben von Thermodruckköpfen mit dem Arduino. Und wenn man was findet, dann ist das mit Druckköpfen die man nicht mehr bekommt. Worin liegt den die Schwierigkeit? Wenn das Ding serielle Übertragung, ASCii und ESC hat, sollte das doch kein großes Problem darstellen...

Thermal.println(" Visit http://tronixstuff.com ");
 Thermal.write(10); //Sends the LF to the printer, advances the paper
 Thermal.print(" Millis = ");
 Thermal.println(millis()); 
 Thermal.write(10);
 Thermal.write(10);