Përmbajtje:

Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi në shtëpi: 10 hapa (me fotografi)
Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi në shtëpi: 10 hapa (me fotografi)

Video: Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi në shtëpi: 10 hapa (me fotografi)

Video: Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi në shtëpi: 10 hapa (me fotografi)
Video: Leap Motion SDK 2024, Korrik
Anonim
Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi i Shtëpisë
Kontrolluesi i rrjetit IoT. Pjesa 9: IoT, Automatizimi i Shtëpisë

Mohim

LEXO KT PAR

Ky udhëzues detajon një projekt i cili përdor energjinë elektrike (në këtë rast UK 240VAC RMS), ndërsa është bërë çdo kujdes për të përdorur praktika të sigurta dhe parime të mira të projektimit, ekziston gjithmonë rreziku i goditjes elektrike potencialisht vdekjeprurëse kur punoni me këto tensione furnizimi dhe për të cilat autori nuk mund të pranojë asnjë përgjegjësi nëse lëndimi personal ose dëmtimi i pronës ndodh kur ndiqet përmbajtja e tij. Rrjedhimisht, ju e bëni këtë projekt me përgjegjësinë tuaj.

Parathënie

Ky artikull, i 9 -ti në një seri mbi automatizimin e shtëpisë, dokumenton se si të krijoni dhe integroni një kontrollues të rrjetit Sonoff 10A IoT në një sistem ekzistues të automatizimit të shtëpisë duke përfshirë të gjithë funksionalitetin e nevojshëm të softuerit për të mundësuar vendosjen e suksesshme në një mjedis shtëpiak.

Prezantimi

Siç u përmend më lart, ky Udhëzues detajon se si të krijoni dhe integroni një kontrollues të rrjetit IoT duke përdorur Sonoff 10A nga iTead. Pajisja në vetvete citohet të jetë vlerësuar për 10amps @ 90 ~ 250VAC, megjithatë ky zbatim e nënvlerëson atë me atë të 5 amps përmes prizës së shkrirë duke siguruar furnizimin kryesor vendas në Mbretërinë e Bashkuar me 240VAC RMS.

Metodologjia e projektimit integrohet pa probleme në rrjetin IoT të bazuar në MQTT/OpenHAB të detajuar në këtë seri mbi ndërtimin e automatizimit të shtëpisë mbi kodin e ripërdorur të marrë nga këtu. Ai gjithashtu mund të përballojë humbjen e çdo elementi të rrjetit IoT dhe është plotësisht i aftë të operohet në mënyrë të pavarur. Ndërsa në mënyrë të pavarur, kontrolli i pajisjes arrihet thjesht duke shtypur butonin e kontrollit në pjesën e sipërme të rrethimit, i cili ndryshon daljen e furnizimit në vazhdim.

Për të mundësuar këtë kontroll lokal të pajisjes Sonoff, GPIO14 nxirret jashtë kasës dhe përdoret si një hyrje shkas. Për të siguruar sigurinë, ky hyrje ushqehet përmes një qarku opto-bashkues dhe vendoset në një mbyllje plastike të tillë që në asnjë moment operatori të mos jetë i ekspozuar ndaj tensioneve të furnizimit me energji elektrike.

Së fundi, proza gjithashtu përshkruan se si të ri-programoni pajisjen ESP8266 në Sonoff 10A duke përdorur Arduino IDE dhe jep detaje të qarkut të plotë të një pajisjeje e cila mund të përdoret për të programuar me besueshmëri kodin e synuar.

Cilat pjesë më duhen?

Kontrolluesi i rrjetit Sonoff

  1. 1 zbritje Sonoff 10A këtu
  2. 1 jashtë rregullatorit të tensionit 7805L 5v këtu
  3. 1 off transformator 240/6VAC 1.5VA këtu
  4. 2 nga 0.1 kondensatorë qeramikë këtu
  5. 1 off 1000uF @25v Kondensator elektrolitik këtu
  6. 1 jashtë urës ndreqëse 2W01 këtu
  7. 2 rezistenca 4K7 këtu
  8. 1 rezistencë 330R këtu
  9. 1 buton SPST këtu
  10. 1 zbritje Mulitcomp BM12W ABS Shtojcë këtu
  11. 1 zbritje TIL111 opto-bashkues këtu
  12. 1 bllok bllok terminali me 3 drejtime këtu
  13. 1 lidhës moleks i koduar me 2 drejtime këtu/këtu
  14. 1 lidhës molex i koduar me 3 drejtime këtu/këtu
  15. 1 lidhës molex i koduar me 5 drejtime këtu/këtu
  16. 1 kunja molex 5-Way këtu
  17. 1 zbritje Winbond SPI Flash (W25Q32FVSIG) këtu
  18. 1 mbajtës siguresash 20 mm + kapak këtu
  19. 1 off 20mm goditje të shpejtë 500mA siguresa këtu
  20. 2 jashtë gjëndrave të kabllove Polyamide këtu
  21. 1 jashtë prizës së rrjetit UK (BS1363/A) këtu
  22. 1 jashtë prizës kryesore në Mbretërinë e Bashkuar (BS1363/A) këtu
  23. 7 vida najloni M3 16mm CS, (përfshirë 10 arra jashtë) këtu/këtu
  24. 2 pa lidhje Zip këtu
  25. 1 jashtë veroboard (0.1 "katran) këtu
  26. 1 zbritje Tela bakri të konservuar me gjatësi të ndryshme 22swg këtu
  27. 1 off 3M White UK kabllo kryesore këtu
  28. 10 zbërthime të prizës Molex këtu

Programues Sonoff

  1. 1 jashtë rregullatorit të tensionit LD33CV 3v3 këtu
  2. 1 zbritës TO-220 këtu
  3. 1 zbritje paste Heatsink këtu
  4. 1 off 10uF @16v Kondensator elektrolitik këtu
  5. 1 nga 0.1 kondensator qeramik këtu
  6. 1 buton SPDT jashtë këtu
  7. 1 rezistencë 4K7 këtu
  8. 1 lidhës moleks i koduar me 2 drejtime këtu/këtu
  9. 1 lidhës molex i koduar me 3 drejtime këtu/këtu
  10. 5 off priza Molex crimps këtu
  11. 1 prizë molex 6-Way këtu
  12. 1 buton SPST këtu
  13. 1 prizë 2.1mm PSU këtu
  14. 1 jashtë veroboard (0.1 "katran) këtu
  15. 1 off USB për përshtatësin serik (FTDI) këtu

Çfarë programi më nevojitet?

  1. Arduino IDE 1.6.9 këtu
  2. Arduino IDE e konfiguruar për të programuar ESP8266. Shih këtu; Vendosja e Arduino IDE për të programuar ESP8266-01

Çfarë mjetesh më duhen?

  1. Makine per ngjitjen e metalit,
  2. Stërvitje dhe copa të ndryshme (përfshirë hapëse të hapura për gjëndrat e kabllove dhe butonin e kontrollit),
  3. Kaçavida (të ndryshme),
  4. Çelësa të rregullueshëm (dy të fikur, gjerësia e nofullës> 25 mm, për gjëndrat e kabllove),
  5. Skedarë (të ndryshëm),
  6. Vesi i fortë,
  7. Armë e nxehtë,
  8. DMM (mundësisht CAT IV).

Çfarë aftësish më duhen?

  1. Një kuptim i mirë i elektronikës dhe sigurisë elektrike në shtëpi/dizajn/instalime elektrike, etj.,
  2. Njohuri për Arduino dhe IDE -në e tij,
  3. Aftësi të mira të fabrikimit (bashkim, depozitim, shpim etj.),
  4. Pak durim,
  5. Pak kuptim i rrjetit tuaj në shtëpi.

Temat e mbuluara

  • Prezantimi
  • Vështrim i qarkut
  • Sonoff RetroMods
  • Detajet e ndërtimit dhe montimit
  • Përshtatës programimi Sonoff
  • Vështrim i Përgjithshëm i Sistemit Softuerik
  • Pasqyrë e softuerit
  • Konfigurimi OpenHAB
  • Testimi i pajisjes tuaj IoT
  • Përfundim
  • Referencat e përdorura

Lidhjet e serive

Për Pjesën 8: Sensori i Temperaturës dhe Lagështisë IoT WiFi. Pjesa: 8 IoT, Automatizimi i Shtëpisë

Për Pjesën 10: Telekomanda IR përmes IoT. Pjesa 10 IoT, Automatizimi i Shtëpisë

Hapi 1: Vështrim i qarkut

Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut
Vështrim i qarkut

Vështrim i përgjithshëm

Siç u përmend në hyrjen e mësipërme, për të qenë në gjendje të ndizni dhe fikni kontrolluesin e rrjetit në nivel lokal, kërkohej një hyrje në bordin e Sonoff të ESP8266. Prezantimi i një inputi të tillë të jashtëm kërkon që mbyllja e Sonoff ABS të thyhet dhe për këtë arsye krijon një rrezik potencial goditjeje. Për të kapërcyer këtë kam përdorur izolim optik të tillë që të mos ketë mundësi ekspozimi ndaj energjisë elektrike jashtë mbylljes së sistemit të kontrolluesit të rrjetit.

Ajo që vijon është një përshkrim i qarkut opto-izolues (në figurën 1 më sipër).

Detajet e qarkut

Qarku opto-izolues merr furnizimin e tij direkt nga rrjeti elektrik i aplikuar në njësi. 240VAC RMS zbatohet në transformatorin e shkallëzimit/izolimit TR1 nëpërmjet J1 një kontakti feonix MKDSN2, terminali 3-Way 5/3-5.08 poliamid i vlerësuar në 16A në 400V në gjendje të mbajë një kabllo prej 2.5mm (sq) CSA dhe F1 një 500mA 20mm siguresë me goditje të shpejtë. 6VAC i disponueshëm në mbështjelljet dytësore të TR1 është valë e plotë e korrigjuar me urën diodike B1.

Ky dalje e korrigjuar me valë të plotë stabilizohet dhe rregullohet më pas nga C1, C2 C3, R3 dhe IC1 një rregullator i shuntit të serive 7805L, duke dhënë një hekurudhë të mirë dhe të pastër furnizimi 5v.

Hekurudha 5v përdoret më pas për të kontrolluar hyrjen në OK1 të një opto-izoluesi TIL111 përmes një butoni të bardhë të bardhë të montuar nga jashtë, të lidhur në të gjithë J3. Dalja e TIL111 është e lidhur me hyrjen Sonoff GPIO14 përmes R2 një rezistencë tërheqëse 4K7. Kështu arrihet më mirë se 340V izolim (dmth. Kulmi i tensionit = (240VAC*sqroot (2))).

Hapi 2: Sonoff RetroMods

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

Për të integruar pajisjen Sonoff 10A është e nevojshme të bëhen disa modifikime retrospektive.

E para është të shtoni një lidhës moleks me 5 drejtime 0.1 katran, siç tregohet në figurën 1 më sipër. Kjo ju lejon të hyni në GPIO14 në Sonoff pasi të jetë zëvendësuar mbulesa mbrojtëse si në fotot 2 dhe 3 më sipër.

Megjithëse nuk tregohet më lart, unë gjithashtu nxora linjat serike TX/RX për të lejuar programimin në vend (referojuni parzmoreve kabllorë SK1..3 në Hapin 1 më sipër).

Modifikimi i dytë është rritja e madhësisë së pajisjes SPI Flash nga 1MByte të paracaktuar në 4MBytes, kjo do të lejojë hapësirë të mjaftueshme që skedarët e serverit të internetit IoT të mbahen në SPIFFS.

Bleva pajisjen flash SMD SPI (W25Q32FVSIG) nga Ebay këtu

Për të zëvendësuar blicin, hoqa përkohësisht LED Sonoff si në figurën 4 për t'i dhënë akses më të mirë pajisjes SMD. Për të shkrirë blicin, unë përdor një armë ngrohëse siç tregohet në figurën 5 më sipër. Pastaj ribashkoni përkatësisht 4MByte Flash dhe LED përkatësisht (figura 6).

Hapi 3: Detajet e ndërtimit dhe montimit

Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit
Detajet e ndërtimit dhe montimit

Kam mbyllur kontrolluesin kryesor në një Kuti ABS Mulitcomp BM12W (Figura 1 më lart). Kjo rrethim ka futje të izoluara prej bronzi M3 që lejojnë qasje të shumëfishtë në njësi pa kompromentuar fijet e fiksimit, kështu që siguresa e brendshme mund të zëvendësohet nëse është e nevojshme ose inspektimi i brendshëm mund të bëhet me kalimin e kohës (e njëjta gjë nuk mund të thuhet për pajisjen Sonoff, e cila është në mënyrë efektive një herë vetëm duke përdorur tappers vetë).

Lehtësimi parësor i sforcimit për kabllon e furnizimit me energji elektrike u arrit përmes një gjëndre kabllo të bardhë M16 Najlon/Poliamid 6/6 të bardhë që mbështet një kabllo OD Min/Max 5mm/10mm.

Lehtësimi sekondar i tendosjes ishte përmes një zinxhiri të vetëm të vendosur në kabllo nëse aplikohet tendosje e tepërt dhe gjëndra e kabllit dështon, lidhja me zinxhir do ta mbajë kabllon në vend.

Për t'iu përshtatur gjëndrave të kabllove dhe për të siguruar hapësirë të mjaftueshme për të montuar Sonoff dhe elektronikë opto-izolues, unë hoqa brinjët e brendshme të montimit të PCB siç tregohet më sipër (Figura 2).

Të gjitha pajisjet elektronike ishin montuar në mënyrë të sigurt përmes vidave CS najloni M3 për të siguruar që izolimi me pjesën e jashtme të rrethimit të ishte ruajtur. Elektronika opto-izoluese e montuar me 5 pika fiksimi për të siguruar forcë të shëndoshë mekanike nëse njësia bie, duke parandaluar kështu masën e transformatorit të izolimit që të prishë qarkun e veroboard.

Furnizimi në njësi u arrit përmes një kabllo standarde të bardhë të koduar me ngjyrë të bardhë me 3 bërthama të izoluara nga PVC me shumë fije (32/0.2mm sq) kabllo 1mm (sq) CSA. me një OD prej 7.2mm të aftë për të mbajtur 10A.

Njësia ishte e lidhur me furnizimin me energji elektrike në Mbretërinë e Bashkuar (240VAC RMS) përmes një prize standarde sigurie me 3 kunja (BS 1363/A) të miratuar. Spina ishte shkrirë në 5A.

Të gjithë kabllot e furnizimit me rrjet në qarkun opto-izolues u lidhën nëpërmjet kontaktit pheonix MKDSN2, terminaleve poliamide 5/3-5.08 të vlerësuara në 16A në 400V të afta të mbajnë një kabllo prej 2.5mm (sq) CSA, duke siguruar kështu kapacitet të mjaftueshëm për dy kabllo në çdo pozicion.

Asnjë kabllo rrjeti nuk u kallajos, thjesht u përdredh për të parandaluar spërkatjen e bërthamave para se të futet në bllokun e lidhësit. Kallajimi i kabllove të rrjetit është një praktikë e rrezikshme pasi lidhësja "qetësohet" me kalimin e kohës duke bërë që kablli të humbasë në bllokun e lidhësit.

Shënim:

  • OD = Diametri i jashtëm.
  • VAC = Volt Rryma alternative
  • RMS = Sheshi Mesatar i Rrënjës
  • CSA = Zonë Ndërsektoriale
  • CS = Counter Sunk

Hapi 4: Përshtatës programimi Sonoff

Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff
Përshtatës programimi Sonoff

Ekzistojnë dy aspekte që duhen marrë parasysh kur ri-programoni Sonoff 10A përmes Arduino IDE;

  1. Konfigurimi i Arduino IDE tuaj për të programuar ESP8266,
  2. Akti i programimit të vetë harduerit.

Konfigurimi i Arduino IDE tuaj për të programuar ESP8266

Për të konfiguruar IDE-në tuaj Ardino ndiqni udhëzimet këtu Konfigurimi i Arduino IDE për të programuar ESP8266-01

Programimi i harduerit

Ky është një proces me shumë hapa si në të gjitha rastet me ESP8266. Këtu, fuqia Sonoff aplikohet në tabelë përmes një furnizimi të jashtëm të stabilizuar 3v3 DC dhe JO nga furnizimi me energji elektrike. Një pajisje USB serike do të kërkohet për të dërguar dhe marrë të dhëna në dhe nga Sonoff. Lidhni TX dhe RX siç tregohet në Figurën 2 dhe 4.

Hapat e programimit (të përgjithshëm)

  1. Së pari sigurohuni që nuk ka energji elektrike të jashtme të aplikuar në Sonoff,
  2. Shtypni dhe mbani shtypur butonin në pajisjen Sonoff. (figura 1 më lart, butoni i shënuar i ri-ndezjes),
  3. Aplikoni furnizimin e jashtëm DC 3v3 në pin 1. (figura 2 më lart),
  4. Lëshoni butonin Sonoff,
  5. Pajisja tani mund të riprogramohet në mënyrën e zakonshme përmes Arduino IDE.

Për t'i bërë gjërat pak më të lehta, unë krijova pajisjen e programimit më lart (fotografitë 3 dhe 4) e cila u lidh me Sonoff përmes parzmoreve kabllorë SK1… 3 (siç përshkruhet në këtë hap të udhëzueshëm 1.). Kjo lejoi programim më të lehtë të ESP8266. Ai gjithashtu siguroi një mjet për të testuar GPIO14 si një hyrje përmes përdorimit të R1 një rezistencë tërheqëse 4K7 dhe butonit S1.

Përdorimi i pajisjes programuese më lart (Figura 3 dhe 4) Hapat e programimit janë,

  1. Shtypni dhe mbani butonin e ndezjes përsëri në Sonoff,
  2. Pulsoni furnizimin 3v3 duke shtypur në çast S2,
  3. Lëshoni butonin e rindezjes,
  4. Pajisja tani mund të programohet.

SHENIM - KUJDES

Në asnjë rrethanë nuk duhet të furnizohet me energji nëpërmjet rrjetit gjatë aktivitetit të ri-programimit Sonoff

Hapi 5: Vështrim i përgjithshëm i sistemit të softuerit

Vështrim i Përgjithshëm i Sistemit Softuerik
Vështrim i Përgjithshëm i Sistemit Softuerik
Vështrim i Përgjithshëm i Sistemit Softuerik
Vështrim i Përgjithshëm i Sistemit Softuerik

Kjo pajisje IoT Mains Controller në pjesën më të madhe përmban të njëjtat gjashtë komponentë kryesorë të softuerit si në Sensorin e Temperaturës dhe Lagështisë të Udhëzueshme WiFi IoT. Pjesa: 8 IoT, Automatizimi i Shtëpisë dhe treguar në figurën 1 më lart, me një personalizim.

SPIFFS

Ky është sistemi (i azhurnuar në 4MBytes) në bord SPI Flash Filing dhe përdoret për të mbajtur informacionin e mëposhtëm (shiko figurën 2 më lart);

  • Ikonat dhe 'Faqja Kryesore e Konfigurimit të Kontrolluesit të Rrjetit' html: Shërbyer nga pajisja IoT kur nuk është në gjendje të lidhet me rrjetin tuaj IoT WiFi (zakonisht për shkak të informacionit të pasaktë të sigurisë) dhe i siguron përdoruesit një mjet për konfigurimin në distancë të kontrolluesit të rrjetit pa nevoja për të ri-programuar ose ngarkuar përmbajtje të re SPIFFS.
  • Informacioni i Sigurisë: Ky mban informacionin e përdorur në fuqizimin e pajisjes IoT për t'u lidhur me rrjetin tuaj IoT WiFi dhe ndërmjetësin MQTT. Informacioni i paraqitur përmes 'Faqja Kryesore e Konfigurimit të Kontrolluesit të Rrjetit' shkruhet në këtë skedar ('secvals.txt').

Shënim: Për të konfiguruar pajisjen fillimisht shihni këtu për detaje të plota se si të përdorni SPIFFS me Arduino IDE.

Serveri mDNS

Ky funksionalitet thirret kur pajisja IoT nuk ka arritur të lidhet me rrjetin tuaj WiFi si një stacion WiFi dhe në vend të kësaj është bërë një pikë aksesi WiFi diçka e ngjashme me një ruter WiFi vendas. Në rastin e një ruteri të tillë, ju zakonisht lidheni me të duke futur Adresën IP të diçkaje si 192.168.1.1 (zakonisht e shtypur në një etiketë të ngjitur në kuti) direkt në shiritin e URL -së të shfletuesit tuaj, ku do të merrni një faqe identifikimi për të hyrë emrin e përdoruesit dhe fjalëkalimin për t'ju lejuar të konfiguroni pajisjen. Për ESP8266 në modalitetin AP (modaliteti i Pikës së hyrjes) pajisja është e parazgjedhur në adresën IP 192.168.4.1, megjithatë me serverin mDNS që funksionon ju duhet vetëm të futni emrin miqësor të njeriut 'MAINSCON.local' në shiritin URL të shfletuesit për të parë 'Faqja Kryesore e Konfigurimit të Kontrolluesit të Rrjetit'.

Klienti MQTT

Klienti MQTT siguron të gjithë funksionalitetin e nevojshëm për; lidheni me ndërmjetësin tuaj të rrjetit IoT MQTT, regjistrohuni në temat e zgjedhjes suaj dhe publikoni ngarkesa në një temë të caktuar. Me pak fjalë, ai parashikon funksionalitetin bazë të IoT.

Web Serveri

Siç u përmend më lart, nëse pajisja IoT nuk është në gjendje të lidhet me rrjetin WiFi SSID -i i të cilit, P/W etj. Është përcaktuar në skedarin e Informacionit të Sigurisë të mbajtur në SPIFFS pajisja do të bëhet një Access Point. Pasi të lidheni me rrjetin WiFi të siguruar nga Pika e Qasjes, prania e një Web Server HTTP ju lejon të lidheni drejtpërdrejt me pajisjen dhe të ndryshoni konfigurimin e tij përmes përdorimit të një Shfletuesi Web HTTP, qëllimi i tij është të shërbejë "Konfigurimi i Kontrolluesit të Rrjetit" Faqja e internetit e Faqes kryesore e cila gjithashtu mbahet në SPIFFS.

Stacioni WiFi

Ky funksionalitet i jep pajisjes IoT aftësinë për t'u lidhur me një rrjet WiFi të brendshëm duke përdorur parametrat në skedarin e Informacionit të Sigurisë, pa këtë pajisja juaj IoT nuk do të jetë në gjendje të regjistrohet/publikojë në ndërmjetësin MQTT

Pika e hyrjes WiFi

Aftësia për t'u bërë një pikë hyrjeje WiFi është një mjet me të cilin pajisja IoT ju lejon të lidheni me të dhe të bëni ndryshime të konfigurimit përmes një stacioni WiFi dhe një shfletuesi (siç është Safari në Apple iPad). Kjo pikë hyrje transmeton një SSID = "MAINSCON" + 6 shifrat e fundit të adresës MAC të pajisjes IoT. Fjalëkalimi për këtë rrjet të mbyllur quhet me imagjinatë 'PASSWORD'.

Hapi 6: Vështrim i përgjithshëm i softuerit

Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit
Pasqyrë e softuerit

Për të përpiluar me sukses këtë kod burim do t'ju nevojiten bibliotekat e mëposhtme shtesë;

PubSubClient.h

  • Nga: Nick O'Leary
  • Qëllimi: Mundëson që pajisja të publikojë ose të regjistrohet në tema MQTT me një ndërmjetës të caktuar
  • Nga:

Bounce2.h

  • Nga: Thomas O Fredericks
  • Qëllimi: Zhvendosja e çelësit të hyrjes në softuer
  • Nga:

Vështrim i Përgjithshëm i Kodit

Softueri përdor makinën e gjendjes siç tregohet në figurën 1 më sipër (kopja e plotë e burimit e dhënë më poshtë). Janë 5 shtete kryesore si më poshtë;

  • FITIMI

    Kjo gjendje fillestare është gjendja e parë e futur pas ndezjes së energjisë

  • JOFONFIGJ

    Kjo gjendje futet nëse pas ndezjes zbulohet një skedar i pavlefshëm ose i humbur secvals.txt

  • Pritet në veriperëndim

    Kjo gjendje është kalimtare, e futur ndërsa nuk ekziston asnjë lidhje me rrjetin WiFi

  • Në pritje të MQTT

    Kjo gjendje është kalimtare, futet pasi është bërë një lidhje rrjeti WiFi dhe përderisa nuk ekziston asnjë lidhje me një ndërmjetës MQTT në atë rrjet

  • AKTIV

    Kjo është gjendja normale operacionale e futur pasi të jetë krijuar një lidhje WiFi dhe një lidhje ndërmjetësi MQTT. Gjatë kësaj gjendje, Kontrolluesi i Rrjetit do t'i publikojë ndërmjetësit MQTT dhe do të marrë komanda përmes temave të regjistruara

Ngjarjet që kontrollojnë kalimet midis gjendjeve janë përshkruar në figurën 1 më lart. Kalimet midis shteteve rregullohen gjithashtu nga parametrat e mëposhtëm SecVals;

  • Adresa IP e ndërmjetësit të parë MQTT. Në formë dhjetore me pika AAA. BBB. CCC. DDD
  • Porti i dytë i ndërmjetësit MQTT. Në formë të plotë.
  • Lidhja e tretë e ndërmjetësit MQTT përpiqet të bëjë para se të kaloni nga modaliteti STA në modalitetin AP. Në formë të plotë.
  • Rrjeti i 4 -të WiFi SSID. Në tekst të lirë.
  • Fjalëkalimi i 5 -të i rrjetit WiFi. Në tekst të lirë.

Siç u përmend më lart nëse pajisja IoT nuk është në gjendje të lidhet si një Stacion WiFi me rrjetin WiFi të cilit SSID dhe P/W përcaktohen në secvals.txt të mbajtura në SPIFFS pajisja do të bëhet një Access Point. Pasi të lidhet me këtë pikë aksesi, do të shërbejë 'Faqja Kryesore e Konfigurimit të Kontrolluesit të Rrjetit' siç tregohet më sipër në Figurën 2 (duke futur ose 'MAINSCON.local' ose 192.168.4.1 në shiritin e adresës URL të shfletuesit tuaj). Kjo faqe kryesore lejon rikonfigurimin e kontrolluesit të rrjetit përmes një shfletuesi

MQTT Konventa e emërtimit të temës

E përshkruar në figurën 3 më sipër është konventa e emërtimit e përdorur për temat MQTT dhe është në përputhje me modelin e përdorur në Instructable tim të mëparshëm (këtu Hapi 5).

MQTT Temat e përdorura nga kjo pajisje IoT

Për qartësi kam dokumentuar (figurën 4) temat dhe sekuencat e mesazheve të lidhura me të cilat kjo pajisje publikon/pajtohet. Fotografia gjithashtu përshkruan ndërveprimin me butonin e bardhë të kontrollit në pjesën e jashtme të rrethimit (edhe pse për ironi të fatit butoni tregohet me të kuqe).

Qasja në distancë e konfigurimit ndërsa është në gjendje ACTIVE

Pasi të lidheni me ndërmjetësin MQTT, është e mundur të rikonfiguroni nga distanca parametrat e sigurisë për pajisjen përmes publikimeve të temave MQTT. Skedari i lidhur secvals.txt ka akses vetëm për shkrim të ekspozuar.

Korrigjimi i përdoruesit

Gjatë sekuencës së nisjes, pajisja Sonoff e udhëhequr jep reagimet e mëposhtme të korrigjimit, megjithëse duhet të theksohet, për ta parë këtë do t'ju duhet të hiqni kapakun dhe të ekspozoni qarkun, kështu që është e këshillueshme ta bëni këtë gjatë zhvillimit të kodit tuaj dhe fuqizimit të pajisjes me një furnizim 3v3;

  • 1 Blic i shkurtër: Asnjë skedar konfigurimi i vendosur në SPIFFS (secvals.txt),
  • 2 Pulsime të shkurtra: Pajisja IoT po përpiqet të lidhet me rrjetin WiFi,
  • Ndriçim i vazhdueshëm: Pajisja Sonoff IoT po përpiqet të lidhet me ndërmjetësin MQTT,
  • Fikur: Pajisja është aktive dhe e lidhur me ndërmjetësin MQTT.

Shënim 1: 'Faqja kryesore e konfigurimit të kontrolluesit të rrjetit' nuk përdor priza të sigurta dhe për këtë arsye mbështetet në sigurinë e rrjetit tuaj.

Shënim 2: Për të programuar pajisje të shumta IoT, vargu MQTT do të kërkojë redaktim para se të shkarkohet në secilën pajisje. Kjo ndodh sepse numri id i kontrolluesit të rrjetit është futur në vargun e temës MQTT. dmth. në programin e publikuar zgjodha vlerën 100: 'WFD/MainsCont/100/Relay/Command/1' dhe për 2 pajisjet e mia ato numërohen 1 dhe 2 respektivisht.

  • 'WFD/MainsCont/1/Relay/Command/1'
  • 'WFD/MainsCont/2/Relay/Command/1'

Shënim 3: Për plotësinë kur në gjendjen ACTIVE, softueri IoT lejon kontrollin e Sonoff LED dhe publikimin e statusit të butonit të ri-ndezjes. Megjithëse këto kanë vlerë vetëm gjatë procesit të korrigjimit pasi asnjëri nuk i ekspozohet përdoruesit gjatë funksionimit normal.

Hapi 7: Konfigurimi OpenHAB

Konfigurimi OpenHAB
Konfigurimi OpenHAB
Konfigurimi OpenHAB
Konfigurimi OpenHAB
Konfigurimi OpenHAB
Konfigurimi OpenHAB

Për qëllime testimi, vendosa që të vendosja në mënyrë ideale dy kontrolluesit e rrjetit në "Dhomën e ndenjes" të shtëpisë sime. Kjo faqe OpenHAB mund të arrihet përmes faqes kryesore të faqes si në figurën 1.

Ndryshova konfigurimin e OpenHAB.sitemap të dhënë në Instructable tim të mëparshëm (këtu) dhe shtova shënime individuale për 'Main Controller 1' dhe 'Mains Controller 2' (figura 2 më lart). Unë gjithashtu shtova shënime (Living Room Mains Cont. 1 & 2) për të shfaqur Trendet RSSI të matura në marrësin e dy pajisjeve të reja IoT (figura 3).

Së fundi, shtova shënime në skedarët.rules dhe.items për të lejuar sinkronizimin dinamik të gjendjes së Sonoff dhe azhurnimin/animimin e përpjekjes sime të dobët në ndërrimin e grafikës (çelësi mbyllet kur është aktiv dhe hapet kur është joaktiv). Fotografia 2 jep një shembull të MC1 aktiv dhe MC2 joaktiv.

Shënim 1: Nëse nuk jeni të sigurt se si të përdorni OpenHAB shihni këtu 'Konfigurimi dhe Konfigurimi i OpenHAB. Pjesa 6: IoT, Automatizimi i Shtëpisë '

Shënim 2: Një kopje e hartës së sitit të modifikuar, skedarëve të rregullave dhe artikujve, ikonave etj. Është dhënë në skedarin zip më poshtë.

Shënim 3: RSSI = Treguesi i Fuqisë së Sinjalit të Marrë. Kjo është një masë se sa mirë pajisja IoT mund të shohë rrjetin tuaj WiFi.

Hapi 8: Testimi i pajisjes tuaj IoT

Image
Image
Testimi i pajisjes tuaj IoT
Testimi i pajisjes tuaj IoT

Siç përshkruhet në Sensorin e Temperaturës dhe Lagështisë të Ujit WiFi të Udhëzueshëm. Pjesa: 8 IoT, Automatizimi i Shtëpisë Hapi 7, testimi fillestar i pajisjes IoT u krye mbi një lidhje MQTT nëpërmjet MQTT Spy (si në diagramin e bllokut të sistemit figura 1 më lart), monitorimin e daljes së udhëhequr, hyrjet e butonave (të dyja butonin e ndezjes së Sonoff dhe butoni i jashtëm i bardhë) dhe korrigjoni trafikun në ndërfaqen serike. Kjo më lejoi të ushtroj të gjitha temat në dispozicion të abonuara dhe të kontrolloj përgjigjet e publikuara. Edhe pse përsëri, kjo është kryer me dorë dhe ka marrë kohë, megjithëse ka mundësuar mbulimin 100% të mesazheve/botimeve të temave.

Si makineri kryesore e softuerit (Hapi 6 më lart) u trashëgua nga Instructable më parë (Pjesa: 8), përveç kontrollit të mendjes së shëndoshë, softueri mund të lidhej me ndërmjetësin WiFi N/W dhe MQTT, supozohej se kjo funksiononte si duhet.

Testimi i nivelit të plotë të sistemit u përfundua më pas duke përdorur kontrolluesin kryesor dhe infrastrukturën IoT (përsëri fotografia 1) këtë herë duke përdorur OpenHAB për të kontrolluar ndërveprimin me pajisjen IoT. Pajisjet IoT dhe ngarkesa dumike e vendosur mund të shihen në figurën 2 më sipër.

Videoja jep detaje të plota të testeve të sistemit dhe tregon qartë sinkronizimin që po mbahet midis pajisjeve OpenHAB (PC/Chrome dhe iPad/OpenHAB APP) në kohë reale. Ai gjithashtu tregon mesazhe të drejtpërdrejta për Kontrollorët e Rrjetit përmes MQTTSpy (shiko këtu për detaje të mëtejshme Ngritja e një ndërmjetësi MQTT. Pjesa 2: IoT, Automatizimi i Shtëpisë) dhe regjistri i sistemit të bishtit OpenHAB nga serveri i mjedrës pi mbi një lidhje PuTTY SSH (shiko këtu për më shumë detaje Konfigurimi dhe Konfigurimi i OpenHAB. Pjesa 6: IoT, Automatizimi i Shtëpisë).

Shënim: Trafiku i korrigjimit u përpilua për lëshimin përfundimtar të softuerit.

Hapi 9: Përfundim

Të përgjithshme

Projekti ishte relativisht i lehtë për tu përfunduar dhe funksionoi mirë. Softueri i ngulitur ishte i thjeshtë për tu prodhuar, duke qenë një version i shkurtuar i kodit i përdorur për Sensorët e Temperaturës dhe Lagështisë të Pjesës 8 në këtë seri.

Fillimisht synova të blija vetëm pjesë përbërëse të bardha thjesht për cilësinë e tyre estetike. E arrita këtë në të gjitha, përveç butonit të kontrollit, provoni sa të mundja, nuk isha në gjendje të gjeja një buton të mirë/të lirë plotësisht të bardhë.

Pajisja Sonoff 10A

Unë kam renditur më poshtë ato që mendova se ishin të mirat dhe të këqijat e arsyeshme të pajisjes Sonoff

Pro

  • I lirë.
  • Mbështetje e mirë e komunitetit.
  • Mund të ri-programohet përmes IDE Arduino.

Kundër

  • Rrethim i hollë.
  • Minimal I/O (i nxjerrë në lidhës të përdorshëm).
  • Shkon nxehtë në gjendjen e tij të qetë.
  • Ka vetëm 1MByte blic SPI në bord.
  • A është një PITA për të riprogramuar një herë të lidhur në vend.
  • Kur integrohej kodi i ri në testimin Sonoff mbyllja e stafetës ishte problematike duke pasur parasysh që stafeta është 5v dhe furnizimi i aplikuar për Sonoff për programim është 3v3. Aktivizimi i stafetës është vetëm i dukshëm për veshin.

Shqetësimet

  • Nuk ndërron vijën neutrale. Përdor një stafetë SPST.
  • Nuk është i shkrirë.
  • Lehtësim i dobët i tendosjes së kabllove.
  • PCB nuk është e siguruar brenda rrethimit Sonoff.

Komentoni dizajnin inxhinierik

Duke pasur parasysh që kjo pajisje IoT do të përdorej për të ndërruar rrjetin e drejtpërdrejtë në Mbretërinë e Bashkuar (240VAC RMS) ndoqa praktikat e mira të projektimit mekanik dhe elektrik dhe sigurova që rreziku i goditjes të minimizohej duke mos ekspozuar asnjë material elektrik përçues, duke specifikuar të gjithë përbërësit, de-vlerësimin ngarkesa dalëse, aplikimi i mbrojtjes nga siguresat si në Nën-Sistemin e Kontrolluesit të Rrjetit, ashtu edhe të Opto-Coupled, përfshirja e tokëzimit të mirë të pandërprerë dhe përdorimi i izolimit optik/galvanik.

Përmirësimi i mundshëm

Me prapambetje do të kishte qenë e dobishme të përfshihej një tregues vizual që dalja e Kontrolluesit të Rrjetit ishte aktiv (LED ose Neoni). Edhe pse nuk është një çështje në përdorimin e përditshëm, duke pasur parasysh praktikën standarde të izoloni ngarkesën nga furnizimi para se të kryeni ndonjë mirëmbajtje, ose një shtypje e thjeshtë e butonit të kontrollit lokal do të ndryshojë daljen në rastin kur një llambë mund të ndizet kur lidhet.

Shënim përfundimtar

Nëse dëshironi të shihni dy shembuj shumë të dobët të trajtimit të energjisë elektrike, shikoni lidhjet më poshtë. Çmimet e tyre Darvin do të vijnë në postim shumë shpejt, jam plotësisht i sigurt;

  • Kordoni i Zgjerimit të Shkencëtarit të Madh
  • Komentet e Komunitetit 03 - Shqetësime për Sigurinë e Fuqisë!

Hapi 10: Referencat e përdorura

Kam përdorur burimet e mëposhtme për ta bashkuar këtë Instructable;

PubSubClient.h

  • Nga: Nick O'Leary
  • Qëllimi: Mundëson që pajisja të publikojë ose të regjistrohet në tema MQTT me një ndërmjetës të caktuar
  • Nga:

Bounce2.h

  • Nga: Thomas O Fredericks
  • Qëllimi: Zhvendosja e çelësit të hyrjes në softuer
  • Nga:

SPIFFS

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

Përmirësimi i blicit Sonoff

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

Diagrami i Qarkut Sonoff

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

Moduli USB UART (aka. 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=item3f63596: g: QVUAAOSw71BXP92B

Çmimet Darwin (lehtësim i lehtë)

https://www.darwinawards.com/

Fleta e të dhënave TIL111 Opto-izoluese

Recommended: