Spisu treści:

Alert-using-ThingSpeak+ESP32-Wireless-Temp-Humidity-Sensor: 7 kroków
Alert-using-ThingSpeak+ESP32-Wireless-Temp-Humidity-Sensor: 7 kroków

Wideo: Alert-using-ThingSpeak+ESP32-Wireless-Temp-Humidity-Sensor: 7 kroków

Wideo: Alert-using-ThingSpeak+ESP32-Wireless-Temp-Humidity-Sensor: 7 kroków
Wideo: IoT for Disaster Management 2024, Lipiec
Anonim
Alert-używający-ThingSpeak+ESP32-Wireless-Temp-Czujnik-wilgotności
Alert-używający-ThingSpeak+ESP32-Wireless-Temp-Czujnik-wilgotności

W tym samouczku zmierzymy różne dane temperatury i wilgotności za pomocą czujnika temperatury i wilgotności. Dowiesz się również, jak przesłać te dane do ThingSpeak. Abyś mógł utworzyć alert tymczasowy w swojej poczcie o określonej wartości

Krok 1: Wymagany sprzęt i oprogramowanie

Wymagany sprzęt i oprogramowanie
Wymagany sprzęt i oprogramowanie
Wymagany sprzęt i oprogramowanie
Wymagany sprzęt i oprogramowanie

Sprzęt komputerowy:

  • ESP-32: ESP32 ułatwia korzystanie z Arduino IDE i Arduino Wire Language w aplikacjach IoT. Ten moduł ESp32 IoT łączy Wi-Fi, Bluetooth i Bluetooth BLE dla różnorodnych zastosowań. Ten moduł jest w pełni wyposażony w 2 rdzenie procesora, które mogą być sterowane i zasilane indywidualnie, oraz z regulowaną częstotliwością taktowania od 80 MHz do 240 MHz. Ten moduł ESP32 IoT WiFi BLE ze zintegrowanym USB został zaprojektowany tak, aby pasował do wszystkich produktów ncd.io IoT. Monitoruj czujniki i przekaźniki sterujące, FET, sterowniki PWM, elektrozawory, zawory, silniki i wiele więcej z dowolnego miejsca na świecie za pomocą strony internetowej lub dedykowanego serwera. Wyprodukowaliśmy własną wersję ESP32, aby pasowała do urządzeń NCD IoT, oferując więcej opcji rozbudowy niż jakiekolwiek inne urządzenie na świecie! Zintegrowany port USB umożliwia łatwe programowanie ESP32. Moduł ESP32 IoT WiFi BLE to niesamowita platforma do tworzenia aplikacji IoT. Ten moduł ESP32 IoT WiFi BLE można zaprogramować za pomocą Arduino IDE.
  • Bezprzewodowy czujnik temperatury i wilgotności IoT dalekiego zasięgu: Przemysłowy bezprzewodowy czujnik wilgotności dalekiego zasięgu. Klasa z rozdzielczością czujnika ±1,7%RH ±0,5°C. Do 500 000 transmisji z 2 baterii AA. Mierzy od -40°C do 125°C z bateriami, które przetrwają te oceny. Doskonały 2-milowy zasięg LOS i 28 mil z antenami o wysokim zysku. Interfejs z Raspberry Pi, Microsoft Azure, Arduino i innymi.
  • Bezprzewodowy modem siatkowy dalekiego zasięgu z interfejsem USB

Używane oprogramowanie

  • IDE Arduino
  • RzeczMów
  • IFTTT

Używana biblioteka

  • Biblioteka PubSubClient
  • Drut.h

Klient Arduino dla MQTT

  • Ta biblioteka zapewnia klienta do wykonywania prostych wiadomości publikowania/subskrybowania z serwerem obsługującym MQTT
  • Aby uzyskać więcej informacji o MQTT, odwiedź stronę mqtt.org.

Pobierać

Najnowszą wersję biblioteki można pobrać z GitHub

Dokumentacja

Biblioteka zawiera szereg przykładowych szkiców. Zobacz Plik > Przykłady > PubSubClient w aplikacji Arduino. Pełna dokumentacja API

Kompatybilny sprzęt

Biblioteka wykorzystuje interfejs Arduino Ethernet Client API do interakcji z podstawowym sprzętem sieciowym. Oznacza to, że po prostu działa z coraz większą liczbą plansz i tarcz, w tym:

  • Arduino Ethernet
  • Tarcza Ethernet Arduino
  • Arduino YUN – użyj dołączonego YunClient zamiast EthernetClient i najpierw wykonaj Bridge.begin()
  • Arduino WiFi Shield - jeśli chcesz wysyłać pakiety większe niż 90 bajtów z tą tarczą, włącz opcję MQTT_MAX_TRANSFER_SIZE w PubSubClient.h.
  • SparkFun WiFly Shield – w połączeniu z tą biblioteką
  • Intel Galileo/Edison
  • ESP8266
  • ESP32Biblioteki nie można obecnie używać ze sprzętem opartym na układzie ENC28J60 – takim jak Nanode lub Nuelectronics Ethernet Shield. Dla nich dostępna jest alternatywna biblioteka.

Biblioteka przewodów

Biblioteka Wire pozwala na komunikację z urządzeniami I2C, często nazywanymi również "2 wire" lub "TWI" (Two Wire Interface), można pobrać z Wire.h

Podstawowe użycie

  • Wire.begin() Rozpocznij używanie Wire w trybie master, w którym inicjujesz i kontrolujesz transfery danych. Jest to najczęstsze zastosowanie podczas łączenia się z większością układów peryferyjnych I2C.
  • Wire.begin(address) Rozpocznij używanie Wire w trybie slave, gdzie będziesz odpowiadać na "adres", gdy inne chipy I2C masters zainicjują komunikację. Transmitting Wire.beginTransmission(address)Rozpocznij nową transmisję do urządzenia pod adresem „adres”. Używany jest tryb Master.
  • Wire.write(data)Wyślij dane. W trybie master najpierw należy wywołać beginTransmission.
  • Wire.endTransmission()W trybie master kończy transmisję i powoduje wysłanie wszystkich buforowanych danych.

Otrzymujący

  • Wire.requestFrom(address, count)Odczytaj „liczbę” bajtów z urządzenia pod adresem „adres”. Używany jest tryb Master.
  • Wire.available() Zwraca liczbę bajtów dostępnych przez wywołanie receive.
  • Wire.read() Odbierz 1 bajt.

Krok 2: Przesyłanie kodu do ESP32 za pomocą Arduino IDE

  • Przed wgraniem kodu możesz podejrzeć działanie tego czujnika pod podanym linkiem.
  • Pobierz i dołącz bibliotekę PubSubClient i bibliotekę Wire.h.
  • Musisz przypisać klucz API, SSID (Nazwa Wi-Fi) i Hasło dostępnej sieci.
  • Skompiluj i prześlij kod Temp-ThinSpeak.ino.
  • Aby zweryfikować łączność urządzenia i przesyłane dane, otwórz monitor szeregowy. Jeśli nie widać odpowiedzi, spróbuj odłączyć ESP32, a następnie podłączyć go ponownie. Upewnij się, że szybkość transmisji monitora szeregowego jest ustawiona na taką samą, jak określona w kodzie 115200.

Krok 3: Wyjście monitora szeregowego

Wyjście monitora szeregowego
Wyjście monitora szeregowego

Krok 4: WYJŚCIE

WYJŚCIE
WYJŚCIE

Krok 5: Utwórz aplet IFTTT

Utwórz aplet IFTTT
Utwórz aplet IFTTT
Utwórz aplet IFTTT
Utwórz aplet IFTTT
Utwórz aplet IFTTT
Utwórz aplet IFTTT
  • Aby przesłać dane do ThingSpeak, możesz je wyświetlić pod tym linkiem.
  • IFTTT to usługa sieciowa, która pozwala tworzyć aplety działające w odpowiedzi na inną akcję. Możesz użyć usługi IFTTT Webhooks do tworzenia żądań internetowych w celu wyzwolenia akcji. Akcja przychodząca to żądanie HTTP do serwera WWW, a akcja wychodząca to wiadomość e-mail.
  • Najpierw utwórz konto IFTTT.
  • Utwórz aplet. Wybierz Moje aplety.
  • Kliknij przycisk Nowy aplet.
  • Wybierz akcję wejściową. Kliknij słowo to.
  • Kliknij usługę Webhooki. Wpisz Webhooki w polu wyszukiwania. Wybierz webhooki.
  • Wybierz wyzwalacz.
  • Wypełnij pola wyzwalacza. Po wybraniu elementów Webhook jako wyzwalacza kliknij pole Odbierz żądanie sieci Web, aby kontynuować. Wpisz nazwę wydarzenia.
  • Utwórz wyzwalacz.
  • Teraz wyzwalacz jest tworzony, dla wynikowej akcji kliknij That.
  • Wpisz adres e-mail w pasku wyszukiwania i wybierz pole E-mail.
  • Teraz wybierz akcję. Wybierz pole Wyślij mi wiadomość e-mail, a następnie wprowadź informacje o wiadomości.
  • Pobierz informacje o wyzwalaczach webhooków. Wybierz Moje aplety, usługi i wyszukaj webhooki. Kliknij przycisk Webhooks i dokumentacja. Widzisz swój klucz i format wysyłania prośby. Wpisz nazwę wydarzenia. Nazwa zdarzenia w tym przykładzie to Vibration And TempData. Możesz przetestować usługę za pomocą przycisku testowego lub wklejając adres URL do swojej przeglądarki.

Krok 6: Utwórz kontrolę czasu, aby przeprowadzić analizę

Utwórz kontrolę czasu, aby przeprowadzić analizę
Utwórz kontrolę czasu, aby przeprowadzić analizę
Utwórz kontrolę czasu, aby przeprowadzić analizę
Utwórz kontrolę czasu, aby przeprowadzić analizę
Utwórz kontrolę czasu, aby przeprowadzić analizę
Utwórz kontrolę czasu, aby przeprowadzić analizę

Oceń dane swojego kanału ThingSpeak i wywołaj inne zdarzenia.

  • Kliknij Aplikacje, TimeControl, a następnie kliknij New TimeControl.
  • Oszczędzaj swoją kontrolę czasu.

Zalecana: