Taula de continguts:

Controlador de xarxa d’IoT. Part 9: IoT, domòtica: 10 passos (amb imatges)
Controlador de xarxa d’IoT. Part 9: IoT, domòtica: 10 passos (amb imatges)

Vídeo: Controlador de xarxa d’IoT. Part 9: IoT, domòtica: 10 passos (amb imatges)

Vídeo: Controlador de xarxa d’IoT. Part 9: IoT, domòtica: 10 passos (amb imatges)
Vídeo: Internet de las Cosas. Curso Introductorio a IoT. Parte 2: Hardware IoT. Parte2.4 Arquitecturas IoT 2024, Juliol
Anonim
Controlador de xarxa d’IoT. Part 9: IoT, domòtica
Controlador de xarxa d’IoT. Part 9: IoT, domòtica

Exempció de responsabilitat

LLEGEIX AQUEST PRIMER

Aquest document instructiu detalla un projecte que utilitza la xarxa elèctrica (en aquest cas, el Regne Unit 240VAC RMS), tot i que s’ha tingut molta cura d’utilitzar pràctiques segures i bons principis de disseny, sempre hi ha el risc de descàrrega elèctrica potencialment letal quan es treballa amb aquestes tensions d’alimentació i per a que l'autor no pot assumir cap responsabilitat si es produeixen danys personals o danys a la propietat en seguir el seu contingut. En conseqüència, feu aquest projecte sota el vostre propi risc.

Preàmbul

Aquest article, el novè d'una sèrie sobre domòtica, documenta com crear i integrar un controlador de xarxa IoT Sonoff 10A en un sistema domòtic existent que inclou totes les funcionalitats de programari necessàries per permetre el desplegament amb èxit en un entorn domèstic.

Introducció

Com s'ha esmentat anteriorment, en aquest document detallable es pot fer i integrar un controlador de xarxa IoT mitjançant el Sonoff 10A d'iTead. Es calcula que el dispositiu en si té una potència de 10 a 90 ~ 250VAC, però aquesta implementació el redueix al de 5amps mitjançant el connector fusionat que proporciona el subministrament principal domèstic del Regne Unit de 240VAC RMS.

La metodologia de disseny s’integra perfectament a la xarxa IoT basada en MQTT / OpenHAB detallada en aquesta sèrie sobre domòtica basada en el codi reutilitzat extret d’aquí. També pot gestionar la pèrdua de qualsevol element de xarxa IoT i és totalment capaç de funcionar de forma autònoma. Mentre es troba en mode autònom, el control del dispositiu s’aconsegueix simplement prement el botó de control situat a la part superior del recinte, que commuta la sortida de subministrament posterior.

Per habilitar aquest control local del dispositiu Sonoff, GPIO14 surt de la caixa i s'utilitza com a entrada de disparador. Per garantir la seguretat, aquesta entrada s’alimenta a través d’un circuit optoacoblador i s’allotja en una carcassa de plàstic de manera que l’operador no està exposat en cap moment a tensions de subministrament de xarxa.

Finalment, la prosa també descriu com tornar a programar el dispositiu ESP8266 al Sonoff 10A mitjançant l'IDE Arduino i proporciona detalls complets del circuit d'un dispositiu que es pot utilitzar per programar de manera fiable el codi de destinació.

Quines parts necessito?

Controlador de xarxa Sonoff

  1. 1 de descompte en Sonoff 10A aquí
  2. 1 off 7805L 5v regulador de tensió aquí
  3. 1 off 240 / 6VAC 1.5VA Transformador aquí
  4. Aquí hi ha 2 condensadors ceràmics de 0,1
  5. 1 descompte de condensador electrolític 1000uF @ 25v aquí
  6. 1 off rectificador Bridge 2W01 aquí
  7. 2 resistències 4K7 de descompte aquí
  8. 1 resistència de 330R aquí
  9. 1 desactiva el botó SPST aquí
  10. 1 de descompte Mulitcomp BM12W ABS aquí
  11. 1 descompte optoacoblador TIL111 aquí
  12. 1 desactivat bloc de terminals de tres vies aquí
  13. 1 apagat connector molex codificat de 2 vies aquí / aquí
  14. 1 apagat de connector molex codificat de 3 vies aquí / aquí
  15. 1 connector de molex codificat de 5 vies aquí / aquí
  16. 1 descompte de 5 passadors molex aquí
  17. 1 descompte de Winbond SPI Flash (W25Q32FVSIG) aquí
  18. 1 portafusibles de 20 mm + tap aquí
  19. 1 fusible de 20 mm de fusió ràpida de 500 mA aquí
  20. Aquí hi ha 2 passacables de poliamida
  21. 1 desconnexió del connector de xarxa del Regne Unit (BS1363 / A) aquí
  22. 1 fora del sòcol principal del Regne Unit (BS1363 / A) aquí
  23. 7 cargols de niló M3 16 mm CS, (inc. 10 femelles desconnectades) aquí / aquí
  24. 2 descomptes aquí
  25. 1 de veroboard (0,1 "pitch) aquí
  26. 1 descompte de filferro de coure estanyat de diverses longituds 22swg
  27. 1 cable de xarxa elèctrica blanca de 3M de descompte aquí
  28. 10 desconnexions Molex aquí

Programador de Sonoff

  1. 1 descompteu el regulador de voltatge LD33CV 3v3 aquí
  2. 1 descompte del dissipador de calor TO-220 aquí
  3. 1 descompte Pegat per dissipador aquí
  4. 1 off 10uF @ 16v Condensador electrolític aquí
  5. Aquí hi ha 1 condensador de ceràmica de 0,1
  6. 1 desactiva el botó SPDT aquí
  7. 1 de resistència 4K7 aquí
  8. 1 apagat connector molex codificat de 2 vies aquí / aquí
  9. 1 apagat de connector molex codificat de 3 vies aquí / aquí
  10. 5 desconnexions de sòcol Molex aquí
  11. 1 sòcol de 6 vies molex aquí
  12. 1 desactiva el botó SPST aquí
  13. 1 desconnexió de la presa d'alimentació de 2,1 mm aquí
  14. 1 de veroboard (0,1 "pitch) aquí
  15. 1 desactivació de l'adaptador USB a sèrie (FTDI) aquí

Quin programari necessito?

  1. Arduino IDE 1.6.9 aquí
  2. Arduino IDE configurat per programar l’ESP8266. Vegeu aquí; Configuració de l'IDE Arduino per programar l'ESP8266-01

Quines eines necessito?

  1. Soldador,
  2. Trepant i diversos brots (inclòs el tallador de forats esglaonats per a premsa de cables i botó de control),
  3. Tornavisos (diversos),
  4. Claus regulables (dues apagades, amplada de mandíbula> 25 mm, per a passacables),
  5. Fitxers (diversos),
  6. Vici robust,
  7. Pistola de calor,
  8. DMM (preferiblement CAT IV).

Quines habilitats necessito?

  1. Una bona comprensió de l'electrònica i la seguretat elèctrica de la llar / disseny / cablejat, etc.,
  2. Coneixement d'Arduino i el seu IDE,
  3. Bones habilitats de fabricació (soldar, llimar, perforar, etc.),
  4. Una mica de paciència,
  5. Alguna comprensió de la vostra xarxa domèstica.

Temes tractats

  • Introducció
  • Visió general del circuit
  • Sonoff RetroMods
  • Detalls de construcció i muntatge
  • Adaptador de programació Sonoff
  • Descripció general del sistema de programari
  • Descripció general del programari
  • Configuració OpenHAB
  • Prova del dispositiu IoT
  • Conclusió
  • Referències utilitzades

Enllaços de la sèrie

Fins a la part 8: sensor de temperatura i humitat IoT WiFi. Part: 8 IoT, domòtica

Fins a la part 10: control remot IR mitjançant IoT. Part 10 IoT, domòtica

Pas 1: Visió general del circuit

Visió general del circuit
Visió general del circuit
Visió general del circuit
Visió general del circuit
Visió general del circuit
Visió general del circuit
Visió general del circuit
Visió general del circuit

Visió general

Com es va esmentar a la introducció anterior, per poder encendre i apagar el controlador de xarxa localment, calia una entrada a l’ESP8266 de Sonoff. La introducció d’aquesta entrada externa requereix la violació de la carcassa ABS Sonoff i, per tant, crea un perill potencial de xoc. Per superar-ho, he utilitzat l'aïllament òptic de tal manera que no hi ha possibilitat d'exposició a l'electricitat fora de la carcassa del sistema del controlador de xarxa.

El que segueix és una descripció dels circuits d’opto-aïllament (a la foto 1 anterior).

Detalls del circuit

El circuit d'opto-aïllament rep el subministrament directament de la xarxa elèctrica aplicada a la unitat. El RMS de 240VAC s’aplica al transformador d’aïllament TR1 a través de J1 a contacte Pheonix MKDSN2, terminal de 3-vies de poliamida 5 / 3-5.08 de 16A a 400V capaç de portar un cable de 2.5mm (sq) CSA i F1 un 500mA 20mm fusible de bufat ràpid. El 6VAC disponible als bobinatges secundaris de TR1 és una ona completa rectificada pel pont de díodes B1.

Aquesta sortida rectificada d’ona completa s’estabilitza i regula mitjançant C1, C2 C3, R3 i IC1 un regulador de derivació de la sèrie 7805L, que proporciona un bon rail d’alimentació de 5V.

El carril de 5v s'utilitza per controlar l'entrada a OK1 un optoaïllador TIL111 mitjançant un botó blanc SPST muntat externment connectat a través de J3. La sortida del TIL111 està acoblada a l’entrada Sonoff GPIO14 mitjançant R2 una resistència de tracció 4K7. Així, s’aconsegueix un aïllament superior a 340V (és a dir, tensió màxima = (240VAC * sqroot (2))).

Pas 2: Sonoff RetroMods

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

Per integrar el dispositiu Sonoff 10A cal fer algunes modificacions retrospectives.

El primer és afegir un connector molex de pas de 0,1 de 5 vies com es mostra a la foto 1 anterior. Això permet accedir a GPIO14 al Sonoff un cop s'hagi substituït la coberta protectora, com a les fotos 2 i 3 anteriors.

Tot i que no es mostra més amunt, també vaig treure les línies sèrie TX / RX per permetre la programació in situ (consulteu el cable de cables SK1..3 al pas 1 anterior).

La segona modificació consisteix a augmentar la mida del dispositiu SPI Flash des del valor predeterminat d’1 MB a 4 MB, cosa que permetrà tenir suficient espai perquè els fitxers del servidor web IoT es mantinguin a SPIFFS.

He comprat el dispositiu flash SMD SPI (W25Q32FVSIG) d’Ebay aquí

Per substituir el flaix, he eliminat temporalment el LED Sonoff com a la imatge 4 per donar un millor accés al dispositiu SMD. Per des-soldar el flaix, he utilitzat una pistola de calor com es mostra a la foto 5 anterior. A continuació, torneu a soldar tant el flash de 4 MB com el LED, respectivament (foto 6).

Pas 3: detalls de construcció i muntatge

Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge
Detalls de construcció i muntatge

Vaig tancar el controlador de xarxa en una caixa ABS Mulitcomp BM12W (foto 1 anterior). Aquest gabinet té insercions M3 de llautó aïllades que permeten l'accés múltiple a la unitat sense comprometre els fils de subjecció, de manera que el fusible intern es pugui substituir si cal o es pugui fer una inspecció interna amb el pas del temps (no es pot dir el mateix per al dispositiu Sonoff, que és efectivament un sol cop tancat amb autoaplicadors).

Es va aconseguir un alleujament primari de la tensió per a la xarxa elèctrica que portava el cable d’alimentació mitjançant un passacables blanc de niló / poliamida 6/6 M16 que suportava un cable OD mínim / màxim 5 mm / 10 mm.

L'alleujament secundari de la tensió es va fer mitjançant un únic tirant de cremallera col·locat al cable en cas que s'apliqués una tensió excessiva i fallés el passacables, el tirant de cremallera mantindrà el cable al seu lloc.

Per adaptar-se als passacables i disposar d'espai suficient per muntar l'electrònica Sonoff i l'opto-aïllament, vaig despullar les costelles de muntatge del PCB intern tal com es mostra més amunt (imatge 2).

Tots els aparells electrònics es van muntar de manera segura mitjançant cargols CS de niló M3 per garantir l’aïllament de l’exterior del recinte. L'electrònica d'opto-aïllament que es munta amb 5 punts de fixació per garantir la força mecànica sonora en cas que es caigui la unitat, evitant així que la massa del transformador d'aïllament trenqui el circuit de la placa.

El subministrament a la unitat es va aconseguir mitjançant un cable estàndard aïllat de PVC de 3 nuclis, de color blanc, codificat per color, estàndard del Regne Unit. amb un OD de 7,2 mm capaç de transportar 10A.

La unitat es va connectar a la xarxa elèctrica del Regne Unit (240VAC RMS) mitjançant un endoll de seguretat estàndard de 3 pins (BS 1363 / A) aprovat. L’endoll es va fusionar a 5A.

Tots els cables de subministrament de xarxa al circuit d’opto-aïllament es van connectar mitjançant contactes pheonix MKDSN2, terminals de poliamida 5 / 3-5.08 de 16A a 400V capaços de portar un cable de CSA de 2,5 mm (sq), proporcionant així una àmplia capacitat per a dos cables a cada posició.

No es van conservar cables de xarxa, sinó que es van retorçar per evitar que els nuclis estenessin abans d’inserir-los al bloc de connectors. Estanyar els cables de xarxa és una pràctica perillosa, ja que la soldadura es relaxa amb el pas del temps, provocant la pèrdua del cable al bloc de connectors.

Nota:

  • OD = Diàmetre exterior.
  • VAC = Volts de corrent altern
  • RMS = quadrat mig de l'arrel
  • CSA = Àrea de secció transversal
  • CS = Counter Sunk

Pas 4: adaptador de programació Sonoff

Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff
Adaptador de programació Sonoff

Hi ha dos aspectes que cal tenir en compte a l’hora de tornar a programar el Sonoff 10A mitjançant l’IDE Arduino;

  1. Configuració del vostre IDE Arduino per programar l’ESP8266,
  2. El fet de programar el propi maquinari.

Configuració del vostre Arduino IDE per programar l’ESP8266

Per configurar el vostre Ardino IDE, seguiu les instruccions aquí Configuració de l'IDE Arduino per programar l'ESP8266-01

Programació del maquinari

Es tracta d’un procés de diversos passos, com en tots els casos amb l’ESP8266. Aquí, l’energia Sonoff s’aplica a la placa mitjançant un subministrament extern estabilitzat de 3v3 DC i NO des de la xarxa elèctrica. Es necessitarà un dispositiu USB a sèrie per enviar i rebre dades des i des del Sonoff. Connecteu TX i RX tal com es mostra a les fotos 2 i 4.

Passos de programació (general)

  1. Primer assegureu-vos que no hi ha cap alimentació de xarxa externa aplicada al Sonoff,
  2. Manteniu premut el botó del dispositiu Sonoff. (foto 1 anterior, botó de re-flaix marcat),
  3. Apliqueu un subministrament extern de CC 3v3 al pin 1. (imatge 2 anterior),
  4. Deixeu anar el botó Sonoff,
  5. Ara es pot reprogramar el dispositiu de la manera habitual mitjançant l’IDE Arduino.

Per fer les coses una mica més fàcils, he creat el dispositiu de programació de més amunt (imatges 3 i 4) que s’interfazava amb el Sonoff mitjançant el cable de cables SK1 … 3 (tal com es descriu en aquest pas instructiu 1.). Això va permetre una programació més fàcil de l'ESP8266. També va proporcionar un mitjà per provar GPIO14 com a entrada mitjançant l'ús de R1, una resistència de tracció 4K7 i el botó S1.

Utilitzant el dispositiu de programació de més amunt (imatges 3 i 4), els passos de programació són:

  1. Manteniu premut el botó de flaix de nou del Sonoff,
  2. Polseu el subministrament de 3v3 prement momentàniament S2,
  3. Deixeu anar el botó de tornar a flaixar,
  4. Ara es pot programar el dispositiu.

NOTA - AVÍS

En cap cas, l’alimentació s’ha de subministrar mitjançant xarxa durant l’activitat de reprogramació de Sonoff

Pas 5: Visió general del sistema de programari

Descripció general del sistema de programari
Descripció general del sistema de programari
Descripció general del sistema de programari
Descripció general del sistema de programari

Aquest dispositiu IoT Mains Controller en la seva major part conté els mateixos sis components de programari clau que al sensor de temperatura i humitat IoT WiFi instructable. Part: 8 IoT, domòtica i mostrat a la foto 1 anterior, amb certa personalització.

SPIFFS

Es tracta del sistema de fitxers flash SPI incorporat (actualitzat a 4 MB) i s’utilitza per contenir la informació següent (vegeu la imatge 2 anterior);

  • Icones i "Pàgina inicial de configuració del controlador de xarxa" html: servit pel dispositiu IoT quan no pot connectar-se a la vostra xarxa WiFi IoT (normalment a causa d'una informació de seguretat incorrecta) i proporciona a l'usuari un mitjà per configurar el controlador de xarxa de manera remota sense la necessitat de tornar a programar o penjar contingut SPIFFS nou.
  • Informació de seguretat: conté la informació que s’utilitza en engegar el dispositiu IoT per connectar-se a la vostra xarxa WiFi IoT i MQTT Broker. La informació enviada a través de la "Pàgina inicial de configuració del controlador de xarxa" s'escriu en aquest fitxer ("secvals.txt").

Nota: Per configurar inicialment el dispositiu, consulteu aquí els detalls complets sobre com utilitzar SPIFFS amb l'IDE Arduino.

Servidor mDNS

Aquesta funcionalitat s’invoca quan el dispositiu IoT no ha pogut connectar-se a la vostra xarxa WiFi com a estació WiFi i, en canvi, s’ha convertit en un punt d’accés WiFi similar a un enrutador WiFi domèstic. En el cas d’un enrutador d’aquest tipus, normalment us hi connectareu introduint l’adreça IP d’alguna cosa com 192.168.1.1 (generalment impresa en una etiqueta col·locada al quadre) directament a la barra d’URL del navegador, amb la qual cosa rebreu una pàgina d’inici de sessió per entrar el nom d’usuari i la contrasenya que us permetran configurar el dispositiu. Per a l’ESP8266 en mode AP (mode de punt d’accés), el dispositiu adopta per defecte l’adreça IP 192.168.4.1, però, amb el servidor mDNS en execució, només haureu d’introduir el nom fàcil d’ésser humà “MAINSCON.local” a la barra d’URL del navegador "Pàgina inicial de configuració del controlador de xarxa".

Client MQTT

El client MQTT proporciona totes les funcionalitats necessàries per a; connecteu-vos al vostre corredor MQTT de la vostra xarxa IoT, subscriviu-vos als temes que escolliu i publiqueu càrregues útils a un tema determinat. En resum, subministra la funcionalitat bàsica de l'IoT.

Servidor web

Com s'ha esmentat anteriorment, si el dispositiu IoT no pot connectar-se a la xarxa WiFi el SSID, P / W, etc. del qual es defineix al fitxer d'informació de seguretat que es troba a SPIFFS, el dispositiu es convertirà en un punt d'accés. Un cop connectat a la xarxa WiFi proporcionada pel punt d'accés, la presència d'un servidor web HTTP us permet connectar-vos directament al dispositiu i canviar-ne la configuració mitjançant l'ús d'un navegador web HTTP. El propòsit és servir la configuració del controlador de xarxa. Pàgina web de la pàgina d'inici, que també es troba a SPIFFS.

Estació WiFi

Aquesta funcionalitat proporciona al dispositiu IoT la possibilitat de connectar-se a una xarxa WiFi domèstica mitjançant els paràmetres del fitxer d’informació de seguretat, sense la qual cosa el vostre dispositiu IoT no podrà subscriure / publicar al corredor MQTT.

Punt d'accés WiFi

La possibilitat de convertir-se en un punt d’accés WiFi és un mitjà pel qual el dispositiu IoT us permet connectar-vos-hi i fer canvis de configuració mitjançant una estació WiFi i un navegador (com ara Safari a l’iPad d’Apple). Aquest punt d'accés emet un SSID = "MAINSCON" + els últims 6 dígits de l'adreça MAC del dispositiu IoT. La contrasenya d’aquesta xarxa tancada s’anomena imaginativament "CONTRASENYA".

Pas 6: Visió general del programari

Descripció general del programari
Descripció general del programari
Descripció general del programari
Descripció general del programari
Descripció general del programari
Descripció general del programari
Descripció general del programari
Descripció general del programari

Preàmbul Per compilar amb èxit aquest codi font, necessitareu les següents biblioteques addicionals;

PubSubClient.h

  • Per: Nick O'Leary
  • Finalitat: permet al dispositiu publicar o subscriure's a temes de MQTT amb un corredor determinat
  • De:

Rebot2.h

  • Per: Thomas O Fredericks
  • Finalitat: Interruptor d'entrada de rebot al programari
  • De:

Visió general del codi

El programari fa servir la màquina d’estats tal com es mostra a la imatge 1 anterior (còpia completa de la font que es mostra a continuació). Hi ha 5 estats principals de la següent manera;

  • INIT

    Aquest estat d'inicialització és el primer estat introduït després de l'engegada

  • NOCONFIG

    Aquest estat s'introdueix si després de l'engegada es detecta un fitxer secvals.txt no vàlid o que falta

  • PENDENT NO

    Aquest estat és transitori, s’introdueix mentre no existeix cap connexió de xarxa WiFi

  • MQTT PENDENT

    Aquest estat és transitori, s'introdueix després que s'hagi establert una connexió de xarxa WiFi i, tot i que no existeixi cap connexió amb un intermediari MQTT en aquesta xarxa

  • ACTIU

    Aquest és l'estat operatiu normal introduït un cop s'ha establert una connexió de xarxa WiFi i una connexió MQTT Broker. És durant aquest estat que el controlador de xarxa publicarà al corredor MQTT i rebrà ordres mitjançant temes subscrits

Els esdeveniments que controlen les transicions entre estats es descriuen a la foto 1 anterior. Les transicions entre estats també es regeixen pels següents paràmetres de SecVals;

  • 1a adreça IP del corredor MQTT. En forma decimal amb punts AAA. BBB. CCC. DDD
  • 2n port de corredor MQTT. En forma de enter.
  • Intenta fer la tercera connexió MQTT Broker abans de passar del mode STA al mode AP. En forma de enter.
  • 4t SSID de xarxa WiFi. En text lliure.
  • 5a contrasenya de xarxa WiFi. En text lliure.

Com s'ha esmentat anteriorment, si el dispositiu IoT no pot connectar-se com a estació WiFi a la xarxa WiFi que té SSID i P / W es defineix a secvals.txt que es troba a SPIFFS, el dispositiu es convertirà en un punt d'accés. Un cop connectat a aquest punt d'accés, es mostrarà la "Pàgina inicial de configuració del controlador de xarxa", tal com es mostra a la imatge 2 (introduint "MAINSCON.local" o 192.168.4.1 a la barra d'adreces URL del navegador). Aquesta pàgina inicial permet reconfigurar el controlador de xarxa mitjançant un navegador

Convenció de noms de temes MQTT

A la imatge 3 es descriu la convenció de noms que s’utilitza per als temes de l’MQTT i és coherent amb el patró utilitzat en el meu anterior instructable (aquí pas 5).

Temes MQTT utilitzats per aquest dispositiu IoT

Per a més claredat, he documentat (foto 4) els temes i les seqüències de missatges associades que publica / subscriu aquest dispositiu. La imatge també representa la interacció amb el botó de control blanc a l'exterior del recinte (encara que irònicament el botó es mostra en vermell).

Accés de configuració remota mentre es troba en estat ACTIU

Un cop connectat a MQTT Broker, és possible reconfigurar remotament els paràmetres de seguretat del dispositiu mitjançant publicacions temàtiques de MQTT. El fitxer associat secvals.txt només té accés d’escriptura exposat.

Depuració d'usuaris

Durant la seqüència d’arrencada, el led del dispositiu Sonoff proporciona la següent retroalimentació de depuració, tot i que s’ha de tenir en compte, per veure-ho, haureu de treure la tapa i exposar el circuit, de manera que només és recomanable fer-ho mentre desenvolupeu el codi i engegueu el dispositiu. amb un subministrament de 3v3;

  • 1 Flash curt: no hi ha cap fitxer de configuració a SPIFFS (secvals.txt),
  • 2 parpelleigs curts: el dispositiu IoT intenta connectar-se a la xarxa WiFi,
  • Il·luminació contínua: el dispositiu Sonoff IoT intenta connectar-se a MQTT Broker,
  • Desactivat: el dispositiu està actiu i està connectat a MQTT Broker.

Nota 1: La "Pàgina inicial de configuració del controlador de xarxa" no utilitza sòcols segurs i, per tant, depèn de la seguretat de la vostra xarxa.

Nota 2: Per programar diversos dispositius IoT, la cadena MQTT necessitarà editar-la abans de descarregar-la a cada dispositiu. Això es deu al fet que el número d'identificació del controlador de xarxa s'ha incrustat a la cadena de tema MQTT. és a dir. al programari publicat vaig triar el valor de 100: 'WFD / MainsCont / 100 / Relay / Command / 1' i per als meus 2 dispositius estan numerats 1 i 2 respectivament.

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

Nota 3: per completar-lo quan es troba en estat ACTIU, el programari IoT permet controlar el LED de Sonoff i publicar l’estat del botó de re-flash. Tot i que només tenen valor durant el procés de depuració, ja que cap dels dos està exposat a l'usuari durant el funcionament normal.

Pas 7: Configuració OpenHAB

Configuració OpenHAB
Configuració OpenHAB
Configuració OpenHAB
Configuració OpenHAB
Configuració OpenHAB
Configuració OpenHAB

A efectes de proves, vaig decidir desplegar conceptualment els dos controladors de xarxa a la "sala d'estar" de casa meva. Es pot accedir a aquesta pàgina d’OpenHAB a través de la pàgina principal del lloc com a la foto 1.

He modificat la configuració OpenHAB.sitemap donada al meu anterior Instructable (aquí) i he afegit entrades individuals per a "Mains Controller 1" i "Mains Controller 2" (foto 2 anterior). També he afegit entrades (Living Room Mains Cont. 1 & 2) per mostrar les tendències RSSI mesurades al receptor dels dos nous dispositius IoT (foto 3).

Finalment, he afegit entrades als fitxers.rules i.items per permetre la sincronització d'estats dinàmics del Sonoff i l'actualització / animació del meu mal intent de fer un canvi gràfic (el commutador es tanca quan està actiu i s'obre quan està inactiu). La imatge 2 mostra un exemple de MC1 actiu i MC2 inactiu.

Nota 1: Si no esteu segur de com utilitzar OpenHAB, consulteu aquí "Configuració i configuració d'OpenHAB. Part 6: IoT, domòtica"

Nota 2: Es proporciona una còpia del mapa del lloc modificat, fitxers de regles i elements, icones, etc. al fitxer zip següent.

Nota 3: RSSI = Indicació de força del senyal rebuda. Aquesta és una mesura de la forma en què el dispositiu IoT pot veure la vostra xarxa WiFi.

Pas 8: proveu el dispositiu IoT

Image
Image
Prova del dispositiu IoT
Prova del dispositiu IoT

Tal com es descriu a Sensor de temperatura i humitat IoT WiFi instructable. Part: 8 IoT, domòtica Pas 7, la prova inicial del dispositiu IoT es va executar a través d’una connexió MQTT mitjançant MQTT Spy (com al diagrama de blocs del sistema a la foto 1 anterior), monitorització de la sortida del led, entrades de botons (ambdós botons de el botó extern blanc) i depurar el trànsit a la interfície sèrie. Això em va permetre exercir tots els temes subscrits disponibles i comprovar les respostes publicades. Tot i que, de nou, es va dur a terme manualment i va costar molt de temps, tot i que va permetre la cobertura del 100% de missatges / publicacions temàtiques.

Com que la màquina principal d’estat del programari (pas 6 anterior) es va heretar de l’anterior Instructable (part: 8), a part de comprovació del seny que el programari es pogués connectar al WiFi N / W i al corredor MQTT, es va suposar que funcionava correctament.

Tot seguit, es van completar les proves de nivell complet del sistema mitjançant el controlador de xarxa i la infraestructura IoT (de nou foto 1), aquesta vegada mitjançant OpenHAB per controlar la interacció amb el dispositiu IoT. El maquinari IoT i la configuració de càrrega fictícia es poden veure a la foto 2 anterior.

El vídeo proporciona detalls complets de les proves del sistema i mostra clarament la sincronització que es manté entre dispositius OpenHAB (PC / Chrome i iPad / OpenHAB APP) en temps real. També mostra missatgeria en directe als controladors de xarxa mitjançant MQTTSpy (vegeu aquí per obtenir més detalls Configuració d’un corredor MQTT. Part 2: IoT, domòtica) i registre de sistema de codi OpenHAB des del servidor raspberry pi a través d’una connexió PuTTY SSH (consulteu aquí per obtenir més informació) detalls Configuració i configuració d'OpenHAB. Part 6: IoT, domòtica).

Nota: El trànsit de depuració es va compilar per a la versió final del programari.

Pas 9: Conclusió

General

El projecte va ser relativament fàcil de completar i va funcionar bé. El programari incrustat era senzill de produir, ja que era una versió reduïda del codi utilitzat per als sensors de temperatura i humitat de la part 8 d’aquesta sèrie.

Inicialment tenia la intenció d’adquirir només components blancs exclusivament per la seva qualitat estètica. Ho he aconseguit en tots, excepte el botó de control, intenta el que he pogut, no he pogut obtenir un botó blanc completament bo / barat.

Dispositiu Sonoff 10A

A continuació he enumerat allò que em semblava un avantatge i un contrari raonables del dispositiu Sonoff

Pros

  • Barat.
  • Bon suport comunitari.
  • Es pot tornar a programar mitjançant l'IDE Arduino.

Contres

  • Recinte fràgil.
  • E / S mínima (proporcionada a connectors utilitzables).
  • Fa calor en estat de repòs.
  • Només té 1 MB de flash SPI incorporat.
  • És un PITA per reprogramar un cop connectat al seu lloc.
  • En integrar un nou codi a la prova de Sonoff, el tancament del relé era problemàtic, ja que el relé és de 5v i el subministrament aplicat al Sonoff per a la programació és de 3v3. L’activació del relé només és perceptible per a l’oïda.

Preocupacions

  • No canvia la línia neutral. Utilitza un relé SPST.
  • No està fusionat.
  • Escassa tensió del cable.
  • El PCB no està fixat dins del recinte de Sonoff.

Comenteu el disseny d'enginyeria

Tenint en compte que aquest dispositiu IoT s’havia d’utilitzar per canviar la xarxa elèctrica en viu del Regne Unit (240VAC RMS), vaig seguir tant les bones pràctiques de disseny mecànic com elèctric i vaig assegurar que es minimitzava el risc de xoc en no exposar cap material elèctricament conductor, més d’especificar tots els components, càrrega de sortida, aplicant protecció contra fusibles tant al controlador de xarxa com al subsistema optoacoblat, la inclusió d’una bona presa de terra ininterrompuda i l’ús d’un aïllament òptic / galvànic.

Possible millora

Amb retrospectiva, hauria estat útil incloure una indicació visual que la sortida del controlador de xarxa estava activa (LED o Neon). Tot i que no és un problema en l’ús quotidià, donat que és pràctica habitual aïllar la càrrega del subministrament abans de realitzar qualsevol manteniment, o bé amb una simple pulsació del botó de control local es commutarà la sortida en el cas que una llum es pugui il·luminar quan estigui endollada.

Nota final

Si voleu veure dos exemples molt deficients d’energia elèctrica, consulteu els enllaços següents. Els seus premis Darwin es publicaran ben aviat, estic ben segur;

  • Cordó d’extensió Mad Scientist
  • Opinió de la comunitat 03: preocupacions de seguretat elèctrica.

Pas 10: referències utilitzades

He utilitzat les fonts següents per combinar aquest instructable;

PubSubClient.h

  • Per: Nick O'Leary
  • Finalitat: permet al dispositiu publicar o subscriure's a temes de MQTT amb un corredor determinat
  • De:

Rebot2.h

  • Per: Thomas O Fredericks
  • Finalitat: Interruptor d'entrada de rebot al programari
  • De:

SPIFFS

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

Actualització del flaix Sonoff

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

Diagrama del circuit de Sonoff

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

Mòdul USB UART (també conegut com a 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

Premis Darwin (relleu lleuger)

https://www.darwinawards.com/

Full de dades TIL111 Optoaïllador

Recomanat: