Nach Umrüstung
des Roboters von der fischertechnik-Basis, auf eine selbst
entworfene und konstruierte Basis (siehe
Bild unten), die zudem kostengünstiger ist,
wird der Roboter derzeit zum Programmieren und Weiterentwickeln
genutzt.
Der Roboter kann vom Nutzer auf verschiedene Arten
programmiert/gesteuert werden:
SZENARIO #1 Der Programmcode (=
Bewegungsablauf) des Roboters wird vom Nutzer via Cody++
Entwicklungsumgebung, welche sich direkt auf dem ESP32 befindet,
erstellt. Der Code wird als XML-Datei über eine bestehende
Netzwerk-Verbindung (WLAN) zum ESP32 vom Computer direkt auf den
Roboter geladen und kann von dort aus gesteuert (Play/Pause/Stop)
und geändert werden.
SZENARIO #2 Der in der Arduino IDE erstellte Programmcode, wird
zuerst via einer seriellen Verbindung (USB) auf den ESP32 geflasht.
Danach können Änderungen bzw. Updates des Codes ohne physische
Verbindung (Over The Air)
geflasht werden. Dieses Vorgehen ist vergleichbar mit
Software-Updates von Smartphones, die über das Internet bzeogen
werden. Erkenntnisse und eine kurze Anleitung dazu stehen auf der Seite "Quellcode".
SZENARIO #3
Der Roboter kann auch ohne konkrete Programmierung eines Programmablaufs
gesteuert werden. Dazu wird ein Smartphone benötigt, das eine
Bluetooth-Verbindung mit dem ESP herstellt. So kann sich der
Roboter durch das Bewegen (Kippen/Neigen) des Smartphones bewegen.
Eine ausführliche Anleitung und die Entwicklungsprozesse werden von
unserer Partner-Gruppe eMalRob-Anpassung
dokumentiert.
SZENARIO #4 Die komplette Ansteuerung
der Motoren und Funktionen kann auch durch eine selbst entwickelte
Art und Weise geschehen. Diese Methode kann benutzt werden, um
schon vorhandene Programmierkenntnisse weiter zu vertiefen. Alle
Bibliotheken und PWM-Ansteuerungen der Motoren etc. müssen selbst
geschrieben und entwickelt werden. Hilfe gibt es mit den
verschiedenen Entwicklungsumgebungen der Studenten für den eMalRob
(EVAESP32, Cody++, usw.)
Grundlage des neuen selbstentwickelten eMalRob-FG bildet ein ESP32 mit folgenden Kenndaten:
- ESP-WROOM-32 Prozessor - Dual-Core Xtensa 32-bit LX6 MCU -
Micro USB-Anschluss - 44 kB ROM - 520 kB SRAM - 32 digitale
I/O Pins - UART, I²C, SPI, WLAN, CP2102 USB Schnittstelle -
A/D- und D/A-Wandler - Hall Sensor
Abb.: Aktueller Zusammenbau eines eMalRob-FG
|