Freitag, 18. September 2015

LED über Mausrad faden

In diesem Post geht es darum, wie man mittels einem Computermausrad eine LED, angeschlossen an den Arduino, bequem und intuitiv faden kann.

Die Funktionsweise


Zunächst einmal muss man mittels der Programmiersprache Processing die Mausradbewegung auslesen. Wie man Processing installiert und mit dem Arduino verwendet, habe ich bereits hier erklärt. Anschließend muss man die aktuelle Drehung über die serielle USB Verbindung an den PC schicken. Anstatt einer USB Verbindung, könnte man die Daten auch über Bluetooth mit Processing an den Arduino senden. Am Arduino muss man nun nur noch über analogWrite() einen PWM fähigen Pin (am Arduino mit ~ markiert) zur Steuerung der LED verwenden.

Der Processing Sketch

Jedes Mal, wenn das Mausrad gedreht wird, wird die Funktion mouseWheel() aufgerufen. In ihr kann man über getCount() die Drehrichtung ablesen. Wird das Mausrad vom Benutzer weggedreht, ist der aktuelle Status -1, wird das Mausrad zum Benutzer gedreht, ist er 1. Das kann dann an den Arduino gesendet werden. Ein Beispielsketch sähe so aus:


Der Arduino Sketch

Im Arduino Sketch muss nur die serielle Verbindung mit dem PC aufgebaut werden, und sobald Daten über die serielle Verbindung empfangen werden, die LED stärker oder schwächer schalten. Nicht wundern: Da die Zahl 1 beziehungsweise 0 als Text übertragen/interpretiert werden, und dadurch durch die ASCII Tabelle "übersetzt" werden, empfängt der Arduino 48, also 0, oder 49, also 1. Mein Beispielarduinosketch sieht so aus:

Wie man sieht, ist der Code auf beiden Seiten relativ unkompliziert. Wer sich den PC noch sparen will, und die Maus direkt an den Arduino anschließen will, was jedoch einiges mehr Arbeit erfordert, kann die Maus hacken, und direkt den "Maussensor" an den Arduino anschließen. Passende Anleitungen dazu gibt es hier (Deutsch), oder sehr ausführlich hier (Englisch).

Keine Kommentare:

Kommentar veröffentlichen