Mittwoch, 27. Oktober 2010

Reverse Geocaching Box - Ein Arduino Projekt

Nachdem ich ein Garmin-GPS geschenkt bekam, erfuhr erstmals von Geocaching. Schnell wurde ich vom Cachervirus infiziert und googelte so durchs Netz, als ich auf http://newbrightidea.com/ stieß. Russ Weeks erklärt dort sehr präzise den Bau seiner Frustromantic Box als Reverse Geocache. Ich war davon fasziniert und baute als Geschenk ein Reverse Geocache nach. Zuvor war mir auch Arduino kein Begriff. In 6 Wochen lernte ich Grundzüge über Arduinos und Physical computing kennen, baute dann eine Box und tüfflte mit Emailunterstützung von Russ, der sehr geduldig war (dafür nochmals vielen Dank!) an dem Code bis die Box einsatzbereit war und vollständig funktionierte.
Das Prinzip ist folgendes: In der Box befindet sich ein Arduino Duemilanove, ein GPS Empfänger, zwei Servo Motoren, ein magnetischer Sensor, ein Infrarotsensor, eine Stromversorgung 4 AA Batterien, ein Akkupack, ein Pololu Switch, ein Druckknopfschalter, ein LCD, eine Schublade die von innen verriegelt und geöffnet werden kann. Die Box wird nach Start ebenfalls von innen verriegelt. Der GPS Empfänger befand sich im Deckel der Box, ein Foto auf Leinwand gedruckt habe als Deckel darüber genagelt.
Auf dem PC wurde ein entsprechender Code geschrieben und auf dem Arduino gespeichert. Es wurde ein Geschenk in die Schublade gelegt und ein weiteres in die Box selbst. Nach Initialisierung durch den ersten Druck auf den Knopf verriegelte sich die Box von innen, der Code durchlief seine erste Runde und die Box war bereit. 40 Versuche hatte ich der Software vorgegeben. Zielkoordinaten für Schublade und für die Box selbst werden bei jedem Druck auf den Knopf verglichen und die Distanzberechnet und angezeigt. Das Geschenk wurde überreicht.
Nach anfänglicher Unsicherheit was das zu bedeuten hat, eine verschlossene Kiste mit Knopf und Anzeige geschenkt zu bekommen, wurde schnell die Neugier geweckt und es wurde der Knopf gedrückt. Auf dem Display erschien jetzt ein kleines Rätsel mit einem Weghinweis und einer Distanzangabe und schaltete sich ab. Später ging auf die Suche nach dem Ort, wo sich die geheimnisvolle Box dann öffnen sollte, nach diesem  Prinzip, um sich dem Ziel anzunähern. Jedesmal zählten dann die noch möglichen Versuche runter. Endlich beim Ziel angekommen meldete das Display "Bravo 1.Etappe geschafft" und der Servo entriegelte die Schublade. Gleichzeitig meldete die Anzeige eine neue Distanz für das 2. Ziel. Nach dem Erreichen der zweiten Zielkkordinate war es möglich den Deckel zu öffnen und das zweite Geschenk entgegen zunehmen. Sie war begeistert (von Geschenk und Ort) ! Für den Notfall, falls man die Box mal öffnen musste, obwohl man nicht an den Zielkoordinaten war, habe ich wie Russ einen Infrarotempfänger eingebaut. Da dieser jedoch nicht funktionierte, aus welchen Gründen auch immer, habe ich einen Magnetsensor eingebaut, der, wenn man nach Knopfdruck einen Magneten an die Seite hielt den Servo in Gang setzte und den Verschluss entriegelte, sodass man die Kiste notfallmässig öffnen konnte.