Sisukord:
- Samm: osad, mida vajate
- 2. samm: vooluahela skeem
- Samm: vooluringi ehitamine
- Samm 4: ESP-01 vilkumine
- Samm: testkäivitus
- Samm: paigaldage andur
- Samm: viimane puudutus
Video: MQTT/Google Home Flood/Water WIFI sensor koos ESP-01: 7 sammuga
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Selles juhendis näitan teile, kuidas ehitada wifi üleujutus-/veeandur minimaalsete kuludega. Kogu projekt maksab mulle ebayst ostetud osade ja olemasolevate varuosade eest vähem kui 8 dollarit.
Selles projektis kasutame ESP-01, et pakkuda Wifi ja MQTT klienti vee olemasolu tuvastamiseks, ja valikuliselt kasutada otse ühendatud kõlarit/suminat, et anda lokaalne häire.
Minu konkreetne rakendus projektis on kogumispumba rikke korral avastada üleujutus/vesi minu kraanipumba kaevus. Kui vesi avastatakse kahe avatud juhtme abil, saadab see sõnumi MQTT maaklerile. Seejärel edastab MQTT maakler sõnumi NodeREDile. MQTT -sõnumi saamisel saadaks NodeRED teadaande mitmetele Google'i koduseadmetele ja lisaks soovi korral sõnumi mobiiltelefonile/brauserile pushbulleti kaudu
Loomulikult töötab see projekt ainult siis, kui kodune elekter on sisse lülitatud. Järgmises juhendis integreerin aku varuahela. Aga kui teete toiteallika samamoodi nagu mina, saate aku varundamiseks lihtsalt ühendada USB-toitepanga. Kui teil on toitepank, mis võimaldab teil samaaegselt laadida ja toita, siis olete valmis.
Mosquitto MQTT serveri ja NodeREDi hostimiseks kasutan RaspberryPi ZeroW. See on töötanud üle aasta ilma probleemideta.
Viited: Raspberry Pi: https://www.switchdoc.com/2016/02/tutorial-installi… Installige NodeRED Raspberry Pi-le:
Samm: osad, mida vajate
Osade nimekiri:
(1) ESP-01
(2) 10K oomi takisti
(1) väikese signaaliga üldine NPN -transistor (ma kasutasin 2N3904)
(2) pikad juhtmed
(1) 5 V üldine toiteallikas (see vooluahel nõuab vähem kui 300 mA voolu)
(1) 3.3V regulaatorimoodul AMS1117
(1) Mikro-USB-DIP-adapteri emase pistiku PCB-muunduri DIY-komplekt
(1) USB-A-MicroUSB kaabel.
(1) 8-kontaktiline IC-pistikupesa-võib välja jätta, kui soovite ESP-01 otse trükkplaadile joota. Lõigake plastist sillad, mis loovad ridade vahele lõhe, ja seejärel liimige 2 rida kokku, vt foto.
(1) Väike ümbris projekti jaoks
Allpool on valikulised osad, kui vajate kõlarit/helisignaali kasutades lokaliseeritud häiret
(1) Üldine PNP -transistor, valige vastavalt kõlari/summeri voolu/võimsuse nõudele. Minu puhul kasutan 2N2907, kuna minu kõlar on ainult 0,3 W (8 oomi), annaks see kõlari juhtimiseks piisavalt energiat. Kui soovite tugevamat heli, võite valida suurema transistori ja kõlari.
(1) Kõlar, vt ülaltoodud märkust PNP -transistori kohta
(1) 100 - 110 oomi takisti
2. samm: vooluahela skeem
Esimene samm oleks skeemil näidatud vooluahela loomine.
Ehitasin 3,3 V alalisvoolu toiteallika, kasutades vana 5 V mobiililaadijat koos AMS1117 3,3 V alalisvoolu regulaatoriga. Pistikupesa ESP-01 puhul kasutan 8-kontaktilist standardset IC-pistikupesa ja lõikan ridade vahele lõhe tekitavad plastist sillad ning seejärel liimin 2 rida kokku.
Minu kavandatud vooluahel on tajuda vee olemasolu kahe juhtme vahel. Kui vesi jõuab mõlema juhtme otsa, tekitaks see takistuse ligikaudu 10K kuni 20K oomi. Seejärel annab see järjestikku 10K oomi R1-ga Q1 alusele väikese voolu, mis põhjustab Q1 küllastumise, kinnitades GPIO-2 maapinnale. R1 on vajalik Q1 kaitseks juhuks, kui andurijuhtmetes tekib juhuslik lühis.
R2 on tõmbetakistus, mis võimaldab ESP-01 välklambist käivitada.
Nüüd valikulise kõlari/helisignaali puhul, kui vajate lihtsalt MQTT kõnelemiseks ESP-01 ja te ei soovi seda lokaliseeritud häiret rakendada, saate eemaldada R2, Q2, kõlari ja asetada 10K tõmbetakisti GPIO-0 vahele ja VCC.
Kui te ei tunne vajadust kasutada naissoost Micro-USB-DIP-adapterit, võite jootma juhtmed 5 V PS ja 3,3 V regulaatorimooduli vahel. Ma eelistan kasutada naissoost MicroUSB -adapterit, et saaksin kasutada mis tahes üldist mobiiltelefoni laadijat ja MicroUSB -kaablit.
Samm: vooluringi ehitamine
Jootke kõik komponendid ja osad trükkplaadile vastavalt eelmise lehekülje skeemile ja lõigake trükkplaat soovitud suuruseks.
Asetage trükkplaat korpusesse, mis sobiks trükkplaadile ja valikulisele kõlarile. Minu puhul mahuksid kõik osad telefoni väikese pistikupesa sisse, ehkki ma pean kaant veidi üles soojendama, et tekitada punn, nii et ESP-01 moodul sobiks.
Samm 4: ESP-01 vilkumine
Selles etapis vilgutame ESP-01 arduino visandiga. Kui te pole ESP-01 moodulit kunagi vilgutanud, võite alustamiseks järgida minu juhiseid:
Minu visandi leiate minu githubi lehelt:
Visandis peate vähemalt muutma järgmist koduvõrgu/seadistusega seotud teavet:
#define MQTT_SERVER "10.0.0.30" const char* ssid1 = "SSID"; const char* password1 = "MYSSIDpassword"; const char* ssid2 = "SSID1"; const char* password2 = "MYSSIDparool";
Minu koduvõrgus on mul 2 erinevat pääsupunkti, mis edastavad 2 erinevat SSID -d, ja see visand võimaldaks koondamist, ühendades järgmise SSID -ga, kui side praeguse AP -ga katkeb. Kui teil on ainult üks SSID, täitke ssid1 ja ssid2 sama väärtusega.
Kui olete muudatuse teinud, laadige eskiis üles ESP-01-sse ja ühendage ESP-01 liideseplaadiga.
Samm: testkäivitus
Meie projekti toimimise kontrollimiseks oleks kõige lihtsam jälgida võrgus MQTT -sõnumeid. Selleks peate avama sääsemaaklerile SSH -seansi ja andma järgmise käsu:
mosquitto_sub -v -t '#'
Ülaltoodud käsk võimaldab meil näha kõiki vahendajale saabuvaid MQTT -sõnumeid.
Nüüd lülitage meie ahel sisse ja kui kõik töötab, peaksite mõne sekundi jooksul nägema vähemalt järgmist MQTT -teadet:
stat/SumpWaterSensor/LWT Online
Katsetage nüüd veeandurit, kastes kaks anduritraadi tassi vette ja peaksite nägema seda teadet:
tele/SumpWaterSensor WET
Ja kui võtate juhtmed veest välja, peaksite nägema seda teadet:
tele/SumpWaterSensor DRY
Kui näete neid sõnumeid, on teie projekt edukas.
Lisasin visandisse ka mitu kasulikku MQTT teemat, mida saate kasutada:
"stat/SumpWaterSensorInfo": see teade saadetakse iga minuti tagant, et pakkuda tööaega ja muud teavet.
"cmnd/SumpWaterSensorInfo": ESP-01 saadab teabe välja, kui saab selle teema väärtusega "1" (ascii = 49)
"cmnd/SumpWaterSensorCPUrestart": ESP-01 taaskäivitub, kui saab selle teema väärtusega "1" (ascii = 49)
"cmnd/SumpWaterSensorBeep": ESP-01 annab kõlarile heli, kui see saab selle teema väärtusega "1" (ascii = 49)
"cmnd/SumpWaterSensorBeepFreq": määrab kõlarite alarmi sageduse, vaikimisi = 900 (Hz)
"cmnd/SumpWaterSensorDebug": lubab ja määrab seeria silumise taseme (vaikimisi on 0 - silumine puudub)
Samm: paigaldage andur
Tahan oma rakenduses jälgida oma veepumba kaevu sees olevat veetaset ja teavitada mind, kui vesi jõuab kraanipumba ujuklüliti kohale, mis tähendab, et minu kogumispump ei tööta. Ma juhtisin juhtmeid ja kasutasin traadisidemeid selle kinnitamiseks mööda äravoolutoru.
Samm: viimane puudutus
Nüüd, kui oleme saanud projekti toimima ja võime avaldada MQTT -sõnumi maaklerile, on järgmine samm mõelda, mida sellega teha.
Oma projektis kasutan Node-RED-i, et kuulata/tellida "tele/SumpWaterSensor" MQTT teemat ja teatada mitmele Google'i kodukõlarile, kui vett avastatakse. Lisaks sellele sidusin voo ka tõukejõu sõlmega, et saata märguanne oma Android -telefonile.
Samuti lõin veebi kasutajaliidese, et näha anduri olekut (sisse/välja, tööaeg jne). Mõnikord nägin, et see läheb 1 nädala jooksul paar korda võrguühenduseta, statistika põhjal, sageli on see tingitud sellest, et ESP-01 on wifi või MQTT-st lahti ühendatud. Kuid ärge liiga muretsege, minu visand sisaldab rutiini ESP-01 taaskäivitamiseks, kui see jätkuvalt ebaõnnestub WIFI ja/või MQTT maakleriga ühenduse loomisel.
Selle sammu pilt näitab selle saavutamiseks sõlme-punast voogu. Samuti saate minu githubi lehelt voo oma Node-RED-i kleepida:
Google'i kodu teadaanne on selle projekti jaoks vaid üks näide, kuid minu arvates on see kõige kasulikum ja praktilisem. Saate alati liituda teise MQTT kuulajaga või isegi kasutada IFTTT -d teiste seadmete juhtimiseks vee tuvastamisel.
Lõbutse hästi…
Soovitan:
Klubi valgustussüsteem koos MadMapperi ja Teensy 3.2: 14 sammuga
Klubivalgustussüsteem koos MadMapper & Teensy 3.2 -ga: 2018. aastal tegin selle väikese eelarvega klubivalgustussüsteemi esimese versiooni aastavahetuse peol Ramallah's Palestiinas koos oma kollektiiviga UNION, lähemalt loo ja kollektiivi kohta selle lõpus artikkel. Süsteem põhines WS2812
Patareitoitega ukseandur koos koduautomaatika integreerimisega, WiFi ja ESP-NOW: 5 sammu (koos piltidega)
Patareitoitega ukseandur koos koduautomaatika integreerimisega, WiFi ja ESP-NOW Olen näinud veel mõningaid toredaid andureid ja häiresüsteeme, kuid tahtsin selle ise teha. Minu eesmärgid: andur, mis tuvastab doo ja teatab sellest
Odav IoT õhukvaliteedi monitor, mis põhineb RaspberryPi 4: 15 sammuga (koos piltidega)
Odav IoT õhukvaliteedi monitor, mis põhineb RaspberryPi 4-l: Santiagos, Tšiilis talvisel keskkonnahädaolukorras on privileeg elada ühes maailma ilusamas riigis, kuid kahjuks pole see kõik roosid. Tšiili kannatab talvehooajal palju õhu saastumise tõttu
Benewake TFmini - odav LiDAR koos Teensy 3,5: 3 sammuga
Benewake TFmini - odav LiDAR koos Teensy 3.5 -ga: Benewake TFmini LiDAR -seade on väike, väga kerge LiDAR -andur umbes 50 dollari eest. Dokumentatsioon oli hea, kuid puudulik. See andis üksikasju andurilt andmete vastuvõtmise kohta, kuid unustas mainida sensori sisestamiseks vajaliku signaali
Teisendage elektrooniline vannitoa kaal kohaletoimetamisskaalaks <$ 1: 8 sammuga (koos piltidega)
Teisendage elektrooniline vannitoakaal kohaletoimetamise kaaluks <$ 1 :, oma väikeettevõttes pidin saatmiseks kaaluma keskmise suurusega esemeid ja kaste põrandamõõdul. Tööstusmudeli eest liiga palju maksmise asemel kasutasin digitaalset vannitoakaalu. Leidsin, et see on minu ligikaudse täpsuse jaoks piisavalt lähedal