- Mikä on HM10 BLE 4.0 -moduuli?
- Ero HM10: n ja muun Bluetooth-moduulin välillä
- Tarvittavat komponentit
- Piirikaavio
- Arduino Bluetooth-ohjain (HM-10-moduuli) Android-sovellus
- Arduino UNO: n ohjelmointi ohjaamaan LEDiä HM-10 Bluetooth-moduulilla
Bluetooth on yksi suosituimmista ja helppokäyttöisimmistä langattomista tekniikoista. Muutaman vuoden aikana Bluetooth-standardia on päivitetty paljon, jotta se pysyisi nykyisen tekniikan ja tulevan tekniikan tahdissa ja vastaisi käyttäjien tarpeita. Alkaen Bluetooth-versiosta 1.0 Bluetooth-versioon 5.0, monia asioita on muutettu, mukaan lukien korkeampi tiedonsiirtonopeus, kyky käyttää IoT: tä matalalla virrankulutuksella, parempi turvallisuus jne. Bluetooth-viestinnän oppimiseksi on saatavana monia moduuleja, jotka voidaan liitetty mikro-ohjaimiin. Tällainen Bluetooth-moduuli on HM10, joka perustuu Bluetooth 4.0: een.
Mikä on HM10 BLE 4.0 -moduuli?
HM10 on sarja-BLE-moduuli (Bluetooth-Low-Energy), joka on tarkoitettu käytettäväksi pienen virrankulutuksen sovelluksissa ja joka voi kestää kauan jopa kolikon kokoisella akulla. HM10 on Bluetooth 4.0-moduuli perustuu Texas Instrumentsin CC2540 tai CC2541 BLE System SoC (System Chip). Moduulin laiteohjelmiston ja suunnittelun tekee ja hallinnoi Jinan Huamao Technology. Moduulissa on sarja- / UART-kerros, joka tekee laitteesta mahdollisuuden olla yhteydessä eri mikro-ohjaimiin. HM10 on ihanteellinen yksinkertaisten yhteyksien luomiseen ja käyttämiseen iBeaconin kanssa.
HM10: stä on tullut erittäin suosittu Bluetooth 4.0 BLE -moduuli. HM10 on vain Bluetooth 4.0 -pohjainen moduuli, joten se ei muodosta yhteyttä Bluetooth 2 / 2.1 -moduuliin, kuten HC-05, HC-06 ja muihin Bluetooth-moduuleihin. HM10: tä ohjataan sarjakuvan UART-yhteyden kautta lähetettyjen AT-komentojen kautta. HM-10 on Bluetooth Low Energy (BLE) -moduuli, jos haluat tietää enemmän BLE: stä, seuraa linkkiä. Opi myös, kuinka nRF24L01-moduulia voidaan käyttää BLE-moduulina Arduinon kanssa.
Ero HM10: n ja muun Bluetooth-moduulin välillä
Suurin ero HM10: lla on Bluetooth-versio. HM10 on Bluetooth 4.0 -moduuli, joten siinä on kaikki Bluetooth-version 4.0 ominaisuudet, kuten nopeus, suorituskyky ja kantama. HM10 tarjoaa datanopeuden jopa 24 Mbps vähän energiaa / alhainen virrankulutus. Tämän lisäksi HM10 tarjoaa 100 metrin etäisyyden avoimessa tilassa. Verrattuna muihin Bluetooth-moduuleihin, kuten HC-05, joka on Bluetooth 2.0 -pohjainen moduuli, HM10 toimii varmasti paremmin kuin HC-05. HC-05 tarjoaa vain 3 Mb / s verrattuna HM10: een, mikä on melko vähän.
Bluetooth-moduulit HC-05 ja HC-06 ovat edelleen erittäin suosittuja valmistajien ja harrastajien keskuudessa, koska ne ovat halpoja ja helppokäyttöisiä. Teimme myös monia projekteja HC-05/06: n avulla ja liitimme ne moniin muihin mikro-ohjaimiin:
- Bluetooth-moduulin käyttöliittymä ESP8266: n kanssa: LEDin hallinta
- Bluetooth HC-05: n ja STM32F103C8: n sininen pilleri: ohjaava LED
- HC-05 Bluetooth-moduulin ja AVR-mikrokontrollerin liitäntä
- Bluetooth-moduulin HC-06 ja PIC-mikrokontrollerin liitäntä
- Ääniohjatut LEDit Arduinoa ja Bluetoothia käyttämällä
- Ääniohjatut valot vadelmalla Pi
Kaikki Bluetoothiin liittyvät projektit löytyvät tältä linkiltä.
Tänään liitämme HM-10 BLE -moduulin Arduino Unoon ohjaamaan LEDiä langattomasti Bluetooth-protokollaa käyttämällä. On / Off-komennot lähettää älypuhelin.
Tarvittavat komponentit
Laitteisto:
- Arduino UNO
- HM10 Bluetooth-moduuli
- Vastukset (1 kΩ, 470 Ω)
- Neulalangat
Ohjelmisto:
- Arduino IDE
- Arduino Bluetooth-ohjain (HM-10-moduuli) Android-sovellus
- Android-älypuhelin
Piirikaavio
Kytkentäkaavio Arduinon ja HM-10 Bluetooth-moduulin yhdistämiseksi on hyvin yksinkertainen, kuten alla on esitetty.
Ennen kuin aloitat projektin, varmista, että HM-10-moduulisi on aito HM-10-moduuli. Kiinassa on saatavana laajasti kloonattuja HM-10-moduuleja. Jos haluat tunnistaa aidon ja kloonatun HM-10-moduulin välisen eron, katso vain 32 KHz: n Crystal-oskillaattorin läsnäolo HM-10-kortissa. Jos kristalloskillaattori on läsnä, se on aito HM-10-moduuli eikä sinun tarvitse vaihtaa laiteohjelmistoa. Mutta jos et näe kristalloskillaattoria sen sijasta, se on kloonattu HM10-moduuli ja sinun on vaihdettava kloonatun HM-10-moduulin laiteohjelmisto. Muuttamatta HM-10-laiteohjelmistoa et voi käyttää HM-10-moduulia AT-komennoilla eikä muodostaa laiteparia älypuhelinten kanssa. Tässä käytämme myös kloonimoduulia, joten välähdimme sen laiteohjelmistoa ennen yhdistämistä Ardruinoon. Jos haluat vaihtaa kloonatun HM-10-moduulin laiteohjelmistoa, seuraa yksinkertaisesti opetusohjelmaa Kuinka vaihtaa tai salamata klooni HM-10 -moduulin firmware.
Arduino Bluetooth-ohjain (HM-10-moduuli) Android-sovellus
Arduino Bluetooth-ohjain (HM-10-moduuli) on android-sovellus, joka on saatavilla ilmaiseksi Google Play -kaupasta. Tällä sovelluksella on helppo ja yksinkertainen käyttöliittymä HM-10 BLE -moduulille. Testauksen aikana se löysi HM-10: n nopeasti ja se liittyi välittömästi HM-10: een. Sovelluksessa on hienoja ominaisuuksia, kuten voit luoda painikkeen ja mukauttaa sitä mukautetulla nimellä ja toiminnoilla. Täällä kerrotaan, miten luodaan kaksi painiketta tässä Bluetooth-ohjainsovelluksessa Arduinoon liitetyn LEDin kytkemiseksi päälle ja pois päältä.
Arduino Bluetooth-ohjaimen (HM-10-moduuli) Android-sovelluksen asentaminen:
- Lataa sovellus Google Play Kaupasta.
- Sovelluksen etusivu näyttää alla olevalta, josta löydät ominaisuuksia, kuten laitteen yhdistäminen, hakukuvake, poistokuvake, laitteen tila, tekstin lähettäminen, mallin lisääminen jne. Aloita etsimällä laitetta joko napsauttamalla hakukuvaketta tai napsauttamalla kolmeen pisteeseen oikeassa yläkulmassa ja valitse Yhdistä laite .
- Kaikki käytettävissä olevat laitteet näytetään näytöllä. Valitse oikea HM-10-moduuli.
- Nyt HM-10 on yhdistetty onnistuneesti ja voit nähdä HM-10: n tilan näytön yläosassa.
- Voit joko lähettää tekstin tai merkkijonon suoraan kirjoittamalla tekstiosioon ja painamalla nuolta lähettääksesi tai voit luoda mukautetun mallin.
- Mukautetun mallin luominen ajan säästämiseksi. Napsauta oikeassa yläkulmassa olevaa + -kuvaketta ja täytä tiedot. " Nimi " on painikkeen nimi, " Teksti " -kenttä on tekstiä tai merkkijonoa varten, joka lähetetään HM-10: lle ja " Kuvaus " on vain painikkeen kuvaus siitä, kuinka painike toimii.
- Ensinnäkin luoda painiketta puolestaan LED ON ja antaa sille vihreä väri. Painike lähettää N-kirjeen HM-10: lle, joka sytyttää Arduinoon liitetyn LEDin. Luo samalla tavalla painike LED OFF -tilaan ja anna sille punainen väri.. Painike lähettää F-kirjeen HM-10: lle, joka sammuttaa Arduinoon liitetyn LEDin.
- Nyt näet kaksi tekstikentän alapuolella luotua painiketta. Jos haluat nyt ohjata LEDiä, napsauta vain painikkeita.
Tämä viimeistelee Android-sovelluksen määrittämisen HM-10-moduulin ohjaamiseksi. Nyt aloitamme Arduino Unon ohjelmoinnilla hahmojen hakemiseksi Android-sovelluksesta.
Arduino UNO: n ohjelmointi ohjaamaan LEDiä HM-10 Bluetooth-moduulilla
Kuten aina, täydellinen ohjelma esittelyvideolla löytyy tämän opetusohjelman lopusta. Arduino UNO: n ohjelmointi tälle projektille ei vaadi paljon vaivaa eikä kirjastoa. Voit käyttää laitteiston sarja- ja ohjelmistosarjakirjastoa. Jos käytät ohjelmistosarjaa, sisällytä vain ohjelmistosarjakirjasto, muuten jatka laitteistosarjaa. Tässä projektissa käytämme SoftwareSerialia. Joten aloita sisällyttämällä Software Serial Library. Nastat Rx ja Tx on kytketty Arduinon 2 ja 3 nastaan.
#sisältää
Kahta muuttujaa käytetään HM10: stä ja Android-sovelluksesta vastaanotettujen tietojen tallentamiseen.
char appData; Merkkijono inData = "";
Vain käynnistää laitteen ja ohjelmiston Serial 9600 siirtonopeus ja tulostaa joitakin virheenkorjaus lausuntoja. LED-tappi asetetaan lähdöksi ja aluksi se on pois päältä.
Sarjan alku (9600); Serial.println ("HM10-sarja alkoi 9600: sta"); HM10 alkaa (9600); // aseta HM10-sarja 9600 baudinopeudella pinMode (13, OUTPUT); // sisäinen LED digitalWrite (13, LOW); // sammuta LED
Aloita HM10-portin kuuntelu ja lue merkkijono, kunnes HM10 on käytettävissä ja lähettää tiedot. Tallenna tiedot merkkijonoon.
HM10. Kuuntele (); // kuuntele HM10-porttia, kun (HM10.available ()> 0) {// jos HM10 lähettää jotain, lue appData = HM10.read (); inData = Merkkijono (appData); // tallenna tiedot merkkijonomuodossa Serial.write (appData); }
Sillä debuggereiden HM10 AT komennot vain kirjoittaa alla koodirivi joka lähettää merkkijono HM10.
if (Serial.available ()) {// Lue käyttäjän syötteet, jos ne ovat käytettävissä. viive (10); HM10.write (Sarjalukema ()); }
Jos vastaanotettu merkkijono on “F”, tulosta sitten viesti sarjavalvontaan ja kytke led pois päältä, jos vastaanotettu merkkijono on “N”, tulosta sitten viesti sarjavalvontaan ja Blink-johto 500 ms: n viiveellä.
if (inData == "F") { Sarja.println ("LED POIS"); digitalWrite (13, LOW); // sammuta LED- viive (500); } if (inData == "N") { Sarja.println ("LED PÄÄLLÄ"); digitalWrite (13, HIGH); // sammuta LED- viive (500); digitalWrite (13, LOW); // sammuta LED- viive (500); }
Tämä on täydellinen opetusohjelma LED-valojen ohjaamiseksi Arduino- ja BLE HM10 Blutooth 4.0 -moduuleilla. Muista jälleen, että jos sinulla on aito HM10-moduuli, sinun ei tarvitse välähtää sen laiteohjelmistoa, sitä voidaan käyttää heti. Mutta jos käytät kloonattua HM-10-moduulia, salama laiteohjelmisto klooni HM10 BLE -moduulissa. Jos sinulla on epäilyksiä tai ehdotuksia, kommentoi alla tai kirjoita foorumillemme.