0. Komponenty i oprogramowanie niezbędne do zainstalowania modułu Bluetooth i serwomechanizmu

Wymagane komponenty:

Do podłączenia bezprzewodowego modułu Bluetooth 4.0 AT-09 CC2541 potrzebne są następujące elementy:

{Product: 2000} {Product: 393} {Product: 879} lub {Product: 1029}

I. Okablowanie urządzenia Bluetooth z Arduino UNO

Najpierw zobaczymy różnice między jednym modułem a drugim.

Najpopularniejszym i najbardziej ekonomicznym jest zwykle HC-06, ale HC-05 jest bardziej zaawansowany. Główną różnicę widać gołym okiem, HC-06 ma 4 piny, podczas gdy HC-05 ma 6 pinów. Jeśli chodzi o sprzęt, oba są oparte na tym samym, ale oprogramowanie układowe się zmienia.

Podczas gdy HC-06 przechodzi w tryb programowania natychmiast po włączeniu, jeśli żadne urządzenie nie jest podłączone przez Bluetooth, wprowadzenie modułu HC-05 w tryb poleceń jest nieco bardziej skomplikowane. Wymaga to określonego sposobu uruchomienia, ponieważ wymaga, aby pin KEY (który nie był podłączony w przypadku HC-06) był w stanie WYSOKI, gdy włączamy moduł.

Dlatego dla HC-05 aby wejść w tryb AT należy ustawić pin KEY w stan HIGH np. Na pinie 9 i zaprogramować go lub na 3,3V. To jest główna różnica, więc w tym samouczku skupimy się na HC-06.

Podstawowe komendy AT

  • WERSJA AT +, wersja oprogramowania
  • AT + NAMEXXX, Zaprogramuj nazwę, którą chcemy przedstawić, gdy ktoś nas szuka
  • AT + BAUDX, Ustawia prędkość komunikacji pomiędzy modułem a konsolą zgodnie z poniższą tabelą:
  • - 1 zestaw 1200bps
  • - 2 zestawy 2400bps
  • - 3 zestawy 4800bps
  • - 4 zestawy 9600bps (domyślnie)
  • - 5 zestawów 19200bps
  • - 6 zestawów 38400bps
  • - 7 ustaw 57600bps
  • - 8 konfiguracji 115200bps
  • AT + PINXXXX, skonfiguruj osobisty numer identyfikacyjny, który będzie wymagany do nawiązania połączenia
  • AT + ROLE Informuje nas, czy jest skonfigurowany jako Master 1, czy jako Slave 0.
  • - AT + ROLE1 Ustawia moduł jako Master.
  • - AT + ROLE0 Konfiguruje moduł jako podrzędny.

Jeśli potrzebujesz więcej elementów i masz dostęp do wszystkich opisów technicznych naszych produktów, przejdź na stronę naszego Sklepu Solectro .

Połączenie

HC-06

Wykorzystując płytkę prototypową MB-102 bez lutowania lub bezpośrednio na module wykonać następujące okablowanie:

Okablowanie% 2Bm% 25C3% Moduł 25B3% 2BBluetooth% 2Binal% 25C3% 25A1mbrico% 2BAT-09.jpg

Włącz płytę UNO, czerwona dioda LED bezprzewodowego modułu Bluetooth AT-09 zacznie migać. Za pomocą smartfona możesz otworzyć skanowanie Bluetooth i dowiedzieć się, że moduł AT-09 pojawia się jako podłączone urządzenie.

II. Pobierz aplikację LightBlue ® Explorer na swój smartfon


W App Store lub Play Store pobierz aplikację LightBlue® Explorer, aby umożliwić modułowi UNO komunikację z modułem bezprzewodowym AT-09 BLE, wykorzystujemy interfejs szeregowy TXD (transmisja) / RXD (odbiór).

Moduł UNO pozwala na konwersję dowolnej pary pinów cyfrowych na interfejs szeregowy za pomocą biblioteki SoftwareSerial.h zawartej w IDE Arduino .

III. Skonfiguruj moduł AT-09 za pomocą Arduino

W nowym pliku Arduino następujący program w interfejsie programu Arduino .
Im% 25C3% 25A1gen% 2B1.jpg
Aby program mógł się pomyślnie skompilować, absolutnie konieczne jest pobranie biblioteki Arduino SoftwareSerial.h, umieszczając jej folder pod następującym adresem w swoim systemie:

C: \ Program Files (x86) \ Arduino \ libraries

Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .

Im% 25C3% 25A1gen% 2B2.jpg


Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.

Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:

Im% 25C3% 25A1gen% 2B3.jpg

Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .

Im% 25C3% 25A1gen% 2B4.jpg


Zwróć uwagę na następujące wyjście potwierdzające działanie twojego okablowania.

Im% 25C3% 25A1gen% 2B5.jpg


IV. Skonfiguruj moduł AT-09 jako urządzenie peryferyjne BLE

Konfiguracja modułu AT-09 BLE odbywa się za pomocą polecenia AT. Celem tej sekcji jest wywołanie poleceń, które pozwalają:
  • ustawić moduł jako peryferyjny,
  • ustawić UUID usługi,
  • ustawić charakterystykę UUID,
  • stworzyć dobrą markę dla urządzenia peryferyjnego.

Ważnym szczegółem, który należy wziąć pod uwagę, jest to, że moduł AT-09 BLE zezwala na usługę zawierającą tylko jedną charakterystykę, gdy jest skonfigurowany jako urządzenie peryferyjne.
Arkusz danych HM-10 zawiera sekcję z listą poleceń AT. Po przeanalizowaniu tego użyjemy następujących kontrolek:
  • skonfiguruj moduł jako urządzenie peryferyjne: AT + ROLE0 (wpisz 0, aby skonfigurować jako urządzenie peryferyjne i 1, aby skonfigurować jako urządzenie centralne,
  • ustaw identyfikator UUID usługi: AT + UUIDuuid gdzie uuid to identyfikator UUID usługi. Przechodzi od 0x0001 ~ 0xFFFE i domyślnie przyjmuje wartość 0xFFE0,
  • ustaw UUID funkcji: AT + CHARuuid gdzie uuid to UUID funkcji,
  • Przechodzi od 0x0001 ~ 0xFFFE i domyślnie przyjmuje wartość 0xFFE1,
  • ustaw dobrą nazwę dla urządzenia peryferyjnego: AT + NAZWA nowa_nazwa gdzie nowa_nazwa to nazwa, którą chcemy skonfigurować.

Skonfigurujmy w następujący sposób:
  • Rola : peryferyjna,
  • Nazwa : LightBlue,
  • UUID usługi : 0xFFE0,
  • Charakterystyczny UUID: 0xFFE1,
W ten sposób przez port szeregowy wprowadza się następujące instrukcje AT:
  • W + ROLA0
  • AT + NAMELightBlue
  • AT + UUID0xFFE0
  • AT + CHARxFFE1

Aby wykonać wszystkie te parametry, w nowym pliku Arduino następujący program w interfejsie programu Arduino .


Im% 25C3% 25A1gen% 2B6.jpg


Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .


Im% 25C3% 25A1gen% 2B7.jpg


Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.




Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:


Im% 25C3% 25A1gen% 2B8.jpg



Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .


Im% 25C3% 25A1gen% 2B9.jpg


Obserwuj następujące dane wyjściowe, otwierając monitor szeregowy, aby dowiedzieć się, jak działa jego okablowanie.


Im% 25C3% 25A1gen% 2B10.jpg



W aplikacji na smartfonie urządzenie o nazwie Lightblue musi być podłączone.


Wejdź do menu modułu AT-09 LightBlue i upewnij się, że pojawiają się parametry skonfigurowane w programie.


LightBlue% 2B5.png

LightBlue% 2B2.png



V. Odczyt danych w charakterystyce modułu AT-09


Po skonfigurowaniu modułu BLE 4.0 AT-09 jako urządzenia peryferyjnego, nasz moduł UNO może w łatwy sposób odczytać przesłane dane w jego charakterystyce poprzez odczyt pinu TXD. Dowolny podłączony panel sterowania może wprowadzić dane do charakterystyk.
Należy pamiętać, że jedyna dostępna funkcja może przechowywać do 20 bajtów losowych danych.
W celu odczytania danych w nowym pliku Arduino następujący program w interfejsie programu Arduino .
Im% 25C3% 25A1gen% 2B11.jpg
Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .
Im% 25C3% 25A1gen% 2B12.jpg
Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.

Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:
Im% 25C3% 25A1gen% 2B13.jpg
Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .
Im% 25C3% 25A1gen% 2B14.jpg
Obserwuj następujące dane wyjściowe, otwierając monitor szeregowy, aby dowiedzieć się, jak działa jego okablowanie.
Im% 25C3% 25A1gen% 2B15.jpg
Otwórz aplikację LightBlue na swoim smartfonie i wprowadź nową wartość.
LightBlue% 2B3.png
Następnie zapisz kod szesnastkowy 68 65 6C 6C 6F odpowiadający słowu hello.
Kody możesz pisać tylko szesnastkowo, musisz przekonwertować słowo, które chcesz napisać na kod dzięki konwerterowi w sieci.
LightBlue% 2B4.png Zobacz, jak kod pojawia się na monitorze szeregowym komputera.
Im% 25C3% 25A1gen% 2B16.jpg

WIDZIAŁ. Zapis danych w charakterystyce modułu AT-09

Dowiemy się, jak zapisywać dane do modułu BLE AT-09 za pomocą funkcji mySerial.write (). Metoda loop () wypisze wartości i zwiększy je po każdym zapisie, powtarzając go w nieskończoność.

Aby zapisać dane do nowego pliku, Arduino następujący program w interfejsie programu Arduino .


Im% 25C3% 25A1gen% 2B17.jpg



Po skopiowaniu kodu do interfejsu kliknij opcję Program / Verify / Compile .


Im% 25C3% 25A1gen% 2B18.jpg


Pod twoim ekranem w interfejsie Arduino znajduje się obszar komunikatów kompilatora, w którym możesz sprawdzić, czy kod został dobrze napisany lub czy zawiera błędy.




Jeśli kod zostanie pomyślnie skompilowany, pojawi się następujący komunikat:


Im% 25C3% 25A1gen% 2B19.jpg



Po skompilowaniu załaduj program do mikrokontrolera ATMEGA328P-PU modułu Uno R3, klikając Program / Upload .


Im% 25C3% 25A1gen% 2B20.jpg


Obserwuj następujące dane wyjściowe, otwierając monitor szeregowy, aby dowiedzieć się, jak działa jego okablowanie.


Im% 25C3% 25A1gen% 2B21.jpg
Otwórz aplikację LightBlue na swoim smartfonie:
LightBlue.png
Następnie otwórz właściwości TX&RX:
LightBlue% 2B9.png
I wybierz Słuchaj powiadomień . Możesz więc zobaczyć wiadomości przychodzące z modułu BLE AT-09.
LightBlue% 2B7.png

Poniższy przykład Bluetooth:

Przykład działania modułu Bluetooth do sterowania serwomechanizmem