mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Ersetzung einer mechanische Tastatur


Autor: Yi Zhai (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich bin ein chinesischer Student und studiere jetzt an der Uni 
Stuttgart. Jetzt mache ich einen kleinen Projekt und dabei hab einige 
Fragen und unklaren Punkten. Deswegen möchte ich hier mal fragen. 
Herzlichen Dank voraus für die Hilfe und Hinweise.

Die Aufgabe ist so. Wir haben eine Maschine(weiss nicht wofür es 
funktioniert). Da die Tastatur der Maschine alt ist und die es nicht so 
gut genutzt werden kann, möchten wir die Tastatur der Maschine updaten. 
Das ist quasi durch elektrische Elemente die Tastatur ersetzen, und 
weiter durch einen MCU gesteuert werden kann, sodass die Maschine 
elektrisch kontrolliert werden soll.

Jetzt kommt es zu der Frage, wie ich die Tastatur ersetzen kann. Ich bin 
nicht 100% sicher, wie die Tastatur funktioniert, aber ich vermute es 
wie in Abbildung tat1 zeigt.

Dann denke ich, ob ich durch MOSFET diese Aufgabe erledigen kann. Ich 
mache einen solchen Entwurf, der zeigt sich in Abbildung tat2. Genutzt 
ist ein MOSFET mit dem Typ N-Channel-Enhancement. Vorher habe ich beide 
Masse verbunden. Zuerst habe ich gedacht, dass mit einem Kontrollsignal 
von 5V soll die Tastatur wie gedrückt funktionieren. Und mit einem 
Signal von 0V soll die wie nicht gedrückt funktionieren. Aber beim 
Versuch ist es umgekehrt.

Obwohl die Realität nicht wie erwartet gah, machte ich einen PCB-Board 
und versuchte ich den Board auf die Maschine. Die Maschine mit dem Board 
konnte nicht funktionieren. Deshalb denke ich, dass ich prinzipiell 
etwas falsch gemacht habe.

Könnt ihr vielleicht kurz für mich analysieren, was ich falsch gedacht 
habe und wie ich die Aufgabe machen kann? Oder gibt es Problem 
wascheidlich beim PCB-Board? Ist ein "optical coupler" vielleicht 
hilfreich?


-----------------------------

Weitere Informationen:

Ich hab auch die Spannung beider Seite der Tastatur gemessen, wo mit dem 
MOSFET berühren. wenn es normal funktioniert, soll es entweder 0V oder 
5V sein. Wenn ich den PCB-Board installiert habe, sind die Spannungen 
beide Seite nicht stabil. Die schwanken sich zwischen 2-3V.


Vielen Dank noch einmal! Wenn ich nicht klar erklärt habe, bitte 
nachfrage!

Yi Zhai

Autor: Matthias S. (Firma: matzetronics) (mschoeldgen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zuerst solltest du rausfinden, ob die originale Tastatur als Matrix 
abgefragt wird, also mit Spalten- und Zeilentakt, oder statisch. Das 
geht mit einem Oszilloskop.

Wenn die Tastatur als Matrix abgefragt wird, habe ich z.B. bei PC 
Tastaturen, bei denen ich bestimmte Tasten 'ferngesteuert' drücken 
wollte, guten Erfolg mit Optotriacs gehabt, also z.B. mit MOC3021, die 
parallel zur Taste geschaltet waren. Da die Optotriacs in beide 
Richtungen leiten, war sogar die Polung des Ausganges egal, es wurde bei 
Zündung in jedem Fall die Taste gedrückt.

Bei statischen Tastaturen sollten herkömmliche Optokoppler mit 
Phototransistor funktionieren, allerdings muss man hier auf die Polung 
achten, der Kollektor des Phototransistors muss auf die positive Seite 
des Tasters gelegt werden. Auch bei Matrix Tastaturen fonktionieren 
normale Optokoppler, aber auch hier muss man dann auf die Polarität 
achten.

: Bearbeitet durch User
Autor: Clemens S. (zoggl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hy,
schau mal in die Maschine rein. Es kann gut sein, dass die einen 
bekannten IC zur Auswertung verwendet. Mach mal ein paar Fotos von dem 
Ding, dann kann man dir sicher weiterhelfen.

Ich würde spontan mit mehreren Schieberegistern an den Zeilen arbeiten 
und die Latches mit einem UND an die einen µC und die Spalten verbinden. 
Dann kannst du diese in ruhe seriell laden und wenn du fertig bist 
freigeben. Dafür müsste man aber die Schaltung kennen.

sg

Autor: Patrick J. (ho-bit-hun-ter)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Yi Zhai schrieb:
> Hallo zusammen,
>
> ich bin ein chinesischer Student

So sauberes Deutsch habe ich hier schon lange nicht mehr gelesen :O

Soll nur das Pad ersetzt werden, oder die komplette Anbindung?
Durch den genannten µC (MCU) denke ich, daß Du die ganze Tastatur 
simulieren willst.
Sofern die Verschaltung nicht ersichtlich ist, eine Tabelle mit den 
Spannungswerten der Anschlußdrähte bei jedem Tastendruck.
Können mehrere Tasten gleichzeitig betätigt werden? Macht die Sache 
komplizierter,

Wenn nur die Tasten selber simuliert werden sollen, könnten vll. ein 
Analog-Switch ein Weg sein, sofern der erreichte Widerstand tief genug 
ist.
Oder mit Opto-Kopplern.
Hätte auch den Vorteil, daß es recht egal ist, auf welchen Potentialen 
sich die Taster-Anschlüsse befinden.

MfG

Autor: MaWin (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Jetzt kommt es zu der Frage, wie ich die Tastatur ersetzen kann.

Nimm Analogschalter wie CD4066, und nicht deine MOSFETs.

Analogschalter kann man gut ansteuern und sie schalten gut, wenn man 
Masse (GND) der ansteuernden Schaltung mit Masse der Tastaturschaltung 
verbinden darf.

Mit MOSFETs (bei 0V/5V Matrix) müsstest du mit 0V/15V ansteuern da die 
Anschusspegel an Source eben um 5V scheanken. Könntd ma  machen, aber 
die 1&V sind blöd, brauchen Pegelwandler und der ist im CD4066 schon 
drin.

Autor: Ciero (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist genaueres über die Konfiguration des µC bekannt? Wenn ja, würde ich 
mir das mal anschauen, ggf. kann man auch einfach direkt einen µC über 
den GPIO hinhängen, dann entfällt der meiste Kram...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine 4x4 Matrix kannst Du z.B. mit 2* 74HC4051 emulieren.

Autor: Georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

du hast deine Zeichnung genau da abgeschnitten, wo es interessant ist - 
rechts oben, ist da GND oder +5V? Und ist das überhaupt ein 
verifiziertes Schaltbild oder bloss eine Vermutung?

Selbst wenn du Optokoppler nimmst, ist zwar der Ausgang potentialfrei, 
aber wo + und - ist musst du trotzdem wissen. Wirklich universell wären 
bloss Relaiskontakte parallel zu den Tasten.

Georg

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

bin nach 11h Fliege wieder in Deutschland.

Ich habe eure Antworten gelesen und leider kann ich nicht 100% verstehen 
wegen der Sprache. Morgen treffe ich mit meinen deutschen Kommilitonen 
und dann sage ich weiteres.

Entschuldigt für die spätere Antwort.

Yi Zhai

Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Georg schrieb:
> Selbst wenn du Optokoppler nimmst, ist zwar der Ausgang potentialfrei,
> aber wo + und - ist musst du trotzdem wissen. Wirklich universell wären
> bloss Relaiskontakte parallel zu den Tasten.

Guckst Du mal hier ab dem vierten Blatt (Seite 31), per PhotoMOS geht 
das ohne Mechanik in beide Richtungen.

Autor: Lurchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ein Schaltplan vorhanden ist, sollten es auch normale Optokoppler 
tun. Auch die sind schnell genug, denn die LEDs werden ja die ganz zeit 
an sein, nur die Spannung zum abtasten ändert sich schnell, das stört 
aber den Phototransistor nicht.
Das einzige was stören könnte wäre ein hohe Kapazität. Zur Not müsste 
man die Pull-down Widerständen etwas kleiner machen.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matthias S. schrieb:
> Zuerst solltest du rausfinden, ob die originale Tastatur als
> Matrix
> abgefragt wird, also mit Spalten- und Zeilentakt, oder statisch. Das
> geht mit einem Oszilloskop.
>

Spalten- und Zeilentakt habe ich durch Multimeter validiert. Wie das 
Bild zeigt.

> Wenn die Tastatur als Matrix abgefragt wird, habe ich z.B. bei PC
> Tastaturen, bei denen ich bestimmte Tasten 'ferngesteuert' drücken
> wollte, guten Erfolg mit Optotriacs gehabt, also z.B. mit MOC3021, die
> parallel zur Taste geschaltet waren. Da die Optotriacs in beide
> Richtungen leiten, war sogar die Polung des Ausganges egal, es wurde bei
> Zündung in jedem Fall die Taste gedrückt.
>

Dank für den Hinweis. Das Element werde ich bestellen und versuchen.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Clemens S. schrieb:
> Hy,
> schau mal in die Maschine rein. Es kann gut sein, dass die einen
> bekannten IC zur Auswertung verwendet. Mach mal ein paar Fotos von dem
> Ding, dann kann man dir sicher weiterhelfen.
>

Das ist eine vorhandene Maschine und die ICs darauf kann ich nicht genau 
wissen.

> Ich würde spontan mit mehreren Schieberegistern an den Zeilen arbeiten
> und die Latches mit einem UND an die einen µC und die Spalten verbinden.
> Dann kannst du diese in ruhe seriell laden und wenn du fertig bist
> freigeben. Dafür müsste man aber die Schaltung kennen.

Ich muss 32 Taster emulierten, deswegen ist es bisschen schwer, ganzen 
Matrix durch Logik-IC zu ersetzen.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Patrick J. schrieb:
> Hi
>
> Yi Zhai schrieb:
>> Hallo zusammen,
>>
>> ich bin ein chinesischer Student
>
> So sauberes Deutsch habe ich hier schon lange nicht mehr gelesen :O
>

Danke!!! ;)

> Soll nur das Pad ersetzt werden, oder die komplette Anbindung?
> Durch den genannten µC (MCU) denke ich, daß Du die ganze Tastatur
> simulieren willst.

Ich möchte durch meinen MCU die Eingabe der Tastatur kontrollieren.

> Sofern die Verschaltung nicht ersichtlich ist, eine Tabelle mit den
> Spannungswerten der Anschlußdrähte bei jedem Tastendruck.
> Können mehrere Tasten gleichzeitig betätigt werden? Macht die Sache
> komplizierter,

Das verstehe ich leider auch nicht, was Du hier meinst.

>
> Wenn nur die Tasten selber simuliert werden sollen, könnten vll. ein
> Analog-Switch ein Weg sein, sofern der erreichte Widerstand tief genug
> ist.
> Oder mit Opto-Kopplern.
> Hätte auch den Vorteil, daß es recht egal ist, auf welchen Potentialen
> sich die Taster-Anschlüsse befinden.

Analog-Switch ist eine Möglichkeit natürlich. Aber welche Typ?

Opto-Koppler hat viele gemeint. Das muss ich mal versuchen.

Dank für Hinweis.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MaWin schrieb:


> Mit MOSFETs (bei 0V/5V Matrix) müsstest du mit 0V/15V ansteuern da die
> Anschusspegel an Source eben um 5V scheanken. Könntd ma  machen, aber
> die 1&V sind blöd, brauchen Pegelwandler und der ist im CD4066 schon
> drin.

Kannst du hier kurz noch weiter erklären? Ich möchte genau wissen, warum 
der MOSFET dabei nicht funktionieren kann.

Herzlichen Dank.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Eine 4x4 Matrix kannst Du z.B. mit 2* 74HC4051 emulieren.

Ne, ich möchte eine realistische vorhandene Maschine mit Tastatur durch 
meinen externen MCU kontrollieren. ;)

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Georg schrieb:
> Hallo,
>
> du hast deine Zeichnung genau da abgeschnitten, wo es interessant ist -
> rechts oben, ist da GND oder +5V? Und ist das überhaupt ein
> verifiziertes Schaltbild oder bloss eine Vermutung?
>

Recht oben soll 5V sein. Das ist meine Vermutung, weil die Maschine ist 
vorhanden.

> Selbst wenn du Optokoppler nimmst, ist zwar der Ausgang potentialfrei,
> aber wo + und - ist musst du trotzdem wissen. Wirklich universell wären
> bloss Relaiskontakte parallel zu den Tasten.

Ist Polung nicht egal, wenn man Optokoppler nutzt? Auf welche 
Polarisierung muss ich achten?

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Ist Polung nicht egal, wenn man Optokoppler nutzt? Auf welche
> Polarisierung muss ich achten?

bei Optokoppler muss man auf Polarität achten, da sitzt als Schalter nur 
ein bipolarer Transistor mit Collector und Emitter meist NPN, beim 
Photomos sitzen da 2 FET denen die Polarität egal ist (richtig 
angeschlossen) aber dafür sind sie teurer
Panasonic AQV 252 z.B.
http://de.farnell.com/panasonic-electric-works/aqv...

bei beiden muss man auf die primäre Polarität der IR Diode achten.

: Bearbeitet durch User
Autor: Lurchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei den Optokopplern kommt es auf die Polung an in der der Strom fließt. 
In der Regel werden die Schalter / Optokoppler bei den nicht gerade 
aktiven Zeilen in der Regel keine Spannung sehen (d.h. etwa beide Seiten 
auf GND). Nur die gerade aktive Zeile wird eine Spannung an den offenen 
Schaltern sehen. Die Schalter der nicht aktiven Spalten sehen dann bei 
gedrückter Taste auch eine Spannung in die Gegenrichtung hier sollten 
der Schalterersatz dann eher nicht leiten.

Die normalen Optokoppler haben NPN Phototransistoren, da gehört also der 
Emitter an die negative Seite und der Kollektor zur positiven Seite. In 
die falsche Richtung dürften die Phototransistoren einen deutlich 
kleineren Strom liefern - falsch herum könnte es dann knapp werden.

Wegen der Substrat-diode gehen normale MOSFETs als Schalter nicht in 
jedem Fall. Es kann je nach Art wie die Tasten ausgelesen werden gehen, 
muss aber nicht. In der Regel ist die Ansteuerung aber aufwändig.

Als Schalter gingen ICs wie 74HC4066 oder die alten CD4066. Elegant ist 
die Lösung mit 2 mal 74HC4051 als Multiplexer um je eine Spannung und 
eine Zeile auszuwählen, die verbunden werden. Das dürfte die einfachste 
Lösung sein, selbst man die Steuersignal noch zusätzlich über 
Optokoppler schickt um eine Isolation zu bekommen.

Autor: Florian Rist (Firma: TU Wien) (frist)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
man könnte doch auch einen eigenen Mikrocontroller statt der Tastatur 
mit den Zeilen und Spalten Pins des Controllers in der Maschine 
verbinden und auf die jeweiligen Spaltenabfragen mit der passenden 
Zeilenantwort reagieren. Wenn man will kann man das auch mit 
Optokopplern machen. Die alte Tastatur könnte man auch noch an den 
eigenen Mikrocontroller anschließen und abfragen, dann könnte man 
manuelle Eingabe an die Maschine weiterreichen.

Grüße
Flo

Autor: Lurchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der µC an Spaten und Zeilen geht nur, wenn der µC auch schnell genug 
reagiert. Mit nur einem µC stehen die Chancen gut, aber mit Optokopplern 
dazwischen kann es vom Timing leicht zu knapp werden. Da sollte man die 
Optokoppler dann eher zwischen dem µC und dem Rest der Steuerung habe, 
wo man selber die Geschwindigkeit für die UART wählen kann.

Autor: Florian Rist (Firma: TU Wien) (frist)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Lurchi

> Der µC an Spaten und Zeilen geht nur, wenn der µC auch
> schnell genug reagiert.

Ja, stimmt. Wobei der Controller in der Maschine ja vermutlich die 
Spalten immer in der gleichen Reihenfolge abfragt, man könnte also auch 
nach dem Abfragen von Spalte n immer solange warten, wie der alte 
Controller für das Einlesen der Zeilen braucht (muss man halt 
ausprobieren) und dann schon die Zeilen für Spalte n+1 ausgeben. So 
hätten man vermutlich reichlich Zeit.

Grüße
Flo

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na man könnte ja 4x Zeile oder 4x Spalte auf 4x PCINT legen, wenn sich 
der Pegel ändert weiss man das man das andere auslesen muss.

Timingproblem sehe ich nicht, eine Tastatur muss langsam sein,
so schnell tippt kein Mensch und entprellt werden muss auch, siehe 
Dannegger bullet prof.

Wenn beide µC mit 5V laufen hat man kein Pegelproblem, notfalls kann man 
mit einem SIM1 galv. trennen und per Opto seriell ausgeben.

Edit, soll wohl die Tastatur fernsteuern nicht auslesen,

also Pegelwechsel feststellen per PCint pin change Interrupt und den 
Gegenspieler auf low ziehen, je nach dem.

P30-P33 wird wohl high werden die anderen geben low aus wenn Taste 
gedrückt.
P34-P37 wären das

: Bearbeitet durch User
Autor: Lurchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie schnell die Tastatur ausgelesen wird, hängt vom Programm in µC ab. 
Das kann im ungünstigen Fall gleich nach Umschalten der "Zeilen" 
geschehen, dann hätte man im ungünstigsten Fall nur ein paar Zyklen des 
µC Zeit.

Entprellen kann der µC auch einfach durch ein eher seltenes Auslesen der 
Tasten machen - die Zeit vom Umschalte der Zeilen zum Auslesen der 
Tasten kann trotzdem kurz (bis runter auf ca. 1 µs) sein. Das hilf eine 
also nicht weiter. Mit Ausprobieren, wann wirklich ausgelesen wird 
könnte man natürlich schon im voraus auf die neue Zeile umstellen. Das 
braucht aber einige Tests um sicher zu sein, dass es zuverlässig ist.

Bei den anderen Methoden wäre noch zu klären, ob mehr als eine Taste 
gleichzeitig gedrückt werden muss. Das kann die Sache komplizierter 
machen.

Autor: Clemens S. (zoggl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Clemens S. schrieb:
>> Hy,
>> schau mal in die Maschine rein. Es kann gut sein, dass die einen
>> bekannten IC zur Auswertung verwendet. Mach mal ein paar Fotos von dem
>> Ding, dann kann man dir sicher weiterhelfen.
>>
>
> Das ist eine vorhandene Maschine und die ICs darauf kann ich nicht genau
> wissen.
>

Warum nicht? du musst das Gerät so oder so öffnen, wenn du die Tasten 
anzapfen willst. wenn du ein Photo einstellst dann finden wir die ICs 
schon und können villeicht sogar eine gute und einfache Schaltung 
vorschlagen


>> Ich würde spontan mit mehreren Schieberegistern an den Zeilen arbeiten
>> und die Latches mit einem UND an die einen µC und die Spalten verbinden.
>> Dann kannst du diese in ruhe seriell laden und wenn du fertig bist
>> freigeben. Dafür müsste man aber die Schaltung kennen.
>
> Ich muss 32 Taster emulierten, deswegen ist es bisschen schwer, ganzen
> Matrix durch Logik-IC zu ersetzen.

Wenn das eine 6x6 Matrix ist dann benötigst du 7 ICs. Das erspart dir 
dann den Aufwand an jeden Taster einen Schalter zu löten.

Lurchi schrieb:
> die Zeit vom Umschalte der Zeilen zum Auslesen der
> Tasten kann trotzdem kurz (bis runter auf ca. 1 µs) sein. Das hilf eine
> also nicht weiter. Mit Ausprobieren, wann wirklich ausgelesen wird
> könnte man natürlich schon im voraus auf die neue Zeile umstellen. Das
> braucht aber einige Tests um sicher zu sein, dass es zuverlässig ist.

Deswegen würde ich das in HW Lösen. ein SN74HC595 (erstbester treffer) 
hat zb 50ns Schaltzeiten. Da kommt noch ein bischen was für das und an 
OE dazu, aber das sollte reichen. Dann kann der µC das langsam und 
gemütlich laden und den Ausgang frei schalten, sobald alle Daten bereit 
sind.

sg

Autor: Lurchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Reihe von hc595 wäre schon eine Möglichkeit, sofern das Auslesen 
schön eine Zeile zur Zeit geht.

Solange man nur jeweils eine Taste gleichzeitig braucht, wären wohl 2 
mal HC4051 (je einmal für Zeilen und Spalten) die einfachste Lösung. Das 
wäre auch unabhängig von der Polarität beim Auslesen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Peter D. schrieb:
>> Eine 4x4 Matrix kannst Du z.B. mit 2* 74HC4051 emulieren.
>
> Ne, ich möchte eine realistische vorhandene Maschine mit Tastatur durch
> meinen externen MCU kontrollieren. ;)

Genau so war das auch gemeint.
Ein 4051 geht an die Spalten, der andere an die Zeilen. Und schon kannst 
Du jede Taste emulieren. Du brauchst 4 Leitungen des MC zu Auswahl und 
eine zum Drücken (Enable-Pin).

Autor: Route 66 (route_66)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Du brauchst 4 Leitungen des MC zu Auswahl

Er hat aber 32 Tasten - also mindesten 5 Leitungen!
Aber, je nach Matrixaufbau, auch mehr.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Route 6. schrieb:
> Er hat aber 32 Tasten - also mindesten 5 Leitungen!
> Aber, je nach Matrixaufbau, auch mehr.

und warum sieht man das nicht im Eröffnungsbeitrag?

ich sehe nur eine 4x4 Matrix!
Ist es irgendwo später wieder im Text versteckt?
Da nutzt auch bestes Deutsch nichts wenn die Aufgabe diffus bleibt!

Autor: Joachim B. (jar)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Ich muss 32 Taster emulierten,

ich hasse Salamitaktik,

wie sind die 32 Taster angeschlossen?

an 32 Ports?
an 2 x 16 Ports?
an 3 x 16 Ports?
an 4 x 8 Ports?

dann könnte man wie schon gesagt die Matrix triggern wann die 
Spaltenabfrage kommt oder

ist auch egal man setzt über jede Taste einen Analogschalter

alles nach Wunsch, aber Infos müssen richtig und belastbar sein, nicht 
geraten!

Autor: Georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> aber Infos müssen richtig und belastbar sein, nicht
> geraten!

Vergiss es:

Yi Zhai schrieb:
> Ich bin
> nicht 100% sicher, wie die Tastatur funktioniert, aber ich vermute es
> wie in Abbildung tat1 zeigt.

Im Klartext: der TO weiss über die real existierende Tastatur nicht mehr 
als wir, eher sogar weniger. Immerhin, dass es 32 Tasten sind sollte 
stimmen.

Solange über die Verschaltung absolut nichts bekannt ist, bleiben nur 
potentialfreie Kontakte über jeden Taster, entweder Reedrelais oder 
PhotoMOS.

Georg

Autor: Joachim B. (jar)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Georg schrieb:
> Solange über die Verschaltung absolut nichts bekannt ist, bleiben nur
> potentialfreie Kontakte über jeden Taster, entweder Reedrelais oder
> PhotoMOS.
>
> Georg

und solange nichts über Spannung und Strom bekannt ist nicht mal dieses!

https://thumbs.dreamstime.com/x/elektrizittskraftw...

https://de.wikipedia.org/wiki/Hochspannungsschalter

: Bearbeitet durch User
Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lurchi schrieb:
> Bei den Optokopplern kommt es auf die Polung an in der der Strom
> fließt.
> In der Regel werden die Schalter / Optokoppler bei den nicht gerade
> aktiven Zeilen in der Regel keine Spannung sehen (d.h. etwa beide Seiten
> auf GND). Nur die gerade aktive Zeile wird eine Spannung an den offenen
> Schaltern sehen. Die Schalter der nicht aktiven Spalten sehen dann bei
> gedrückter Taste auch eine Spannung in die Gegenrichtung hier sollten
> der Schalterersatz dann eher nicht leiten.
>

Meinst du hier die Arbeitsweise der Tastatur? Bei meiner Messung an der 
Maschine ist es so:
Die Zeilenspannungen sind immer 5V und die Spaltenspannungen sind immer 
0V. Messergebnisse kommen vom Multimeter.


> Die normalen Optokoppler haben NPN Phototransistoren, da gehört also der
> Emitter an die negative Seite und der Kollektor zur positiven Seite. In
> die falsche Richtung dürften die Phototransistoren einen deutlich
> kleineren Strom liefern - falsch herum könnte es dann knapp werden.
>

Zur Sicherheit mache ich gerne keine Optokoppler. So verstehe ich deine 
Meinung :=)

> Als Schalter gingen ICs wie 74HC4066 oder die alten CD4066. Elegant ist
> die Lösung mit 2 mal 74HC4051 als Multiplexer um je eine Spannung und
> eine Zeile auszuwählen, die verbunden werden. Das dürfte die einfachste
> Lösung sein, selbst man die Steuersignal noch zusätzlich über
> Optokoppler schickt um eine Isolation zu bekommen.

Bei mir ist der genutzt MCU ATmega128. Deswegen ist die Anzahl der I/O 
kein Problem. Meinst du, dass ich mit dem 74HC4051 I/O verbreiten soll? 
Zur Funktionsverwirklichung brauche ich nur den Analogschalter. Habe ich 
richtig verstanden?

Herzlichen Dank

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lurchi schrieb:
> Der µC an Spaten und Zeilen geht nur, wenn der µC auch schnell
> genug
> reagiert. Mit nur einem µC stehen die Chancen gut, aber mit Optokopplern
> dazwischen kann es vom Timing leicht zu knapp werden. Da sollte man die
> Optokoppler dann eher zwischen dem µC und dem Rest der Steuerung habe,
> wo man selber die Geschwindigkeit für die UART wählen kann.

Leider kann ich deine Meinung hier schwer verstehen -_-!

Ist der µC, den du hier wähnt, meinen ATmega128 oder den MCU von der 
Tastatur?

Meinst du vielleicht hier, dass ein zusätzlicher Optokoppler beschwert 
die Einlesen der Struktur? Hat dis Struktur etwas mit UART zu tun?

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:

> an 32 Ports?
> an 2 x 16 Ports?
> an 3 x 16 Ports?
> an 4 x 8 Ports?

> ist auch egal man setzt über jede Taste einen Analogschalter
>
> alles nach Wunsch, aber Infos müssen richtig und belastbar sein, nicht
> geraten!

Die Tastatur ist 7 x 8 Ports. Davon möchte ich nur 32 davon 
kontrollieren, die anderen ist inrelevant.

Autor: Yi Zhai (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Und zu allgemeinen Weitermeldungen:

Die originale Maschine sieht an der Rückseite so aus. Dann weisst ihr 
warum ich gesagt habe, dass ich nicht 100% wissen kann. Zur Vermeidung 
des Kurzschlusses an der Maschine möchte ich nicht so vielen versuchen 
daran machen, um die Maschine zu protektieren.

Autor: Yi Zhai (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Achso... Falsch gesagt vorher... Das ist 7x7-Matrix.

Hier ist mein ehrmaliger elektrischer Entwurf.

Ich habe auch herauszusuchen versucht, warum es nicht funktioneren 
konnte. Eine Antwort auf einem chinesischen Forum hat mir hingewiesen, 
dass es fehlt mir parallelen Widerstände zwischen G- und S-Seite jedes 
MOSFETs. Deswegen kann der MOS von MOSFET nicht richtig funktionieren.

Seid ihr davon einverstanden, dass der fehlender G-S paralleler 
Widerstand zur falschen Funktion geführt hat?

Autor: Peter Dannegger (peda)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Das ist 7x7-Matrix

Kein Problem, mit 2*74HC4051 sind bis zu 8*8 möglich und darüber kann 
man sie kaskadieren.

ROW0..6 sind die Zeilen, COL0..6 die Spalten der Matrix und mit SEL0..5 
wählst Du die zu betätigende Taste aus. Mit /Press wird sie dann 
gedrückt.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Seid ihr davon einverstanden, dass der fehlender G-S paralleler
> Widerstand zur falschen Funktion geführt hat?

Nö, wohl eher die Reversdioden der FETs. Analog-Muxer haben das Problem 
nicht.

Autor: Yi Zhai (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Yi Zhai schrieb:
>> Seid ihr davon einverstanden, dass der fehlender G-S paralleler
>> Widerstand zur falschen Funktion geführt hat?
>
> Nö, wohl eher die Reversdioden der FETs. Analog-Muxer haben das Problem
> nicht.

Alles klar bei deinem Hinweis über 4051. Herzlichen Dank!!! Das versuche 
ich auf jeden Fall!! In dem Fall benötige ich einfach ATmega32 anstatt 
-128.

Noch einen Punkt: Wie soll ich die Reversdioden verstehen? Kannst du 
vielleicht eine Literatur empfehlen sodass ich genauer wissen kann?

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yi Zhai schrieb:
> Noch einen Punkt: Wie soll ich die Reversdioden verstehen? Kannst du
> vielleicht eine Literatur empfehlen sodass ich genauer wissen kann?

https://i.stack.imgur.com/n2vvP.png

Bodydiode -> schützt den FET vor Reversspannung
https://www.google.de/search?q=FET+Body+Diode&clie...

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.