- Čo je modul HM10 BLE 4.0?
- Rozdiel medzi HM10 a iným modulom Bluetooth
- Súčasti sú povinné
- Schéma zapojenia
- Ovládač Bluetooth Arduino (modul HM-10) pre Android
- Programovanie Arduino UNO na ovládanie LED pomocou modulu Bluetooth HM-10
Bluetooth je jednou z najpopulárnejších a najjednoduchších bezdrôtových technológií. Za niekoľko rokov prešlo veľa upgradov štandardu Bluetooth, aby držali krok so súčasnou prebiehajúcou technológiou s budúcou technológiou a uspokojovali potreby používateľov. Počnúc verziou Bluetooth 1.0 až Bluetooth verzie 5.0 sa zmenilo veľa vecí vrátane vyšších dátových tokov, možnosti použitia pre IoT s nízkou spotrebou prúdu, vylepšeného zabezpečenia atď. Naučenie Bluetooth komunikácie je k dispozícii veľa modulov, ktoré môžu byť prepojené s mikrokontrolérmi. Takýmto Bluetooth modulom je HM10, ktorý je založený na Bluetooth 4.0.
Čo je modul HM10 BLE 4.0?
HM10 je sériový BLE modul (Bluetooth-Low-Energy), ktorý je určený pre aplikácie s nízkou spotrebou energie a vydrží dlho aj s batériou veľkosti mince. HM10 je 4,0 Bluetooth modul založený na Texas Instruments CC2540 a CC2541 BLE systému SoC (System on Chip). Firmvér a dizajn modulu vyrába a spravuje spoločnosť Jinan Huamao Technology. Modul je dodávaný so sériovou / UART vrstvou, ktorá umožňuje komunikáciu zariadenia s rôznymi mikrokontrolérmi. HM10 je ideálny na vytváranie jednoduchých pripojení a na jeho použitie s alebo ako iBeacon.
HM10 sa stal veľmi populárnym modulom Bluetooth 4.0 BLE. HM10 je iba modul založený na Bluetooth 4.0, takže sa nebude pripájať k modulu Bluetooth 2 / 2.1, ako sú HC-05, HC-06 a iným Bluetooth modulom. HM10 sa ovláda pomocou AT príkazov odosielaných cez sériové pripojenie UART. HM-10 je modul Bluetooth Low Energy (BLE). Ak sa chcete dozvedieť viac informácií o BLE, kliknite na odkaz. Dozviete sa tiež, ako možno modul nRF24L01 použiť ako modul BLE s programom Arduino.
Rozdiel medzi HM10 a iným modulom Bluetooth
Hlavným rozdielom, ktorý má HM10, je verzia Bluetooth. HM10 je modul Bluetooth 4.0, takže prichádza so všetkými funkciami Bluetooth verzie 4.0, ako sú rýchlosť, priepustnosť a dosah. HM10 ponúka rýchlosť prenosu dát až 24 Mbps s nízku spotrebu energie / s nízkou spotrebou energie. Spolu s tým ponúka HM10 na voľnom priestranstve vzdialenosť 100 metrov. V porovnaní s ostatnými modulmi Bluetooth, ako je HC-05, ktorý je založený na Bluetooth 2.0, si HM10 určite vedie lepšie ako HC-05. HC-05 ponúka iba 3 Mb / s v porovnaní s HM10, čo je o dosť menej.
Bluetooth moduly HC-05 a HC-06 sú medzi výrobcami a fanúšikmi stále veľmi populárne, pretože sú lacné a ľahko použiteľné. Tiež sme pomocou HC-05/06 uskutočnili veľa projektov a prepojili ich s mnohými ďalšími mikrokontrolérmi:
- Rozhranie Bluetooth modulu s ESP8266: Ovládanie LED
- Prepojenie rozhrania Bluetooth HC-05 s modrou pilulkou STM32F103C8: kontrolka LED
- Prepojenie modulu HC-05 Bluetooth s mikrokontrolérom AVR
- Prepojenie modulu Bluetooth HC-06 s mikrokontrolérom PIC
- Hlasom ovládané LED pomocou Arduina a Bluetooth
- Hlasom ovládané svetlá pomocou Raspberry Pi
Všetky projekty spojené s Bluetooth nájdete na tomto odkaze.
Dnes prepojíme modul BLE HM-10 s Arduino Uno na bezdrôtové ovládanie LED pomocou protokolu Bluetooth. Príkazy Zapnúť / Vypnúť bude odosielať smartphone.
Súčasti sú povinné
Hardvér:
- Arduino UNO
- Modul Bluetooth HM10
- Rezistory (1 kΩ, 470 Ω)
- Prepojovacie drôty
Softvér:
- Arduino IDE
- Ovládač Bluetooth Arduino (modul HM-10) pre Android
- Chytrý telefón Android
Schéma zapojenia
Schéma zapojenia pre pripojenie Arduina a modulu Bluetooth HM-10 je veľmi jednoduchá, ako je znázornené nižšie.
Pred začatím projektu sa uistite, či je váš modul HM-10 originálnym modulom HM-10. K dispozícii sú široko čínske klonované moduly HM-10. Ak chcete zistiť rozdiel medzi originálnym a klonovaným modulom HM-10, stačí sa pozrieť na prítomnosť kryštálového oscilátora 32 kHz na doske HM-10. Pokiaľ je Crystal Oscillator prítomný, jedná sa o originálny modul HM-10 a nemusíte meniť firmvér. Pokiaľ ale nevidíte Crystal Oscillator namiesto neho, jedná sa o klonovaný modul HM10 a musíte zmeniť firmvér klonovaného modulu HM-10.. Bez zmeny firmvéru HM-10 nemáte k modulu HM-10 prístup pomocou príkazov AT ani ho nemôžete spárovať so smartphonmi. Tu tiež používame klonový modul, takže sme pred pripojením k Ardruinu zablokovali jeho firmvér. Ak chcete zmeniť modul firmvéru klonovanej HM-10, jednoducho postupujte podľa nášho návodu na tému Ako zmeniť alebo flashnúť modul firmvéru klonovanej HM-10.
Ovládač Bluetooth Arduino (modul HM-10) pre Android
Arduino Bluetooth Controller (HM-10 Module) je aplikácia pre Android, ktorá je k dispozícii zadarmo v obchode Google Play. Táto aplikácia má jednoduché a jednoduché rozhranie pre modul HM-10 BLE. Počas testovania dokázal rýchlo nájsť HM-10 a okamžite sa spojil s HM-10. Aplikácia má niekoľko skvelých funkcií, ako je napríklad vytvorenie tlačidla a prispôsobenie vlastným menom a funkciami. Tu ukážeme, ako v tejto aplikácii ovládača Bluetooth vytvoriť dve tlačidlá, pomocou ktorých sa zapína a vypína LED pripojená k Arduinu.
Ako nastaviť Bluetooth ovládač Arduino (modul HM-10) pre Android:
- Stiahnite si aplikáciu z Obchodu Google Play.
- Domovská stránka aplikácie bude vyzerať nižšie, kde nájdete funkcie ako pripojiť zariadenie, ikonu vyhľadávania, ikonu odstránenia, stav zariadenia, odoslať text, pridať šablónu atď. Začnite s prehľadávaním zariadenia buď kliknutím na ikonu vyhľadávania alebo kliknutím na ikonu do troch bodiek v pravom hornom rohu a vyberte možnosť Pripojiť zariadenie .
- Na obrazovke sa zobrazia všetky dostupné zariadenia. Vyberte správny modul HM-10.
- Teraz bude HM-10 úspešne pripojený a v hornej časti obrazovky uvidíte stav HM-10.
- Teraz môžete buď priamo poslať text alebo reťazec tak, že napíšete textovú časť a kliknete na šípku na odoslanie, alebo môžete vytvoriť vlastnú šablónu.
- Ak chcete vytvoriť vlastnú šablónu, aby ste ušetrili čas. Kliknite na ikonu „ + “ v pravom hornom rohu a vyplňte podrobnosti. „ Názov “ je názov tlačidla, pole „ Text “ slúži na text alebo reťazec, ktorý sa odošle na HM-10, a „ Popis “ predstavuje iba popis tlačidla, ktoré slúži na fungovanie tlačidla.
- Najskôr vytvorte tlačidlo na zapnutie LED a dajte mu zelenú farbu. Tlačidlo odošle písmeno „N“ HM-10, ktoré rozsvieti LED pripojenú k Arduinu. Podobne vytvorte tlačidlo pre LED VYPNUTÉ a dajte mu červenú farbu.. Tlačidlo odošle písmeno „F“ na HM-10, čím zhasne LED pripojená k Arduinu.
- Teraz vidíte dve tlačidlá vytvorené priamo pod textovým poľom. Teraz, ak chcete ovládať LED, stačí kliknúť na tlačidlá.
Týmto je nastavenie aplikácie pre Android na ovládanie modulu HM-10 ukončené. Teraz začneme programovaním Arduino Uno na získanie postáv z aplikácie pre Android.
Programovanie Arduino UNO na ovládanie LED pomocou modulu Bluetooth HM-10
Ako vždy kompletný program s ukážkovým videom nájdete na konci tohto tutoriálu. Programovanie Arduino UNO pre tento projekt nevyžaduje veľké úsilie ani žiadnu knižnicu. Môžete použiť hardvérové sériové a softvérové sériové knižnice. Ak používate softvérové sériové číslo, stačí zahrnúť softvérovú sériovú knižnicu, inak pokračujte hardvérovým sériovým číslom. V tomto projekte používame SoftwareSerial. Začnite teda zahrnutím sériovej knižnice softvéru. Kolíky Rx a Tx sú spojené na 2 a 3 kolíkoch Arduina.
#include
Tieto dve premenné sa používajú na ukladanie údajov prijatých z aplikácie HM10 a aplikácie pre Android.
char appData; Reťazec inData = "";
Stačí spustiť hardvérové a softvérové sériové číslo s prenosovou rýchlosťou 9600 a vytlačiť niektoré ladiace príkazy. Kolík LED je nastavený ako výstup a spočiatku je vypnutý.
Serial.begin (9600); Serial.println ("Seriál HM10 začal na čísle 9600"); HM10.začiatok (9600); // nastavenie HM10 serial na 9600 baudovych pinMode (13, OUTPUT); // palubná LED digitalWrite (13, LOW); // vypnutie LED
Začnite počúvať port HM10 a čítajte reťazec, kým nebude k dispozícii HM10 a neodošle údaje. Uložte údaje do reťazca.
HM10.listen (); // počúvať port HM10 while (HM10.available ()> 0) {// ak HM10 niečo pošle, prečítaj si appData = HM10.read (); inData = Reťazec (appData); // ukladanie dát vo formáte reťazca Serial.write (appData); }
Pre ladenie HM10 pomocou AT príkazov stačí napísať nasledujúci riadok kódu, ktorý odošle reťazec do HM10.
if (Serial.available ()) {// Prečítajte si vstup používateľa, ak je k dispozícii. oneskorenie (10); HM10.write (Serial.read ()); }
Ak je prijatý reťazec „F“, potom vytlačte správu na sériovom monitore a vypnite LED, ak je prijatý reťazec „N“, potom tlačte správu na sériovom monitore a blikaním LED so oneskorením 500 ms.
if (inData == "F") { Serial.println ("LED VYPNUTA"); digitalWrite (13, LOW); // vypnutie LED oneskorenia (500); } if (inData == "N") { Serial.println ("LED svieti"); digitalWrite (13, HIGH); // vypnutie LED oneskorenia (500); digitalWrite (13, LOW); // vypnutie LED oneskorenia (500); }
Týmto sa dokončuje kompletný návod, ako ovládať LED pomocou modulu Arduino a BLE HM10 Blutooth 4.0. Nezabudnite, že ak máte originálny modul HM10, nemusíte firmvéru blikať, môžete ho ihneď použiť. Pokiaľ ale používate klonovaný modul HM-10, potom vykonajte flash firmvéru na klonovanom module HM10 BLE. Ak máte pochybnosti alebo návrhy, prosím, komentujte nižšie alebo napíšte na naše fórum.