- Mi az a HM10 BLE 4.0 modul?
- Különbség a HM10 és más Bluetooth modulok között
- Szükséges alkatrészek
- Kördiagramm
- Arduino Bluetooth vezérlő (HM-10 modul) Android alkalmazás
- Az Arduino UNO programozása a LED vezérlésére a HM-10 Bluetooth modul segítségével
A Bluetooth az egyik legnépszerűbb és legkönnyebben használható vezeték nélküli technológia. Az elmúlt évek során a Bluetooth szabvány számos fejlesztése megtörtént, hogy lépést tarthasson a jelenlegi technológiával és a jövő technológiájával, valamint kielégítse a felhasználók igényeit. A Bluetooth 1.0 verziótól a Bluetooth 5.0 verzióig kezdve sok minden megváltozott, beleértve a nagyobb adatátviteli sebességet, az IoT-k használatának képességét alacsony áramfogyasztással, jobb biztonsággal stb. A Bluetooth kommunikáció elsajátításához számos modul áll rendelkezésre, amelyek összekapcsolva a mikrovezérlőkkel. Ilyen Bluetooth modul a HM10, amely a Bluetooth 4.0-ra épül.
Mi az a HM10 BLE 4.0 modul?
A HM10 egy soros BLE modul (alacsony energiafogyasztású Bluetooth), amelyet alacsony energiafogyasztású alkalmazásokhoz terveztek használni, és érme méretű akkumulátorral is sokáig használható. A HM10 egy Bluetooth 4.0 modul, amely a Texas Instruments CC2540 vagy CC2541 BLE System SoC (System on Chip) rendszeren alapul. A modul firmware-jét és kialakítását a Jinan Huamao Technology készíti és kezeli. A modul soros / UART réteggel érkezik, amely lehetővé teszi az eszköz számára, hogy képes legyen interakcióba lépni a különböző mikrovezérlőkkel. A HM10 ideális egyszerű kapcsolatok létrehozásához és iBeacon-ként vagy vele történő használatához.
A HM10 nagyon népszerű Bluetooth 4.0 BLE modullá vált. A HM10 csak Bluetooth 4.0 alapú modul, így nem fog csatlakozni olyan Bluetooth 2 / 2.1 modulokkal, mint a HC-05, HC-06 és más Bluetooth modulok. A HM10-et a soros UART-kapcsolaton keresztül küldött AT-parancsok vezérlik. A HM-10 egy Bluetooth Low Energy (BLE) modul, ha többet szeretne tudni a BLE-ről, kövesse a linket. Ismerje meg, hogyan lehet egy nRF24L01 modult használni BLE modulként az Arduino-val.
Különbség a HM10 és más Bluetooth modulok között
A HM10 legfőbb különbsége a Bluetooth verzió. A HM10 egy Bluetooth 4.0 modul, így a Bluetooth 4.0 összes funkciójával, például sebességgel, átviteli sebességgel és hatótávolsággal rendelkezik. A HM10 akár 24 Mbps adatátviteli sebességet kínál alacsony energia / alacsony energiafogyasztás mellett. Ezzel együtt a HM10 100 méteres hatótávolságot kínál a nyílt térben. Összehasonlítva más Bluetooth modulokkal, mint például a HC-05, amely egy Bluetooth 2.0 alapú modul, a HM10 bizonyosan jobban teljesít, mint a HC-05. A HC-05 csak 3 Mbps-ot kínál a HM10-hez képest, ami meglehetősen kevesebb.
A HC-05 és HC-06 Bluetooth modul továbbra is nagyon népszerű a gyártók és a hobbizók körében, mivel olcsóak és könnyen kezelhetők. Számos projektet készítettünk a HC-05/06 felhasználásával, és sok más mikrovezérlővel összekötöttük őket:
- Bluetooth modul összekapcsolása az ESP8266-tal: LED vezérlése
- A Bluetooth HC-05 összekapcsolása az STM32F103C8 kék pirulával: vezérlő LED
- Összekötő HC-05 Bluetooth modul AVR mikrokontrollerrel
- A HC-06 Bluetooth modul összekapcsolása PIC mikrovezérlővel
- Hangvezérelt LED-ek Arduino és Bluetooth használatával
- Hangvezérelt fények Raspberry Pi használatával
Az összes Bluetooth-os projekt megtalálható ezen a linken.
Ma összekapcsoljuk a HM-10 BLE modult az Arduino Uno-val, hogy vezeték nélkül vezérelhessünk egy LED-et Bluetooth protokoll segítségével. A Be / Ki parancsokat Smartphone küldi.
Szükséges alkatrészek
Hardver:
- Arduino UNO
- HM10 Bluetooth modul
- Ellenállások (1 kΩ, 470 Ω)
- Jumper huzalok
Szoftver:
- Arduino IDE
- Arduino Bluetooth vezérlő (HM-10 modul) Android App
- Android okostelefon
Kördiagramm
Az Arduino és a HM-10 Bluetooth modul csatlakoztatásának kapcsolási rajza nagyon egyszerű, az alábbiak szerint.
A projekt megkezdése előtt győződjön meg arról, hogy a HM-10 modulja eredeti HM-10 modul. Széles körben állnak rendelkezésre kínai klónozott HM-10 modulok. Az eredeti és a klónozott HM-10 modul közötti különbség azonosításához csak nézze meg a 32KHz-es kristályoszcillátor jelenlétét a HM-10 alaplapon. Ha a kristályoszcillátor jelen van, akkor az egy eredeti HM-10 modul, és nem kell cserélnie a firmware-t. De ha nem látja a kristályoszcillátort a helyén, akkor ez egy klónozott HM10 modul, és meg kell változtatnia a klónozott HM-10 modul firmware-jét. A HM-10 firmware megváltoztatása nélkül nem férhet hozzá a HM-10 modulhoz AT parancsokkal, és nem is párosíthatja okostelefonokkal. Itt használjuk a klón modult is, így villantottuk a firmware-jét, mielőtt összekötöttük volna Ardruinóval. A klónozott HM-10 firmware cseréjéhez egyszerűen kövesse a bemutatónkat: A HM-10 klón firmware-jének cseréje vagy villogása.
Arduino Bluetooth vezérlő (HM-10 modul) Android alkalmazás
Az Arduino Bluetooth Controller (HM-10 modul) egy androidos alkalmazás, amely ingyenesen elérhető a Google Play Áruházban. Ez az alkalmazás könnyű és egyszerű kezelőfelülettel rendelkezik a HM-10 BLE modulhoz. A tesztelés során gyorsan megtalálta a HM-10-et, és azonnal kapcsolódott a HM-10-hez. Az alkalmazásnak van néhány jó funkciója, például létrehozhat egy gombot, és testreszabhatja egyéni névvel és funkciókkal. Itt megtudhatjuk, hogyan hozhatunk létre két gombot ebben a Bluetooth vezérlő alkalmazásban az Arduino-val összekapcsolt LED be- és kikapcsolásához.
Az Arduino Bluetooth vezérlő (HM-10 modul) Android alkalmazásának beállítása:
- Töltse le az alkalmazást a Google Play Áruházból.
- A Honlap az app fog kinézni az alábbiakban, ahol megtalálható funkciók, mint a Connect Device keresési ikont, a Törlés ikon, Eszköz állapota, szöveges, hozzáadása sablon stb Indítás keresést a készülék akár kattintva Search Icon vagy rákattint három pontra a jobb felső sarokban, és válassza az Eszköz csatlakoztatása lehetőséget .
- Az összes rendelkezésre álló eszköz megjelenik a képernyőn. Válassza ki a megfelelő HM-10 modult.
- Most a HM-10 sikeresen csatlakozik, és a képernyő tetején láthatja a HM-10 állapotát.
- Most vagy közvetlenül küldhet szöveget vagy karakterláncot, ha a szövegrészre ír és a nyílra kattintva elküldi, vagy létrehozhat egy egyéni sablont.
- Egyéni sablon létrehozása időmegtakarítás érdekében. Kattintson a jobb felső sarokban található „ + ” ikonra, és töltse ki a részleteket. A „ Név ” a gomb neve, a „ Szöveg ” mező a HM-10-hez elküldött szövegekhez vagy karakterláncokhoz használható, a „ Leírás ” pedig csak a gomb leírása, amely szerint a gomb fog működni.
- Először hozzon létre egy gombot a LED bekapcsolásához és adjon neki zöld színt. A gomb „N” levelet küld a HM-10-nek, amely bekapcsolja az Arduinóhoz csatlakoztatott LED-et. Hasonlóképpen hozzon létre egy gombot a LED kikapcsolásához és adjon piros színt.. A gomb „F” levelet küld a HM-10-nek, amely kikapcsolja az Arduino-hoz csatlakoztatott LED-et.
- Most láthatja a közvetlenül a Szövegmező alatt létrehozott két gombot. Most, ha vezérelni szeretné a LED-et, kattintson a Gombokra.
Ezzel befejeződik az androidos alkalmazás beállítása a HM-10 modul vezérléséhez. Most kezdjük az Arduino Uno programozásával, hogy megszerezzük a karaktereket az Android App-ból.
Az Arduino UNO programozása a LED vezérlésére a HM-10 Bluetooth modul segítségével
Mint mindig, a bemutató videóval ellátott teljes program a bemutató végén található. Az Arduino UNO programozása ehhez a projekthez nem igényel sok erőfeszítést, sem könyvtárat. Használhatja a hardver soros és a szoftver soros könyvtárat. Ha szoftveres soros szoftvert használ, akkor csak a szoftveres soros könyvtárat használja, különben folytassa a hardveres sorozattal. Ebben a projektben a SoftwareSerial programot használjuk. Tehát kezdje a Software Serial Library használatával. Az Rx és Tx csapok az Arduino 2 és 3 csapjánál vannak összekötve.
#include
A két változót a HM10 és az android alkalmazásból kapott adatok tárolására használják.
char appData; String inData = "";
Csak indítsa el a Hardver és szoftver sorozatot 9600 baud sebességgel, és nyomtasson néhány hibakeresési utasítást. A LED tű kimenetként van beállítva, és kezdetben ki van kapcsolva.
Serial.begin (9600); Serial.println ("A HM10 sorozat 9600-nál kezdődött"); HM10 kezdete (9600); // a HM10 soros beállítása 9600 baud sebességgel pinMode (13, OUTPUT); // fedélzeti LED digitalWrite (13, LOW); // kikapcsolja a LED-et
Kezdje el hallgatni a HM10 portot, és olvassa el a karakterláncot, amíg a HM10 elérhető és el nem küldi az adatokat. Mentse az adatokat karakterláncba.
HM10.listen (); // hallgassa meg a HM10 portot, miközben (HM10.available ()> 0) {// ha a HM10 küld valamit, akkor olvassa el az appData = HM10.read (); inData = Karakterlánc (appData); // az adatok karakterlánc formátumba mentése Serial.write (appData); }
A HM10 AT parancsokkal történő hibakereséséhez írja be az alábbi kódsort, amely elküldi a karakterláncot a HM10-nek.
if (Serial.available ()) {// Olvassa el a felhasználói bevitelt, ha elérhető. késés (10); HM10.write (Soros.olvasás ()); }
Ha a kapott karakterlánc „F”, akkor nyomtasson ki egy üzenetet a soros monitoron, és kapcsolja ki a ledet, ha a kapott karakterlánc „N”, majd nyomtasson egy üzenetet a soros monitorra és a Blink ledet 500 ms késéssel.
if (inData == "F") { Serial.println ("LED OFF"); digitalWrite (13, LOW); // kikapcsolja a LED késleltetését (500); } if (inData == "N") { Soros.println ("LED világít"); digitalWrite (13, HIGH); // kikapcsolja a LED késleltetését (500); digitalWrite (13, LOW); // kikapcsolja a LED késleltetését (500); }
Ezzel elkészült a teljes útmutató a LED vezérléséről az Arduino és a BLE HM10 Blutooth 4.0 modul használatával. Ismét ne feledje, hogy ha valódi HM10 modulja van, akkor nem kell villognia annak firmware-jével, azonnal használható. De ha klónozott HM-10 modult használ, akkor villogjon a firmware a HM10 BLE klónon. Ha bármilyen kétsége van vagy javaslata van, kérjük, tegye meg észrevételeit, vagy írjon fórumunknak.