HC-05 / HC-06 Bluetooth Module anschließen & verwenden

Verbinden Sie das Bluetooth-Modul HC-06/HC-05 mit dem Arduino Uno, um den Mikrocontroller mithilfe Ihres Smartphones fernzusteuern. Das Modul ermöglicht eine beidseitige Kommunikation über Bluetooth, sodass Sie das Arduino-Board nicht nur steuern, sondern auch Daten empfangen können. Ein Schaltplan mit Beispielcode für HC-06 sowie eine Smartphone-App zur Steuerung des Arduino sind verfügbar. Außerdem besteht die Möglichkeit, das Bluetooth-Modul mithilfe von AT-Befehlen zu konfigurieren.




Bestandteile:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • Bluetooth Module HC-06 / HC-05
  • LEDs und Widerstände
  • Breadboard
  • Dupont-Kabel
  • Bibliothek SoftwareSerial.h
  • Smartphone-App led_de.apk

Die Bluetooth-Kommunikation ist eine der beliebtesten Arten der Kommunikation über kurze Distanzen, die in der modernen Elektronik verwendet wird: drahtlose Kopfhörer, Tastaturen und andere Gadgets. In Einsteigerprojekten mit einem Arduino-Board werden die Bluetooth-Module hc-06 und hc-05 verwendet, um verschiedene Geräte zu steuern, z.B. um ein Auto oder ein Boot von einem Android-Smartphone aus fernzusteuern.

Arduino HC-00, HC-06 Bluetooth Module pinout, datasheet

Arduino HC-05, HC-06 Bluetooth Module pinout, datasheet

Merkmale des HC-06 / HC-05 Bluetooth Module (datasheet)

  • Versorgungsspannung: 3,3 – 6 V
  • Bluetooth-Protokoll: v1.1 / 2.0
  • Frequenz: 2,4 GHz ISM-Band
  • Sendeleistung: weniger als 4 dBm, Klasse 2
  • Asynchrone Datenrate: 2.1Mbps ( Max) / 160 kbps
  • Synchron: 1Mbps / 1Mbps
  • Unterstützte Profile: Serielle Bluetooth-Schnittstelle (Master und Slave)
  • Betriebstemperatur: -5°C bis 45°C

Beide Module basieren auf dem Bluetooth-Chip CSR BC417, der Übertragungsraten von bis zu 3 Mbit/s unterstützt. Auf der Platine befindet sich eine Serpentinen-Antenne, die eine Reichweite von bis zu 10 Metern für die Kommunikation ermöglicht. Der Hauptvorteil dieses Moduls besteht in der Störungsfreiheit des Geräts. Dadurch können mehrere Geräte miteinander kommunizieren, ohne sich gegenseitig zu beeinträchtigen.

Wie man einen HC-05 Bluetooth Module Arduino anschließt

Wie man einen HC-06 Bluetooth Module Arduino anschließt

Zu Beginn schalten wir die LED, die mit Port 13 des Arduino-Boards verbunden ist, über die App auf Ihrem Smartphone ein und aus. Installation und Programmierung des Mikrocontrollers abgeschlossen? Verbinden Sie nun das Bluetooth-Modul mit dem Arduino wie in der Abbildung gezeigt. Bitte beachten Sie, dass die eingebaute LED auf dem Bluetooth-Modul hc-05 bis zur Kopplung mit einem Smartphone schnell blinkt.

Programm für Steuerung von LEDs über einen Bluetooth Module




#include "SoftwareSerial.h"
SoftwareSerial mySerial(2, 3); // TX, RX

#define RED 10
#define BLU 12

int val;

void setup() {
  mySerial.begin(9600);
  pinMode(RED, OUTPUT);
  pinMode(BLU, OUTPUT);
}

void loop() {
  if (mySerial.available()) {

    val = mySerial.read();

    if (val == '1') { digitalWrite(RED, HIGH); }
    if (val == '0') { digitalWrite(RED, LOW); }
    if (val == '2') { digitalWrite(BLU, HIGH); }
    if (val == '3') { digitalWrite(BLU, LOW); }

  }
}
  1. Neben Zahlen können Sie auch Befehle in Form von Buchstaben des römischen Alphabets senden, wobei die Groß- und Kleinschreibung beachtet werden muss;
  2. Die App ist nur für Android geeignet. Sie können Ihre eigene App über den MIT APP Invenror Service erstellen.

Installation der App und Verbindung über Bluetooth

Um Ihr Smartphone mit dem HC-06 und HC-05 Bluetooth-Modul zu verbinden, gehen Sie in die Telefoneinstellungen und schalten Sie Bluetooth ein. Aktivieren Sie die Gerätesuche auf Ihrem Smartphone, um die Geräteadresse anzuzeigen. Um eine Verbindung herzustellen, müssen Sie das Passwort eingeben – die Voreinstellung ist „1234“ oder „0000“. Geben Sie das Passwort einmal ein, die Kopplung mit dem Smartphone erfolgt automatisch.

Installation der App und Verbindung über Bluetooth

Installieren Sie zuerst die Anwendung led_de.apk. Nach dem Öffnen der Anwendung klicken Sie auf „Bluetooth-Verbindung“. Eine Liste verfügbarer Geräte wird angezeigt – wählen Sie das gewünschte Gerät aus. Wenn die Bluetooth-Kopplung erfolgreich war, blinkt die LED auf dem Modul weniger häufig – etwa einmal alle zwei Sekunden. Nun können Sie LEDs, die mit dem Arduino über Bluetooth verbunden sind, ein- und ausschalten.

Anschluss des HC-05 an den Arduino im Firmware-Modus

Anschluss des HC-05 an den Arduino im Firmware-Modus

Um das Bluetooth-Modul zu konfigurieren, schließen wir ein Netzteil mit einer Spannung von 3,3 Volt an den Port 34 an (siehe Abbildung oben). Die Programmierung erfolgt über die serielle Schnittstelle. Da die serielle Hardware-Schnittstelle des Arduino (TX- und RX-Ports) mit dem Senden von AT-Befehlen vom Computer beschäftigt ist, verwenden wir die serielle Software-Schnittstelle mithilfe der SoftwareSerial.h-Bibliothek.

Programm für blinkende Modul HC-05 / HC-06 AT-Befehle

#include "SoftwareSerial.h"
SoftwareSerial mySerial(2, 3); // TX, RX

void setup() {
  pinMode(2,INPUT);
  pinMode(3,OUTPUT);
  
  Serial.begin(9600);
  mySerial.begin(38400);
  
  Serial.println("start setting");
}

void loop() {
  if (mySerial.available()) {
     char c = mySerial.read();
     Serial.print(c);
  }
 
  if (Serial.available()) {
     char c = Serial.read();
     mySerial.write(c);
  }
}
  1. Wenn Daten über den seriellen Hardware-Port empfangen werden, werden sie an den seriellen Software-Port (auf dem Bluetooth-Modul HC05) gesendet;
  2. Wählen Sie im Monitor der seriellen Schnittstelle der Arduino IDE „NL & CR„.

Um den Zugangscode, den Namen oder andere Einstellungen zu ändern, müssen die nachfolgenden Befehle über den Monitor der seriellen Schnittstelle der Arduino IDE gesendet werden. Hier finden Sie eine Schritt-für-Schritt-Anleitung, wie Sie die AT-Befehle senden, um das HC-06-Modul (Name und Passwort) anzupassen. Eine vollständige Liste der AT-Befehle mit kurzen Erklärungen finden Sie in der beigefügten Tabelle.

  • Modulname abfragen: AT+NAME?
  • Name auswählen: AT+NAME=ROBOT
  • Modulname erneut abfragen: AT+NAME?
  • Modulpasswort ermitteln: AT+PSWD?
  • Passwort auswählen: AT+PSWD=0000
  • Ermitteln des Modulpassworts: AT+PSWD?

Tabelle mit AT-Befehlen zum Flashen von HC-05 / HC-06

AT-Befehl Antwort des Moduls Hinweis
AT OK Test-Befehl
AT+VERSION? +VERSION: … Prüfen Sie die Firmware-Version des Moduls
AT+RESET OK Einstellungen zurücksetzen
AT+ADDR? +ADDR: … Finden Sie die Adresse des Moduls
AT+NAME? +NAME:«name» Ermitteln Sie den Modulnamen, wobei „Name“ der Name des Bluetooth-Moduls ist
AT+NAME=«name» OK Legen Sie einen neuen Namen fest, wobei „Name“ der Name des Bluetooth-Moduls ist
AT+PSWD? + PSWD:«pin» Lernen Sie den Zugangscode, wobei „pin“ der Code ist, die Voreinstellung ist 1234
AT+PSWD=«pin» «pin»
OK
Stellen Sie einen neuen Zugangscode für das Modul ein, wobei „pin“ der Zugangscode für das Bluetooth-Modul ist
AT+ROLE? +ROLE:«param» Ermitteln Sie die Betriebsart des Moduls, wobei „param“ die Betriebsart angibt:
0 – Slave. Ein Master kann sich mit dem Modul verbinden;
1 – Master. Das Modul selbst stellt eine Verbindung zum Gerät her.
AT+ROLE=«param» OK Einstellen der Betriebsart des Moduls, wobei „param“ die Betriebsart ist

Schlussfolgerung. Der Sketch zur Steuerung des Arduino über Bluetooth von einem Android-Smartphone aus unterscheidet sich nicht von dem Programm, das zur Steuerung des Arduino von einem Computer aus verwendet wird. In beiden Fällen empfängt der Mikrocontroller Daten über das UART-Protokoll (Universal Asynchronous Transceiver) – das allererste und heute gängigste physikalische Datenübertragungsprotokoll.

5/5 - (1 vote)


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert