SONOFF: un interruptor remot per apagar o encendre aparells

sonoff

T'imagines apagar o encendre alguna cosa a distància? Pots encendre la calefacció, o apagar-la si te l'has deixat encesa per un descuit, també podràs obrir o tancar persianes si les tens automàtiques, o fer que la teva casa estigui a una temperatura adequada operant sobre l'aire condicionat des de qualsevol lloc. Doncs per això pot servir una SONOFF.

Per exemple, un dels que pots trobar al mercat és el Itead Sonoff. Es tracta d'un dispositiu que es basa en el mòdul ESP8266, que segur et sonarà si ets un maker i creguis projectes DIY amb Arduino. Es tracta d'un mòdul WiFi molt popular a què ja vam dedicar un article especial a Hwlibre. A aquest mòdul li han afegit un relé per actuar sobre els aparells connectats i així poder apagar o encendre coses per WiFi.

Què és un sonoff?

Un Sonoff és un interruptor intel·ligent WiFi per poder encendre i apagar remotament un aparell elèctric. Aquest dispositiu permet estar connectat a Internet a través d'un router WiFi a la teva llar o oficina. Des de qualsevol dispositiu connectat a la xarxa i en qualsevol lloc, podràs interactuar amb ell per controlar els teus aparells.

Molts sonoffs comercials tenen seva pròpia app per Android o iOS que permeten el control de forma senzilla. Per exemple, el Sonoff Basic té l'app eWeLink. A més, en moltes d'aquestes apps permeten també configurar temporitzadors perquè s'activin a una hora concreta. Per exemple, això permet que ara en vacances que estaràs fora de casa puguis programar perquè s'encengui i apagui la ràdio o s'aixequin les persianes i d'aparença que la casa està ocupada per evitar robatoris ...

A més, alguns Sonoffs comercials implementen funcions perquè els puguis connectar a sensors i que els aparells s'encenguin o apaguin en funció de la temperatura, so, sensor de presència, humitat, etc. Això pot ser útil per a un sistema de reg d'un jardí, per climatitzar la casa de forma adequada, etc. Fins i tot alguns models pensats per a cases domotitzades tenen compatibilitat amb Amazon Alexa / Echo, Google Home, etc.

altres complements

A més de l'sonoff, existeixen altres aparells que et poden interessar com a complement, com endolls WiFi, casquets de bombeta WiFi, interruptors WiFi, passarel·la WiFi-RF, estació SC-WiFi, etc., que són complements perfectes per a la teva relé WiFi o sonoff.

Fes el teu propi Sonoff amb Arduino i un mòdul ESP8266 (Fàcil)

Tot i ser un dispositiu molt simple i barat, pot ser que no sempre t'interessi comprar un. Si ets un maker i t'agrada crear els teus propis projectes DIY, en comptes de comprar l'sonoff comercial, pots crear-lo tu mateix. Això passaria per usar un mòdul relé per Arduino i un mòdul WiFi. D'aquesta manera tindràs el teu projecte connectat i llest per operar sobre el relé que s'encarregarà d'interrompre o connectar l'aparell d'alta tensió.

Una altra possibilitat és hackejar XNUMX Sonoff ja fet per aportar noves funcionalitats. Per a això, la millor opció que tens és el Itead Sonoff. Per exemple, el No s'ha trobat cap producte., Un dispositiu d'una empresa xinesa orientada a makers. El dispositiu està molt ben documentat i per això permet ser hacker de forma senzilla per modificar-lo i adaptar-lo a les teves projectes. A l'basar-se en un ESP8266 tot serà més fàcil, i inclou la seva pròpia app de control per a dispositius mòbils.

Crear un Sonoff simple amb Arduino

Potser et sigui més senzill crear el teu propi Sonoff amb Arduino de modificar el firmware de l'Itead. Utilitza el Itead i altres dispositius ja fets és molt simple, però de només usar-los a modificar la seva firmware hi ha una gran diferència. Així que potser t'interessi una forma senzilla de tenir un Sonoff creat per tu.

Què necessites?

Tot el que necessites per aquest projecte és:

  • Arduino UNO, O també valdria una altra placa.
  • Protoboard o placa PCB si soldaràs.
  • mòdul ESP8266
  • mòdul relé
  • Cablejat per a les connexions
  • PC amb Arduino IDE i cable per a programacion
  • Aparell elèctric que vols gestionar per WiFi

Construcció pas a pas

Arduino connexió amb ESP8266 i Relé

Per començar a construir el teu Sonoff casolà segueix aquesta guia pas a pas:

  1. Un cop tinguis tots els elements, has connectar l'esquema adequadament com apareix en la imatge. Recorda que on he posat «Aparell» és on anirà connectat el que vulguis controlar: estufa, ventilador, TV, bombeta, ... i l'endoll ha de alimentar aquest aparell. Com veus, el que es fa és interrompre un dels fils conductors que van a l'aparell i interposar el relé perquè actuï com a interruptor. Si tens dubtes de la connexió pots consultar els nostres manuals:
    1. Com connectar ESP8266 a Arduino?
    2. Com fer servir el relé amb Arduino?
  2. Ara el següent és programar a Arduino IDE per aconseguir que funcioni correctament. Si ets principiant també pots descarregar el PDF del nostre manual de programació per a Arduino. Un exemple senzill de codi per controlar el relé i els LEDs vermell, verd i blau seria:
#include <SoftwareSerial.h>

#define DEBUG true

SoftwareSerial esp8266(2,3); 
void setup()
{
  SSSerial.begin(19200);
  esp8266.begin(19200);
  
  pinMode(10,OUTPUT);
  digitalWrite(10,LOW);
  
  pinMode(11,OUTPUT);
  digitalWrite(11,LOW);
  
  pinMode(12,OUTPUT);
  digitalWrite(12,LOW);
  
  pinMode(13,OUTPUT);
  digitalWrite(13,LOW);
   
  sendData("AT+RSTrn",2000,DEBUG); 
  sendData("AT+CWMODE=2rn",1000,DEBUG); 
  sendData("AT+CIFSRrn",1000,DEBUG); 
  sendData("AT+CIPMUX=1rn",1000,DEBUG);
  sendData("AT+CIPSERVER=1,80rn",1000,DEBUG); 
}

void loop()
{
  if(esp8266.available())
  {

    
    if(esp8266.find("+IPD,"))
    {
     delay(1000); 
     int connectionId = esp8266.read()-48; 
          
     esp8266.find("pin="); 
     
     int pinNumber = (esp8266.read()-48)*10;
     pinNumber += (esp8266.read()-48);
     
     digitalWrite(pinNumber, !digitalRead(pinNumber));  
     
     String closeCommand = "AT+CIPCLOSE="; 
     closeCommand+=connectionId;
     closeCommand+="rn";
     
     sendData(closeCommand,1000,DEBUG); 
    }
  }
}
String sendData(String command, const int timeout, boolean debug)
{
    String response = "";
    
    esp8266.print(command); 
    
    long int time = millis();
    
    while( (time+timeout) > millis())
    {
      while(esp8266.available())
      {
        
        char c = esp8266.read(); 
        response+=c;
      }  
    }
    
    if(debug)
    {
      Serial.print(response);
    }
    
    return response;
}

Un cop introduït en Arduino IDE i programat a través del port sèrie, tot hauria de funcionar. Encara pots utilitzar el monitor sèrie, el més adequat seria que creus una interfície web més senzilla o una petita app per iOS o Android. En el cas de l' codi HTML és més fàcil i seria una cosa així, d'aquesta manera, des del teu navegador podries gestionar l'encesa o apagat dels LEDs i de l'aparell connectat a el relé:

<html>
<head>
<title>Control con Sonoff</title>
</head>
<body>
<button id="10" class="led">A</button>
<button id="11" class="led">LED AZUL</button>
<button id="12" class="led">LED VERDE</button>
<button id="13" class="led">LED ROJO</button>
<script src="jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function(){
$(".led").click(function(){ var p =
$(this).attr('id');
$.get("http://XXX.XXX.X.X:80/", {pin:p});
});
});
</script>
</body>
</html>

Pots escriure-ho en qualsevol editor de text, i guarda'l amb el nom control.html. Recorda que perquè funcioni bé, has de substituir http: //XXX.XXX.XX: 80 per la IP adequada en el teu cas, És a dir, la que se li hagi assignat a l'ESP8266 dins de la teva xarxa WiFi ... D'altra banda, si vols substituir l'etiqueta A d'aparell pel nom de l'aparell que estàs fent servir i que així sigui més intuïtiu, sentir-se lliure de fer-ho ...

Control interfície web

Ara, si obres aquest control.html amb qualsevol navegador web podràs gestionar el teu Sonoff. Fent clic sobre els botons veuràs com actua la teva circuit.

Modificar el firmware de l'Sonoff (Avançat)

Una altra operació que pots fer, encara que no és recomanable per a la majoria d'usuaris per la seva complexitat, és modificar el firmware de l'sonoff de Itead. És possible, però implica molts passos i és complicat si no saps realment el que fas. Perquè et facis una idea et deixo el que necessitaries i els passos essencials, així com enllaços per al firmware i guies completes per si t'animes després de llegir els passos essencials ...

usant Espurna

Què necessites?

Per utilitzar el Itead Sonoff i programar-lo, necessitareu els següents elements:

  • Itead Sonoff WiFi Basic
  • Adaptador i cable FTDI o TTL (USB / Pines sèrie)
  • tornavís
  • Altres elements necessaris per al teu projecte
  • Un ordinador per a la programació

Modificar el firmware Itead Sonoff WiFi Basic (Passos bàsics)

Itead sonoff circuit

Per modificar el Sonoff de Itead has d'adquirir un i seguir els següents passos:

Abans de manipular el dispositiu, assegura't que és en línia. No és recomanable manipular el relé o circuit quan està connectat a la xarxa, ja que estaràs treballant amb AC a 220v i no es tracta d'un inofensiu circuit de CC que treballa a voltatges baixos ...

  1. Retirar la tapa de plàstic de l'Sonoff per poder accedir a l'circuit intern. Pots utilitzar un tornavís per retirar les tapes laterals primer i després fer palanca a la junta que uneix les dues parts de la carcassa principal fins que puguis extreure-la.
  2. Si et fixes en el circuit que tens davant es poden diferenciar molt bé les parts de la lliçó ESP8266:
    1. Les elements elèctrics que hi ha al voltant de l'relé són de el convertidor d'AC / DC.
    2. El component negre quadrat és el relé que treballa a 5v (part de control) i 220v (sortida).
    3. Al centre tens uns pins de connexió sèrie. Pots usar-los per programar el microcontrolador o per connectar més elements. Al GPIO14 pots connectar actuadors o sensors.
    4. També veuràs un polsador al costat dels pins. Pots prémer per canviar les maneres que pots configurar.
    5. El LED que indica el funcionament i la manera o estat en què es troba.
    6. I dos connectors verds en cada extrem de l'PBC. Una d'elles és una entrada i una altra una sortida. La més propera a l'relé és l'entrada AC, és a dir, on es connecta el dispositiu a la xarxa elèctrica. L'altre és la sortida on pots connectar l'aparell que vols apagar o encendre. Recorda que admet fins a 10A, és a dir, un consum de 2,2Kw per 220v.
  3. Ara treballaràs amb els pins de connexió per carregar el teu programa. per a ella necessitaràs el FTDI o TTL, Permetent connectar aquests pins a un USB del teu ordinador. Però més enllà de connectar-ho, has de recordar que el microcontrolador integrat té dos modes de funcionament, una manera UART i un altre FLASH. La manera UART et permet carregar el programa i el FLASH executar-lo. Per passar a la manera UART per poder escriure el programa necessites posar els pins GPIO0 (LOW) i GPIO2 (HIGH) en uns estats determinats. La càrrega de el programa es farà pels pins marcats com RX i TX. Per descomptat hauràs de fer servir també els pins de alimetnación 3v3 i GND, així com el de l'polsador GPIO0, el LED o GPIO13 i el relé al GPIO12.
  4. Un cop has fet la connexió de forma adequada i tens el teu cable USB per connectar-lo a l'ordinador, podràs començar amb la programació en si. Recorda que a l' FTDI has de creuar les connexions RX i TX, És a dir, el RX de l'Itead a l'TX de l'FTDI i viceversa.
  5. Després, seria qüestió d'usar IDE Arduino per crear el codi necessari per al control que vulguis fer (has de seleccionar la placa ESP8266 com a dispositiu microcontrolador a gravar). Et pot ajudar també el firmware desenvolupat per Xose Pérez. Es diu Espurna i és específic per a Sonoff WiFi. Amb el seu panell de control podràs controlar paràmetres de xarxa i seguretat.
  6. A al final, quan ja ho tinguis, pots tornar els pins GPIO0 i GPIO2 a estats High High respectivament perquè torni a manera FLASH i executi el teu programa.
  7. Un cop finalitzat, ja pots realitzar les connexions adequades al teu Sonoff per connectar els aparells que vulguis i donar-los alimentació. Des de la app podràs controlar-ho tot ...

Més informació - programació fàcil

usant Tasmota

Per fer-ho amb Tasmota en comptes de Espurna, els passos genèrics per fer-ho serien:

  1. Primer has de obrir la carcassa de l'Itead Sonoff com en el cas anterior.
  2. Després hauries soldar el cablejat o els pins per poder realitzar les connexions d'alimentació i l'adaptador USB a UART TTL.
  3. Vés a Arduino IDE i en Tools has de seleccionar la placa ESP8266 en comptes de Arduino UNO o la que tinguis per defecte. Instal la nova placa.
  4. Ara descàrrega Tasmota i instal·la de forma adequada per a integrar-la amb Arduino IDE.
  5. Ara és el moment de programar i configurar el teu projecte com vulguis i gravar-ho en la placa ... Un cop acabis ja pots connectar els components a l'sonoff com en el cas de l'Espurna.

Més informació - Domotica a casa