SONOFF: zdalny przełącznik do włączania i wyłączania urządzeń

Sonoff

Wyobrażasz sobie włączyć lub wyłączyć coś zdalnie? Możesz włączyć ogrzewanie lub wyłączyć je, jeśli przez pomyłkę zostawiłeś włączone, możesz również otworzyć lub zamknąć rolety, jeśli masz automatyczne, lub ustawić w domu odpowiednią temperaturę, uruchamiając klimatyzację z dowolnego miejsca. Cóż, to jest SONOFF.

Na przykład jeden z plików można znaleźć na rynku Itead Sonoff. Jest to urządzenie oparte na module ESP8266, które z pewnością zabrzmi znajomo, jeśli jesteś twórcą i tworzysz projekty DIY z Arduino. To bardzo popularny moduł WiFi, do którego już przeznaczyliśmy artykuł specjalny w Hwlibre. Do tego moduł dodał przekaźnik działać na podłączonych urządzeniach, a tym samym mieć możliwość wyłączania lub włączania rzeczy przez Wi-Fi.

Co to jest sonoff?

Un Sonoff to inteligentny przełącznik WiFi aby móc zdalnie włączać i wyłączać urządzenie elektryczne. To urządzenie umożliwia połączenie z Internetem za pośrednictwem routera WiFi w domu lub w biurze. Z dowolnego urządzenia podłączonego do sieci i dowolnego miejsca możesz wchodzić z nim w interakcję, aby sterować swoimi urządzeniami.

Wiele komercyjnych sonoffów ma własną aplikację na Androida lub iOS które pozwalają na łatwą kontrolę. Na przykład Sonoff Basic ma aplikację eWeLink. Ponadto w wielu z tych aplikacji pozwalają one również skonfigurować timery, aby były aktywowane w określonym czasie. Na przykład to pozwala na to, że teraz na wakacjach, kiedy będziesz poza domem, możesz zaprogramować, aby radio było włączane i wyłączane lub rolety były podniesione i wyglądało, że dom jest zajęty, aby uniknąć kradzieży ...

Dodatkowo niektóre komercyjne implementacje Sonoffów funkcje, dzięki czemu można je podłączyć do czujników oraz czy urządzenia włączają się lub wyłączają w zależności od temperatury, dźwięku, czujnika obecności, wilgotności itp. Może to być przydatne w przypadku systemu nawadniania ogrodu, odpowiedniej klimatyzacji domu itp. Nawet niektóre modele zaprojektowane dla domotyzowanych domów są kompatybilne z Amazon Alexa / Echo, Google Home itp.

Inne dodatki

Oprócz sonoffa, istnieją inne urządzenia które mogą Cię zainteresować jako uzupełnienie, takie jak gniazda WiFi, gniazda żarówek WiFi, przełączniki WiFi, bramka WiFi-RF, stacja SC-WiFi itp., które są idealnym uzupełnieniem Twojego przekaźnika WiFi lub sonoffa.

Stwórz własny Sonoff za pomocą Arduino i modułu ESP8266 (łatwe)

Pomimo tego, że jest to bardzo proste i tanie urządzenie, nie zawsze możesz być zainteresowany jego zakupem. Jeśli jesteś twórcą i lubisz tworzyć własne projekty DIY, zamiast kupować komercyjny sonoff, możesz to stworzyć samodzielnie. Stałoby się to przy użyciu modułu przekaźnikowego dla Arduino i modułu WiFi. W ten sposób projekt będzie podłączony i gotowy do pracy z przekaźnikiem, który będzie odpowiedzialny za przerywanie lub podłączanie urządzenia wysokiego napięcia.

Inna możliwość to zhakować Sonoffa już zrobione, aby wprowadzić nowe funkcje. W tym celu najlepszą opcją jest itead sonoff. Na przykład Nie znaleziono produktów, urządzenie chińskiej firmy zorientowanej na producenta. Urządzenie jest bardzo dobrze udokumentowane, dlatego można je łatwo zhakować, aby je zmodyfikować i dostosować do swoich projektów. Bazując na ESP8266, wszystko będzie łatwiejsze i zawiera własną aplikację sterującą dla urządzeń mobilnych.

Utwórz prosty Sonoff z Arduino

Może będzie ci łatwiej stwórz swój własny Sonoff z Arduino trzeba zmodyfikować oprogramowanie sprzętowe Itead. Korzystanie z Itead i innych gotowych urządzeń jest bardzo proste, ale od samego ich używania do modyfikowania ich oprogramowania układowego jest duża różnica. Więc może jesteś zainteresowany prostym sposobem na stworzenie Sonoffa przez siebie.

Czego potrzebujesz

wszystko czego potrzebujesz dla tego projektu jest to:

  • Arduino UNOlub też byłby wart innego talerza.
  • Płytka prototypowa lub PCB, jeśli zamierzasz lutować.
  • Moduł ESP8266
  • Moduł przekaźnika
  • Okablowanie do połączeń
  • Komputer PC z Arduino IDE i kablem do programowania
  • Urządzenie elektryczne, którym chcesz sterować przez WiFi

Budowa krok po kroku

Połączenie Arduino z ESP8266 i przekaźnikiem

Na początek zbuduj swój domowy Sonoff postępuj zgodnie z tym przewodnik krok po kroku:

  1. Gdy masz już wszystkie elementy, musisz prawidłowo podłączyć schemat jak widać na zdjęciu. Pamiętaj, że w miejscu, w którym umieściłem „Urządzenie”, jest miejsce, gdzie będzie podłączone to, czym chcesz sterować: piec, wentylator, telewizor, żarówka, ... a wtyczka musi zasilać wspomniane urządzenie. Jak widać, należy przerwać jeden z przewodów przewodzących, które trafiają do urządzenia i wstawić przekaźnik, aby działał jako przełącznik. Jeśli masz pytania dotyczące połączenia, zapoznaj się z naszymi instrukcjami:
    1. Jak podłączyć ESP8266 do Arduino?
    2. Jak używać przekaźnika z Arduino?
  2. Teraz jest następujący program w Arduino IDE aby działał poprawnie. Jeśli jesteś początkującym, możesz też pobierz plik PDF naszego podręcznika programowania dla Arduino. Prosty przykład kodu do sterowania przekaźnikiem i czerwonymi, zielonymi i niebieskimi diodami LED to:
#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;
}

Po wejściu do Arduino IDE i zaprogramowaniu przez port szeregowy wszystko powinno działać poprawnie. Chociaż możesz użyć monitora szeregowego, byłoby dobrze, gdybyś utworzył prostszy interfejs internetowy lub małą aplikację na iOS lub Androida. W przypadku Kod HTML Jest łatwiej i byłoby coś takiego, w ten sposób z przeglądarki można by zarządzać włączaniem lub wyłączaniem diod LED i urządzeniem podłączonym do przekaźnika:

<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>

Możesz napisać go w dowolnym edytorze tekstu i zapisać pod nazwą kontrola.html. Pamiętaj, że aby działało dobrze, musisz zamienić http: //XXX.XXX.XX: 80 na odpowiedni adres IP w Twoim przypadkuczyli ten przypisany do ESP8266 w Twojej sieci WiFi ... Z drugiej strony, jeśli chcesz zamienić etykietę urządzenia A na nazwę używanego urządzenia i uczynić ją bardziej intuicyjną, nie krępuj się ...

Kontrola interfejsu internetowego

Teraz, jeśli otworzysz ten plik control.html za pomocą każda przeglądarka internetowa może obsłużyć Twój Sonoff. Klikając przyciski, zobaczysz, jak działa twój obwód.

Zmodyfikuj oprogramowanie Sonoff (zaawansowane)

Inną operacją, którą możesz wykonać, chociaż nie jest to zalecane dla większości użytkowników ze względu na swoją złożoność, jest zmodyfikowanie pliku Oprogramowanie układowe Itead Sonoff. Jest to możliwe, ale składa się z wielu kroków i jest skomplikowane, jeśli tak naprawdę nie wiesz, co robisz. Aby dać ci pomysł, zostawiam ci to, czego potrzebujesz i niezbędne kroki, a także linki do oprogramowania układowego i kompletne przewodniki, jeśli odważysz się po przeczytaniu podstawowych kroków ...

Korzystanie z ESPurna

Czego potrzebujesz

Aby korzystać z Itead Sonoff i go zaprogramować, będziesz potrzebować następujących elementów:

  • Itead Sonoff Wi-Fi podstawowa
  • Adapter i kabel FTDI lub TTL (piny USB / szeregowe)
  • Śrubokręt
  • Inne elementy niezbędne do Twojego projektu
  • Komputer do programowania

Modyfikacja oprogramowania sprzętowego Itead Sonoff WiFi Basic (podstawowe kroki)

Obwód Sonoff Itead

Aby zmodyfikować Itead Sonoff, musisz kupić jeden i wykonaj kolejne kroki:

Przed przystąpieniem do obsługi urządzenia upewnij się, że jest odłączone. Nie zaleca się manipulowania przekaźnikiem lub obwodem, gdy jest on podłączony do sieci, ponieważ będziesz pracować z prądem przemiennym przy 220 V i nie jest to nieszkodliwy obwód prądu stałego, który działa przy niskim napięciu ...

  1. Zdejmij plastikową nasadkę z Sonoff aby mieć dostęp do obwodu wewnętrznego. Możesz użyć śrubokręta, aby najpierw zdjąć boczne osłony, a następnie podważyć złącze, które łączy dwie części głównej obudowy, aż będzie można je usunąć.
  2. Jeśli spojrzysz na obwód przed sobą, można je bardzo dobrze rozróżnić części modułu ESP8266:
    1. Elementy elektryczne wokół przekaźnika pochodzą z przetwornika AC / DC.
    2. Kwadratowy czarny składnik to przekaźnik pracujący przy 5 V (część sterująca) i 220 V (wyjście).
    3. W środku masz kilka pinów połączenia szeregowego. Za ich pomocą można zaprogramować mikrokontroler lub połączyć kolejne elementy. Do GPIO14 można podłączyć siłowniki lub czujniki.
    4. Obok pinów zobaczysz także przycisk. Możesz go nacisnąć, aby zmienić tryby, które możesz ustawić.
    5. Dioda LED wskazująca działanie i tryb lub stan, w którym się znajduje.
    6. I dwa zielone złącza na każdym końcu PBC. Jeden z nich to wejście, a drugi wyjście. Najbliżej przekaźnika znajduje się wejście prądu przemiennego, czyli miejsce, w którym urządzenie jest podłączone do sieci elektrycznej. Drugi to gniazdko, do którego możesz podłączyć urządzenie, które chcesz wyłączyć lub włączyć. Pamiętaj, że obsługuje do 10 A, czyli pobór 2,2 kW dla 220 V.
  3. Teraz będziesz pracować z pinami połączenia, aby załadować program. Dla niej będziesz potrzebować FTDI lub TTL, umożliwiając podłączenie tych pinów do portu USB w komputerze. Ale poza podłączeniem trzeba pamiętać, że zintegrowany mikrokontroler ma dwa tryby pracy, tryb UART i tryb FLASH. Tryb UART umożliwia załadowanie programu i FLASH w celu jego wykonania. Aby przejść do trybu UART i móc napisać program, należy ustawić piny GPIO0 (LOW) i GPIO2 (HIGH) w określonych stanach. Program zostanie załadowany przez piny oznaczone RX i TX. Oczywiście będziesz musiał również użyć pinów zasilania 3v3 i GND, a także przycisku GPIO0, diody LED lub GPIO13 i przekaźnika na GPIO12.
  4. Po prawidłowym podłączeniu i posiadaniu kabla USB do podłączenia go do komputera, możesz zacząć od samego programowania. Pamiętaj, kiedy FTDI musisz przekroczyć połączenia RX i TXczyli RX z Itead do TX z FTDI i odwrotnie.
  5. Później będzie to kwestia użycia IDE Arduino aby stworzyć niezbędny kod dla sterowania, które chcesz wykonać (musisz wybrać płytkę ESP8266 jako urządzenie mikrokontrolera do nagrywania). Może ci również pomóc oprogramowanie opracowane przez Xose Pérez. Nazywa się ESPurna i jest specyficzny dla Sonoff WiFi. Za pomocą panelu sterowania możesz kontrolować parametry sieci i bezpieczeństwa.
  6. W końcu, gdy już go masz, możesz zwrócić piny GPIO0 i GPIO2 do stanów High High odpowiednio, aby powrócić do trybu FLASH i uruchomić program.
  7. Po zakończeniu możesz wykonaj właściwe połączenia w swoim Sonoff aby podłączyć wybrane urządzenia i dać im moc. Z aplikacji możesz kontrolować wszystko ...

Więcej informacji - Łatwe programowanie

Korzystanie z Tasmota

Aby to zrobić z Tasmota zamiast ESPurna, plik ogólne kroki aby to zrobić, powinni:

  1. Musisz najpierw otworzyć skrzynkę Itead Sonoff tak jak w poprzednim przypadku.
  2. Następnie należy przylutować okablowanie lub piny, aby móc wykonać połączenia zasilania i przejściówkę USB na UART TTL.
  3. Idź do Arduino IDE iw Narzędziach musisz wybrać kartę ESP8266 zamiast Arduino UNO lub ten, który masz domyślnie. Instalujesz nową płytę.
  4. Teraz pobierz Tasmota i zainstaluj go poprawnie, aby zintegrować się z Arduino IDE.
  5. Nadszedł czas, aby zaprogramować i skonfigurować swój projekt tak, jak chcesz i zapisać go na płycie głównej ... Po zakończeniu możesz podłączyć komponenty do sonoffa, tak jak w przypadku ESPurna.

Więcej informacji - Automatyka domowa


7 komentarzy, zostaw swoje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Jan M powiedział

    Serwer WWW nie działa, nie ładuje się w przeglądarce.

    1.    Isaac powiedział

      Witaj Juan,
      Masz na myśli, kiedy umieszczasz adres IP w swojej przeglądarce internetowej? Czy upewniłeś się, że ustawiłeś poprawny adres IP w sieci lokalnej? Publiczny adres IP jest nieprawidłowy. To musi być ten przypisany sonoffowi. Dodatkowo w kodzie html należy również zamienić X na odpowiedni adres IP.
      Pozdrowienia!

      1.    John powiedział

        W rzeczywistości zrobiłem jedno i drugie, ale w momencie, gdy ładuję adres IP w przeglądarce, połączenie nie powiodło się. Również kiedy uruchamiam serwer WWW, nie jest on ładowany w postaci przycisków, ale w postaci tekstu.

        1.    Isaac powiedział

          Witaj Juan,
          U mnie działa poprawnie, nie rozumiem, dlaczego tak się dzieje ...
          Zbadam i jeśli znajdę problem, poinformuję Cię.
          Pozdrawiam i dziękuję za przeczytanie

  2.   Joan powiedział

    Cześć,
    Nie rozumiem, że w naszych bibliotekach używasz kodów AT….

    Nie widzę również, abyś korzystał z trybu WIFI ESP8266, na którym koncentruje się ten artykuł.

    Podaj czystszy i jaśniejszy przykład, a zobaczysz, że projekt będzie zrozumiały.

    Pozdrowienia.

    1.    Joan powiedział

      Zapomniałem,
      Jeśli chcesz, aby przekaźnik, ESP8266 sam nim sterował, użyj Arduino, jeśli chcesz załadować oprogramowanie układowe.

      Kolejne powitanie.

  3.   ANDRES REMBERTO GUZMAN GALVAN powiedział

    Podążałem za wszystkimi Twoimi krokami i u mnie nie działa, skąd wiedzieć jakie IP otrzymałem od mojego ESP8266