Sadržaj:

IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija: 10 koraka (sa slikama)
IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija: 10 koraka (sa slikama)

Video: IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija: 10 koraka (sa slikama)

Video: IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija: 10 koraka (sa slikama)
Video: Schneider Electrico postrojenje budućnosti | Schneider Electric 2024, Juli
Anonim
IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija
IoT mrežni kontroler. Dio 9: IoT, kućna automatizacija

Odricanje odgovornosti

PROČITAJTE OVO PRVO

U ovom Uputstvu detaljno je opisan projekt koji koristi električno napajanje (u ovom slučaju UK 240VAC RMS), dok se vodilo računa o primjeni sigurne prakse i načelima dobrog dizajna, uvijek postoji opasnost od potencijalno smrtonosnog električnog udara pri radu s ovim naponom napajanja i za koju autor ne može prihvatiti nikakvu odgovornost ako dođe do tjelesnih ozljeda ili oštećenja imovine pri praćenju njenog sadržaja. Zbog toga ovaj projekt radite na vlastitu odgovornost.

Preambula

Ovaj članak, deveti u nizu o kućnoj automatizaciji, dokumentira kako stvoriti i integrirati mrežni kontroler Sonoff 10A IoT u postojeći sistem kućne automatizacije, uključujući svu potrebnu softversku funkcionalnost za uspješno postavljanje u domaćem okruženju.

Uvod

Kao što je gore spomenuto, ovaj Instructable detaljno opisuje kako napraviti i integrirati IoT mrežni kontroler koristeći Sonoff 10A iz iTeada. Sam uređaj se ocjenjuje za 10 ampera pri 90 ~ 250VAC, međutim ova implementacija ga ocjenjuje na 5 ampera putem osigurača koji osigurava glavno napajanje UK 240VAC RMS.

Metodologija projektiranja besprijekorno se integrira u MQTT/OpenHAB baziranu IoT mrežu detaljno opisanu u ovoj seriji o izgradnji kućne automatizacije na temelju ponovno korištenog koda preuzetog odavde. Također može podnijeti gubitak bilo kojeg IoT mrežnog elementa i potpuno je sposoban raditi samostalno. Dok je u samostalnom načinu rada, kontrola uređaja postiže se jednostavnim pritiskom na kontrolno dugme na vrhu kućišta, čime se prebacuje izlaz napajanja prema naprijed.

Da bi se omogućila ova lokalna kontrola Sonoff uređaja, GPIO14 se izvlači iz kućišta i koristi se kao ulaz okidača. Radi osiguranja sigurnosti, ovaj ulaz se napaja putem strujnog kruga optičkog spregača i smješten je u plastično kućište tako da operater ni u jednom trenutku nije izložen naponu napajanja iz mreže.

Konačno, proza također opisuje kako ponovno programirati uređaj ESP8266 u Sonoffu 10A koristeći Arduino IDE i daje detalje o cijelom krugu uređaja koji se može koristiti za pouzdano programiranje ciljnog koda.

Koji dijelovi mi trebaju?

Sonoff mrežni kontroler

  1. 1 popusta na Sonoff 10A ovdje
  2. 1 isključite regulator napona 7805L 5v ovdje
  3. 1 isključeno Transformator 240/6VAC 1.5VA ovdje
  4. Ovdje isključite 2 od 0,1 keramičkih kondenzatora
  5. 1 od 1000uF @25v elektrolitičkog kondenzatora ovdje
  6. 1 off Bridge ispravljač 2W01 ovdje
  7. Ovdje isključite 2 od 4K7 otpornika
  8. Ovdje 1 isključite otpornik 330R
  9. 1 dugme SPST ovdje
  10. 1 off Mulitcomp BM12W ABS kućište ovdje
  11. 1 isključeno opto-sprežnica TIL111 ovdje
  12. Ovdje je 1 off 3-way terminal block
  13. 1 off 2-Way kodirani molex konektor ovdje/ovdje
  14. 1 off 3-way kodirani molex konektor ovdje/ovdje
  15. 1 off 5-Way kodirani molex konektor ovdje/ovdje
  16. Ovdje možete pronaći 1 off 5-way molex igle
  17. 1 popusta na Winbond SPI Flash (W25Q32FVSIG) ovdje
  18. Ovdje imate 1 off 20 mm držač osigurača + kapu
  19. Ovdje je 1 isključen osigurač za brzo puhanje od 500 mA od 20 mm
  20. Ovdje isključite 2 uvodnice od poliamidnih kabela
  21. 1 isključite UK mrežni utikač (BS1363/A) ovdje
  22. 1 popust UK glavna utičnica (BS1363/A) ovdje
  23. 7 isključenih M3 16 mm CS najlonskih vijaka, (uključujući 10 isključenih matica) ovdje/ovdje
  24. 2 popusta na Zip kravate ovdje
  25. 1 off veroboard (0,1 "korak) ovdje
  26. 1 off Ovdje se nalazi kalajisana bakrena žica različitih dužina 22swg
  27. Ovdje možete pronaći 1 off 3M bijeli UK kabel za napajanje
  28. Ovdje možete pronaći 10 off Molex utičnica

Sonoff programer

  1. 1 isključite regulator napona LD33CV 3v3 ovdje
  2. Ovdje je 1 isključen hladnjak TO-220
  3. Ovdje imate 1 pastu za hladnjak
  4. 1 isključeno 10uF @16v Elektrolitički kondenzator ovdje
  5. Ovdje je 1 od 0,1 keramičkog kondenzatora
  6. 1 dugme SPDT ovdje
  7. Ovdje 1 isključite 4K7 otpornik
  8. 1 off 2-Way kodirani molex konektor ovdje/ovdje
  9. 1 off 3-way kodirani molex konektor ovdje/ovdje
  10. Ovdje se nalazi 5 off Molex utičnica
  11. 1 off 6-way molex utičnica ovdje
  12. 1 dugme SPST ovdje
  13. 1 utičnica za 2,1 mm PSU ovdje
  14. 1 off veroboard (0,1 "korak) ovdje
  15. 1 isključite USB na serijski adapter (FTDI) ovdje

Koji softver mi treba?

  1. Arduino IDE 1.6.9 ovdje
  2. Arduino IDE konfiguriran za programiranje ESP8266. Vidi ovdje; Postavljanje Arduino IDE-a za programiranje ESP8266-01

Koji alati su mi potrebni?

  1. Lemilica,
  2. Bušilica i različiti nastavci (uključujući rezač sa stepenastim otvorom za kablovske uvodnice i kontrolno dugme),
  3. Odvijači (različiti),
  4. Podesivi ključevi (dva isključena, širina čeljusti> 25 mm, za kablovske uvodnice),
  5. Datoteke (razne),
  6. Čvrst porok,
  7. Toplinska pištolj,
  8. DMM (po mogućnosti CAT IV).

Koje vještine su mi potrebne?

  1. Dobro razumijevanje elektronike i kućne električne sigurnosti/dizajna/ožičenja itd.,
  2. Poznavanje Arduina i njegovog IDE -a,
  3. Dobre vještine izrade (lemljenje, turpijanje, bušenje itd.),
  4. Malo strpljenja,
  5. Malo razumijevanja vaše kućne mreže.

Obrađene teme

  • Uvod
  • Pregled kola
  • Sonoff RetroMods
  • Detalji o izgradnji i montaži
  • Sonoff Adapter za programiranje
  • Pregled softverskog sistema
  • Pregled softvera
  • OpenHAB konfiguracija
  • Testiranje vašeg IoT uređaja
  • Zaključak
  • Korišćene reference

Linkovi serija

Do dijela 8: WiFi IoT osjetnik temperature i vlažnosti. Dio: 8 IoT, kućna automatizacija

Za dio 10: IC daljinsko upravljanje putem IoT -a. Dio 10 IoT, Kućna automatizacija

Korak 1: Pregled kola

Pregled kola
Pregled kola
Pregled kola
Pregled kola
Pregled kola
Pregled kola
Pregled kola
Pregled kola

Pregled

Kao što je spomenuto u uvodu gore, kako bi se lokalno uključivanje i isključivanje mrežnog kontrolera moglo uključiti, potreban je ulaz na Sonoff-ovom ugrađenom ESP8266. Uvođenje takvog vanjskog ulaza zahtijeva probijanje Sonoff ABS kućišta i stoga stvara potencijalnu opasnost od udara. Da bih to prevladao, upotrijebio sam optičku izolaciju tako da ne postoji mogućnost izlaganja mrežnoj električnoj energiji izvan kućišta sistema mrežnog regulatora.

Slijedi opis opto-izolacionog kola (na slici 1 gore).

Detalji o krugu

Optoizolacijski krug prima napajanje izravno iz električne mreže priključene na jedinicu. 240VAC RMS primjenjuje se na transformator za smanjenje/izolaciju TR1 preko J1, feonix kontakt MKDSN2, 5/3-5.08 poliamidni trosmjerni terminal naznačen na 16A na 400V koji može nositi kabel od 2,5 mm (sq) CSA i F1 do 500 mA 20 mm osigurač za brzo izgaranje. Dostupni 6VAC na sekundarnim namotima TR1 je puni val ispravljen diodnim mostom B1.

Ovaj izlazni izlaz s punim valovima tada se stabilizira i regulira pomoću C1, C2 C3, R3 i IC1 regulatora šanta serije 7805L, dajući dobru, čistu opskrbnu šinu od 5 V.

Šina 5v se tada koristi za kontrolu ulaza u optički izolator TIL111 preko vanjskog bijelog SPST dugmeta spojenog preko J3. Izlaz TIL111 je spojen na Sonoff GPIO14 ulaz preko R2 4K7 otpornika za podizanje. Tako se postiže bolje od 340V izolacije (tj. Vršni napon = (240VAC*sqroot (2))).

Korak 2: Sonoff RetroMods

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

Da bi se integrirao uređaj Sonoff 10A potrebno je napraviti neke retroaktivne izmjene.

Prvi je dodavanje 5-smjernog 0,1 pitch molex konektora kao što je prikazano na slici 1 gore. Ovo omogućava pristup GPIO14 na Sonoffu nakon što se zaštitni poklopac zamijeni kao na slikama 2 i 3 gore.

Iako gore nije prikazano, također sam iznio serijske TX/RX linije koje omogućavaju programiranje na licu mjesta (pogledajte kabelski svežanj SK1..3 u koraku 1 gore).

Druga izmjena je povećanje veličine SPI Flash uređaja sa zadanih 1MByte na 4MBytes, kako bi se omogućilo dovoljno prostora za datoteke IoT web poslužitelja u SPIFFS -u.

Ovdje sam kupio SMD SPI flash uređaj (W25Q32FVSIG) od Ebaya

Da bih zamijenio blic, privremeno sam uklonio Sonoff LED kao na slici 4 kako bih omogućio bolji pristup SMD uređaju. Za uklanjanje lemljenja blica koristio sam toplotni pištolj kao što je prikazano na slici 5 gore. Zatim ste ponovo zalemljeni 4MByte Flash i LED (slika 6).

Korak 3: Detalji o izgradnji i montaži

Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži
Detalji o izgradnji i montaži

Mrežni regulator sam stavio u Mulitcomp BM12W ABS kutiju (slika 1 gore). Ovo kućište ima izolirane mesingane umetke M3 koji omogućuju višestruki pristup jedinici bez ugrožavanja navoja za pričvršćivanje, tako da se unutarnji osigurač može zamijeniti ako je potrebno ili se s vremenom može izvršiti unutarnji pregled (isto se ne može reći za uređaj Sonoff, koji efektivno se zatvara samo jednom pomoću samorezača).

Primarno rasterećenje mrežnog kabela za napajanje postignuto je bijelom kabelskom uvodnicom M16 od najlona/poliamida 6/6 koja podržava kabel OD Min/Max 5 mm/10 mm.

Sekundarno rasterećenje je izvedeno pomoću jedne vezice s patentnim zatvaračem postavljene na kabel u slučaju prevelikog naprezanja i otkaza kabelske uvodnice, vezica s patentnim zatvaračem zadržat će kabel na mjestu.

Kako bih uklopio kabelske uvodnice i osigurao dovoljno prostora za postavljanje Sonoff-ove i opto-izolacijske elektronike, skinuo sam unutrašnja rebra za montažu na PCB-u, kao što je prikazano gore (slika 2).

Sva elektronika je sigurno montirana pomoću M3 najlonskih vijaka CS kako bi se osigurala izolacija s vanjske strane kućišta. Optoizolacijska elektronika montirana je s 5 točaka pričvršćivanja kako bi se osigurala zvučna mehanička snaga u slučaju pada jedinice, čime se sprječava da masa izolacijskog transformatora prekine krug veroboard.

Snabdijevanje jedinice postignuto je bijelim trožilnim PVC-om izoliranim mrežnim kablom s više žica (32/0,2 mm kvadratnih), 1 mm (kvadratnim) CSA, koji je označen standardom UK. sa vanjskim promjerom od 7,2 mm koji može nositi 10A.

Uređaj je spojen na napajanje UK (240VAC RMS) putem standardnog 3 -polnog sigurnosnog utikača (BS 1363/A). Utikač je spojen na 5A.

Svi mrežni kablovi za napajanje u opto-izolacijski krug bili su spojeni preko pheonix kontakt MKDSN2, 5/3-5.08 poliamidnih stezaljki nazivnih na 16A na 400V koji mogu nositi kabel od 2,5 mm (sq) CSA, čime se osigurava dovoljan kapacitet za dva kabela u svaku poziciju.

Mrežni kabeli nisu kalajisani, samo su uvijeni kako bi se spriječilo rasipanje jezgri prije umetanja u blok konektora. Kalajenje mrežnih kabela opasna je praksa jer se lem s vremenom "opušta" i na kraju uzrokuje gubitak kabela u bloku konektora.

Bilješka:

  • OD = Vanjski promjer.
  • VAC = Volti Naizmjenična struja
  • RMS = Kvadrat srednjeg korijena
  • CSA = Poprečna površina
  • CS = Brojač potonuo

Korak 4: Sonoff programski adapter

Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje
Sonoff Adapter za programiranje

Dva su aspekta koja treba uzeti u obzir pri ponovnom programiranju Sonoffa 10A putem Arduino IDE-a;

  1. Konfiguriranje vašeg Arduino IDE -a za programiranje ESP8266,
  2. Čin programiranja samog hardvera.

Konfiguriranje vašeg Arduino IDE -a za programiranje ESP8266

Da biste konfigurirali svoj Ardino IDE, slijedite upute ovdje Postavljanje Arduino IDE-a za programiranje ESP8266-01

Programiranje hardvera

Ovo je proces u više koraka, kao i u svim slučajevima s ESP8266. Ovdje se Sonoff napajanje primjenjuje na ploču putem vanjskog stabiliziranog 3v3 istosmjernog napajanja, a NE iz mrežnog napajanja. USB za serijski uređaj bit će potreban za slanje i primanje podataka u Sonoff i sa njega. Povežite TX i RX kao što je prikazano na slikama 2 i 4.

Koraci programiranja (općenito)

  1. Prvo provjerite da na Sonoff nema spoljašnjeg napajanja,
  2. Pritisnite i držite dugme na uređaju Sonoff. (slika 1 gore, označeno dugme za ponovno blic),
  3. Priključite vanjsko napajanje DC 3v3 na pin 1 (slika 2 gore),
  4. Otpustite dugme Sonoff,
  5. Uređaj se sada može ponovo programirati na uobičajen način putem Arduino IDE -a.

Da bih olakšao stvari, stvorio sam gornji uređaj za programiranje (slike 3 i 4) koji se povezivao sa Sonoff -om preko kabelskog svežnja SK1 … 3 (kako je opisano u ovom koraku 1.). To je omogućilo lakše programiranje ESP8266. Također je pružio način testiranja GPIO14 kao ulaza korištenjem R1 4K7 pull up otpornika i tipke S1.

Koristeći gornji uređaj za programiranje (slike 3 i 4) Koraci programiranja su:

  1. Pritisnite i držite tipku za ponovno bljeskanje na Sonoffu,
  2. Pulsirajte napajanje 3v3 kratkim pritiskom na S2,
  3. Otpustite dugme za ponovno blicanje,
  4. Uređaj se sada može programirati.

NAPOMENA - UPOZORENJE

Ni pod kojim okolnostima napajanje se ne smije napajati putem mreže tokom aktivnosti programiranja Sonoffa

Korak 5: Pregled softverskog sistema

Pregled softverskog sistema
Pregled softverskog sistema
Pregled softverskog sistema
Pregled softverskog sistema

Ovaj uređaj za IoT mrežni kontroler uglavnom sadrži istih šest ključnih softverskih komponenti kao i u WiFi IoT senzoru temperature i vlažnosti koji se može uputiti. Dio: 8 IoT, kućna automatizacija i prikazano na slici 1 gore, s određenim prilagodbama.

SPIFFS

Ovo je (nadograđen na 4 MB) ugrađeni SPI sistem za arhiviranje flash datoteka i koristi se za čuvanje sljedećih informacija (vidi sliku 2 gore);

  • Ikone i 'Početna stranica za konfiguraciju glavnog upravljačkog sklopa' html: Dostavlja ga IoT uređaj kada se ne može povezati s vašom IoT WiFi mrežom (obično zbog netočnih sigurnosnih podataka) i pruža korisniku mogućnost daljinskog konfiguriranja mrežnog kontrolera bez potreba za ponovnim programiranjem ili postavljanjem novog SPIFFS sadržaja.
  • Sigurnosne informacije: Ovo sadrži podatke koje IoT uređaj koristi pri uključivanju za povezivanje s vašom IoT WiFi mrežom i MQTT posrednikom. Podaci poslani putem 'početne stranice konfiguracije mrežnog kontrolera' zapisuju se u ovu datoteku ('secvals.txt').

Napomena: Za početno postavljanje uređaja pogledajte ovdje za potpune detalje o tome kako koristiti SPIFFS s Arduino IDE -om.

mDNS poslužitelj

Ova se funkcija poziva kada se IoT uređaj ne uspije povezati s vašom WiFi mrežom kao WiFi stanicom i umjesto toga je postao WiFi pristupna točka nešto slično domaćem WiFi usmjerivaču. U slučaju takvog usmjerivača, obično biste se povezali s njim unosom IP adrese poput 192.168.1.1 (obično se štampa na naljepnici pričvršćenoj na okvir) izravno u URL traku vašeg preglednika, nakon čega biste dobili stranicu za prijavu za unos korisničko ime i lozinku kako biste mogli konfigurirati uređaj. Za ESP8266 u AP načinu (način pristupne točke) uređaj prema zadanim postavkama postavlja IP adresu 192.168.4.1, međutim s mDNS poslužiteljem morate samo unijeti ime prilagođeno ljudima 'MAINSCON.local' u URL traku preglednika da biste vidjeli 'Početna stranica konfiguracije mrežnog kontrolera'.

MQTT klijent

MQTT klijent pruža sve potrebne funkcije za; povežite se sa svojim MQTT posrednikom na IoT mreži, pretplatite se na teme po svom izboru i objavite korisni teret za datu temu. Ukratko, pruža osnovnu funkcionalnost IoT -a.

HTTP web server

Kao što je gore spomenuto, ako se IoT uređaj ne može povezati s WiFi mrežom čiji su SSID, P/W itd. Definirani u datoteci sigurnosnih informacija koja se nalazi u SPIFFS -u, uređaj će postati pristupna točka. Nakon povezivanja na WiFi mrežu koju pruža pristupna točka, prisutnost HTTP web poslužitelja omogućuje vam da se izravno povežete s uređajem i promijenite njegovu konfiguraciju korištenjem HTTP web preglednika, a svrha mu je posluživanje konfiguracije mrežnog kontrolera Web stranica „Početna stranica“koja se takođe nalazi u SPIFFS -u.

WiFi stanica

Ova funkcionalnost daje IoT uređaju mogućnost povezivanja na domaću WiFi mrežu koristeći parametre u datoteci sigurnosnih informacija, bez toga vaš IoT uređaj neće biti u mogućnosti pretplatiti se/objaviti na MQTT brokeru

WiFi pristupna tačka

Mogućnost da postanete WiFi pristupna točka sredstvo je pomoću kojeg vam IoT uređaj omogućava povezivanje s njim i unošenje promjena u konfiguraciju putem WiFi stanice i preglednika (poput Safarija na Apple iPad -u). Ova pristupna točka emitira SSID = "MAINSCON" + posljednjih 6 znamenki MAC adrese IoT uređaja. Lozinka za ovu zatvorenu mrežu maštovito se naziva 'LOZINKA'.

Korak 6: Pregled softvera

Pregled softvera
Pregled softvera
Pregled softvera
Pregled softvera
Pregled softvera
Pregled softvera
Pregled softvera
Pregled softvera

PreambleTo uspješno kompajliranje ovog izvornog koda trebat će vam sljedeće dodatne biblioteke;

PubSubClient.h

  • Napisao: Nick O'Leary
  • Svrha: Omogućava uređaju da objavi ili se pretplati na MQTT teme kod datog brokera
  • Sa:

Bounce2.h

  • Napisao: Thomas O Fredericks
  • Svrha: Prekidač ulaza isključuje softver
  • Sa:

Pregled koda

Softver koristi state-machine kao što je prikazano na slici 1 gore (potpuna kopija izvora navedena ispod). Postoji 5 glavnih stanja kako slijedi;

  • U TOME

    Ovo stanje inicijalizacije je prvo stanje uneseno nakon uključivanja

  • NOCONFIG

    Ovo stanje se unosi ako se nakon uključivanja detektira nevažeća ili nedostajuća datoteka secvals.txt

  • PENDING NW

    Ovo stanje je privremeno, uneseno je dok ne postoji WiFi mreža

  • PENDING MQTT

    Ovo stanje je prolazno, unosi se nakon uspostavljanja WiFi mreže i dok na toj mreži ne postoji veza s MQTT posrednikom

  • ACTIVE

    Ovo je normalno operativno stanje uneseno nakon što se uspostavi i WiFi mrežna veza i MQTT posrednik. U tom stanju će mrežni kontroler objavljivati u MQTT brokeru i primati naredbe putem pretplaćenih tema

Događaji koji kontroliraju prijelaze između stanja opisani su na slici 1 gore. Prijelazima između stanja također upravljaju sljedeći SecVals parametri;

  • Prva MQTT posrednička IP adresa. U decimalnom obliku s točkama AAA. BBB. CCC. DDD
  • 2. MQTT posrednički port. U obliku cijelog broja.
  • 3. MQTT Broker veza se pokušava uspostaviti prije prelaska iz STA načina u AP način. U obliku cijelog broja.
  • 4. SSID WiFi mreže. Tekst u slobodnoj formi.
  • 5. lozinka WiFi mreže. Tekst u slobodnoj formi.

Kao što je gore spomenuto, ako se IoT uređaj ne može povezati kao WiFi stanica s WiFi mrežom čiji su SSID i P/W definirani u secvals.txt koji se čuva u SPIFFS -u, uređaj će postati pristupna točka. Nakon što se poveže s ovom pristupnom točkom, poslužit će 'Početna stranica konfiguracije glavnog upravljačkog sklopa' kao što je prikazano gore na slici 2 (unošenjem 'MAINSCON.local' ili 192.168.4.1 u traku URL adresa vašeg preglednika). Ova početna stranica omogućava rekonfiguraciju glavnog upravljačkog sklopa putem HTTP pretraživača.

MQTT Konvencija o imenovanju tema

Gore prikazano na slici 3 je konvencija imenovanja koja se koristi za teme MQTT -a i u skladu je sa uzorkom koji se koristi u mojim ranijim Instructable (ovdje Korak 5).

MQTT teme koje koristi ovaj IoT uređaj

Radi jasnoće, dokumentirao sam (slika 4) teme i povezane nizove poruka koje ovaj uređaj objavljuje/na koje se pretplaćuje. Slika takođe prikazuje interakciju sa bijelim kontrolnim dugmetom na vanjskoj strani kućišta (iako je ironično da je dugme prikazano crvenom bojom).

Daljinski pristup konfiguraciji dok je u stanju AKTIVNO

Nakon povezivanja na MQTT Broker moguće je daljinski ponovno konfigurirati sigurnosne parametre uređaja putem publikacija o temama MQTT. Pridružena datoteka secvals.txt ima otvoren pristup samo za pisanje.

Otklanjanje grešaka korisnika

Tijekom redoslijeda pokretanja, LED dioda Sonoff uređaja daje sljedeće povratne informacije o otklanjanju grešaka, iako treba napomenuti da ćete za ovo morati ukloniti poklopac i izložiti sklopove pa je to samo preporučljivo učiniti dok razvijate kôd i napajate uređaj sa napajanjem 3v3;

  • 1 Kratak treptaj: Nema datoteke za konfiguraciju koja se nalazi u SPIFFS -u (secvals.txt),
  • 2 kratka bljeska: IoT uređaj pokušava se povezati na WiFi mrežu,
  • Kontinuirano osvjetljenje: Sonoff IoT uređaj pokušava se povezati s MQTT posrednikom,
  • Isključeno: Uređaj je aktivan i povezan na MQTT posrednik.

Napomena 1: 'Početna stranica za konfiguraciju mrežnog kontrolera' ne koristi sigurne utičnice i stoga se oslanja na to da je vaša mreža sigurna.

Napomena 2: Za programiranje više IoT uređaja, niz MQTT će zahtijevati uređivanje prije preuzimanja na svaki uređaj. To je zato što je id broj glavnog regulatora ugrađen u niz tema MQTT. tj. u objavljenom softveru odabrao sam vrijednost 100: 'WFD/MainsCont/100/Relay/Command/1', a za moja 2 uređaja oni su označeni brojevima 1 i 2.

  • 'WFD/MainsCont/1/Relej/Naredba/1'
  • 'WFD/MainsCont/2/Relej/Naredba/1'

Napomena 3: Radi potpunosti dok je u stanju AKTIVNOST, IoT softver omogućava kontrolu Sonoff LED diode i objavljivanje statusa tipke za ponovno bljeskanje. Iako su one vrijedne samo tokom procesa otklanjanja grešaka jer niti jedna nije izložena korisniku tokom normalnog rada.

Korak 7: OpenHAB konfiguracija

OpenHAB konfiguracija
OpenHAB konfiguracija
OpenHAB konfiguracija
OpenHAB konfiguracija
OpenHAB konfiguracija
OpenHAB konfiguracija

Za potrebe testiranja, odlučio sam da namjerno postavim dva mrežna kontrolera u 'dnevnu sobu' svoje kuće. Ovoj OpenHAB stranici možete pristupiti putem glavne stranice kao na slici 1.

Modifikovao sam OpenHAB.sitemap konfiguraciju datu u mojim ranijim Instructable (ovde) i dodao pojedinačne unose za 'Mains Controller 1' i 'Mains Controller 2' (slika 2 gore). Dodao sam i unose (Kont. 1 i 2 glavne dnevne sobe) za prikaz RSSI trendova izmjerenih na prijemniku dva nova IoT uređaja (slika 3).

Konačno, dodao sam unose u datoteke.rules i.items kako bih omogućio dinamičku sinhronizaciju stanja Sonoffa i ažuriranje/animaciju mog lošeg pokušaja prebacivanja grafike (prekidač se zatvara kada je aktivan i otvara se kada je neaktivan). Slika 2 daje primjer MC1 aktivnog i MC2 neaktivnog.

Napomena 1: Ako niste sigurni kako koristiti OpenHAB, pogledajte ovdje 'Postavljanje i konfiguriranje OpenHAB -a. Dio 6: IoT, kućna automatizacija '

Napomena 2: Kopija izmijenjene karte web lokacije, datoteka pravila i stavki, ikona itd. Data je u donjoj zip datoteci.

Napomena 3: RSSI = Indikacija jačine primljenog signala. Ovo je mjera koliko dobro IoT uređaj može vidjeti vašu WiFi mrežu.

Korak 8: Testiranje vašeg IoT uređaja

Image
Image
Testiranje vašeg IoT uređaja
Testiranje vašeg IoT uređaja

Kao što je opisano u WiFi IoT senzoru temperature i vlažnosti koji se može uputiti. Dio: 8 IoT, kućna automatizacija Korak 7, početno testiranje IoT uređaja izvedeno je preko MQTT veze putem MQTT Spy (kao na sistemskom blok dijagramu slika 1 gore), nadzor LED izlaza, ulazi na gumbima (i Sonoff gumb za ponovno bljeskanje i bijelo vanjsko dugme) i otklanjanje grešaka u saobraćaju na serijskom interfejsu. To mi je omogućilo da vježbam sve dostupne pretplaćene teme i provjerim objavljene odgovore. Iako se opet ovo vodilo ručno i oduzimalo je mnogo vremena, iako je omogućilo 100% pokrivenost poruka/publikacija o temama.

Budući da je glavna mašina za softver (korak 6 gore) naslijeđena od ranijeg Instructable -a (Dio: 8), osim provjere razumnosti softver se mogao povezati s WiFi N/W i MQTT posrednikom, pretpostavljalo se da radi ispravno.

Tada je kompletno testiranje na nivou sistema završeno korištenjem mrežnog kontrolera i IoT infrastrukture (ponovo slika 1), ovaj put koristeći OpenHAB za kontrolu interakcije s IoT uređajem. Postavljanje IoT hardvera i lažnog opterećenja može se vidjeti na slici 2 gore.

Videozapis daje potpune detalje sistemskih testova i jasno pokazuje usklađivanje koje se održava između OpenHAB uređaja (PC/Chrome i iPad/OpenHAB APP) u stvarnom vremenu. Također prikazuje slanje poruka uživo glavnim kontrolerima putem MQTTSpy (pogledajte ovdje za više detalja Postavljanje MQTT brokera. Dio 2: IoT, kućna automatizacija) i sistemski zapis OpenHAB sa servera preko maline pi servera preko PuTTY SSH veze (pogledajte ovdje za više informacija detalji Postavljanje i konfiguriranje OpenHAB -a. Dio 6: IoT, kućna automatizacija).

Napomena: Saobraćaj za otklanjanje grešaka sastavljen je za konačno izdanje softvera.

Korak 9: Zaključak

Općenito

Projekt je bilo relativno lako dovršiti i dobro je funkcionirao. Ugrađeni softver je bio jednostavan za izradu, jer je to skraćena verzija koda koji se koristi za senzore temperature i vlažnosti iz dijela 8 u ovoj seriji.

U početku sam namjeravao nabaviti samo bijele sastavne dijelove isključivo zbog njihove estetske kvalitete. To sam postigao u svemu osim kontrolnog dugmeta, pokušajte koliko sam mogao, nisam uspio pronaći dobro/jeftino potpuno bijelo dugme.

Uređaj Sonoff 10A

U nastavku sam naveo ono što sam smatrao razumnim za i protiv Sonoff uređaja

Pros

  • Cheap.
  • Dobra podrška zajednice.
  • Mogućnost ponovnog programiranja putem Arduino IDE-a.

Cons

  • Slabo kućište.
  • Minimalni I/O (doveden do upotrebljivih konektora).
  • Vruće radi u stanju mirovanja.
  • Ugrađen SPI blic ima samo 1 MB.
  • Da li je PITA za reprogramiranje jednom ožičen na mjestu.
  • Prilikom integracije novog koda u Sonoff testiranje zatvaranje releja je bilo problematično s obzirom da je relej 5v, a napajanje primijenjeno na Sonoff za programiranje je 3v3. Aktivacija releja je samo vidljiva uhu.

Zabrinutost

  • Ne prebacuje neutralnu liniju. Koristi SPST relej.
  • Nije stopljeno.
  • Loše rasterećenje kabela.
  • PCB nije pričvršćen unutar Sonoff kućišta.

Komentirajte inženjerski dizajn

S obzirom na to da se ovaj IoT uređaj trebao koristiti za prebacivanje struje iz UK-a na napajanje (240VAC RMS), slijedio sam i dobru mehaničku i električnu praksu projektiranja i osigurao da je rizik od šoka sveden na minimum ne izlažući nikakve električne provodljive materijale, preko specificiranja svih komponenti izlaznog opterećenja, primjenom zaštite osiguračima i na glavnom kontroleru i na optički spregnut podsustav, uključivanjem dobrog neprekinutog uzemljenja i upotrebom optičke/galvanske izolacije.

Moguće poboljšanje

Gledajući unatrag, bilo bi korisno uključiti vizuelnu indikaciju da je izlaz glavnog kontrolera bio aktivan (LED ili neonski). Iako to nije problem u svakodnevnoj upotrebi, s obzirom na to da je standardna praksa izolirati opterećenje od napajanja prije bilo kakvog održavanja, ili će jednostavnim pritiskom na lokalno upravljačko dugme prebaciti izlaz u slučaju da se lampica može upaliti kada je uključena.

Završna napomena

Ako želite vidjeti dva vrlo loša primjera bavljenja električnom energijom iz mreže, pogledajte donje veze. Njihove Darwinove nagrade uskoro će biti objavljene, sasvim sam siguran;

  • Ludi naučnik Produžni kabel
  • Povratne informacije zajednice 03 - Zabrinutost zbog sigurnosti napajanja!

Korak 10: Korištene reference

Koristio sam sljedeće izvore da sastavim ovaj Instructable;

PubSubClient.h

  • Napisao: Nick O'Leary
  • Svrha: Omogućava uređaju da objavi ili se pretplati na MQTT teme kod datog brokera
  • Sa:

Bounce2.h

  • Napisao: Thomas O Fredericks
  • Svrha: Prekidač ulaza isključuje softver
  • Sa:

SPIFFS

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

Nadogradnja Sonoff blica

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

Sonoffov dijagram kola

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

USB UART modul (poznat i kao 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

Darwinove nagrade (svjetlosni reljef)

https://www.darwinawards.com/

TIL111 Tehnički list s opto-izolatorom

Preporučuje se: