Arrow Electronic Components Online

Arduino Bluetooth-Steuerung: Arduino-zu-Arduino-Steuerung über Bluetooth

Drahtlos30 Apr. 2018
Eine Nahaufnahme von Arduino-Boards, die auf Steckbrettern montiert sind, verbunden mit Bluetooth-Modulen, Steckbrücken, Widerständen und gelben Drucktastern.
Alle Artikel anzeigen

Wenn der durchschnittliche Mensch den Begriff „Bluetooth“ hört, denkt er möglicherweise an ein Audio-Headset oder einen Lautsprecher. Beide Geräte verwenden Bluetooth-Technologie, aber Elektronik-Enthusiasten wissen, dass man diese Kurzstreckenkommunikationsmethode für weit mehr nutzen kann, als nur seinen Lieblings-Podcast zu hören.   Bluetooth kann Informationen auf dutzende interessante und innovative Arten übertragen. Eine unserer Lieblingsanwendungen ist die Kopplung eines auf Arduino basierenden Roboters oder eines anderen Geräts mit einem Smartphone zur Steuerung.   So können Sie mit Bluetooth-Technologie Ihr nächstes Arduino-Robotikprojekt starten.

Wie funktioniert die Bluetooth-Kommunikation von Arduino zu Arduino?

Mit Bluetooth-Seriellsignalen steuert Ihr Telefon das Arduino genauso perfekt, als hätten die beiden eine Hardwareverbindung. Apps wie Bluetooth Terminal und ArduinoRC leisten hierbei gute Arbeit, um Ihr Telefon in diesem Szenario zu einem Schnittstellengerät zu machen.   Es wird sogar noch besser. Mit der richtigen Einrichtung können Sie zwei Arduino-Boards dazu bringen, miteinander zu kommunizieren, ohne dass ein Computer oder Telefon beteiligt sein muss. Die Kommunikation von Arduino zu Arduino ist etwas komplexer zu bedienen, erweitert jedoch die Steuerungsmöglichkeiten erheblich.

Schritt 1: Die Schaltungen aufbauen

A wiring diagram showing an Arduino board connected to a breadboard and an HC‑05 Bluetooth module using jumper wires, resistors, and a push button.

Für diesen Aufbau müssen Sie ein Paar identische Breadboards konstruieren, wie im obigen Fritzing-Diagramm gezeigt. Jedes davon verwendet ein Arduino Nano, um Daten über ein HC-05 Bluetooth-Modul zu übertragen, sodass das Gegenstück diese Daten empfangen und mit dem Aufleuchten der onboard-LED reagieren kann. Sie können ein Signal von einem Arduino zum anderen über die serielle Schnittstelle eines Computers senden, aber die Tastereingabe bietet eine Schnellzugriffstaste, um ein Zeichen drahtlos zu übertragen.   Hier ist, was Sie für den Aufbau Ihrer Schaltungen benötigen:

  • (2) Arduino Nanos
  • (2) Breadboards
  • (2) HC-05 Bluetooth-Module
  • (2) Taster
  • (2) 1k Widerstände
  • (2) 2k Widerstände
  • (2) 20k Widerstände
  • Jumper-Kabel
  • (2) Mini-USB-Kabel
Hinweis: Viele der Teile können nach Ihren Vorlieben ausgetauscht werden. Zum Beispiel funktioniert ein Arduino Uno genauso gut wie ein Nano. Außerdem sehen Sie im Schaltplan, dass wir einen Spannungsteiler an der RX-Pin des HC-05 verwendet haben. HC-05-Module arbeiten mit 3,3V, daher haben wir diese Wahl getroffen, um zu verhindern, dass zu viel Spannung an diesen Pin geliefert wird.

Verbinden Sie Ihr Arduino Bluetooth-Modul

Two computer windows side by side showing Arduino serial monitor output, with text indicating the device is ready and displaying test messages over a COM port.

Abb. 2: Indem Sie eine zweite Instanz der Arduino IDE öffnen, können Sie mit zwei separaten Boards gleichzeitig arbeiten.
 
Sobald Sie Ihre Schaltung aufgebaut haben, müssen Sie Ihre beiden Bluetooth-Module so einrichten, dass sie miteinander kommunizieren. Hier sind die nächsten Schritte:

  1. Übertragen Sie den HC-05_AT_MODE_01-Code, der hier zu finden ist, auf eines Ihrer Arduino-Boards. Versetzen Sie dann das HC-05-Bluetooth-Modul in den AT-Modus, indem Sie das Modul einschalten, während Sie die Taste des Boards gedrückt halten.
  2. Die Onboard-LEDs blinken langsam ein- und aus, wenn das Modul startet. Öffnen Sie einen seriellen Monitor in Ihrer Arduino IDE und geben Sie „AT“ ein. Wenn alles korrekt funktioniert, erhalten Sie vom Terminal eine „OK“-Antwort.
  3. Geben Sie „AT+ROLE=1“ ein, um Ihr HC-05 als Master einzurichten, und dann „AT+CMODE=1“, um die Verbindung mit jeder Adresse (Modul) zu ermöglichen.
  4. Setzen Sie das Gerät zurück, und Ihr HC-05, das jetzt als Master fungiert, wird sich mit dem anderen HC-05 verbinden, das normalerweise als Slave-Modul eingerichtet ist.

Falls Sie einen Master in einen Slave ändern müssen, verbinden Sie sich seriell wie oben beschrieben und geben Sie „AT+ROLE=0“ ein. Es ist auch möglich, ein HC-06-Modul zu verwenden, das nur im Slave-Modus funktioniert. Verwenden Sie den in Schritt 1 verlinkten Code für weitere Details. Sie können die beiden Module auch durch diese fortgeschrittenen Anweisungen miteinander verbinden.
 
Wenn Sie mit zwei Arduino-Boards auf diese Weise arbeiten, kann es äußerst hilfreich sein, zwei Instanzen der Arduino IDE zu öffnen (über eine Verknüpfung, nicht durch „Datei/Neu“ oder „Datei/Öffnen“ in der IDE). Dadurch können Sie Programme laden und serielle Ports gleichzeitig überwachen, was das Programmieren und Debuggen erheblich erleichtert.

Verbinden Sie Ihr Arduino Bluetooth-Modul

Two breadboards each containing an Arduino board connected with jumper wires and components, with USB cables attached and indicator LEDs lit on one board.

Abb. 3: Ein Tastendruck schaltet das Licht auf einem anderen Arduino Nano ein. Haftnotizen kennzeichnen den verwendeten seriellen Port, um jeden während der Programmierung auseinanderzuhalten.   Sobald Sie Ihren HC-05/Arduino verbunden haben, laden Sie die Software, die Sie hier finden, auf jeden Arduino und folgen Sie diesen Schritten:

  1. Öffnen Sie einen seriellen Monitor für jede IDE-Instanz und experimentieren Sie mit der Eingabe von „O“ und „F“ (case-sensitive).
  2. Sie sollten sehen, dass das gegenüberliegende Board reagiert, indem es die onboard LED ein- und ausschaltet. Drücken Sie den Knopf. Dadurch wird das Zeichen „B“ an das gegenüberliegende Board gesendet, wodurch die LED für kurze Zeit blinkt.
  3. Sie können auch „B“ im seriellen Monitor eingeben, um diese Funktionalität zu testen.
  4. Wenn Sie zufrieden sind, dass alles korrekt funktioniert, können Sie eine der Baugruppen abtrennen und an gegenüberliegenden Enden des Raumes anschließen, um die Lichter hin und her blinken zu lassen.
Da Sie nun Ihre beiden Arduino-Boards verbunden haben, ist es Zeit, kreativ zu werden. Vielleicht haben Sie Ihren Roboter bisher mit einem Telefon über Bluetooth gesteuert, möchten aber lieber ein physisches Tastenfeld verwenden. Vielleicht möchten Sie eine benutzerdefinierte Computer-Schnittstelle entwerfen, die aus der Ferne arbeitet. Bluetooth-Technologie kann Ihren Robotikprojekten eine neue, tragbare Dimension hinzufügen.

Artikel tags

Weltweit
Robotik
Autonome Maschinen
Automatisierung
Drahtlos
Arduino S.r.l.

Verwandte Inhalte