Arduino: Mein Einstieg in die Microcontroller-Programmierung

10.04.2013 yahe arduino code hardware legacy

Elektrotechnik war noch nie mein Steckenpferd. Ich hatte zwar Rechnertechnikvorlesungen im Studium, in denen wir auch Dinge wie Ampelanlagen geplant oder kleinere Schaltungen gebastelt haben, trotzdem wurde ich nie das Gefühl los, dass ich dort eher rumprobiere, als wirklich zu wissen, was ich tue. Nach dem Studium habe ich deshalb nichts mehr mit Elektrotechnik zu tun gehabt. Doch das wird sich nun ändern, denn ich habe angefangen, mit der Arduino-Plattform zu spielen. Es handelt sich dabei um Open Hardware, was bedeutet, dass die Baupläne frei verfügbar sind, in Eigenproduktion hergestellt, modifiziert und verkauft werden dürfen. Neben den originalen Arduino-Boards gibt es auch Platinen von Drittanbietern, die "Arduino-kompatibel" sind. Sie lassen sich mit der Original-Software programmieren, können aber mitunter andere Hardwarekomponenten beinhalten.

Interessanterweise sind mir mit meiner Trigger Trap und meiner HexBright bereits mehrere Arduino-kompatible Geräte über den Weg gelaufen. Auch mein Freund Jonas hat bereits mit einem Arduino gebastelt. Mit Hilfe von Multiplexern hat er einen RGB-LED-Tisch gebaut.

Doch wie fängt man am besten an, wenn man keine Ahnung von alldem hat? Ein Crashkurs musste hat. Von denen gibt es einige im World-Wide-Web. Allerdings hatte ich keine Lust, mir selbst erst alles zusammen zu suchen. Deshalb habe ich mich stattdessen für das originale Arduino Starter Kit entschieden.

Arduino Starter Kit

Hauptbestandteile des Starterkits sind ein Arduino Uno, ein Buch mit Bauanleitungen und dazu weitere hilfreiche Bauteile - z.B. ein Breadboard, ein USB-Kabel zum Anschließen des Arduinos an den Computer, ein LCD-Display, viele Widerstände, LEDs, Steckverbinder und so weiter. Im Buch wird auch die Einrichtung der Software und das Aufspielen von Programmen auf die Arduino-Platine thematisiert. Darüber hinaus werden Dinge wie die Verbindung zwischen Stromspannung, Stromstärke und Widerstand, sowie die Markierungen auf Widerständen erklärt.

Starter Kit Hauptbestandteile Starter Kit Hauptbestandteile

Um ehrlich zu sein, habe ich nicht alle Beispielprojekte einzeln zusammengesteckt. Nach den ersten Experimenten habe mir die Beschreibungen und Codebeispiele angesehen, um die Projekte zu verstehen, nutze sie jedoch eher als Referenz, wenn ich ein neues Bauteil in einem eigenen Projekt verwenden möchte. Ein paar Projekte habe ich bereits zusammengebaut.

Lichttheremin

Da wäre zum Beispiel das Lichttheremin LightTheremine, das auch als Projekt im Buch enthalten ist. Hierbei wird anhand eines Photoresistors geprüft, wie hell es ist. Je heller es ist, desto höher ist der Ton, der über ein Piezoelement ausgegeben wird. Theoretisch könnte man damit Musik machen. Wirklich viel Programmieren muss man dafür gar nicht.

Rudimentärer Recorder

Neben dem Ausgeben von Tönen habe ich auch versucht, Töne durch den Bau eines Recorder aufzunehmen. Da ich nur ein Piezoelement zur Verfügung hatte, musste ich ein bisschen tricksen, um mit dem gleichen Bauteil sowohl Töne aufnehmen als auch abspielen zu können. Aus dem Grund gibt es einen Aufnahmeknopf und einen separaten Abspielknopf.

RBG-LED-Datenübertragung RBG-LED-Datenübertragung RBG-LED-Datenübertragung

Beim letzten Projekt RGBdata habe ich eine RGB-LED verwendet, sowie 3 Photoresistoren, die mit jeweils einer Farbe abgeklebt sind. Das hat den Effekt, dass jeder der drei Photoresistoren nur noch auf einen Farbteil der RGB-LED reagiert. Die RGB-LED wird aktiviert und die Photoresistoren lesen den Schaltzustand der RGB-LED wieder aus. Die Idee dahinter ist, mit einer RGB-LED zur selben Zeit drei Informationszustände (rot an/aus, grün an/aus, blau an/aus) darstellen und diese auch wieder auswerten zu können. Inspiriert wurde ich dabei vom blendfreien Fernlicht. Das ganze könnte man verwenden, um per Licht Daten zu übertragen.

Wenn ich genug experimentiert habe, werde ich damit beginnen, ein Projekt zu realisieren, das ich schon seit längerem im Kopf habe, vor dem ich mich aufgrund der Elektrotechnikanteile jedoch bisher immer gesträubt habe. Was es ist und wie es funktioniert, werde ich später mal an geeigneter Stelle präsentieren. Bis dahin werde ich noch ein bisschen Spaß mit meinen Bastelprojekten haben.


Search

Categories

administration (40)
arduino (12)
calcpw (2)
code (33)
hardware (16)
java (2)
legacy (113)
linux (27)
publicity (6)
review (2)
security (58)
thoughts (21)
windows (17)
wordpress (19)