20 Schalter über wenig Leitungen

#7356816
Lesenswert?

Hallo, Leider hab' ich dazu nicht viel gefunden. Ein System besteht aus zwei Teilen:

Teil 1: 20 (Puls-) Taster. Diese schalten entsprechende 20 LEDs ein-und aus.

Teil 2: 20 LEDs, welche synchron zu Teil 1 ein-und ausgeschaltet sein müssen.

Das Problem dabei: Teil 1 und Teil2 sollen mit möglichst wenig Drähten verbunden werden, Kabellänge <=3m.

Natürlich lässt sich dies mit einem oder zwei Controllern sauber lösen: RS232, CAN etc.

Wie aber kann ich dies ohne Controller lösen?

Danke vielmal für die Hilfe!

Gast #7356818
Lesenswert?

Tobias Z. schrieb:

Wie aber kann ich dies ohne Controller lösen?

Mit ein paar Schieberegistern.

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

Drei kaskadierte Parallel-In-Serial-Out a la 74HC165 und drei kaskadierte Serial-In-Parallel-Out a la 74HC595. Dazu brauchst du noch einen Taktgeber und ne Mimik, um die Latch-Clock-Signale zu erzeugen. Zwischen beiden Einheiten brauchst du drei Leitungen: Serial_Data, Serial_Clock und Latch_Clock.

#7356843
Lesenswert?

Drei kaskadierte Parallel-In-Serial-Out a la 74HC165 und drei kaskadierte Serial-In-Parallel-Out a la 74HC595. Dazu brauchst du noch einen Taktgeber und ne Mimik, um die Latch-Clock-Signale zu erzeugen. Zwischen beiden Einheiten brauchst du drei Leitungen: Serial_Data, Serial_Clock und Latch_Clock.

Das ist mir schon bekannt, aber ohne µC? Bin gespannt! :-)

#7356851
Lesenswert?

Mit CMOS oder (LS-TTL) geht das schon, nur sind derartige IC-Gräber etwas aus der Mode gekommen. So habe ich vor 30 Jahren gebastelt. Nur wenn man weder Programmieren, noch eine Logikschaltung erstellen kann, und eines von beidem eh lernen müßte, dann ist man mit Programmieren flexibler und hat vermutlich auch eine steilere Lernkurve. Eine Logikschaltung aufzubauen dauert länger, als das Äquivalent mit Mikrocontroller und bei Logik gibt es noch ein paar mehr Fallen, in die man tappen kann.

#7356869
Lesenswert?

Tobias Z. schrieb:

möglichst wenig

Möglichst wenig heisst 2.

Etwas weniger Bauaufwand entsteht bei 3.

Aber apropos Elektronik: wenn ich deine schwammige Beschreibung richtig interpretiere, dann soll man ein Mal auf einen Taster drücken und seine LED geht an und bleibt an auch wenn man den Taster wieder loslässt. Drückt man zum zweiten Mal auf den Taster geht sie wieder aus. Dafur braucht man Elektronik, und nach der fragst du nicht. Hast du die schon ? Wie wird sie gesteuert, wäre ja nicht ganz unwichtig.

Auch nicht ganz unwichtig ist die Frage, wie viele Taster gleichzeitig gedrückt werden und wie schnell. Wenn da 1000 mal pro Sekunde draufgehämmert wird taugt nicht jede Elektronik.

Also mit Mikrocontroller braucht man für deine 20 Taster und 20 LED genau 2 IC, einen an Senderseite und einen auf Empfängerseite, und nur ein paar passive Bauteile dazu, wie Widerstände und Kondensatoren.

Mit konventionellen IC braucht man alleine für 20 Toggle-Flip-Flops die die Zustände der LED speichern wohl schon 10 IC, dazu IC zur Entprellung der Taster. Der Aufwand, das ganze ohne uC zu machen, ist also GIGANTISCH höher.

Mit Spezial-IC aus alten Zeiten, z.B. Fernbedienungscontrollern wie SAA3007 und SAA3049 und vielleicht 3 74HC259 geht weniger Aufwand, aber man muss sich an die Einschränkungen der Teile anpassen.

Nimm uC, leg die Scheu ab, mal was dazuzulernen.

#7356872
Lesenswert?

Johannes F. schrieb:

Zwischen beiden Einheiten brauchst du drei Leitungen: Serial_Data, Serial_Clock und Latch_Clock.

Vier . Auch wenn die Experten immer indirekt dran denken, aber GND muss hier der gleiche sein.

Ebenso bei der Versorgung drauf achten, das die H Pegel erreicht werden. Somit muss Vcc nicht zwingend aus dem gleichen Netzteil stammen.

#7356873
Lesenswert?

Tobias Z. schrieb:

Das ist mir schon bekannt, aber ohne µC? Bin gespannt! :-)

Ist nicht spannend. Ein Zähler bis 24,der beim erreichen der "24" einen ein Bitcycle langen Puls abgibt. Der takt ist sofern im KHz Bereich unspektakulär mit 1/4 4093. Oder 1/6 40106 generiert.

Gibt's schon zig weitere Variationen, die Kernideen hat Johannes ja schon klar skizziert.

#7356880
Lesenswert?

Tobias Z. schrieb:

Wie aber kann ich dies ohne Controller lösen?

Zwei Handys mit Blue tooth verinden, zwei applikationen schreiben und an jedes Handy eine zwanzig kanal Schaltkarte.

Zwanzig opto zu LWL Konverter als Sendediode und zwanzig LWL Empfangsdioden. Dann mit zwanzig LWL Fasern Teil eins und zwei verbinden.

Vierzig Schalter mit Knebel und immer zwei Knebel mit einem Blechstreifen verbinden, sodass sie synchgron arbeiten.

Zwanzig zweipolige Schalter kaufen, die sind schon mechanisch verbunden....

Es gibt so viele Lösungen...

DS

#7356940
Lesenswert?

Danke allen! Das sollte eine quick and dirty Schaltung sein, da nur einmal gebraucht. Es hätte ja sein können, dass es - vielleicht noch aus alten Zeiten - irgend ein IC gibt, der einen Grossteil der Funktionalität erschlägt.

Vor zig Jahren gabs mal einen DTMF encoder / decoder, mit dem man zumindest schon mal 10 Tasten über eine einzelne (plus GND) Leitung übertragen konnte...

Dann muss halt ein µC aufs Brett, das geht auch...

#7356948
Lesenswert?

Tobias Z. schrieb:

Das Problem dabei: Teil 1 und Teil2 sollen mit möglichst wenig Drähten verbunden werden, Kabellänge <=3m.

Weshalb muss bei <=3m eine Elektronik dazwischen? Verlege für die kurze Distanz doch einfach ein dünnes Steuerkabel mit entsprechend vielen Adern.

Tobias Z. schrieb:

Bin gespannt! :-)

Gespannt auf was? Etwa auf einen fertigen Schaltplan?🤔

#7356962
Lesenswert?

Tobias Z. schrieb:

Danke allen! Das sollte eine quick and dirty Schaltung sein, da nur einmal gebraucht. Es hätte ja sein können, dass es - vielleicht noch aus alten Zeiten - irgend ein IC gibt, der einen Grossteil der Funktionalität erschlägt.

Na ja, so etwas in der Richtung gibt es tatsächlich. Das wird verwendet, um ein RGB-LCD-Display mit je 8 Bits für R, G und B plus HSYNC, VSYNC, DE und Pixel Clock an einen entfernten Controller anzuschließen, ohne ein dickes Kabel mit 30 Adern zu benötigen. Herausgekommen ist das hier:

https://www.ti.com/lit/an/slyt581/slyt581.pdf

Das arbeitet aber mit recht hohen Frequenzen und ist daher für Bastler eher nichts.

Dann muss halt ein µC aufs Brett, das geht auch...

genau.

fchk

#7356997
Lesenswert?

Ich käme mit vier Leitungen und am LED-Tastenende nur mit Logik aus.

GND, VCC, Daten, Clock

Für die Tasten parallel in serial Out Latch an ein retriggerbares Monoflop Wenn der Takt länger als die Monozeit aussetzt wird parallel geladen. Serial Out geht über einen Widerstand an die Datenleitung.

Für die LEDs ein Serial in parallel out Schieberegister. Wenn die LEDs beim schieben nicht blitzen sollen, gleiche Mimik mit dem Monoflop.

Trick ist, nach einem Taktpuls den Treiber des Datenpins am Mikrocontroller abzuschalten (DDR = 0), den Pegel zu lesen (PIN/IDR), Treiber wieder an, Pegel in Ausgangsregister schreiben (PORT/ODR), nächster Taktpuls.

Nachdem ein Zyklus rum ist, den Takt für länger als die Monozeit ruhen lassen.

Besser geht sowas aber eher mit I2C-Portexpandern.

mfg mf

Moderator (Firma: Titel) Persönliche Seite #7357146
Lesenswert?

Michael B. schrieb:

Tobias Z. schrieb:

möglichst wenig

Möglichst wenig heisst 2.

"Möglichst wenig" heißt konsequenterweise 0, ist also eine eine drahtlose Verbindung vulgo Funk oder Licht oder Ultraschall oder so.

Tobias Z. schrieb:

Teil 1 und Teil2 sollen mit möglichst wenig Drähten verbunden werden Wie aber kann ich dies ohne Controller lösen?

Das sind die einzigen Forderungen? Warum müssen es "möglichst wenig Drähte" sein?

(Puls-) Taster.

Du willst von jemandem den Puls abtasten?

Ich würde eine 6x2 Steuerleitung (12 Adern) nehmen und es etwa so machen:

1
                           Leitung
2
  o------------------------ ~ ~ ~ ------------------------------. 
3
 AC                                                             |
4
  o--.  LEDs                                  Dioden   Taster   |
5
     |                                                   __     |
6
     o---|<--R--.                            .--|<-------oo-----o    
7
     |          o------------ ~ ~ ~ ---------o           __     |
8
2    o--->|--R--'                            '-->|-------oo-----o
9
     |                                                   __     |
10
3    o---|<--R--.                            .--|<-------OO-----o    
11
     |          o------------ ~ ~ ~ ---------o           __     |
12
4    o--->|--R--'                            '-->|-------OO-----o
13
     |                                                          |
14
5    :                                                          :
15
:    :                                                          :
16
20   :                                                          :

https://www.conrad.de/de/p/kabeltronik-steuerleitung-paarig-6-x-2-x-0-08-mm-hoechstflexibel-geschirmt-806191052.html

#7357197
Lesenswert?

Jetzt aber: 20 normale Taster, dazu je 1 Widerstand, alle mit wohldefinierten unterschiedlichen Werten. Eine analoge Signalader plus GND. Am anderen Ende ein Spannungsteiler aus einem Widerstand hier und dem Taster-Widerstand am anderen Ende. Der geht auf einen ADC0802 (notfalls 0804), am parallelen Ausgang ein 1-aus-20 Dekoder (z.B. drei 74HC138), dahinter 20 Toggle-Flip-Flops.

Bonus: auf der Taster-Seite ist keine Stromversorgung nötig, nur 2 Adern, der ADC hat ein unglaublich ausführliches Datenblatt.

Moderator (Firma: Titel) Persönliche Seite #7357220
Lesenswert?

Bauform B. schrieb:

Bonus: ...

Malus: es darf nur 1 Taster zur gleichen Zeit gedrückt sein.

20 normale Taster, dazu je 1 Widerstand ... Eine analoge Signalader

Kleiner Tipp: in der Praxis funktioniert das in keinster Weise zuverlässig. Ich kann das aus vieltausendfacher Erfahrung sicher sagen.

alle mit wohldefinierten unterschiedlichen Werten.

Lass mal den Taster ein wenig älter werden und einen höheren oder gar variablen Kontaktwiderstand bekommen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren