headerimage
ROWE Technik-Blog

Mehrfacher LED-Blinker mit dem Arduino Uno

13.10.2016

Manche Erfolge werden nicht auf einer großen Bühne gefeiert, sondern finden still und leise im Hintergrund statt. Die Arduino-Serie ist so ein Kandidat. Während sich andere Techniken, wie Raspberry Pi oder smart home – Systeme, in den Vordergrund der Medien spielen, sind die heimlichen Stars der Steuerungs- und Regelungsszene wohl nur dem interessierten Bastler ein Begriff.
Viele Jahre waren Entwicklerboards mit Microcontrollern für kleine Steuerungsaufgaben sehr teuer. Die Entwicklerkomplettkits mit Hard- und Software sowie PC-Programmierschnittstelle kosteten schnell über 100,- EUR und erreichten nur einen kleinen Nutzerkreis. Zudem war die Initialisierung und Programmierung der Boards sehr umständlich und kompliziert. Die kleinen, preiswerten Lösungen hingegen boten schlicht zu wenig Möglichkeiten.
Ganz anders verhält es sich bei der Arduino-Serie. Preiswerte, fertige Bausteine inklusive Programmierschnittstelle per USB und open source Programmiersoftware sind bei zahlreichen Anbietern verfügbar. Status-LED´s, Portsteckleisten, Spannungsregler und Netzteilbuchse sind serienmäßig integriert und lassen sofort erste Funktionstests zu. Damit sind kleine Programmiererfolge schnell gegeben. In Verbindung mit einem Experimentiersteckboard lassen sich in kürzester Zeit Versuchsaufbauten realisieren. Die in JAVA programmierte Software-Entwicklungsumgebung ermöglich nach kurzer Eingewöhnungsphase das Erstellen von C-ähnlichen Programmen, die sich gliedern in

  • Konstanten- und Variablendeklaration,
  • Initialprogrammblock und
  • Hauptprogammblock (Endlosschleife)

Der Anwender hat die Wahl zwischen 4 verschiedenen Arduino-Boards:

Arduino Uno
16 MHZ, 8 BIT, 14 DIGITAL I/O

Arduino ATtiny
1 MHz, 8 bit, 6 Digital I/O

Arduino Mega
16 MHz, 8 bit, 54 Digital I/O

Arduino Due
84 MHz, 32 bit, 54 Digital I/O

Für die ersten Experimente eignet sich das Arduino Uno Board optimal, es ist bestückt mit dem Microcontroller ATmega328 (Flash 32 KB, RAM 2 KB, EEPROM 1 KB). Durch sein gutes Preis-/Leistungsverhältnis kostet es im Versand lediglich ca. 22,- EUR. Mehr oder weniger kompatible Nachbauten des Boards sind sogar bereits ab 11,- EUR zu erstehen. Kombiniert mit der kostenlos verfügbaren Programmiersoftware „ARDUINO 1.6.11“ (oder neuere Version) steht den ersten Schritten zum Testen nichts mehr entgegen.

Erhältlich ist die Arduino Software auf der Internetseite http://arduino.cc/en (externer Link). Ein kleiner Wehrmutstropfen ist, dass die Seite in Englisch verfasst ist. Bereits mit diesem winzigen Fertigbaustein lassen sich zahlreiche Experimente aus dem Themenfeld Überwachen, Steuern und Regeln durchführen, wie zum Beispiel:

  • Alarmanlage mit Magnetschalter am Fenster
  • Treppenlichtverzögerung nach Tastendruck
  • Schrittmotorensteuerung

Das lässt den Arduino Uno aus gutem Grund so erfolgreich sein.

Programmierung Mehrfachen LED-Blinkers

Bereits mit der Arduino-Entwicklungsumgebung wird ein kleines Beispielprogramm für einen LED-Blinker mitgeliefert. Allerdings arbeitet dieses Programm der Einfachheit halber mit Delay-Befehlen und ist damit für eine individuelle Impuls- und Pausenzeit je Port nicht geeignet. Deshalb wurde von mir ein neues Programm erstellt, das in der Testfassung für 3 LED´s bzw. Ports ausgeführt wurde. Es lässt sich aber problemlos durch simples Kopieren von Programmblöcken und Codeanpassung auf max. 14 Pins ausweiten.

Da für meinen Anwendungsfall weiße LED´s zum Einsatz kommen sollen, muss unbedingt die maximale Belastung der Ausgangsports sowie die Gesamtbelastung des Boards beachtet werden. Weiße LED´s sind leider nicht als Low Current – Ausführung zu beziehen, die einen deutlich reduzierten Betriebsstrom aufweisen. Für eine Standard-LED ist ein typischer Betriebsstrom von 20 mA je Port erforderlich. Diesen Strombedarf kann das Arduino Uno zwar je Ausgang (bis zu 40 mA) decken, jedoch verkraftet das Board in der Summe aller Ausgänge lediglich 200 mA. Die maximale Strombelastung ist damit zu gering, wenn bis zu 14 Ausgänge mit je 20 mA betrieben werden sollen. Kommen folglich keine Low Current – LED´s zum Einsatz (ca. 2 bis 4 mA), ist je Ausgangsport ein Transistor als Pufferelement einzusetzen (z. B. Typ BC 547), um das Board vor Überlastung zu schützen. Der gezeigte Testaufbau mit drei LED´s durfte natürlich noch ohne Transistoren durchgeführt werden.

Download: Listing Mehrfacher LED-Blinker

 

 

Kommentare: 0

Keine Kommentare vorhanden!

Neuen Kommentar verfassen:

Bitte füllen Sie mit * markierte Felder korrekt aus. JavaScript und Cookies müssen aktiviert sein.
Name: (Pflichtfeld)*
email: (Pflichtfeld, wird nicht veröffentlicht)*
Homepage:
Bild hochladen:
jpg - jpeg - gif - png   (max. 10 MByte)
Ihr Kommentar: *
(Das Bild wird erst beim speichern links oben eingefügt)
 
Bitte tragen Sie den Spamschutz Code ein:*
Captcha
Powered by CMSimpleBlog