Satura rādītājs:
Video: TextPlayBulb: REST iespējota atskaņošana Bulb, izmantojot Raspberry Pi 3, BLE un telegrammu: 3 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Šajā pamācībā ir parādīts, kā izveidot savienojumu ar PlayBulb Color Bluetooth LED lampu, izmantojot Python, Raspberry Pi 3 un Bluetooth bibliotēku, kā arī paplašināt vadīklas, izmantojot REST API IoT scenārijam, kā arī projekts parāda, kā pagarināt REST API, lai kontrolētu PlayBulb pār IM teksta klientu, piem Telegramma, piemēram, saruna ar savu automatizēto māju, izmantojot tekstu.
Šis projekts ir balstīts uz 3 moduļiem:
- pyBulbDriver: izveidojiet savienojumu ar PlayBulb, izmantojot BLE gatttool un python.
- pyBulbServer: izmantojot pyBulbDriver, lai atklātu atskaņotāja vadību, izmantojot REST API.
- pyBulbMessenger: savienojums ar telegrammu robotu, lai nosūtītu un saņemtu komandas, izmantojot jebkurā viedtālrunī instalētu telegrammu klientu, un izmantojot REST API, lai izdotu komandas PlayBulb.
Jūs varat klonēt projektu, izmantojot git repozitoriju:
Projekta mērķis:
Lai izveidotu pamata rīku mijiedarbībai ar spuldzi, izmantojot dažādas metodes, piemēram, īsziņu sūtīšanu, nākotnes scenāriji varētu ietvert runas komandas, žestu rādīšanu lampai utt.
Citi resursi, kas izmantoti, lai izveidotu šo pamācību:
- PlayBulb krāsu Bluetooth protokols:
- Python savienošana ar Playbulb, izmantojot Bluetooth:
- Telegrammu robota iestatīšana:
Ieguldījums
pyBulbDriver ir paplašināts, lai būtu elastīgāks un parametrizēts, lai nākotnē to būtu vieglāk pagarināt, veidojot scenāriju, lai jūs varētu vijolīt ar īsziņu sūtīšanu. Vienkāršs interfeiss testēšanai un izklaidēšanai.
Ierobežojums
Draiveris ir rakstīts PlayBulb Color, citiem PlayBulb veidiem, piem. Oriģināls vai svece, Bluetooth kods pyBulbDriver ir jāmaina saskaņā ar iepriekš minēto protokolu.
Jums jāreģistrē telegrammas konts un jāsaņem api atslēga, kuru pievienojat pyBulbMessenger.py, sekojiet telegrammas robota iestatīšanai citos resursos.
1. darbība: projekta iestatīšana
1. API atslēgas iegūšana no Telegram
> Izpildiet pašreizējos norādījumus, lai iegūtu savu API atslēgu
> Pievienojiet api atslēgu mainīgajam api vietnē pyBulbMessenger.py
2. PlayBulb nosaukuma iestatīšana pyBulbDriver
> Lai gatttool atrastu rakstīšanas ierīci, iestatiet skenējamo ierīces nosaukumu, izmantojot pyBulbDriver.scanForBulb ("PLAYBULB COLOR"). Piemēru var atrast vietnē pyBulbServer.py, lai iestatītu savu REST serveri
3. Lai sāktu projektu
> Lai sāktu īsziņu sūtīšanu, vispirms ir jāuzsāk pyBulbServer.py, pēc tam - pyBulbMessenger.py. Jūs varat pārbaudīt pyBulbServer komandas, izmantojot CURL.
4. Nepieciešamais materiāls:
> Raspberry Pi 3 un PlayBulb Color vai PlayBulb svece
> Telegrammas instalēšana operētājsistēmai Android vai iOS
5. Rasberry Pi 3 LE Bluetooth instalēšana:
www.elinux.org/RPi_Bluetooth_LE
2. darbība: iepazīstieties ar kodu
pyBulbDriver.py
pyBulbDriver satur draiveru klases savienošanai ar PlayBulb, izmantojot BLE
pyBulbDriver var izmantot arī visiem citiem vispārējiem projektiem, jo tajā ir tikai kods, lai skenētu un iestatītu playBulb savienojumus.
Galvenās lietotāja lietojumprogrammu saskarnes API:
- scanForBulb (ierīces nosaukums: virkne)> Lai meklētu PlayBulb vai PlayBulbs, izmantojot ierīces nosaukumu
- setBulbColor (s: int, r: int, g: int, b: int)> Lai definētu spilgtuma un RGB krāsu (no 0 līdz 255) vērtības
-
setBulbEffect (s: int, r: int, g: int, b: int, mode: int, onbeat: int, offbeat: int)> Līdzīgi kā setBulbColor, bet ietver efekta veidu un ātrumu. Lai uzzinātu vairāk, pārbaudiet krāsu protokola efektu sadaļu
Šajā klasē jūs atradīsit arī citas palīgmetodes, kas paredzētas datu integritātes pārbaudei, nevis lietotāja saskarnei
- convertRGBToHexaCmd (s, r, g, b)
- convertIntToHex (skaitlis)
- checkModeAndSpeed (režīms, nepareizs, ieslēgts)
- pārbaudes RGBInBounds (s, r, g, b)
pyBulbServer.py
pyBulbServer pakļauj lietotnes saskarni RESTful hipersaitēm, izmantojot PUT un JSON, lai nosūtītu un saņemtu datus uz pyBulbDriver. Arī BLE savienojuma skenēšana un inicializēšana tiek veikta, kad serveris ir aktivizēts.
pyBulbResource (Resource) novirza zvanus uz REST serveri, izmantojot krāsu un efektu, lai definētu bulb komandu.
Piemērs, lai komandētu efektu:
127.0.0.1/bulb/effect
JSON POST> {dati ':' {"s": 0, "r": 255, "g": 255, "b": 255, "m": 1, "ieslēgts": 15, "izslēgts": 15 } '}
pyBulbMessenger.py
Visbeidzot, pyBulbMessenger ir atbildīgs par Telegram robota sasaisti ar jūsu telegrammu viedtālruņa klientu. Lai iegūtu sīkāku informāciju par to, kā konfigurēt un izveidot savienojumu ar telegrammu robotu, skatiet vietni
cmdHandler (robots, atjauninājums) ir vieta, kur tiek definētas teksta komandas un savienotas ar PlayBulb, izmantojot RESTful API.
Pašlaik projektā ir tikai teksts, vēl viens mērķis ir arī nosūtīt ierakstītas balss ziņas, kas tiktu nosūtītas uz runas atpazīšanas ierīci, lai aktivizētu citas komandas (vēl nav ieviestas).
3. solis: secinājums
Pašreizējais arhitektūras dizains vairāk bija saistīts ar vienkāršošanu, nevis mērogojamību. Joprojām trūkst grupas savienojumu, kā arī tiek pētītas citas lietojumprogrammas, kas attiecas uz īsziņu sūtīšanu īstām komandām vai rotaļīgai mijiedarbībai.
Abonējot git repo vai sekojot, par šiem atjauninājumiem tiks sniegta sīkāka informācija. Šāda projekta iemesls bija PlayBulb saskarne un RESTful saskarnes izveide, lai atvieglotu attīstību IoT (lietu interneta scenārijs), bet arī, lai atvērtu iespēju izmantot dažādas modalitātes, izmantojot IM klienta telegrammu, piemēram, attēlus, balsi un tekstu, lai mijiedarbotos ar ierīcēm no pētniecības viedokļa.
Ieteicams:
Raspberry Pi DIY tālvadības ielaušanās detektora sistēma ar telegrammu: 7 soļi
Raspberry Pi DIY tālvadības ielaušanās detektora sistēma ar telegrammu: Šajā projektā jūs izveidosit iebrucēja noteikšanas ierīci, kas pārbaudīs, vai kāds atrodas jūsu mājā / istabā, kad atrodaties ārā, izmantojot PIR sensoru; ja PIR sensors atklāj kādu, tas prasīs iebrucēja attēla (-u) kopums. Bilde
IoT APIS V2 - autonoma IoT iespējota automatizēta augu apūdeņošanas sistēma: 17 soļi (ar attēliem)
IoT APIS V2 - Autonoma IoT iespējota automatizēta augu apūdeņošanas sistēma: Šis projekts ir mana iepriekšējā pamācības evolūcija: APIS - automatizēta augu apūdeņošanas sistēma uzraudzīt augu attālināti. Šādi
Alexa iespējota tālvadības pults (izmantojot WEMO D1 Mini): 3 soļi
Alexa iespējota tālvadības pults (izmantojot WEMO D1 Mini): šī ir iepriekšējās ziņas atjaunināta versija: https: //www.instructables.com/id/Voice-Activated-R..Agrākajā versijā es izmantoju Geetech balss modulis regulāras garāžas durvju atvērēja tipa tālvadības pults vadīšanai. Šajā pamācībā esmu nomainījis vo
Runājošais Arduino - MP3 atskaņošana ar Arduino bez moduļa - Mp3 faila atskaņošana no Arduino, izmantojot PCM: 6 soļi
Runājošais Arduino | MP3 atskaņošana ar Arduino bez moduļa | Mp3 faila atskaņošana no Arduino, izmantojot PCM: Šajā pamācībā mēs iemācīsimies atskaņot mp3 failu ar arduino, neizmantojot nevienu audio moduli, šeit mēs izmantosim PCM bibliotēku Arduino, kas atskaņo 16 bitu PCM ar 8 kHz frekvenci, tāpēc ļauj to izdarīt
Viedās mājas telegrammu robots ar Nodemcu (esp8266, relejs, Ds18b20): 8 soļi
Smart House Telegram Bot ar Nodemcu (esp8266, Relay, Ds18b20): šajā apmācībā es parādīšu, kā izveidot telegrammu robotu un vadības māju, izmantojot to. Bet vispirms abonējiet manu Telegram kanālu un atklājiet jaunus projektus ātrāk nekā citi. Tā ir motivācija man. Ejam