Obsah:
- Krok 1: Díly, které budete potřebovat
- Krok 2: Schéma zapojení
- Krok 3: Budování obvodu
- Krok 4: Bliká ESP-01
- Krok 5: Testovací běh
- Krok 6: Namontujte snímač
- Krok 7: Poslední dotek
Video: MQTT/Google Home Flood/Water WIFI senzor s ESP-01: 7 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
V tomto pokynu vám ukážu, jak vybudovat wifi senzor zaplavení/vody s minimálními náklady. Celý projekt mě stojí méně než 8 $ za díly, které získám z ebay a mých stávajících náhradních dílů.
V tomto projektu použijeme ESP-01 k zajištění klienta Wifi a MQTT pro detekci přítomnosti vody a volitelně použijeme přímo připojený reproduktor/bzučák k zajištění lokalizovaného alarmu.
Moje konkrétní aplikace pro projekt je detekovat povodeň/vodu uvnitř mé jímky v případě poruchy čerpadla jímky. Když je voda detekována 2 otevřenými dráty, odešle zprávu makléři MQTT. Broker MQTT by pak předal zprávu NodeRED. Po přijetí zprávy MQTT by NodeRED odeslal oznámení na více domácích zařízení Google a také volitelně odeslal zprávu na mobilní telefon/prohlížeč prostřednictvím pushbullet
Nyní by tento projekt samozřejmě fungoval pouze tehdy, kdyby byla zapnutá domácí elektřina. V dalším pokynu integruji záložní obvod baterie. Pokud ale napájecí zdroj vytvoříte stejným způsobem jako já, můžete k zálohování baterie jednoduše připojit powerbanku USB. Pokud máte powerbanku, která vám umožní nabíjet a dodávat energii současně, jste připraveni.
K hostování serveru Mosquitto MQTT a NodeRED používám RaspberryPi ZeroW. Funguje více než rok bez problémů.
Reference: Raspberry Pi: https://www.switchdoc.com/2016/02/tutorial-installi… Nainstalujte NodeRED na Raspberry Pi:
Krok 1: Díly, které budete potřebovat
Seznam dílů:
(1) ESP-01
(2) 10K ohmový odpor
(1) malý signální generický NPN tranzistor (použil jsem 2N3904)
(2) dlouhé dráty
(1) 5V generický napájecí zdroj (tento obvod vyžaduje proud menší než 300mA)
(1) Modul regulátoru 3,3 V AMS1117
(1) Adaptér micro USB na DIP samice konektor PCB Converter DIY Kit
(1) Kabel USB-A na MicroUSB.
(1) 8pólová zásuvka IC-lze vynechat, pokud chcete pájet ESP-01 přímo na desku s obvody. Odřízněte plastové můstky, které vytvářejí mezeru mezi řadami, a poté slepte 2 řady dohromady, viz foto.
(1) Malý kryt pro projekt
Níže jsou uvedeny volitelné součásti, pokud potřebujete lokalizovaný alarm pomocí reproduktoru/bzučáku
(1) Obecný tranzistor PNP, vybírejte podle požadavku na reproduktor/bzučák/výkon. V mém případě používám 2N2907, protože můj reproduktor má pouze 0,3 W (8 ohmů), poskytl by dostatek energie pro pohon reproduktoru. Pokud chcete hlasitější zvuk, můžete si vybrat větší tranzistor a reproduktor.
(1) Reproduktor, viz poznámka k PNP tranzistoru výše
(1) Rezistor 100 - 110 ohmů
Krok 2: Schéma zapojení
Prvním krokem by bylo vytvoření obvodu zobrazeného na schématu.
Postavil jsem napájecí zdroj 3,3 V DC pomocí staré 5 V nabíječky pro mobilní telefony spojené s regulátorem AMS1117 3,3 V DC. Pro zásuvku ESP-01 používám standardní 8pólovou zásuvku IC a prořezávám plastové můstky, které vytvářejí mezeru mezi řadami, a poté slepím 2 řady dohromady.
Okruh, který jsem navrhl, má snímat přítomnost vody mezi dvěma dráty. Když voda dosáhne špičky obou vodičů, vytvoří odpor přibližně 10K až 20K ohm. Poté v sérii s 10K ohm R1 poskytuje malý proud do základny Q1, což způsobí nasycení Q1 a upnutí GPIO-2 na zem. R1 je nezbytný k zajištění ochrany Q1 v případě náhodného zkratu na snímacích vodičích.
R2 je pull-up odpor, který umožňuje spuštění ESP-01 z blesku.
Nyní k volitelnému reproduktoru/bzučáku, pokud potřebujete k ovládání MQTT pouze ESP-01 a nechcete implementovat tento lokalizovaný alarm, můžete odstranit R2, Q2, reproduktor a umístit 10K pull-up odpor mezi GPIO-0 a VCC.
Pokud necítíte potřebu používat samičí adaptér Micro-USB na DIP, můžete pájet vodiče mezi 5V PS a modulem regulátoru 3,3V. Dávám přednost použití samičího adaptéru MicroUSB, abych mohl použít jakoukoli obecnou nabíječku mobilního telefonu a kabel MicroUSB.
Krok 3: Budování obvodu
Všechny součásti a součásti připájejte na desku plošných spojů podle schématu zapojení na předchozí stránce a rozřízněte desku plošných spojů na velikost.
Umístěte desku plošných spojů do skříně, která by vyhovovala desce plošných spojů a volitelnému reproduktoru. V mém případě by se všechny části vešly do malé krabičky na telefon, i když musím trochu zahřát kryt, aby se vytvořila boule, aby se modul ESP-01 vešel.
Krok 4: Bliká ESP-01
V tomto kroku provedeme záblesk ESP-01 pomocí skici arduino. Pokud jste nikdy nepoužili modul ESP-01, můžete se řídit mými pokyny, abyste mohli začít:
Můj náčrtek najdete na mé stránce github:
V náčrtu musíte minimálně změnit následující informace týkající se vaší domácí sítě/nastavení:
#define MQTT_SERVER "10.0.0.30" const char* ssid1 = "SSID"; const char* heslo1 = "MYSSIDpassword"; const char* ssid2 = "SSID1"; const char* heslo2 = "MYSSIDpassword";
V mé domácí síti mám 2 různé přístupové body, které vysílají 2 různé SSID, a tato skica by umožnila redundanci připojením k dalšímu SSID, pokud dojde ke ztrátě komunikace s aktuálním AP. Pokud máte pouze jeden SSID, vyplňte ssid1 i ssid2 stejnou hodnotou.
Jakmile provedete úpravu, nahrajte skicu do ESP-01 a zapojte ESP-01 do desky rozhraní.
Krok 5: Testovací běh
Chcete -li otestovat, zda náš projekt funguje, nejjednodušší by bylo sledovat zprávy MQTT v síti. Chcete -li to provést, musíte otevřít relaci SSH brokerovi mosquitto a zadat následující příkaz:
mosquitto_sub -v -t '#'
Výše uvedený příkaz by nám umožnil vidět všechny zprávy MQTT přicházející do makléře.
Nyní zapněte náš obvod a pokud vše funguje, během několika sekund byste měli vidět alespoň následující zprávu MQTT:
stat/SumpWaterSensor/LWT Online
Nyní vyzkoušejte snímač vody ponořením dvou snímacích vodičů do šálku vody a měla by se vám zobrazit tato zpráva:
tele/SumpWaterSensor WET
A pokud vytáhnete dráty z vody, měla by se vám zobrazit tato zpráva:
tele/SumpWaterSensor DRY
Pokud vidíte tyto zprávy, váš projekt je úspěšný.
Do skici jsem také zahrnul několik užitečných témat MQTT, která můžete použít:
"stat/SumpWaterSensorInfo": tato zpráva je odesílána každou minutu, aby poskytla provozuschopnost a další informace.
"cmnd/SumpWaterSensorInfo": ESP-01 odešle informace, pokud obdrží toto téma s hodnotou '1' (ascii = 49)
"cmnd/SumpWaterSensorCPUrestart": ESP-01 se restartuje, pokud obdrží toto téma s hodnotou '1' (ascii = 49)
"cmnd/SumpWaterSensorBeep": ESP-01 zazní reproduktor, pokud přijme toto téma s hodnotou '1' (ascii = 49)
"cmnd/SumpWaterSensorBeepFreq": Nastavuje frekvenci alarmu reproduktoru, výchozí = 900 (Hz)
"cmnd/SumpWaterSensorDebug": Povolit a nastavit úroveň sériového ladění (výchozí hodnota je 0 - žádné ladění)
Krok 6: Namontujte snímač
V mé aplikaci chci dobře sledovat hladinu vody uvnitř své jímky a upozornit mě, pokud voda dosáhne nad plovákový spínač čerpadla, což znamená, že moje jímka nefunguje. Protáhl jsem dráty a pomocí drátěných pásků to zajistil podél odtokového potrubí.
Krok 7: Poslední dotek
Nyní, když máme projekt funkční a můžeme publikovat zprávu MQTT brokerovi, je dalším krokem přemýšlení o tom, co s tím dělat.
V mém projektu používám Node-RED k poslechu/přihlášení k odběru tématu MQTT „tele/SumpWaterSensor“a v případě zjištění vody ohlásím několika domácím reproduktorům Google. Kromě toho jsem také propojil tok s uzlem pushbullet a odeslal oznámení do svého telefonu Android.
Také jsem vytvořil webové rozhraní, abych viděl stav senzoru (zapnuto/offline, doba provozu atd.). Někdy jsem viděl, že se to během jednoho týdne několikrát vypne offline, ze statistik, mnohokrát je to kvůli odpojení ESP-01 od wifi nebo MQTT. Ale není se čeho bát, moje skica obsahovala rutinu pro restartování ESP-01, pokud se stále nedaří pokusit se připojit k WIFI a/nebo MQTT brokerovi.
Obrázek v tomto kroku ukazuje tok Node-RED k dosažení tohoto cíle. Tok z mé stránky github můžete také vložit do svého Node-RED:
Domácí oznámení Google je jen jedním příkladem tohoto projektu, ale myslím si, že je to nejužitečnější a nejpraktičtější. Vždy, když je detekována voda, můžete se kdykoli připojit k jinému posluchači MQTT nebo dokonce použít IFTTT k pohonu jiných zařízení.
Bavte se…
Doporučuje:
Bateriově napájený dveřní senzor s integrací domácí automatizace, WiFi a ESP-NYNÍ: 5 kroků (s obrázky)
Bateriově napájený dveřní senzor s integrací domácí automatizace, WiFi a ESP-NYNÍ: V tomto návodu vám ukážu, jak jsem vytvořil dveřní senzor napájený z baterie s integrací domácí automatizace. Viděl jsem další pěkné senzory a poplašné systémy, ale chtěl jsem si je vyrobit sám. Moje cíle: Senzor, který detekuje a hlásí doo
Streamování videa z kamery ESP 32 přes WiFi - Začínáme s ESP 32 CAM Board: 8 kroků
Streamování videa z kamery ESP 32 přes WiFi | Začínáme s deskou ESP 32 CAM: ESP32-CAM je velmi malý kamerový modul s čipem ESP32-S, který stojí přibližně 10 USD. Kromě fotoaparátu OV2640 a několika GPIO pro připojení periferií je vybaven také slotem pro kartu microSD, který může být užitečný pro ukládání snímků pořízených
Začínáme s Esp 8266 Esp-01 s Arduino IDE - Instalace desek Esp do Arduino Ide a programování Esp: 4 kroky
Začínáme s Esp 8266 Esp-01 s Arduino IDE | Instalace desek Esp do Arduino Ide a Programování Esp: V tomto návodu se naučíme, jak nainstalovat desky esp8266 do Arduino IDE a jak do nich naprogramovat esp-01 a nahrát kód. Protože desky esp jsou tak populární, přemýšlel jsem o opravě instructables pro toto a většina lidí čelí problému
Uneste RGB Flood Light s Arduino nebo ESP8266: 6 kroků (s obrázky)
Hijack RGB Flood Light With Arduino or ESP8266: Tak jsem našel několik skvělých malých RGB záplavových světel na Amazonu a při pohledu do jejich útrob mi došlo, že je můžete připojit přímo k arduinu a esp8266 a ovládat je pomocí PWM. teď použijte dva z nich v mém obývacím pokoji jako akcentové světlo
MQTT/Google Home DoorBell using ESP-01: 6 Steps
MQTT/Google Home DoorBell pomocí ESP-01: Zmeškali jste někdy odpověď hostovi, který zazvonil u vašeho zvonku jen proto, že jste v části domu, která je příliš daleko na to, aby slyšela zvonek? například ve sklepě, v ložnici se zavřenými dveřmi nebo jste možná sledovali televizi nebo poslouchali hudbu. Pokud