Arduino als Einstieg in die Mikrocontroller-Welt
Seite 4: Beschleunigen
Als drittes Beispiel stellt der c't-Artikel einen 3D-Spiele-Controller auf Basis des Beschleunigungssensors ADXL330 vor. Je nachdem, welches Arduino-Board und auch welchen Sensor Sie verwenden, sieht die Schaltung etwas anders aus. Unser Nano-Schaltplan zeigt die Verdrahtung für einen älteren Arduino Nano (Version 2.X) und einen Beschleunigungssensor auf einer Platine mit Stiftleisten, wie er etwa bei Segor zu bekommen ist. Achtung: Der Schaltplan muss bei Verwendung eines Arduino Nano Version ab 3.0 etwas geändert werden, da hier die Pins A0 bis A7 in der umgekehrten Reihenfolge am Controllerboard angeordnet sind. Die Beschriftungen des Arduino sind hier verbindlich, der Schaltplan zeigt nur das Prinzip.
Weiterhin ist zu beachten:
- Der Beschleunigungssensor muss unbedingt richtig herum auf das Steckbrett gesetzt werden. Eine Ecke des quadratischen Gehäuses ist mit einem winzigen Punkt markiert (der auch auf dem Schaltplan angedeutet ist). Dieser Punkt muss zum Arduino-Board hin ausgerichtet sein.
- Die schwarze Drahtbrücke verbindet den Massepin (GND) mit der untersten Lochleiste, die rote beschaltet die Reihe darüber mit 3,3 Volt, der Versorgungsspannung des Sensors.
- Die schwarze und die rote Drahtbrücke ganz links koppeln die oberen und die unteren Längsleisten aneinander, so dass der Sensor von oben mit den beiden roten Drahtbrücken mit Spannung versorgt werden kann.
- Die orangenen Leitungen verbinden die Output-Pins des Sensors mit den Eingängen A0, A1 und A2; bei Verwendung eines Arduino Nano 3.0 weicht deren Position vom oben gezeigten Schaltplan ab.
- Der Taster entspricht der Tasterschaltung aus dem ersten Beispiel.
- Wer die Schaltung entschlossen enger steckt, bringt sie eventuell auch auf einem kurzen Steckbrett unter; wer leichter an den Taster kommen will, kann ihn auch noch weiter nach rechts versetzen.
- Für eine dauerhafte Installation ist es empfehlenswert, die Drahtbrücken auf die optimale Länge zu kürzen.
In diesem Fall werden allerdings ein paar Änderungen am Code notwendig:
- Als Eingänge für die Sensorwerte dienen nicht mehr die Analog-Eingänge 0 bis 2, sondern 1 bis 3.
- Für die Spannungsversorgung und die Erdung müssen Pin 4 und 5 als Output-Pins deklariert und mit
LOW
(Pin 4) undHIGH
(Pin 5) belegt werden. Zwar ist der ADXL330 nur für 3,3 Volt Betriebsspannung ausgelegt und wird dann mit 5 Volt betrieben. Allerdings gibt das Datenblatt des Sensors als absolutes Maximum für die Versogungsspannung 7 Volt an; insofern dürfte fürs Herumspielen und Ausprobieren die etwas zu hohe Spannung aus dem Arduino-Board kein Problem sein. Im Dauerbetrieb sollte man den Sensor allerdings mit der Nennspannung betreiben, etwa, indem man ihn statt aufs Board aufs Steckbrett stöpselt und die Verbindungen zwischen Buchsenleiste und Sensor mit Kabelbrücken herstellt.