Spisu treści:

NodeMCU ESP8266 - MQTT - Ubidots: 5 kroków
NodeMCU ESP8266 - MQTT - Ubidots: 5 kroków

Wideo: NodeMCU ESP8266 - MQTT - Ubidots: 5 kroków

Wideo: NodeMCU ESP8266 - MQTT - Ubidots: 5 kroków
Wideo: MQTT on ESP32 | Controlling Appliances and Monitoring Sensor on Ubidots | ESP32 Projects 2024, Lipiec
Anonim
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots

MQTT to standardowy protokół przesyłania wiadomości OASIS dla Internetu rzeczy (IoT). Został zaprojektowany jako niezwykle lekki transport komunikatów publikowania/subskrybowania, który jest idealny do łączenia zdalnych urządzeń o niewielkiej ilości kodu i minimalnej przepustowości sieci. MQTT jest dziś używany w wielu gałęziach przemysłu, takich jak motoryzacja, produkcja, telekomunikacja, ropa i gaz itp.

Dlaczego MQTT: Klienci MQTT są bardzo małe, wymagają minimalnych zasobów, więc mogą być używane na małych mikrokontrolerach. Nagłówki wiadomości MQTT są małe, aby zoptymalizować przepustowość sieci.

Komunikacja dwukierunkowa: MQTT umożliwia przesyłanie wiadomości między urządzeniem a chmurą i chmurą do urządzenia. Ułatwia to rozgłaszanie wiadomości do grup rzeczy.

Skaluj do milionów rzeczy: MQTT można skalować, aby łączyć się z milionami urządzeń IoT.

Niezawodność dostarczania wiadomości: Jest to ważne w wielu przypadkach użycia Internetu Rzeczy. Dlatego MQTT ma 3 zdefiniowane poziomy jakości usług:

  • 0 - najwyżej raz,
  • 1- przynajmniej raz,
  • 2 - dokładnie raz

Obsługa zawodnych sieci: Wiele urządzeń IoT łączy się przez zawodne sieci komórkowe. Obsługa przez MQTT trwałych sesji skraca czas ponownego połączenia klienta z brokerem.

Włączone zabezpieczenia: MQTT ułatwia szyfrowanie wiadomości przy użyciu TLS i uwierzytelnianie klientów przy użyciu nowoczesnych protokołów uwierzytelniania, takich jak OAuth.

Kieszonkowe dzieci

  1. NodeMCU ESP8266 (lub) dowolna inna ogólna płyta ESP8266
  2. Rejestracja Ubidot
  3. Biblioteka wspierająca z GitHub.
  4. Arduino IDE do wgrania kodu.

Krok 1: Wstępna konfiguracja Arduino IDE

Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
Wstępna konfiguracja Arduino IDE
  1. Pobierz bibliotekę UbidotsMQTTESP8266 z repozytorium GIT
  2. Otwórz Arduino IDE, przejdź do „preferencji” z menu „plik”.
  3. W polu tekstowym „Additional Boards Manager URLs” wklej następujący wpis: https://arduino.esp8266.com/stable/package_esp8266… i naciśnij OK, aby kontynuować.
  4. Przejdź do „Dodaj bibliotekę ZIP” z menu „Szkic > Dołącz bibliotekę” i wskaż ścieżkę do pobranego pliku zip.
  5. Poczekaj, aż IDE otrzyma komunikat: Biblioteka dodana do twoich bibliotek. Sprawdź menu „Dołącz bibliotekę”.
  6. Przejdź do „Dołącz bibliotekę” z „Szkic” i sprawdź „Ubidots MQTT dla ESP8266”

Krok 2: Poświadczenia API Ubidots

Poświadczenia API Ubidots
Poświadczenia API Ubidots
Poświadczenia API Ubidots
Poświadczenia API Ubidots
Poświadczenia API Ubidots
Poświadczenia API Ubidots

Zaloguj się do Ubidots i zanotuj poświadczenia API. Pamiętaj, że będziemy potrzebować tylko wartości „Domyślnego tokena”.

Krok 3: Kodeks.

Kod.
Kod.
Kod.
Kod.

#include "UbidotsESPMQTT.h"

#define TOKEN "************************************************** ***" // Twoje Ubidots TOKEN

#define NAZWA WIFI "**********" //Twój identyfikator SSID

#define WIFIPASS „******************” // Twoja karta Wi-Fi

Klient Ubidots (TOKEN);

void callback(char* temat, bajt* ładunku, unsigned int length)

{

Serial.print("Wiadomość dotarła [");

Serial.print(temat);

Serial.print("]");

for (int i=0; i<długość; i++)

{

Serial.print((char)payload);

}

pusta konfiguracja()

{

klient.setDebug(prawda);

Serial.początek(115200);

client.wifiConnection(WIFINAME, WIFIPASS);

klient.początek(odwołanie zwrotne);

}

pusta pętla()

{

if(!klient.podłączony())

{

klient.reconnect();

}

wartość zmiennoprzecinkowa1 = odczyt analogowy(A0);

client.add("temperatura", wartość1);

client.ubidotsPublish("moje-nowe-urządzenie");

klient.pętla();

}

Uwaga: zapoznaj się ze zrzutami ekranu, aby uzyskać lepsze wcięcia linii.

Krok 4: Połącz, skompiluj i prześlij kod.

Połącz, skompiluj i prześlij kod.
Połącz, skompiluj i prześlij kod.
Połącz, skompiluj i prześlij kod.
Połącz, skompiluj i prześlij kod.
Połącz, skompiluj i prześlij kod.
Połącz, skompiluj i prześlij kod.

Nie czas na podłączenie NodeMCU ESP8266 do komputera/laptopa, zidentyfikowanie jego portu, skompilowanie i przesłanie kodu.

Proszę wziąć niezbędną pomoc z załączonych zrzutów ekranu, aby lepiej zrozumieć proces, jeśli jesteś nowy w Arduino IDE.

Krok 5: Końcowa kontrola.

Ostateczna kontrola.
Ostateczna kontrola.

Jeśli wszystko pójdzie dobrze, powinieneś być w stanie zaobserwować podobnie jak na zrzucie ekranu.

Ten wiersz w kodzie "client.ubidotsPublish("moje-nowe-urządzenie");" zostanie opublikowany.

Uwaga: Jeśli nic nie jest wyświetlane na pulpicie nawigacyjnym Ubodots, zaleca się odłączenie i ponowne połączenie NodeMCU.

Bądźcie na bieżąco. Próbuję opublikować jeszcze kilka z Ubidots & NodeMCU ESP8266.

Zalecana: