Buchempfehlung:
Roboter-Autos mit dem Raspberry Pi

Roboter Autos mit dem Raspberry Pi - 2019

Toll wäre es ja noch wenn wir das Roboter Auto mit dem Smartphone fernsteuern könnten. Genau das ist dank dem verbauten WIFI Modul des ESP8266 NodeMCU möglich. Der kleine Rechner verfügt also nicht nur über verschiedene GPIO Anschlüsse sondern kann sich auch an ein bestehendes WIFI anmelden bzw. selber einen Accesspoint öffnen. Für das jetzt folgende Beispiel soll sich das Roboter Auto mit seinem ESP8266 am lokalen W-LAN anmelden und eine minimale Web-Oberfläche anzeigen wenn man die IP Adresse des Roboter Autos im Browser öffnet.

Das folgende Bild zeigt mein kleines Roboter Auto etwas verschönert von meiner Tochter.

ESP8266 NodeMCU robot car wifi kids

ESP8266 NodeMCU robot car wifi kids

Zunächst einmal muss wieder ein Programm geschrieben werden das die WIFI Anmeldung beinhaltet und die Web-Oberfläche für die Steuerung ausliefert.

WIFI und Web GUI Funktion entwickeln

Für den ESP8266 NodeMCU gibt es eine Vielzahl an Bibliotheken die wir direkt verwenden können. So ist es recht einfach das kleine Board in ein bestehendes WIFI einzubinden und einen Web-Server zu starten für die Anzeige der Web-Oberfläche. Es müssen lediglich die beiden folgenden Bibliotheken eingebunden und konfiguriert werden um diese Funktionen abzubilden.

#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

Anschließend muss noch die WIFI Konfiguration vorgenommen werden. Das geschieht auch wieder mit zwei Zeilen Programmcode. Die eine Zeile beinhaltet den Namen (SSID) des lokalen WIFI Netzwerkes und die zweite Zeile das dazugehörige Passwort.

// Set the WIFI SSID and password
// SSID of your WIFI
const char* ssid = "XXXXXXXXX";
//password of your WIFI
const char* password = "XXXXXXXX";

In der Funktion void setup() des Programmes wird dann das WIFI des ESP8266 NodeMCU gestartet und der Web-Server initialisiert.

Anschließend erfolgt die Programmierung der Steuerung des Roboter Autos wie wir dies schon kennengelernt haben über den PCA9685 Servo Kontroller und der L298N H-Brücke.

Das fertige Programm zeigt dann eine kleine Web-GUI an die wie im folgenden Bild gezeigt aussieht.

ESP8266 NodeMCU robot car wifi control

ESP8266 NodeMCU robot car wifi control

Das fertige Programm kann über den folgenden Downloadlink herunter geladen werden.

Download: ESP8266 NodeMCU WIFI robo car program

Das Programm wie gewohnt über die Arduino IDE auf den ESP8266 aufspielen. Alle notwendigen Bibliotheken für das WIFI und den Web-Server sollten bereits vorhanden sein.

Hinweis: Mit ist aufgefallen, dass der ESP8266 mit aktivem WIFI etwas mehr Energie benötigt. So hatte ich vermehrt Abstürze mit meiner bereits in die Jahre gekommenen Power-Bank wenn die Motoren sehr viel Energie z. B. bei einer Drehung auf einem Teppich verbraucht haben. Mit einer neuen Power-Bank gleicher Größe hatte ich die Probleme nicht mehr.

Zusammenfassung

Wenn das Programm auf das Entwicklerboard ESP8266 NodeMCU aufgespielt wurde meldet sich das Roboter Auto am lokalen WIFI an und startet die Web-Oberfläche. Ab jetzt ist es möglich das Roboter Auto von z. B. einem Smartphone aus fernzusteuern. Durch die fünf Buttons können Funktionen im Programm ausgeführt werden wie z. B. Beschleunigen oder Drehen. Ab jetzt können natürlich weitere Funktionen umgesetzt werden über die noch nicht belegten Buttons wie z. B. eine “Robo-Dance” Routine die das Roboter Auto wild drehen lässt. Aber es könnte auch mit einem Druck auf eines der noch frei zu belegenden Buttons in den autonomen Modus gewechselt werden der das Roboter Auto zusammen mit dem Ultraschall Sensor steuert.


Artikel Übersicht ESP8266 NodeMCU Roboter Auto:

Roboter bauen mit dem ESP8266 Entwicklungsboard – Einleitung
Roboter bauen mit dem ESP8266 Entwicklungsboard – Stromversorgung
Roboter bauen mit dem ESP8266 Entwicklungsboard – Bauteile
Roboter bauen mit dem ESP8266 Entwicklungsboard – Chassis
Roboter bauen mit dem ESP8266 Entwicklungsboard – Verkabelung Teil 1
Roboter bauen mit dem ESP8266 Entwicklungsboard – Verkabelung Teil 2
Roboter bauen mit dem ESP8266 Entwicklungsboard – Arduino Entwicklungsumgebung einrichten
Roboter bauen mit dem ESP8266 Entwicklungsboard – Ultraschall Sensor und Motorensteuerung
Roboter bauen mit dem ESP8266 Entwicklungsboard – WIFI Fernsteuerung
Roboter bauen mit dem ESP8266 Entwicklungsboard – Servo Motor Steuerung
Roboter bauen mit dem ESP8266 Entwicklungsboard – OLED Display
Roboter bauen mit dem ESP8266 Entwicklungsboard – Magnetometer
Roboter bauen mit dem ESP8266 Entwicklungsboard – GPS Empfänger Einführung

Artikel Ausblick:

Roboter bauen mit dem ESP8266 Entwicklungsboard – Gyroskop
Roboter bauen mit dem ESP8266 Entwicklungsboard – GPS Wegpunkte
Roboter bauen mit dem ESP8266 Entwicklungsboard – Solarzelle
(Visited 118 times, 1 visits today)