Hallo zusammen, ich habe hier einen defekten Münzzähler, bei dem Schleifkontakte in Abhängigkeit des Münzdurchmessers miteinander verbunden werden. Es gibt 6 Kontakte, wahrscheinlich 3 Eingänge und 3 Ausgänge. Die im Bild gezeigte Platine ist über ein 6-adriges Kabel mit einer zweiten Platine mit kleinem IC und Display + Batteriefach verbunden. Ich möchte die defekte Elektronik ersetzen und die im Bild gezeigte Schleifer-Schaltung dazu verwenden, mittels atmel, rasp o.ä. die Auswertung vorzunehmen und etwas zu experimentieren. Der mechanische Schleifaufsatz ist nicht montiert, besitzt auf der Unterseite jedoch nur 2 gefederte Druckstifte mit niederohmiger Verbindung. Da es 8 Münzen zu erkennen gilt, sollten die 3 Ausgänge/3Bit eigentlich ausreichen um alle Münzen zu codieren. Meine erste Idee war daher, die größeren 3 Kontaktpads auf Low oder High (001,010,110 usw.) zu legen und dann an den Ausgangspins im Idealfall für jede Münze eine Binärzahl (8 Binärzahlen 000,001 usw.) zu erhalten. Leider komme ich mit dieser Idee nicht wirklich weiter, denn ich konnte bisher keine Kombination am Eingang finden, die allen gesuchten Kombinationen am Ausgang entspricht. Bevor ich das Teil wegschmeiße, da es mir den letzten Nerv raubt, hoffe ich, dass sich jemand findet der - die Schaltung oder eine ähnliche Schaltung kennt - eine Logik aus der gezeigten Schaltung erkennt - mit einem Blick einen anderen Einfall hat, mittels dieser Schaltung durchmesserbasiert alle 8 deutschen Münzen (1,2,5,10,20,50ct;1,2€) zu erkennen Wahrscheinlich ist die Lösung recht einfach (wie so oft). Daher freue ich mich, wenn mir jemand weiterhelfen kann :) Edit: ich habe auch noch ein Bild der gesamten Konstruktion angehangen.
:
Bearbeitet durch User
wie bewegen sich die verschiedenen münzen über die kontakte? kannst du mal die wege/durchmesser der kleinsten und grössten münze in das bild skizzieren, damit man sich das besser vorstellen kann?
achso. ist es so, dass der schleifer im normalzustand ganz rechts steht, und mit zunehmender münzgrösse nach links gedrückt wird?
du verbindest die oberen kontakte mit 3 outputs. die unteren mit 3 inputs und aktivierst interne pulldown widerstände, oder legst extern an die inputs welche an. deine firmware muss sehr schnell die ausgänge durchschalten: 001 010 100 001 010 100 usw. nach jedem ausgangswechsel liesst du den input. du bekommst so theoretisch 9 mögliche zustände. einer davon ist nicht verschaltet.
Ist doch eine ganz normale Tastaturmatrix. Unter dem Stichwort findet Google unzählige Beispiele.
Danke schonmal für die Antworten. Joe F. schrieb: > achso. ist es so, dass der schleifer im normalzustand ganz rechts > steht, und mit zunehmender münzgrösse nach links gedrückt wird? Genau so ist es. Noch einer schrieb: > Ist doch eine ganz normale Tastaturmatrix. > Unter dem Stichwort findet Google unzählige Beispiele. Danke für das Stichwort, aber eine "normale" Tastaturmatrix hat für jede Zeile die gleiche Reihenfolge der Ausgangsspalten, hier ist es leicht anders, was mich (eventuell unnötigerweise) verwirrt. Die Idee mit dem schnellen Durchschalten hatte ich auch schon kurzzeitig, dafür wäre es aber eigentlich nicht notwendig, die Ausgänge derart zu verschalten. Es würde ja dann ausreichen, jedes der 3 großen Eingangspads mit je 3 Ausgangspads zu verbinden und hierbei immer die gleiche Reihenfolge zu wählen (eine Tastaturmatrix eben :)) Da die Reihenfolge jedoch nicht immer gleich ist (von rechts nach links 132-123-321) hatte ich die Hoffnung, die 3 Eingangspads mit einer statischen Low/High Kombination ansteuern und aufgrund der Verschaltungsreihenfolge am Ausgang direkt die verschiedenen Codierungen erhalten zu können. Aber vielleicht ist die Wahl der Reihenfolge auch rein layoutbasiert und ich interpretiere da zu viel hinein. Falls jemandem noch etwas einfällt, das Ganze mit einer single-read Operation zu lösen, würde es mich freuen. Ansonsten werde ich das Ganze mit 3 schnellen Leseoperationen umsetzen.
Joe F. schrieb: > du bekommst so theoretisch 9 mögliche zustände Der neunte Zustand ist fast noch wichtiger als die anderen 8. Er sagt: keine Münze! > deine firmware muss sehr schnell die ausgänge durchschalten: 500mal pro Sekunde reicht da sicher. Ich würde die Software so schreiben, dass für die größte Münze auch alle kleinen Schritte durchlaufen werden müssen. Noch dass ein kleiner ESD Puls ganz ohne Einwurf 2€ dazu bucht...
Ich hatte im ersten Schritt an einen simplen Zustandsautomaten gedacht (keine Münze, Münze). Beim Verlassen des Zustands "keine Münze" (Beginn des Einwurfs, Schieber bewegt sich vom ersten Pad) wird der jeweils größte sich ergebende Durchmesser gespeichert und im anschließenden Erreichen des "keine Münze" Zustandes (Münze verlässt Einwurf) die Auswertung auf Basis des gespeicherten Werts durchgeführt. Geht aber bestimmt eleganter :)
Warum machst du für jede Münze nicht erst mal eine Wahrheitstabelle, oder werden da Sequenzen abgefragt?
Münzzähler ist bei sowas übertrieben. Das Ding zählt auch Einkaufschips und Unterlegscheiben...
Ben B. schrieb: > Münzzähler ist bei sowas übertrieben. > Das Ding zählt auch Einkaufschips und Unterlegscheiben... Induktivmessung ist bei einer privaten Spardose wohl ebenfalls übertrieben :) nemesis... schrieb: > Warum machst du für jede Münze nicht erst mal eine > Wahrheitstabelle, > oder werden da Sequenzen abgefragt? Das Problem ist, dass mehrere Münzen die gleiche Kombination der Eingänge an den Ausgängen aufweisen..
Johannes B. schrieb: > Das Problem ist, dass mehrere Münzen die gleiche Kombination der > Eingänge an den Ausgängen aufweisen.. Aber wahrscheinlich nicht die gleiche Sequenz. Wenn man eine größere Münze einsteckt, werden wohl auch die Kontakte für eine kleinere Münze kurz betätigt. Vielleicht spielt die Zeit, die eine Münze braucht, eine Rolle. Man muss eben herausbekommen welche Sequenz zu welcher Münze passt.
Das kann man ja mit einem Speicheroszi machen. Für eine private Spardose ist das natürlich okay, da bescheißt man sich nur selber wenn man was anderes als Euronen da reinstopft.
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.