mBot mit PC per Python verbinden
Mittels der Arduino IDE wird auf den mBot ein C-Programm aufgespielt, welches die gewünschten Daten der Sensoren auf den PC überträgt.
Danach kann der mBot über das USB-Kabel mit einem beliebigen PC verbunden werden.
Dessen Programm scannt die COM-Ports des PCs und gibt diese aus.
Das Programm auf dem PC muss dann nur auf den entsprechenden COM-Port eingestellt werden.
- Sensordaten des mBot senden
- Sensordaten des mBot auf dem PC empfangen
Dein PC soll nun die Werte der Reflexionslichtschranken, des Helligkeitssensor und des Entfernungsmessers vom mBot per USB-Kabel einlesen, dann visualisieren und statistisch auswerten können.
Der COM-Port und die Baudrate sind den Gegebenheiten anzupassen.
Dieser entspricht dem in der Arduino-IDE verwendeten Port
bzw. wird vom Programm auf dem Arduino festgelegt.
Die Bibliothek "mrge_communication_pc.py" wird ist noch zu laden.
Passe auch hier die COM-Port und Baudrate an.
Importiere dieses Modul durchimport mrge_communication_pc
in der Kommandozeile deiner Python-IDE.
Lerne beide Programme kennen.
- Daten vom mBot in Echtzeit auf den PC grafisch darstellen
Das folgende Pythonprogramm nutzt die beliebte Datenvisualisierungsbibliothek 'MatPlotLib', um die vom mBot gemessenen Helligkeitswerte in Echtzeit in einem Diagramm darzustellen.
'MatPlotLib' ist mittelspip install matplotlib
zu installieren.Der mCore auf dem mBot muss ein anderes Programm aufgespielt bekommen.
Bereite den mBot entsprechend mBot per ESP-Now fernsteuern vor.
- Befehle vom PC per Python an den mBot senden
Der mCore auf dem mBot benötigt das Programm entsprechend mBot per ESP-Now fernsteuern
- Daten und Befehle vom empfangen und senden
Wir bringen jetzt die beiden vorherigen Programme zusammen.
Hier zeigt sich das Problem der blockierende Eingabe durch die input-Anweisung.
Nun gilt es eine der folgenden nichtblockierenden Lösungen in unser Programm einzubauen.
PC-nichtblockierende-Eingabe-1.py.txt, PC-nichtblockierende-Eingabe-2.py.txt, PC-nichtblockierende-Eingabe-3.py.txt
Meine aktuelle Lösung :
- Pygame auf dem PC mit dem mBot verbinden
PyGame-mBot-01.py kann eine RGB-Led auf dem mCore ein- bzw- ausschalten und stellt die gemessene Helligkeit als Balkendiagramm dar.