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
Rakjuk össze egy breadboardon:
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.
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:
A legkisebb WiFi-csatlakozóval bárhonnan vezérelhető számos háztartási és irodai eszköz.
Hirdetés
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.
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.