Satura rādītājs:
- 1. darbība. Aparatūra
- 2. darbība: programmatūra
- 3. darbība: pievienojiet ierīces / pogu kodus
- 4. darbība: tīmekļa vadība un makro
- 5. darbība: Alexa balss vadība, izmantojot IFTTT
- 6. darbība: vietējā Alexa balss prasme
- 7. darbība: Alexa aktivizējiet detektoru
Video: ESP-12 infrasarkanais pūtējs: 7 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:58
Infrasarkanā tālvadības pults, izmantojot esp8266
Pārraida no Web saņemtos tālvadības pults kodus, kas atbalsta vairākas izvadierīces.
Iebūvēta vienkārša tīmekļa lapa galvenokārt testēšanai.
Parastā lietošana tiek veikta, izmantojot POST ziņojumus, kas var nākt no tīmekļa lapām vai no IFTTT / Alexa balss vadības.
Atbalsta Amazon Echo / Dot aktivizēšanas detektoru, lai izslēgtu / klusinātu, tiklīdz tiek izrunāts aktivizācijas vārds.
Komandas ir vai nu atsevišķas komandas, vai secības. Secības var saglabāt kā nosauktus makro, ko pēc tam var izmantot kā komandas vai citās secībās.
Jaunāko vēsturi un makro sarakstu var iegūt, izmantojot tīmekļa saskarni
Atbalsta jaunas programmaparatūras augšupielādi OTA un izmanto WifiManager bibliotēku sākotnējai wifi iestatīšanai
1. darbība. Aparatūra
Izmanto šādus komponentus
- ESP-12F modulis
- 3.3V regulators (MP2307 mini buck regulators)
- MOSFET slēdži (AO3400)
- Infrasarkanais izstarotājs (3 mm)
- No gaismas atkarīgs rezistors GL2258 (izvēles Alexa aktivitātes detektors)
- Rezistori
- Atvienošanas kondensators (20uF)
- USB sieviešu ligzda (vēlams lodētam draudzīga ar uzmavu
- 3 kontaktu IC kontaktligzda Alexa detektoram
- Mehāniskās detaļas (var izdrukāt 3D formātā)
Var salikt ESP-12F projekta kastē
- Pievienojiet regulatoru USB savienotājam un ievietojiet kastē
- Uzlieciet IR draiveri uz neliela vero plāksnes gabala (3 vadi, +5V, 0V vārtu ievade)
- Pievienojiet IR draiveri USB +5V, 0V
- Ievietojiet 3 kontaktu IC ligzdu projekta kastē, ja izmantojat Alexa detektoru. Pievienojiet pie +3.3V, 0V un ievadiet vadu
- Uzpildiet ESP-12F ar 2,2K no GPIO15 līdz GND, EN līdz Vdd, 4K7 GPIO13 līdz Vdd, Alexa ievade GPIO13, IR draiveris līdz GPIO14, 0V un Vdd līdz 3,3V
- Uzpildiet Alexa detektoru un, ja nepieciešams, atbalsta buferi.
Ņemiet vērā, ka vispirms var būt vieglāk ieprogrammēt ESP-12F, ja jums ir kāda veida sērijveida programmēšanas iespēja vai pagaidu maizes dēļu iekārta, lai izveidotu savienojumu ar seriālajiem portiem.
Turpmāko programmēšanu var veikt, izmantojot iebūvēto OTA atjauninājumu.
2. darbība: programmatūra
Ir Blaster izmanto Arduino skici, kas pieejama vietnē github
Tas ir jāpielāgo vietējiem apstākļiem un pēc tam jāapkopo esp8266 Arduino vidē.
Nepieciešamas šādas bibliotēkas, vairums ir standarta vai var tikt pievienotas. Pēdējie divi ir iekļauti git.
- ESP8266WiFi
- ESP8266WebServer
- FS.h
- DNS serveris
- ESP8266mDNS
- ESP8266HTTPUpdateServer
- ArduinoJson
- BitTx (iekļauts Git)
- BitMessages (iekļauts Git)
Skices maināmie vienumi ietver
- Tīmekļa piekļuves autorizācijas kods AP_AUTHID
- Wfi pārvaldnieka parole WM_PASSWORD
- programmaparatūras OTA parole update_password
- Jaunas IS ierīces / pogu kodi (skatīt vēlāk)
Kad tas ir izdarīts, vispirms to vajadzētu augšupielādēt, izmantojot parasto sērijveida augšupielādi.
Tā kā tiek izmantots SPIFFS, atmiņa jāsagatavo, instalējot un izmantojot arduino ESP8266 Sketch Data upload rīku. Tādējādi datu mape tiks augšupielādēta kā sākotnējais SPIFFS saturs
Kad ierīce nevar izveidot savienojumu ar vietējo tīklu (kā tas notiks pirmo reizi), Wifi pārvaldnieks izveidos piekļuves punktu (192.168.4.1). Izveidojiet savienojumu ar šo tīklu no tālruņa vai planšetdatora, pēc tam pārlūkojiet vietni 192.168.4.1. Jūs saņemsiet tīmekļa saskarni, lai izveidotu savienojumu ar vietējo wifi. Turpmākās piekļuves to izmantos. Ja vietējais tīkls mainās, tas atgriezīsies šajā konfigurācijas režīmā.
Turpmāko atjaunināšanu var veikt, apkopojot eksporta bināro failu Arduino vidē un pēc tam piekļūstot OTA saskarnei vietnē ip/firmware.
3. darbība: pievienojiet ierīces / pogu kodus
Piezīme. Šī sadaļa ir mainījusies no iepriekšējās metodes, kurā konfigurācija, kas iepriekš tika apkopota kodā. Tagad tas izmanto failus, kas tiek ielādēti no SPIFF failu sistēmas. Tas ievērojami atvieglo jaunu definīciju augšupielādi.
Pogas definīcijas ir iekļautas failā buttonnames.txt. Tas ir globāls vārdu saraksts visās izmantotajās tālvadības pultīs, jo daudzi vārdi mēdz būt izplatīti. Komplektā ir iekļauta informācija par izmantotajām tālvadības pultīm. Var pievienot jaunus ierakstus. Kopumā ir vietas 160 nosaukumiem, taču to var palielināt, pielāgojot konstantes bitMessages.h un pārkompilējot. Šeit definētie nosaukumi ir nosaukumi, kas jāizmanto, nosūtot komandas.
Katra attālā ierīce ir definēta failā ar nosaukumu dev_remotename. Tas sastāv no konfigurācijas sadaļas augšpusē un pēc tam kartēšanas tabulas no pogu nosaukumiem līdz kodiem, kas ir heksadecimālās virknes, kurās ir nosūtāmie biti. Jānosaka tikai nepieciešamie pogu nosaukumi.
Konfigurācijas sadaļā ierīces faila sākumā ir parametri, kas jāizmanto, nosūtot kodu. Pirmais ieraksts ir ierīces nosaukums, kas tiek izmantots, nosūtot komandu. Citi parametri ir aprakstīti koda vietnes lasījumā.
Lielākā daļa tālvadības pulti pieder vienai no 3 protokolu kategorijām (citur neklasificēta, rc5 un rc6). citur neklasificēts, iespējams, ir visizplatītākais, un tam ir vienkārša galvenes struktūra un bitu laiks. Tam ir neliels variants, kas atšķiras tikai ar galvenes impulsa laiku. rc5 un rc6 ir Philips definēti protokoli, bet tos izmanto arī daži citi ražotāji. Tie ir nedaudz sarežģītāki, un jo īpaši rc6 ir īpaša laika prasība vienam no bitiem.
Lai uztvertu jaunas tālvadības pults kodus, es izmantoju IR uztvērēju (TSOP), ko parasti izmanto ar pievienotajiem tālvadības uztvērējiem. Tas nodrošina pamata dekodēšanu un dod loģiska līmeņa izvadi. Parasti tiem ir 3,5 mm ligzda ar +5V, GND, DATA savienojumiem. Es upurēju vienu, saīsināju vadu un izliku to caur apgrieztu 3.3V buferi, lai barotu GPIO tapu uz Raspberry Pi.
Pēc tam es izmantoju python rīku rxir.py (mapē git tools) kodu uztveršanai. Lai atvieglotu daudzu pogu uzņemšanu, rīks izmanto teksta definīcijas failu, lai definētu tālvadības pults pogas, un tas ir tikai tālvadības pults grupas pogu nosaukums. Piemēram, var būt jauns Sony tālvadības pults, un viens izveido 3 teksta failus ar nosaukumu sonytv-cursor, sonytv-numuri, sonytv-playcontrols, katrs ar atbilstošo pogu nosaukumiem. Rīks pieprasīs ierīces (sonytv), sadaļu (kursors) un kādu protokolu izmantot (citur neklasificēts, citur neklasificēts, rc5, rc6). Pēc tam tas prasīs secīgi par katru pogas nospiešanu un ierakstīs rezultātus sonytv-ircodes failā. Ja nepieciešams, sadaļas var atkārtot, lai pārbaudītu, vai uzņemtie attēli ir labi. Bitus no.ircodes faila var rediģēt BitDevices tabulās.
4. darbība: tīmekļa vadība un makro
Pamata tīmekļa vadība ir vai nu viena saņemšana, vai json ziņa, kas var saturēt secību.
Get to /ir ir 6 parametri
- auth - satur autorizācijas kodu
- ierīce - attālās ierīces nosaukums
- parametrs - pogas nosaukums
- biti - pēc izvēles bitu skaits
- atkārtot - pēc izvēles atkārtojumu skaits
- gaidīt - aizkavēšanās sekundes, pirms var izpildīt nākamo komandu.
Ierīce var būt arī “nulle”, lai iegūtu tikai aizkavi, “makro”, lai izmantotu makro, uz kuru atsaucas parametrs, vai “atklāt”, lai izmantotu Alexa noteikšanas funkciju (sk. Vēlāk).
Ziņa uz /irjson sastāv no tādas json struktūras kā
{
"auth": "1234", "komandas": [{"device": "yamahaAV", "parameter": "hdmi4", "wait": "5000", "bits": "0", "Repeate": "1"}, {"ierīce": "yamahaAV", "parametrs": "izslēgt", "pagaidīt": "100", "biti": "0", "atkārtot": "1"}]
}
Secība var būt jebkura garuma, un ierīces var būt makro atsauces.
To pašu struktūru var izmantot, lai definētu makro. Vienkārši iekļaujiet makro: "macroname", augšējā līmenī, piem. pēc aut. Faktiskais saturs tiek saglabāts failā ar nosaukumu macroname.txt
Makro var izdzēst, definējot tos bez "komandām".
Citas tīmekļa komandas
- /nesen (uzskaita nesenās darbības)
- /pārbaude (parāda pamata statusu)
- / (ielādē tīmekļa veidlapu, lai manuāli nosūtītu komandas)
- / rediģēt (ielādē tīmekļa veidlapu, lai apskatītu failu sarakstu un dzēstu/ augšupielādētu failus)
- /edit? file = faila nosaukums (skatiet konkrēta faila saturu)
- /reload (atkārtoti ielādē pogu nosaukumus un ierīces failus. Izmantojiet pēc tam, kad esat mainījis kādu no šiem)
5. darbība: Alexa balss vadība, izmantojot IFTTT
Vienkāršākais veids, kā lietot ir Blaster ar Alexa, ir izmantot IFTTT kā vārteju.
Vispirms nosūtiet maršrutētājā savu blasteru izmantoto portu, lai tas būtu pieejams no interneta. Var būt labi izmantot dns pakalpojumu, piemēram, freedns, lai maršrutētājiem piešķirtu ārējā IP nosaukumu un atvieglotu apstrādi, ja šis IP mainās.
Izveidojiet IFTTT kontu un iespējojiet Maker Webhooks kanālu un Alexa kanālu. To darot, jums būs jāpiesakās Amazon vietnē, lai iespējotu piekļuvi IFTT.
Izveidojiet IF aktivizētāju, izmantojot IFTTT Alexa kanālu, izvēlieties darbību, pamatojoties uz frāzi, un ievadiet vajadzīgo frāzi (piemēram, palieliniet skaļumu).
Izveidojiet darbību, izvēloties kanālu Maker webhooks. Ievadiet URL laukā kaut ko līdzīgu
myip: port/irjson? plain = {"auth": "1234", "comm…
Šī darbība tiks nosūtīta uz ir blaster, kur tā mēģinās izpildīt makro skaļumu. Ja vēlaties, šeit var būt konkrēta ierīce/pogas, taču man šķiet, ka ir labāk definēt un izmantot makro, jo tad darbību secību var viegli mainīt, vienkārši no jauna definējot makro.
Katrai komandai ir nepieciešama atsevišķa IFTTT sīklietotne.
6. darbība: vietējā Alexa balss prasme
IFTTT vietā Alexa izstrādē var veidot pielāgotas prasmes. Tas visu apstrādi centralizē vienā vietā un nozīmē, ka jums nav jāizveido atsevišķas darbības katrai pogai.
Jums jāreģistrējas kā Amazon Alexa izstrādātājam un jāreģistrējas Amazon AWS konsoles lambda pakalpojumā. Jums būs jāaplūko arī apmācības, lai mazliet izprastu procesu.
Alexa izstrādātāju pusē jums ir jāizveido jauna pielāgota prasme, jāievada tā sprūda vārds un jāizveido komandu vārdu saraksts, piemēram, skaļuma palielināšana, ceļvedis utt.
Pēc tam Alexa nosūta frāzi programmai, kas darbojas lamda pakalpojumā, kas interpretē šo frāzi un veic URL zvanu uz Ir blaster, lai to izdarītu.
Gitā esmu iekļāvis Alexa nodomu shēmu un konsoles lambda funkciju, ko izmantoju. URL būs jāmaina, lai tas atsauktos uz atbilstošo ip un iegūtu pareizo autorizāciju. Lai viss būtu vienkārši, lambda funkcijas izsauc makro, kurā ir atstarpes frāzes mazie burti. Tas arī mēģina noņemt aktivizējošo atslēgvārdu, ko dažreiz var iekļaut. Piem. blaster VOLUME up izsauks makro, ko sauc par skaļuma palielināšanu, ja sprūda vārds bija blaster.
7. darbība: Alexa aktivizējiet detektoru
Lai gan balss atpazīšana ar atbalsi / punktu ir laba, dažkārt var rasties apjukums, ja skaņa tiek atskaņota, piemēram, no televizora, ja vien neesat tuvu un nerunājat skaļi.
Lai to uzlabotu, es savam punktam pievienoju aktivizācijas detektoru. Tiklīdz atslēgvārds (saka Alexa) iedegas gaismas diodes. Detektors to ievada blasterā, kur tas izmantos alexaon makro, lai izslēgtu televizora skaņu, līdzīgi komandas apstrādes beigās gaismas nodziest un alexaoff makro atjauno skaņu.
Komandu "atklāt" var izmantot arī, lai to ieslēgtu un izslēgtu. Piemēram, es izmantoju sākotnējo pagrieziena makro, lai iespējotu noteikšanu, un izslēgšanas makro, lai to atspējotu. To var izmantot arī darbības makro, lai atbalstītu īstu izslēgtu un izslēgtu komandu, kas citādi būtu problemātiska.
Fiziskais detektors ir no gaismas atkarīgs rezistors, ko ķēde atbalsta. Es piestiprinu raktuvi uz punkta ar 3D drukātu kronšteinu
Ieteicams:
IOT viedais infrasarkanais termometrs (COVID-19): 3 soļi
IOT viedais infrasarkanais termometrs (COVID-19): 2019. mācību modulis tehnoloģijām un IOT, kas
Infrasarkanais kontrolētais MP3 atskaņotājs: 6 soļi (ar attēliem)
Infrasarkanais kontrolētais MP3 atskaņotājs: izveidojiet infrasarkano staru tālvadības pults MP3 atskaņotāju par aptuveni 10 USD (USD). Tam ir parastās funkcijas: atskaņot, apturēt, atskaņot nākamo vai iepriekšējo, atskaņot vienu dziesmu vai visas dziesmas. Tam ir arī ekvalaizera variācijas un skaļuma kontrole. To visu var kontrolēt, izmantojot
Automātiskais burbuļu pūtējs: 7 soļi
Automātiskais burbuļu pūtējs: izveidojiet automatizētu burbuļziepju mašīnu ar Arduino Uno un dažiem pamata komponentiem. Lielākajai daļai detaļu saraksta ir tipisks Arduino sākuma komplekts. Mans pārslēgšanas slēdzis bija salauzts, tāpēc es ķēru vadus un pievienoju/atvienoju ieslēgšanai/izslēgšanai. &
Darba sākšana ar Esp 8266 Esp-01 ar Arduino IDE - Esp dēļu instalēšana Arduino Ide programmēšanā un Esp programmēšana: 4 soļi
Darba sākšana ar Esp 8266 Esp-01 ar Arduino IDE | Esp dēļu instalēšana Arduino Ide programmēšanā un Esp programmēšana: Šajā pamācībā mēs iemācīsimies instalēt esp8266 plates Arduino IDE un kā programmēt esp-01 un augšupielādēt kodu tajā. Tā kā esp dēļi ir tik populāri, es domāju par pamācību labošanu šis un lielākā daļa cilvēku saskaras ar problēmu
1200 vatu elektriskais pūtējs: 7 soļi
1200 vatu elektriskais pūtējs: pārveidojiet putekļsūcēja motoru par gaisa pūtēju. Par: lapu pūšana Matu žāvēšana Bernulli bumbas triki Uguns pūšana