Arduino Leonardo und Cool Term im Business

September 12, 2023 Off By Anna Katherina Ibeling

Arduino und Board-Lösungen wie Arduino Leonardo sind heute als Open-Source-Umgebung für IT-Projekte sehr beliebt. Oder, etwas praktischer betrachtet: Schon die Kosteneinsparungen durch Open-Source sprechen für sich. Ein paar grundsätzliche Informationen über das Arduino-Ökosystem haben wir bereits in einem früheren Artikel geteilt. Diesmal beleuchten wir drei Aspekte. Wofür nutzen professionelle Entwickler Arduino? Wie kann das Board Arduino Leonardo zum echten Gamechanger werden und warum arbeiten Entwickler gern zusätzlich mit Terminal-Apps wie Cool Term?

Arduino Leonardo: ein wichtiges Element des Arduino-Systems
Arduino Leonardo: ein wichtiges Element des Arduino-Systems

Es gibt zweifellos eine Fülle an Open-Source-Lösungen, aber Arduino zählt unter Entwicklern zu den beliebtesten Plattformen. Dies liegt unter anderem an dem breiten Spektrum an Tools und Ressourcen für interaktive IT-Projekte, Prototypen und Endgeräte. Arduinos vergleichsweise einfacher und intuitiver Aufbau macht die Plattform sowohl Programmieranfängern als auch Profis zugänglich. Die Boardlösung Arduino Leonardo ist hierbei ein wichtiges Mosaikteil im System. Aber eines nach dem anderen … Starten wir die Entdeckungsreise mit ein paar ausgewählten und beliebten Einsatzbereichen für Arduino.

Prototypen erstellen, Programmieren lernen und lehren

Arduino eignet sich sehr gut als Lernplattform im Bereich der Elektronik und Programmierung. Unter anderem, weil sich hier verschiedene elektronische Komponenten einfach in Schaltkreisen miteinander verbinden lassen (z.B. Motoren, Sensoren, LED). Die Allrounder-Plattform verwendet dabei eine vereinfachte Programmiersprache auf Basis von C/C++. Somit liegen die Hürden, als Anfänger in die Welt des Codes einzutauchen, niedrig.

Passgenaue Elektronikprojekte in vielen Branchen

Schon jetzt profitieren viele Unternehmen weltweit von Arduino, um auf sie zugeschnittene Elektroniklösungen zu erschaffen. Die Einsatzmöglichkeiten reichen hier von Wetterstationen und Smart-Home-Technologie über interaktive Kunstausstellungen bis hin zu Wearables.

Robotik und IoT (Internet of Things)

Unter anderem kommt Arduino häufig auch bei Robotikprojekten zum Einsatz. Sie können so automatisch Motoren, Steuerungen und andere Komponenten einstellen, um funktionstüchtige Roboter zu kreieren. Üblicherweise lassen sich alle neueren Arduino-Boards mit dem Internet verbinden und so in IoT– Strukturen integrieren. Weitere Funktionsbeispiele sind robotische Helferi in Haus und Garten, Überwachungs- und Sicherheitssysteme.

Arduino ist die ideale Plattform, um Programmierkenntnisse zu teilen und zu erweitern
Arduino ist die ideale Plattform, um Programmierkenntnisse zu teilen und zu erweitern

Sensorintegration, Datensammlung und -analyse

Arduino unterstützt eine hohe Bandbreite von Sensoren, z.B. für Temperatur, Feuchtigkeit, Bewegung und Licht. Von all diesen Sensoren können Sie Daten zusammentragen und sie für viele Anwendungen einsetzen. Somit können Sie Systeme zur Datenbündelung erstellen, die ihre Informationen aus der Umgebung beziehen, sie verarbeiten und analysieren. Übrigens sind Arduino-Sensoren auch eine zentrale Komponente in der Navigation des Ardumower-Mähroboters.

Interaktive Ausstellungen und Shows

Open-Source-Entwicklungen nützen nicht nur Unternehmen in der IT und Industrie. Im Gegenteil: Auch viele Künstler und Akteure in der Unterhaltungsbranche verlassen sich heutzutage auf Arduino-Projekte für interaktive Installationen, Skulpturen, Shows, Spiele und Ausstellungen. Diese Art von Technologie erlaubt es ihnen, ihre Kunstwerke und Produkte lebendiger zu gestalten.

Wearables und Smart-Home-Tools

Dank ihrer kompakten Größe und ihrem geringen Stromverbrauch eignen sich Arduino-Geräte für Wearables wie „Smart Clothing“, Fitnesstrackers und Zubehör mit Bewegungssteuerung. Sie können Arduino weiterhin problemlos für die Fernsteuerung von Licht, Bewegun sowie technischen Geräten und für Smart-Home-Lösungen verwenden.

Boards wie der Arduino Leonardo lassen sich auch Wearbales einbauen
Boards wie der Arduino Leonardo lassen sich auch Wearables einbauen

Prototypen in der Produktentwicklung

In vielen Unternehmen kommt Arduino für Erstentwürfe ihrer elektronischen Produkte zum Einsatz. So können sie Konzepte und Funktionen ungezwungen testen, bevor der endgültige und oft kostspielige Entwicklungsprozess wirklich in Gang kommt. Nebenbei bemerkt bietet es sich für manche Produkte und Projekte natürlich auch an, bei Open-Source-Lösungen zu bleiben.

Wissen teilen und sich unter Entwicklern vernetzen

Arduino ist ein auch in der Aus-und Weiterbildung eine vorteilhafte Plattform -vor allem den Bereichen Elektronik und Programmierung. Das liegt unter anderem an dem einfachen und vielfältigen Zugang, den es Anfängern sowie IT-Erfahrenen verschafft. Aber auch an dem weitreichenden Support, vielen Beispielprojekten als Vorbild und hilfreichen Tutorials.

„Im Arduino-Universum trifft sich die IT-Welt!“ Denn die vielseitige Allrounder-Plattform bietet einen niederschwelligen Zugang sowohl für Schüler, Studenten und Lehrende als auch für Digitalkünstler und professionelle Entwickler aller Branchen.

Arduino Leonardo in Aktion

Arduino Leonardo ist eines der neueren Arduino-Boards mit eingebautem Atmega32U4-Mikrocontroller. Seine Besonderheit besteht in der „standardmäßigen“ USB-Kommunikation. Dies bedeutet konkret, dass das Board wie eine USB-HID (Human Interface Device) funktioniert, ergo eine Tastatur oder Maus simuliert.Weiterhin dient es dazu, einen USB-Port für die serielle Kommunikation mit einem Computer anzubieten.

Arduino Leonardo- hilfreich bei kleinen und großen IT-Projekten
Arduino Leonardo- hilfreich bei kleinen und großen IT-Projekten

Arduino Leonardo als Schnittstelle für serielle Kommunikation

Wie manch andere Arduino-Boards verfügt der Arduino Leonardo über digitale Pins, die eine serielle Kommunikation ermöglichen. Außerdem enthält es einen Converter, der die serielle Kommunikation über USB-Ports „übersetzt“ und möglich macht.

Serielle Überwachung mit Arduino Leonardo

Die Arduino IDE (Integrated Development Environment) bietet unter anderem einen integrierten Serial Monitor. Ein Beispiel:Wenn Sie auf Arduino Leonardo einen Sketch mit serieller Kommunikation hochladen, lässt sich der Serial Monitor in der IDE öffnen. Dementsprechend wird es einfacher, Daten auf dem Arduino Board via USB zu versenden und zu empfangen.

Arduino Leonardo als Terminal

Prinzipiell kann der Arduino Leonardo Daten von Sensoren, Buttons, Switches oder anderen Eingaben auslesen. Weiterhin können Sie diese Daten über die USB-Verbindung an einen Computer senden. Seitens des Computers bietet es sich an, ein Terminal (z.B. PuTTY, Arduino IDE Serial Monitor), um Daten von Ihrem Arduino zu sichten. Dieses Vorgehen vereinfacht die Fehlerbehebung, das Auslesen von Sensoren und das Erleben Ihres Arduino-Projekts in Echtzeit.

Keyboard und Maus mit Arduino Leonardo simulieren

Arduino Leonardo kann als USB-HID-Endgerät verwendet werden.Dementsprechend lassen sich Tools erstellen, die eine Maus oder Tastatur ersetzen. Beispielsweise können Sie diese App dahingehend programmieren, dass sie bestimmte Tastaturkürzel und Mausklicks auf dem Computer automatisiert durchführt. So funktioniert beispielsweise unsere App für den USB-Pushbutton und die USB-Pushbox.

Einstecken, verbinden, Knopf drücken: Boards wie der Arduino Leonardo finden auch in unseren USB-Pushbuttons Verwendung
Einstecken, verbinden, Knopf drücken: Boards wie der Arduino Leonardo finden auch in unseren USB-Pushbuttons Verwendung

Etwas allgemeiner gesprochen entsprechen die Möglichkeiten des Arduino Leonardo, eine reibungslose serielle Kommunikation über USB zu generieren, denen einer Terminal-App wie Cool Term… doch dazu später mehr!

Technische Eigenschaften und Funktionen von Arduino Leonardo

Aber was hat der Arduino Leonardo eigentlich „unter der Haube“, das ihn so vielseitig einsetzbar macht? Allgemein handelt es sich um einen Mikrocontroller mit Typenbezeichnung ATmega32U4. Der Gamechancer hierbei ist dabei die Möglichkeit des Boards, HID zu simulieren. Diese Eigenschaft macht den Arduino Leonardo zu einem perfekten Partner für Projekte, die automatisierte Mensch-Computer-Kommunikation beinhalten.

Arduino Leonardo als Mikrocontroller einsetzen

Werfen wir also einen Blick hinter die Kulissen. Das Herz des Arduino Leonardo ist zweifelsohne der Mikrocontroller. Dieser Chip beherbergt eine CPU, einen Speicher (Flash und RAM), digitale und analoge I/O-Pins, timer und verschiedene Verknüpfungen. De facto stellt der Mikrocontroller das „Gehirn“ des Boards dar und führt den Code auf dem Board aus.

Den Arduino Leonardo mit einem USB-Port verbinden

Eine sehr hilfreiche Eigenschaft des Arduino Leonardo ist, dass er für die Verbindung per USB-Port designt wurde. Der Leonardo verfügt nämlich über einen integrierten USB-Chip für USB-Kommunikation, was wiederum die USB-Kommunikation mit einem computer ohne zusätzliche Treiber ermöglicht.

Beim Arduino Leonardo von der USB-HID-Emulation profitieren

Wie bereits erwähnt hat der Leonardo die Möglichkeit, HID-Geräte auf USB-Basis zu simulieren. Dazu zählen neben der klassischen Tastatur- und Mauseingabe auch Befehle über Touchscreens und Gamepads. Tastenkürzel, Mausbewegungen und ausgewählte Buttons werden so „per Knopfdruck“ auf dem angeschlossenen Gerät ausgeführt. Übrigens: Dieses besondere Feature des Arduino Leonardo findet sich auch in unseren USB-Pushbuttons und USB-Pushboxen wieder.

Einfache Routinen per Knopfdruck- mit einer USB-Pushbox und Arduino Leonardo
Einfache Routinen per Knopfdruck- mit einer USB-Pushbox und Arduino Leonardo

Ihren „ganz persönlichen“ Arduino Leonardo programmieren

Für gewöhnlich programmiert man den Arduino Leonardo mithilfe der Arduino IDE (Integrated Development Environment). Hierfür stellt die IDE eine vereinfachte Entwicklungsumgebung und eine Programmiersprache ähnlich C/C++ zur Verfügung. Sobald Sie Ihren Code geschrieben und ihn auf das Board hochgeladen haben, legt ATmega32U4 alle Daten im Flashspeicher ab.

Arduino Leonardo als serielle Verbindung einsetzen

Ihr Leonardo kann weiterhin, wie bereits erwähnt, als serielles Endgerät mit dem Computer kommunizieren. Technisch betrachtet liegt das am eingebauten UART (Universal Asynchronous Receiver-Transmitter), welcher probremlos serielle Daten sendet und empfängt. Einen Nutzen hat die UART-Variante vor allem für die Fehlerbehebung, den Datenaustausch und die Kommunikation mit externen Geräten.

Digitale und analoge I/O-Pins beim Arduino Leonardo

Auf dem Leonardo-Board befindet sich eine Vielzahl an digitalen und analogen Pins. Diese können Sie mit Sensoren, Aktoren und weiteren Komponenten verbinden. Generell lassen sich alle Pins sowohl als Input- als auch als Output-Schnittstellen festlegen und sich mit der „realen Welt“ vernetzen.

Pins und Sensoren - jedes Board ist ein Kunstwerk für sich
Pins und Sensoren - jedes Board ist ein Kunstwerk für sich

Viele Bibliotheken und eine weltweite Arduino-Community

Sie suchen einen bestimmten Entwurf oder ein Programmierbeispiel? Glücklicherweise verfügt das Arduino-System über eine Vielzahl an Bibliotheken und wird von einer aktiven Community gewartet. Dementsprechend ist auch für Sie sicher die Library dabei, die Ihr Projekt vereinfacht. Weiterhin profitieren (angehende) Entwickler von einem breiten Angebot an Tutorials, Anleitungen und Foren für einen zuverlässigen Support.

Arduino Leonardo als Ausgangspunkt interaktiver Applikationen

Dass der Arduino Leonardo sich so gut mit HID-Geräten verbinden lässt, macht ihn zu einer großen Hilfe bei vielen Projekten. Typische Beispiele hierfür sind Simulationstools, MIDI-Steuerungen, Eingangsgeräte für interaktive Installationen sowie Spielekonsolen.

Typische Workflows mit Arduino Leonardo

Arduino Leonardo einzurichten erfordert in der Regel folgende Schritte:

  • Erstellen oder bearbeiten Sie Ihren Code in der Arduino IDE.
  • Verbinden Sie das Leonardo-Board über ein USB-Kabel mit Ihrem Computer.
  • Wählen Sie in der IDE Board und Port aus.
  • Stellen Sie den Code zusammen und laden Sie Ihn auf den Leonardo hoch.

Sobald die Code-Kompilation und der Upload beendet sind, führt Arduino Leonardo den Code aus und kommuniziert mit dem Computer und externen Geräten.

Die Programmierumgebung von Arduino - immer da, wo Sie sind!
Die Programmierumgebung von Arduino - immer da, wo Sie sind!

Cool Term und Arduino Leonardo – ein „cooles“ Team

Möchten Sie die Programmierung Ihres Arduino Leonardo oder anderer Boards noch weiter vereinfachen? Dann sollten Sie auf Computerseite über eine vielseitige Software für die serielle Kommunikation nachdenken. Ein gutes Beispiel hierfür ist Cool Term. Das Tool bietet ein nutzerfreundliches Interface, um serielle Verknüfungen zwischen dem Computer und anderen Geräten zu erstellen und zu verwalten. Hierzu gehören auch Arduino-Boards, Sensoren und GPS-Module. Üblicherweise verwenden Entwickler Cool Term vor allem dafür, die serielle Datenübertragung im Blick zu behalten und darin enthaltene Fehler zu beheben. Im Folgenden stellen wir einige wichtige Eigenschaften dieses Terminals vor.

Serielle Kommunikation mit Cool Term

Cool Term erlaubt es, serielle Verknüpfungen nach ausgewählte Parametern aufzustellen. Typische Beispiele hierfür sind die Geschwindigkeit der Datenübertragung, Datenbits, Stopbits und Paritätseinstellungen. Dementsprechend flexibel verhält sich das Portal-Tool bei zahlreichen Deräten mit serieller Schnittstelle. Um mehr über die seriellen Funktionen und Nutzerszenarien vpn Cool Term herauszufinden, lohnt sich ein Blick in die Originaldokumentation.

Datenüberwachung und Logfiles

Mit Cool Term können Sie den Datenverkehr zwischen dem Computer und anderen Geräten „live“ nachverfolgen. Dieses Feature kommt vor allem dann zum Tragen, wenn Sie den Prozess der Datenübertragung genau nachvollziehen möchten und Fehler beheben müssen. Über die Log-Funktion lässt sich alles Relevante dokumentieren, speichern und erneut anwenden.

Anzeigeformate in Cool Term: von ASCII bis hexadezimal

Cool Term bietet unterschiedliche Anzeigeformate für Daten, zum Beispiel ASCII, hexadezimal, dezimal und binär. Auf diese Weise können Sie Ihre Daten einfacher visualisieren und interpretieren. Hierbei ist es auch möglich, zwischen einem Textmodus (von Menschen lesbar) und Hex-Modus (bei hexadezimalen RAW-Daten) zu wechseln.

Code lässt sich in vielen Formaten darstellen
Code lässt sich in vielen Formaten darstellen

Daten via Cool Term versenden und loggen

Über Cool Term können Sie Daten auch manuell zu einem ausgewählten Endgerät senden. Das ist vor allem dann sinnvoll, wenn ein ganz bestimmter Dateninput auf dem Zielgerät benötigt wird. Weiterhin lassen sich so übertragene Daten während einer seriellen Session in einem Textdokument abspeichern – zum Beispiel als Backup für spätere Analysen und Dokumentationen.

Das Interface-Design anpassen

Sie können problemlos das Anzeigedesign bei Cool Term personalisieren, zum Beispiel über die Auswahl von Schriften, Themes und Farbkombinationen. Dies kann unter anderem sinnvoll sein, um die Augen beim Arbeiten zu schonen, beispielsweise durch eine größere Schrift, die Anpassung an unterschiedliche Bildschirmgrößen und Helligkeitseinstellungen.

Daten in Textdokumenten sammeln

Wie bereits angedeutet, können Sie jederzeit alle Daten in Ihrer Terminalanzeige „einfangen“ und in einem Textdokument woanders abspeichern. Eine derartige Datenübersetzung bereichert die Dokumentation und Nachverfolgung serieller Kommunikationsschritte. Natürlich können Sie diese Logs mehrfach verwenden. Zum Beispiel, wenn Sie später etwas nachschauen wollen oder Fehler auftreten.

Egal, auf welchem Gerät Sie programmieren - Cool Term passt sich an!
Egal, auf welchem Gerät Sie programmieren - Cool Term passt sich an!

Simulation von Maus und Tastatur statt Klicken und Tippen

Das kostenlose Terminal-Tool bietet Funktionen für die Simulation von Tastatureingaben, Mausklicks und anderen Eingaben (z.B. Strings) an. Der Nutzen dahinter: weniger „Fleißarbeit“ durch Klicken und Tippen, die ohnehin fehleranfällig ist. Zumindest im Vergleich zu korrekt eingestellten, automatisierten Routinekommandos. In jedem Fall eignet sich diese Art der Simulation für Projekte unterschiedlichen Umfangs und Anwendungsbereichs.

Cool Term – eine Plattform für alle Betriebssysteme

Cool Term ist mit Windows, macOS und Linux nutzbar. Ein weiterer Pluspunkt: Das Tool ist kostenlos und mit genug Programmierkenntnissen können Nutzer es sogar entscheidend weiterentwickeln. Generell nutzen vor allem „Tüftler“, Ingenieure und Entwickler mit Kostenbewusstsein gern dieses Terminal. Im Speziellen kommt es aber bei Hardware- und Softwareprojekten zum Tragen, die sich auf serieller Kommunikation aufbauen. Denn Cool Term vereinfacht die serielle Organisation – egal ob mit einem Board wie den Arduino Leonardo, einem Raspberry Pi oder anderen Mikrocontrollern.