İçindekiler:

NodeMCU - MQTT Temel Örneği: 4 Adım
NodeMCU - MQTT Temel Örneği: 4 Adım

Video: NodeMCU - MQTT Temel Örneği: 4 Adım

Video: NodeMCU - MQTT Temel Örneği: 4 Adım
Video: Akıllı Ev Kuruyoruz-4 Home Assistant ve MQTT Kullanımı 2024, Temmuz
Anonim
Image
Image

Bu ders, NodeMCU panosunda temel MQTT protokol kullanımını gösterecektir. Burada MQTT istemcisi olarak MQTTBox kullanıyoruz ve aşağıdaki işlemleri tamamlamak için NodeMCU'yu kullanacağız:

Her iki saniyede bir "outTopic" konusuna "merhaba dünya" yayınlayın. "inTopic" konusuna abone olun, alınan mesajları yazdırın. Alınan yüklerin ikili değil dizeler olduğunu varsayar. Abone olunan mesaj "1" ise, ışığı yakın onboards LED'i. Abone olun mesajı “0” ise onboard LED'ini kapatın.

Hazırlık:Osoyoo NodeMCU x1

USB Kablosu x1

bilgisayar x1

Arduino IDE(Sürüm 1.6.4+)

NodeMCU'yu USB kablosuyla PC'ye bağlayın.

Adım 1: Kütüphane Kurulumu

Kütüphane Kurulumu
Kütüphane Kurulumu
Kütüphane Kurulumu
Kütüphane Kurulumu

PubSubClientlibrary'yi yükleyin

MQTT komisyoncusu ile iletişim kurmak için MQTT uç nokta kitaplığını (PubSubClient) kurmamız gerekiyor, lütfen kitaplığı aşağıdaki bağlantıdan indirin:

Yukarıdaki dosyayı açın, açılmış klasörü Arduino IDE kitaplık klasörüne taşıyın.

Arduino IED'yi açın, "pubsubclient" ı "Örnekler" sütununda bulabilirsiniz.

MQTT İstemcisini kurun:

MQTTBox'ı MQTT istemcisi olarak kullanacağız. lütfen şu adresten indirin:

2. Adım: Kodlayın

kod
kod
kod
kod

Arduino IDE–>File–>Örnek–>pubsubclient–>mqtt esp8266'yı açın, örnek kod alacaksınız.

Kodu, kendi WiFi ve MQTT ayarlarınıza uyacak şekilde aşağıdaki işlemler gibi düzenleyin: 1)Hotspot Konfigürasyonu: Aşağıdaki kod satırını bulun, kendi ssid'nizi ve şifrenizi buraya girin.

const char* ssid = “your_hotspot_ssid”;const char* şifre = “your_hotspot_password”;

2)MQTT Sunucu Adres Ayarı, burada ücretsiz MQTT aracısı "broker.mqtt-dashboard.com" kullanıyoruz. Mqtt_server değerinin üzerine ayarlamak için kendi MQTT aracı URL'nizi veya IP adresinizi kullanabilirsiniz. Projeyi test etmek için “broker.mqtt-dashboard.com”, “iot.eclipse.org” vb. gibi bazı ünlü ücretsiz MQTT sunucularını da kullanabilirsiniz.

const char* mqtt_server = “broker.mqtt-dashboard.com”;

3)MQTT İstemci AyarlarıMQTT aracınız istemci kimliği, kullanıcı adı ve parola kimlik doğrulaması gerektiriyorsa, değiştirmek

if (client.connect(clientId.c_str()))

NS

if (client.connect(clientId, userName, passWord)) //clientId/userName/passWord'unuzu buraya yazın

Değilse, onları varsayılan olarak tutun. Bunu yaptıktan sonra, aşağıdaki gibi ilgili kart tipini ve bağlantı noktası tipini seçin, ardından çizimi NodeMCU'ya yükleyin.

  • Anakart:”NodeMCU 0.9(ESP-12 Modülü)”
  • CPU Frekansı:”80MHz”Flaş Boyutu:”4M (3M SPIFFS)”
  • Yükleme Hızı:”115200″
  • Bağlantı Noktası: NodeMCU'nuz için kendi Seri Bağlantı Noktanızı seçin

Adım 3: MQTT İstemcisini (MQTTBOX) Yapılandırın

MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)
MQTT İstemcisini Yapılandırma (MQTTBOX)

Bu adımda, MQTTBox üzerinde bir MQTT istemcisinin nasıl oluşturulacağını göstereceğiz.

MQTTBox'ınızı açın ve yeni bir MQTT istemcisi eklemek için mavi düğmeye tıklayın.

MQTT İSTEMCİ AYARLARINI aşağıdaki gibi yapılandırın:

  • MQTT İstemci Adı -- İstediğiniz herhangi bir adı seçin
  • Protokol -- "mqtt/tcp"yi seçin
  • Ana Bilgisayar - Bu sütuna “mqtt_server”ınızı yazın, taslağınızla aynı olduğundan emin olun.(Burada “broker.mqtt-dashboard.com” kullanıyoruz)
  • Diğer ayarları varsayılan olarak tut
  • Değişikliklerinizi kaydetmek için tıklayın.

Ardından, otomatik olarak yeni sayfaya gireceksiniz. Yukarıdaki tüm yapılandırmalar doğruysa, "Bağlı Değil", "Bağlı" olarak değişecektir, MQTT istemci adınız ve Ana Bilgisayar adınız bu sayfanın üstünde görüntülenecektir.

Konu ayarı: MQTT istemcinizin yayınlama konusunun Arduino taslak aboneliğinizle (buradaki Konudaki) aynı olduğundan emin olun. MQTT istemcinizin abone olma konusunun, Arduino eskiz yayınlama konusuyla (buradan konu dışı) aynı olduğundan emin olun.

Adım 4: Program Çalıştırma Sonucu

Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu
Program Çalıştırma Sonucu

Yükleme tamamlandıktan sonra, wifi erişim noktası adı ve şifre ayarı uygunsa ve MQTT aracısı bağlıysa, Seri Monitörü açın, seri monitörde “merhaba dünya” yayın mesajını göreceksiniz.

Ardından MQTT istemcisini açın ve konuya “1” payload yayınlayın, bu NodeMCU “inTopic”e abone olarak bu mesajları alacak ve LED yanacaktır.

Bu konuya “0” yükü yayınlayın, NodeMCU LED'i kapanacaktır.

Önerilen: