Bluetooth Modul – HC-05 – Arduino Tutorial

 


 

Einleitung

In diesem Artikel werden wir Ihnen ausführlich erklären, wie Sie ein HC-05 Bluetooth-Modul erfolgreich mit einem Arduino programmieren können. Bluetooth-Module sind äußerst vielseitige Bausteine, die es ermöglichen, drahtlose Verbindungen zwischen Ihrem Arduino und anderen Geräten wie Smartphones, Tablets oder anderen Mikrocontrollern herzustellen. Mit Hilfe dieser Anleitung werden Sie in der Lage sein, Ihr Arduino-Board so zu konfigurieren, dass es nahtlos mit dem HC-05 Bluetooth-Modul kommuniziert.

Wir werden Schritt für Schritt vorgehen und Ihnen dabei helfen, die erforderlichen Komponenten zu verstehen, den Verdrahtungsaufbau zu optimieren und den Programmcode detailliert zu erläutern. Am Ende dieses Artikels sind Sie in der Lage, Ihr Arduino-Board so zu konfigurieren, dass es Daten drahtlos über Bluetooth senden und empfangen kann. Dieses Wissen öffnet Ihnen die Tür zu einer breiten Palette von Projekten, bei denen die drahtlose Kommunikation eine entscheidende Rolle spielt.

Bereiten Sie sich darauf vor, in die spannende Welt der Bluetooth-Verbindungen mit dem Arduino einzutauchen und Ihre eigenen kreativen Elektronikprojekte zu realisieren. Wir werden Ihnen den Weg zeigen, wie Sie Ihre Arduino-Ideen drahtlos in die Tat umsetzen können. Legen wir los!

 

 

Verschaltung

Teile

1x Arduino Uno
1x HC-05 Bluetooth Modul
5x Verbindungskabel

Bibliotheken

SoftwareSerial.h

Code Download

 
 

Übersicht – Bluetooth Modul – HC-05 + Arduino

 




 

Hardware Aufbau – Verkabelung – Bluetooth Modul – HC-05 + Arduino

Bevor wir in die Programmierung des Arduino eintauchen, ist es von grundlegender Bedeutung, zuerst die Hardware-Verbindung herzustellen. Im nächsten Abschnitt werde ich Ihnen zeigen, wie Sie das Arduino-Board erfolgreich mit dem HC-05 Bluetooth Modul verbinden können.

Für den Aufbau benötigen Sie 5 Verbindungen:

Arduino 3,3V Pin → EN
Arduino 5V Pin → VCC
Arduino GND → GND
Arduino Pin 2 → TXD
Arduino Pin 3 → HV Pegelwandler LV → RXD

Eine sorgfältige und präzise Verkabelung ist unerlässlich, um sicherzustellen, dass das Arduino-Board die Signale des HC-05 Bluetooth-Moduls ordnungsgemäß empfangen kann.

Nachdem Sie diese Verbindungen erfolgreich hergestellt haben, sind Sie bereit, mit der Programmierung des Arduino fortzufahren. Im nächsten Abschnitt werden wir ausführlich erörtern, wie Sie die erforderlichen Bibliotheken einbinden und den Code für das HC-05 Bluetooth-Modul programmieren können.

 




 

Software Programmierung – Bluetooth Modul – HC-05 + Arduino

Nachdem der erfolgreiche Hardware-Aufbau abgeschlossen ist, können wir uns nun der Programmierung des Arduino zuwenden. In diesem Abschnitt werden wir die essenziellen Schritte zur Codeerstellung ausführlich behandeln und die Schlüsselfunktionen, die Sie verwenden werden, im Detail erläutern.

 
Schritt 1: Initialisierung

Öffnen der Arduino-IDE und Erstellen eines neuen Projekts
Um mit der Arduino-IDE zu arbeiten, öffnen Sie zunächst die Anwendung auf Ihrem Computer. Falls Sie die Arduino-IDE noch nicht installiert haben, können Sie unter folgendem Link eine Anleitung hierzu finden:
Arduino erste Schritte

Nachdem Sie die Arduino-IDE geöffnet haben, erstellen Sie ein neues Projekt, indem Sie auf „Datei“ klicken und dann auf „Neu“. Dadurch wird ein neues Sketch-Fenster geöffnet, in dem Sie Ihren Code eingeben können.


// Hier kommt dein Code
void setup()
{
  // Initialisierung
}

void loop()
{
  // Schleife
}

 
Schritt 2: Bibliothek einbinden

Um die Daten des HC-05 Bluetooth-Moduls zu verarbeiten, benötigen wir die Bibliothek namens „SoftwareSerial“. Diese ist bereits vorab in die Arduino IDE eingebunden. Daher muss die Bibliothek nicht eingebunden werden und kann direkt verwendet werden.

 
Schritt 3: Pins + Bluetooth definieren

Zunächst legen wir unseren Pin per „define“-Befehl fest damit wir diesen im folgenden Code nicht immer wiederholen müssen. In diesem Beispiel verwenden wir Pin2 und Pin3.
Danach das Setup der SoftwareSerial Instanz. Hier legen wir die Pins fest, über welche kommuniziert werden soll.


#define tx 3
#define rx 2


SoftwareSerial configBt(rx, tx); // RX , TX

// Pass OneWire reference to Dallas Temperature
DallasTemperature sensors(&oneWire);

 

Schritt 4: Void Setup

Im Void Setup-Teil des Codes führen Sie die Initialisierungen durch, die nur einmal am Anfang des Programms ausgeführt werden müssen. Fügen Sie den folgenden Code hinzu:


void setup()
{
  Serial.begin(38400); //Initialize serial monitor
  configBt.begin(38400); //Initialize serial monitor
  pinMode(tx, OUTPUT); //Define TX Pin as output
  pinMode(rx, INPUT); //Define RX Pin as input
}

Der Serial.begin(38400) Befehl initialisiert den seriellen Monitor mit einer Baudrate von 38400, sodass Sie die empfangenen Werte später auf dem Monitor angezeigt werden können.
Über pinMode wird der Pin an welchem Daten herausgeschickt werden als Output definiert. Und am RX Pin, an welchem Daten empfangen werden, wird als Eingang definiert.

 
Schritt 5: Loop Setup

Der Loop-Teil des Codes wird kontinuierlich wiederholt, solange der Arduino eingeschaltet ist. Hier erfolgt die eigentliche Verarbeitung der Bluetooth Kommunikation.


void loop()
{
  if(configBt.available()) //if the HC05 is sending something…
  {
     Serial.print(configBt.readString()); //print in serial monitor
  }
  if(Serial.available()) //if serial monitor is outputting something… 
  {
     configBt.write(Serial.read()); //write to Arduino’s Tx pin
  }
}

Die erste If-Abfrage prüft, ob das HC-05 Bluetooth Modul etwas gesendet hat.
Während die zweite If-Abfrage prüft, ob der Serielle Monitor etwas ausgegeben hat.

Schritt für Schritt – Zusammenfassung
→ Schritt 1: Initialisierung
Arduino-Board anschließen,
IDE öffnen
Datei -> Neu
Werkzeug -> Board -> Arduino Uno
Port -> Arduino Uno

→ Schritt 2:
Bibliothek einbinden.

→ Schritt 3:
Pins + Bluetooth initialisieren.

→ Schritt 4: Void Setup
Serial Monitor Initialisierung ausführen.
Serial Kommunikation beim Bluetooth Modul starten
pinMode definieren

→ Schritt 5: Void Loop
1. If-Abfrage: Prüft, ob das HC-05 Bluetooth Modul etwas gesendet hat.
2. If-Abfrage: prüft, ob der Serielle Monitor etwas ausgegeben hat.

 




 

Gesamter Programmiercode – Bluetooth Modul – HC-05 + Arduino

Nochmal zur Übersicht den gesamten Programmier-Code aufgezeigt.


#include <SoftwareSerial.h>

#define tx 3
#define rx 2


SoftwareSerial configBt(rx, tx); // RX , TX

// Pass OneWire reference to Dallas Temperature
DallasTemperature sensors(&oneWire);

{
  Serial.begin(38400); //Initialize serial monitor
  configBt.begin(38400); //Initialize serial monitor
  pinMode(tx, OUTPUT); //Define TX Pin as output
  pinMode(rx, INPUT); //Define RX Pin as input
}

void loop()
{
  if(configBt.available()) //if the HC05 is sending something…
  {
     Serial.print(configBt.readString()); //print in serial monitor
  }
  if(Serial.available()) //if serial monitor is outputting something… 
  {
     configBt.write(Serial.read()); //write to Arduino’s Tx pin
  }
}

 

Ausführung – Bluetooth Modul – HC-05 + Arduino

Nachdem der Code nun in die IDE eingegeben ist, muss dieser noch ausgeführt werden und auf den Arduino übertragen werden.
Hierzu geht man wie folgt vor:
Schritt 1: Überprüfen (Haken)
Schritt 2: Hochladen (Pfeil)
Schritt 3: Serieller Monitor öffnen
Schritt 4: Baud-Rate umstellen auf 38400
Schritt 5: Auf Display wird die aktuelle Kommunikation anzeigt

Nachdem der Arduino nun programmiert ist, kann mit dem Bluetooth Modul HC-05 kommuniziert werden.