Innehållsförteckning:
Video: Ultra-low Power Basement Flooding Alarm With ESP8266: 3 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Hej, välkommen till min första instruktör.
Källaren i mitt hus översvämmas med några års mellanrum av olika anledningar som kraftiga sommarstormar, högt grundvatten eller till och med ett rör som spricker. Även om det inte är ett trevligt ställe, men min centralvärmepanna ligger där nere och vatten kan skada dess elektroniska delar, så jag måste pumpa ut vattnet så snart som möjligt. Det är svårt och obekvämt att kontrollera situationen efter ett kraftigt sommar åska, så jag bestämde mig för att göra ett ESP8266-baserat larm som skickar mig ett e-postmeddelande vid översvämningar. (När översvämningen orsakas av högt grundvatten är vattennivån vanligtvis mindre än 10 centimeter vilket inte är skadligt för värmaren och det rekommenderas inte att pumpa ut eftersom det kommer tillbaka ändå och ju mer du pumpar, desto mer grundvatten kommer nästa gång. Men det är bra att veta om situationen.)
I den här applikationen kan enheten vara i "sömn" i flera år, och om allt fungerar som planerat fungerar det bara i några sekunder. Att använda djup sömn är inte praktiskt eftersom det drar för mycket ström om vi vill sova under mycket långa perioder och ESP8266 kan bara sova i cirka 71 minuter maximalt.
Jag bestämde mig för att använda en flottörbrytare för att slå på ESP: n. Med denna lösning drivs ESP inte när strömbrytaren är öppen, så strömförbrukningen är bara självurladdning av batterierna, vilket gör att systemet är klart att larma i åratal.
När vattennivån når flottöromkopplaren startar ESP normalt, ansluter till mitt WiFi-nätverk, skickar mig ett e-postmeddelande och somnar för evigt med ESP. Desepsleep (0) tills strömmen slås av och på igen. Om den inte kan ansluta till WiFi eller inte kan skicka e-postmeddelandet somnar det i 20 minuter och försöker igen tills det lyckas.
Denna idé liknar lösningen som beskrivs av Andreas Spiess i den här videon. Men på grund av översvämningens natur och flottörbrytaren behöver vi inte lägga till en MOSFET för att hålla ESP -enheten påslagen förrän den har slutfört sin uppgift, eftersom flottöromkopplaren kommer att stängas om vattennivån är över utlösningsnivån.
Steg 1: Schemat:
Delar
- D1: BAT46 Schottky-diod för väckning i djup sömn. Jag har bättre erfarenheter av Schottky -dioder än motstånd mellan D0 och RST.
- Float Switch: Enkel $ 1,2 vassrör och magnetbaserad flottörbrytare från eBay. Ringen med magneten kan vändas för att växla mellan hög och låg vätskenivåväxling. eBay -länk
- Batterihållare: för 2x AAA 1,5V batterier
- P1: 2x 2P 5,08 mm (200mil) skruvplintar för anslutning av ledningarna från batteriet och flottöromkopplaren.
- C1: 1000uF 10V kondensator för att öka stabiliteten hos ESP medan radion är på. Observera att om ESP är i djup sömn räcker energin som lagras i kondensatorn för att driva den i 3-4 minuter. Under den perioden kan flottörströmställarens funktion inte starta om ESP eftersom kondensatorn håller den påslagen under djup sömn. Detta är bara intressant under testning.
- U1: LOLIN / Wemos D1 Mini Pro ESP8266 mikrokontroller. Detta är pro -versionen med extern antennkontakt, vilket kan vara användbart när det placeras i källaren. Observera att du bör lödda om 0 ohm SMD "motståndet" för att välja den externa antennen istället för den inbyggda keramiska antennen. Jag rekommenderar att köpa LOLIN -mikrokontroller från den officiella LOLIN AliExpress -butiken eftersom det finns många falska eller gamla versioner av Wemos / LOLIN -kort där ute.
- Perfboard: En 50 mm*50 mm proto board kommer att räcka för att passa alla delar. Kretsen är för enkel för att göra ett kretskort.:)
Observera att batteriet är anslutet till 3,3V -ingången. Även om D1 Mini har en inbyggd LDO för USB / LiPo -drift, behöver vi inte det när den drivs från 3V med 2xAAA alkaliska batterier. Med denna anslutning kunde min D1 Mini klara sin uppgift med endast 1,8V matningsspänning också.
Steg 2: Koden
Programmet kan vara trevligare eller enklare, men delarna är väl beprövade i mina andra projekt.
Skissen använder följande bibliotek:
ESP8266WiFi.h: Standard för ESP8266 -kort.
Gsender.h: Gmail -avsändarbibliotek från Borya, kan laddas ner härifrån.
Programflödet är ganska enkelt.
- ESP startar.
- Läser RTC -minne för att kontrollera om det är en första start eller inte
- Ansluter till WiFi med funktionen cleverwifi (). Detta ansluter till WiFi med routerns MAC -adress (BSSID) och kanalnummer för snabbare anslutning, försöker igen utan dem efter 100 misslyckade försök och somnar efter 600 försök. Denna funktion härleddes från OppoverBakkes WiFi -strömförbrukningssparskiss, men utan att spara anslutningsdata till RTC -delen i den här applikationen.
- Kontrollerar batterispänningen med ESP -inbyggda ADC_MODE (ADC_VCC) / ESP.getVcc () -funktioner. Detta kräver ingen extern spänningsdelare eller någon ledning till A0. Perfekt för spänningar under 3,3V, vilket är vårt fall.
-
Skickar ett e-postmeddelande med Gsender.h. Jag lade till variabler och anpassad text till ämnes- och meddelandesträngarna för att rapportera batterispänning, tiden som gått sedan första upptäckten och råd om batteribyte. Glöm inte att ändra mottagarens e-postadress.
-
Sover
- Om det lyckas sover det "för alltid" med ESP.deepSleep (0); Fysiskt kommer det att vara i viloläge tills vattennivån är hög. Detta är tekniskt sett några timmar eller max några dagar, vilket inte tömmer batteriet med få uA -sömnström. När vattnet är borta öppnar flottöromkopplaren och ESP stängs av helt och strömförbrukningen är 0.
- Om det inte lyckas somnar det i 20 minuter och försöker sedan igen. Det är möjligt att ha ett strömavbrott vid sommar åska. Det räknar omstart och lagrar det i RTC -minnet. Denna information används för att rapportera tiden som gått sedan det första larmförsöket. (Observera att när du testar den med USB -ström och seriell bildskärm kan RTC också behålla cykelvärdet mellan nedladdningar.)
-
Steg 3: Montering och installation
Efter att ha testat koden på en brödbräda, lödde jag den till en liten bit perfboard.
Jag använde 2 stycken 5,08 mm pitch 2 -poliga skruvterminaler som sytts ihop, en hona för ESP, en kondensator och några hoppare.
Observera att SMD-motståndet med "0" -numret bredvid den keramiska antennen ska lödas om till de tomma plattorna bredvid för att välja den externa antennen.
Sedan lade jag det hela i en liten IP55 elektrisk kopplingsdosa. Ledningarna från flottöromkopplaren är anslutna genom en kabelgenomföring.
Lådan placeras i en säker höjd, där vattnet (förhoppningsvis) aldrig kan nå det, så jag använde ett par relativt tjocka 1 mm^2 (17AWG) koppartråd för att ansluta flottöromkopplaren. Med denna inställning kan ESP starta och skicka meddelandet även med 1,8V ingångsspänning.
Efter installationen är denna tysta vaktmästare på vakt, men jag hoppas att den inte behöver skicka ett larm snart …
Rekommenderad:
Hacka USB Power Banks till Power Arduino: 6 steg
Att hacka USB-strömbanker för att driva Arduino: Att använda billiga kraftbanker för att driva dina Arduino-kretsar är så frustrerande med deras låga, automatiska avstängningskretsar. 30-40 sekunder. Låt oss ändra en Ch
Shelly Power Consumption Alarm Signal: 8 steg
Shelly Power Consumption Alarm Signal: VARNING! Denna instruktion måste utföras av någon som har god skicklighet som elektriker. Jag tar inget ansvar för faror för människor eller saker.INTRO: I Italien gäller det vanliga strömkontraktet för 3KW, och om din effekt konsumtionen går över
(DIY) Hur man gör ESP8266 Ultra Mini & Simple Relay Home Automation Board: 17 steg
(DIY) Hur man gör ESP8266 Ultra Mini & Simple Relay Home Automation Board: Hej alla, idag ska jag meddela dig, hur man gör en Mini Esp 12 Wifi Relay Board som bara mäter 3,9 cm x 3,9 cm! Det här kortet har några väldigt coola funktioner som varje Tech Lover kommer att älska att ha. Jag har inkluderat alla filer i nästa steg. Detta kort
Ultra Hiper Super Robot Que Pinta, med fler steg: 7 steg
Ultra Hiper Super Robot Que Pinta, nada Más: Tekniken går för närvarande mycket snabbt framåt vilket hjälper och samarbetar i en persons arbete. Genom att veta detta har vi skapat en prototypritningsrobot; Vi vet att detta kan användas i gravyrindustrin, denna robot underlättar arbetet
LED Sunrise Alarm Clock Med anpassningsbart Song Alarm: 7 steg (med bilder)
LED Sunrise Alarm Clock With Customizable Song Alarm: My Motivation I vinter hade min flickvän mycket problem med att vakna på morgonen och verkade lida av SAD (Seasonal Affective Disorder). Jag märker till och med hur mycket svårare det är att vakna på vintern eftersom solen inte har kommit