Ich suche nach einer Möglichkeit, eine riesige Schaltermatrix mit möglichst wenig Aufwand auswerten. Dabei sollen nach Möglichkeit Leitunngen und Platz gespart werden. Die Matrix wird aus 44 x 62 Schaltern bestehen. Jeder Schalter schaltet "aus", d.h. er ist im Ruhezustand geschlossen. Bei Druck öffnet er sich kurz, ca 100ms und schliesst sich dann wieder. Bei Druckentlastung tut sich nichts, ausser gfs etwas Prellen. Die erste Idee, 44 x 62 Leitungen zu nehmen und diese als Eingänge zu verwenden, scheitert am Verkabelungsaufwand. Es war gedacht, jeweils einen Pin mit 12V zu bedrahten und dann die anderen Pins zu multiplexen. Dies müsste wenn, vorort geschehen, erfordert dort aber Schaltungsaufwand und ebenfalls Platz. Daher folgende Idee: Eigentlich müsste es reichen, die 44 Spalten sehr schnell zu multiplexen, d.h. nur eine davon bekommt 12V Strom und dann einfach 62 Pins der Schalter auf eine Elektronik zu führen. Man sagte mir aber, dass dort Dioden rein müssen, wegen Querströmen, allerdings sehe ich nicht, wo die wie fliessen sollen. Idee? Angenommen, man schafft es, die Matrix zu anzusteuern, wäre eine weitere Idee, ein R2R-Netzwerk zu benutzen, und AD-Wandler einzusetzen. Man erweitert die 62 auf 64 und bekommt 8 Kanäle mit R2R- also 8 AD-Wandler. Die 8 Wandler bekommen permanent die Schalterstellungen jeder Spalte und man hätte mit Umschaltverlusten etwa 1/50tel der Geschwindigkeit. Vor allem könnten mehrere Taster gepresst werden. Angenommen, ein Wandler mit 8 Bit schafft 1 MHz Daten, dann hätte ich doch alle Taster mit 29 kHz abgetastet, oder? Die Auswertung könnte mit einem FPGA gemacht werden, der die 8 Wandler steuert und deren Werte auf die insgesamt 44x64 Speicherplätze verteilt. Damit (mit FPGAs) habe ich schon gearbeitet und denke, das bekomme ich hin. Ich frage mich, ob irgendwas gegen die AD-Lösung spricht? Oder muss ich dort 62 Leitungen in den FPGA legen?
Ach so nochmal zur Erklärung: Es sollen 8 Schalter in einer Gruppe arbeiten, also sind es dann wohl 8 Leitungen zurück und 44 Leitungen hin. Vielleicht gäbe es auch da noch eine Option, das zustraffen.
Elektro Nick schrieb: > Angenommen, ein Wandler mit 8 Bit schafft 1 MHz Daten, dann hätte ich > doch alle Taster mit 29 kHz abgetastet, oder? Wenn die Schalter bei Betätigung für 100ms geöffnet sind, sollte es reichen, mit 1/1000 der Abtastrate zu arbeiten, um eine Betätigung zu detektieren. Oder muss der Zeitpunkt der Betätigung genauer bestimmt werden?
http://www.mikrocontroller.net/articles/Netiquette#Klare_Beschreibung_des_Problems Und, nein. R2R macht das Problem noch größer, weil Umschalter gebraucht werden. Siehe http://de.wikipedia.org/wiki/R2R-Netzwerk
Elektro Nick schrieb: > Jeder Schalter schaltet "aus", d.h. er ist im > Ruhezustand geschlossen. Das ist extrem ungünstig und macht jegliche Lösung sehr aufwändig. Schließer wären viel einfacher. Elektro Nick schrieb: > Man sagte mir aber, > dass dort Dioden rein müssen, wegen Querströmen, allerdings sehe ich > nicht, wo die wie fliessen sollen. Idee? Ja: Zeichne dir die Schaltung mal auf (es reicht mit z. B. 3 x 3 Schaltern), sieh' sie dir an und du solltest merken, was die Anderen meinen. Elektro Nick schrieb: > eine weitere Idee, ein R2R-Netzwerk zu benutzen Leider auch nicht. Ein R2R-Netzwerk braucht bipolare Quellen, keine öffnenden oder schließenden Schalter. Außerdem wären das auch 2 Widerstände pro Schalter oder ein 8er R2R-Netzwerk pro 8 Schalter. Elektro Nick schrieb: > Die Auswertung könnte mit einem FPGA gemacht werden Was wird dadurch einfacher? Immer noch 44 x 62 Anschlüsse! Also, gemultiplexte Öffner würde 44 x 62 Dioden erfordern. Wenn du statt je 8 Dioden ein 8-fach Analog-Multiplexer nimmst, ist das ungefähr der gleiche Platzbedarf. (Analog-Multiplexer, weil sonst pro Taster ein Pull-irgendwohin-Widerstand gebraucht wird.) Es dürfte auch komplexere ICs geben, die nur zum Einlesen von Tasten gedacht sind. Alles sehr viel Aufwand, aber eine andere Lösung sehe ich nicht.
Hm, das mit den Umschaltern habe ich nicht bedacht. Die habe ich nicht. Ich dachte, ich könnte das mit pullups erledigen? Die 100ms resultieren aus den Relaxationsbedingungen der Schalter. Der Zeitpunkt muss so schnell wie möglich erfasst werden. Man wird auch ein und denselben Wert mehrfach brauchen, wegen dem Prellen.
Elektro Nick schrieb: > Ich suche nach einer Möglichkeit, eine riesige Schaltermatrix mit > möglichst wenig Aufwand auswerten. Dabei sollen nach Möglichkeit > Leitunngen und Platz gespart werden. Die Matrix wird aus 44 x 62 > Schaltern bestehen. D braucht einfach nur einen µC mit 106 (eigentlich bei optimierter Matrix nur 105) IOs. Das war's. Höllisch kompliziertes Problem, so einen µC oder FPGA zu finden... Wieviel bezahlst du mir, wenn ich an deiner Stelle Google benutze?
Ein Microcontroller wäre sicher eine Alternative. Mit dem R2R wird das ohnehin problematisch, weil es nicht so einfach ist, damit 8 Bit rauszukitzeln. Das braucht eng tolerierete Widerstände und meistens auch Kalibration. Ich würde maximal 16 Stufen nehmen. Ob das mit Deinen Schaltern hinzubekommen ist, hängt von den Schaltern und deren Ausgangswiderstand ab. Bei maximal 1 Ohm kann man das mit pull-up-Rs machen, darf die Anordnung aber nicht stark belasten. Sagen wir 330 Ohm als pull-up und ein R2R aus 10k-Widerständen mit 4 Eingängen. Du könntest die 44 Schalter der "Spalten" zu 11 Leitungen zusammenfassen und die Ansteuerung über Schieberegister realisieren. 8 Stück in Kaskade, macht die 62 Ausgänge. Allerdings musst Du dann noch auf 12V wie ich sehe. Wozu eigentlich? Die Auswertung kannst Du noch dahingehend verbessern, indem Du Daten direkt auswertest: Ein Sigma-Delta-Wandler im FPGA kann bei z.B. 50 MHz, die man da leicht machen kann, eine ausreichende Genauigkeit hinbekommen, um die 4 Bit mit 1MHz sauber zu trennen. Musst halt dann fenstern und die Zuordnung zu den 64 Kanälen leisten. Von denen brauchst Du dann eben 11 Stück. Bei einem meiner MIDI-Controller habe ich das so gemacht, um die Dreh-Enconder auszuwerten. Jeder Encoder arbeitet mit 8 Stufen für A,B und die Taste. Angesteuert und gelesen werden sie aber einzeln. Dann braucht man keine Matrixdioden. Fazit: Du kannst bei der Ansteuerung eher und einfacher Leitungen sparen. Daher sollten die 62 die Spalten sein. Ich würde dann bei den Rückleitungen ebenfalls zu Analogmultiplexern raten. Eine andere Möglichkeit wäre, die Ausgänge voll digital zu halten und alle zu latchen, um sie auszulesen. Kommt dann drauf an, wie viele Leitungen akzeptabel sind. Dazu hast Du Dich aber noch nicht geäußert.
Elektro Nick schrieb: > Jeder Schalter schaltet "aus", d.h. er ist im > Ruhezustand geschlossen. Dann scheidet Matrix schonmal aus. Eine Matrix ohne Diode je Taster kann nur max 2 gleichzeitig geschlossene Verbindungspunkte sicher erkennen.
Peter Dannegger schrieb: > Elektro Nick schrieb: >> Jeder Schalter schaltet "aus", d.h. er ist im >> Ruhezustand geschlossen. > > Dann scheidet Matrix schonmal aus. > Eine Matrix ohne Diode je Taster kann nur max 2 gleichzeitig > geschlossene Verbindungspunkte sicher erkennen. Richtig. Das ist echt dumm gelaufen bei dir. Elektro Nick schrieb: > Hm, das mit den Umschaltern habe ich nicht bedacht. Die habe ich nicht. > Ich dachte, ich könnte das mit pullups erledigen? Dann funktioniert der R2R nicht mehr ideal. Ob das zu völliger Fehlfunktion führt, oder zu enormer Ruhestromaufnahme, hängt von vielen Faktoren ab. Aber die Tatsache, dass ziemlich viele Bauteile benötigt werden, macht den R2R-Ansatz ohnehin sehr uninteressant. Du wirst mindestens eine Diode pro Taste brauchen, dazu 44 Zeilentreiber und 62 Spaltenempfänger samt Decodierlogik. Oder ein IC pro mehrere Tasten. Also z. B. in der 1. Ebene mehr als 340 Analogmultiplexer + Pull-Up/Down, dazu in der 2. Ebene 44 digitale Multiplexer, die in der 3. Ebene auf weitere 5 und in der 4. Ebene auf einen letzten Mux gehen, sind insgesamt ungefähr 390 ICs. Ob in so einem System die 100ms drin sind? Mag sein. 44 CPLDs mit 62 Eingängen oder 62 CPLDs mit 44 Eingängen, ggf. auch FPGAs, könnten eine echte Alternative sein. Die haben auch Pull-Ups. Mit welchen programmierbaren ICs es ein Optimum gibt, möglichst preiswert die 2728 Eingänge einzusammeln, kann ich nicht vorhersagen. Ist halt etwas Recherche und hängt z. B. auch davon ab, ob du BGAs einsetzen kannst oder nicht. Aber sie könnten dem µC von seiner Multiplex- und Auswertarbeit erheblich entlasten.
Um eine Diode pro Schalter wird man nicht drum rum kommen. Wegen der Geschwindigkeit kann es ggf. hilfreich zu sein die Matrix nicht als 44 x 62 zu organsieren, sondern etwa als 88 x 31 oder so.
Lurchi schrieb: > Um eine Diode pro Schalter wird man nicht drum rum kommen. Mit (Analog-)Multiplexern oder z. B. einer CPLD-Lösung schon. Ist aber hauptsächlich ein Rechenexempel, ob es sich lohnt.
Will niemand wissen, was das am Ende werden soll? Ich langsam schon :)
Alles Gedöns. Man muss einfach erkennen, wann eine eigentlich altbewährte Methode (Matrix) an ihre Grenzen stößt und dann nicht endlos 'rumfummeln, sondern etwas Neues suchen: Welches ist der preiswerteste MC mit 4 oder 6 Beinchen? Hänge so einen (passend programmiert) an jeden Schalter und ale MCs zusammen an eine Busleitung - erledigt der Fall und (beinahe) grenzenlos weiter skalierbar ...
Eine echte Spitzenlösung. Frank Esselbach schrieb: > Welches ist der preiswerteste MC mit 4 oder 6 Beinchen? PIC10F200T, ca. -,33 € bei 3000 Stück (zumindest der vom Microchip). > Hänge so einen > (passend programmiert) an jeden Schalter und ale MCs zusammen an eine > Busleitung - erledigt der Fall und (beinahe) grenzenlos weiter > skalierbar ... Also 33 Cent pro Taste (statt ca. 1 Cent pro Taste bei Dioden), fast 3000 Prozessoren programmieren, von fast 3000 Prozessoren die Daten einsammeln (an einem Bus? Wohl kaum. Also weitere Prozessoren oder irgendwelche Hardware) - das ist doch mal ein innovativer Ansatz. Spitze in Kosten und Arbeitsaufwand. Wenn es wenigstens 8, 16 oder 32 Tasten an einem Prozessor sein dürften! Ein 5M40ZE64C5N (CPLD) im QFP64-Gehäuse hat 54 IOs, davon dürften sich 50 für die Tasten nutzen lassen (der Rest für serielles I/O) und kostet deutlich unter 1,- €. Ok, da kommt noch Clock hinzu. Axel R. schrieb: > Will niemand wissen, was das am Ende werden soll? > Ich langsam schon :) Das verstehe ich, teile die Neugier aber nicht, jedenfalls nicht in dem Maße. Es ist eine technisch ausreichend definierte Aufgabenstellung. Das reicht mir. Weitere Erklärungen führen möglicherweise nur dazu, dass hier, statt Lösungen zu diskutieren, das ganze Projekt (und damit auch der Fragesteller) für bescheuert erklärt werden, weil man alles viel eleganter machen kann (was ja durchaus möglich ist). Deswegen verzichte ich lieber auf weitere Hintergründe und konzentriere mich auf die Beantwortung der Fragestellung.
:
Bearbeitet durch User
c-hater schrieb: > > Die Matrix wird aus 44 x 62 Schaltern bestehen. > D braucht einfach nur einen µC mit 106 (eigentlich bei optimierter > Matrix nur 105) IOs. Das war's. Nö, er braucht mindestens 2728 Dioden zusätzlich. Und auch jede andere Lösung braucht mindestens 1 Bauteil oder 1 Pin pro Schalter. Eine Matrix aus überwiegend geschlossenen Schaltern ist einfach blöd. Frank Esselbach schrieb: > Welches ist der preiswerteste MC mit 4 oder 6 Beinchen? Hänge so einen > (passend programmiert) an jeden Schalter und ale MCs zusammen an eine > Busleitung Wenn du wenigstens Grundschulmathematik beherrschen würdest...
Uwe Beis schrieb: > Also 33 Cent pro Taste (statt ca. 1 Cent pro Taste bei Dioden), fast > 3000 Prozessoren programmieren, von fast 3000 Prozessoren die Daten > einsammeln (an einem Bus? Wohl kaum. Also weitere Prozessoren oder > irgendwelche Hardware) - das ist doch mal ein innovativer Ansatz. Spitze > in Kosten und Arbeitsaufwand. Ich habe mich bei dem Vorschlag auch wundern müssen, einen PIC pro Schalter. :-) Ich meine, dass die Aufgabe eher eine quantitative Komponente hat und weniger eine qualitative, die einen Prozessor braucht. Komisch sind die Schalter: Elektro Nick schrieb: > Jeder Schalter schaltet "aus", d.h. er ist im > Ruhezustand geschlossen. Bei Druck öffnet er sich kurz, ca 100ms und > schliesst sich dann wieder. Bei Druckentlastung tut sich nichts, ausser > gfs etwas Prellen. Warum ist das so gelöst? Was sind das für Schalter?
> Man sagte mir aber, dass dort Dioden rein müssen, wegen Querströmen, > allerdings sehe ich nicht, wo die wie fließen sollen. Im Ruhezustand sind alle Schaltkontakte geschlossen. Ergo sind alle 106 Leitungen miteinander verbunden. Wenn du dann einen einzelnen Schaltkontakt öffnest, ist das nach außen nicht erkennbar, weil immer noch alle Leitungen miteinander verbunden sind. Deswegen die Dioden. Diese ermöglichen es erst, die Matrix Reihe für Reihe nacheinander abzufragen.
Was soll eigentlich passieren, wenn 2 oder mehr Tasten gleichzeitig oder kurz hintereinander gedrückt werden, z.B. so, dass eine noch gedrückt ist, eine zweite dazu und dann die erste wieder losgelassen?! Das gibt einen herrlichen Code-Mix. Stichwort: N-Key-Rollover und Phantom-Key.
Und wenn die Matrix so riesig ist gibt es auch ein riesiges EMV Problem anschliessen, das sollte man auch bei der Entwicklung von vornerein beruecksichtigen. Je nachdem wie gross die Matrix raeumlich wird ist das ein riesige Antenne.
Abgesehen von den genannten Problemen bezüglich EMV etc. wäre ein weiterer möglicher Ansatz, komplett auf eine Matrix zu verzichten, sondern ein riesengroßes Schieberegister zu bauen, wo jeder Schalter sein eigenes Register bekommt. Wäre dann z.B. 44 x 62 / 8 = 341 Stück 74HC597 Wenn ein Taster bei Betätigung immer 100ms geöffnet wird, kann man daraus die mindest-Datenrate des SPI berechnen, die notwendig ist. Klar, die Steuerleitungen (SCK) müssen mit entsprechendem Bumms in das System gepresst werden, bei der Last. Aber ist ja nur mal ein Ansatz, weg von der Matrix
Oder man spendiert jeder Zeile einen µC an dem alle Schalter parallel angeschlossen sind. Ein Master-Controller sammelt dann die Daten jedes Zeilencontrollers über SPI zyklisch ein. Oder man nimmt eine Touch-Folie o.Ä., malt die Tasten auf ein Blatt Papier, Klebt die Folie drauf und macht die Auswertung mit nem Pi oder sowas in der Art. Vermutlich billiger, als knapp 3000 Schalter zu kaufen, aber ich glaube, der TO hat die Schalter bereits rumliegen..
Ich würde auch eine Kompromiss versuchen. Parallel-In Serial-Out Schieberegister, wie vorgeschlagen und dann mit einem preiswerten uC jeweils per SPI ausgelesen. Da man 5V Signale nicht in jeder Umgebung auf beliebiger Länge transportieren kann, muss man selber einschätzen, wie viele S/R man auf einen Fleck baut. 12V sind ok, kann man über einen Widerstandsteiler auf 5V runter teilen, 47R und Shottky von 5V1 vor den Pin des Registers, das ganze mit einem ATtiny auf einen RS485 Bus gebracht. Dann muss man noch überlegen, wie man die Boards so anspricht, dass sie nicht alle durcheinander reden, wenn an verschiedenen Boards Tasten gedrückt werden. Aber da gibt es schon andere Threads drüber.
Schlumpf schrieb: > Wenn ein Taster bei Betätigung immer 100ms geöffnet wird, kann man > daraus die mindest-Datenrate des SPI berechnen, die notwendig ist. Bei 10 Abtastungen 300kHz für die Matrix und 3MHz für den SPI.
Man kann aber wirklich auch adc verwenden, 44x32 geht noch, man braucht dann z.B. 10x 16f1503 oder weniger wenn man externe Mux verwendet. Schalter auf GND und mit zwei Widerständen auf Spalte und Zeile aufgetrennt.
Hallo, divide et impera - man teilt so eine Matrix in Module auf, z.B. 48 Stück mit 8 x 8 Schaltern und je einem Prozessor, die werden wie üblich vernetzt. So macht man das auch bei den hauswandgrossen LED-Videoanzeigen in chinesischen Einkaufszentren. Bei einem Defekt ist ein Modul mit ein paar Handgriffen ausgetauscht. Das Problem 8 x 8 Schalter abzufragen sollte ja wohl beherrschbar sein, zweckmässig wäre es die Schalter und die Kontrolllogik zusammen zu montieren, etwa auf 2 Leiterplatten. Georg
Die entscheidende Frage ist, ob und welche Schalter gleichzeitig gedrückt werden und ob das erkannt werden muss. Diese Info steht noch aus. Ich meine, dass es das Einfachste wäre, möglichst viele Spalten zu verwenden und möglichst wenige Zeilen, mit denen auf eine Ausgangsleitung gegangen wird. Wie oben beschrieben, kann man 4 Leitungen bequem analog codieren. Das braucht keine speziellen R2R-Netzwerke und keine enge Toleranz. Vor allem muss es nicht kalibriert werden, sondern man kann die Werte ausrechnen und ablesen. Wenn es wirklich ein FPGA sein soll, kann man das ohne Wandler machen und hat auch Leitungen genug. Nach obigem Beispiel 44/4 = 11 Stück x 62 und einige wenige für die Steuerlatches. Diese rund 660 Leitungen müssen eben vorort mit Multiplexern runtergeteilt werden, soweit als möglich. Wieviele es maximal sein dürfen, hat uns "Tech Nick" ja ebenfalls noch nicht mitgeteilt.
Schlumpf schrieb: > Abgesehen von den genannten Problemen bezüglich EMV Solange die EMV gegeben ist, werden wohl kaum Probleme auftreten.
So als (Schnaps)Idee: Wie wäre es die Schalter mit Widerstandsdraht zu einer Matrix (Netz) zu verschalten Dann ändert sich beim öffnen eines Schalters der Widerstand des Netzes.
X4U schrieb: > Wie wäre es die Schalter mit Widerstandsdraht zu einer Matrix (Netz) zu > verschalten Das so auszulegen, daß jeder Schalter eindeutig erkannt wird, dürfte eine Lebensaufgabe werden.
Hi Ich glaub, hier führt euch Elektro-Nick an der Nase herum. Er stellt euch einfach eine Aufgabe und läßt euch mal machen. Eine Matrix mit 2728 Schaltern ist ein so gewaltiges Projekt, das man den Sinn anzweifelt. Und dann noch die Frage nach den Dioden. Da fragt sich ein "Elektriker" mit Recht, was das soll. Einfach mal aufzeichnen und in der Matrix mehr als einen Schalter einschalten. Schon wird klar, das Schalter aus ganz anderen Reihen Signale liefern können und damit der aktuellen Reihe vorgaukeln, es seien Schalter betätigt. Eine Matrixauswertung in diesem Maße ist eine Aufgabe für mehr als einen Controller. Ansonsten ist es einem Controller völlig egal, ob ein Öffner oder Schließer den Signalwechsel verursacht. Hier ist einfach mal ein wenig Ehrgeiz und Nachdenken gefragt, gepaart mit Wissen um den Stromkreis in der Elektrik. Um Verdrahtungs- und Beschaltungsaufwand kommst du sowieso nicht herum, also kannst du auch deine Aufgabe auf mehrere Controller verteilen und diese dann seriell verbinden. Einen zusätzlichen nimmst du dann, um die Signale zuzuordnen und auszuwerten. So kannst du deine Matrix in allen Controllern gleich programmieren und die Controlleradresse selektiert die Tastersignale im Zentral-µC. Das, was an Zeit für seriellen Datentransfer benötigt wird, spart die leichzeitige Signalaufbereitung mehrerer Controller und die Auswertung in dem zeitlich unabhängigen zusätzlichen µC. Aber meine Meinung ist immer noch, das hier eigentlich nur mal so abgefragt wird, wer auf so eine Projekt reinfällt. Gruß oldmax
oldmax schrieb: > Eine Matrix mit 2728 Schaltern ist ein so gewaltiges Projekt, > das man den Sinn anzweifelt. Abgesehen davon, scheint mir das räumliche Gebilde mit der Drahtmenge eine prima Antenne zu werden, die jeden Dreck einfängt. Ob der TS einen RAM durch Schalter ersetzen möchte?
hmm.. 2728 Schalter... scheint ne PC-Tastatur für chinesische Schriftzeichen zu werden.
Simpel schrieb: > hmm.. 2728 Schalter... scheint ne PC-Tastatur für chinesische > Schriftzeichen zu werden. Nö, ein Touch Screen für Grobmotoriker SCNR
Ich vermute mal Elektro Nick möchte seine Modelleisenbahn oder eine Netzleitstelle o.ä. verdrahten. Wir wissen nichts über die räumliche Anordnung der Schalter. Für zukünftige Anwendungen würde ich mir jedoch Flexibilität wünschen (Modifikation, Reparatur, etc.). qualidats Vorschlag geht daher genau in die richtige Richtung. Die Kosten für "busfähige Taster" (siehe Onlinesuche) sind im Vergleich zum erreichbaren Nutzen und dem gesparten Folgeaufwand absolut vernachlässigbar. Falls Elektro Nick aus irgendwelchen Gründen keine Standardbauteile verwenden kann oder möchte, findet sich sicher ein Elektronikdienstleister, der ihm eine passende Interfaceplatine entwirft - selbstverständlich CE konform. Bei Interesse - gerne PM an mich.
Eigentlich wurde ja schon alles gesagt.. was spricht denn gegen 1 Bit Shifter bzw einen MC als OneWire Rutschregister,mit Clock jeden takt 1bit Speichern/Ausgeben pro Schalter und dann nur noch die Zeilen einlesen. Würde das überhaupt möglich sein? Insgesamt kommt es ja auch auf den ganzen Aufbau an ob das eine 40x40cm Kiste oder 2x2m wird und die ganzen anderen Faktoren.
:
Bearbeitet durch User
Philipp K. schrieb: > Eigentlich wurde ja schon alles gesagt Jawohl! Und Elektro Nick (Gast) hat sich seit dem 22.04.2015, 20:08 Uhr nicht mehr gemeldet. Alles klar?
:
Bearbeitet durch User
Naja, aber im Grunde ist es ja auch eine Frage, die sich andere Stellen könnten. Leider ist es aber auch, wie so oft, eine unvollständige Frage, bzw. es fehlen die Rahmenparameter. Philipp K. schrieb: > ...Aufbau an ob das eine 40x40cm Kiste oder 2x2m wird und > die ganzen anderen Faktoren. Und das ist tatsächlich ein Unterschied, denn ein kleines Modelleisenbahn Stellpult kann man durchaus mit I2C Chips aus der PCF Serie auf I2C bringen und könnte zumindest Gruppen aus Schaltern machen, die dann, durch die Interrupts der Chips, nur ausgelesen werden wenn ein Eingang geändert wird. Bei einem original großen Eisenbahn Stellpult würde ich aber nicht mehr mit I2C arbeiten wollen und die Bahn wird es auch nicht abnehmen wollen. Generell wird man aber bei beiden Anwendungen nicht umhin kommen, ein wenig Entstörung an den Eingängen vorzusehen.
Torsten C. schrieb: > Philipp K. schrieb: > Eigentlich wurde ja schon alles gesagt > > Jawohl! Und Elektro Nick (Gast) hat sich seit dem 22.04.2015, 20:08 Uhr > nicht mehr gemeldet. Alles klar? Zwischen dem ersten und letzten Beitrag des TE liegen ganze 44 Minuten. Und es wird weiter gemacht und gelöst. Beeindruckendes Forum.
Naja, Torsten... Es ist ja so, dass hier jeder, der die Suche benutzen kann, auch eine Lösung finden sollte. Wenn man da einfach mal weiter diskutiert, obwohl der Fragesteller schon aufgegeben hat, warum ist das schlimm? Das Forum heißt ja nicht: Wir lösen dein Probleme und Aufgaben und machen für Dich Deine Arbeit. Wir haben einfach Spaß dabei, sonst macht es keinen Sinn.
Ulrich P. schrieb: > Es ist ja so, dass hier jeder, der die Suche benutzen kann, auch eine > Lösung finden sollte. Wenn man da einfach mal weiter diskutiert, obwohl > der Fragesteller schon aufgegeben hat, warum ist das schlimm? > > Das Forum heißt ja nicht: Wir lösen dein Probleme und Aufgaben und > machen für Dich Deine Arbeit. > > Wir haben einfach Spaß dabei, sonst macht es keinen Sinn. Das sehe ich genau so. Deswegen tendiere ich auch eher dazu eine Frage zu beantworten, als dem Fragesteller zu unterstellen, auf dem Holzweg zu sein (was ja oft genug der Fall ist). Wenn ich Antworten bekomme, die sinngemäß lauten: "Hey, ich habe keine Lösung für deine Aufgabenstellung, aber ich weiß eine Lösung für eine andere Aufgabenstellung, also stell' dich nicht so an, sei so schlau wie ich und mach es anders!" steigt bei mir das Blutdruck.
Harald schrieb: > Und es wird weiter gemacht und gelöst. In der Tat, sehr beeindruckend! Zumal am 25.04.2015 um 13:00 Uhr noch jemand schrieb: "Falls Elektro Nick aus irgendwelchen Gründen …". Nick leist hier doch gar nicht mehr mit! ;-) Schade, dass es Öffner sein sollten. Ich finde nämlich die Schaltungen von Helge immer wieder elegant: Beitrag "Re: Taschenrechner Tastatur: Ist das möglich?" Ulrich P. schrieb: > Naja, Torsten... Wie ist das gemeint?
Torsten C. schrieb: > Ulrich P. schrieb: >> Naja, Torsten... > > Wie ist das gemeint? Harald schrieb: > Zwischen dem ersten und letzten Beitrag des TE liegen ganze 44 Minuten. > Und es wird weiter gemacht und gelöst. Beeindruckendes Forum. Ursprünglich hatte ich Deinen Text als Ironie aufgefasst. Daher entschuldige das Missverständnis! I.d.R. fangen Posts so an, wenn einer anfängt dem TO das Interesse abzusprechen. Und ich halte solche Posts für überflüssig, weil das Ziel des Forums eben immer der Weg zu einer Lösung ist. Tatsächlich bist Du wohl wirklich beeindruckt, danke dafür :) Sorry Ulrich
Nett, was hier alles bereits an Mutmassungen unterwegs ist. Ich war krankheitsbedingt weg vom Fenster, wie man bei uns sagt. Es geht weiter: Zu den Fragen: Die Schalter sind vorgegeben und ich kann sich nicht ersetzen, bestenfalls anders orientiert verdrahten. Ja das ginge. Bei den Schaltern handelt es sich um eine bereits fest verbaute Druckmatrix in Mattenform, welche ein Art differenzielles Signal abgibt. Ich könnte ein Kennlinie posten aber es reicht, zu wissen, dass bei flächigem Druck sich etliche der Schalter öffen und erfasst werden sollen. Der Widerstand der Schalter springt von einigen hundert Kiloohm auf unter 10 Ohm. Daher auch die 12 Volt Verdrahtung, die genug Strom liefern soll, bzw Spannung für Störabtand. Ich sehe also, dass ich eine Reihe von Analogschaltern benötige, die das Signal umschalten könnten müssen. Ich muss jetzt in Erfahrung bringen, wieviel Platz um das System vorhanden sein wird, um das zu realisieren. Zu dem "OneWire Rutschregister": Ich steuere also ein sehr langes Schieberegister an, verstärke jeden Ausgang auf 12V und lege ihn an die Spalten. Die anderen Spalten sind damit weg. Direkt verodern kann ich die Zeilen nicht, wegen der Querstrominformatioen, weil ich sonst Dioden brauche, richtig? Dann fasse ich z.B. 4 Ausgange zu einem R2R zusammen und bekomme 11 zu multiplexende Spannungen. 11 x 62 macht rund 1/700stel der Abstastfrequenz. Ich brauche demnach für 100 ms zusammen etwa 100us. Bei 10x Abtasten also 10us = 10KHz. Dann ginge das doch sicher mit einem kleinen Microcontroller und einem einfachen ADC?
Elekto Nick schrieb: > Der Widerstand der Schalter springt von einigen hundert Kiloohm auf unter > 10 Ohm. Also ein Schließkontakt? Elektro Nick schrieb: > Bei Druck öffnet er sich kurz, ca 100ms und schliesst sich dann wieder. Oder ein Öffner? Vielleicht ist es heute schon zu spät, ich verstehe es nicht. Hört sich aber an, wie eine Gummi-Matte, wo Leute drauf laufen und mit der die Fußabdrücke erfasst werden sollen.
:
Bearbeitet durch User
Elekto Nick schrieb: > Bei > den Schaltern handelt es sich um eine bereits fest verbaute Druckmatrix > in Mattenform, Hatte der Singer nicht schon vor ca. 20 Jahren etwas derartiges für die Aachener gebastelt? Torsten C. schrieb: > Hört sich aber an, wie eine Gummi-Matte, wo Leute drauf laufen und mit > der die Fußabdrücke erfasst werden sollen. Iirc ging es damals um eine Matte, auf der Menschen mit großflächigen Verbrennungen gelagert werden sollten.
Elekto Nick schrieb: > Zu dem "OneWire Rutschregister": > > Ich steuere also ein sehr langes Schieberegister an, verstärke jeden > Ausgang auf 12V und lege ihn an die Spalten. Die anderen Spalten sind > damit weg. Direkt verodern kann ich die Zeilen nicht, Nein, du hast ein Schieberegister mut 2500 Eingängen und verbindest jeden Taster einzeln. Das Problem ust hat, dass sich Taster (0 Ohm/unendlich Ohm) nicht als Matrix verschalten lassen. Elekto Nick schrieb: > Der Widerstand der Schalter springt von einigen hundert Kiloohm auf > unter 10 Ohm. Aber deine Taster haben gar nicht 0 Ohm/unendlich Ohm. Und du musst scheinbar auch gar nicht so genau wissen, welche Taster geöffnet wurden, sondern nur wolkenweise Erfassen. Da kann eine Matrix eine Tomographie erlauben. Da du aber immer noch Informationen zurückhältst, kann man auch nicht mehr dazu sagen.
Nein, es ist ein Öffnungskontakt Nein, ich muss keine Wolken erfassen. Ich brauche die Taster einzeln als "on/off" und dies auf besser, als 10ms genau um eine Bewegung zu erkennen. Fussmatte mit Bewegungserkennung kommt dem im Prinzip schon nahe.
Elekto Nick schrieb: > Dann fasse ich z.B. 4 Ausgange zu einem R2R zusammen und bekomme 11 zu > multiplexende Spannungen 5 müssten eigentlich auch gehen - wären noch mal 2 Leitungen gespart. Wenn es digital wäre, hättest Du es einfacher: http://www.ti.com/lit/ds/symlink/sn74hc151-q1.pdf
Hallo! Die vielen Leute, die hier helfen wollen, sind wohl immer noch konfus über die Art des Schalters. Also: Schalter ohne Druck ergibt ( ) einige hundert Kiloohm ( ) unter 10 Ohm Schalter mit Druck ergibt ( ) einige hundert Kiloohm ( ) unter 10 Ohm Ich vermute irgend ein Missverständnis zu "Öffner" und "Schließer". Mache einen Stern oder ein "x" oder... in die Klammern und wir wissen mehr!
Wenn eine Diode pro Taster schon zu viel sind, dann sind alle anderen Lösungsvorschläge doch Sinnlos, denn sie können nur Aufwändiger sein. Denn es geht um Taster mit Öffner. In Ruhelage sind also alle Kontakte geschlossen.
Route 66 schrieb: > Schalter ohne Druck ergibt > ( ) einige hundert Kiloohm > ( ) unter 10 Ohm Schalter ohne Druck ergibt >100kOhm gedrückter Schalter ergibt eine Zeitlang 10 Ohm, während des Einpressvorgangs, danach wieder 100Ohm. Ist ein Differentielles Signal.
Elektro Nick schrieb: > Schalter ohne Druck ergibt >100kOhm > gedrückter Schalter ergibt eine Zeitlang 10 Ohm, während des > Einpressvorgangs, danach wieder 100Ohm. Vielleicht ist es heute schon wieder zu spät, ich verstehe es immer noch nicht: Taster ohne Druck hochohmig (>100kOhm), Taster gedrückt 10..1000Ohm (niederohmig). Elekto Nick schrieb: > es ist ein Öffnungskontakt Ist ein Öffnungskontakt bei gedrücktem Taster nicht eigentlich hochohmig? > Ist ein Differentielles Signal. Aus einem Taster kommt kein Signal Ein Taster kann nur leiten oder nicht. Und dann noch ein differentielles Signal? Wie wird das erzeugt? Vielleicht mit LVDS-Treibern? ;-) Irgendwas wichtiges verschweigst Du doch, oder?
:
Bearbeitet durch User
Vielleicht habe ich das falsch geschrieben mit dem Kontakt, aber es ist nach Messungen wirklich so, dass die Schalter in dem betroffenen Bereich kurzfristig niederohmig(er) werden. Das differenzielle Verhalten ist ähnlich einem Piezoeffekt, nennen wir es Elektrostriktion. Das Verhalten ist eigentlich analog, aber die Umschaltcharateristik ist im Groben eher digital. Die Flanken sind entsprechend verschliffen und es reicht, die Schalter also solche auszuwerten. Die Matrix wird dazu mit einer ausreichend hohen Spannung versorgt, damit ein klares Signal rauskommen kann und die sehr unterschiedlichen Kennlinienverläufe keinen Einfluss haben. Genaueres in Sachen Trimmung , eventueller Kalibrierung erfolgt im Anschluss an die Auswertung. Dann wird weitergedacht. Ich verwende aufs erste niederohmige Analogschalter, und sehe dann, ob man es für die weitere Auswertung gfs noch kleiner hinbekommt. Danke an alle.
Elektro Nick schrieb: > Ich verwende aufs erste …. Danke an alle. Dann hat sich die Frage also erübrigt? Trotzdem aus Interesse: > Die Matrix wird dazu mit einer ausreichend hohen Spannung versorgt, > damit ein klares Signal rauskommen kann. Annahme: Es geht also um einzelne Signale mit Masse als Bezugspunkt (ein Anschluss pro Taster) und nicht um Taster mit zwei Anschlüssen, die man mit Dioden^^ entkoppeln könnte, richtig?
:
Bearbeitet durch User
Elektro Nick schrieb: > Route 66 schrieb: >> Schalter ohne Druck ergibt >> ( ) einige hundert Kiloohm >> ( ) unter 10 Ohm > > Schalter ohne Druck ergibt >100kOhm > > gedrückter Schalter ergibt eine Zeitlang 10 Ohm, während des > Einpressvorgangs, danach wieder 100Ohm. Ist ein Differentielles Signal. Was verstehst du hier unter einem differntiellen Signal?
Elektro Nick schrieb: > Vielleicht habe ich das falsch geschrieben mit dem Kontakt, aber es ist > nach Messungen wirklich so, dass die Schalter in dem betroffenen Bereich > kurzfristig niederohmig(er) werden. Dann ist das mit einem Schließer und nicht mit einem Öffner vergleichbar. Ein schließender Taster wird bei Druck niederohmig und ist ohne Druck hochohmig. Genau das machen Deine "Kontakte". Und damit wird das alles viel einfacher... Aber noch eine Frage: Ist die Riesen-Matrix so fix verdahtet oder lässt sie sich in Unter-Matrizen aufteilen?
Also doch keine Öffner. Dann ist die Matrix ohne Dioden machbar. Nun brauchst du nur noch Schieberegister für die Reihen und Spalten.
Von den vielen Dioden hatte man sich doch bereits verabschiedet, wenn ich richtig lese, oder?
Nimm ein paar ShiftRegister mit PullUps(Down) an jeden (Taster)Eingang und fertig.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.