INHOUDSOPGAWE:
- Stap 1: Kringoorsig
- Stap 2: Sonoff RetroMods
- Stap 3: Konstruksie en monteerbesonderhede
- Stap 4: Sonoff -programmeeradapter
- Stap 5: Oorsig van sagteware stelsel
- Stap 6: Sagteware -oorsig
- Stap 7: OpenHAB -konfigurasie
- Stap 8: Toets u IoT -toestel
- Stap 9: Gevolgtrekking
- Stap 10: Gebruikte verwysings
Video: IoT -hoofbeheerder. Deel 9: IoT, tuisautomatisering: 10 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Vrywaring
LEES HIERDIE EERSTE
Hierdie instruksie gee 'n beskrywing van 'n projek wat hoofstroom gebruik (in hierdie geval UK 240VAC RMS), alhoewel alles in ag geneem is om veilige praktyk en goeie ontwerpbeginsels te gebruik, is daar altyd 'n risiko vir dodelike elektriese skok as u met hierdie voedingspannings werk en wat die skrywer geen aanspreeklikheid kan aanvaar as persoonlike besering of beskadiging van eiendom plaasvind wanneer die inhoud daarvan gevolg word nie. Gevolglik maak u hierdie projek op eie risiko.
Aanhef
Hierdie artikel, die negende in 'n reeks oor tuisautomatisering, beskryf hoe u 'n Sonoff 10A IoT -hoofbeheerder kan skep en integreer in 'n bestaande tuisautomatiseringstelsel, insluitend al die nodige sagtewarefunksionaliteit om die suksesvolle implementering in 'n huishoudelike omgewing moontlik te maak.
Inleiding
Soos hierbo genoem, bevat hierdie instruksie inligting oor hoe om 'n IoT -hoofbeheerder te maak en te integreer met behulp van die Sonoff 10A van iTead. Die toestel self word aangegee as 'n nominale waarde van 10 ampère @ 90 ~ 250VAC, maar hierdie implementering verlaag dit tot 5 ampère via die saamgesmelte prop wat die hoofvoeding van die Verenigde Koninkryk van 240VAC RMS bied.
Die ontwerpmetodologie kan naatloos integreer in die MQTT/OpenHAB -gebaseerde IoT -netwerk wat in hierdie reeks uiteengesit word oor tuisautomatisering, en bou op hergebruikte kode hiervandaan. Dit kan ook die verlies van enige IoT -netwerkelement hanteer en kan ten volle selfstandig bedryf word. In die selfstandige modus word die toestel beheer deur eenvoudig op die bedieningsknoppie aan die bokant van die omhulsel te druk, wat die toevoer na die volgende toevoer verander.
Om hierdie plaaslike beheer van die Sonoff -toestel moontlik te maak, word GPIO14 uit die kas gehaal en word dit as snellerinvoer gebruik. Om die veiligheid te verseker, word hierdie insette via 'n optokoppelingskring gevoed en in 'n plastiese omhulsel gehuisves sodat die operateur nooit blootgestel word aan netspanning nie.
Laastens beskryf die prosa ook hoe om die ESP8266-toestel in die Sonoff 10A te herprogrammeer met behulp van die Arduino IDE en gee volledige kringbesonderhede van 'n toestel wat gebruik kan word om doelkode betroubaar te programmeer.
Watter onderdele het ek nodig?
Sonoff hoofkontroleerder
- 1 af op Sonoff 10A hier
- 1 af 7805L 5v spanningsreguleerder hier
- 1 af 240/6VAC 1.5VA -transformator hier
- 2 af 0.1 keramiek kapasitors hier
- 1 af 1000uF @25v elektrolitiese kondensator hier
- 1 afbrug gelykrigter 2W01 hier
- 2 af 4K7 weerstande hier
- 1 af 330R weerstand hier
- 1 af op SPST -knoppie hier
- 1 afslag op Mulitcomp BM12W ABS -omhulsel hier
- 1 af op TIL111 opto-koppelaar hier
- 1 af 3-rigting terminale blok hier
- 1/2-rigting gekodeerde molex-aansluiting hier/hier
- 1/3-weg gekodeerde molex-aansluiting hier/hier
- 1/5-weg gekodeerde molex-aansluiting hier/hier
- 1 kort 5-rigting molex-penne hier
- 1 afslag op Winbond SPI Flash (W25Q32FVSIG) hier
- 1 uit 20 mm lonthouer + dop hier
- 1 uit 20mm snelblaas 500mA lont hier
- 2 van Polyamide kabelkliere hier
- 1 korting op die Britse netstekker (BS1363/A) hier
- 1 uit die Britse hoofaansluiting (BS1363/A) hier
- 7 uit M3 16 mm CS nylon skroewe, (incl. 10 af moere) hier/hier
- 2 van zip -bande hier af
- 1 van veroboard (0,1 "toonhoogte) hier
- 1 af verskillende lengtes 22swg geblikte koperdraad hier
- 1 kort 3M wit Britse netkabel hier
- 10 afslagpunte van Molex -sok hier
Sonoff programmeerder
- 1 af LD33CV 3v3 spanningsreguleerder hier
- 1 af TO-220 heatsink hier
- 1 af Heatsink pasta hier
- 1 af 10uF @16v elektrolitiese kondensator hier
- 1 af 0.1 keramiek kondensator hier
- 1 af SPDT -knoppie hier
- 1 af 4K7 weerstand hier
- 1/2-rigting gekodeerde molex-aansluiting hier/hier
- 1/3-weg gekodeerde molex-aansluiting hier/hier
- 5 afslagpunte van Molex -sok hier
- Eenmalige 6-rigting molex-aansluiting hier
- 1 af op SPST -knoppie hier
- 1 uit 2.1 mm PSU -aansluiting hier
- 1 van veroboard (0,1 "toonhoogte) hier
- 1 af USB na seriële adapter (FTDI) hier
Watter sagteware het ek nodig?
- Arduino IDE 1.6.9 hier
- Arduino IDE is gekonfigureer om die ESP8266 te programmeer. Sien hier; Die opstel van die Arduino IDE om die ESP8266-01 te programmeer
Watter gereedskap het ek nodig?
- Soldeerbout,
- Boor en verskillende stukkies (insluitend 'n trapsnyer vir kabeldraaiers en bedieningsknoppie),
- Skroewedraaiers (verskillende),
- Verstelbare moersleutels (twee af, kaakbreedte> 25 mm, voor kabelwartels),
- Lêers (verskillende),
- Stewige skroef,
- Hittegeweer,
- DMM (verkieslik CAT IV).
Watter vaardighede het ek nodig?
- 'N Goeie kennis van elektronika en elektriese veiligheid by die huis/ontwerp/bedrading, ens.
- Kennis van Arduino en sy IDE,
- Goeie vervaardigingsvaardighede (soldeer, liasseer, boor, ens.),
- Bietjie geduld,
- Beter begrip van u tuisnetwerk.
Onderwerpe gedek
- Inleiding
- Kringoorsig
- Sonoff RetroMods
- Konstruksie en monteerbesonderhede
- Sonoff programmeringsadapter
- Sagteware stelsel oorsig
- Sagteware Oorsig
- OpenHAB -opset
- Toets u IoT -toestel
- Afsluiting
- Verwysings gebruik
Reeksskakels
Tot deel 8: WiFi IoT temperatuur- en humiditeitsensor. Deel: 8 IoT, tuisautomatisering
Tot deel 10: IR -afstandsbediening via IoT. Deel 10 IoT, tuisautomatisering
Stap 1: Kringoorsig
Oorsig
Soos in die inleiding hierbo genoem, was 'n invoer van die Sonoff se ingeboude ESP8266 nodig om die hoofbeheerder plaaslik aan en uit te skakel. Die bekendstelling van so 'n eksterne inset vereis dat die Sonoff ABS -omhulsel geskend word en kan dus 'n moontlike skokrisiko veroorsaak. Om dit te oorkom, het ek optiese isolasie gebruik sodat daar geen blootstelling aan elektrisiteit buite die netbeheerstelsel is nie.
Hierna volg 'n beskrywing van die opto-isolasie stroombane (in foto 1 hierbo).
Kringbesonderhede
Die opto-isolasie-stroombaan ontvang die toevoer direk vanaf die net wat op die eenheid is. Die 240VAC RMS word toegepas op die trappe/isolasie transformator TR1 via J1 a pheonix contact MKDSN2, 5/3-5.08 polyamide 3-Way terminal met 'n nominale waarde van 16A by 400V, wat 'n kabel van 2,5 mm (vierkante) CSA en F1 tot 500mA 20 mm kan dra vinnige blaasversekering. Die 6VAC wat beskikbaar is op die sekondêre wikkelinge van TR1, word volgolf reggestel deur diodebrug B1.
Hierdie gelykmatige uitset in volle golf word dan gestabiliseer en gereguleer deur C1, C2 C3, R3 en IC1, 'n 7805L -reeks shuntreguleerder, wat 'n goeie, skoon 5v toevoerrail bied.
Die 5v-spoor word dan gebruik om die ingang na OK1 'n TIL111 opto-isolator te beheer via 'n ekstern gemonteerde wit SPST-knoppie wat oor J3 gekoppel is. Die uitset van die TIL111 word gekoppel aan die Sonoff GPIO14 -ingang via R2 'n 4K7 optrekweerstand. So word beter as 340V isolasie verkry (dws Piekspanning = (240VAC*vierkantswortel (2))).
Stap 2: Sonoff RetroMods
Om die Sonoff 10A -toestel te integreer, is dit nodig om retrospektief aan te pas.
Die eerste is om 'n 5-rigting 0.1 pitch molex-aansluiting by te voeg, soos op foto 1 hierbo getoon. Dit gee toegang tot GPIO14 op die Sonoff sodra die beskermende omhulsel vervang is soos op foto's 2 en 3 hierbo.
Alhoewel dit nie hierbo getoon word nie, het ek ook die seriële TX/RX-lyne uitgebring om in-situ-programmering moontlik te maak (verwys na kabelboom SK1..3 in stap 1 hierbo).
Die tweede wysiging is om die grootte van die SPI Flash -toestel te vergroot van die standaard 1MByte tot 4MBytes, om voldoende ruimte vir die IoT -webbedienerlêers in SPIFFS te hou.
Ek het die SMD SPI -flitsapparaat (W25Q32FVSIG) hier by Ebay gekoop
Om die flits te vervang, het ek die Sonoff LED tydelik verwyder soos op foto 4 om beter toegang tot die SMD -toestel te gee. Om die flits te ontsoldeer, gebruik ek 'n hittegeweer soos op foto 5 hierbo getoon. Soldeer dan beide die 4MByte Flash en die LED onderskeidelik (foto 6).
Stap 3: Konstruksie en monteerbesonderhede
Ek het die hoofkontroleerder in 'n Mulitcomp BM12W ABS -boks toegemaak (foto 1 hierbo). Hierdie omhulsel het geïsoleerde M3-insetsels van koper, wat toegang tot die eenheid moontlik maak sonder om die draaddrade in te boet, sodat die interne lont vervang kan word indien nodig of dat interne inspeksie mettertyd gedoen kan word (dieselfde kan nie gesê word vir die Sonoff-toestel, wat is effektief slegs eenmalig met behulp van self -tappers).
Primêre rekverligting vir die netkabel is verkry deur middel van 'n M16 Nylon/Polyamide 6/6 wit kabelwartel wat 'n kabel OD Min/Max 5mm/10mm ondersteun.
Sekondêre trekontlasting is via 'n enkele ritsbinder wat op die kabel geplaas word as daar te veel spanning toegedien word en die kabelwartel misluk, die ritsband hou die kabel op sy plek.
Om die kabeldraaiers te pas en genoeg ruimte te bied om die Sonoff en opto-isolasie-elektronika te monteer, het ek die interne PCB-monteerribbe gestroop soos hierbo getoon (foto 2).
Alle elektronika is veilig gemonteer met M3 -nylon CS -skroewe om te verseker dat isolasie met die buitekant van die omhulsel gehandhaaf word. Die opto-isolasie-elektronika word met 5 bevestigingspunte gemonteer om 'n goeie meganiese sterkte te verseker as die eenheid val, en sodoende voorkom dat die massa van die isolasie-transformator die verboordkring breek.
Verskaf aan die eenheid is verkry deur middel van Britse standaard gekleurde wit 3-kern PVC-geïsoleerde hoofstroomkabel (32/0.2mm vierkante) kabel 1mm (vierkante) CSA. met 'n OD van 7,2 mm wat 10A kan dra.
Die eenheid is gekoppel aan die Britse netvoeding (240VAC RMS) via 'n standaard 3 -pins veiligheidsprop (BS 1363/A) wat goedgekeur is. Die prop is gesmelt by 5A.
Alle netkabels na die opto-isolasie-stroombaan is gekoppel via pheonix contact MKDSN2, 5/3-5.08 poliamiedterminale met 'n nominaal 16A by 400V, wat 'n kabel van 2,5 mm (vierkante) CSA kan dra, en bied dus genoeg kapasiteit vir twee kabels in elke posisie.
Geen netkabels is vasgemaak nie, net gedraai om te voorkom dat die kerntjies uitmekaar spat voordat dit in die aansluitblok geplaas word. Netkabels is 'n gevaarlike praktyk, aangesien die soldeer mettertyd 'ontspan' en uiteindelik veroorsaak dat die kabel in die aansluitblok verlore raak.
Let wel:
- OD = Buitendiameter.
- VAC = Volt wisselstroom
- RMS = Root Mean Square
- CSA = Dwarsdeursnee
- CS = Counter Sunk
Stap 4: Sonoff -programmeeradapter
Daar is twee aspekte wat in ag geneem moet word by die herprogrammering van die Sonoff 10A via die Arduino IDE;
- Stel u Arduino IDE op om die ESP8266 te programmeer,
- Die daad van die programmering van die hardeware self.
Stel u Arduino IDE op om die ESP8266 te programmeer
Om u Ardino IDE op te stel, volg die instruksies hier Die opstel van die Arduino IDE om die ESP8266-01 te programmeer
Die programmering van die hardeware
Dit is 'n multi-stap proses, soos in alle gevalle met die ESP8266. Hier word die Sonoff -krag op die bord toegedien via 'n eksterne gestabiliseerde 3v3 DC -toevoer en NIE van die netvoeding nie. 'N USB na seriële toestel sal nodig wees om data van en na die Sonoff te stuur en te ontvang. Koppel TX en RX soos aangedui op foto 2 en 4.
Programmeringsstappe (algemeen)
- Maak eers seker dat daar geen eksterne netvoeding op die Sonoff toegepas word nie,
- Hou die knoppie op die Sonoff -toestel ingedruk. (prent 1 hierbo, gemerkte flitsknoppie),
- Dien eksterne DC 3v3 -toevoer toe op pen 1. (foto 2 hierbo),
- Laat die Sonoff -knoppie los,
- Die toestel kan nou op die gewone manier via die Arduino IDE herprogrammeer word.
Om dinge 'n bietjie makliker te maak, het ek die programmeertoestel hierbo geskep (foto's 3 en 4) wat via die kabelboom SK1 … 3 met die Sonoff gekoppel is (soos beskryf in hierdie instruksionele stap 1.). Dit het makliker gemaak om die ESP8266 te programmeer. Dit bied ook 'n manier om GPIO14 te toets as 'n inset deur die gebruik van R1 'n 4K7 optrekweerstand en knoppie S1.
Met behulp van die programmeertoestel hierbo (foto's 3 en 4) is programmeerstappe,
- Druk die herflits-knoppie op die Sonoff,
- Pols die 3v3 -toevoer deur kort op S2 te druk,
- Laat die herflits knoppie los,
- Die toestel kan nou geprogrammeer word.
LET WEL - WAARSKUWING
Moet onder geen omstandighede krag verskaf via die net tydens die herprogrammeringsaktiwiteit van Sonoff nie
Stap 5: Oorsig van sagteware stelsel
Hierdie IoT Mains Controller -toestel bevat meestal dieselfde ses sagtewarekomponente as in die Instructable WiFi IoT -temperatuur- en humiditeitsensor. Deel: 8 IoT, tuisautomatisering en getoon in foto 1 hierbo, met 'n bietjie aanpassing.
SPIFFS
Dit is die (opgegradeerde na 4MBytes) ingeboude SPI Flash Filing System en word gebruik om die volgende inligting te bewaar (sien prent 2 hierbo);
- Ikone en 'Hoofbladkonfigurasie -tuisblad' html: bedien deur die IoT -toestel as dit nie met u IoT WiFi -netwerk kan koppel nie (gewoonlik as gevolg van verkeerde veiligheidsinligting) en bied aan die gebruiker 'n manier om die hoofbeheer op afstand op te stel sonder die behoefte om nuwe SPIFFS-inhoud te herprogrammeer of op te laai.
- Beveiligingsinligting: dit bevat die inligting wat deur die IoT -toestel gebruik word om aan te sluit op u IoT WiFi -netwerk en MQTT Broker. Inligting wat via die 'Hoofkontrolekonfigurasie -tuisblad' ingedien word, word na hierdie lêer geskryf ('secvals.txt').
Opmerking: sien die volledige inligting oor hoe u SPIFFS met die Arduino IDE kan gebruik om die toestel aanvanklik op te stel.
mDNS -bediener
Hierdie funksie word gebruik wanneer die IoT -toestel nie as 'n WiFi -stasie met u WiFi -netwerk kon koppel nie en in plaas daarvan 'n WiFi -toegangspunt geword het, soortgelyk aan 'n huishoudelike WiFi -router. In die geval van so 'n router sou u tipies daarby konnekteer deur die IP -adres van iets soos 192.168.1.1 (gewoonlik gedruk op 'n etiket op die boks) direk in die URL -balk van u blaaier in te voer, waarna u 'n aanmeldingsbladsy sou ontvang om in te voer die gebruikersnaam en wagwoord sodat u die toestel kan instel. Vir die ESP8266 in AP -modus (toegangspuntmodus) is die toestel standaard die IP -adres 192.168.4.1, maar as die mDNS -bediener werk, hoef u slegs die mensvriendelike naam 'MAINSCON.local' in die URL -balk van die blaaier in te voer om die 'Hoofbladkonfigurasie -tuisblad'.
MQTT -kliënt
Die MQTT -kliënt bied al die nodige funksies aan; maak verbinding met u IoT -netwerk MQTT -makelaar, teken in op die onderwerpe van u keuse en publiseer vragvragte vir 'n gegewe onderwerp. Dit bied kortliks IoT -kernfunksies.
HTTP -webbediener
Soos hierbo genoem, sal die toestel 'n toegangspunt word as die IoT -toestel nie kan koppel aan die WiFi -netwerk waarvan die SSID, P/W, ens. Gedefinieer is in die lêer vir sekuriteitsinligting nie. As u eenmaal gekoppel is aan die WiFi -netwerk wat deur die toegangspunt verskaf word, kan u met die teenwoordigheid van 'n HTTP -webbediener direk aan die toestel koppel en die konfigurasie daarvan verander deur die gebruik van 'n HTTP -webblaaier. Tuisblad se webbladsy wat ook in SPIFFS gehou word.
WiFi -stasie
Hierdie funksie gee die IoT -toestel die moontlikheid om aan te sluit op 'n huishoudelike WiFi -netwerk met behulp van die parameters in die veiligheidsinligtinglêer, sonder dat u IoT -toestel nie op die MQTT Broker kan inteken/publiseer nie
WiFi -toegangspunt
Die vermoë om 'n WiFi -toegangspunt te word, is 'n manier waarmee u met die IoT -toestel daaraan kan koppel en konfigurasieveranderings kan aanbring via 'n WiFi -stasie en 'n blaaier (soos Safari op die Apple iPad). Hierdie toegangspunt stuur 'n SSID = "MAINSCON" + die laaste 6 syfers van die MAC -adres van die IoT -toestel uit. Die wagwoord vir hierdie geslote netwerk word op 'n verbeeldingryke wyse 'PASSWORD' genoem.
Stap 6: Sagteware -oorsig
Om hierdie bronkode suksesvol saam te stel, benodig u die volgende ekstra biblioteke;
PubSubClient.h
- Deur: Nick O'Leary
- Doel: stel die toestel in staat om MQTT -onderwerpe met 'n gegewe makelaar te publiseer of in te teken
- Van:
Weiering2.h
- Deur: Thomas O Fredericks
- Doel: die invoer van die invoerskakelaar in sagteware
- Van:
Kode Oorsig
Die sagteware maak gebruik van die staatsmasjien soos op foto 1 hierbo getoon (volledige afskrif van die bron hieronder). Daar is 5 hooftoestande soos volg;
-
INIT
Hierdie inisialiseringstoestand is die eerste toestand wat ingeskryf is nadat dit aangeskakel is
-
NOCONFIG
Hierdie toestand word ingeskryf as 'n ongeldige of ontbrekende secvals.txt -lêer na aanskakeling opgespoor word
-
Hangende NW
Hierdie toestand is van tydelike aard, aangegaan terwyl daar geen WiFi -netwerkverbinding bestaan nie
-
Hangende MQTT
Hierdie toestand is van tydelike aard, aangegaan nadat 'n WiFi -netwerkverbinding tot stand gekom het, en alhoewel daar geen verbinding met 'n MQTT -makelaar op die netwerk bestaan nie
-
AKTIEF
Dit is die normale bedryfstoestand wat aangegaan is sodra beide 'n WiFi -netwerkverbinding en 'n MQTT Broker -verbinding tot stand gekom het. Gedurende hierdie toestand sal die hoofbeheerder aan die MQTT -makelaar publiseer en opdragte ontvang via ondertekende onderwerpe
Die gebeure wat oorgange tussen state beheer, word in prent 1 hierbo beskryf. Oorgange tussen state word ook beheer deur die volgende SecVals -parameters;
- 1ste MQTT Broker IP -adres. In gestippelde desimale vorm AAA. BBB. CCC. DDD
- 2de MQTT -makelaarshawe. In heelgetalvorm.
- 3de MQTT -makelaarverbinding probeer maak voordat u van STA -modus na AP -modus oorskakel. In heelgetalvorm.
- 4de WiFi -netwerk SSID. In vrye vorm teks.
- 5de WiFi -netwerkwagwoord. In vrye vorm teks.
Soos hierbo genoem, as die IoT -toestel nie as 'n WiFi -stasie kan koppel aan die WiFi -netwerk wat SSID en P/W in secvals.txt in SPIFFS bevat, sal die toestel 'n toegangspunt word. Sodra dit aan hierdie toegangspunt gekoppel is, sal dit die 'Hoofkontrolekonfigurasie -tuisblad' vertoon soos hierbo in Pic 2 getoon (deur óf 'MAINSCON.local' óf 192.168.4.1 in die URL -adresbalk van u blaaiers in te voer). Hierdie tuisblad laat die herkonfigurasie van die hoofbeheer toe via 'n HTTP -blaaier.
MQTT Onderwerpnaamkonvensie
In prent 3 hierbo is die benamingskonvensie wat gebruik word vir die MQTT -onderwerpe uiteengesit, en stem ooreen met die patroon wat gebruik is in my vorige Instructable (hier stap 5).
MQTT -onderwerpe wat deur hierdie IoT -toestel gebruik word
Ter wille van duidelikheid het ek die onderwerpe en gepaardgaande boodskapsvolgorde gedokumenteer waarop hierdie toestel publiseer/inteken. Die prent gee ook 'n beeld van die interaksie met die wit knoppie aan die buitekant van die omhulsel (maar ironies genoeg word die knoppie in rooi getoon).
Toegang tot afstandskonfigurasie terwyl dit in die aktiewe toestand is
Sodra dit aan die MQTT -makelaar gekoppel is, is dit moontlik om die beveiligingsparameters vir die toestel op afstand te herkonfigureer deur middel van MQTT -onderwerppublikasies. Die gepaardgaande lêer secvals.txt het slegs toegang tot skryf.
Ontfout van gebruikers
Tydens die opstartvolgorde gee die Sonoff -toestel -LED die volgende ontfoutingterugvoer, alhoewel dit opgemerk moet word, om dit te sien, moet u die deksel verwyder en die stroombaan blootstel, sodat dit slegs raadsaam is om dit te doen terwyl u u kode ontwikkel en die toestel aanskakel. met 'n 3v3 -toevoer;
- 1 Kort flits: geen Config -lêer in SPIFFS (secvals.txt) nie,
- 2 Kort flitse: IoT -toestel probeer om aan te sluit op 'n WiFi -netwerk,
- Deurlopende beligting: Sonoff IoT -toestel probeer om aan te sluit by MQTT Broker,
- Af: Toestel is aktief en gekoppel aan MQTT Broker.
Opmerking 1: Die 'Hoofkontrolekonfigurasie -tuisblad' gebruik nie veilige voetstukke nie en maak dus staat daarop dat u netwerk veilig is.
Opmerking 2: Om verskeie IoT -toestelle te programmeer, moet die MQTT -string gewysig word voordat dit na elke toestel afgelaai kan word. Dit is omdat die ID -nommer van die hoofbeheerder ingebed is in die MQTT -onderwerpreeks. ie. in die gepubliseerde sagteware het ek die waarde van 100 gekies: 'WFD/MainsCont/100/Relay/Command/1' en vir my 2 toestelle is hulle onderskeidelik 1 en 2 genommer.
- 'WFD/MainsCont/1/Relay/Command/1'
- 'WFD/MainsCont/2/Relay/Command/1'
Opmerking 3: Vir volledigheid kan die IoT-sagteware in die aktiewe toestand die Sonoff-LED beheer en die status van die herflitsknoppie publiseer. Alhoewel dit slegs van waarde is tydens die ontfoutingsproses, aangesien dit nie tydens normale werking aan die gebruiker blootgestel word nie.
Stap 7: OpenHAB -konfigurasie
Vir toetsdoeleindes het ek besluit om die twee hoofbeheerders in die 'woonkamer' van my huis te implementeer. Hierdie OpenHAB -bladsy kan bereik word op die hoofbladsy, soos op prent 1.
Ek het die OpenHAB.sitemap -konfigurasie wat ek in my vorige Instructable (hier) gegee het, gewysig en individuele inskrywings vir 'Mains Controller 1' en 'Mains Controller 2' (foto 2 hierbo) bygevoeg. Ek het ook inskrywings (Living Room Mains Cont. 1 & 2) bygevoeg om RSSI -neigings te toon wat gemeet is aan die ontvanger van die twee nuwe IoT -toestelle (prent 3).
Uiteindelik het ek inskrywings by die.reëls en.items lêers gevoeg om dinamiese toestand sinchronisasie van die Sonoff moontlik te maak en die opdatering/animasie van my swak poging tot 'n skakel grafika (die skakelaar sluit wanneer dit aktief is en maak oop wanneer dit onaktief is). Foto 2 gee 'n voorbeeld van MC1 aktief en MC2 onaktief.
Nota 1: As u nie seker is hoe u OpenHAB moet gebruik nie, sien hier 'OpenHAB opstel en konfigureer'. Deel 6: IoT, tuisautomatisering '
Opmerking 2: 'n Afskrif van die aangepaste sitemap, reëls en items lêers, ikone, ens word in die zip -lêer hieronder gegee.
Nota 3: RSSI = Ontvangen seinsterkte -aanduiding. Dit is 'n maatstaf van hoe goed die IoT -toestel u WiFi -netwerk kan sien.
Stap 8: Toets u IoT -toestel
Soos beskryf in Instructable WiFi IoT Temperatuur- en humiditeitsensor. Deel: 8 IoT, tuisautomatisering Stap 7, die eerste toetsing van die IoT-toestel is uitgevoer oor 'n MQTT-verbinding via MQTT Spy (soos in stelselblokdiagram prent 1 hierbo), monitering van led-uitset, knoppie-insette (beide Sonoff-knoppie her-flits en die wit eksterne knoppie) en ontfout verkeer op die seriële koppelvlak. Dit het my in staat gestel om al die beskikbare onderwerpe wat ingeteken is, uit te oefen en die gepubliseerde antwoorde na te gaan. Alhoewel dit weer handmatig uitgevoer is en tydrowend was, alhoewel dit 100% dekking van boodskappe/onderwerppublikasies moontlik gemaak het.
Aangesien die hoofmasjien vir sagteware (stap 6 hierbo) van die vorige Instructable (deel: 8) geërf is, behalwe die gesondheidskontrole, kon die sagteware aan die WiFi N/W en MQTT Broker koppel, is aanvaar dat dit korrek funksioneer.
Die volledige toets op stelselvlak is daarna voltooi met behulp van die hoofbeheer en die IoT -infrastruktuur (weer prent 1), hierdie keer met OpenHAB om die interaksie met die IoT -toestel te beheer. Die opstelling van die IoT -hardeware en dummy load kan op foto 2 hierbo gesien word.
Die video bevat volledige besonderhede van stelseltoetse en toon duidelik aan dat die sinchronisasie in real -time tussen OpenHAB -toestelle (PC/Chrome en iPad/OpenHAB APP) gehandhaaf word. Dit wys ook lewendige boodskappe aan die hoofbeheerders via MQTTSpy (sien hier vir meer besonderhede Die opstel van 'n MQTT -makelaar. Deel 2: IoT, tuisautomatisering) en OpenHAB -stertstelsel vanaf raspberry pi -bediener oor 'n PuTTY SSH -verbinding (sien hier vir meer inligting besonderhede Opstel en instel van OpenHAB. Deel 6: IoT, Tuisautomatisering).
Let wel: Ontfoutingsverkeer is saamgestel vir die finale sagteware -vrystelling.
Stap 9: Gevolgtrekking
Algemeen
Die projek was relatief maklik om te voltooi en het goed gewerk. Die ingebedde sagteware was eenvoudig om te vervaardig, aangesien dit 'n afgesnyde weergawe was van die kode wat gebruik word vir die temperatuur- en humiditeitsensors van deel 8 in hierdie reeks.
Ek was aanvanklik van plan om slegs wit komponente te bekom bloot vanweë hul estetiese kwaliteit. Ek het dit bereik, behalwe die bedieningsknoppie, probeer as moontlik; ek kon nie 'n goeie/goedkoop, heeltemal wit knoppie kry nie.
Sonoff 10A -toestel
Ek het hieronder gelys wat volgens my redelike voor- en nadele van die Sonoff -toestel was
Voordele
- Goedkoop.
- Goeie gemeenskapsondersteuning.
- Kan herprogrammeer via die Arduino IDE.
Nadele
- Slap omhulsel.
- Minimale I/O (na bruikbare verbindings gebring).
- Dit raak warm in sy rustige toestand.
- Het slegs 1 MByte aan boord SPI-flits.
- Is 'n PITA om te herprogrammeer sodra dit op 'n bedrade plek is?
- By die integrering van nuwe kode in die Sonoff -toets was die aflos sluiting problematies, aangesien die relais 5v is en die aanbod wat op die Sonoff toegedien word vir programmering 3v3 is. Relaisaktivering is slegs opvallend vir die oor.
Bekommernisse
- Dit verander nie die neutrale lyn nie. Gebruik 'n SPST -aflos.
- Is nie versmelt nie.
- Swak kabelvermindering.
- Die PCB is nie beveilig binne die Sonoff -omhulsel nie.
Lewer kommentaar op ingenieursontwerp
Aangesien hierdie IoT-toestel gebruik sou word om die stroomnet in die Verenigde Koninkryk oor te skakel (240VAC RMS), het ek goeie meganiese en elektriese ontwerppraktyke gevolg en verseker dat die risiko van skok tot die minimum beperk word deur geen elektriese geleidende materiale bloot te stel nie, behalwe om alle komponente te spesifiseer, uitgangsbelasting, die gebruik van lontbeskerming op beide die hoofkontroller en die opto-gekoppelde substelsel, die insluiting van goeie ononderbroke aarding en die gebruik van optiese/galvaniese isolasie.
Moontlike verbetering
Agterna sou dit nuttig gewees het om 'n visuele aanduiding in te sluit dat die hoofkontrole -uitset aktief was (LED of Neon). Alhoewel dit nie 'n probleem in die alledaagse gebruik is nie, aangesien dit standaard is om die las van die voorraad te isoleer voordat enige onderhoud uitgevoer word, of 'n eenvoudige druk op die plaaslike bedieningsknoppie sal die uitset verander in die geval dat 'n lamp kan brand wanneer dit ingeprop word.
Laaste nota
Kyk na die onderstaande skakels as u twee baie swak voorbeelde van die hantering van elektrisiteit wil sien. Hulle Darwin -toekennings sal binnekort in die pos wees, ek is seker;
- Mad Scientist -verlengsnoer
- Terugvoer van die gemeenskap 03 - Kommer oor veiligheid oor krag!
Stap 10: Gebruikte verwysings
Ek het die volgende bronne gebruik om hierdie Instructable saam te stel;
PubSubClient.h
- Deur: Nick O'Leary
- Doel: stel die toestel in staat om MQTT -onderwerpe met 'n gegewe makelaar te publiseer of in te teken
- Van:
Weiering2.h
- Deur: Thomas O Fredericks
- Doel: die invoer van die invoerskakelaar in sagteware
- Van:
SPIFFS
https://esp8266.github.io/Arduino/versions/2.0.0/do…
Opgradering van Sonoff -flits
- https://www.andremiller.net/content/upgrading-sonof…
- https://tech.scargill.net/32mb-esp01/
- https://www.andremiller.net/content/upgrading-sonof…
Sonoff stroombaan diagram
https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf
USB UART -module (ook bekend as 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 -toekennings (ligte verligting)
https://www.darwinawards.com/
TIL111 Gegevensblad vir opto-isolator
Aanbeveel:
IR -tuisautomatisering met relais: 6 stappe (met foto's)
IR Tuisautomatisering Met Relay: Infared Remote Home Automation System (Waarskuwing: Herhaal die projek op eie risiko! Hierdie projek behels hoogspanning)
Internet/wolk -beheerde tuisautomatisering met behulp van Esp8266 (aREST, MQTT, IoT): 7 stappe (met foto's)
Internet/wolk -beheerde tuisautomatisering met behulp van Esp8266 (aREST, MQTT, IoT): ALLE krediete aan http://arest.io/ vir die wolkdiens !! Wolkbedieners en -dienste wat dit moontlik maak, is die aantrekkingskrag van die hedendaagse wêreld … UITSLUITING VAN DIE AFSTANDSGANGER was en is die
Tuisautomatisering met behulp van Raspberry Pi Matrix Voice and Snips (deel 2): 8 stappe
Tuisautomatisering met behulp van Raspberry Pi Matrix Voice en Snips (Deel 2): opdatering van tuisautomatisering met behulp van Raspberry Pi Matrix Voice en Snips. In hierdie PWM word dit gebruik vir die beheer van eksterne LED's en servomotor Alle besonderhede in deel 1https: //www.instructables.com/id/Controlling-Light
Retro spraaksintese. Deel: 12 IoT, tuisautomatisering: 12 stappe (met foto's)
Retro spraaksintese. Deel: 12 IoT, tuisautomatisering: Hierdie artikel is die 12de in 'n reeks oor tuisautomatisering -instruksies wat beskryf hoe u 'n IoT Retro -spraaksintese -toestel kan skep en integreer in 'n bestaande tuisautomatiseringstelsel, insluitend al die nodige sagtewarefunksionaliteit om
WiFi IoT temperatuur- en humiditeitsensor. Deel: 8 IoT, tuisautomatisering: 9 stappe
WiFi IoT temperatuur- en humiditeitsensor. Deel: 8 IoT, tuisautomatisering: aanhef Hierdie artikel beskryf die praktiese versterking en verdere ontwikkeling van 'n vroeëre instruksies: 'Pimping' van u eerste IoT WiFi -toestel. Deel 4: IoT, tuisautomatisering, insluitend al die nodige sagtewarefunksionaliteit om die suksesvolle