Arduino – Bluetooth in das Projekt einbauen (Teil 2)

In Teil 2 des Tutorials möchte ich euch nun zeigen, wie ihr die ganze Sache anwenden könnt. Dafür wollen wir einfach die onboard LED des Arduino von einem PC mit Windows und einem Smartphone mit Android steuern.

Vorheriger Teil: Arduino – Bluetooth in das Projekt einbauen (Teil 1)

Vorraussetzungen:

  • Ein konfiguriertes Bluetoothmodul (siehe Teil 1)
  • Ein Arduinoboard
  • Jumperkabel
  • Android-Smartphone oder Tablet mit Bluetooth
  • Für Android: Die App BlueTerm, oder andere BT-Terminal-App
  • Windows-PC mit Bluetooth

Schritt 1: Das Verdrahten

Und erneut: Der fritzing-Schaltplan:
image

Als Text:

  • VCC an 5V
  • GND an GND
  • TX an RX
  • RX an TX

Hinweis: Anders als beim Teil 1 des Bluetooth-Tutorials benutzen wir nun die arduinoeigenen Kommunikationsschnittstellen an Pin 1 und Pin 0 (RX/TX). In Teil 1 haben wir diese Schnittstellen mit der „SoftwareSerial“-Library emulieren müssen. Da wir die Konfiguration des Moduls über USB bewerkstelligten benutzten wir die Serielle Schnittstelle des Arduinos. Der Upload der Sketches und die Kommunikation über den Seriellen Monitor gehen über diese Schnittstelle, die vom Bluetoothmodul bei seinem Gebrauch blockiert werden. Deshalb haben wir die Schnittstelle emulieren müssen. In diesem Tutorial verzichte ich der Einfachheit wegen auf die Emulation dieser Schnittstelle, mit dem Nachteil, dass beim Upload neuer Sketche, oder der gewünschten Kommunikation über den Seriellen Bus das Bluetoothmodul von den RX- und TX-Pins des Arduinos getrennt werden muss. Abhilfe wäre hier für Fortgeschrittene die SoftwareSerial-Library, die bereits in der Arduino IDE integiert ist.

Schritt 2: Das Programmieren

Einfach den folgenden Sketch uploaden. Dafür darf das BT-Modul nicht an den RX/TX-Pins angeschlossen sein.

Zusammenfassung des Skriptes: Wenn über die RX/TX-Pins das char 0 empfangen wird, schaltet sich die LED ab, bei einem char 1 an.

Nach dem Upload könnt ihr das Modul an die RX/TX-Pins anschließen.

Die Kommunikation mit Windows

Ist das Arduinoboard programmiert und das Bluetoothmodul korrekt an das Board angeschlossen, blinkt die LED auf dem Modul ununterbrochen. Das Blinken symbolisiert, dass sich kein Gerät mit dem Modul verbunden hat. Zum senden von den chars müssen wir uns nun erst mit dem Bluetoothmodul verbinden.

Schritt 1: Die Verbindung mit dem Bluetoothmodul herstellen

Geht in die Bluetoothsystemsteuerung von Windows und drückt da auf „Gerät hinzufügen“
image

Wählt da nun den Namen eures Bluetoothmoduls aus, den ihr im ersten Teil des Tutorials gewählt habt.
image

Nun geht auf „Kopplungscode des Gerätes eingeben“ und gebt im folgenden Fenster die Pin des Gerätes ein.
image

Danach ist das Bluetoothmodul erfolgreich verbunden.
image

Schritt 2: Die Chars versenden

Nach der Verbindung stehen dem Computer zwei neue sogenannte COM-Anschlüsse zur Verfügung, die auch in der Arduino-IDE angesteuert werden können. Um die Schnittstelle auswählen zu können, muss man zunächst herausfinden auf welchem COM-Anschluss das Bluetoothmodul hört.

Geht in die Eigenschaften des Moduls. (Rechtsklick auf das Gerät in der Bluetoothgerätesystemsteuerung.) Unter dem Reiter Hardware kann man nun die Schnittstelle herauslesen. Im Bild: COM10

image

Geht nun in die Arduino-IDE und wählt in den Werkzeugen den COM-Anschluss eures Gerätes aus. Danach startet ihr den Seriellen Monitor. Wenn ihr den Seriellen Monitor gestartet habt, sollte die LED am Bluetoothmodul nun dauerhaft leuchten und nicht mehr blinken. Das bedeutet, dass sich die Arduino-IDE erfolgreich mit dem Modul verbunden hat.

Wählt in den Einstellungen des Seriellen Monitors die richtige Baudrate des Bluetoothmoduls aus, und stellt die Zeilenenden auf „Kein Zeilenende“. Sendet ihr nun 0 an das Modul, sollte die onboard-LED ausgehen, bei 1 angehen.

Die Kommunikation mit Android

Schritt 1: Die Verbindung mit dem Bluetoothmodul herstellen

Geht in die Bluetootheinstellungen des Smartphones oder Tablets und wartet da, bis euer Arduinogerät aufgelistet wird. Wichtig: Wartet bis der Name des Gerätes erscheint und fahrt nicht mit Schritt 2 fort, wenn ihr noch die Bluetooth-MAC-Adresse seht, da es sonst zu Fehlern kommen kann.

image

Danach klickt ihr einfach auf euer Gerät und gebt dann die PIN ein.

image

Nun sollte das Modul unter den „Pairing-Geräten“ zu finden sein. Startet nun die App BlueTerm. Wenn ihr auf die Menütaste eures Androidgerätes klickt, solltet ihr den Punkt „Connect device“ sehen.

image

Klickt darauf und wählt dann euer Modul aus.

image

Danach verbindet sich die App mit dem Modul. Auch jetzt leuchtet die LED am Bluetoothmodul dauerhaft, was wieder bedeutet, dass sich die App erfolgreich mit dem Modul verbunden hat. In der Kopfzeile könnt ihr außerdem den Namen des Moduls lesen.

image

Wenn ihr nun auf 1 auf der Tastatur drückt, leuchtet die onboard-LED auf, bei 0 geht sie aus.

Hinweis: Bei BlueTerm gibt es keine Bestätigung o.ä, was auch vom Entwickler gewollt ist. Der Arduino sollte sofort nach dem Drücken auf 1 oder 0 reagieren. Das Bestätigen mit Enter ist unnötig.

Wenn ihr Fragen oder Hinweise zu dem Tutorial habt, könnt ihr gerne die Kommentarfunktion nutzen, oder mich per Mail anschreiben.

Sketch zum Download

3 Kommentare:

Schreibe einen Kommentar

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