Projekt 17: Bluetooth-gesteuerter Panzer

(1) Beschreibung:

Im vorherigen Projekt haben wir die Grundlagen von Bluetooth kennengelernt. In dieser Lektion werden wir Bluetooth verwenden, um das Smart Car zu steuern. Da Bluetooth involviert ist, werden ein Sender und ein Empfänger benötigt. In diesem Projekt verwenden wir das Mobiltelefon als Sender (Master) und das Smart Car mit dem angeschlossenen HM-10 Bluetooth-Modul (Slave) als Empfänger.

Wir haben früher gelernt, dass das Senden eines Bits LEDs steuern kann. Das Prinzip der Steuerung dieses Roboter-Autos ist dasselbe.

Um den intelligenten Panzerroboter besser steuern zu können, haben wir speziell eine APP entwickelt. In dieser Lektion lesen wir alle Tastenwerte dieser APP durch Code aus und stellen anschließend die exklusive APP unseres Panzerroboters vor.

(2) Tastenfunktionen der APP:

Die folgende Tabelle zeigt die Funktionen der entsprechenden Tasten:

Tasten

Funktionen

HM-10 Bluetooth-Modul koppeln und verbinden; erneut klicken zum Trennen

Roboter zur Steuerung auswählen

Roboterbewegungen mit Tasten steuern

Roboterbewegungen mit Joystick steuern

Roboterbewegungen durch Neigung steuern

Sendet “F” beim Drücken und “S” beim Loslassen

Das Auto fährt vorwärts, wenn gedrückt, und stoppt beim Loslassen

Sendet “L” beim Drücken und “S” beim Loslassen

Das Auto dreht links, wenn gedrückt, und stoppt beim Loslassen

Sendet “R” beim Drücken und “S” beim Loslassen

Das Auto dreht rechts, wenn gedrückt, und stoppt beim Loslassen

Sendet “B” beim Drücken und “S” beim Loslassen

Das Auto fährt rückwärts, wenn gedrückt, und stoppt beim Loslassen

Sendet “u”+Zahl+“#” beim Ziehen

Ziehen zum Ändern der Geschwindigkeit des linken Motors

Sendet “v”+Zahl+“#” beim Ziehen

Ziehen zum Ändern der Geschwindigkeit des rechten Motors

Auswählen zum Öffnen der Funktionsseite

Sendet “G” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Hindernisumfahrmodus aktiviert und beim erneuten Drücken deaktiviert

Sendet “h” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Folgemodus aktiviert und beim erneuten Drücken deaktiviert

Sendet “e” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Linienverfolgungsmodus aktiviert und beim erneuten Drücken deaktiviert

Sendet “f” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Modus „Bewegung im begrenzten Raum“ aktiviert und beim erneuten Drücken deaktiviert

Sendet “i” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Lichtfolgemodus aktiviert und beim erneuten Drücken deaktiviert

Sendet “j” beim Drücken und “S” beim erneuten Drücken

Beim Drücken wird der Feuerlöschmodus aktiviert und beim erneuten Drücken deaktiviert

Auswählen zum Öffnen des Gesichtsausdrucks-Anzeigemodus

Sendet “k” beim Drücken und “z” beim erneuten Drücken

Zeigt ein lächelndes Muster beim Klicken und löscht den Ausdruck beim erneuten Klicken

Sendet “l” beim Drücken und “z” beim erneuten Drücken

Zeigt ein angewidertes Muster beim Klicken und löscht den Ausdruck beim erneuten Klicken

Sendet “m” beim Drücken und “z” beim erneuten Drücken

Zeigt ein fröhliches Gesicht beim Klicken und löscht den Ausdruck beim erneuten Klicken

Sendet “n” beim Drücken und “z” beim erneuten Drücken

Zeigt ein trauriges Muster beim Klicken und löscht den Ausdruck beim erneuten Klicken

Sendet “o” beim Drücken und “z” beim erneuten Drücken

Zeigt ein verachtendes Muster beim Klicken und löscht den Ausdruck beim erneuten Klicken

Sendet “p” beim Drücken und “z” beim erneuten Drücken

Zeigt ein herzförmiges Muster beim Klicken und löscht den Ausdruck beim erneuten Klicken

Auswählen zum Öffnen der benutzerdefinierten Funktionsoberfläche; es gibt sechs Tasten 1, 2, 3, 4, 5, 6; mit diesen Tasten können Sie selbst einige Funktionen erweitern

Klicken zum Senden von “w”

Klicken zum Anzeigen des Analogwerts des linken Fotowiderstands

Klicken zum Senden von “y”

Klicken zum Anzeigen des Analogwerts des rechten Fotowiderstands

Klicken zum Senden von “x”

Klicken zum Anzeigen der vom Ultraschallsensor gemessenen Entfernung (Einheit: cm)

Klicken zum Senden von “c”
Erneut klicken zum Senden von “d”

Drücken zum Einschalten des Lüfters und erneut drücken zum Ausschalten

(3) Ablaufdiagramm:

(4) Anschlussdiagramm:

Hinweis:

GND, VCC, SDA und SCL des 8x16 LED-Panels sind mit G(GND), V(5V), A4 und A5 der Erweiterungsplatine verbunden. STATE und BRK müssen nicht angeschlossen werden. Das BT-Modul wird in die Erweiterungsplatine eingesteckt.

(5) Testcode:

Sie können Blöcke ziehen, um Ihren Code zu bearbeiten

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

Vollständiger Testcode

(Hinweis: Verbinden Sie das Bluetooth-Modul nicht, bevor Sie den Code hochladen, da das Hochladen ebenfalls die serielle Kommunikation verwendet und es zu Konflikten mit der seriellen Bluetooth-Kommunikation kommen kann, was dazu führen kann, dass der Upload fehlschlägt.)

(6) Testergebnis:

Nach dem Hochladen des Codes verbinden Sie den Roboter mit dem Bluetooth-Modul und koppeln Sie die Bluetooth-APP. Schalten Sie den Netzschalter des Motorantriebsschields ein. Stellen Sie den Roboter auf den Boden. Sie können die Tasten der Bluetooth-APP verwenden, um den Roboter zu steuern.

  1. Die Pfeile oben, unten, links und rechts steuern den Roboter, um ihn vorwärts, rückwärts, nach links und nach rechts zu bewegen.

  1. Klicken Sie auf die Joystick-Taste und ziehen Sie die Richtung des schwarzen Punktes im weißen Kreis, um die Bewegungsrichtung des Roboters zu steuern.

  1. Klicken Sie auf die Neigungstaste und neigen Sie das Telefon in die vorwärts, rückwärts, links und rechts Richtungen, und der Roboter bewegt sich in die Richtung, in die das Telefon geneigt wird.