Tartalomjegyzék:
- 1. lépés: Hardver
- 2. lépés: Szoftver
- 3. lépés: A Raspberry Pi előkészítése - a Domoticz telepítése
- 4. lépés: Domoticz beállítás
- 5. lépés: Az alkalmazás beállításainak módosítása
- 6. lépés: Értesítések beállítása
- 7. lépés: A kommunikáció beállítása a hardvereszköz (ek) hez
- 8. lépés: Adja hozzá az eszközt a Domoticzban, hogy aktívvá váljon
- 9. lépés: Ez nem így működik…
- 10. lépés: Építse fel az eseményt helyes módon 1
- 11. lépés: Az esemény építése helyes módon 2
- 12. lépés: Az ESP8266-01 modul programozása
- 13. lépés: Csatlakozás a WiFi hálózathoz. Értesítést kapni
- 14. lépés: Blokkdiagram
- 15. lépés: Eredmény és következtetések
- 16. lépés: Videó
Videó: Vízszivárgás -érzékelő az ESP8266 + Micropython + Domoticz készüléken: 16 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Egy ideje a feleségem megkért, hogy készítsek vízszivárgás -érzékelőt. Félt, hogy a kazánház tömlője szivároghat, és a víz elárasztja az újonnan lerakott fapadlót. És én igazi mérnökként elvállaltam egy ilyen érzékelőt.
15 éves orvosi mérnöki tapasztalatomból tudom, hogy a víz észlelésének legegyszerűbb módja a vízzel rövidre zárt fémcsapok. A legegyszerűbb érzékelők működési elve az, hogy a víznek két (vagy több) fémcsapot rövidre kell zárnia, és amint ez megtörténik, riasztást vált ki.
1. lépés: Hardver
Ehhez a projekthez szükségünk van:
1. ESP8266 - 01 modul
2. HT7333 3.3V MS Low Dropout Linear Regulator Power Supply modul
Szükségünk van erre a modulra, hogy csökkentsük az akkumulátor feszültségét az ESP8266 számára elfogadható szintre. Az adatlap szerint 3V - 3,6V bemenetnek kell lennie. Ez a modul 3.3V -ot biztosít.
3. Akkumulátor. 3, 7 V-os 400 mAh-es Li-ion akkumulátort használok. Valójában bármilyen más megfelelő áramforrást is használhat. Az 18650 akkumulátor is jó választás. Amikor akkumulátort választ, ne feledje, hogy az ESP körülbelül 200 mA -t "eszik", miközben csatlakozik a WiFi hálózathoz, és körülbelül 60 mA -t használ, amikor a tábla adatokat tölt fel a szerverre.
4. TP4056 Lipo akkumulátor töltőlap.
5. Pololu mini nyomógombos főkapcsoló Nagyon érdekes apró tábla. Ez lehetővé teszi, hogy csak akkor kapcsoljuk át az ESP modult, ha vizet észlel. Nem kell bekapcsolva tartani az ESP -t. Tehát jó az akkumulátor töltésének csökkentésére.
6. Ház7. Kettős mikrokapcsoló BE-KI. Az egyik vonal a készülék bekapcsolását szolgálja. A második sor tesztelésre szolgál - rövidzárlatot okoz víz nélkül, csak hogy tudassa velünk, hogy az eszköz működik -e vagy sem.
8. Raspberry Pi mikroszámítógép
Raspberry Pi Zero -t használok. Elég erős a Domoticz szerver futtatásához.
2. lépés: Szoftver
A számítógépen:
1. esptool telepítve, a modulok és a firmware villogásához
2. Ampy telepítve, a program villogására
3 Python 3.6 vagy újabb ajánlott
4. Bármilyen kódszerkesztőt szeretne. A legegyszerűbb - Python IDLE, amelyet rendszerint a Python segítségével telepítenek. Én a Pycharm / Atomot vagy az Anaconda Spyder On raspberry Pi -t használom
5. Domoticz szerver telepítve a Raspberry Pi -re (vagy közönséges PC -re Windows vagy Linux alatt)
3. lépés: A Raspberry Pi előkészítése - a Domoticz telepítése
Tehát vegye az RPi -t, és telepítse a Domoticz szerver futtatására alkalmas operációs rendszert.
Ezeket az utasításokat követheti.
A Raspbian Stretch with Desktop alkalmazást innen használom:
A következő lépés a Domoticz szerver telepítése a számítógépre. Használhatja az utasításokat itt vagy itt:). Ne félj, nem olyan nehéz. Nyilvánvalóan a terminálon kell futtatnia:
curl -L install.domoticz.com | sudo bash
És ennyi:) többé -kevésbé. Domoticz beállítás
Most, hogy a szerverünk készen áll, elérhetjük azt bármely webböngészőből, beleértve a táblagépet is, a következő URL megadásával: https:// IP_domoticz: 8080
4. lépés: Domoticz beállítás
Most, hogy a szerverünk készen áll, elérhetjük azt bármely webböngészőből, beleértve a táblagépet is, a következő URL megadásával: https:// IP_domoticz: 8080
5. lépés: Az alkalmazás beállításainak módosítása
Különféle alkalmazásbeállítások adhatók meg a Setup | Beállítások menü.
A Beállítások menü különböző lapokkal lehetővé teszi a rendszer jobb működéséhez szükséges személyes paraméterek megadását. Miután megadta az adatokat a mezőkben, el kell mentenie őket a piros "Beállítások alkalmazása" gomb megnyomásával. E művelet után az első belépéskor üres jelszómezők hosszú csillaggal jelennek meg, még akkor is, ha nem használták őket.
Miután elvégezte a fő beállításokat a "Rendszer" oldalon, kattintson az "Értesítések" gombra. Itt módosítanunk kell, hogy milyen értesítéseket fogunk használni.
6. lépés: Értesítések beállítása
Értesítések küldhetők például egy kapcsoló megnyomásakor, túl magas áramfogyasztásnál, magas hőmérsékletnél és még sok más lehetőségnél.
Esetünkben értesítéseket kell küldeni, amint az érzékelőt víz érzékelte. Tehát csak kapcsolja be azokat, amelyeket használni szeretne. Szintén általában API kulcsra van szükség az értesítések működéséhez. Egy kicsit előre haladva azt mondom, hogy kipróbáltam a Pushover -t, a Pushsafer -t és a Pushbullet -t. És maradtam a Pushovernél. Később elmondom, miért.
Néhány szó az értesítések működéséről. Rendelkeznie kell fiókkal a Pushbullet, Pushover vagy más, használni kívánt oldalakon. Ezenkívül szüksége lesz egy alkalmazásra a mobiltelefonján vagy a számítógépén.
Szerezze be az API -kulcsot, és illessze be a fenti oldalra. Az értesítést a "Teszt" gombra kattintva tesztelheti. Ha az API kulcs helyes, akkor teszt értesítéseket kell kapnia a mobiltelefonjára.
Amint az érzékelő vizet érzékel, az ESP bekapcsol, és JSON formátumban elküldi a kérést a Domoticz szervernek. Mint ha az esemény kiváltásának feltételei (értesítés küldése mobiltelefonra) teljesülnek, a Domoticz elküldi az értesítést.
Később visszatérek az "eseményekre".
7. lépés: A kommunikáció beállítása a hardvereszköz (ek) hez
Mielőtt használhatná a Domoticz alkalmazást eszközök vezérlésére vagy érzékelők olvasására, be kell állítania a kommunikációt a hardvereszközökkel. Válassza a Beállítás | Hardver lehetőséget a hardver hozzáadásához. Az eszközök csak a megfelelő hardver hozzáadása után jelennek meg.
A Domoticz alkalmazás natív módon számos hardvereszközt támogat. Esetünkben az árvízérzékelő olvasásához hozzá kell adnunk az úgynevezett "Dummy" hardvert a hardver listából.
Hardver hozzáadása után megjelenik az összes meghatározott hardver áttekintése. A hardver letiltható vagy törölhető.
Az új hardvernek szerepelnie kell a listán, és ott kell lennie a "Virtuális érzékelők létrehozása" gombnak.
Kattintson erre a gombra, és válassza az Érzékelő típusa "Riasztás" lehetőséget. Most hozzá kell adnunk az eszközt a Domoticz -hoz, hogy aktívvá váljon.
8. lépés: Adja hozzá az eszközt a Domoticzban, hogy aktívvá váljon
Kérjük, vegye figyelembe az "IDX" alatti számot. Ez az egyedi hivatkozás erre az eszközre, és szükségünk lesz rá később a Python -szkriptünkben, hogy kezeljük az értesítést. Ebben az esetben az IDX szám 1.
Engedélyezze az eszközt a bal oldali zöld nyílra kattintva (az alábbi képen kék, az eszköz engedélyezése miatt).
Írja be az eszköz nevét, majd kattintson a "Hozzáadás" gombra.
Lépjen a "Segédprogramok" menübe, és ott fel kell tüntetnie az eszközét.
Most be kell programoznunk az "eseményt" az érzékelőnkhöz. Ez azt jelenti, hogy meg kell mondanunk a szervernek, mit tegyünk, ha üzenetet kapott az érzékelő. És mondjuk ez volt a legnehezebb hely számomra:).
9. lépés: Ez nem így működik…
Először azzal próbáltam programozni az eseményt a / device / oldalon. Ez lent nem az enyém, de illusztráció.
Ha úgy gondolja, hogy bejelöl néhány jelölőnégyzetet, és ez működni fog, akkor téved:) Ez nem így működik. Azt hiszem, ez a funkció itt még nem fejeződött be. Ne felejtse el - ez nyílt forráskódú szoftver. Ok, néhány óra múlva megtaláltam a megoldást. A "Beállítás" legördülő menü "Események" parancsát kell használnunk.
Az "Események" gombra kattintva létrehozhat saját eseményt. Megteheti, ha megír egy kódot Pythonban vagy LUA -ban, vagy csak a "Blockly" nevű dolog használatával. A Blockly használatát választottam. Kétféleképpen kényszerítheti a szervert arra, amit akar.
10. lépés: Építse fel az eseményt helyes módon 1
1. Futtasson külső fájlt az "Események" segítségével, a "Start script" blokkolt üzenettel
Nekem ez tökéletesen működik Windows gépen. De ezzel nem sikerült a Raspberry Pi -n a Raspberry Pi -n. Gyanítom, hogy probléma van az engedélyekkel.
11. lépés: Az esemény építése helyes módon 2
2. Használja az "Értesítés küldése tárgy" üzenetet. Raspbianon működik. Ez az opció támogatja a Pushsafe és Pushover értesítések küldését.
Az első módszer előnye, hogy rugalmasabb. Kiválaszthatja a kijelzőn megjelenő ikont, hangokat és így tovább. Az "eseményem" a fenti képen látható.
Ezután programozzuk az ESP modult.
12. lépés: Az ESP8266-01 modul programozása
Kezdjük az ESP8266 modul villogásával. Általában ezek a modulok gyári firmware -t tartalmaznak. modulokkal kommunikálni lehet úgynevezett AT parancsok használatával. Ezenkívül ez a szoftver nem teszi lehetővé olyan modulok használatát, mint az önálló vezérlők. Ahhoz, hogy önálló vezérlőkként használhassuk őket, törölnünk kell a gyári firmware -t, és telepítenünk kell egy újat.
Ehhez esptoolt használunk. A firmware törléséhez a modult kell csatlakoztatnunk a számítógéphez. Ehhez TTL konverterre és néhány további komponensre van szüksége. De van egyszerűbb módszer is.:) Csak vásároljon az aliexpressen vagy az ebay-en USB-ről ESP8266 ESP-01 Wi-Fi adapter modulra, CH340G illesztőprogrammal.
Csatlakoztassa az ESP8266 modult a TTL átalakítóhoz a képen látható módon, és csatlakoztassa az USB -porthoz.
Ha ugyanaz a konverter van, mint nekem, akkor önmagában a kapcsolót "Prog" állásba kell kapcsolnia. Keresse meg az esptool telepítési helyét (általában valahol, mint a C: / Program Files (x86) Python36-32 / Scripts. Menjen ebbe a mappába, és indítsa el a parancssort. Típus: python esptool.exe --port COM5 erase_flash
Természetesen válassza ki a megfelelő portot. Az én esetemben ez a COM5. Az ESP telepítésének portját a Vezérlőpult - Rendszer - Eszközkezelő segítségével ellenőrizheti.
Telepítse a firmware -t (innen vettem: https://micropython.org/download#esp8266) a következő beírásával:
python esptool.exe --port COM5 --baud 460800 write_flash --flash_size = észleli 0 C: / path_to_firmware / esp8266-20180511-v1.9.4.bin
Rendben, most készen állunk a mikropython -szkriptek feltöltésére az ESP8266 -ba.
Ehhez az Adafruit MicroPython Tool -t (ampy) használom.
De manapság van egy másik lehetőség, az Esplorer. Ez egy alkalmazás felhasználói felülettel, amely lehetővé teszi fájlok feltöltését az ESP modulokba.
Itt talál útmutatást az ampy telepítéséhez. Tehát tegye a TTL átalakító kapcsolóját "UART" állásba. Fájlokat kell feltöltenünk:
- wifimgr.py - wifi menedzser a wifi hálózathoz való csatlakozáshoz
- main.py - a fő szkriptünk
A parancssorba írja be: ampy --port COM5 a C: / elérési utat a fájlba
Nyomja meg az "enter" gombot. Néhány másodperc múlva üres parancssort kell látnia. Ez azt jelenti, hogy a fájl feltöltésre került. Az ESP fájljainak listáját az ampy paranccsal ellenőrizheti:
ampy --port COM5 ls
Tapasztalatom szerint jobb a main.py feltöltése, miután minden szükséges fájlt feltöltött. ez így van, mert amint feltölti a main.py -t - az ESP8266 modul újraindul, és elkezdi végrehajtani a main.py fájlt. Tehát ebben az esetben, ha másik fájlt próbál feltölteni, néha a feltöltési folyamat sikertelen lesz. De ez nem jelenti azt, hogy minden elveszett:), csak próbáld meg másodszor, és sikerülni fog (ismét, tapasztalataim szerint).
A projekthez tartozó összes fájl elérhető innen:
13. lépés: Csatlakozás a WiFi hálózathoz. Értesítést kapni
ha minden rendben van, indítsa újra a modult a TTL átalakító visszahelyezésével a számítógép USB -portjába.
Az ESP elindítása után keresse meg a Wifimanager nevű új WiFi hálózatot. Csatlakozzon hozzá számítógépével vagy telefonjával, majd lépjen a 192.168.4.1 IP -címre. Itt csatlakoztathatja az ESP -t a helyi WiFi hálózathoz. Válassza ki a használni kívánt WiFi hálózatot, írja be a jelszót, majd nyomja meg a "Küldés" gombot.
Ha minden rendben van, megjelenik az "ESP sikeresen csatlakozott az XXXX hálózathoz" üzenet. Az ESP most csatlakozik a WiFi hálózathoz, és készen áll. Amint csatlakozott a WiFi -hez, csatlakozik a Domoticz szerverhez. Shorty értesítést kell kapnia a mobiltelefonjára.
A folyamatot a "Beállítás"/"Napló" menüben követheti nyomon.
Vua lia!:) Működik. Most folytathatjuk az összes alkatrész összeszerelését az alábbi tömbvázlat szerint.
14. lépés: Blokkdiagram
Erről a diagramról nincs sok mondanivaló. Nagyon egyszerű. Kapcsolja be az áramellátást az S1 kapcsolóval. A készülék kikapcsolt állapotban áll, amíg a víz rövidre zárja a "Vízérzékelő" csapokat. Ezután a "Pololu board" bekapcsol, és áramot ad a feszültségváltónak. Ez a HT7333 chipen alapuló tápegység modul stabil feszültséget alakít át 3,3 V feszültségre az ESP8266 számára. A következő ESP bekapcsol, és üzenetet küld a Domoticz szervernek.
15. lépés: Eredmény és következtetések
Működik. Az értesítés küldése akár 10 másodpercet is igénybe vehet: csatlakozás a WiFi -hez, értesítés küldése, riasztási üzenet küldése a telefonra.
Beprogramoztam az érzékelőt, hogy 30 percenként küldjön riasztást, ha vizet észlelt. Az érzékelő legfeljebb 5-6 értesítést küldhet, amíg az akkumulátor le nem merül. Ez az eszköz a vízszint meghatározására is használható. Amit javítani szeretnék.
1. Hogy gyorsabban működjön. Azt hiszem, megpróbálom használni az ESP-Now technológiát, amely lehetővé teszi több ESP közvetlen csatlakoztatását. Ebben az esetben a csatlakoztatás során az energiafogyasztás nagyon alacsony és gyorsabb. Tehát az ötlet az, hogy egy ESP -t használjunk hubként más ESP -k csatlakoztatásához.
2. Végezze el az akkumulátor töltöttségi szintjének riasztását. Most már nem tudhatja, van -e elegendő áram a riasztási üzenet küldéséhez, vagy sem. Azt hiszem, az érzékelő következő generációjában lesz egy speciális gomb az akkumulátor töltöttségének tesztelésére.
A felhasználónak meg kell nyomnia egy gombot, és megjelenik az akkumulátor töltöttségi szintje.
Ajánlott:
DIY 37 LED Arduino rulett játék: 3 lépés (képekkel)
DIY 37 Leds Arduino Roulette Játék: A rulett egy kaszinójáték, amelyet a francia szóról neveztek el, jelentése kis kerék
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: 20 lépés (képekkel)
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: Helló, barátom! Ebben a kétrészes sorozatban megtanuljuk használni a Tinkercad áramköreit - ez egy szórakoztató, hatékony és oktató eszköz az áramkörök működésének megismerésére! A tanulás egyik legjobb módja, ha megteszed. Tehát először megtervezzük saját projektünket:
BOSEBerry Pi Internet rádió: 4 lépés (képekkel)
BOSEBerry Pi Internet Radio: Imádok rádiót hallgatni! A házamban DAB rádiót használtam, de a vétel kissé foltosnak bizonyult, és a hang folyamatosan felbomlott, ezért úgy döntöttem, hogy saját internetes rádiót építek. Erős wifi jel van a házam körül és a digitális bátyám
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
A számítógép szétszerelése egyszerű lépésekkel és képekkel: 13 lépés (képekkel)
A számítógép szétszerelése egyszerű lépésekkel és képekkel: Ez az utasítás a számítógép szétszereléséről szól. A legtöbb alapvető alkatrész moduláris és könnyen eltávolítható. Fontos azonban, hogy szervezett legyen ezzel kapcsolatban. Ez segít elkerülni az alkatrészek elvesztését, és az újra összerakást is