NodeMCU ESP8266 az ioBrokerhez, MQTT-n kapcsolj egy relét

Ebben a cikksorozatban szeretném bemutatni, hogy milyen egyszerüen készíthet különböző okos eszközöket NodeMCU ESP8266 segítségével arduino keretrendszerben és integrálhatja ezeket az ioBrokerbe MQTT protokoll használatával. Az első részben egy LED-et és relét fogunk kapcsolni.


Az áramkörhöz csak pár alkatrészre van szükség:

NodeMCU Lolin V3 Modul ESP8266-12F Wifi

3mm és 5mm LED 5 Különböző színben.

Ellenállás készlet 0 Ohm -1M Ohm

Jumper Kabel 3 x 40 STK. je 20 cm M2M/ F2M / F2F

Breadboard MB-102, 830 Pin


Rakjuk össze egy breadboardon:

NodeMCU 8266 a hozzákapcsolt LED-del

Ennyi az egész. Nem bonyolult ugye?

A következő lépésben töltsük fel az alábbi kódot a NodeMCU 8266-ra.
Az Arduino fejlesztőkörnyezetét fogjuk használnierre a célra.

Feltételezem telepítve van az ESP8266 alaplap és a PubSubClient könyvtár.


#include <ESP8266WiFi.h>
#include <PubSubClient.h>
const char* ssid = "ssid";
const char* password = "wifi jelszo";
const char* mqtt_server = "MQTT.Szerver.IP.cime";
int Led = D8;
WiFiClient espClient;
PubSubClient client(espClient);
void setup() 
{
 WiFi.mode(WIFI_STA);
 WiFi.begin(ssid, password);
 while (WiFi.status() != WL_CONNECTED) 
 {
   delay(500);
 }
 client.setServer(mqtt_server, 1883);
 client.setCallback(callback);
 
 pinMode(Led, OUTPUT);
 digitalWrite(Led, LOW);
}
void loop() 
{
 if (!client.connected()) 
 {
   reconnect();
 }
 client.loop();
}
void reconnect() 
{
 while (!client.connected()) 
 {
   String clientId = "ESP8266TestClient";
   
   if (client.connect(clientId.c_str()))
   {
     client.subscribe("topic_neve");
   } 
   else 
   {
     delay(6000);
   }
 }
}
void callback(char* topic, byte* payload, unsigned int length) 
{
 payload[length] = '\0';
 String strTopic = String(topic);
 String strPayload = String((char * ) payload);
 
 if(strTopic == "topic_neve") 
 {
   if(strPayload == "false") 
   {
     digitalWrite(Led, LOW);
   }
   
   if(strPayload == "true") 
   {
     digitalWrite(Led, HIGH);
   }
 }
}

A LED helyett kapcsolhatunk relé modult is.

NodeMCU8266 Relével
NodeMCU8266 Relével

Ezzel a relével kapcsolhatunk hálózati feszültséggel működő eszközöket is
pl. lámpa, ventillátor, kávéfőző stb.


Figyelem!
A hálózati feszültség nem játék, halálos áramütést, tüzet okozhat! Csak a saját felelőségedre és csak ha tudod, hogy mit csinálsz!


Ha érdekel hogyan kapcsolódik az ioBrókerhez, nézd meg ezt: ioBroker és az MQTT adapter

Remélem tetszett a cikk, és hasznos információ volt a számodra.

További érdekességet itt találsz.


Ha nem valami egyszerűbbet keresel:

Shelly Plug S

Shelly Plug S

A legkisebb WiFi-csatlakozóval bárhonnan vezérelhető számos háztartási és irodai eszköz.

Hirdetés

Shelly 1 PM WiFi kapcsoló

Shelly 1 PM WiFi kapcsoló

A háztartási és irodai eszközök vezérelhetők a legkisebb WiFi-kapcsolású kapcsolókapcsolóval. Az áramfogyasztást is mérhetjük vele.

Shelly 1 wifi relé

Shelly 1 wifi relé

A Shelly ESP8266-on alapszik, egyszerűen egy aljzat vagy egy kapcsoló mögé telepíthetnek, ez nagyon megkönnyíti az intelligens otthon utólagos kiépítését.