Sadržaj:
- Korak 1: LED diodama treba ograničiti struju
- Korak 2: Napravite svjetiljku
- Korak 3: Internet stvari sa ovom svjetiljkom?
- Korak 4: Postavite MQTT server
- Korak 5: Pripremite izdavača
Video: Od svjetiljke do senzora pokreta s ESP8266 i MQTT: 5 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
U ovom postu predstavio bih sljedeće stavke:
- LED diodama je potreban strujni krug ograničavanja
- kako napraviti baterijsku lampu
- napravite svjetlo koje pokreće prijenosna baterija i prigušite LED diode pomoću ESP8266 putem MQTT -a
Video je sažetak i kratko objašnjenje kako ovo funkcionira,
Planirao sam uključiti PIR senzor, ali vodič će potrajati dugo pa će PIR senzor biti predstavljen u drugom dijelu ove teme
Pa neka počne.
Korak 1: LED diodama treba ograničiti struju
Za početnike je ovo čudno s obzirom na to kako obično uključuju žarulju sa žarnom niti ili fluorescentnu žarulju. Ne brinite, te LED žarulje na polici već dolaze s adapterom za izmjenično / istosmjerno napajanje i ograničavajućom strujom. Ali bilo bi lijepo napraviti nešto od nule.
Jedan ključ za uključivanje LED diode je strujno kolo za ograničavanje struje. Ovo funkcionira kao ventil za struju, tako da nakon što napon primijenjen na LED diodu postane provodljiv, struja koja teče kroz LED ne može biti veća od one koju regulira krug. Kvarovi LED dioda obično su posljedica pregrijavanja. Nema postavljenog strujnog ograničavajućeg kruga siguran je način da se LED diode zapale u nekoliko sekundi. Usput, popravljajući LED čipove, oni dolaze na aluminijski okvir, pa se hladnjak smanjuje LED čip i općenito se preporučuje.
Puno sam se češao po glavi dok sam ovo učio oko 2015. godine, a i dalje sam se češao po glavi (iz različitih razloga). Naučio sam iz ovog vodiča i njegovo jasno objašnjenje mi je uštedjelo neke poteškoće.
Krug je priključen. Podebljane linije označavaju glavni pravac opterećenja, a tanje one označavaju upravljački mehanizam za kontrolu struje glavne rute koja iznosi oko 150 mA. Wikipedia ima kratak članak i neke reference u prilogu. Ograničavanje struje može se izgraditi pomoću tranzistora zamjenom MOSFET -a tranzistorima srednjeg strujnog opterećenja, poput BD135, BD139.
Korak 2: Napravite svjetiljku
Potrebni delovi:
- N-kanalni MOSFET (IRF540N $ 1,62/10kom, 30N06, $ 0,11,75/10kom)
- NPN tranzistor (poput S8085)
- 3,9 ohma - 2W otpornik, struja ograničena na 0,6/3,9 = 153mA
- 100kR (1/4W) otpornik
- Prekidač za zaključavanje
- Postoji 0,5W 8 mm LED, 3,18 USD/100 kom
- Litijumska baterija 18660. Spasio sam ih nekoliko iz banke moći. Laptop baterija (4, 6, 8 ćelija) napravljena od 18650 ćelija, ali oprezno s tim stvarima.
- 1 pojačanje do 12V ploče, poput ove, 0,56 USD
- 1 litijumski punjač poput ovog, 0,30 USD
Glavna razlika u odnosu na gornji krug je upotreba litijumske baterije (18660) sa pojačavajućom pločom umjesto makete 5V adaptera za napajanje.
Posljednja fotografija prikazuje posljednju svjetiljku i punila se iz bilo kojeg mikro USB izvora (> 1A).
Korak 3: Internet stvari sa ovom svjetiljkom?
Ovaj dio dijelim na tri koraka:
- Pripremite pretplatnika (ovaj)
- Postavljanje MQTT servera (sljedeći korak)
- i pripremite izdavača (sljedećeg)
Dijelovi:
Prvo, da, koristio sam tu buzzword, poznatu i kao IOT, ali ova bi mogla biti dobra kombinacija korištenja kola u koraku 2 s ESP8266, a zatim kontrolirati intenzitet svjetla metodom MQTT.
Dijelovi za kolo su identični, osim:
- Zamijenite 12V pojačivač sa MT3608 pojačavajućom pločom, 1,92 USD/5 kom, ovaj može povećati napon baterije 18650 (oko 3,7 V) na 28 V, dovoljno za napajanje 8 LED dioda (umjesto 3).
- Un-push položaj u prekidaču je povezan sa GPIO 1 ili 2 u ESP8266 za PWM signal.
- ESP8266 01, po 1,68 USD. Kao ovaj
- AMS1117 3.3 V, regulator napona za ESP8266, neki kondenzatori
- USB modul za blic ESP8266, 0,78 USD/kom poput ovog
Btw. ti su linkovi radi praktičnosti.
Lemljenje i postavljanje:
- Spajate dijelove zajedno i koristite gornje sheme. Neki unaprijed izrađeni 3,3-naponski krug mogu vam uštedjeti neko vrijeme (1,38 USD/5 komada poput ovoga). Bio sam zbunjen kad sam se sjetio pina pri preklapanju ploče i na kraju sam zadovoljio neki regulator napona AMS1117.
- Sljedeći. Napravite malu izmjenu, kao na trećoj fotografiji, tako da držite pritisnutim GPIO 0 do GND, brzo dodirnite RST pin sa GND iglom da postavite ESP8266 u Flashmode.
- Preuzmite kôd ovdje sa mog GitHub -a i prenesite kôd na ESP 8266 koristeći Arduino IDE.
Istaknuo sam red kako bih prikazao temu na koju se pretplatnik pretplatio. Svaka poruka objavljena na ovu temu bit će proslijeđena ostalim klijentima (pretplatnicima) na ovu temu. EPS8266 u ovom krugu poslušat će poruku JSON -a objavljenu na temu i ispasti ako je došlo do promjene na trećem kanalu
* nekad davno, mislio sam da bih mogao staviti otpornik (100 k) za uzemljenje vrata MOSFET-a kada ESP8266 nije bio predstavljen. Ovo funkcionira u nedostatku ESP8266, ali s ESP8266, otpornik također povlači GPIO0 ili 2 prema GND, pretvarajući ih u Flash način rada ili se ne pokreću (kada je GPIO2 NISKA)). Ako se to dogodi, vidjet ćete zelenu boju.
Korak 4: Postavite MQTT server
MQTT (Telemetrijski transport u redu čekanja poruka) je protokol za nered koji se temelji na metodi objave-pretplate. Uređaj koji sadrži i šalje MQTT poruku naziva se posrednik. Kao pravi posrednik, domaćin je razmjene između izdavača (prodavača) i pretplatnika (kupaca). Novac ne menja njih. Za to postoji mnogo vodiča.
Evo sažetka. Raspberry Pi je najpopularniji uređaj za to. Frist, instalirajte MQTT na:
sudo apt-get install mosquitto mosquitto-clients
provjerite radi li MQTT poslužitelj tako što ćete otvoriti dva terminala na Raspberryju, jedan upisuje prvi red, a drugi sljedeći:
mosquitto_sub -h localhost -t "yourtopic"
mosquitto_pub -t "yourtopic" -h localost -m "reci nešto"
Trebali biste vidjeti da se "reci nešto" pojavljuje na prvom terminalu. Walah! Radi.
"#" Se može koristiti za slušanje bilo koje teme, zamijenite "yourtopic" sa "#"
Sada ne želite da neko može objaviti ili se pretplatiti na vaš MQTT server, trebali biste postaviti lozinku, a to ćete učiniti na sljedeći način:
cd ~
mosquitto_passwrd -c pwfile mqtt_user
mqtt_user mogu biti druga korisnička imena koja vam se sviđaju, dvaput unesite lozinku i ažurirajte.conf datoteku na sljedeći način:
sudo nano /etc/mosquitto/mosquitto.conf
dodaje ova dva retka:
allow_anonymous false
password_file/home/pi/pwfile
zatim ponovo pokrenite komarac:
sudo systemctl ponovo pokrenite komarac
napravite test dodavanjem imena sa lozinkom kao što su:
mosquitto_sub -h localhost -t "yourtopic" -u "mqtt_user" -P "123456"
mosquitto_pub -h localhost -t "yourtopic" -u "mqtt_user" -P "123456" -m "je li ovo osigurano?"
Takođe, ako MQTT odbije vezu, pokušajte ovo kako biste MQTT uslugu stavili u pozadinu Linux sistema:
komarac -d
Otkrio sam da je ove reference dobro pogledati. Danas sam nešto naučio od ove dvojice.
- Adafruit:
- Stees-internet-guide.com
Korak 5: Pripremite izdavača
Za ovaj način pravim jednostavnu nadzornu ploču za prebacivanje poruke na MQTT server. U stanju mirovanja, LCD prikazuje sat.
Dijelovi:
- SSD1306 Ekran, svaki po 2,41 USD
- EPS8266 WEMOS D1 Mini, po 2,53 USD
- Potenciometar
- Jedan klizni prekidač sa 4 pina.
- dve LED diode od 3 mm,
- neki otpornici
Lemljenje:
Evo shema ovog terminala:
Otpremite kôd:
Markirani WEMOS ESP8266 ugodan je za rad. Potreban vam je samo mikro USB, pritisnite dugme za učitavanje na Arduino IDE blic čipu. Kod je ovdje (GitHub):
Da biste objavili poruku, pritisnite prekidač za uključivanje zelene LED diode (a crvenu za isključenje), zatim pomaknite pin prema gore i podesite je i na kraju ponovo pritisnite dugme da poruku prebacite na MQTT server. Nadzorna ploča bi mogla objaviti JSON poruku na 4 kanala.
Pogledajte isticanje koda (snimak ekrana). To je tema na koju nadzorna ploča gura poruku, a naše LED diode jako žele vidjeti bilo što novo iz JSON poruke
To je otprilike to. Nadam se da je tutorial od pomoći.
Preporučuje se:
Alarm senzora pokreta: 5 koraka
Alarm senzora pokreta: Provjeravate li uvijek ko vam je pred vratima? Ovo je savršen predmet za vas. Uvijek sam bio znatiželjan znati ima li ljudi ispred mojih vrata, a da nisam znao. Napravio sam ovaj alarm senzora pokreta sa LED svjetlima koji će označavati
Zvono na vratima senzora pokreta: 5 koraka (sa slikama)
Zvono na vratima senzora pokreta: Kada sam svom sinu Jaydenu rekao za izazov, odmah je pomislio da iskoristi LEGO WeDo set. On se godinama igrao s Lego kockama, ali tek početkom prošle školske godine dobio je priliku kodirati s WeDo 2.0
Napravite jednostavno svjetlo senzora pokreta! (PIR): 13 koraka (sa slikama)
Napravite jednostavno svjetlo senzora pokreta! (PIR): Napravite mali & Jednostavno svjetlo osjetljivo na kretanje s manje gnjavaže i manje komponenti. Ovo bi mogao učiniti i početnik. Jednostavno razumijevanje načina rada tranzistora i poznavanje anode i katode potrebno je samo zato neka budu bez napetosti
Ko je kod mojih vrata? PIR projekt senzora pokreta/senzora dometa: 5 koraka
Ko je kod mojih vrata? PIR projekt senzora pokreta/senzora dometa: Naš projekt ima za cilj osjetiti kretanje putem PIR -a i senzora udaljenosti. Arduino kôd emitirat će vizualni i audio signal kako bi korisniku rekao da je netko u blizini. MATLAB kôd će poslati signal e -pošte da upozori korisnika da se neko nalazi u blizini. Ovaj uređaj
Automatizirajte svjetlo pomoću MESH senzora pokreta: 3 koraka (sa slikama)
Automatiziranje svjetla pomoću MESH senzora pokreta: Zaboravljate li često isključiti svjetla? Uvijek je moguće zaboraviti isključiti svjetlo pri izlasku iz kuće ili sobe, ali pomoću MESH senzora pokreta riješili smo problem pomoću funkcija otkrivanja i otkrivanja koje će vam olakšati