Inhaltsverzeichnis:

NodeMCU - MQTT-Basisbeispiel: 4 Schritte
NodeMCU - MQTT-Basisbeispiel: 4 Schritte

Video: NodeMCU - MQTT-Basisbeispiel: 4 Schritte

Video: NodeMCU - MQTT-Basisbeispiel: 4 Schritte
Video: Android MQTT Tutorial - 2021 - P4: MQTT Android App Infrastructure (Basic Logic & Layout) - German 2024, Juli
Anonim
Image
Image

Diese Lektion zeigt die grundlegende Verwendung des MQTT-Protokolls auf der NodeMCU-Platine. Wir verwenden hier die MQTTBox als MQTT-Client und verwenden die NodeMCU, um die folgenden Operationen durchzuführen:

Veröffentlichen Sie alle zwei Sekunden „hello world“zum Thema „outTopic“. Abonnieren Sie das Thema „inTopic“, drucken Sie alle empfangenen Nachrichten aus Onboards-LED. Schalten Sie die Onboard-LED aus, wenn die zu abonnierende Nachricht „0“ist.

Vorbereitung: Osoyoo NodeMCU x1

USB-Kabel x1

PC x1

Arduino-IDE (Version 1.6.4+)

Verbinden Sie die NodeMCU über ein USB-Kabel mit dem PC.

Schritt 1: Bibliotheksinstallation

Bibliotheksinstallation
Bibliotheksinstallation
Bibliotheksinstallation
Bibliotheksinstallation

PubSubClientlibrary installieren

Wir müssen die MQTT-Endpunktbibliothek (PubSubClient) installieren, um mit dem MQTT-Broker zu kommunizieren. Bitte laden Sie die Bibliothek von folgendem Link herunter:

Entpacken Sie die obige Datei, verschieben Sie den entpackten Ordner in den Arduino IDE-Bibliotheksordner.

Öffnen Sie das Arduino IED, Sie finden den „Pubsubclient“in der Spalte „Beispiele“.

MQTT-Client installieren:

Wir werden die MQTTBox als MQTT-Client verwenden. bitte herunterladen von:

Schritt 2: Code

Code
Code
Code
Code

Öffnen Sie Arduino IDE -> Datei -> Beispiel -> pubsubclient -> mqtt esp8266, Sie erhalten Beispielcode.

Bearbeiten Sie den Code wie folgt, um ihn an Ihre eigenen WLAN- und MQTT-Einstellungen anzupassen: 1) Hotspot-Konfiguration: Finden Sie die folgende Codezeile, geben Sie dort Ihre eigene ssid und Ihr Passwort ein.

const char* ssid = „your_hotspot_ssid“;const char* Passwort = „your_hotspot_password“;

2) Einstellung der MQTT-Serveradresse, hier verwenden wir den kostenlosen MQTT-Broker "broker.mqtt-dashboard.com". Sie können Ihre eigene MQTT-Broker-URL oder IP-Adresse verwenden, um den Wert über mqtt_server festzulegen. Sie können auch einige berühmte kostenlose MQTT-Server verwenden, um das Projekt zu testen, z. B. „broker.mqtt-dashboard.com“, „iot.eclipse.org“usw.

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

3)MQTT-Client-EinstellungenWenn Ihr MQTT-Broker eine Client-ID, einen Benutzernamen und ein Kennwort zur Authentifizierung erfordert, müssen Sie

Veränderung

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

Zu

if (client.connect(clientId, userName, passWord)) // Geben Sie Ihre clientId/userName/passWord hier ein

Wenn nicht, behalten Sie sie einfach als Standard bei. Wählen Sie danach den entsprechenden Board-Typ und Port-Typ wie unten beschrieben aus und laden Sie dann die Skizze auf die NodeMCU hoch.

  • Platine: "NodeMCU 0.9 (ESP-12-Modul)"
  • CPU-Frequenz: „80 MHz“Flash-Größe: „4M (3M SPIFFS)“
  • Upload-Geschwindigkeit: "115200"
  • Port: Wählen Sie Ihren eigenen seriellen Port für Ihre NodeMCU

Schritt 3: MQTT-Client (MQTTBOX) konfigurieren

MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren
MQTT-Client (MQTTBOX) konfigurieren

In diesem Schritt zeigen wir, wie Sie einen MQTT-Client auf der MQTTBox erstellen.

Öffnen Sie Ihre MQTTBox und klicken Sie auf die blaue Schaltfläche, um einen neuen MQTT-Client hinzuzufügen.

Konfigurieren Sie die MQTT-CLIENT-EINSTELLUNGEN wie folgt:

  • MQTT-Clientname – Wählen Sie einen beliebigen Namen
  • Protokoll -- Wählen Sie „mqtt/tcp“
  • Host - Geben Sie Ihren "mqtt_server" in diese Spalte ein und stellen Sie sicher, dass er mit Ihrer Skizze übereinstimmt. (Wir verwenden hier "broker.mqtt-dashboard.com")
  • Behalten Sie andere Einstellungen als Standard bei
  • Klicken Sie auf, um Ihre Änderungen zu speichern.

Als nächstes werden Sie automatisch die neue Seite aufrufen. Wenn alle oben genannten Konfigurationen korrekt sind, ändert sich „Nicht verbunden“in „Verbunden“, Ihr MQTT-Clientname und Hostname werden oben auf dieser Seite angezeigt.

Themeneinstellung: Stellen Sie sicher, dass Ihr MQTT-Client-Veröffentlichungsthema mit Ihrem Arduino-Skizzen-Abonnierthema (in Thema hier) übereinstimmt. Stellen Sie sicher, dass Ihr MQTT-Client-Abonnementthema mit Ihrem Arduino-Skizzen-Veröffentlichungsthema (outTopic here) übereinstimmt.

Schritt 4: Ergebnis des Programmablaufs

Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs
Ergebnis des Programmablaufs

Sobald der Upload abgeschlossen ist, wenn der WLAN-Hotspot-Name und die Passworteinstellung in Ordnung sind und der MQTT-Broker verbunden ist, öffnen Sie den Serial Monitor. Sie sehen die Veröffentlichungsnachricht „hello world“auf dem seriellen Monitor.

Öffnen Sie dann den MQTT-Client und veröffentlichen Sie die Nutzlast „1“für das Topic, diese NodeMCU empfängt diese Nachrichten, indem sie das „inTopic“abonniert, und die LED leuchtet.

Veröffentlichen Sie die Nutzlast „0“zu diesem Thema, die NodeMCU-LED wird ausgeschaltet.

Empfohlen: