Benutzer-Werkzeuge

Webseiten-Werkzeuge


friedhof:alphafluid

Dies ist eine alte Version des Dokuments!


Alphafluid

Unter dem Projektnamen Alphafluid (oder AlphaFluid) werden alle Modifikationen und Addons am Getränkeautomat des Space und die zugehörige Infrastruktur (Server, APIs) zusammengefasst.

Features

Auflistung der Funktionen des Gesamtprojekts, also nicht nur des Automaten:

  • Zählt, wie viele Einheiten von welcher Sorte verkauft werden
  • Erkennt, wenn ein Schacht leer ist
  • Anzeigen des aktuellen Füllstands
  • Twittern, wenn ein Produkt verkauft wird
  • Twittern, wenn ein Schacht leer geworden ist.
  • Anzeigen des neuesten Twitter-Mentions (@alphafluid)
  • Anzeigen der aktuellen Füllstände im Display am Automat
  • Abspielen eines zufälligen Sounds beim Ausgeben eines Produkts
  • Leises Abspielen eines zufälligen Sounds in zufälligen Intervallen

Hardware Addons

Stats and Core

Der Kern des Projekts ist ein atMega32, der auf einer selbst geätzten Platine sitzt und mit dem Automaten und auch mit allen anderen verbauten Basteleien kommuniziert. Zusätzlich enthält das Board Optokoppler und Kondensatoren, um die Signale, die mit ca. 60V 50Hz aus dem Automat kommen, für den Mikrocontroller aufzubereiten.

Der Core hat folgende Aufgaben:

  • Abgreifen und Auswerten der Signale aus dem Zählwerk des Automaten
  • Überwachen der „Schacht Leer“ Leuchten
  • Überwachen des „Tür Offen“ Schalters
  • Ansteuern des 7Segment-Moduls
  • Serielle Kommunikation mit der „Pollin Box“ (LAN-Anbindung)
  • UPCOMING: Kommunikation mit dem Peripheral Controller

7Segment-Anzeigemodul

Der Automat hatte von sich aus schon ein kleines Fensterchen mit rotem Glas, allerdings ohne Display dahinter. Das wollten wir ändern!

VIP1710 aka "Pollin Box"

Die VIP1710 ist eigentlich eine Linux basierte IPTV-Settop-Box, die bei pollin.de als „Leergehäuse“ verkauft wird, jedoch noch voll funktionsfähig ist. Genutzt werden im Projekt Alphafluid vor allem LAN, audio-out und die interne serielle Schnittstelle.

Die Box lässt sich mit relativ geringem Aufwand dazu bewegen, ziemlich früh im Bootvorgang ein „alternatives“ Shell-Script auszuführen, mit dem man dann das System beeinflussen kann. Dies wurde vor allem dazu benutzt, um die IPTV-Software zu deaktivieren und einen simplen Audioplayer (mpd) zu implementieren.

Leider ist die interne serielle Schnittstelle nicht beeinflussbar. Diese stellte mit 115200 Baud eine Shell zur Verfügung. Um eine Verbindung vom Mikrocontroller (Core) zum Server herzustellen muss der Mikrocontroller also die entsprechenden Befehle absetzen.

Refill Button Boards

Da das Auffüllen genau getrackt werden muss und man sich die genauen Zahlen immer merken/notieren muss um sie später im „Lager Inventory Control Kack“ eintragen zu können, wurden Platinen mit je 8 Tastern und 16 LEDs entwickelt, in dreifacher Ausführung im Space hergestellt und an den Schächten angebracht. Mit deren Hilfe ist es bald (sobald der Peripheral Controller fertig ist) möglich, direkt am/im Automat eine Vorbuchung zu erstellen, die man später nur noch quittieren muss. Die geplante Belegung der Taster (4 pro Schacht):

  1. VOLL
  2. +10
  3. +1
  4. -1

Über die LEDs soll zusätzlich ein „Party Mode“ realisiert werden, bei dem die LEDs einfach wilde Muster blinken.

UPCOMING: Peripheral Controller

Der Peripheral Controller wird per I2C an den Core angebunden und stellt diesem zusätzliche Peripherie, wie z.B. die Refill Button Boards oder externe Schalter, zur verfügung.

friedhof/alphafluid.1333645951.txt.gz · Zuletzt geändert: 2012-04-05 19:12 von 93.231.142.134