Sisukord:
- 1. samm: ahela ülevaade
- 2. samm: Sonoff RetroMods
- 3. samm: ehituse ja kokkupaneku üksikasjad
- 4. samm: Sonoffi programmeerimisadapter
- Samm 5: Tarkvarasüsteemi ülevaade
- 6. samm: tarkvara ülevaade
- Samm: OpenHAB -i konfigureerimine
- Samm 8: IoT -seadme testimine
- 9. samm: järeldus
- 10. samm: kasutatud viited
Video: IoT võrgukontroller. Osa 9: IoT, koduautomaatika: 10 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:50
Vastutusest loobumine
LOE SEE ESIMENE
See juhend sisaldab üksikasju projektist, mis kasutab võrgutoidet (antud juhul Ühendkuningriigi 240 VAC RMS), kuigi ohutu praktika ja heade projekteerimispõhimõtete kasutamise eest on hoolitsetud, on nende toitepingetega töötamisel alati oht surmava elektrilöögi tekkeks. mille autor ei võta endale mingit vastutust, kui selle sisu jälgimisel tekib kehavigastus või varakahju. Järelikult teete selle projekti omal vastutusel.
Preambul
See artikkel, koduautomaatika seeria üheksas, dokumenteerib Sonoff 10A IoT võrgukontrolleri loomise ja integreerimise olemasolevasse koduautomaatikasüsteemi, sealhulgas kõik vajalikud tarkvarafunktsioonid, mis võimaldavad edukat kasutuselevõttu koduses keskkonnas.
Sissejuhatus
Nagu ülalpool mainitud, kirjeldatakse selles juhendis üksikasjalikult, kuidas teha ja integreerida IoT võrgukontrollerit, kasutades iTeadi Sonoff 10A. Seade ise on hinnatud võimsuseks 10 amprit @ 90–250 VAC, kuid see rakendus vähendab selle sulavkaitsmega pistiku kaudu 5 amprit, pakkudes Ühendkuningriigi 240 VAC RMS põhivarustust.
Projekteerimismetoodika integreerub sujuvalt MQTT/OpenHAB -põhisesse IoT -võrku, mida kirjeldatakse selles seerias koduautomaatika ehitamise kohta, kasutades siit võetud koodi. See suudab toime tulla ka IoT -võrgu elementide kadumisega ja on täielikult võimeline iseseisvalt käitama. Autonoomse režiimi ajal saab seadet juhtida lihtsalt korpuse ülaosas asuva juhtnupu vajutamisega, mis lülitab edasi toiteväljundi.
Selle Sonoffi seadme kohaliku juhtimise lubamiseks tuuakse GPIO14 korpusest välja ja seda kasutatakse päästiku sisendina. Ohutuse tagamiseks toidetakse seda sisendit optilise siduri vooluringi kaudu ja paigutatakse plastkorpusesse nii, et operaator ei puutuks kunagi kokku toitepingega.
Lõpuks kirjeldab proosa ka seda, kuidas ESP8266 seadet Sonoff 10A-s ümber programmeerida, kasutades Arduino IDE-d, ja annab täielikud ahela üksikasjad seadme kohta, mida saab kasutada sihtkoodi usaldusväärseks programmeerimiseks.
Milliseid osi ma vajan?
Sonoff võrgukontroller
- 1 off Sonoff 10A siin
- 1 off 7805L 5v pingeregulaator siin
- 1 väljas 240/6VAC 1.5VA trafo siin
- Siin on 2 0,1 keraamilist kondensaatorit välja lülitatud
- 1 off 1000uF @25v elektrolüütkondensaator siin
- 1 väljas Silla alaldi 2W01 siin
- Siin on 2 4K7 takistit
- Siin on välja lülitatud 330R takisti
- Siin on 1 SPST -nupp välja lülitatud
- 1 off Mulitcomp BM12W ABS korpus siin
- 1 off TIL111 opto-coupler siin
- Siin on välja lülitatud 3-suunaline klemmliist
- 1 välja 2-suunaline kodeeritud molex-pistik siin/siin
- 1 välja 3-suunaline kodeeritud molex-pistik siin/siin
- 1 off 5-way kodeeritud molex pistik siin/siin
- Siin on välja lülitatud 5-suunalised molex-tihvtid
- 1 off Winbond SPI Flash (W25Q32FVSIG) siin
- Siin on välja lülitatud 20 mm kaitsmehoidik + kork
- Siin on välja lülitatud 20 mm kiirpuhke 500 mA kaitse
- Siin on 2 polüamiidkaablit
- 1 välja Ühendkuningriigi toitepistik (BS1363/A) siin
- 1 välja Ühendkuningriigi peapesa (BS1363/A) siin
- 7 M3 16 mm CS nailonkruvi, (sh 10 mutrit) siin/siin
- 2 off Zip lipsud siin
- 1 off veroboard (0,1 "samm) siin
- 1 off Siin on erineva pikkusega 22swg tinatatud vasktraati
- 1 off 3M valge Ühendkuningriigi toitekaabel siin
- Siin on 10 Molexi pistikupesa
Programmeerija Sonoff
- Siin on välja lülitatud LD33CV 3v3 pingeregulaator
- Siin on 1 jahutusradiaator TO-220
- Siin on 1 jahutusradiaator maha
- 1 off 10uF @16v elektrolüütkondensaator siin
- 1 välja 0,1 keraamiline kondensaator
- Siin on SPDT 1 välja lülitatud
- Siin on 1 4K7 takisti välja
- 1 välja 2-suunaline kodeeritud molex-pistik siin/siin
- 1 välja 3-suunaline kodeeritud molex-pistik siin/siin
- Siin on välja lülitatud 5 Molexi pistikupesa
- Siin on välja lülitatud 6-suunaline molex-pistikupesa
- Siin on 1 SPST -nupp välja lülitatud
- Siin on välja lülitatud 2,1 mm toiteplokk
- 1 off veroboard (0,1 "samm) siin
- 1 välja USB -jadaadapter (FTDI) siin
Millist tarkvara ma vajan?
- Arduino IDE 1.6.9 siin
- Arduino IDE on konfigureeritud programmeerima ESP8266. Vaata siia; Arduino IDE seadistamine ESP8266-01 programmeerimiseks
Milliseid tööriistu ma vajan?
- Jootekolb,
- Puur ja mitmesugused otsikud (sh astmeliste aukude lõikur kaablitihendite jaoks ja juhtnupp),
- Kruvikeerajad (erinevad),
- Reguleeritavad mutrivõtmed (kaks välja lülitatud, lõualuu laius> 25 mm, kaablitihendite jaoks),
- Failid (erinevad),
- Tugev pahe,
- Soojuspüstol,
- DMM (eelistatavalt CAT IV).
Milliseid oskusi mul vaja on?
- Hea arusaam elektroonikast ja kodu elektriohutusest/disainist/juhtmestikust jne,
- Teadmised Arduino ja selle IDE kohta,
- Head valmistamisoskused (jootmine, viilimine, puurimine jne),
- Natuke kannatust,
- Mõningane arusaam teie koduvõrgust.
Käsitletud teemad
- Sissejuhatus
- Ahela ülevaade
- Sonoff RetroMods
- Konstruktsiooni ja montaaži üksikasjad
- Sonoffi programmeerimisadapter
- Tarkvara süsteemi ülevaade
- Tarkvara ülevaade
- OpenHABi konfiguratsioon
- IoT -seadme testimine
- Järeldus
- Kasutatud viited
Sarja lingid
Osa 8: WiFi IoT temperatuuri ja niiskuse andur. Osa: 8 IoT, koduautomaatika
Osa 10: IR -kaugjuhtimispult IoT kaudu. Osa 10 IoT, koduautomaatika
1. samm: ahela ülevaade
Ülevaade
Nagu ülaltoodud sissejuhatuses mainitud, oli võrgukontrolleri lokaalseks sisse- ja väljalülitamiseks vajalik Sonoffi pardal oleva ESP8266 sisend. Sellise välise sisendi kasutuselevõtt eeldab Sonoffi ABS -korpuse rikkumist ja tekitab seega potentsiaalse löögiohu. Selle ületamiseks kasutasin optilist isolatsiooni nii, et väljaspool võrgukontrolleri süsteemi korpust ei ole võimalik elektrivõrguga kokku puutuda.
Järgnevalt kirjeldatakse optoisolatsiooniahelat (joonisel 1 ülal).
Vooluahela üksikasjad
Optoisolatsiooniahel saab toite otse seadmele ühendatud vooluvõrgust. 240 VAC RMS-i rakendatakse astmelisele/eraldustrafole TR1 J1 kaudu pheonix kontakt MKDSN2, 5/3-5.08 polüamiid 3-suunaline klemm, mille nimiväärtus on 16A 400 V, mis suudab kanda 2,5 mm (ruutmeetri) CSA kaablit ja F1 500 mA 20 mm kiire löögi kaitse. TR1 sekundaarmähistel saadaval olev 6VAC on täislaine, mis on korrigeeritud dioodsillaga B1.
Seda täislainega alaldatud väljundit stabiliseeritakse ja reguleeritakse C1, C2 C3, R3 ja IC1 7805L seeria šundiregulaatoriga, mis tagab hea, puhta 5 -toitelise rööpa.
Seejärel kasutatakse 5v rööpaga, et juhtida sisendit OK1 TIL111 opto-isolaatorisse väljastpoolt paigaldatud valge SPST-nupu kaudu, mis on ühendatud kogu J3-ga. TIL111 väljund on ühendatud Sonoff GPIO14 sisendiga R2 kaudu 4K7 tõmbetakistiga. Seega on isolatsioon parem kui 340 V (st tipppinge = (240 VAC*ruutjuur (2))).
2. samm: Sonoff RetroMods
Seadme Sonoff 10A integreerimiseks on vaja teha mõningaid tagasiulatuvaid muudatusi.
Esimene on lisada 5-suunaline 0,1-tolline samm-molex-pistik, nagu on näidatud ülaltoodud pildil 1. See võimaldab juurdepääsu Sonoffi GPIO14-le, kui kaitsekate on vahetatud, nagu ülaltoodud piltidel 2 ja 3.
Ehkki ülalpool pole näidatud, tõin välja ka seeria TX/RX liinid, et võimaldada kohapealset programmeerimist (vt kaablikimp SK1..3 eespool punktis 1).
Teine muudatus on SPI Flash -seadme suuruse suurendamine vaikeväärtuselt 1 MB kuni 4 MB, see võimaldab piisavalt ruumi asjade Interneti veebiserveri failide hoidmiseks SPIFFS -is.
Ostsin Ebayst siit SMD SPI välklambi (W25Q32FVSIG)
Välklambi vahetamiseks eemaldasin ajutiselt Sonoffi LED -i, nagu pildil 4, et võimaldada paremat juurdepääsu SMD -seadmele. Välgu jootmiseks kasutasin kuumutuspüstolit, nagu on näidatud ülaltoodud pildil 5. Seejärel jootke uuesti nii 4 MB baidi välklamp kui ka LED (joonis 6).
3. samm: ehituse ja kokkupaneku üksikasjad
Panin vooluvõrgu kontrolleri Mulitcomp BM12W ABS kasti (pilt 1 ülal). Sellel korpusel on isoleeritud messingist M3 sisetükid, mis võimaldavad seadmele mitut juurdepääsu ilma kinnituskeermeid kahjustamata, nii et sisemist kaitset saab vajadusel vahetada või aja jooksul sisemist kontrolli teha (sama ei saa öelda Sonoffi seadme kohta, on tegelikult ainult üks kord lähedal, kasutades isekeermestavaid seadmeid).
Toitekaabli esmane pinge vähendamine saavutati valge kaabli M16 nailon/polüamiid 6/6 kaudu, mis toetab kaablit OD Min/Max 5mm/10mm.
Sekundaarne pinge vähendamine toimus ühe kaabli külge kinnitatud tõmbluku abil, kui liigne koormus tekib ja kaablitihend ebaõnnestub, tõmblukk hoiab kaablit paigal.
Kaablitihendite paigaldamiseks ja piisavalt ruumi Sonoffi ja optoisolatsioonielektroonika paigaldamiseks eemaldasin sisemised PCB kinnitusribid, nagu ülal näidatud (joonis 2).
Kogu elektroonika kinnitati kindlalt M3 nailonist CS -kruvide kaudu, et tagada korpuse välispinnaga isoleerimine. Optoisolatsioonielektroonika on paigaldatud 5 kinnituspunktiga, et tagada hea mehaaniline tugevus seadme mahakukkumisel, vältides seeläbi isolatsioonitrafo massi katkestamist.
Seadme varustamiseks kasutati Ühendkuningriigi standardset värvikoodiga valget 3-tuumalist PVC-isolatsiooniga mitmejuhtmelist (32/0,2 mm ruutmeetrit) kaablit 1 mm (ruutmeetrit). mille OD on 7,2 mm, mis on võimeline kandma 10A.
Seade ühendati Ühendkuningriigi vooluvõrku (240 VAC RMS) standardse 3 -kontaktilise turvaklapi (BS 1363/A) kaudu. Pistik sulatati 5A juures.
Kõik optoisolatsiooniahela toitekaablid ühendati pheonix contact MKDSN2, 5/3-5.08 polüamiidklemmidega, mille nimiväärtus on 16 A 400 V ja mis suudavad kanda 2,5 mm (sq) CSA kaablit, tagades seega kahe kaabli jaoks piisava mahutavuse iga positsiooni.
Toitekaableid ei tinutatud, vaid keerati, et vältida südamike laialivalgumist enne pistikuplokki sisestamist. Toitekaablite plekkimine on ohtlik tava, kuna joodis lõdvestub aja jooksul, põhjustades lõpuks kaabli kadumise pistikuplokis.
Märge:
- OD = välisläbimõõt.
- VAC = voltide vahelduvvool
- RMS = Root Mean Square
- CSA = ristlõikepindala
- CS = Uppunud loendur
4. samm: Sonoffi programmeerimisadapter
Sonoff 10A ümberprogrammeerimisel Arduino IDE kaudu tuleb arvestada kahe aspektiga;
- Arduino IDE seadistamine ESP8266 programmeerimiseks,
- Riistvara enda programmeerimine.
Arduino IDE seadistamine ESP8266 programmeerimiseks
Ardino IDE seadistamiseks järgige siin toodud juhiseid Arduino IDE seadistamine ESP8266-01 programmeerimiseks
Riistvara programmeerimine
See on mitmeastmeline protsess, nagu kõigil juhtudel ESP8266 puhul. Siin rakendatakse Sonoffi toiteplaadile välise stabiliseeritud 3v3 alalisvooluallika kaudu, EI toitevõrgust. Andmete saatmiseks ja vastuvõtmiseks Sonoffile ja sealt on vaja USB -ühendust jadaseadmesse. Ühendage TX ja RX, nagu on näidatud joonistel 2 ja 4.
Programmeerimisetapid (üldine)
- Esmalt veenduge, et Sonoffi külge ei oleks ühendatud välist toiteallikat,
- Vajutage ja hoidke all Sonoff -seadme nuppu. (pilt 1 ülal, märgitud uuesti välgutamise nupp),
- Kandke välisele alalisvoolu 3v3 toitele 1. tihvtile (pilt 2 ülal),
- Vabastage Sonoffi nupp,
- Seadet saab nüüd Arduino IDE kaudu tavapärasel viisil ümber programmeerida.
Asjade pisut lihtsustamiseks lõin ülalpool programmeerimisseadme (pildid 3 ja 4), mis liidestati Sonoffi külge juhtmestiku SK1… 3 kaudu (nagu on kirjeldatud käesolevas juhendatavas etapis 1). See võimaldas ESP8266 programmeerimist lihtsustada. See pakkus ka vahendit GPIO14 testimiseks sisendina, kasutades R1, 4K7 tõmbetakistit ja nuppu S1.
Ülaltoodud programmeerimisseadme kasutamine (pildid 3 ja 4) Programmeerimisetapid on järgmised:
- Vajutage ja hoidke Sonoff-i uuesti välgunuppu,
- Pulssi 3v3 toite, vajutades hetkeks S2,
- Vabastage uuesti välgutamise nupp,
- Seadet saab nüüd programmeerida.
MÄRKUS - HOIATUS
Mingil juhul ei tohiks Sonoffi ümberprogrammeerimise ajal vooluvõrku toita
Samm 5: Tarkvarasüsteemi ülevaade
See IoT võrgukontrolleri seade sisaldab enamasti samu kuut tarkvara põhikomponenti nagu Instructable WiFi IoT temperatuuri ja niiskuse anduris. Osa: 8 IoT, koduautomaatika ja näidatud ülaltoodud pildil 1, mõningate kohandustega.
SPIFFS
See on (täiendatud 4 MB-ni) rongisisene SPI välklambisüsteem ja seda kasutatakse järgmise teabe hoidmiseks (vt pilt 2 ülal);
- Ikoonid ja võrgukontrolleri konfiguratsiooni avaleht html: seda teenindab IoT -seade, kui see ei saa teie IoT -i WiFi -võrguga ühendust luua (tavaliselt vale turvateabe tõttu) ja pakub kasutajale võimalusi võrgukontrolleri kaugkonfigureerimiseks vajadus SPIFFS-i sisu ümber programmeerida või üles laadida.
- Turvateave: see hoiab teavet, mida IoT -seade kasutab teie IoT WiFi -võrgu ja MQTT -maakleriga ühenduse loomisel. „Võrgukontrolleri konfiguratsiooni kodulehe” kaudu saadetud teave kirjutatakse sellesse faili („secvals.txt”).
Märkus. Seadme esialgseks seadistamiseks vaadake siit täielikku teavet selle kohta, kuidas kasutada SPIFFS -i koos Arduino IDE -ga.
mDNS -server
Seda funktsiooni kasutatakse siis, kui asjade Interneti -seadmel ei õnnestunud teie WiFi -võrguga WiFi -jaamana ühendust luua ja selle asemel on sellest saanud WiFi -pöörduspunkt, mis sarnaneb kodumaise WiFi -ruuteriga. Sellise ruuteri puhul ühendaksite sellega tavaliselt ühenduse, sisestades 192.168.1.1 IP -aadressi (tavaliselt trükitud kasti külge kinnitatud sildile) otse oma brauseri URL -i ribale, mille järel saate sisenemiseks sisselogimislehe kasutajanime ja parooli, et saaksite seadet konfigureerida. ESP8266 jaoks AP -režiimis (pääsupunkti režiim) on vaikeseadeks IP -aadress 192.168.4.1, kuid mDNS -serveri kasutamisel peate brauseri URL -i ribale sisestama ainult inimsõbraliku nime „MAINSCON.local”. 'Võrgukontrolleri seadistuste avaleht'.
MQTT klient
MQTT klient pakub kõiki vajalikke funktsioone; ühendage oma Interneti -võrgu MQTT maakler, tellige oma valitud teemad ja avaldage antud teema jaoks kasulikud koormused. Lühidalt, see sätestab IoT põhifunktsioonid.
HTTP veebiserver
Nagu eespool mainitud, muutub IoT -seade ühenduse loomiseks WiFi -võrguga, mille SSID, P/W jne on määratletud SPIFFS -i turvateabe failis, muutub seade juurdepääsupunktiks. Pärast juurdepääsupunkti pakutava WiFi -võrguga ühendamist võimaldab HTTP -veebiserveri olemasolu seadmega otse ühenduse luua ja muuta selle konfiguratsiooni HTTP -veebibrauseri abil, mille eesmärk on teenindada võrgukontrolleri konfiguratsiooni Kodulehe veebisait, mida hoitakse ka SPIFFS -vormingus.
WiFi jaam
See funktsioon võimaldab IoT -seadmel ühenduse luua koduse WiFi -võrguga, kasutades turvateabe faili parameetreid, ilma selleta ei saa teie Interneti -seade MQTT maaklerit tellida/avaldada
WiFi pääsupunkt
Võimalus saada WiFi pääsupunktiks on vahend, mille abil IoT -seade võimaldab teil sellega ühenduse luua ja konfiguratsiooni muuta WiFi -jaama ja brauseri kaudu (näiteks Safari Apple iPadis). See pääsupunkt edastab SSID = "MAINSCON" + IoT -seadme MAC -aadressi 6 viimast numbrit. Selle suletud võrgu parooli nimi on kujutlusvõimeline „PASSWORD”.
6. samm: tarkvara ülevaade
Selle lähtekoodi edukaks kompileerimiseks vajate järgmisi täiendavaid teeke;
PubSubClient.h
- Autor: Nick O'Leary
- Eesmärk: võimaldab seadmel avaldada või tellida MQTT teemasid antud maakleriga
- Siit:
Põrge2.h
- Autor: Thomas O Fredericks
- Eesmärk: sisendlüliti väljalülitamine tarkvaras
- Alates:
Koodi ülevaade
Tarkvara kasutab olekumasinat, nagu on näidatud ülaltoodud pildil 1 (allika täielik koopia allpool). Peamisi olekuid on 5;
-
SELLES
See lähtestamisolek on esimene olek, mis sisestati pärast sisselülitamist
-
NOCONFIG
See olek sisestatakse, kui pärast sisselülitamist tuvastatakse kehtetu või puuduv fail secvals.txt
-
Ootel NW
See olek on ajutine, sisestatud, kui WiFi -võrguühendus puudub
-
Ootel MQTT
See olek on ajutine, sisestatakse pärast WiFi -võrguühenduse loomist ja kuigi sellel võrgul puudub ühendus MQTT maakleriga
-
AKTIIVNE
See on tavaline tööolek, mis sisestatakse pärast WiFi -võrguühenduse ja MQTT Brokeri ühenduse loomist. Just selle oleku ajal avaldab võrgukontroller MQTT maaklerile ja saab käske tellitud teemade kaudu
Sündmusi, mis kontrollivad olekute vahelist üleminekut, on kirjeldatud ülaltoodud pildil 1. Üleminekuid olekute vahel reguleerivad ka järgmised SecValsi parameetrid;
- 1. MQTT maakleri IP -aadress. Täpilise kümnendkoha kujul AAA. BBB. CCC. DDD
- 2. MQTT maaklerisadam. Täisarvulisel kujul.
- 3. MQTT Brokeri ühendus üritab teha enne STA -režiimilt AP -režiimile üleminekut. Täisarvulisel kujul.
- 4. WiFi võrgu SSID. Vabas vormis tekstis.
- Viies WiFi -võrgu parool. Vabas vormis tekstis.
Nagu eespool mainitud, kui IoT -seade ei saa WiFi -jaamana WiFi -võrguga ühendust luua, kelle SSID ja P/W on määratletud failis secvals.txt, mida hoitakse SPIFFS -is, muutub seade juurdepääsupunktiks. Kui see juurdepääsupunktiga ühendatakse, teenindab see võrgukontrolleri konfiguratsiooni avalehte, nagu on näidatud pildil 2 (sisestades brauseri URL -i aadressiribale kas „MAINSCON.local” või 192.168.4.1). See koduleht võimaldab võrgukontrolleri HTTP -brauseri kaudu uuesti konfigureerida.
MQTT Teema nimetamise konventsioon
Ülaltoodud pildil 3 on kirjeldatud MQTT -teemade jaoks kasutatavat nimetamiskokkulepet ja see on kooskõlas minu varasemas juhendis (siin 5. samm) kasutatud mustriga.
MQTT Selle IoT -seadme kasutatavad teemad
Selguse huvides olen dokumenteerinud (pilt 4) teemad ja nendega seotud sõnumijärjestused, mida see seade avaldab/tellib. Pilt kujutab ka koostoimet korpuse välisküljel oleva valge juhtnupuga (kuigi iroonilisel kombel on nupp näidatud punasega).
Konfiguratsiooni kaugjuurdepääs ACTIVE olekus
Kui olete MQTT Brokeriga ühendatud, on seadme turbeparameetreid võimalik kaugjuhitavalt konfigureerida MQTT teemaväljaannete kaudu. Seotud failil secvals.txt on ainult kirjutamisõigus.
Kasutaja silumine
Käivitamisjärjekorras annab Sonoffi seadme LED -i järgmine silumisetagasiside, kuigi tuleb märkida, et selle vaatamiseks peate eemaldama kaane ja paljastama vooluringi, nii et seda on soovitav teha ainult koodi väljatöötamise ja seadme toiteallika ajal 3v3 toitega;
- 1 Lühike välk: SPIFFS -is (secvals.txt) pole konfiguratsioonifaili,
- 2 Lühikest vilkumist: IoT -seade üritab WiFi -võrguga ühendust luua,
- Pidev valgustus: Sonoff IoT seade üritab ühendust luua MQTT Brokeriga,
- Väljas: seade on aktiivne ja ühendatud MQTT Brokeriga.
Märkus 1: „Võrgukontrolleri konfiguratsiooni koduleht” ei kasuta turvalisi pistikupesasid ja sõltub seega teie võrgu turvalisusest.
Märkus 2: Mitme IoT -seadme programmeerimiseks tuleb MQTT -stringi enne igale seadmele allalaadimist muuta. Selle põhjuseks on asjaolu, et võrgukontrolleri id -number on manustatud MQTT teemastringi. st. avaldatud tarkvaras valisin väärtuseks 100: 'WFD/MainsCont/100/Relay/Command/1' ja minu 2 seadme puhul on need nummerdatud vastavalt 1 ja 2.
- 'WFD/MainsCont/1/relee/käsk/1'
- 'WFD/MainsCont/2/Relay/Command/1'
Märkus 3: AKTIIVSES olekus saab IoT tarkvara täielikkuse huvides juhtida Sonoff LED-i ja avaldada uuesti välgunupu olekut. Kuigi need on väärtuslikud ainult silumisprotsessi ajal, kuna kumbki neist ei puutu kasutajale tavalise töö ajal kokku.
Samm: OpenHAB -i konfigureerimine
Testimiseks otsustasin mõtteliselt paigutada kaks voolukontrollerit oma maja elutuppa. Sellele OpenHAB -i lehele pääseb saidi põhilehe kaudu, nagu pildil 1.
Muutsin OpenHAB.sitemap konfiguratsiooni, mis oli antud minu varasemas Instructable'is (siin) ja lisasin üksikud kirjed 'Mains Controller 1' ja 'Mains Controller 2' jaoks (pilt 2 ülal). Lisasin ka kirjed (elutoa vooluvõrgu kont. 1 ja 2), et kuvada kahe uue IoT -seadme vastuvõtja mõõdetud RSSI -suundumused (joonis 3).
Lõpuks lisasin.rules ja.items failidesse kirjeid, et võimaldada Sonoffi dünaamilist oleku sünkroonimist ja minu kehva katse lülitusgraafika värskendamist/animeerimist (lüliti sulgub, kui see on aktiivne ja avaneb, kui see pole aktiivne). Joonisel 2 on näide MC1 aktiivsest ja MC2 mitteaktiivsest.
Märkus 1: Kui te pole kindel, kuidas OpenHAB -i kasutada, vaadake siit 'OpenHAB -i seadistamine ja seadistamine. Osa 6: IoT, koduautomaatika
Märkus 2: Muudetud saidiplaani, reeglite ja üksuste failide, ikoonide jms koopia on toodud allpool asuvas zip -failis.
Märkus 3: RSSI = vastuvõetud signaali tugevuse näitaja. See näitab, kui hästi IoT -seade näeb teie WiFi -võrku.
Samm 8: IoT -seadme testimine
Nagu on kirjeldatud juhendis WiFi IoT temperatuuri ja niiskuse andur. Osa: 8 IoT, koduautomaatika 7. etapp, IoT-seadme esmane testimine viidi läbi MQTT-ühenduse kaudu MQTT Spy kaudu (nagu ülaltoodud süsteemi plokkskeemil, pilt 1), jälgides LED-väljundit, nuppude sisendeid (nii Sonoffi uuesti välgunupp kui ka valge väline nupp) ja siluda liiklust jadaliideses. See võimaldas mul kasutada kõiki saadaolevaid tellitud teemasid ja vaadata avaldatud vastuseid. Kuigi see oli jällegi käsitsi tehtud ja aeganõudev, võimaldas see siiski 100% ulatuses kajastada sõnumeid/teemaväljaandeid.
Kuna peamine tarkvara olekumasin (6. samm eespool) päriti varasemalt juhendilt (osa 8), välja arvatud mõistlikkuse kontrollimine, võis tarkvara ühenduda WiFi N/W ja MQTT maakleriga, eeldati, et see töötab õigesti.
Seejärel viidi täielik süsteemitaseme testimine läbi võrgukontrolleri ja IoT infrastruktuuri abil (jällegi pilt 1), kasutades seekord OpenHAB -i, et kontrollida interaktsiooni IoT -seadmega. IoT riistvara ja näiv koormus on seadistatud ülaltoodud pildil 2.
Videost leiate täielikud üksikasjad süsteemitestide kohta ja see näitab selgelt sünkroonimist OpenHAB -seadmete (arvuti/Chrome ja iPad/OpenHAB APP) vahel reaalajas. See näitab ka otseülekandeid võrgukontrolleritele MQTTSpy kaudu (vt siit lisateavet MQTT maakleri seadistamine. Osa 2: IoT, koduautomaatika) ja OpenHABi sabasüsteemi logi vaarika pi serverist PuTTY SSH ühenduse kaudu (vt siit üksikasjad OpenHAB -i seadistamine ja konfigureerimine. 6. osa: IoT, koduautomaatika).
Märkus. Silumisliiklus koostati lõpliku tarkvaraversiooni jaoks.
9. samm: järeldus
Kindral
Projekti oli suhteliselt lihtne lõpule viia ja see töötas hästi. Sisseehitatud tarkvara oli lihtne toota, kuna see oli selle seeria 8. osa temperatuuri ja niiskuse andurite jaoks kasutatava koodi lühendatud versioon.
Algselt kavatsesin osta esteetilise kvaliteedi tõttu ainult valgeid komponente. Ma saavutasin selle kõik peale juhtnupu, proovige nii, nagu suutsin, ma ei suutnud hankida head/odavat täiesti valget nuppu.
Seade Sonoff 10A
Olen allpool loetlenud, mis minu arvates olid Sonoffi seadme mõistlikud plussid ja miinused
Plussid
- Odav.
- Hea kogukonna tugi.
- Saab uuesti programmeerida Arduino IDE kaudu.
Miinused
- Õhuke korpus.
- Minimaalne I/O (kasutatavatele pistikutele välja toodud).
- See töötab vaikses olekus kuumalt.
- Sisseehitatud SPI välk on ainult 1 MB.
- Kas PITA, mida tuleb ümber programmeerida, kui see on oma kohale ühendatud.
- Uue koodi integreerimisel Sonoffi testimisse oli relee sulgemine problemaatiline, kuna relee on 5v ja Sonoffi jaoks programmeerimiseks kasutatav toide on 3v3. Relee aktiveerimine on ainult kõrva jaoks tajutav.
Mured
- See ei vaheta neutraalset joont. Kasutab SPST releed.
- Ei ole sulatatud.
- Halb kaabli venitus.
- Trükkplaat ei ole Sonoffi korpuses kinnitatud.
Kommenteerige inseneri disaini
Arvestades seda asjade Interneti seadet Ühendkuningriigi vooluvõrgu lülitamiseks (240 VAC RMS), järgisin nii head mehaanilist kui ka elektrilist projekteerimistava ning tagasin, et šokkide oht on minimeeritud, kui ei avalda elektrit juhtivaid materjale, täpsustades kõik komponendid, vähendades väljundkoormust, kaitsme kaitset nii võrgukontrollerile kui ka optiliselt ühendatud alamsüsteemile, hea katkematu maanduse lisamist ja optilise/galvaanilise isolatsiooni kasutamist.
Võimalik parandamine
Tagantjärele mõeldes oleks olnud kasulik lisada visuaalne märge, et võrgukontrolleri väljund oli aktiivne (LED või neoon). Kuigi see pole igapäevases kasutuses probleem, arvestades tavapärast tava, et isoleerida koormus vooluvõrgust enne hooldustöid, või lihtsalt vajutades kohalikku juhtnuppu, lülitatakse väljund välja juhul, kui lamp võib toiteallika korral süttida.
Lõppmärkus
Kui soovite näha kahte väga halba näidet elektrivõrguga toimetulemise kohta, vaadake allolevaid linke. Nende Darwini auhinnad on varsti postituses, olen üsna kindel;
- Hullu teadlase pikendusjuhe
- Kogukonna tagasiside 03 - Energiaohutuse probleemid!
10. samm: kasutatud viited
Selle juhendi koostamiseks kasutasin järgmisi allikaid;
PubSubClient.h
- Autor: Nick O'Leary
- Eesmärk: võimaldab seadmel avaldada või tellida MQTT teemasid antud maakleriga
- Siit:
Põrge2.h
- Autor: Thomas O Fredericks
- Eesmärk: sisendlüliti väljalülitamine tarkvaras
- Alates:
SPIFFS
https://esp8266.github.io/Arduino/versions/2.0.0/do…
Sonoffi välgu uuendamine
- https://www.andremiller.net/content/upgrading-sonof…
- https://tech.scargill.net/32mb-esp01/
- https://www.andremiller.net/content/upgrading-sonof…
Sonoffi vooluahela skeem
https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf
USB UART -moodul (teise nimega 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
Darwini auhinnad (kerge reljeef)
https://www.darwinawards.com/
TIL111 Opto-isolaatori andmeleht
Soovitan:
Järgmise põlvkonna koduautomaatika Eagle Cadi abil (1. osa - trükkplaat): 14 sammu
Järgmise põlvkonna koduautomaatika, kasutades Eagle Cad'i (1. osa - trükkplaat): Sissejuhatus: Miks ma ütlen selle järgmist põlvkonda: kuna see kasutab mõningaid komponente, mis on palju paremad kui traditsioonilised koduautomaatika seadmed. See saab seadmeid juhtida: Google'i häälkäskluste puutepaneelil seadme juhtimisel rakendusest
Koduautomaatika Raspberry Pi maatriksi hääle ja snippide abil (2. osa): 8 sammu
Koduautomaatika Raspberry Pi Matrix Voice'i ja Snipsi abil (2. osa): Koduautomaatika värskendamine Raspberry Pi Matrix Voice'i ja Snipsi abil. Selles PWM-i kasutatakse väliste LED-ide ja servomootori juhtimiseks. Kõik 1. osas esitatud üksikasjad
Retro kõne süntees. Osa: 12 asjade Interneti, koduautomaatika: 12 sammu (piltidega)
Retro kõne süntees. Osa: 12 IoT, koduautomaatika: see artikkel on koduautomaatika seeria 12. käsikiri, mis dokumenteerib, kuidas luua ja integreerida IoT Retro kõnesünteesiseade olemasolevasse koduautomaatikasüsteemi, sealhulgas kõik vajalikud tarkvarafunktsioonid, mis võimaldavad t
Veatolerantse temperatuurianduri võrgukontroller: 8 sammu
Veakindel temperatuurianduri võrgukontroller: see juhend annab teile teada, kuidas teisendada Arduino Uno plaat üheotstarbeliseks kontrolleriks DS18B20 temperatuuriandurite komplektile, mis on võimeline vigaseid andureid automaatselt eraldama. Kontroller saab hallata kuni 8 andurit Arduino abil Uno. (A
WiFi IoT temperatuuri ja niiskuse andur. Osa: 8 asjade internet, koduautomaatika: 9 sammu
WiFi IoT temperatuuri ja niiskuse andur. Osa: 8 IoT, koduautomaatika: preambul See artikkel dokumenteerib varasema Instructable'i praktilise vastupidavuse ja edasise arendamise: teie esimese IoT WiFi -seadme pimping. Osa 4: IoT, koduautomaatika, sealhulgas kõik vajalikud tarkvarafunktsioonid, mis võimaldavad edu