Inhaltsverzeichnis:

Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor - Gunook
Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor - Gunook

Video: Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor - Gunook

Video: Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor - Gunook
Video: Game Changer: DIY Soil Sensor for Home Assistant Integration #garden #homeassistant #diy 2024, November
Anonim
Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor
Alert-using-ThingSpeak+ESP32-Wireless-Temp-Feuchtigkeitssensor

In diesem Tutorial werden wir verschiedene Temperatur- und Feuchtigkeitsdaten mit dem Temperatur- und Feuchtigkeitssensor messen. Außerdem erfahren Sie, wie Sie diese Daten an ThingSpeak senden. Damit Sie einen temporären Alert in Ihrer E-Mail zu einem bestimmten Wert erstellen können

Schritt 1: Hardware und Software erforderlich

Erforderliche Hardware und Software
Erforderliche Hardware und Software
Erforderliche Hardware und Software
Erforderliche Hardware und Software

Hardware:

  • ESP-32: Der ESP32 macht es einfach, die Arduino IDE und die Arduino Wire Language für IoT-Anwendungen zu verwenden. Dieses ESp32 IoT-Modul kombiniert Wi-Fi, Bluetooth und Bluetooth BLE für eine Vielzahl unterschiedlicher Anwendungen. Dieses Modul ist voll ausgestattet mit 2 CPU-Kernen, die einzeln angesteuert und mit Strom versorgt werden können, und mit einer einstellbaren Taktfrequenz von 80 MHz bis 240 MHz. Dieses ESP32 IoT WiFi BLE-Modul mit integriertem USB ist so konzipiert, dass es in alle ncd.io IoT-Produkte passt. Überwachen Sie Sensoren und steuern Sie Relais, FETs, PWM-Controller, Magnetspulen, Ventile, Motoren und vieles mehr von überall auf der Welt mit einer Webseite oder einem dedizierten Server. Wir haben unsere eigene Version des ESP32 hergestellt, die in NCD-IoT-Geräte passt und mehr Erweiterungsmöglichkeiten bietet als jedes andere Gerät der Welt! Ein integrierter USB-Port ermöglicht eine einfache Programmierung des ESP32. Das ESP32 IoT WiFi BLE-Modul ist eine unglaubliche Plattform für die Entwicklung von IoT-Anwendungen. Dieses ESP32 IoT WiFi BLE Modul kann mit der Arduino IDE programmiert werden.
  • IoT Long Range Wireless Temperatur- und Feuchtigkeitssensor: Industrieller Long Range Wireless Temperatur-Feuchtesensor. Grad mit einer Sensorauflösung von ±1,7%RH ±0,5°C. Bis zu 500.000 Übertragungen von 2 AA-Batterien. Misst -40 °C bis 125 °C mit Batterien, die diese Werte überstehen. Überlegene 2-Meilen-LOS-Reichweite und 28 Meilen mit High-Gain-Antennen. Schnittstelle zu Raspberry Pi, Microsoft Azure, Arduino und mehr.
  • Drahtloses Mesh-Modem mit großer Reichweite und USB-Schnittstelle

Verwendete Software

  • Arduino-IDE
  • ThingSpeak
  • IFTTT

Bibliothek verwendet

  • PubSubClient-Bibliothek
  • Wire.h

Arduino-Client für MQTT

  • Diese Bibliothek bietet einen Client für einfaches Publish/Subscribe-Messaging mit einem Server, der MQTT. unterstützt
  • Weitere Informationen zu MQTT finden Sie unter mqtt.org.

Herunterladen

Die neueste Version der Bibliothek kann von GitHub heruntergeladen werden

Dokumentation

Die Bibliothek enthält eine Reihe von Beispielskizzen. Siehe Datei > Beispiele > PubSubClient in der Arduino-Anwendung. Vollständige API-Dokumentation

Kompatible Hardware

Die Bibliothek verwendet die Arduino Ethernet Client API für die Interaktion mit der zugrunde liegenden Netzwerkhardware. Dies bedeutet, dass es mit einer wachsenden Anzahl von Boards und Shields funktioniert, einschließlich:

  • Arduino-Ethernet
  • Arduino Ethernet-Shield
  • Arduino YUN – verwenden Sie den mitgelieferten YunClient anstelle von EthernetClient und stellen Sie sicher, dass Sie zuerst Bridge.begin() ausführen
  • Arduino WiFi Shield - Wenn Sie mit diesem Shield Pakete mit mehr als 90 Byte senden möchten, aktivieren Sie die Option MQTT_MAX_TRANSFER_SIZE in PubSubClient.h.
  • SparkFun WiFly Shield – bei Verwendung mit dieser Bibliothek
  • Intel Galileo/Edison
  • ESP8266
  • ESP32Die Bibliothek kann derzeit nicht mit Hardware verwendet werden, die auf dem ENC28J60-Chip basiert – wie dem Nanode oder dem Nuelectronics Ethernet Shield. Für diese steht eine alternative Bibliothek zur Verfügung.

Drahtbibliothek

Die Wire-Bibliothek ermöglicht die Kommunikation mit I2C-Geräten, oft auch "2 Wire" oder "TWI" (Two Wire Interface) genannt, kann von Wire.h. heruntergeladen werden

Grundlegende Verwendung

  • Wire.begin() Beginnen Sie mit der Verwendung von Wire im Master-Modus, in dem Sie Datenübertragungen initiieren und steuern. Dies ist die häufigste Verwendung bei der Verbindung mit den meisten I2C-Peripheriechips.
  • Wire.begin(address)Beginn mit Wire im Slave-Modus, wo Sie bei "Adresse" antworten, wenn andere I2C-Master-Chips die Kommunikation initiieren. Senden Wire.beginTransmission(address)Starten Sie eine neue Übertragung an ein Gerät unter "Adresse". Der Master-Modus wird verwendet.
  • Wire.write(data)Daten senden. Im Master-Modus muss zuerst beginTransmission aufgerufen werden.
  • Wire.endTransmission() Im Master-Modus beendet dies die Übertragung und bewirkt, dass alle gepufferten Daten gesendet werden.

Empfang

  • Wire.requestFrom(address, count)Lesen Sie "count" Bytes von einem Gerät an "address". Der Master-Modus wird verwendet.
  • Wire.available() Gibt die Anzahl der Bytes zurück, die durch den Aufruf von receive verfügbar sind.
  • Wire.read() 1 Byte empfangen.

Schritt 2: Hochladen des Codes auf ESP32 mit Arduino IDE

  • Vor dem Hochladen des Codes können Sie die Funktionsweise dieses Sensors unter einem bestimmten Link anzeigen.
  • Laden Sie die PubSubClient-Bibliothek und die Wire.h-Bibliothek herunter und binden Sie sie ein.
  • Sie müssen Ihren API-Schlüssel, SSID (WiFi-Name) und das Passwort des verfügbaren Netzwerks zuweisen.
  • Kompilieren Sie den Temp-ThinSpeak.ino-Code und laden Sie ihn hoch.
  • Um die Konnektivität des Geräts und die gesendeten Daten zu überprüfen, öffnen Sie den seriellen Monitor. Wenn keine Antwort angezeigt wird, versuchen Sie, Ihren ESP32 zu trennen und dann erneut anzuschließen. Stellen Sie sicher, dass die Baudrate des seriellen Monitors auf die gleiche eingestellt ist, die in Ihrem Code 115200 angegeben ist.

Schritt 3: Serieller Monitorausgang

Serieller Monitorausgang
Serieller Monitorausgang

Schritt 4: AUSGANG

AUSGANG
AUSGANG

Schritt 5: Erstellen Sie ein IFTTT-Applet

Erstellen Sie ein IFTTT-Applet
Erstellen Sie ein IFTTT-Applet
Erstellen Sie ein IFTTT-Applet
Erstellen Sie ein IFTTT-Applet
Erstellen Sie ein IFTTT-Applet
Erstellen Sie ein IFTTT-Applet
  • Um Daten an ThingSpeak zu senden, können Sie diese unter diesem Link anzeigen.
  • IFTTT ist ein Webdienst, mit dem Sie Applets erstellen können, die als Reaktion auf eine andere Aktion agieren. Sie können den IFTTT-Webhooks-Dienst verwenden, um Webanforderungen zu erstellen, um eine Aktion auszulösen. Die eingehende Aktion ist eine HTTP-Anfrage an den Webserver und die ausgehende Aktion ist eine E-Mail-Nachricht.
  • Erstellen Sie zunächst ein IFTTT-Konto.
  • Erstellen Sie ein Applet. Wählen Sie Meine Applets aus.
  • Klicken Sie auf die Schaltfläche Neues Applet.
  • Wählen Sie die Eingabeaktion aus. Klicken Sie auf das Wort dies.
  • Klicken Sie auf den Webhooks-Dienst. Geben Sie Webhooks in das Suchfeld ein. Wählen Sie die Webhooks aus.
  • Wählen Sie einen Auslöser.
  • Füllen Sie die Triggerfelder aus. Nachdem Sie Webhooks als Auslöser ausgewählt haben, klicken Sie auf das Feld Webanfrage empfangen, um fortzufahren. Geben Sie einen Ereignisnamen ein.
  • Auslöser erstellen.
  • Jetzt wird der Trigger erstellt, für die resultierende Aktion klicken Sie auf That.
  • Geben Sie E-Mail in die Suchleiste ein und wählen Sie das Feld E-Mail aus.
  • Wählen Sie nun Aktion. Wählen Sie das Feld Senden Sie mir eine E-Mail aus und geben Sie dann die Nachrichteninformationen ein.
  • Rufen Sie Ihre Webhooks-Trigger-Informationen ab. Wählen Sie Meine Applets, Dienste und suchen Sie nach Webhooks. Klicken Sie auf die Schaltfläche Webhooks und Dokumentation. Sie sehen Ihren Schlüssel und das Format zum Senden einer Anfrage. Geben Sie den Ereignisnamen ein. Der Ereignisname für dieses Beispiel ist Vibration And TempData. Sie können den Dienst mit der Testschaltfläche testen oder die URL in Ihren Browser einfügen.

Schritt 6: Erstellen Sie eine Zeitsteuerung zum Ausführen Ihrer Analyse

Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen
Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen
Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen
Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen
Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen
Erstellen Sie eine Zeitsteuerung, um Ihre Analyse auszuführen

Werten Sie Ihre ThingSpeak-Kanaldaten aus und lösen Sie andere Ereignisse aus.

  • Klicken Sie auf Apps, TimeControl, und klicken Sie dann auf New TimeControl.
  • Speichern Sie Ihre TimeControl.

Empfohlen: