- Tarvittavat komponentit
- ESP8266 HC-05 Bluetooth-moduulin piirikaavio
- HC-05 Bluetooth-moduuli
- Sarja-Bluetooth-päätelaitteen (Android-sovellus) käyttäminen
- NodeMCU ESP8266: n ohjelmointi Bluetooth-liitäntään
Nykyään Bluetoothista on tullut olennainen osa digitaalisia laitteita, ja se on sisäänrakennettu useimmissa laitteissa, kuten älypuhelimessa, kannettavassa tietokoneessa, tietokoneessa, kamerassa, kelloissa, kuntokeskuksissa ja monissa muissa laitteissa. Bluetooth on aina ollut hallitseva protokolla langattomassa viestinnässä siitä lähtien, kun se löydettiin. Vaikka Bluetooth-tekniikka on pohjimmiltaan kaapelinvaihtojärjestelmä, se käyttää myös yleistä siltaa olemassa oleviin tietoverkkoihin ja tilapäistä yhteysmekanismia useille laitteille eri kokoonpanoissa. Olemme käyttäneet Bluetooth-moduuleja HC05 ja HC06 monien muiden mikrokontrollerien kanssa saadakseen heidät kommunikoimaan langattomasti:
- Bluetooth HC-05: n ja STM32F103C8: n sininen pilleri: ohjaava LED
- HC-05 Bluetooth-moduulin ja AVR-mikrokontrollerin liitäntä
- Android-ohjattava robotti, joka käyttää 8051-mikrokontrolleria
- Raspberry Pi GPIO: n hallinta Android-sovelluksella Bluetoothin kautta
- Bluetooth-ohjattu leluauto Arduinoa käyttämällä
Tänään liitämme HC-05 Bluetooth-moduulin suosittuun Wi-Fi-moduuliin ESP8266 ja ohjaamme LEDiä langattomasti lähettämällä komentoja Bluetoothin kautta. Tämä LED voidaan korvata releellä ja vaihtovirtalaitteella kodin automaatio-sovelluksen rakentamiseksi.
Tarvittavat komponentit
Laitteisto:
- SolmuMCU ESP8266
- HC-05 Bluetooth-moduuli
Ohjelmisto:
- Arduino IDE
- Sarja-Bluetooth-pääte (Android-sovellus): Bluetooth-tietojen tarkkailu älypuhelimessa.
ESP8266 HC-05 Bluetooth-moduulin piirikaavio
Kytkentäkaavio yhdistää Bluetooth-moduuli HC-05 NodeMCU ESP8266: een on hyvin yksinkertainen ja esitetty alla:
ESP8266: n kanssa tarvitaan ulkoinen Bluetooth-moduuli, koska sillä ei ole sisäänrakennettua Bluetoothia, kuten ESP32. ESP32: ssä on sisäänrakennettu Bluetooth Low Energy (BLE) ja Classic Bluetooth, joille olemme aiemmin käsittäneet muutamia opetusohjelmia:
- ESP32 BLE -palvelin - GATT-palvelu akun varaustason osoittamiseen
- ESP32 BLE Client - Yhdistäminen Fitness Bandiin polttimon laukaisemiseksi
- Sarja-Bluetoothin käyttö ESP32: ssa
HC-05 Bluetooth-moduuli
HC-05 on sarjamuotoinen Bluetooth-moduuli. Se voidaan määrittää AT-komennoilla. Se voi toimia kolmessa eri kokoonpanossa (Master, Slave, Loop back). Projektissamme käytämme sitä orjana. HC-05-moduulin ominaisuuksiin kuuluu
- Tyypillinen herkkyys -80 dBm.
- Oletussiirtonopeus: 9600 bps, 8 databittiä, 1 pysäytysbitti, ei pariteettia.
- Automaattinen pariliitoksen PIN-koodi: ”1234” tai “0000” oletus-PIN-koodi.
- Siinä on 6 nastaa.
- Vcc- ja Gnd-nastoja käytetään HC-05: n virtalähteeseen.
- Tx- ja Rx-nastoja käytetään kommunikointiin mikrokontrollerin kanssa.
- Ota tappi käyttöön HC-05-moduulin aktivoimiseksi. kun se on vähissä, moduuli poistetaan käytöstä
- Tilanasta toimii tilan osoittimena. Kun sitä ei ole pariliitetty / yhdistetty mihinkään muuhun Bluetooth-laitteeseen, LED vilkkuu jatkuvasti. Kun se on kytketty / pariksi jonkin muun Bluetooth-laitteen kanssa, LED vilkkuu jatkuvasti 2 sekunnin viiveellä.
Jos haluat lisätietoja Bluetooth-moduulista, käy läpi muut Bluetooth-projektit.
Sarja-Bluetooth-päätelaitteen (Android-sovellus) käyttäminen
Tämän sovelluksen käyttö on erittäin helppoa ja vaatii muutaman askeleen. Kuvakaappaukset on annettu alla vaiheittain. Yhdistä vain HC-05 älypuhelimen kanssa. Oletuskoodi on '0000' tai '1234', mutta useimmiten '1234' toimii.
- Lataa ensin ja asenna sovellus. Siirry sitten laitteisiin etsimään HC-05-moduuli. Valitse sovelluksesta haettu HC-05-moduuli. Jos sitä ei löydy, tarkista, onko HC-05: n virta oikein.
- Kun napsautat HC-05-laitetta, se muodostaa yhteyden. Kirjoita nyt mikä tahansa viesti viestiruutuun ja lähetä se. Se tulostetaan Arduino-sarjamonitorille.
NodeMCU ESP8266: n ohjelmointi Bluetooth-liitäntään
NodeMCU ESP8266: n ohjelmoimiseksi ArduinoIDE-ohjelmalla liitä se vain kannettavasta tietokoneesta tai tietokoneesta mikro-USB-kaapelilla ja avaa Arduino IDE. Tässä opetusohjelmassa käytetään laitteistosarjaa ja ohjelmistosarjaa. Laitteistosarjaa käytetään tietojen lukemiseen ja kirjoittamiseen Arduino Serial Monitoriin ja Sofware Serialia käytetään yhteydenpitoon HC-05: n kanssa. Kuten aina, täydellinen koodi ja esittelyvideo annetaan opetusohjelman lopussa.
Sisällytä aluksi Software Serial -kirjasto, koska sitä käytetään tässä opetusohjelmassa.
#sisältää
Määritä RX- ja TX-nasta ohjelmistojen sarjaliikenteelle, määritä myös NodeMCU: hun kytketty led-tappi. Käytämme NodeMCU: n sisäistä LEDiä, joka on tapissa D4.
SoftwareSerial btSerial (D2, D3); // RX, int led = D4;
Käynnistä ohjelmisto- ja laitteistosarja 9600 baudinopeudella. Aseta Led Pin -tulokseksi. Tulosta tervetuloa ja virheenkorjausviesti.
Sarjan alku (9600); btSerial.begin (9600); pinMode (D4, OUTPUT); Serial.println ("Aloitettu…");
Ensinnäkin, lue Bluetooth-moduulista ja määritä tapaus, että jos Bluetooth-moduuli vastaanottaa "B" puhelimesta, aloita sitten vilkkuva led kytkettynä NodeMCU: n D4: ään, jos se saa "S", lopeta sitten vilkkuva led. Emme käytä viivettä () tässä. Mutta Arduino 'millis' ei käytetä estämään Arduinon suorituskykyä.
if (btSerial.available ()> 0) { char data = btSerial.read (); kytkin (data) { tapaus 'B': ledB = "vilkkuu"; tauko; tapaus 'S': ledB = "stop"; tauko; oletus: tauko; } }
Millit on määritetty ja asetettu viive 500ms: iin, eli led vilkkuu 500 ms: n välein. Voit myös määrittää led-viiveen muuttamalla välin arvoa. Johtanut valtio vaihdetaan.
allekirjoittamaton pitkä virtaMillis = millis ();
if (ledB == "vilkkuu") { Serial.println ("vilkkuu alkoi"); if (currentMillis - edellinenMillis> = intervalli) { previousMillis = currentMillis; jos (ledState == LOW) { ledState = KORKEA; } else { ledState = LOW; } digitalWrite (led, ledState); } }
Ja tämä saa NodeMCU: n ohjelmoimaan siten, että LED vilkkuu langattomasti Bluetoothin avulla. Voit myös vaihtaa ohjelmaa tekemään erilaisia tehtäviä LED-valolla, kuten LED voidaan korvata releellä AC-laitteella Bluetooth-kotiautomaatioprojektin tekemiseksi. Jos sinulla on epäilyksiä tai ehdotuksia, ota yhteyttä foorumillemme tai kommentoi alla.