
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02



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
- NodeMCU ESP8266 (lub) dowolna inna ogólna płyta ESP8266
- Rejestracja Ubidot
- Biblioteka wspierająca z GitHub.
- Arduino IDE do wgrania kodu.
Krok 1: Wstępna konfiguracja Arduino IDE




- Pobierz bibliotekę UbidotsMQTTESP8266 z repozytorium GIT
- Otwórz Arduino IDE, przejdź do „preferencji” z menu „plik”.
- 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ć.
- Przejdź do „Dodaj bibliotekę ZIP” z menu „Szkic > Dołącz bibliotekę” i wskaż ścieżkę do pobranego pliku zip.
- Poczekaj, aż IDE otrzyma komunikat: Biblioteka dodana do twoich bibliotek. Sprawdź menu „Dołącz bibliotekę”.
- Przejdź do „Dołącz bibliotekę” z „Szkic” i sprawdź „Ubidots MQTT dla ESP8266”
Krok 2: 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.


#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.



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.

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:
Jak podłączyć NodeMCU ESP8266 do bazy danych MySQL: 7 kroków

Jak połączyć NodeMCU ESP8266 z bazą danych MySQL: MySQL to szeroko stosowany system zarządzania relacyjnymi bazami danych (RDBMS), który wykorzystuje ustrukturyzowany język zapytań (SQL). W pewnym momencie możesz chcieć przesłać dane czujnika Arduino/NodeMCU do bazy danych MySQL. W tej instrukcji zobaczymy, jak się połączyć
NodeMcu ESP8266 Pierwsza konfiguracja z Arduino IDE: 10 kroków

NodeMcu ESP8266 Pierwsza konfiguracja z Arduino IDE: tworzę urządzenia kontrolowane przez Twitch; niestandardowe konsole, kontrolery i inne nowatorskie rozwiązania! Transmisje na żywo odbywają się w każdą środę i sobotę o 21:00 czasu wschodniego na https://www.twitch.tv/noycebru, najciekawsze momenty na TikTok @noycebru, a samouczki można oglądać na YouT
Wyświetlacz czujnika CO2 Plug & Play z NodeMCU/ESP8266 dla szkół, przedszkoli lub domu: 7 kroków

Wyświetlacz czujnika CO2 Plug & Play z NodeMCU/ESP8266 dla szkół, przedszkoli lub domu: pokażę ci, jak szybko zbudować wtyczkę i wzmacniacz; Odtwórz czujnik CO2, w którym wszystkie elementy projektu zostaną połączone przewodami DuPont. Będzie tylko 5 punktów, które trzeba wlutować, bo przed tym projektem w ogóle nie lutowałem
Pobieranie czasu z Internetu za pomocą ESP8266 - Projekt zegara NTP z ESP8266 Nodemcu: 5 kroków

Pobieranie czasu z Internetu za pomocą ESP8266 | Projekt zegara NTP z ESP8266 Nodemcu: W tym samouczku zobaczymy, jak uzyskać czas za pomocą ESP8266/nodemcu z Arduino IDE. Uzyskanie czasu jest szczególnie przydatne w rejestrowaniu danych w celu oznaczenia czasu odczytów. Jeśli Twój projekt ESP8266 ma dostęp do Internetu, możesz uzyskać czas za pomocą Network T
ESP8266 NODEMCU BLYNK IOT samouczek - Esp8266 IOT przy użyciu Blunk i Arduino IDE - Sterowanie diodami LED przez Internet: 6 kroków

ESP8266 NODEMCU BLYNK IOT samouczek | Esp8266 IOT przy użyciu Blunk i Arduino IDE | Sterowanie diodami LED przez Internet: Cześć, w tej instrukcji dowiemy się, jak korzystać z IOT z naszym ESP8266 lub Nodemcu. Użyjemy do tego aplikacji blynk. Więc użyjemy naszego esp8266 / nodemcu do sterowania diodami LED przez Internet. Więc aplikacja Blynk zostanie połączona z naszym esp8266 lub Nodemcu