Im Jahr 2005 als Lernplattform für Studierende am Interaction Design Institute Ivrea, Italien, erfunden, ist der Arduino mittlerweile aus der internationalen Hochschulwelt, Maker-, Künstler- sowie Bastlerszene nicht mehr wegzudenken. Der große Erfolg des Mini-Rechners lässt sich mit dem geringen Anschaffungspreis von gerade einmal 18 Euro für das günstigste Board und die kostenlose Open-Source Entwicklungsumgebung für alle gängigen Betriebssysteme erklären, mit der selbst Neulinge auf dem Gebiet der Programmierung schnell eigene Projekte realisieren können. Die Open-Source Schaltpläne und Software trugen weiter dazu bei, dass der Arduino die meist genutzte Open-Source Hardware unserer Zeit wurde.

„Die Arduino Plattform ermöglicht es Projekte umzusetzen, die ohne dieses Board nicht zustande gekommen wären.“ sagte David A. Mellis, der Kopf des Arduino Software Development Teams und ehemaliger Studierender am IDII. Von der Richtigkeit dieses Statements überzeugen Sie sich am besten selbst, indem Sie einen Blick in eines der unzähligen Arduino Foren werfen. Dort wird über vermeintlich einfache Anwendungszwecke, wie zum Beispiel die Steuerung eines Motors oder verschiedenen Blinkmustern von LEDs diskutiert - weiter werden jedoch auch sehr komplexe Projekte in Themengebieten wie Gebäudeautomation, Robotik und Wearables vorgestellt.

Benötigen Sie Starthilfe? Die große Arduino-Community gibt Ihnen Hilfestellungen, wenn Sie eine neue Herausforderung suchen, Ihr neues Projekt planen oder bei Ihrem Vorhaben an einen Punkt angelangt sind, an dem Sie nicht weiter wissen.

Am Ende dieses Artikels finden Sie eine Liste an ausgewählten Arduino Foren mit denen Sie Ihre Suche starten können.

Vorstellung der Plattform

Ein Arduino Board ist im Grunde genommen ein Computer mit dem Daten gesammelt, verarbeitet und wieder ausgegeben werden können. Hierzu werden Ein- und Ausgabeports, ein Mikroprozessor sowie Speichereinheiten verwendet. Die von Ihnen für den Arduino vorgesehene Aufgabe wird mit der frei erhältlichen Arduino IDE programmiert und mit Hilfe eines USB Kabels auf den Controller übertragen. Da der Kleinrechner zusätzlich mit einer dedizierten Stromversorgung ausgestattet werden kann, ist es möglich, dass er die ihm vorher übertragene Aufgabe autonom, das heißt auch ohne eine Verbindung zu einem PC, ausführen kann.  

Je nach dem welchen Einsatzzweck Sie für Ihren Arduino vorgesehen haben und wie viel Leistung Sie für Ihr Projekt benötigen, stehen Ihnen verschiedene Boards zur Verfügung. Die originalen Arduino Platinen können direkt im Arduino Store erworben werden und beginnen preislich bei 18 Euro für gebrauchsfertige Arduino Leonardo Boards. Es besteht die Möglichkeit, dass Sie die Pins selbst auf das Board löten, dies ermöglicht Ihnen den Einstieg in die Welt der Arduinos für 16 Euro. Das am weitesten verbreitetste Board ist der Arduino UNO, der mit 20 Euro zu Buche schlägt.

Der Arduino UNO – das am weitesten verbreitetste Arduino Board (Quelle: Arduino)

Wer schon Erfahrungen im Bereich der Mikrocontroller gesammelt hat, wird sich bei den unterschiedlichen Modellnamen wahrscheinlich berechtigte Sorgen machen, dass Programme, die für ein Board geschrieben wurden, nicht ohne Mehraufwand auf ein anderes, leistungsstärkeres oder besser ausgestattetes Board portiert werden können. Der Arduino ist jedoch anders – die Programmiersprache, die bei den Arduinos zum Einsatz kommt, ist eine Implementierung von Wiring, einem Open-Source Programmier-Framework für Mikrocontroller, die es ermöglicht, Cross-Plattform Software für eine Vielzahl verschiedener Mikrocontroller zu schreiben. Für die Arduino Plattform bedeutet dies im Speziellen, dass in dieser Sprache geschriebenen Programme auf allen Arduino Boards ausgeführt werden können. Hierzu wird der von Ihnen geschriebene Source-Code in die für den Controller ausführbare Sprache übersetzt. Kurz gesagt bedeutet dies, dass Sie Ihr Programm nicht für andere Arduino Boards anpassen müssen, falls Sie einmal einen Wechsel des Boards vornehmen müssen.
Eine weitere Besonderheit der meisten offiziellen Arduino Boards ist, dass das Layout der Eingang- und Ausgangspins der Boards identisch ist.

Erweiterungen

Mit dem Arduino Board an sich lässt sich jedoch verhältnismäßig wenig anfangen, da die Schnittstellen zur realen Welt fehlen. Zu diesem Zweck werden unzählige Erweiterungsplatinen angeboten, die Shields genannt werden, und oben auf dem Arduino Platz finden. Durch das Layout der Pins, das bei den meisten offiziellen Boards gleich ist, können Sie verschiedene Erweiterungsboards übereinander stapeln und so die Funktionalitäten dieser kombinieren.

Das einheitliche Pin-Layout der Arduino Plattform

Durch die Anordnung der Pins auf den Shields sowie den Boards können Sie die Erweiterungsmodule für die meisten Arduino Boards hergenommen werden. Um sicher zu gehen, ob ein Shield mit Ihrem Arduino kompatibel ist, lesen Sie bitte die Beschreibung genauestens durch oder kontaktieren Sie vor dem Kauf den Händler.

Mit dem gleichbleibenden Design der Pins und dem kostengünstigen Anschaffungspreis folgen die Shields dem Prinzip der gesamten Arduino Plattform: Trotz der nahezu unendlichen Möglichkeiten bleibt der Anschaffungspreis im Rahmen und die Umsetzung des eigenen Projektes steht im Mittelpunkt. Im Fachhandel sind unter anderem Shields für ein Display, ein Motortreiber, ein GPS Logger, ein CAN Bus Interface und eine MicroSD Erweiterung erhältlich. Sollte die passende Erweiterung für Ihr Projekt nicht erhältlich sein, können Sie Ihr ein eigenes Shield entwickeln. Hierzu stehen Layout-Dateien für die EAGLE PCB Design Software kostenfrei zum Download bereit.Neben den offiziell von Arduino erhältlichen Shields gibt es unzählige Firmen, die Erweiterungsboards anbieten. Vor dem Kauf eines Shields sollten Sie sich zum Beispiel in den unten aufgeführten Foren auf die Suche nach möglichen Problemen machen, auf die andere Benutzer gestoßen sind.

Weiter können Sie die Funktionalität der Arduino Plattform mit verschiedenen Sensoren und Aktoren erweitern. Für diese sind werden teilweise Code Beispiele angeboten, die Sie auf den ersten Schritte mit den Bauteilen begleiten. Erhältlich sind unter anderem Beschleunigungssensoren, Temperatursensoren und Näherungssensoren sowie LEDs, Motoren und Relay Module.

Trotz der nahezu unendlichen Möglichkeiten bleibt der Anschaffungspreis im Rahmen und die Umsetzung des eigenen Projektes steht im Mittelpunkt.

Unter der Haube

Das Unternehmen Arduino ist kein Mikrocontroller Hersteller, deshalb werden verschiedene Mikrocontroller von Atmel auf den Boards verbaut. Diese werden mit Hilfe eines bestimmten Boot Loaders ausgeliefert, der beim Kauf eines Arduinos bereits auf dem Chip vorhanden ist.

Die Mikrocontroller

Die Mikrocontroller der Arduino Plattform stammen ausschließlich von Atmel. Meist wird hierzu die ATmega-Serie verwendet - der Arduino Duo bildet eine Ausnahme, denn hier wurde ein ARM Prozessor von Atmel verbaut. Genauere Informationen zu Leistungsdaten der jeweiligen Boards und die darauf verbauten Prozessoren finden Sie auf der offiziellen Arduino Webseite.Die Programmierung dieser Atmel Mikrocontroller erfolgt normalerweise in der Programmiersprache C. Um die Controller in dieser Programmiersprache programmieren zu können, müssen Sie sich zuerst ein großes Fachwissen aneignen – das Erlernen der Programmiersprache C hat zudem eine flache Lernkurve.

Um diese Vorkenntnisse möglichst gering zu halten, wird jeder Mikrocontroller eines Arduinos vor der Auslieferung mit einem speziellen Boot Loader versehen, der es ermöglicht, den Controller in einer anderen Sprache zu programmieren.

Der Boot Loader

Ein Boot Loader ist vereinfacht ausgedrückt ein Programm, das beim Starten des Controllers ausgeführt wird. Daher ist es in etwa vergleichbar mit dem BIOS auf einem PC. Der auf dem Arduino-Mikrocontroller vorprogrammierte Boot Loader sorgt dafür, dass nach dem Starten der von Ihnen in der Arduino IDE geschriebene Programmcode auf dem Atmel Mikrocontroller ausgeführt werden kann. Ist der Boot Loader nicht installiert oder nicht mehr funktionsfähig, weiß der Controller nicht, wie das von Ihnen geschriebene und auf den Controller geladene Programm gestartet und ausgeführt werden soll.

Falls Sie bereits einen von Arduino unterstützten Atmel ATmega Mikrocontroller besitzen, können Sie den Boot Loader auch nachträglich auf den Controller installieren.

AVR-C Code und C/C++ Bibliotheken

Erfahrene Nutzer, die bereits C oder C++ Software programmiert haben, können ihr Wissen auch in ihrem Arduino Projekten verwenden.

Da die Arduino Umgebung die GNU Compiler Collection, kurz GCC, verwendet um die Programme zu übersetzen, ist der Zugriff auf die Variablen der Ports und Register ohne weiteres möglich.

C oder C++ Bibliotheken, manchmal auch Librarys genannt, sind .c oder .cpp Dateien, die zusätzliche Funktionalitäten für Ihr Programm bereitstellen können. Diese können Sie in Ihr Arduino-Projekt importieren und anschließend darauf zugreifen. Weitere Informationen Thema Bibliotheken und wie man diese einbinden kann finden Sie hier.

Arduino kompatibel vs. Arduino zertifiziert

Neben den offiziellen Arduino Boards, die Sie am Arduino Logo auf dem Board erkennen können, gibt es unzählige kompatible sowie momentan ein von Arduino zertifiziertes Boards.

„Arduino kompatibel“ ist keine offizielle Bezeichnung von Arduino, dennoch wird sie häufig verwendet. Da die Hardware und Software eines Arduinos Open-Source ist, gibt es seit einiger Zeit Nachbildungen verschiedener Arduino Boards. Beim Kauf müssen Sie jedoch beachten, dass die Bezeichnung „Arduino kompatibel“ teilweise unterschiedlich verwendet wird. Es gibt Platinen, auf denen die gleichen Eingangs- und Ausgangsports aufgelötet wurden, dies jedoch schon die einzige Gemeinsamkeit mit den offiziellen Boards darstellt. Die Arduino Programmiersprache und IDE kann bei diesen Boards nicht verwendet werden. Weiter gibt es Arduino Nachbauten, die neben der gleichen Anordnung der Pins auch die gleichen Mikrocontroller verwenden. Diese sind daher beim Programmieren nicht von den offiziellen Arduinos zu unterscheiden. Oftmals ist es auf Bildern der Platinen nicht ersichtlich, um welche Art der Kompatibilität es sich handelt, daher ist vor dem Kauf eines solchen Boards stets Vorsicht geboten.

Arduino zertifizierte Produkte werden im Gegensatz zu Arduino kompatiblen Boards offiziell von Arduino unterstützt und beworben. Der Hintergrund hinter diesem Zertifizierungsprogramm ist, das Firmen, die Prozessoren verwenden oder herstellen, die momentan nicht von Arduino unterstütz werden, eine grundlegende Arduino-Kompatibilität nachweisen können. Bei der Veröffentlichung dieses Artikels war das Galileo Board des Prozessorherstellers Intel das einzige Arduino-zertifizierte Produkt.
Ein ausführlicher Artikel zum Intel Galileo Board wird in Kürze bei EEWeb Deutschland veröffentlicht.

Neuigkeiten von Arduino

Der neueste Sprössling der offiziellen Arduino Boards ist der Arduino TRE. Erst kürzlich wurde die zweite öffentliche Beta Test Phase geschlossen, das Board wird demnach noch nicht auf dem Markt angeboten.

Der Arduino TRE – ein Linux Computer und ein Arduino Leonardo auf einer Platine (Quelle: Arduino)

Auf der Platine des TRE ist neben einem Atmel ATmega32u4 Mikrocontroller ein Sitara AM335x Prozessor von Texas Instruments zu finden. Der Sitara Prozessor ist eine CPU mit ARM-Architektur, der mit 1 GHz getaktet ist und den TRE zu einem Linux Computer macht. Zusätzlich wurde in diesen ein Arduino Leonardo integriert. Dieses Gespann verspricht laut Arduino eine bis zu 100 mal bessere Performance wie die eines Arduino Leonardo oder UNO und ermöglicht so neben dem Einsatz von Linux-basierenden Desktopumgebungen, Berechnung von rechenintensiven Algorithmen und High-Speed Kommunikation. Der höhere Funktionsumfang geht jedoch nicht zu Lasten der Komplexität für den Nutzer. Durch die Integration des Atmel Mikrocontrollers können Sie die Funktionalität des Boards mit den derzeit am Markt erhältlichen Shields erweitern. Weitere Informationen und technische Details finden Sie auf der offiziellen Homepage von Arduino.
Auch die Programmierumgebung wurde für den neuen Arduino angepasst – eine Installation auf Ihrem Computer ist nicht mehr nötig. Die IDE ist mit Hilfe eines auf Ihrem Computer installierten Web-Browsers erreichbar, da Sie auf dem Linux-Computer des TRE vorinstalliert wurde. Wenn Sie bereits mit der aktuellen Arduino-IDE gearbeitet haben, werden Sie sich sofort zurecht finden.
Ein Datum für die Markteinführung des Arduino TRE war bei der Veröffentlichung dieses Artikels noch nicht bekannt.

Für weitere Informationen zur Arduino-Plattform, schauen Sie bald wieder bei EEWeb Deutschland vorbei.

Arduino Foren

Im Folgenden finden Sie eine Auswahl an Arduino Foren. Es besteht kein Anspruch auf Vollständigkeit. Eine weitere Anlaufstelle können die zahlreichen Arduino Gruppen auf diversen Social-Media-Plattformen wie Facebook und Google+ sein.

Deutsch
Englisch
Artikel Quellen:

avatar

Sie müssen sich anmelden um einen Kommentar zu veröffentlichen

avatar

Sie müssen sich anmelden um einen Kommentar zu veröffentlichen