Tartalomjegyzék:

Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével: 3 lépés
Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével: 3 lépés

Videó: Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével: 3 lépés

Videó: Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével: 3 lépés
Videó: Top 10 Alacsony Gépigényű Játék 2024, Július
Anonim
Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével
Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével
Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével
Rendkívül alacsony teljesítményű pinceárvíz-riasztás ESP8266 segítségével

Helló, üdvözlöm az első oktathatóban.

A házam pincéjét néhány évente elárasztják különböző okok miatt, például erős nyári zivatarok, magas talajvíz vagy akár csőtörés miatt. Bár nem szép hely, de a központi fűtésű kazánom ott található, és a víz károsíthatja az elektronikus alkatrészeit, ezért a lehető leghamarabb ki kell pumpálnom a vizet. Nehéz és kényelmetlen ellenőrizni a helyzetet egy erős nyári zivatar után, ezért úgy döntöttem, hogy készítek egy ESP8266 alapú riasztást, amely elküld egy e-mailt árvíz esetén. (Ha az árvizet magas talajvíz okozza, a vízszint általában 10 centiméternél alacsonyabb, ami nem káros a fűtőberendezésre, és nem ajánlott kiszivattyúzni, mert úgyis vissza fog térni, és minél többet pumpál, annál több talajvíz érkezik legközelebb. De jó tudni a helyzetről.)

Ebben az alkalmazásban a készülék évekig "alvó" állapotban lehet, és ha minden a tervek szerint működik, csak néhány másodpercig működik. A mély alvás használata nem praktikus, mivel túl sok áramot szív le, ha nagyon hosszú ideig szeretnénk aludni, és az ESP8266 legfeljebb körülbelül 71 percet tud aludni.

Úgy döntöttem, hogy úszókapcsolóval kapcsolom be az ESP -t. Ezzel a megoldással az ESP nem kap áramot, ha a kapcsoló nyitva van, így az áramfogyasztás csak az akkumulátorok önkisülése, ami évekig készen áll a riasztásra.

Amikor a vízszint eléri az úszókapcsolót, az ESP rendesen elindul, csatlakozik a WiFi hálózatomhoz, e-mailt küld nekem, és örökre alszik az ESP-vel. Ha nem tud csatlakozni a WiFi-hez, vagy nem tudja elküldeni az e-mailt, akkor 20 percre alvó állapotba kerül, és újra próbálkozik a sikerig.

Ez az ötlet hasonló ahhoz a megoldáshoz, amelyet Andreas Spiess ismertetett ebben a videóban. De az elárasztás és az úszókapcsoló jellege miatt nem kell hozzá MOSFET, hogy az ESP bekapcsolva maradjon, amíg befejezi a feladatát, mert az úszókapcsoló zárva lesz, ha a vízszint meghaladja a trigger szintet.

1. lépés: A vázlat:

A vázlat
A vázlat

Alkatrészek

  • D1: BAT46 Schottky-dióda a mély alvás ébresztéséhez. Jobb tapasztalataim vannak a Schottky diódákkal, mint a D0 és az RST közötti ellenállások.
  • Úszókapcsoló: Egyszerű, 1,2 dolláros nádcső és mágnes alapú úszókapcsoló az eBay -től. A mágnessel ellátott gyűrű megfordítható a magas és az alacsony folyadékszint kapcsolás közötti váltáshoz. eBay link
  • Elemtartó: 2x AAA 1.5V elemekhez
  • P1: 2x 2P 5,08 mm (200 milliméter) csavaros csatlakozók az akkumulátor és az úszókapcsoló vezetékeinek csatlakoztatásához.
  • C1: 1000uF 10V kondenzátor az ESP stabilitásának növelése érdekében, amikor a rádió be van kapcsolva. Kérjük, vegye figyelembe, hogy ha az ESP mély alvásban van, a kondenzátorban tárolt energia elegendő ahhoz, hogy 3-4 percig működtesse. Ebben az időszakban az úszókapcsoló működése nem tudja újraindítani az ESP -t, mert a kondenzátor mélyen alvás közben is bekapcsolva tartja. Ez csak a tesztelés során érdekes.
  • U1: LOLIN / Wemos D1 Mini Pro ESP8266 mikrovezérlő. Ez a profi verzió külső antennacsatlakozóval, ami hasznos lehet, ha az alagsorban helyezik el. Kérjük, vegye figyelembe, hogy a 0 ohmos SMD "ellenállást" újra kell forrasztania, hogy a külső antennát válassza az alapértelmezett beépített kerámia antenna helyett. Azt javaslom, hogy vásároljon LOLIN mikrovezérlőket a hivatalos LOLIN AliExpress áruházból, mert sok hamis vagy régi verziójú Wemos / LOLIN tábla létezik.
  • Perfboard: Egy 50 mm*50 mm -es proto tábla elegendő az összes alkatrész illesztéséhez. Az áramkör túl egyszerű ahhoz, hogy PCB -t készítsen.:)

Kérjük, vegye figyelembe, hogy az akkumulátor a 3,3 V -os bemenetre van csatlakoztatva. Bár a D1 Mini beépített LDO -val rendelkezik az USB / LiPo működéshez, erre nincs szükségünk, ha 3 V -os 2xAAA alkáli elemről tápláljuk. Ezzel a csatlakozással a D1 Mini csak 1,8 V -os tápfeszültséggel tudta elvégezni a feladatát.

2. lépés: A kód

A program lehetne szebb vagy egyszerűbb, de részei jól beváltak más projektjeimben.

A vázlat a következő könyvtárakat használja:

ESP8266WiFi.h: Alapértelmezett az ESP8266 táblákhoz.

Gsender.h: A Gmail küldőkönyvtára a Boryából, letölthető innen.

A program folyamata meglehetősen egyszerű.

  • Az ESP elindul.
  • Olvassa be az RTC memóriát annak ellenőrzésére, hogy ez az első indítás vagy sem
  • Csatlakozik a WiFi -hez a cleverwifi () funkció használatával. Ez az útválasztó MAC -címének (BSSID) és csatornaszámának használatával csatlakozik a WiFi -hez a gyorsabb kapcsolat érdekében, 100 sikertelen kísérlet után újrapróbálja azok nélkül, és 600 kísérlet után alszik. Ez a funkció az OppoverBakke WiFi energiafogyasztás -csökkentő vázlatából származik, de anélkül, hogy az alkalmazás RTC részéhez mentené a csatlakozási adatokat.
  • Ellenőrzi az akkumulátor feszültségét az ESP beépített ADC_MODE (ADC_VCC) / ESP.getVcc () funkcióival. Ehhez nincs szükség külső feszültségosztóra vagy az A0 -ra történő huzalozásra. Tökéletes 3.3V alatti feszültségekhez, ez a mi esetünk.
  • Alrt e-mailt küld Gsender.h. Változókat és egyéni szövegeket adtam hozzá a tárgyhoz és az üzenetsorokhoz, hogy jelezzem az akkumulátor feszültségét, az első észlelés óta eltelt időt és tanácsokat az elemcserével kapcsolatban. Ne felejtse el megváltoztatni a címzett e-mail címét.

    • Alszik

      • Ha sikeres, akkor "örökre" alszik az ESP.deepSleep (0); Fizikailag alvó üzemmódban lesz, amíg a vízszint magas lesz. Ez technikailag néhány óra vagy legfeljebb néhány nap, ami nem meríti le az akkumulátort néhány uA alvóárammal. Amikor a víz elfogy, az úszókapcsoló kinyílik, és az ESP teljesen kikapcsol, és az áramfogyasztás 0 lesz.
      • Ha nem sikerül, 20 percig alszik, majd újra megpróbálja. Nyári zivatar esetén váltakozó áramú áramkimaradás lehetséges. Számolja az újraindításokat és tárolja az RTC memóriában. Ez az információ az első riasztási kísérlet óta eltelt idő jelentésére szolgál. (Kérjük, vegye figyelembe, hogy USB tápegységgel és soros monitorral történő teszteléskor az RTC a letöltések között is megtarthatja a ciklusszám értékét.)

3. lépés: Összeszerelés és telepítés

Összeszerelés és telepítés
Összeszerelés és telepítés
Összeszerelés és telepítés
Összeszerelés és telepítés
Összeszerelés és telepítés
Összeszerelés és telepítés

Miután teszteltem a kódot egy kenyértáblán, forrasztottam egy kis darab deszkára.

2 db 5,08 mm -es, 2 pólusú csavaros kapocsot használtam össze, egy női fejlécet az ESP -hez, egy kondenzátort és néhány jumpert.

Kérjük, vegye figyelembe, hogy a külső antenna kiválasztásához az SMD ellenállást, amelynek kerámia antenna mellett a "0" szám van, újra kell forrasztani a mellette lévő üres párnákhoz.

Ezután az egészet egy kis IP55 -ös elektromos csatlakozódobozba tettem. Az úszókapcsoló vezetékei kábeltömszelencén keresztül csatlakoznak.

A dobozt biztonságos magasságba helyezték, ahol a víz (remélhetőleg) soha nem érheti el, ezért egy pár viszonylag vastag, 1 mm^2 (17AWG) rézhuzalt használtam az úszókapcsoló csatlakoztatásához. Ezzel a beállítással az ESP akár 1,8 V -os bemeneti feszültség mellett is elindíthatja és elküldheti az üzenetet.

A telepítés után ez a csendes őrszem őrködik, de remélem, nem kell hamarosan riasztást küldenie…

Ajánlott: