Leergutautomat mit Ping-Pong-Platine
Wie
gerne hätte ich im Supermarkt einmal hinter den
„geheimnisvollen“ Leergutautomaten geschaut, von dem
für den Kunden im Normalfall nur die Vorderseite sichtbar ist.
Dort kann man an einer bestimmten Öffnung auch einzelne
Pfandflaschen abstellen, die vom Automaten jeweils
„vereinnahmt“ werden. Dieser überprüft offenbar,
ob er „die betreffende Flasche kennt“, und
zeigt darauf auf einem Display an, in welcher Höhe man
für sie Pfandgeld erhält. Der Leergutautomat gibt
schließlich eine kleine Quittung aus, die man beim Bezahlen
an der Kasse des Supermarkts einlösen kann, wo man dafür
einen bestimmten Betrag in Euro erhält. Ich beschloss irgendwann
einmal, ein sehr einfaches Modell eines Leergutautomaten selbst
anzufertigen. Da ich nicht die geeigneten farbigen Glasfläschchen
mit einem geringen Durchmesser als „Testobjekte“ zur
Verfügung hatte und auch keinen Barcode-Leser besitze, musste
ich nach anderen Objekten suchen. Als Ersatz
für kleine Fläschchen nahm ich rote, grüne,
gelbe und blaue Spielsteine aus einem Spiele-Magazin, da diese alle den
gleichen Durchmesser von ca. 15 mm haben. Schließlich
entstand das oben abgebildete Modell, das von einem ATMega8 auf
einer Ping-Pong-Platine angesteuert wird. Auf dem
LED-Display derselben sollte der Mikrocontroller als
„Bedienungsanleitung“ wie im Bild oben Symbole oder auch
kurze Worte erscheinen lassen.
Die Bedienung des Modells
ist recht „anwenderfreundlich“. Beim Einschalten der
Spannungsversorgung wird auf dem LED-Display der Ping-Pong-Platine mit
einem blinkenden Pfeil und einer stilisierten „Flasche“
angezeigt, dass „Leergut“ rechts daneben auf die
kreisförmige Vertiefung in einem Schieber aus Holz aufgestellt
werden kann.
Ist dies geschehen, drückt man den Taster oben im Bild zum Starten der Ablaufsteuerung.
Darauf
erscheint auf dem LED-Display die Anzeige „Ein“ sowie ein
blinkender Pfeil unten in Höhe eines zweiten Tasters, der
verdeutlicht, dass man nun diesen zu drücken hat.
Der
Schieber fährt mit dem Spielstein, der als „Leergut“
dient, hinter die Fassade des Modells zurück, hält nach
einigen Sekunden kurz an, und auf dem LED-Display erscheint z. B. wie
im Bild die Anzeige „Rot“ und darunter „0,15
E“. Hat der betreffende Spielstein eine andere Farbe,
so wird stattdessen diese oben angezeigt, während unten ein
zuvor festgelegter anderer Eurobetrag für das „Pfand“
erscheint.
Zur
Erfassung der „Art des Leerguts“ setzte ich zwei
handelsübliche Opto-Reflex-Koppler des Typs CNY70 ein. Die
beiden Sensoren befinden sich unmittelbar links hinter der Fassade des
Modells. Ich hatte bereits einen solchen Baustein in einem Beitrag
für ELO
vorgestellt, in dem erläutert wird, wie ein ATMEGA88 Spielsteine
aus einem Spielemagazin sortiert, zählt und ihre Anzahl auf dem
LED-Display einer Ping-Pong-Platine anzeigen lässt. Die beiden
Opto-Reflex-Koppler im Modell des Leergutautomaten sind
übereinander angeordnet, wie dies auf dem Bild zu sehen ist.
Zusätzlich ist zwischen beiden Sensoren ein schmaler
Kartonstreifen als „Sichtblende“ vorhanden, um eventuelle
Störungen von dem einen auf den anderen zu verringern.
Das
Ausgangssignal des einen optischen Sensors wird nach dem
abgebildeten Schaltplan durch einen Operationsverstärker
vergrößert, dessen Verstärkung in einem bestimmten
Bereich einstellbar ist, und dem Eingang ADC6 des Atmega8 auf der
Ping-Pong-Platine angeboten. Das durch eine in gleicher Weise
aufgebaute Verstärkerschaltung vergrößerte Signal des
anderen Opto-Reflex-Kopplers wird am Eingang ADC7 des Mikrocontrollers
bereitgestellt.
Die
als „Leergut“ dienenden Spielsteine sind für diesen
Zweck wie im Bild an einer Seite mit Streifen aus schwarzem
Isolierband beklebt und müssen daher so an der oben erwähnten
vorgesehenen Stelle auf den Schieber aufgestellt werden, dass die Seite
mit der „Codierung“ zum LED-Display hin zeigt und
damit hinter der Fassade auch von den beiden optischen Sensoren
CNY70 „gelesen werden“ kann.
Dies hier
ist der Auszug aus dem Programmlisting in Bascom-AVR für den
Atmega8 auf der Ping-Pong-Platine, mit dem dieser über die
Spannung an ADC6 und ADC7 unterscheidet, ob das
„Leergut“ „gelb“,
„grün“, „blau“ oder „rot“ ist.
...
Auswerten:
If Dat06 < 125 And Dat07 < 125 Then
Gosub Ein1
Goto Ausw_ende
End If
If Dat06 > 1000 And Dat07 < 1000 Then
Gosub Gelb
Goto Ausw_ende
End If
If Dat06 < 1000 And Dat07 > 1000 Then
Gosub Gruen
Goto Ausw_ende
End If
If Dat06 > 125 And Dat06 < 1000 And Dat07 > 125 And Dat07 < 1000 Then
Gosub Blau
Goto Ausw_ende
End If
If Dat06 > 1000 And Dat07 > 1000 Then
Gosub Rot
Goto Ausw_ende
End If
Ausw_ende:
Return
…
Der
Schieber fährt nach dem oben erwähnten kurzen Halt vor den
beiden optischen Sensoren noch weiter hinter die Fassade des Modells
zurück und sorgt dann dafür, dass das
„Leergut“ in einen Behälter unter der
Bodenplatte des Leergutautomaten-Modells fällt.
Dann
ändert sich die Drehrichtung des Getriebemotors, und der
Schieber fährt wieder nach vorn. Während dieses Vorgangs wird
auf dem LED-Display angezeigt, dass der „Kunde“ zu warten
hat.
Dies
ist ein Teil der elektronischen Schaltung mit einem I2C-Baustein
PCF8574, dessen Pins P0 und P1 mit der elektronischen Schaltung zur
Steuerung des Gleichstrommotors verbunden sind. Auf der Seite des
Mikrocontrollers erfolgt die Ansteuerung des Bausteins über die
Pins PB.6 und PB.7.
Die
Schaltung mit den Transistorstufen zur Drehrichtungssteuerung des
Gleichstrom-Getriebemotors beinhalten eine „elektronische“
Verriegelung, die ich in einem ähnlichen Schaltplan in einem
ELO-Sonderheft „Roboter selbst steuern“ fand. Dort wurden
allerdings NOR-Gatter des Typs 74LS02 verwendet.
Die Entprellung der Signale von den Tastern bzw. den Mikroschaltern besorgen jeweils Teilschaltungen wie die abgebildete.
Ist
der Schieber am hinteren Sensor angekommen, fällt der
Spielstein durch ein Loch im Boden unter der Grundplatte des
Modells in einen Behälter. Nach einer kurzen Wartezeit
fährt der Schieber wieder in seine Anfangsposition vor der Fassade
des Leergutautomaten-Modells, damit ein weiteres Stück
„Leergut“ aufgestellt werden kann, und die oben
beschriebenen Vorgänge laufen erneut ab.
Wie in der
Wirklichkeit ist Leergut, für das bei
der Rückgabe kein Pfand gezahlt wird, in einen
Altglas-Container zu geben.
Das oben vorgestellte Modell
eines Leergutautomaten ist nicht perfekt und ließe sich sicher in
mancher Hinsicht, allerdings mit einem wohl erheblichen
finanziellen Aufwand verbessern. Die Ausgaben für die oben
vorgestellte Bastelei sollten aber den Hobby-Etat nicht zu sehr
belasten. Außerdem sollte das Modell auch nicht zu viel Platz auf
einem Regal im Hobbyraum beanspruchen. Bei der Herstellung des Modells,
bei der Gestaltung der elektronischen Schaltungen, beim Entwurf
und der anschließenden Fehlersuche während der
Erprobung des Programms für den Atmega8 machte ich interessante
Erfahrungen.
Schließlich war die Freude groß, als die „Anlage“ so funktionierte, wie ich sie geplant hatte.
Download: Das Bascom-Projekt ping_LGt3a.zip