Wissenswertes zu Arduino Boards

Was ist Arduino?

Arduino ist eine Physical-Computing-Plattform, die aus Hardware- und Softwarekomponenten besteht. Die Plattform basiert auf dem Prinzip des Open Source, so dass alle Komponenten quelloffen und die Daten für jeden einsehbar sind. Die Hardware-Komponente wird als Arduino-Board bezeichnet und besteht aus einem einfachen Eingabe-Ausgabe-Board, das mit einem Mikrocontroller sowie verschiedenen analogen und digitalen Aus- und Eingängen versehen ist.

Die Programmierung erfolgt durch eine Programmiersprache, die an C oder C++ angelehnt ist. Durch die integrierte Entwicklungsumgebung (IDE), die auf einem separaten Computer installiert wird, und die Verwendung umfangreicher Bibliotheken ist der Arduino auch solchen Nutzern zugänglich, die wenig Programmiererfahrung haben

. Arduino ist als Plattform geeignet, um interaktive Objekte eigenständig zu steuern und kann über die Schnittstellen mit Softwareanwendungen auf Computern kommunizieren. Auf diese Weise können Sie im gewerblichen wie im privaten Bereich vielseitige Anwendungen realisieren. 

Es gibt mehrere Arduino-Typen, die mit verschiedenen Mikrocontrollern arbeiten und über unterschiedliche Schnittstellen verfügen. Gängige Board-Typen sind:

  • Arduino Uno
  • Arduino Leonardo
  • Arduino Ethernet
  • Arduino Shield
  • Arduino Yun
  • Arduino Nano
  • Arduino Pro

Grundsätzlich verfügt der Arduino in jeder Ausführung über einen integrierten Timer und Speichermodule sowie diverse Schnittstellen. Die Boards sind durch Erweiterungsmodule um zusätzliche Funktionalitäten zu ergänzen, zum Beispiel durch Steckplatinen, auf denen weitere Schaltungen aufgebaut werden können.

Im Jahr 2015 entbrannte um die Inhaberschaft des Markenrechts von Arduino ein Rechtsstreit. In Europa, wo die Markenrechtsfrage ungeklärt ist, wird der Arduino seither unter dem Markennamen Genuino angeboten. Darüber hinaus verwenden verschiedene Hersteller das System in ihren Produkten.

Wie funktionieren Arduino-Systeme?

Der Arduino verfügt über kein Betriebssystem. Die Mikrocontroller sind jedoch standardmäßig mit einem Bootloader vorprogrammiert, der im Speicher hinterlegte Programme aufruft. Die integrierte Entwicklungsumgebung wird auf einem anderen Computer installiert, bringt einen eigenen Code-Editor mit und verfügt über einen Compiler. Die Übertragung des Programms auf die Hardware erfolgt über eine serielle Schnittstelle, die bei modernen Arduino-Boards über einen USB-Seriell-Konverter angesteuert wird.

Die Entwicklungsumgebung (IDE) ist für die gebräuchlichsten Betriebssysteme Windows, Mac OS und Linux erhältlich und kann mitsamt einigen Beispielprogrammen kostenfrei auf dem Computer installiert werden. Die IDE ist sehr rudimentär und funktional, tiefergehende Programmierkenntnisse sind nicht erforderlich. Die Programmierung erfolgt an einem Rechner und nicht direkt auf dem Board. Erst das fertige Programm wird über die Schnittstelle auf den Mikrocontroller aufgespielt.

Mit dem Arduino können im Handumdrehen kleine Programme realisiert werden. Die einfachste Variante funktioniert bereits mit zwei simplen Funktionen, dem Setup und einer Endlosschleife. So kann zum Beispiel das Blinken verschiedener an den Pins angeschlossener LEDs nach vorgegebener Reihenfolge programmiert werden, indem nur wenige Zeilen Code geschrieben werden. Dieses Programm wird dann durchgeführt, solange die Spannungsversorgung besteht. Darüber hinaus können komplexere Steuerungsanwendungen umgesetzt werden, beispielsweise die Steuerung eines Motors, der an den Arduino angeschlossen ist.

Abgrenzung zu Raspberry Pi:

Auf den ersten Blick scheint der Arduino als System dem Raspberry Pi ähnlich, der ebenfalls in handlicher Größe daherkommt. Allerdings handelt es sich beim Raspberry Pi um einen Rechner mitsamt Betriebssystem, das zunächst booten muss und auf dem mittels angeschlossenem Monitor direkt programmiert werden kann. Der Arduino/Genuino startet sofort, sobald Betriebsspannung angelegt wird und ist innerhalb weniger Sekunden bereit, das auf dem Flash-Speicher hinterlegte Programm abzuarbeiten. Er eignet sich eher dazu, rudimentäre Echtzeitprogramme abzuspielen, während der Raspberry komplexere Funktionen erfüllen kann.

Welche Arduino-Systeme gibt es?

Arduino-Systeme können sehr unterschiedlich ausfallen. Die wichtigsten Unterscheidungsmerkmale sind die verwendeten Mikrocontroller und die verfügbaren Schnittstellen.

Die verfügbaren Schnittstellen sind für die jeweilige Board-Serie unterschiedlich und entscheiden darüber, wie das Produkt verwendet werden kann. Arduino-Boards können mit diesen Schnittstellen ausgestattet sein:

  • SD-Karten
  • Bluetooth
  • Ethernet
  • USB
  • Mini-USB
  • Micro-USB
  • ICSP
  • SPI
  • TWI

Die auf den Boards aufgebrachten Mikrocontroller bilden das Herzstück der Plattform. Die Features der einzelnen Mikrocontroller unterscheiden sich zum einen in der Betriebsspannung, die 3,3 Volt oder 5 Volt betragen kann und über USB betrieben wird. Varianten mit externer Spannungsversorgung werden mit 7 bis 12 Volt versorgt. Darüber hinaus ist jeder Mikrocontroller mit drei verschiedenen Speichermedien versehen, dem Flash-Speicher, dem EEPROM und dem SRAM. Der SRAM verliert als flüchtiger Speicher alle enthaltenen Informationen, sobald die Betriebsspannung abgeschaltet wird. Die Programme, die das System ausführen soll, werden in den Flash-Speicher geladen, dessen Speichereinheiten nicht einzeln gelöscht oder überschrieben werden können. Der Flash-Speicher ist entsprechend der größte Speicherbaustein auf Arduino-Boards. Der EEPROM-Speicher ist ebenfalls ein nicht-flüchtiger elektronischer Speicher, die Speichereinheiten können jedoch einzeln gelöscht und überschrieben werden.

Folgende Mikrocontroller-Typen werden auf den bei Conrad erhältlichen Arduino-Boards eingesetzt:

  • Der Atmel SAMD21 verfügt über eine Betriebsspannung von 3,3 Volt und einen Flash-Speicher von 256 KiB (1 Kibibyte = 1024 Bytes). Er ist mit einem bis zu 16 KiB großen EEPROM-Speicherbaustein und einem 32 KiB großen SRAM-Baustein ausgestattet. Mit 20 digitalen Ein- und Ausgängen (I/O-Pins), 13 Analogeingängen und 6 analogen Ausgängen ist er beispielsweise im Arduino Pro verbaut.
  • Der Mikrocontroller ATmega32u4 wird mit einer Betriebsspannung von 5 Volt betrieben und bietet 32 KiB Flash-Speicher, sowie 1 KiB EEPROM und 2,5 KiB SRAM. Der Nutzer kann an 20 digitalen I/O-Pins sowie 12 analogen Eingängen und 7 analogen Ausgängen Peripherie anschließen. Der ATmega32u4 wird im Arduino Leonardo verwendet.
  • Der ATmega 328 wird zum Beispiel in den Aduino-Boards Nano, Uno oder Ethernet verbaut und läuft mit einer Betriebsspannung von 5 Volt. Er verfügt über einen 1 KiB großen EEPROM-Speicher sowie 2 KiB SRAM. Im Flash-Speicher sind 32 KiB Platz. Neben 14 digitalen I/O-Pins verfügt der Mikrocontroller über 6 bis 8 analoge Eingänge und 4 bis 6 analoge Ausgänge.

Wofür kann der Arduino/Genuino eingesetzt werden?

Arduino ist als Plattform optimal geeignet, um eigenständige interaktive Steuerungen zu realisieren, die lediglich ein Programm als Grundlage haben und kein Betriebssystem erfordern. Das kann in Kunstinstallationen zum Einsatz kommen, doch auch darüber hinaus gibt es viele Einsatzzwecke.

Arduino-Projekte, die LEDs ansteuern, sind sehr beliebt bei Requisitenbauern und Cosplayern und die Schaltungen kommen in Kostümen und Zubehör sowie in dekorativen Elementen zum Einsatz.

     Der Arduino kann auch Motoren steuern. Um eine solche Schaltung zu realisieren, gibt es verschiedene Möglichkeiten, etwa über eine MOS-FET-Brücke, mit einem Schaltrelais oder mithilfe eines Transistors. Theoretisch können Motoren direkt über das Arduino-Board gesteuert werden, doch da das Board nur kleine Ströme im Output zulässt, können nur sehr kleine Motoren damit bewegt werden.

Ein weiterer Bereich, für den Arduino optimal geeignet ist, sind Projekte mit verschiedenen Sensoren. Von der Einparkhilfe bis zur Wetterstation sind zahlreiche Varianten denkbar und lassen sich mit wenig Aufwand umsetzen.

Unser Praxistipp

Der Arduino ist vielseitig, flexibel und schnell. Er kann im privaten wie im gewerblichen Bereich verwendet werden und hat mehr zu bieten, als LEDs zum Blinken zu bringen. Sie können ihn etwa im beruflichen Umfeld nutzen, um Prozesse zu überwachen. Messwerte wie Temperatur oder Luftfeuchtigkeit werden mithilfe des Arduino einfach an Datenbanken oder an mobile Endgeräte übertragen. Selbst die digitale Anzeige von Werten direkt am Arduino ist möglich. Dafür eignen sich Kits mit passenden LC-Displays.