Fridolin
Inhalt
Typ, Ausstattung, Fähigkeiten, kurze Beschreibung
Fridolin ist ein von Herrn Jürgen Edel an der Hochschule Kaiserslautern am Campus Pirmasens entworfener Roboter. Er wird mit Hilfe eines Arduinos programmiert und hat einen Preis von 90€.
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.
- Motorregler
- Spannungsüberwachung Akku
- Anschluss Signalleitungen
- Anschluss Versorgungsspannung Sensoren
- Dipschalter
- Arduino Nano
Ein Arduino ist ein aus Hard- und Software bestehendes interaktives, physisches System. Die Software ist eine Open Source („offene Quelle“) Software deren Quelltext öffentlich von Dritten benutzt werden darf. Die Hardware – in unserem Fall der “Arduino Nano“ – ist ein Ein/Ausgabeboard mit einem Mikrocontroller (MCU). Die Arduino eigene integrierte Entwicklungsumgebung (IDE) ist eine Java Anwendung, die für Windows, Mac und Linux kostenlos zur Verfügung steht. Der Arduino kann in C, C++ und Assembler programmiert werden. Die Komponenten des Arduino Nano, sowie die Pin-Belegung kann im Fridolin Handbuch unter 8.1 und 8.2 eingesehen werden. - 5 Volt Netzteil
Step Down Modul LM2596 - LCD Display
Display Modul 1602 HD44780
Zwei Zeilen, 16 Zeichen - Ladebuchse
- Hauptschalter
- Anzeige Akkuspannung
- Ultraschall Sensor
Ultraschallmodul HC-SR04 Reichweite 2 bis 300cm - IR Abstandssensor
3 Infrarot Sensoren-Sharp 2Y0A41 Reichweite 3 bis 30cm - Tastschalter
- IR Bodensensoren
3 Infrarot Sensoren-Arduino Lines Tracker Modul TCRT 5000 - Akkupack 9,6 Volt
8 Mignonzellen 1,2 Volt 2700mA - Servomotor
Micro- Servo SG90 - Antriebsmotoren
2 Motoren:
Gleichspannung 3 bis 12 Volt
Laststrom max. 300mA
Weitere Informationen befinden sich im Fridolin Handbuch, so wie im erweiterten Handbuch.
Die oberen Bilder unter liegen dem © 2017 Jürgen Edel / Hochschule Kaiserslautern Campus Pirmasens.
Programmierung und IDE
Die Arduino-IDE bietet eine Symbolleiste, über die sich die wichtigsten Funktionen schnell und einfach anwählen lassen.
Die grundlegende Programmstruktur setzt sich aus zwei Methodenblöcken zusammen.
void setup() { … }
Wird nach dem Einschalten oder Reset des Mikrocontrollers einmalig aufgerufen und dient dazu, dass Verhalten von Pins zu konfigurieren (pinMode), Variablen zu deklarieren und die serielle Kommunikation zu starten.
void loop() { … }
Wird endlos durchlaufen und ermöglicht dem Mikrocontroller somit aktiv auf Änderungen zu reagieren.
Die Arduino-IDE bringt bereits jede Menge Beispielprogramme mit. Diese sind über das Menü Datei → Beispiele zu finden
Sample Code: Hello World Programm
/*
Geschrieben und getestet für einen Arduino UNO + HD44780 Display mit TWI Controller I2C Anschlüsse am Arduino: SDA -> A4 SCL -> A5 */ #include <Wire.h> #include <LCD.h> #include <LiquidCrystal_I2C.h> #define I2C_ADDR 0x27 // Adresse des Displays #define BACKLIGHT_PIN 3 #define En_pin 2 #define Rw_pin 1 #define Rs_pin 0 #define D4_pin 4 #define D5_pin 5 #define D6_pin 6 #define D7_pin 7 int n = 1; LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin); void setup() { lcd.begin (16,2); // Zeichen, Zeilen // Beleuchtung Anschalten lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE); lcd.setBacklight(HIGH); lcd.home (); lcd.print(„Roboter-Bausatz“); // Auszugebender Text } void loop() { lcd.setCursor (0,1); // Zum Anfang der zweiten Zeile Springen lcd.print(n++,DEC); // Zählt die Sekunden seit dem letzten Neustart delay(1000); } |
B.O.T Challenge
Line Follower Algorithmus – Flussdiagramm
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.
Beispielcode Fridolin
Hier kannst du Beispielcode für den Fridolin downloaden. (Dieser Code ist unter der Creative Commons Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz lizenziert.)
Hier findest du Programme, Bibliotheken und Treiber für den Fridolin (von Jürgen Edel).
Super Tolle Fridolin Utilities – STFU
Die Abstraktionsschicht „Super Tolle Fridolin Utilities“ (STFU) vereinfacht den Umgang mit dem Fridolin. All Bestandteile des Fridolin können mit Hilfe von STFU ohne weitere Kenntnisse über die Hardware angesteuert werden. In der beiliegenden Dokumentation findet man Informationen über alle Klassen und Methoden, die STFU anbietet. Zusätzlich gibt es auch Code-Beispiele, die in der Arduino-IDE geöffnet werden können. STFU wurde im Rahmen des Faches Projektmanagement des Studiengangs Angewandte Informatik im Sommersemester 2019 vom Team “Die Bitschubser” entwickelt.
Hier kannst du STFU herunterladen
Dokumentation und Tutorials
Allgemein
Arduino-IDE Installationsanleitung
In diesem Tutorial wird gezeigt, wie die Arduino-IDE und der benötigte Treiber installiert wird.
Arduino-IDE: Erste Schritte
In diesem Tutorial werden die Grundlagen der Arduino-IDE beschrieben. Außerdem wird erläutert, wie der Fridolin mit dem PC verbunden und Programme aufgespielt werden.
Anleitungen Fridolin
Anleitungen von Fridolin, erstellt von Jürgen Edel.
FAQ, Videos, Einsatz in Projekten, Foren und Support (allgemein)
- umfangreichen Überblick über die Welt der Arduino Programmierung https://www.arduino.cc/
- Getting Started https://www.arduino.cc/en/Guide/HomePage
- Tutorials https://www.arduino.cc/en/Tutorial/HomePage
- Befehlsreferenz https://www.arduino.cc/reference/en/
- void setup https://www.arduino.cc/en/Reference/Setup/
- void loop https://www.arduino.cc/en/Reference/Loop/
- Ausführliche Funktionsübersicht der Arduino-IDE (in Englisch) https://www.arduino.cc/en/Guide/Environment
- IDE Alternativen für die Arduino IDE https://www.heise.de/developer/artikel/Der-Weg-nach-Rom-oder-Alternativen-fuer-die-Arduino-IDE-3355203.html
Zusammenfassung: Vorteile für den Einsatz im AK Smart Machines
Fridolin ist ein von Herrn Jürgen Edel entwickelter kleiner Roboter, welcher mit Arduino-Board ausgestattet ist und sich darüber programmieren lässt.
- Arduino-Boards zeichnen sich gegenüber anderen Mikrocontrollern dadurch aus, dass sie neben dem Mikrocontroller noch weitere praktische Komponenten auf ihrer Platine beherbergen. Am wichtigsten ist dabei das Programmier-Interface.
- Damit kann der Code auf dem Mikrocontroller einfach über den USB-Anschluss eines anderen Computers verändert werden. Bei vielen älteren Mikrocontroller-Boards brauchten die Benutzer ein zusätzliches Gerät, um einen neuen Code aufspielen zu können. Anfänger können mit jedem handelsüblichen PC innerhalb von wenigen Minuten ihr erstes Programm auf den Arduino laden.
Nutzerfreundliche Entwicklungsumgebung für Einsteiger
- Die zweite, große Komponente für den häufigen Einsatz des Arduino ist die Entwicklungsumgebung, also die Software mit der man den Mikrocontroller programmiert. Diese Programme sind oft sehr groß, teuer, unübersichtlich und komplex, also sehr abschreckend für Einsteiger. Die Arduino-Entwicklungsumgebung ist das genaue Gegenteil: Die Software ist fast schon minimalistisch, verfügt über nur wenige Buttons und kann sofort verwendet werden.
- Wer anfängt einen Arduino zu programmieren, kann sich dank der Entwicklungsumgebung sofort auf den Code konzentrieren und muss sich nicht mit Einstellungen und Konfigurationen aufhalten. Inzwischen können Arduino-Boards sogar direkt im Browser programmiert werden, ohne dass eine Entwicklungsumgebung installiert werden muss.
Arduino ist sehr verbreitet im IT-Markt
- Durch das offene Lizenzmodell, die Vielseitigkeit und den geringen Preis hat sich Arduino heute zu einer wahren Macht im IT-Markt entwickelt. Die hohe Verbreitung sorgt dafür, dass es eine riesige Community um die Boards gibt. Es gibt Anleitungen, Tipps und Foren für wirklich jeden erdenklichen Einsatzbereich.