Elektronik: AVR mit 3-Achs-Beschleunigungssensor

Kürzlich ist mir bei einem bekannten Restposten-Händler ein analoger 3-Achs-Beschleunigungssensor ins Auge gefallen…  Geliebäugelt hab ich mit so einem Sensor schon länger, schließlich fallen einem da allerhand lustige Anwendungsmöglichkeiten für einen Cache ein ;-), allerdings scheiterte es bisher immer am hohen Preis oder an den extrem unhandlichen Chip-Abmessungen (lötet mal einen 4x4mm großen Chip mit 16 Pins… 🙄 ).

Es handelt sich dabei um den Sensor ADXL330KCPZ, der fast identisch auch in den Controllern der WII-Konsole zum Einsatz kommt…

Platinchen mit Sensor

In diesem Fall war der knuffige Chip zum Glück bereits „bastlertauglich“ auf einer kleinen Platine verbaut, und so stand dem Vergnügen nichts mehr im Wege, das Schmuckstück mit einem AVR-Mikrocontroller zu verbinden 😉   Die Anbindung und Auswertung gestaltete sich dann auch recht simpel – pro Achse ein ADC-Eingang vom AVR, passende Referenzspannung, fertig.

Funktionsweise: Der Sensor reagiert nicht nur auf Beschleunigung, sondern hat auch je nach Lage des Sensors in den betreffenden Achsen (X/Y/Z) zum Erdmittelpunkt eine Vorbelastung im Messwert von 1G im Vektor. D.h. er besitzt wenn Z beispielsweise nach oben zeigt, eine Vorbelastung um -1G (Gravitationskonstante) im Z-Wert. Die Messwerte werden vom Sensor in X bis Z als Analogspannungen ausgegeben. Hier unter den 3,3V sind dies in Ruhe ca. 1,65V, und eine Belastung der Achse um 1G verschiebt den Wert um linear ca. 330mV positiver bzw. negativer, je nach Beschleunigung und Lage auf der Achse.*

Das Projekt hab ich dann gleich etwas größer ausgelegt und nebenbei noch die ersten Versuche mit einem Grafikdisplay gestartet. Hier fiel die Wahl auf ein 128 x 64 Pixel Display mit KS0108 Controller – gibt´s als China-Import für knapp 10€ auf Ebay und läßt sich mit passender Bascom-Library (glcdKS108.lib) auch sehr einfach ansprechen… Herz des Ganzen bildet schließlich ein ATMEGA16 Mikrocontroller, der genug I/O-Ports und Speicher für mein Vorhaben haben sollte.

Und so sieht dann das erste Ergebnis aus:

Hier der vorläufige Schaltplan (Work in progress!):

Schaltplan des ADXL330-Moduls

Das Grundgerüst steht also – was in den nächsten Tagen folgt ist allerhand Programmierung 😉

1 Antwort zu Elektronik: AVR mit 3-Achs-Beschleunigungssensor

  1. Mediterarno sagt:

    So, so…ich kann mir schon vorstellen, was daraus wird…
    Bestimmt ein Cache der „Race against Time“ ähnelt :mrgreen:
    Gruß und gutes Gelingen
    Christoph

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.