Kapcsolatok

Vezeték nélküli wi-fi kapcsoló. Vezeték nélküli kapcsoló, mi ez és érdemes-e telepíteni? A készülék erősségei és gyengeségei

A modern világban az „okos otthon” rendszer egyre szélesebb körben elterjed. Segítségével otthonunk számos elemét, eszközét vezérelheti távolról. A szoba világítását távolról is vezérelheti. Az ilyen találmányok hozzájárulnak egy adott helyiség kényelméhez, és ott is használatosak, ahol idősek és fogyatékkal élők élnek. Ebben a cikkben arról lesz szó, hogyan működik, és miért van szükség a lakosság körében egyre népszerűbb Wi-Fi lámpakapcsolóra.

A készülék erősségei és gyengeségei

A Wi-Fi fénykapcsolónak a következő előnyei vannak:

  1. Nincs szükség további kábelek lefektetésére.
  2. Lehetőség van a világítóberendezések központi vezérlésére, azaz egy parancspontról. A vezeték nélküli fénykapcsoló vezérléséhez használhat okostelefont, táblagépet, számítógépet vagy távirányítót. A táblagépekhez és más elektronikus eszközökhöz telepítenie kell a szükséges szoftvert. Letölthető az internetről vagy telepíthető lemezről.
  3. Nagy jellefedettségi terület. A falak ellenére a digitális rádiójel behatol a kívánt helyiségbe.
  4. Ez a rendszer nagyon biztonságos. Ha a készülék szerkezete megsérül is, ez nem fenyegeti a lakót erős áramütéssel, mert a Wi-fi kapcsoló nagyon alacsony áramerősségű.
  5. A készülék minden típusú izzóval (LED, izzólámpa, energiatakarékos) normálisan működik.
  6. Beállíthat különböző kombinációkat, valamint a világítótestek működési módjait.

Ha a villanykapcsolók hátrányairól beszélünk, csak néhány van. A legfontosabbak az, hogy az ára jóval magasabb, mint a hagyományos billentyűzetmodelleké, és fennáll annak a veszélye, hogy a távirányító elemei lemerülnek, vagy gyenge a Wi-Fi jel.

Tervezési jellemzők

A Wi-Fi kapcsolókészlet vevőt és adót tartalmaz. A vevő egy vezérlőrelé. Vezérelheti Wi-Fi hálózathoz való hozzáféréssel rendelkező okostelefonon vagy a távirányítóval. Amikor a relé egy bizonyos jelet kap, lezárja az elektromos áramkört. A relé a lámpa közelében vagy belsejében van felszerelve. Ez a készülék kis méretei miatt lehetséges. Az eszközt azért kell a lámpa közelébe szerelni, hogy az ne essen ki abból a sugárból, amelyben az adó működik. Ha a helyiségben spot világítás van, a vevő elosztódobozba vagy álmennyezet mögé helyezhető.

A kapcsolónak vagy adónak van egy kis áramfejlesztője, amely képes áramot termelni, ha megnyom egy gombot a távirányítón, vagy Wi-Fi kapcsolaton keresztül egy adott parancsot küld okostelefonról. Az impulzust viszont rádiójellé dolgozzák fel, amely belép a készülékbe. Az ilyen rádióvezérlésű világításkapcsolók meglehetősen drágák, és analógjuk az elemeket tartalmazó távirányítóról történő vezérlés.

A kapcsolók típusai és a legjobb gyártók

Jelenleg a Wi-Fi lámpakapcsolók választéka nem túl nagy. A termékeket azonban több kritérium szerint osztályozzák:

  1. A készülék elektronikus vagy mechanikus kulcsokkal állítható. Az első esetben a készülék érintőképernyőjéről beszélünk. A gombok a távirányítón (távirányítón) vannak.
  2. Léteznek lámpakapcsolók is, mind a normál, mind a billentyűzettel. Az első eszközök segítségével beállíthatja a világítás fényerejét, ezáltal megváltoztatva annak intenzitását. A fényerő beállításához tartsa lenyomva vagy görgessen a megfelelő gombot.
  3. Ez a kapcsoló nem csak egy, hanem két vagy három világítóberendezés-csoport teljes vezérlését is képes biztosítani. A teljes csoportokat irányítani képes vezeték nélküli eszköz ára azonban meglehetősen magas.

Jelenleg hét fő gyártója van a világításvezérléshez szükséges vezeték nélküli elektromos tartozékoknak:

  1. Legrand - származási ország: Franciaország. A cég Celian nevű termékeinek egész sorával rendelkezik.
  2. A Vitrum származási ország: Olaszország. Ez a cég a Z-Wave nevű technológiát használja. Lehetővé teszi a világítás szabályozásának teljes automatizálását a házban.
  3. A Delumo termékeket egy orosz cég gyártja, amely különösen fényerő-szabályozókat, kapcsolókat és termosztátokat gyárt.
  4. Noolite – a kiegészítőket fehérorosz gyártók gyártják.
  5. A Livolo-t Kínában gyártják. Ez a cég speciális automatizálási eszközöket gyárt. A termékcsalád egy- és dupla kapcsolókerethez egyaránt tartalmaz termékeket.
  6. Broadlink (Kína). Ez a gyártó meglehetősen nagy választékkal rendelkezik a világításvezérléshez.
  7. A Kopou a legújabb cég, amely szintén Kínában található. A gyártó dimmereket gyárt különféle kulcstartók formájában.

Az alábbi videó áttekintést nyújt a Wi-Fi lámpakapcsoló másik érdekes modelljéről:

Helyes csatlakozás

A kapcsoló megfelelő felszereléséhez ismernie kell a működési elvét, miből áll az eszköz, és hogyan kell csatlakoztatni a Wi-Fi kapcsolót. Ennek a vezeték nélküli eszköznek a csatlakozási diagramja nagyon egyszerű.

A Wi-Fi lámpakapcsoló egyik előnye a könnyű használat és csatlakozás. Ha igazán akarja, maga is telepítheti a készüléket. Fontos, hogy szigorúan kövesse a gyártó utasításait. Ez a telepítés csak néhány percet vesz igénybe.

A csatlakozási folyamat csak két szakaszból áll:

  1. Rádióvevő felszerelése.
  2. Világításkapcsoló beszerelése (vezérlőgomb).

Alapvetően a vevőknek kettő-négy vezeték van. Kijönnek a készülék testéből. A bemeneti vezeték meghatározásához el kell olvasnia az utasításokat. A fennmaradó vezetékek kimenete lesz, például egy dupla kapcsolónak két kimenete lesz. A vevő telepítéséhez meg kell nyitnia a világítóeszköz áramellátását biztosító fázist, és csatlakoztatnia kell az áramkörhöz, miközben figyeli a sorrendet.

Abban az esetben, ha egynél több világítási csoportot kell csatlakoztatni, a következőképpen járjon el:

  • minden világítótesthez nulla kerül;
  • a fázis elágazik a Wi-fi kapcsolóban;
  • a fázist minden lámpacsoporthoz külön kell ellátni.

A vezérlőgombot meglehetősen egyszerűen kell felszerelni, először lyukat kell készíteni a falon egy betonvágó kalapács segítségével. A kész lyukba egy rendes műanyag aljzatdobozt helyeznek, a rögzítéshez vakolat használható. A telepítési folyamat egyáltalán nem különbözik a billentyűzet típusától. Az egyetlen különbség az, hogy nincs szükség vezetékek lefektetésére, csak biztonságosan rögzíteni kell a gombot az aljzatban.

Jó napot, kedves olvasó.

Egy kis szöveg az elején. Az „okos” villanykapcsoló ötlete egyáltalán nem új, és valószínűleg ez az első dolog, ami eszébe jut azoknak, akik elkezdték ismerkedni az Arduino platformmal és az IoT elemekkel. És ez alól én sem vagyok kivétel. Kísérletezve áramköri elemekkel, motorokkal és LED-ekkel, szeretnék valami praktikusabbat készíteni, ami a mindennapi életben igényes, és ami a legfontosabb, kényelmes lesz használni, és nem marad a kényelem kedvéért kísérletezés áldozata.

Ebben a cikkben elmesélem, hogyan készítettem egy olyan kapcsolót, amely úgy működik, mint egy normál kapcsoló (vagyis olyan, amelyet általában a falra szerelnek), és ugyanakkor lehetővé teszi a vezérlést WiFi-n (vagy az interneten keresztül, mint ebben az esetben).

Tehát készítsünk egy listát arról, hogy mire lesz szüksége a terv megvalósításához. Azonnal leszögezem, hogy nem szándékoztam sokat költeni az alkatrészekre, és a fórumokon található vélemények és az ár-minőség arány alapján választottam ki az alkatrészeket. Ezért előfordulhat, hogy egyes alkatrészek itt nem megfelelőek a tapasztalt elektromos szerelmesek számára, de kérjük, ne ítéljen túl szigorúan, mert Még csak kezdő vagyok az elektromechanikában, és nagyon örülnék a tapasztaltabb emberek észrevételeinek.

Kellett még: egy szerver, amivel az interneten keresztül vezérelhető lesz a kapcsoló, egy Arduino Uno, amivel programoztam az ESP-t, egy router és fogyóeszközök, mint vezetékek, terminálok stb., mindez ízléstől függően változhat, és nem fog befolyásolja a végeredményt.

Az árakat az Ebay-ről vettem, ahol vettem.

És így néznek ki a táblázat elemei:

Most létrehozhat egy csatlakozási diagramot:

Amint valószínűleg észrevette, a rendszer nagyon egyszerű. Minden könnyen, gyorsan és forrasztás nélkül összeszerelhető. Egyfajta működő prototípus, amivel nem kell sokáig trükközni. Minden vezetékekkel és terminálokkal van összekötve. Az egyetlen negatívum, hogy a relé nem fért be a kapcsoló aljzatába. Igen, kezdetben azt terveztem, hogy a kapcsoló mögötti falba tolom az egészet, hogy esztétikusan nézzen ki. De sajnálatomra nem volt elég hely a foglalatban, és a relé egyszerűen nem illeszkedett sem hosszában, sem keresztben:

Ezért átmenetileg áthelyeztem a relét az aljzat mögé, amíg nem találtam egy megfelelő kapcsolódobozt, amelyen a vasaló elrejthető. De nincs tartósabb az átmenetinél, nem igaz? Tehát most minden így néz ki:

Az elektromos szalag megmenti az áramütéstől... Remélem.

Most beszéljünk a szoftver részről.

És mielőtt elkezdenénk elemezni a kódot és a részleteket, adok egy általános sémát a villanykörte vezérlésének megvalósítására.

Remélem egyszer majd átírok mindent és a HTTP-nél gyorsabb protokollra épül majd a kapcsolat, de kezdetnek megteszi. Távolról a villanykörte körülbelül 1-1,5 másodperc alatt, kapcsolóról pedig azonnal váltja állapotát, ahogy az egy tisztességes kapcsolóhoz illik.

Programozás ESP8266-01

Ennek legegyszerűbb módja az Arduino. Az Arduino IDE-hez szükséges könyvtárakat letöltheti a GitHubról. Ott minden telepítési és beállítási utasítás megtalálható.

Ezután csatlakoztatnunk kell az ESP-t a számítógéphez, ehhez vagy egy USB-soros adapterre (pl. FTDi , CH340 , FT232RL) vagy bármilyen Arduino platform (Arduino Uno-m volt) RX és TX kimenettel.

Érdemes megjegyezni, hogy az ESP8266-01 tápellátása 3,3 Volt, ami azt jelenti, hogy soha nem szabad Arduinóhoz csatlakoztatni, amely (gyakran) 5 voltos tápfeszültséggel működik, különben a pokolba ég. Használhat feszültségcsökkentőt, amely a fenti táblázatban látható.

A kapcsolási rajz egyszerű: az ESP TX, RX és GND-jét az adapter/Arduino RX-hez, TX-hez és GND-hez kötjük. Ezt követően maga a kapcsolat készen áll a használatra. A mikrokontroller az Arduino IDE segítségével programozható.

Néhány árnyalat az Arduino Uno használatakor:

  • Az Uno-nak van 3,3 V-os kimenete, de ez nem volt elég. Ha ESP-t csatlakoztat hozzá, úgy tűnik, hogy minden működik, a jelzőfények világítanak, de a kommunikáció megszakad a COM porttal. Tehát egy másik 3,3 V-os tápegységet használtam az ESP-hez.
  • Ezenkívül az UNO-nak nem volt problémája az ESP-vel való kommunikációval, tekintettel arra, hogy az UNO-t 5 V, az ESP-t pedig 3 V táplálta.
Az ESP8266-01-gyel végzett több kísérlet után kiderült, hogy az ESP érzékeny a GPIO0 és GPIO2 feszültségeire. Az indítás pillanatában semmilyen körülmények között ne legyenek földelve, ha normál üzemmódban kívánja elindítani. További részletek a mikrokontroller indításával kapcsolatban. Ezt nem tudtam, és kicsit változtatnom kellett a sémán, mert... az ESP-01 verzióban csak ez a 2 érintkező van jelen, és az én áramkörömben mindkettőt használják.

És itt van magának az ESP-nek a programja:

Kód megjelenítése

#beleértve #beleértve #beleértve #beleértve #beleértve extern "C" ( // ez a rész szükséges az initVariant függvény eléréséhez #include "user_interface.h" ) const char* ssid = "WIFISSID"; // WiFi név const char* jelszó = "***************"; // WiFi jelszó const String self_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // token a minimális kommunikációs biztonsági biztonsági karakterlánchoz serv_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // token minimális kommunikációs biztonsághoz const String name = "IOT_lamp"; // kapcsoló neve, villanykörték olvasása const String serverIP = "192.168.1.111"; // belső IP WEB szerver bool lamp_on = false; bool can_toggle = false; int gomb_állapota; ESP8266WebServer szerver(80); // webszerver HTTPClient http; // webkliens const int lamp = 2; // A relé vezérlése a GPIO2-n keresztül const int gomb = 0; // "Catch" a switch via GPIO0 // függvény a villanykörte pingeléséhez void handleRoot() ( server.send(200, "text/plain", "Hello! I am " + name); ) // függvény érvénytelen kérések void handleNotFound ()( String message = "nem található"; server.send(404, "text/plain", message); ) // Legyen világos void turnOnLamp())( digitalWrite(lámpa, LOW); lamp_on = igaz void sendServer(bool state)( http.begin("http://"+serverIP+"/iapi/setstate"); String post = "token="+self_token+"&state="+(state?"on":"off "); // A token használatával a szerver meghatározza, hogy milyen eszközről van szó http.addHeader("Content-Type", "application/x-www-form-urlencoded"); int httpCode = http.POST(post ); http.end ( ) // A lámpa állapotának módosítása void toggleLamp())( if(lamp_on == true) (>turnOffLamp(); sendServer(false); ) else ( turnOnLamp(); sendServer (igaz); send(401, "text/plain", message) turnOnLamp(); handleOff())( String token = server.arg(" token"); if(serv_token != token) ( String message = "access denied"; server.send(401, "text/plain", message); return; ) turnOffLamp(); String message = "siker"; server.send(200, "szöveg/sima", üzenet); ) // Állítsa be a MAC-t, hogy ugyanazt az IP-címet adja meg void initVariant() ( uint8_t mac = (0x00, 0xA3, 0xA0, 0x1C, 0x8C, 0x45); wifi_set_macaddr(STATION_IF, &mac); ) void setup(void) , OUTPUT ); pinMode (gomb, INPUT_PULLUP) .status() ! = WL_CONNECTED) ( delay(500); ) // Függvények hozzárendelése kérésekhez server.on("/", handleRoot); server.on("/on", HTTP_POST, handleOn); server.on("/off", HTTP_POST, handleOff); server.onNotFound(handleNotFound); // Indítsa el a szervert server.begin(); ) void loop(void)( server.handleClient(); // Ellenőrizze, hogy le van-e nyomva a kapcsoló button_state = digitalRead(button); if (button_state == HIGH && can_toggle) ( toggleLamp(); can_toggle = false; delay(500) ; ) else if(button_state == LOW)( can_toggle = igaz; ) )


Néhány megjegyzés a kóddal kapcsolatban:
  • Nagyon fontos, hogy a GPIO0 pint pinMode(button, INPUT_PULLUP), mert Az áramkörben ehhez a gombhoz nem használunk ellenállást. Az ESP-nek pedig saját beépített elemei vannak ezekre a célokra.
  • Egy gomb állapotának észlelésekor célszerű késleltetést beállítani a leolvasáskor, hogy elkerüljük a téves pozitív eredményeket a megnyomás pillanatában.

WEB szerver programozás

Itt szabad utat engedhet fantáziájának, és bármilyen rendelkezésre álló eszközzel létrehozhat egy szolgáltatást, amely feldolgozza a kapcsoló által küldött kéréseket, és kéréseket küld a kapcsoló be- és kikapcsolására.

A Yii-t használtam erre a célra. Több okból is választottam ezt a keretrendszert, szükségem volt jogosultságra (mivel a portál elérhető az interneten) és szerepkezelésre (a későbbi kísérletekhez), és egyszerűen tetszik. És most így néz ki a menedzsment portálom:

Egy villanykörte hálózaton belüli vezérléséhez elegendő maga a szerver az ESP-n. De szeretne a jövőben naplókat, logikát és egyéb eszközöket használni, ezért jobb, ha külön szervert használ az irányításhoz.

Ez az egész a portálról szól, szerintem nincs értelme többet írni róla, de ha kérdése van, szívesen válaszolok rá kommentben.

Konklúzió helyett

Köszönöm, ha végigolvasta a cikket, és talán talált benne valami hasznosat. Tanácsoknak, kritikának szívesen veszem. Általában továbbra is úgy tűnik számomra, hogy az áramkör szűk keresztmetszete az 5 V-os adapter, és örülök, ha megosztja tapasztalatait az ilyen problémák megoldásában. Ami az ESP8266-01-et illeti, nekem eddig nem okozott panaszt, kivéve a GPIO tűk speciális használatát. Már a második hete folyamatosan működik. Sok sikert a projektekhez.

Jó napot, kedves olvasó.

Egy kis szöveg az elején. Az „okos” villanykapcsoló ötlete egyáltalán nem új, és valószínűleg ez az első dolog, ami eszébe jut azoknak, akik elkezdték ismerkedni az Arduino platformmal és az IoT elemekkel. És ez alól én sem vagyok kivétel. Kísérletezve áramköri elemekkel, motorokkal és LED-ekkel, szeretnék valami praktikusabbat készíteni, ami a mindennapi életben igényes, és ami a legfontosabb, kényelmes lesz használni, és nem marad a kényelem kedvéért kísérletezés áldozata.

Ebben a cikkben elmesélem, hogyan készítettem egy olyan kapcsolót, amely úgy működik, mint egy normál kapcsoló (vagyis olyan, amelyet általában a falra szerelnek), és ugyanakkor lehetővé teszi a vezérlést WiFi-n (vagy az interneten keresztül, mint ebben az esetben).

Tehát készítsünk egy listát arról, hogy mire lesz szüksége a terv megvalósításához. Azonnal leszögezem, hogy nem szándékoztam sokat költeni az alkatrészekre, és a fórumokon található vélemények és az ár-minőség arány alapján választottam ki az alkatrészeket. Ezért előfordulhat, hogy egyes alkatrészek itt nem megfelelőek a tapasztalt elektromos szerelmesek számára, de kérjük, ne ítéljen túl szigorúan, mert Még csak kezdő vagyok az elektromechanikában, és nagyon örülnék a tapasztaltabb emberek észrevételeinek.

Kellett még: egy szerver, amivel az interneten keresztül vezérelhető lesz a kapcsoló, egy Arduino Uno, amivel programoztam az ESP-t, egy router és fogyóeszközök, mint vezetékek, terminálok stb., mindez ízléstől függően változhat, és nem fog befolyásolja a végeredményt.

Az árakat az Ebay-ről vettem, ahol vettem.

És így néznek ki a táblázat elemei:

Most létrehozhat egy csatlakozási diagramot:

Amint valószínűleg észrevette, a rendszer nagyon egyszerű. Minden könnyen, gyorsan és forrasztás nélkül összeszerelhető. Egyfajta működő prototípus, amivel nem kell sokáig trükközni. Minden vezetékekkel és terminálokkal van összekötve. Az egyetlen negatívum, hogy a relé nem fért be a kapcsoló aljzatába. Igen, kezdetben azt terveztem, hogy a kapcsoló mögötti falba tolom az egészet, hogy esztétikusan nézzen ki. De sajnálatomra nem volt elég hely a foglalatban, és a relé egyszerűen nem illeszkedett sem hosszában, sem keresztben:

Ezért átmenetileg áthelyeztem a relét az aljzat mögé, amíg nem találtam egy megfelelő kapcsolódobozt, amelyen a vasaló elrejthető. De nincs tartósabb az átmenetinél, nem igaz? Tehát most minden így néz ki:

Az elektromos szalag megmenti az áramütéstől... Remélem.

Most beszéljünk a szoftver részről.

És mielőtt elkezdenénk elemezni a kódot és a részleteket, adok egy általános sémát a villanykörte vezérlésének megvalósítására.

Remélem egyszer majd átírok mindent és a HTTP-nél gyorsabb protokollra épül majd a kapcsolat, de kezdetnek megteszi. Távolról a villanykörte körülbelül 1-1,5 másodperc alatt, kapcsolóról pedig azonnal váltja állapotát, ahogy az egy tisztességes kapcsolóhoz illik.

Programozás ESP8266-01

Ennek legegyszerűbb módja az Arduino. Az Arduino IDE-hez szükséges könyvtárakat letöltheti a GitHubról. Ott minden telepítési és beállítási utasítás megtalálható.

Ezután csatlakoztatnunk kell az ESP-t a számítógéphez, ehhez vagy egy USB-soros adapterre (pl. FTDi , CH340 , FT232RL) vagy bármilyen Arduino platform (Arduino Uno-m volt) RX és TX kimenettel.

Érdemes megjegyezni, hogy az ESP8266-01 tápellátása 3,3 Volt, ami azt jelenti, hogy soha nem szabad Arduinóhoz csatlakoztatni, amely (gyakran) 5 voltos tápfeszültséggel működik, különben a pokolba ég. Használhat feszültségcsökkentőt, amely a fenti táblázatban látható.

A kapcsolási rajz egyszerű: az ESP TX, RX és GND-jét az adapter/Arduino RX-hez, TX-hez és GND-hez kötjük. Ezt követően maga a kapcsolat készen áll a használatra. A mikrokontroller az Arduino IDE segítségével programozható.

Néhány árnyalat az Arduino Uno használatakor:

  • Az Uno-nak van 3,3 V-os kimenete, de ez nem volt elég. Ha ESP-t csatlakoztat hozzá, úgy tűnik, hogy minden működik, a jelzőfények világítanak, de a kommunikáció megszakad a COM porttal. Tehát egy másik 3,3 V-os tápegységet használtam az ESP-hez.
  • Ezenkívül az UNO-nak nem volt problémája az ESP-vel való kommunikációval, tekintettel arra, hogy az UNO-t 5 V, az ESP-t pedig 3 V táplálta.
Az ESP8266-01-gyel végzett több kísérlet után kiderült, hogy az ESP érzékeny a GPIO0 és GPIO2 feszültségeire. Az indítás pillanatában semmilyen körülmények között ne legyenek földelve, ha normál üzemmódban kívánja elindítani. További részletek a mikrokontroller indításával kapcsolatban. Ezt nem tudtam, és kicsit változtatnom kellett a sémán, mert... az ESP-01 verzióban csak ez a 2 érintkező van jelen, és az én áramkörömben mindkettőt használják.

És itt van magának az ESP-nek a programja:

Kód megjelenítése

#beleértve #beleértve #beleértve #beleértve #beleértve extern "C" ( // ez a rész szükséges az initVariant függvény eléréséhez #include "user_interface.h" ) const char* ssid = "WIFISSID"; // WiFi név const char* jelszó = "***************"; // WiFi jelszó const String self_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // token a minimális kommunikációs biztonsági biztonsági karakterlánchoz serv_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // token minimális kommunikációs biztonsághoz const String name = "IOT_lamp"; // kapcsoló neve, villanykörték olvasása const String serverIP = "192.168.1.111"; // belső IP WEB szerver bool lamp_on = false; bool can_toggle = false; int gomb_állapota; ESP8266WebServer szerver(80); // webszerver HTTPClient http; // webkliens const int lamp = 2; // A relé vezérlése a GPIO2-n keresztül const int gomb = 0; // "Catch" a switch via GPIO0 // függvény a villanykörte pingeléséhez void handleRoot() ( server.send(200, "text/plain", "Hello! I am " + name); ) // függvény érvénytelen kérések void handleNotFound ()( String message = "nem található"; server.send(404, "text/plain", message); ) // Legyen világos void turnOnLamp())( digitalWrite(lámpa, LOW); lamp_on = igaz void sendServer(bool state)( http.begin("http://"+serverIP+"/iapi/setstate"); String post = "token="+self_token+"&state="+(state?"on":"off "); // A token használatával a szerver meghatározza, hogy milyen eszközről van szó http.addHeader("Content-Type", "application/x-www-form-urlencoded"); int httpCode = http.POST(post ); http.end ( ) // A lámpa állapotának módosítása void toggleLamp())( if(lamp_on == true) (>turnOffLamp(); sendServer(false); ) else ( turnOnLamp(); sendServer (igaz); send(401, "text/plain", message) turnOnLamp(); handleOff())( String token = server.arg(" token"); if(serv_token != token) ( String message = "access denied"; server.send(401, "text/plain", message); return; ) turnOffLamp(); String message = "siker"; server.send(200, "szöveg/sima", üzenet); ) // Állítsa be a MAC-t, hogy ugyanazt az IP-címet adja meg void initVariant() ( uint8_t mac = (0x00, 0xA3, 0xA0, 0x1C, 0x8C, 0x45); wifi_set_macaddr(STATION_IF, &mac); ) void setup(void) , OUTPUT ); pinMode (gomb, INPUT_PULLUP) .status() ! = WL_CONNECTED) ( delay(500); ) // Függvények hozzárendelése kérésekhez server.on("/", handleRoot); server.on("/on", HTTP_POST, handleOn); server.on("/off", HTTP_POST, handleOff); server.onNotFound(handleNotFound); // Indítsa el a szervert server.begin(); ) void loop(void)( server.handleClient(); // Ellenőrizze, hogy le van-e nyomva a kapcsoló button_state = digitalRead(button); if (button_state == HIGH && can_toggle) ( toggleLamp(); can_toggle = false; delay(500) ; ) else if(button_state == LOW)( can_toggle = igaz; ) )


Néhány megjegyzés a kóddal kapcsolatban:
  • Nagyon fontos, hogy a GPIO0 pint pinMode(button, INPUT_PULLUP), mert Az áramkörben ehhez a gombhoz nem használunk ellenállást. Az ESP-nek pedig saját beépített elemei vannak ezekre a célokra.
  • Egy gomb állapotának észlelésekor célszerű késleltetést beállítani a leolvasáskor, hogy elkerüljük a téves pozitív eredményeket a megnyomás pillanatában.

WEB szerver programozás

Itt szabad utat engedhet fantáziájának, és bármilyen rendelkezésre álló eszközzel létrehozhat egy szolgáltatást, amely feldolgozza a kapcsoló által küldött kéréseket, és kéréseket küld a kapcsoló be- és kikapcsolására.

A Yii-t használtam erre a célra. Több okból is választottam ezt a keretrendszert, szükségem volt jogosultságra (mivel a portál elérhető az interneten) és szerepkezelésre (a későbbi kísérletekhez), és egyszerűen tetszik. És most így néz ki a menedzsment portálom:

Egy villanykörte hálózaton belüli vezérléséhez elegendő maga a szerver az ESP-n. De szeretne a jövőben naplókat, logikát és egyéb eszközöket használni, ezért jobb, ha külön szervert használ az irányításhoz.

Ez az egész a portálról szól, szerintem nincs értelme többet írni róla, de ha kérdése van, szívesen válaszolok rá kommentben.

Konklúzió helyett

Köszönöm, ha végigolvasta a cikket, és talán talált benne valami hasznosat. Tanácsoknak, kritikának szívesen veszem. Általában továbbra is úgy tűnik számomra, hogy az áramkör szűk keresztmetszete az 5 V-os adapter, és örülök, ha megosztja tapasztalatait az ilyen problémák megoldásában. Ami az ESP8266-01-et illeti, nekem eddig nem okozott panaszt, kivéve a GPIO tűk speciális használatát. Már a második hete folyamatosan működik. Sok sikert a projektekhez.

Az intelligens kapcsoló nélkülözhetetlen a fogyatékkal élők számára, beleértve az időseket is. Hasznos lesz azoknak is, akik gyakran emlékeznek arra, hogy a házból kifelé menet nem kapcsolják le a lámpákat.

Az okostelefon által vezérelt kapcsoló működési elve

A készülék két blokkból áll - egy vevőből és egy adóból. A vevő funkciót egy Wi-Fi adapterrel felszerelt vezérlő (kapcsoló) látja el. Rádiójel alapján zárja vagy nyitja a tápvezetékek érintkezőit.

Az adó szerepét a következők tölthetik be:

  • Wi-Fi fénykapcsoló a falra helyezve;
  • speciális kulcstartó;
  • router (az interneten keresztül fogad jeleket).

A vezeték nélküli kapcsoló előnyei:

  • nincs szükség kábelfektetésre;
  • vezérelje az összes világítótestet egyetlen számítógépről vagy telefonról;
  • a világítás automatikus be/kikapcsolása beállított időpontban, adott program szerint;
  • visszajelzés elérhetősége.

Az érintőkapcsoló használata egyszerű, a ház mechanikai sérülése esetén pedig teljesen biztonságos az ember számára. A csatlakoztatott tápkábelek hiánya miatt az áramütés kizárt.

A készülék hatótávolsága 30-160 méter. Ez a mutató a falak vastagságától függ. A berendezés minden típusú lámpával megbízhatóan működik: izzólámpás, LED-es, energiatakarékos.

Rendeljen modern „okos” Wi-Fi villanykapcsolókat, és tegye kényelmesebbé otthonát.

Régóta szerettem volna automatizálni a fürdőszoba fürdés utáni szárításának folyamatát. Sok véleményt kaptam a páratartalom témájában. Egyébként télen a fürdőszobában szárítjuk a ruháinkat. De még nem döntöttem el, hogy pontosan mit is valósítsak meg. Leírok egy másik kínai csodát a gonosz leküzdésére.

Nyáron az erkélyen szárítjuk a ruhákat, télen - a fürdőszobában, csak kapcsolja be a kipufogóventilátort. De a ventilátor figyelése nem mindig kényelmes. Ezért úgy döntöttem, hogy automatizálást telepítek ebben az ügyben. Az első megvalósítási tapasztalatok nem jártak sikerrel. Volt egy felülvizsgálat. De nem adtam fel... A második élmény jobban sikerült, csináltam egy áttekintést is. De nem sikerült a gyakorlatba átültetnem. A gyakori üzleti utak sok időt vesznek igénybe.
De egyáltalán nem számítottam ilyen ajándékra. Láttam egy levelet személyes üzenetben, amelyben az Itead Studio termékének értékelésére ajánlottam fel. Hülyeség visszautasítani egy terméket felülvizsgálatra, ha az érdekes (nemhogy szükséges). Közvetlenül utána végignéztem Muskán. Legalább három véleményt találtam a Sonoff termékekről. Nem én vagyok az első: (El tudom képzelni, hány szavazat lesz a kommentekben az ingyen sütiről. De hátba köpni a gyengék és a vesztesek sora. Ezért ez a kritika azoknak szól, akik alkalmasnak tartják magukat .
Így néz ki a kosár az én választásommal:


De elkövettem egy apró hibát, nem figyeltem a képen látható szövegre (piros alapon). A kapcsoló távirányító nélkül jött: (Ez egy kiegészítő opció, külön kell megvásárolni
A rendelés kis dobozban érkezett.


A TH16 modul csomagolás nélkül volt.

A többi dobozban van. De nem voltak utasítások. Ennyit rendeltem.
Elég lusta ember vagyok. Az egyetlen dolog, ami arra késztethet, hogy tegyek valamit, az a kötelezettség valaki iránt. Azt mondják, hogy a lustaság a haladás motorja. A hajtásom egy valakinek tett ígéret. Így két legyet öltem egy csapásra: írtam egy értékelést, és kitaláltam ezeket a varázskapcsolókat/kapcsolókat.
Hadd emlékeztesselek egy kicsit a történetemre.
Amikor új lakásba költöztem, szinte azonnal szereltem visszacsapószelepes ventilátort a motorháztetőbe. A fürdőszoba fürdés utáni szárításához ventilátor szükséges. Visszacsapó szelepre van szükség, hogy a szomszédoktól idegen szagok ne kerülhessenek a lakásba (ha a ventilátor néma). Megtörténik. Az összes szellőzőcsatorna egyedi, de látszólag cementet takarítottak meg a fektetésükkor. A szag valószínűleg átjut a repedéseken.
Különféle lehetőségeket kínálok a rajongóknak. Vannak egyszerűek, némelyik időzítővel (időintervallum beállítása), mint a képen.


Pontosan ezt használtam a mai napig.
Mivel „hangyabolyban” lakom, a ruhaszárítás egyetlen helye az erkély. A fürdőszobában sötétedhet. A szárításhoz alacsony páratartalom vagy légáramlás szükséges. Mindkét feltétel teljesítése a legjobb megoldás. Egy rajongónak meg kellett volna oldania ezt a problémát. Eleinte csak ezt csináltam. A lényeg az, hogy ne felejtse el kikapcsolni. Amíg a ventilátor működik, az ablakot kissé ki kell nyitni. Nem kell emlékeztetned az iskolai problémára egy uszodával és két csővel? Ahhoz, hogy a levegő bejuthasson a páraelszívóba, valahonnan be kell jutnia a lakásba. Akinek fa és nem műanyag ablaka van, annak nem lesz gondja. Elég repedés. De a műanyagokkal a lakás terráriummá válik.
Ekkor kezdtem el gondolkodni a folyamat automatizálásán...
Elképzelésem megvalósításával kapcsolatos szomorú tapasztalataimat már megosztottam. Ez a modul. ALAPELVÉBEN nem működhet.


Rajzoltam a modul diagramját is.


Az áramkör egy LM393 alapú komparátoron alapul. A kinézetből mindennek működnie kell. De van egy dolog. Az érzékelő szokatlan. Megváltoztatja az ellenállását a frekvenciához képest. A leolvasáshoz frekvenciát kell alkalmaznia (normál érték 1 kHz). Ez olyan szomorúság.
Az egyik oldalon három megjegyzés érkezett egy felhasználótól ezzel kapcsolatban:

Furcsa, ez egy szabványos érzékelő az Arduino perifériáktól - működnie kell.
Még nincs mit ellenőrizni - nem különösebben érdekel a páratartalom, mert még nincs ilyen érzékelőm. :)
Megrendelem, ha lesz rá lehetőség és beszámolok...
...nincs egyetlen Arduino modulom sem, ami ne működne.
Megveszem tesztelésre, esetleg csinálok magamnak egy meteorológiai állomást...
...szerinted ezt tennék, ha nem dolgoznának?
Eltelt egy év...
Úgy látszik, alig várom.
Továbbmegyek a csomaghoz.
A TH modult tartalmazó áruház oldala így néz ki:

Ezen választhat Sonoff TH modulokat a relé áramától függően, valamint páratartalom és hőmérséklet modulokat. Pontosan láthatod, mit választottam. A páratartalom modult nem találtam külön akcióban az áruház oldalán (talán nem néztem ki jól). Ezért rendeléskor legyen óvatos...


Utasítások sem voltak (már írták).
Az áruháznak van egy súgó wiki oldala:

Minden megvan, még a diagram is:

Kis méretű.


Súlya, 79 g.


Elkezdem elemezni.
Ide 220V-os hálózati vezetékek csatlakoznak.


A kontaktorok rugósak és nagyon szorosak. De számomra egy csavarral megbízhatóbb.
A tokot reteszek tartják.


Minden az elmében van. Nincsenek megjegyzéseim.
Kicsavart 4 csavar.


A Wi-Fi csomópont ESP8266-ra épül (ki kételkedne ebben). Az ászok számára egész tevékenységi terület áll rendelkezésre. A lényeg az, hogy a fej működjön. A többi már megtörtént. Nem kell külön tápegységet leszigetelni a modulhoz, és nem kell dobozt sem keresni. Minden össze van szerelve és működik.




A tábla ki lett mosva. Fluxusnak nyoma sincs. A bemeneten van egy biztosíték és egy 10D471K varisztor túlfeszültség ellen (értelmezés - átmérő 10 mm, feszültség 470 volt).

Régóta nem láttam ilyet. Mindent visszatettem az eredeti állapotába.
A páratartalom modulhoz fordulok. Ez egy dobozban érkezett. El lehet olvasni, hogy mi van ráírva (a dobozra). A fényképek lehetővé teszik ezt.

A modul szokatlanul nagy.

A fejhallgatóhoz hasonló csatlakozón keresztül csatlakozik.


Ez így alakul.


A tokra minden alapvetően rá van írva.


Az áruháznak van egy wiki súgóoldala (már írta):
- Hőmérséklet és páratartalom modul
AM2301 termék kézikönyv
Van egy kézikönyv is a hőmérséklet-érzékelőhöz:
- DS18B20 - Programozható felbontású 1 vezetékes digitális hőmérő
Nem én rendeltem. Nem vagyok rá kíváncsi. Ráadásul az AM2301 sokoldalúbb. Hőmérséklet- és páratartalom-érzékelővel is rendelkezik. Ráadásul a TH10/16 házon csak egy lyuk található a távvezérlő modul számára.
Szétszedem az AM2301-et. Ház négy retesszel.


A modul egyik oldalán hőmérséklet-, páratartalom- és kvarcérzékelő található.


A fő diagram a hátoldalon található.

Én is építem ezt a modult.
És végül a Sonoff RF intelligens kapcsoló.



Szintén nincs utasítás. Méretben még kisebb, mint a Sonoff TH.


Súly: 49g.



Nem különösebben érdekel. De megmutatom mi van benne.

A tok is be van zárva. Láthatja az elemzési sorrendet.
Csavaros kontaktorok. Számomra nagyon kényelmes.


A bemeneten van egy 10D471K varisztor túlfeszültség ellen (értelmezés - átmérő 10 mm, feszültség 470 volt), mint a VT modulban.


Hálózati galvanikus leválasztású tápegység. Még vágásokat is készítettek a táblán.
A tábla ki lett mosva. Fluxusnak nyoma sincs.


Minden az elmében van. És itt nincsenek megjegyzéseim.
És itt a WiFi csomópont ESP8266-ra épül.


Rádiómodul külön kártya formájában.


Mindent visszatettem az eredeti állapotába.
Ideje nekilátni az üzletnek.
Összeállítok egy edzéstervet. A Sonoff TH modult csatlakoztatom a hálózathoz. Az összefüggés nem mindenki számára nyilvánvaló. Ezért nézze meg a képet az áruház oldalán.

Kevés eszköz működik e séma szerint. Ezért az „extra” vezetékekre piros keresztet tettem.
Kiakasztok egy ventilátort a kijáratnál.
Sonoff RF-vel sokkal egyszerűbb. A kimenetre egy közönséges izzót csatlakoztatok a vezérléshez.


Már csak az egészet össze kell kötni az okostelefonnal.
Az intelligens kapcsolók támogatják a távvezérlést Wi-Fi-n keresztül, de csak a felhőn keresztül :(
Ideje összekapcsolni őket az eWeLink vezérlőalkalmazással. Ehhez először le kell tölteni :) Telepítés, regisztráció...
A fiók létrejött.
Először csatlakoztatom a Sonoff TH-t. Elindítom az alkalmazást, és követem az utasításokat.
Eszköz hozzáadásához kattintson a pluszjelre. Ezután nyomja meg a kis fehér gombot, és tartsa lenyomva körülbelül 5 másodpercig. A kék LED-nek folyamatosan villognia kell. Pontosan egyenletesen! Lehet, hogy „transzba megy” :) és elkezd furcsa jeleket adni. Ebben az esetben ismét nyomja meg és tartsa lenyomva.


Az alkalmazás kéri, hogy adja meg a Wi-Fi jelszavát. Ezután eszközöket keres.
Meg kell adnia az új eszköz nevét.
Tekintse meg a fotót a képsorért (balról jobbra, fentről lefelé).


A kapcsoló „össze van kapcsolva” a fiókommal.
Ugyanez vonatkozik a Sonoff RF-re is. A linkelés után a kép az okostelefonon így néz ki. A terhelést a gombok megnyomásával be- és kikapcsolhatja. Három kép: ki, be, és nincs csatlakoztatva 220 V-ra (offline)


A kapcsoló bekapcsolásához meg kell nyomnia egy gombot a virtuális távirányítóján a világ bármely pontjáról, ahol van internet és Wi-Fi.
Ha 220 V-os hálózathoz csatlakozik, a modulon lévő kék LED világít. A terhelés bekapcsolásakor a piros LED is világít.


De ez mind kézi üzemmód. Az automatikus módba való belépéshez és a kapcsoló be- és kikapcsolásához szükséges paraméterek beállításához a kart (Auto-Manual) az automatikus helyzetbe kell állítania.


És a beállításokba azt tettem, amire szükségem van.
Hadd magyarázzam el a képeket. Most 55% páratartalom és 18˚C a hőmérséklet (távirányító modul az ablakpárkányon). A kapcsoló ki van kapcsolva. Ebben az esetben a hőmérséklet és a páratartalom online monitorozása történik, függetlenül attól, hogy a kapcsoló milyen üzemmódban van (kézi vagy automatikus).
Hadd magyarázzam el, mit kérdeztem.
Amikor a páratartalom eléri a 65%-ot, a kapcsoló bekapcsol (ventilátor). Amikor a páratartalom eléri a 60%-ot, akkor kikapcsol. Megteheti az ellenkezőjét is (párásító esetén).


Ez azoknak való, akiknek télen nagyon alacsony a páratartalma.
Amikor a páratartalom eléri a 30%-ot, a kapcsoló bekapcsol (párásító üzemmód). Amikor a páratartalom eléri a 40%-ot, akkor kikapcsol.
Minden beállítás megfelel a GOST 30494-96 „Lakó- és középületek” szabványnak.


Ügyeljen az optimális páratartalomra télen. Ez nem 60%, ahogy sokan gondolják! A 60% csak elfogadható, nem lehet feljebb menni, harcolni kell. OPTIMUM 30-45%
A kapcsolót időzítővel vezérelheti. Két lehetőség van.


Hőmérséklet-kioldás konfigurálható. Minden beállítás megegyezik a páratartalom beállításával, csak a hőmérsékletet kell kiválasztani.

Egy kicsit a Sonoff RF okoskapcsolóról.
Abban különbözik a Sonoff TH-tól, hogy van benne rádiómodul (távirányítóval vezérelhető, nálam nincs). Nem is képes páratartalom- és hőmérsékletérzékelővel dolgozni. A többi ugyanaz: vezérlés Wi-Fi-n keresztül, időzítő beállításával.
A virtuális távirányító egy kicsit más.


Automatikus módban kétféle időzítő is létezik (például TN).


Ismétlem. Nem érdekel különösebben, de biztosan találok rá hasznot.
Megjegyzem e kapcsolók működésének árnyalatait. Internet nélkül nem lesz irányítás.
DE van egy nagy plusz. A kapcsolókon konfigurált automata üzemmód internettől függetlenül továbbra is működik!

Ha több telefonra telepíti az alkalmazást, akkor mindegyikről vezérelheti, de csak akkor, ha mindegyiken ugyanazzal a felhasználónévvel és jelszóval jelentkezik be az eWeLinkbe.
A végén röviden összefoglalom.
Az intelligens kapcsolók támogatják a Wi-Fi-n keresztüli távvezérlést, de csak a felhőn keresztül: (Az eWeLink vezérlőalkalmazáshoz kell őket kapcsolni. Mi van, ha valami jó Liao bácsi akarja irányítani az okosotthonát? Aki nem bízik benne, annak létre kell hozni egy saját MQTT szervert, és be/ki kell kapcsolni a terhelést a saját kívánságodnak és szabályaidnak megfelelően használd például a fürdőszobában. De ha eljön az ideje egy teljes értékű „okos otthonnak”, akkor gondolok valamire.
Ez minden.
Ezek a modulok ideálisak ventilátorral, légkondicionálóval és párásítóval való munkához. Okos öntözőrendszert alakíthat ki nyaralójában. Még egy gázkazán is szabályozható idővel és adott szobahőmérsékleten.
Mindenki maga dönti el, hogyan használja fel megfelelően az áttekintésemből származó információkat. Ha valami nem világos, tegyen fel kérdéseket. Remélem legalább valakinek segített. Talán valaki segíteni akar nekem. nagyon hálás leszek.

Sok szerencsét mindenkinek!
Funkcionális teszt és zsigerelés:

A terméket az üzlet véleménye írásához biztosította. Az áttekintést a Webhelyszabályzat 18. pontja szerint tették közzé.

+69 vásárlását tervezem Add hozzá a kedvencekhez Tetszett az értékelés +32 +69

Tetszett a cikk? Oszd meg