Schreibmaschine per Arduino: Denkfehler oder falsche Verkabelung?

Nerdovic

Lieutenant
Registriert
Jan. 2013
Beiträge
821
Hallo Leute,

bei meinem neusten Projekt bin ich dabei eine elektrische Schreibmaschine (kostenlos von eBay-Kleinanzeigen bekommen :king:) per Arduino zu steuern. Dafür habe ich eine Schaltung entworfen die direkt an den Tastaturanschluss der Maschine ran geht und wollte mit dem Arduino die Tastendrücke simulieren. In der angehängten Grafik seht ihr die Schaltung die ich momentan hier habe. Die Transistoren sollen vom Arduino geschaltet werden um die "Zeile" und "Spalte" für einen Buchstaben zu verbinden. Also so wie als würde man die Taste auf der Tastatur drücken.

Problem ist, es funktioniert nicht. Jetzt frage ich euch: Gibt es an meiner Idee und Schaltung ein grundlegenden Fehler der die Funktion verhindert oder habe ich doch einfach beim löten Mist gebaut? Das mit dem Löten werde ich selbst herausfinden müssen, aber bei meiner Schaltung könnt ihr mir vielleicht weiter helfen.

Vielen Dank für eure Hilfe.

Keymatrix-schema.png
 
Geht der mittlere Strang auf Masse bzw. bist Du sicher, daß es so sein muß?
Die Basis Anschlüsse erhalten bestimmt noch Widerstände, oder?
 
Der Mittlere Strang geht nicht auf Masse, nein. Das ist quasi ein Bus-Strang um alle Zeilen und Spalten miteinander zu verbinden. Die Widerstände habe ich mal weggelassen damit es übersichtlich bleibt. Im Bild habe ich noch ein mal eingezeichnet wie ich mir das vorgestellt habe wenn ich jetzt den Keycode "34" schalten wollte. Die Punkte an den Transistoren sollen anzeigen, dass sie geschaltet werden.
Keymatrix-schema-simPress_3-4.png

Update 18:17h:
In einem kleineren Experiment mit nur zwei Transistoren und der "Bus-Leitung" an GND über einen 1KOhm Widerstand scheint es jetzt zu funktionieren... Ich werde aber wohl noch einmal den ganzen Aufbau testen müssen.
 
Zuletzt bearbeitet:
Mmh, um das genau zu sehen, wie es funktioniert, müßte man die Technik der Tastatur kennen.

Normalerweise werden auf den Spalten 1 Signale rundherum ausgegeben und an den Reihen abgefragt, ob sie ankommen.

Aus aktiver Spalte und ankommender Zeile kann man dann die Taste ermitteln.
Für dich würde das bedeuten, daß Du die Spaltensignale direkt einliest und dann das Zeilensignal passend ausgibst.

Es kann aber auch anders realisiert sein.
 
Aber wenn ich einfach die zwei Transistoren der Spalte und der Zeile für ein paar Millisekunden schalte ist das doch für die Schreibmaschine das gleiche als würde jemand die entsprechende Taste drücken. Oder nicht?
 
Die Frage ist, wie der Strom fließt. Wenn er aus der Spalte in die Reihe fließt, ist der untere Transistor falsch, da der Strom über Emitter-Kollektor fließen müßte.
Das geht aber nicht.

Man könnte mit einem PNP Transistor basteln.
 
Ich habe gerade mal gemessen, der Strom fließt wie du geschrieben hattest, Spalte nach Reihe. Also die NPN-Transistoren der "Reihe/Zeile"-Seite durch PNP-Transistoren ersetzen?
 
Ah ja, so sieht das gut aus. Plausibel. Ich werde morgen mal ein paar neue Bauteile besorgen und die Schaltung noch einmal neu bauen. Vielleicht kann ich auch noch ein paar Teile aus dem alten Aufbau retten.

Vielen Dank für deine Hilfe. :)
 
Sehr sehr schöne Idee! Kannst du wenn's fertig ist mir ein paar Bilder senden?
 
Hier stand Mist.

Ich würde das Ganze mit Optokopplern machen (z.B. https://www.reichelt.de/Optokoppler/LTV-844/3/index.html?ACTION=3&GROUPID=3046&ARTICLE=96808). Dann hättest du eine galvanische Trennung zwischen Arduino und Schreibmaschine und damit auch keine eventuellen Probleme mit Brummspannung auf Masse. Bei deiner Schaltung muss die Masse des Arduino mit der Masse der Schreibmaschine verbunden sein und dabei kann es (muss aber nicht) zu Problemen kommen.
 
Zuletzt bearbeitet: (Korrektur)
Wenn Du in der geposteten Schaltung 5V an der Basis anlegst, fallen 0,7 V an BE ab, eventuell noch 0,1V am CE. Der Rest befindet sich am Emitter-Widerstand, also 4,3 V.
Leitet einer der obere Transistor nicht, fällt die angelegte Spannung abzüglich der BE Spannung (0,7V) geteilt an den beiden Widerständen ab.
Also etwa 1,4V am Emitter.

Der Basiswiderstand dürfte also ruhig etwas größer ausfallen, aber für TTL Pegel und CMOS Pregel dürfte es reichen.
 
Hallo Leute,
danke für die weiteren Antworten. Ich war die Woche im Urlaub und werde jetzt das Projekt fortführen wenn ich Zeit habe.
Holgip schrieb:
Ich würde das Ganze mit Optokopplern machen
Das wäre auch eine Option gewesen, bin halt auch eher Informatiker als Elektrotechniker.
Holgip schrieb:
Bei deiner Schaltung muss die Masse des Arduino mit der Masse der Schreibmaschine verbunden sein
Ich habe ein bisschen herumprobiert, und im kleinen Aufbau hat es auch funktioniert wenn die Masse der Schreibmaschine nicht mit der Masse des Arduino verbunden war.
IKernelOS schrieb:
Sehr sehr schöne Idee! Kannst du wenn's fertig ist mir ein paar Bilder senden?
Danke! Und ja, kann ich machen. Wobei ein Video sicher mehr zeigen kann. Wir werden sehen wenn es fertig ist.

Kleines Update von heute: Das Board mit den Komponenten ist eingebaut (Heißkleber-Massaker :evillol:)
Jetzt warte ich auf den Arduino Nano den ich bestellt habe, leider ist noch unklar wann das gute Stück ankommt.

DSC_0639.JPG DSC_0640.JPG
 
Zuletzt bearbeitet:
Zurück
Oben