Sommario:
- Passaggio 1: hardware e software necessari
- Passaggio 2: caricamento del codice su ESP32 utilizzando l'IDE di Arduino
- Passaggio 3: uscita monitor seriale
- Passaggio 4: uscita
- Passaggio 5: creare un'applet IFTTT
- Passaggio 6: crea un'analisi MATLAB
- Passaggio 7: crea un controllo temporale per eseguire l'analisi
Video: ThingSpeak, IFTTT, sensore di temperatura e umidità e foglio Google: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
In questo progetto, misureremo la temperatura e l'umidità utilizzando il sensore di temperatura e umidità NCD, ESP32 e ThingSpeak. Invieremo anche diverse letture di temperatura e umidità a Google Sheet utilizzando ThingSpeak e IFTTT per analizzare i dati del sensore
Passaggio 1: hardware e software necessari
Hardware:
- ESP-32: ESP32 semplifica l'utilizzo dell'IDE Arduino e dell'Arduino Wire Language per le applicazioni IoT. Questo modulo IoT ESP32 combina Wi-Fi, Bluetooth e Bluetooth BLE per una varietà di applicazioni diverse. Questo modulo è dotato di 2 core CPU che possono essere controllati e alimentati individualmente e con una frequenza di clock regolabile da 80 MHz a 240 MHz. Questo modulo ESP32 IoT WiFi BLE con USB integrato è progettato per adattarsi a tutti i prodotti IoT ncd.io. Monitora sensori e relè di controllo, FET, controller PWM, solenoidi, valvole, motori e molto altro da qualsiasi parte del mondo utilizzando una pagina Web o un server dedicato. Abbiamo prodotto la nostra versione di ESP32 per adattarsi ai dispositivi NCD IoT, offrendo più opzioni di espansione rispetto a qualsiasi altro dispositivo al mondo! Una porta USB integrata consente una facile programmazione dell'ESP32. Il modulo ESP32 IoT WiFi BLE è un'incredibile piattaforma per lo sviluppo di applicazioni IoT. Questo modulo ESP32 IoT WiFi BLE può essere programmato utilizzando l'IDE Arduino.
- Sensore di temperatura e umidità wireless a lungo raggio IoT: sensore di umidità wireless a lungo raggio industriale. Grado con una risoluzione del sensore di ±1,7%UR ±0,5°C. Fino a 500.000 trasmissioni da 2 batterie AA. Misura da -40 °C a 125 °C con batterie che sopravvivono a queste valutazioni. Portata LOS di 2 miglia superiore e 28 miglia con antenne ad alto guadagno. Interfaccia con Raspberry Pi, Microsoft Azure, Arduino e altro.
- Modem wireless mesh a lungo raggio con interfaccia USB
Software utilizzato
- Arduino IDE
- CosaParla
- IFTTT
Libreria utilizzata
- Libreria PubSubClient
- Filo.h
Client Arduino per MQTT
Questa libreria fornisce un client per eseguire semplici messaggi di pubblicazione/sottoscrizione con un server che supporta MQTT Per ulteriori informazioni su MQTT, visitare mqtt.org.
Scarica
L'ultima versione della libreria può essere scaricata da GitHub
Documentazione
La libreria viene fornita con una serie di schizzi di esempio. Vedi File > Esempi > PubSubClient all'interno dell'applicazione Arduino. Documentazione API completa
Hardware compatibile
La libreria utilizza l'API Arduino Ethernet Client per interagire con l'hardware di rete sottostante. Ciò significa che funziona solo con un numero crescente di schede e scudi, tra cui:
- Arduino Ethernet
- Scudo Ethernet Arduino
- Arduino YUN – usa lo YunClient incluso al posto di EthernetClient e assicurati di fare un Bridge.begin() prima Arduino WiFi Shield - se vuoi inviare pacchetti maggiori di 90 byte con questo shield, abilita l'opzione MQTT_MAX_TRANSFER_SIZE in PubSubClient.h.
- SparkFun WiFly Shield – se utilizzato con questa libreria
- Intel Galileo/Edison
- ESP8266
- ESP32 La libreria non può essere attualmente utilizzata con hardware basato sul chip ENC28J60, come il Nanode o Nuelectronics Ethernet Shield. Per quelli, è disponibile una libreria alternativa.
Libreria di fili
La libreria Wire permette di comunicare con dispositivi I2C, spesso chiamati anche "2 wire" o "TWI" (Two Wire Interface), scaricabili da Wire.h
Utilizzo di base
- Wire.begin() Inizia a utilizzare Wire in modalità master, dove avvierai e controllerai i trasferimenti di dati. Questo è l'uso più comune quando si interfaccia con la maggior parte dei chip periferici I2C.
- Wire.begin(address)Inizia a utilizzare Wire in modalità slave, dove risponderai a "address" quando altri chip master I2C iniziano la comunicazione. Trasmissione Wire.beginTransmission(address) Avvia una nuova trasmissione a un dispositivo a "address". Viene utilizzata la modalità principale.
- Wire.write(data)Invia dati. In modalità master, deve essere chiamato prima beginTransmission.
- Wire.endTransmission() In modalità master, ciò termina la trasmissione e fa sì che tutti i dati memorizzati nel buffer vengano inviati.
Ricezione
- Wire.requestFrom(address, count)Legge "count" byte da un dispositivo in "address". Viene utilizzata la modalità principale.
- Wire.available() Restituisce il numero di byte disponibili chiamando la ricezione.
- Wire.read() Ricevi 1 byte.
Passaggio 2: caricamento del codice su ESP32 utilizzando l'IDE di Arduino
- Prima di caricare il codice è possibile visionare il funzionamento di questo sensore ad un determinato link.
- Scarica e includi la libreria PubSubClient e la libreria Wire.h.
- Devi assegnare la tua chiave API, SSID (Nome WiFi) e Password della rete disponibile.
- Compila e carica il codice Temp-ThinSpeak.ino.
- Per verificare la connettività del dispositivo e i dati inviati, aprire il monitor seriale. Se non viene visualizzata alcuna risposta, prova a scollegare ESP32 e quindi a ricollegarlo. Assicurati che il baud rate del monitor seriale sia lo stesso specificato nel codice 115200.
Passaggio 3: uscita monitor seriale
Passaggio 4: uscita
Passaggio 5: creare un'applet IFTTT
- Per inviare dati a ThingSpeak puoi visualizzarli a questo link.
- IFTTT è un servizio Web che consente di creare applet che agiscono in risposta a un'altra azione. È possibile utilizzare il servizio IFTTT Webhooks per creare richieste Web per attivare un'azione. L'azione in entrata è una richiesta HTTP al server web e l'azione in uscita è un messaggio di posta elettronica.
- Innanzitutto, crea un account IFTTT.
- Crea un'applet. Seleziona Le mie applet.
- Fare clic sul pulsante Nuova applet.
- Seleziona l'azione di input. Fare clic sulla parola questo.
- Fare clic sul servizio Webhook. Inserisci Webhook nel campo di ricerca. Seleziona i webhook.
- Scegli un attivatore.
- Completa i campi di attivazione. Dopo aver selezionato Webhook come trigger, fare clic sulla casella Ricevi una richiesta Web per continuare. Inserisci un nome per l'evento.
- Crea attivatore.
- Ora il trigger è stato creato, per l'azione risultante fai clic su Quello.
- Inserisci "Fogli Google" nella barra di ricerca e seleziona la casella "Fogli Google".
- Se non ti sei connesso a Google Sheet, collegalo prima. Ora scegli l'azione. Seleziona aggiungi una riga a un foglio di lavoro.
- Quindi, completa i campi azione.
- La tua applet dovrebbe essere creata dopo aver premuto Fine.
- Recupera le informazioni sui trigger di Webhook. Seleziona I miei applet, Servizi e cerca Webhook. Fare clic sul pulsante Webhook e documentazione. Vedi la tua chiave e il formato per l'invio di una richiesta. Inserisci il nome dell'evento. Il nome dell'evento per questo esempio è VibrationAndTempData. Puoi testare il servizio utilizzando il pulsante di prova o incollando l'URL nel browser.
Passaggio 6: crea un'analisi MATLAB
Puoi utilizzare il risultato della tua analisi per attivare richieste web, come scrivere un trigger su IFTTT.
- Fare clic su App, Analisi MATLAB e selezionare Nuovo.
- Seleziona Trigger Email from IFTTT nella sezione Esempi. Il codice seguente è precompilato nella finestra di analisi di MATLAB.
- Assegna un nome alla tua analisi e modifica il codice.
- Salva la tua analisi MATLAB.
Passaggio 7: crea un controllo temporale per eseguire l'analisi
Valuta i dati del tuo canale ThingSpeak e attiva altri eventi.
- Fare clic su App, TimeControl e quindi su Nuovo TimeControl.
- Risparmia il tuo controllo del tempo.
Consigliato:
Sensore di temperatura e umidità ad energia solare Arduino come sensore Oregon da 433 mhz: 6 passaggi
Sensore di temperatura e umidità ad energia solare Arduino come sensore Oregon da 433 mhz: questa è la costruzione di un sensore di temperatura e umidità ad energia solare. Il sensore emula un sensore Oregon da 433 mhz ed è visibile nel gateway Telldus Net. Cosa ti serve: 1 x "10 LED Sensore di movimento a energia solare" da Ebay. Assicurati che dica batteria a 3,7 V
ESP8266 NodeMCU Access Point (AP) per server Web con sensore di temperatura DT11 e stampa di temperatura e umidità nel browser: 5 passaggi
ESP8266 NodeMCU Access Point (AP) per server Web con sensore di temperatura DT11 e temperatura e umidità di stampa nel browser: ciao ragazzi nella maggior parte dei progetti utilizziamo ESP8266 e nella maggior parte dei progetti utilizziamo ESP8266 come server Web in modo da poter accedere ai dati su qualsiasi dispositivo tramite wifi accedendo al server Web ospitato da ESP8266 ma l'unico problema è che abbiamo bisogno di un router funzionante per
Come utilizzare il sensore di temperatura DHT11 con Arduino e stampare la temperatura di calore e umidità: 5 passaggi
Come utilizzare il sensore di temperatura DHT11 con Arduino e stampare la temperatura Calore e umidità: il sensore DHT11 viene utilizzato per misurare la temperatura e l'umidità. Sono appassionati di elettronica molto popolari. Il sensore di umidità e temperatura DHT11 rende davvero facile aggiungere dati di umidità e temperatura ai tuoi progetti di elettronica fai-da-te. È per
Invio dei dati del sensore di temperatura e umidità wireless a lungo raggio IoT a Google Sheet: 39 passaggi
Invio dei dati del sensore di temperatura e umidità wireless a lungo raggio IoT a Google Sheet: stiamo utilizzando qui il sensore di temperatura e umidità di NCD, ma i passaggi rimangono uguali per qualsiasi prodotto ncd, quindi se disponi di altri sensori wireless ncd, esperienza libera di osservare a fianco inoltre. Per mezzo dell'interruzione di questo testo, è necessario
Monitor di umidità wireless (ESP8266 + sensore di umidità): 5 passaggi
Wireless Moisture Monitor (ESP8266 + Moisture Sensor): compro il prezzemolo in vaso e la maggior parte del giorno il terreno era asciutto. Quindi decido di realizzare questo progetto, sul rilevamento dell'umidità del terreno in vaso con prezzemolo, per verificare, quando ho bisogno di versare il terreno con acqua. Penso che questo sensore (sensore di umidità capacitivo v1.2) sia buono perché