Tartalomjegyzék:

IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás: 10 lépés (képekkel)
IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás: 10 lépés (képekkel)

Videó: IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás: 10 lépés (képekkel)

Videó: IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás: 10 lépés (képekkel)
Videó: Building Apps for Mobile, Gaming, IoT, and more using AWS DynamoDB by Rick Houlihan 2024, Július
Anonim
IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás
IoT hálózati vezérlő. 9. rész: IoT, otthoni automatizálás

Jogi nyilatkozat

OLVASSA EL EZT

Ez az útmutató részletesen ismerteti a hálózati tápellátást használó projektet (jelen esetben az Egyesült Királyság 240 VAC RMS), miközben minden gondossággal törekedtek a biztonságos gyakorlat és a helyes tervezési elvek alkalmazására, mindig fennáll a halálos áramütés veszélye, amikor ezekkel a hálózati feszültségekkel dolgozik. amelyekért a szerző nem vállal felelősséget, ha személyi sérülés vagy anyagi kár következik be a tartalom követése során. Következésképpen ezt a projektet saját felelősségére valósítja meg.

Preambulum

Ez a cikk, a 9. az otthoni automatizálásról szóló sorozatban, dokumentálja, hogyan lehet létrehozni és integrálni egy Sonoff 10A IoT hálózati vezérlőt egy meglévő otthoni automatizálási rendszerbe, beleértve az összes szükséges szoftverfunkciót a sikeres otthoni környezetben történő telepítéshez.

Bevezetés

Amint fentebb említettük, ez az útmutató részletesen bemutatja, hogyan lehet IoT hálózati vezérlőt készíteni és integrálni az iTead Sonoff 10A segítségével. Maga a készülék 10 amper @ 90 ~ 250VAC névleges teljesítményű, de ez a megvalósítás az 5 amper teljesítményére mérsékli a biztosítékos csatlakozón keresztül, amely az Egyesült Királyság 240 VAC RMS fő tápellátását biztosítja.

A tervezési módszertan zökkenőmentesen integrálódik az MQTT/OpenHAB alapú IoT hálózatba, amelyet ebben a sorozatban részletezünk az otthoni automatizálás építéséről, az innen vett újrafelhasznált kód alapján. Bármilyen IoT hálózati elem elvesztését is képes kezelni, és teljesen önállóan is működtethető. Önálló üzemmódban a készülék vezérlése egyszerűen a ház tetején található vezérlőgomb megnyomásával érhető el, amely átkapcsolja az előremenő tápellátást.

A Sonoff eszköz helyi vezérlésének engedélyezéséhez a GPIO14 -et kivesszük a tokból, és trigger bemenetként használjuk. A biztonság érdekében ezt a bemenetet egy optocsatoló áramkörön keresztül táplálják, és műanyag házba helyezik, hogy a kezelő soha ne legyen kitéve hálózati feszültségnek.

Végül a próza azt is felvázolja, hogyan lehet újraprogramozni az ESP8266 eszközt a Sonoff 10A-ban az Arduino IDE segítségével, és megadja az eszköz teljes körének részleteit, amelyek segítségével megbízhatóan programozható a célkód.

Milyen alkatrészekre van szükségem?

Sonoff hálózati vezérlő

  1. 1 kedvezmény Sonoff 10A itt
  2. 1 off 7805L 5v feszültségszabályozó itt
  3. 1 ki 240/6VAC 1.5VA transzformátor itt
  4. 2 ki 0,1 kerámia kondenzátor itt
  5. Itt 1 db 1000uF @25v elektrolit kondenzátor
  6. 1 ki itt a 2W01 híd egyenirányító
  7. Itt 2 db 4K7 ellenállás
  8. Itt 1 db 330R ellenállás
  9. 1 off SPST gomb itt
  10. 1 off Mulitcomp BM12W ABS ház itt
  11. Itt 1 TIL111 optocsatoló
  12. 1 ki 3-utas sorkapocs itt
  13. 1 ki kétirányú kódolt molex csatlakozó itt/itt
  14. 1 ki 3-utas kódolású molex csatlakozó itt/itt
  15. 1 ki 5-utas kódolású molex csatlakozó itt/itt
  16. 1 off 5-way molex csapok itt
  17. 1 kedvezmény a Winbond SPI Flash (W25Q32FVSIG) itt
  18. 1 db 20 mm -es biztosítéktartó + kupak itt
  19. 1 db 20 mm -es gyors ütésű 500 mA -es biztosíték itt
  20. 2 off poliamid kábel tömszelencék itt
  21. 1 ki az Egyesült Királyság hálózati csatlakozójából (BS1363/A) itt
  22. 1 kedvezmény az Egyesült Királyság fő aljzatából (BS1363/A) itt
  23. 7 db M3 16 mm -es CS nejlon csavar, (beleértve 10 db anyát) itt/itt
  24. 2 off Zip nyakkendők itt
  25. 1 off veroboard (0,1 "pitch) itt
  26. 1 off Különböző hosszúságú 22swg ónozott rézhuzal itt
  27. 1 db 3M White UK hálózati kábel itt
  28. 10 off Molex foglalat krimpel

Sonoff programozó

  1. 1 off LD33CV 3v3 feszültségszabályozó itt
  2. Itt 1 TO-220 hűtőborda
  3. Itt 1 hűtőborda paszta
  4. 1 ki 10uF @16v elektrolit kondenzátor itt
  5. 1 ki 0,1 kerámia kondenzátor itt
  6. 1 ki SPDT gomb itt
  7. Itt 1 db 4K7 ellenállás
  8. 1 ki kétirányú kódolt molex csatlakozó itt/itt
  9. 1 ki 3-utas kódolású molex csatlakozó itt/itt
  10. 5 off Molex foglalat krimpel
  11. 1 off 6-way molex foglalat itt
  12. 1 off SPST gomb itt
  13. 1 db 2,1 mm -es tápegység aljzat itt
  14. 1 off veroboard (0,1 "pitch) itt
  15. 1 ki USB -soros adapter (FTDI) itt

Milyen szoftverre van szükségem?

  1. Arduino IDE 1.6.9 itt
  2. Az Arduino IDE az ESP8266 programozására van konfigurálva. Lásd itt; Az Arduino IDE beállítása az ESP8266-01 programozásához

Milyen eszközökre van szükségem?

  1. Forrasztópáka,
  2. Fúró és különféle fúrók (beleértve a lépcsőzetes lyukvágót a kábelcsavarokhoz és a vezérlőgombhoz),
  3. Csavarhúzók (különféle),
  4. Állítható csavarkulcsok (kettő ki, pofaszélesség> 25 mm, kábelcsavarokhoz),
  5. Fájlok (különféle),
  6. Erős vice,
  7. Hőfegyver,
  8. DMM (lehetőleg CAT IV).

Milyen készségekre van szükségem?

  1. Jó az elektronika és az otthoni elektromos biztonság/tervezés/vezetékek stb.
  2. Az Arduino és az IDE ismerete,
  3. Jó gyártási készség (forrasztás, reszelés, fúrás stb.),
  4. Némi türelem,
  5. Némi megértés az otthoni hálózatról.

Érintett témák

  • Bevezetés
  • Áramkör áttekintés
  • Sonoff RetroMods
  • Építési és szerelési részletek
  • Sonoff programozási adapter
  • A szoftverrendszer áttekintése
  • Szoftver áttekintés
  • OpenHAB konfiguráció
  • Az IoT -eszköz tesztelése
  • Következtetés
  • Felhasznált hivatkozások

Sorozat linkek

A 8. részhez: WiFi IoT hőmérséklet- és páratartalom -érzékelő. Rész: 8 IoT, otthoni automatizálás

A 10. részhez: IR távirányító az IoT -n keresztül. 10. rész IoT, otthoni automatizálás

1. lépés: Áramkör áttekintése

Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés
Áramkör áttekintés

Áttekintés

Amint azt a fenti bevezetőben említettük, a hálózati vezérlő helyi be- és kikapcsolásához a Sonoff fedélzeti ESP8266 bemenetére volt szükség. Egy ilyen külső bemenet bevezetése megköveteli a Sonoff ABS burkolatának áttörését, és ezáltal potenciális ütésveszélyt okoz. Ennek kiküszöbölésére olyan optikai szigetelést használtam, hogy a hálózati vezérlő rendszer burkolatán kívül nincs lehetőség a hálózati áramnak való kitettségre.

Az alábbiakban az opto-leválasztó áramkör leírása található (a fenti 1. képen).

Áramkör részletei

Az opto-leválasztó áramkör közvetlenül az egységhez csatlakoztatott hálózatról kapja a tápellátást. A 240 VAC RMS-t a TR1 lépcső/leválasztó transzformátorra alkalmazzák J1 a pheonix érintkezővel MKDSN2, 5/3-5.08 poliamid 3-utas sorkapocs 16A és 400V névleges feszültséggel, amely képes 2,5 mm (négyzetméter) CSA és F1 500 mm 20 mm-es kábelt szállítani gyorsütésű biztosíték. A TR1 szekunder tekercselésére rendelkezésre álló 6VAC teljes hullámú, a B1 diódahíd által kiegyenlítve.

Ezt a teljes hullámú egyenirányított kimenetet ezután stabilizálják és szabályozzák a C1, C2 C3, R3 és az IC1, a 7805L sorozatú söntszabályozó, jó, tiszta 5 V -os tápvezetéket biztosítva.

Az 5 V-os sín ezután a T3111 opto-leválasztó OK1 bemenetének vezérlésére szolgál a J3-on keresztül csatlakoztatott, külső SPST gomb segítségével. A TIL111 kimenete a Sonoff GPIO14 bemenethez csatlakozik R2 -n keresztül 4K7 felhúzó ellenálláson keresztül. Így 340 V -nál jobb leválasztás érhető el (azaz csúcsfeszültség = (240VAC*sqroot (2))).

2. lépés: Sonoff RetroMods

Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods

A Sonoff 10A eszköz integrálása érdekében néhány utólagos módosítást kell végrehajtani.

Az első az, hogy adjunk hozzá egy 5-utas 0,1 -os lépcsős molex csatlakozót, amint az a fenti 1. ábrán látható. Ez lehetővé teszi a GPIO14 elérését a Sonoff-on, miután a védőburkolatot kicserélték, mint a fenti 2. és 3. képen.

Bár a fentiekben nem látható, előhoztam a soros TX/RX vonalakat is, hogy lehetővé tegyük az in situ programozást (lásd SK1..3 kábelköteget a fenti 1. lépésben).

A második módosítás az SPI Flash eszköz méretének növelése az alapértelmezett 1 MByte -ról 4 MB -ra, ez elegendő helyet biztosít az IoT webszerver fájljainak SPIFFS -ben való tárolásához.

Itt vásároltam az Ebay -ről az SMD SPI flash eszközt (W25Q32FVSIG)

A vaku cseréjéhez ideiglenesen eltávolítottam a Sonoff LED -et, mint a 4. képen, hogy jobb hozzáférést biztosítsak az SMD eszközhöz. A vaku forrasztásához hőpisztolyt használtam, amint az a fenti 5. képen látható. Ezután forrasztja vissza a 4 MB-os vakut és a LED-et (6. kép).

3. lépés: Építési és szerelési részletek

Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek
Építési és szerelési részletek

A hálózati vezérlőt egy Mulitcomp BM12W ABS dobozba zártam (1. kép fent). Ez a ház elkülönített sárgaréz M3 betétekkel rendelkezik, amelyek lehetővé teszik a többszöri hozzáférést az egységhez anélkül, hogy veszélyeztetnék a rögzítő meneteket, így a belső biztosíték szükség esetén cserélhető, vagy idővel belső ellenőrzés végezhető el (ugyanez nem mondható el a Sonoff készülékről, gyakorlatilag csak egyszer zárható öncipők segítségével).

A hálózati tápkábel elsődleges húzódásmentesítését egy M16 nylon/poliamid 6/6 fehér kábeltömítéssel sikerült elérni, amely az OD Min/Max 5mm/10mm kábelt támogatja.

A másodlagos húzásmentesítés egyetlen, a kábelre helyezett cipzárkötésen keresztül történt, ha túlzott terhelést kell kifejteni, és a kábel tömszelencéje meghibásodik, a cipzáras kötés a helyén tartja a kábelt.

Annak érdekében, hogy illessze a kábelcsavarokat, és elegendő helyet biztosítson a Sonoff és az opto-szigetelő elektronika felszereléséhez, lecsupaszítottam a belső NYÁK-rögzítő bordákat a fent látható módon (2. kép).

Minden elektronikát biztonságosan rögzítettek M3 nylon CS csavarokon keresztül, hogy biztosítsák a szekrény külsejével való szigetelést. Az opto-leválasztó elektronika 5 rögzítési ponttal van felszerelve, hogy biztosítsa a hang mechanikai szilárdságát, ha az egységet leejti, és ezáltal megakadályozza, hogy a leválasztó transzformátor tömege megszakítsa a tábla áramkörét.

Az egység ellátása az Egyesült Királyság szabványos színkóddal ellátott, fehér, 3 magos, PVC szigetelésű, többszálú (32/0,2 mm2) 1 mm-es (CSA) kábelén keresztül történt. 7,2 mm -es OD -vel, amely 10A -t képes szállítani.

A készüléket szabványos, 3 tűs biztonsági dugóval (BS 1363/A) jóváhagyott brit hálózati tápegységhez (240 VAC RMS) csatlakoztatta. A csatlakozó 5A feszültséggel olvadt.

Az opto-leválasztó áramkörhöz tartozó összes tápkábelt pheonix contact MKDSN2, 5/3-5.08 poliamid kapcsokkal kötötték össze, amelyek feszültsége 16 A és 400 V, és képes szállítani egy 2,5 mm-es CSA kábelt, így bőséges kapacitást biztosít két kábel számára minden pozíció.

A hálózati kábeleket nem ónoztuk, csak csavartuk, hogy megakadályozzuk a magok kiömlését, mielőtt behelyeznénk a csatlakozóblokkba. A hálózati kábelek bádogozása veszélyes gyakorlat, mivel a forrasztás idővel „ellazul”, és végül a kábel elveszik a csatlakozóblokkban.

Jegyzet:

  • OD = Külső átmérő.
  • VAC = Voltos váltakozó áram
  • RMS = Root Mean Square
  • CSA = Keresztmetszeti terület
  • CS = Süllyesztett számláló

4. lépés: Sonoff programozási adapter

Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter
Sonoff programozási adapter

A Sonoff 10A Arduino IDE-n keresztüli átprogramozásakor két szempontot kell figyelembe venni;

  1. Az Arduino IDE konfigurálása az ESP8266 programozására,
  2. Magának a hardvernek a programozása.

Az Arduino IDE konfigurálása az ESP8266 programozására

Az Ardino IDE konfigurálásához kövesse az itt található utasításokat Az Arduino IDE beállítása az ESP8266-01 programozásához

A hardver programozása

Ez többlépcsős folyamat, mint minden esetben az ESP8266 esetében. Itt a Sonoff áramellátását külső stabilizált 3v3 egyenáramú tápegység biztosítja, és NEM hálózati tápegységről. USB -soros eszközre lesz szükség az adatok küldéséhez és fogadásához a Sonoffba. Csatlakoztassa a TX -et és az RX -et a 2. és 4. képen látható módon.

Programozási lépések (általános)

  1. Először győződjön meg arról, hogy a Sonoff nem kap külső hálózati áramot,
  2. Nyomja meg és tartsa lenyomva a gombot a Sonoff készüléken. (fenti 1. kép, jelzett újravillantás gomb),
  3. Alkalmazza a külső DC 3v3 tápegységet az 1. tüskére (2. kép fent),
  4. Engedje el a Sonoff gombot,
  5. A készülék mostantól a szokásos módon átprogramozható az Arduino IDE segítségével.

Hogy kicsit megkönnyítsük a dolgokat, létrehoztam a fenti programozóeszközt (3. és 4. kép), amely az SK1… 3 kábelkötegen keresztül csatlakozott a Sonoffhoz (az 1. utasításban leírtak szerint). Ez lehetővé tette az ESP8266 egyszerűbb programozását. Ezenkívül lehetőséget biztosított a GPIO14 tesztelésére bemenetként az R1, a 4K7 felhúzó ellenállás és az S1 gomb használatával.

A fenti programozóeszköz használatával (3. és 4. kép) A programozási lépések a következők:

  1. Nyomja meg és tartsa lenyomva a Sonoff újravillantás gombját,
  2. Impulzálja a 3v3 tápegységet az S2 pillanatnyi megnyomásával,
  3. Engedje fel az újravillantás gombot,
  4. A készülék most programozható.

MEGJEGYZÉS - FIGYELMEZTETÉS

Semmilyen körülmények között sem szabad áramot szolgáltatni a hálózatról a Sonoff újraprogramozási művelete során

5. lépés: A szoftverrendszer áttekintése

A szoftverrendszer áttekintése
A szoftverrendszer áttekintése
A szoftverrendszer áttekintése
A szoftverrendszer áttekintése

Ez az IoT hálózati vezérlő eszköz nagyrészt ugyanazokat a hat kulcsfontosságú szoftverkomponenst tartalmazza, mint az Instructable WiFi IoT hőmérséklet- és páratartalom -érzékelőben. Rész: 8 IoT, otthoni automatizálás és a fenti 1. képen látható, némi testreszabással.

SPIFFS

Ez a (4 MB-ra frissített) fedélzeti SPI Flash Filing System, és a következő információk tárolására szolgál (lásd a fenti 2. ábrát);

  • Ikonok és a „Hálózati vezérlő konfigurációjának kezdőlapja” html: Az IoT -eszköz szolgálja ki, ha nem tud csatlakozni az IoT WiFi hálózatához (általában a helytelen biztonsági információk miatt), és lehetőséget biztosít a felhasználó számára a hálózati vezérlő távoli konfigurálásához. az új SPIFFS tartalom újraprogramozásának vagy feltöltésének szükségessége.
  • Biztonsági információk: Ez tartalmazza az IoT -eszköz bekapcsolásakor felhasznált információkat, hogy csatlakozzon az IoT WiFi hálózatához és az MQTT Brokerhez. A „Hálózati vezérlőkonfiguráció honlapján” keresztül beküldött információk ebbe a fájlba íródnak („secvals.txt”).

Megjegyzés: Az eszköz kezdeti beállításához tekintse meg a SPIFFS és az Arduino IDE együttes használatának részleteit.

mDNS szerver

Ezt a funkciót akkor hívják fel, ha az IoT eszköz nem tud WiFi állomásként csatlakozni a WiFi hálózatához, és ehelyett egy WiFi hozzáférési pont lett, valami hasonló a hazai WiFi útválasztóhoz. Egy ilyen útválasztó esetén általában úgy csatlakozna hozzá, hogy például a 192.168.1.1 (általában a dobozra ragasztott címkére nyomtatott) IP -címét közvetlenül a böngésző URL -sávjába írja be, amelyre belépési oldalt kaphat a belépéshez a felhasználónevet és jelszót, amely lehetővé teszi az eszköz konfigurálását. Az ESP8266 AP módban (Hozzáférési pont mód) az eszköz alapértelmezés szerint a 192.168.4.1 IP -címet használja, azonban az mDNS szerver futása esetén csak a böngésző URL -sávjába kell beírnia a „MAINSCON.local” emberbarát nevet. 'Hálózati vezérlő konfigurációjának kezdőlapja'.

MQTT kliens

Az MQTT kliens minden szükséges funkciót biztosít; csatlakozzon az IoT hálózat MQTT brókeréhez, iratkozzon fel a választott témákra, és tegyen közzé hasznos terheléseket egy adott témában. Röviden, ez biztosítja az IoT alapvető funkcióit.

HTTP webszerver

Amint fentebb említettük, ha az IoT eszköz nem tud csatlakozni ahhoz a WiFi hálózathoz, amelynek SSID -je, P/W stb. A SPIFFS -ben tárolt biztonsági információs fájlban van definiálva, akkor az eszköz hozzáférési pont lesz. Miután csatlakozott a hozzáférési pont által biztosított WiFi hálózathoz, a HTTP webszerver jelenléte lehetővé teszi, hogy közvetlenül csatlakozzon az eszközhöz, és módosítsa annak konfigurációját egy HTTP webböngésző használatával, amelynek célja a „hálózati vezérlő konfigurációjának kiszolgálása” Kezdőlap 'weboldal, amely SPIFFS formátumban is megtalálható.

WiFi állomás

Ez a funkció lehetővé teszi, hogy az IoT eszköz csatlakozzon egy hazai WiFi hálózathoz a Biztonsági információ fájl paraméterei segítségével, e nélkül az IoT eszköze nem tud előfizetni/közzétenni az MQTT Broker szolgáltatást

WiFi hozzáférési pont

A WiFi hozzáférési ponttá válás azon eszköze, amellyel az IoT -eszköz lehetővé teszi, hogy csatlakozzon hozzá, és módosítsa a konfigurációt egy WiFi állomáson és egy böngészőn keresztül (például az Apple iPad Safari -ján). Ez a hozzáférési pont egy SSID = "MAINSCON" + az IoT eszköz MAC -címének utolsó 6 számjegyét sugározza. Ennek a zárt hálózatnak a jelszava ötletesen „PASSWORD”.

6. lépés: A szoftver áttekintése

Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés

Ennek a forráskódnak a sikeres fordításához a következő extra könyvtárakra lesz szüksége;

PubSubClient.h

  • Szerző: Nick O'Leary
  • Cél: Lehetővé teszi az eszköz számára, hogy közzétegyen vagy feliratkozzon az MQTT témákra egy adott brókerrel
  • Innen:

Ugrálás2.h

  • Szerző: Thomas O Fredericks
  • Cél: A bemeneti kapcsoló kikapcsolása a szoftverben
  • Innen:

Kód áttekintés

A szoftver a fenti 1. képen látható állapot-gépet használja (a forrás teljes másolata alább). A következő 5 fő állapot létezik;

  • BENNE

    Ez az inicializálási állapot az első állapot, amelyet a bekapcsolás után adtak meg

  • NOCONFIG

    Ez az állapot akkor lép be, ha a bekapcsolás után érvénytelen vagy hiányzó secvals.txt fájlt észlel

  • FÜGGŐBEN

    Ez az állapot átmeneti, és akkor lépett be, ha nincs WiFi hálózati kapcsolat

  • FÜGGŐ MQTT

    Ez az állapot átmeneti, egy WiFi hálózati kapcsolat létrehozása után lép be, és bár nincs kapcsolat az adott hálózat MQTT -brókerével

  • AKTÍV

    Ez a normál működési állapot, amelyet a WiFi hálózati kapcsolat és az MQTT Broker kapcsolat létrehozása után kell megadni. Ebben az állapotban a hálózati vezérlő közzéteszi az MQTT brókernek, és parancsokat kap az előfizetett témákon keresztül

Az állapotok közötti átmenetet szabályozó eseményeket a fenti 1. kép írja le. Az állapotok közötti átmenetet a következő SecVals paraméterek is szabályozzák;

  • 1. MQTT Broker IP -cím. Pontozott tizedes formában AAA. BBB. CCC. DDD
  • 2. MQTT bróker port. Egész alakban.
  • A 3. MQTT Broker kapcsolat megkísérli az STA módról AP módra való váltást. Egész alakban.
  • 4. WiFi hálózati SSID. Szabad formában.
  • 5. WiFi hálózati jelszó. Szabad formában.

Amint fentebb említettük, ha az IoT -eszköz nem képes WiFi állomásként csatlakozni a WiFi -hálózathoz, akkor az SSID -t és a P/W -t az SPIFFS -fájlban tárolt secvals.txt tartalmazza, akkor az eszköz hozzáférési pont lesz. Miután csatlakozott ehhez a hozzáférési ponthoz, a 2. képen látható módon megjeleníti a „Hálózati vezérlő konfiguráció kezdőlapját” (a „MAINSCON.local” vagy a 192.168.4.1 beírásával a böngésző URL -címsorába). Ez a honlap lehetővé teszi a hálózati vezérlő újrakonfigurálását egy HTTP böngészőn keresztül.

MQTT Téma elnevezési konvenció

A fenti 3. képen az MQTT témákhoz használt elnevezési konvenció látható, és összhangban van a korábbi Instructable (itt 5. lépés) mintával.

MQTT Az IoT -eszköz által használt témák

Az egyértelműség kedvéért dokumentáltam (4. kép) azokat a témákat és kapcsolódó üzenetsorozatokat, amelyeket ez az eszköz közzétesz/előfizet. A kép a ház külső részén lévő fehér vezérlőgombbal való interakciót is ábrázolja (bár ironikus módon a gomb pirosan látható).

Távoli konfigurációs hozzáférés ACTIVE állapotban

Miután csatlakozott az MQTT Brokerhez, lehetőség van az eszköz biztonsági paramétereinek távoli újrakonfigurálására az MQTT témakörben. A kapcsolódó secvals.txt fájl csak írási hozzáféréssel rendelkezik.

Felhasználói hibakeresés

A rendszerindítási folyamat során a Sonoff eszköz ledje a következő hibakeresési visszajelzést adja, bár meg kell jegyezni, hogy ennek megtekintéséhez el kell távolítania a fedelet és le kell fednie az áramkört, így csak tanácsos ezt megtenni a kód fejlesztése és az eszköz bekapcsolása közben 3v3 táppal;

  • 1 Rövid villanás: Nincs konfigurációs fájl a SPIFFS (secvals.txt) fájlban,
  • 2 Rövid villanás: Az IoT eszköz WiFi -hálózathoz próbál csatlakozni,
  • Folyamatos megvilágítás: A Sonoff IoT eszköz megpróbál csatlakozni az MQTT Brokerhez,
  • Ki: Az eszköz aktív és csatlakozik az MQTT Brokerhez.

1. megjegyzés: A „Hálózati vezérlő konfigurációjának kezdőlapja” nem használ biztonságos aljzatokat, ezért a hálózat biztonságára támaszkodik.

2. megjegyzés: Több IoT eszköz programozásához az MQTT karakterláncot szerkeszteni kell, mielőtt letöltené az egyes eszközökre. Ennek oka az, hogy a hálózati vezérlő azonosító száma be lett ágyazva az MQTT témakörbe. azaz. a közzétett szoftverben a 100 értéket választottam: 'WFD/MainsCont/100/Relay/Command/1', és 2 eszközömnél 1 -es és 2 -es számozásúak.

  • 'WFD/MainsCont/1/Relé/parancs/1'
  • 'WFD/MainsCont/2/Relé/Parancs/1'

3. megjegyzés: A teljesség kedvéért AKTÍV állapotban az IoT szoftver lehetővé teszi a Sonoff LED vezérlését és az újravillantás gomb állapotának közzétételét. Bár ezek csak a hibakeresési folyamat során értékesek, mivel normál működés közben egyikük sem kerül a felhasználó elé.

7. lépés: OpenHAB konfiguráció

OpenHAB konfiguráció
OpenHAB konfiguráció
OpenHAB konfiguráció
OpenHAB konfiguráció
OpenHAB konfiguráció
OpenHAB konfiguráció

Tesztelési célból úgy döntöttem, hogy a két hálózati vezérlőt a házam "Nappali" szobájában helyezem el. Ez az OpenHAB oldal a főoldalon keresztül érhető el, mint az 1. képen.

Módosítottam az OpenHAB.sitemap konfigurációját, amelyet a korábbi Instructable -ban (itt) adtam meg, és hozzáadtam a „Mains Controller 1” és „Mains Controller 2” egyedi bejegyzéseket (2. kép fent). Hozzáadtam a bejegyzéseket (Nappali hálózati feszültség 1 és 2), hogy megjelenítse a két új IoT eszköz vevőjén mért RSSI trendeket (3. kép).

Végül hozzáadtam a.rules és.items fájlok bejegyzéseit, hogy lehetővé tegye a Sonoff dinamikus állapotszinkronizálását, és frissítse/animálja a rossz grafikus kapcsolási kísérletet (a kapcsoló aktív állapotban bezárul, és inaktív állapotban nyílik meg). A 2. kép példát mutat az MC1 aktív és az MC2 inaktív állapotára.

1. megjegyzés: Ha nem biztos benne, hogyan kell használni az OpenHAB -ot, olvassa el itt az OpenHAB beállítása és konfigurálása című részt. 6. rész: IoT, otthoni automatizálás”

2. megjegyzés: A módosított webhelytérkép, szabályok és elemfájlok, ikonok stb. Másolata az alábbi zip fájlban található.

3. megjegyzés: RSSI = Fogadott jelerősség jelzés. Ez azt méri, hogy az IoT -eszköz milyen jól látja a WiFi -hálózatot.

8. lépés: Az IoT -eszköz tesztelése

Image
Image
Az IoT -eszköz tesztelése
Az IoT -eszköz tesztelése

Amint azt az Instructable WiFi IoT hőmérséklet- és páratartalom -érzékelő című részben leírtuk. Rész: 8 IoT, otthoni automatizálás A 7. lépésben az IoT-eszköz első tesztelését MQTT-kapcsolaton keresztül hajtottuk végre az MQTT Spy-n keresztül (mint a fenti 1. ábrán látható rendszerblokk-diagramon), a LED-kimenet figyelése, a gomb bemenetei (mind a Sonoff újravillantás gombja, mind a fehér külső gomb) és hibakeresési forgalmat a soros interfészen. Ez lehetővé tette számomra, hogy gyakoroljak az összes feliratkozott témát, és ellenőrizzem a közzétett válaszokat. Bár ez ismét kézzel történt, és időigényes volt, bár lehetővé tette az üzenetek/témakörök közzétételét 100% -ban.

Mivel a fő szoftverállapot -gépet (fenti 6. lépés) a korábbi Instructable -ből (8. rész) örökölte, a józan ész ellenőrzésétől eltérően, a szoftver képes csatlakozni a WiFi N/W és az MQTT Brokerhez, feltételezték, hogy ez megfelelően működik.

A teljes rendszerszintű tesztelés ezután befejeződött a hálózati vezérlő és az IoT infrastruktúra segítségével (ismét az 1. képen), ezúttal az OpenHAB segítségével, hogy ellenőrizzék az IoT eszközzel való interakciót. Az IoT hardver és a dummy terhelés beállítása látható a fenti 2. képen.

A videó részletesen bemutatja a rendszerteszteket, és világosan mutatja, hogy valós időben valósul meg a szinkronizálás az OpenHAB eszközök (PC/Chrome és iPad/OpenHAB APP) között. Ezenkívül élő üzeneteket is megjelenít a hálózati vezérlőknek az MQTTSpy -n keresztül (további részletekért lásd itt: MQTT -bróker beállítása. 2. rész: IoT, otthoni automatizálás) és az OpenHAB -féle rendszernaplót málna -pi szerverről PuTTY SSH -kapcsolaton keresztül (további részletekért lásd itt részletek Az OpenHAB beállítása és konfigurálása 6. rész: IoT, otthoni automatizálás).

Megjegyzés: A hibakeresési forgalmat a végső szoftverkiadáshoz állítottuk össze.

9. lépés: Következtetés

Tábornok

A projekt viszonylag könnyen megvalósítható és jól működött. A beágyazott szoftvert egyszerű volt előállítani, mivel ez a sorozat 8. részének hőmérséklet- és páratartalom -érzékelői kódjának kivágott változata.

Kezdetben csak fehér alkatrészeket akartam beszerezni pusztán esztétikai minőségük miatt. Ezt a vezérlőgomb kivételével mindenben elértem. Próbáld ki, ahogy tudtam, nem tudtam jó/olcsó teljesen fehér gombot beszerezni.

Sonoff 10A készülék

Az alábbiakban felsoroltam a Sonoff eszköz ésszerű előnyeit és hátrányait

Előnyök

  • Olcsó.
  • Jó közösségi támogatás.
  • Újra programozható az Arduino IDE-n keresztül.

Hátrányok

  • Gyenge burkolat.
  • Minimális I/O (használható csatlakozókon keresztül).
  • Nyugalmi állapotban melegen fut.
  • Csak 1 MB-os fedélzeti SPI vakuval rendelkezik.
  • A PITA programozható, ha a helyére van kötve.
  • Amikor új kódot integráltunk a Sonoff tesztelésébe, a relé lezárása problémás volt, mivel a relé 5v, és a Sonoff programozására használt tápellátás 3v3. A relé aktiválása csak a fül számára érzékelhető.

Aggodalmak

  • Nem kapcsolja a semleges vonalat. SPST relét használ.
  • Nincs összeolvadva.
  • Rossz kábelvezetés.
  • A NYÁK nincs rögzítve a Sonoff házban.

Hozzászólás a mérnöki tervezéshez

Tekintettel arra, hogy ezt az IoT-eszközt az Egyesült Királyság feszültség alatt álló hálózatának kapcsolására kellett használni (240 VAC RMS), mind a jó mechanikai, mind az elektromos tervezési gyakorlatot követtem, és gondoskodtam arról, hogy a sokkveszély minimálisra csökkenjen azáltal, hogy nem teszek ki elektromosan vezető anyagokat, az összes alkatrész megadása, kimeneti terhelés, biztosítékvédelem alkalmazása mind a hálózati vezérlőre, mind az optocsatolt alrendszerre, a jó, töretlen földelés beépítése és az optikai/galvanikus leválasztás.

Lehetséges javulás

Utólag hasznos lett volna vizuális jelzést adni a hálózati vezérlő kimenetéről (LED vagy neon). Bár ez nem jelent problémát a mindennapi használatban, mivel a szokásos gyakorlat szerint a karbantartási munkálatok előtt el kell választani a terhelést az áramellátástól, vagy a helyi vezérlőgomb egyszerű megnyomásával válthat a kimenetről, ha a lámpa kigyullad, ha csatlakoztatva van.

Záró jegyzet

Ha két nagyon gyenge példát szeretne látni az elektromos hálózatról, nézze meg az alábbi linkeket. Darwin -díjaik hamarosan a poszton lesznek, ebben egészen biztos vagyok;

  • Mad Scientist hosszabbító kábel
  • Közösségi visszajelzés 03 - Energiabiztonsági aggályok!

10. lépés: Felhasznált hivatkozások

A következő források felhasználásával hoztam össze ezt az utasítást;

PubSubClient.h

  • Szerző: Nick O'Leary
  • Cél: Lehetővé teszi az eszköz számára, hogy közzétegyen vagy feliratkozzon az MQTT témákra egy adott brókerrel
  • Innen:

Ugrálás2.h

  • Szerző: Thomas O Fredericks
  • Cél: A bemeneti kapcsoló kikapcsolása a szoftverben
  • Innen:

SPIFFS

https://esp8266.github.io/Arduino/versions/2.0.0/do…

Sonoff vaku frissítése

  • https://www.andremiller.net/content/upgrading-sonof…
  • https://tech.scargill.net/32mb-esp01/
  • https://www.andremiller.net/content/upgrading-sonof…

Sonoff áramkör diagramja

https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf

USB UART modul (más néven FTDI)

https://www.ebay.co.uk/itm/6Pin-USB-2-0-to-TTL-UART-Module-Converter-CP2102-STC-Replace-FT232-CF-/272249732398?epid=503069058&hash=item3f63593d2e: g: QVUAAOSw71BXP92B

Darwin -díjak (könnyű dombormű)

https://www.darwinawards.com/

TIL111 Opto-leválasztó adatlap

Ajánlott: