Nota
Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirti a noi?
Supporto Esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e Condividi: Scambia suggerimenti e tutorial per migliorare le tue abilità.
Anteprime Esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime.
Sconti Esclusivi: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni Festive e Giveaway: Partecipa a promozioni e concorsi durante le festività.
👉 Sei pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!
3. Inviare Dati a Blynk¶
Questo capitolo ti mostrerà come inviare dati a Blynk.
Qui creiamo un dispositivo di rilevamento porte e finestre. Il circuito con l’interruttore Reed è posizionato accanto alla porta e alla finestra, mentre il magnete è montato sul bordo della porta e della finestra. Quando la porta o la finestra è chiusa, l’interruttore Reed verrà attivato dalla forza magnetica e il valore del pin corrispondente sulla scheda R3 cambierà. Blynk.cloud riceverà questo valore, consentendoti di verificare se le porte e le finestre della tua casa sono chiuse anche quando sei lontano.
Ora utilizzeremo un widget LED in Blynk per indicare se le tue finestre e porte sono chiuse (cioè se l’interruttore Reed è acceso o spento).
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un intero kit, ecco il link:
Nome |
ARTICOLI IN QUESTO KIT |
LINK |
|---|---|---|
Starter Kit 3 in 1 |
380+ |
Puoi anche acquistarli separatamente dai link sottostanti.
INTRODUZIONE AI COMPONENTI |
LINK PER L’ACQUISTO |
|---|---|
- |
1. Costruisci il Circuito
Nota
Il modulo ESP8266 richiede un’elevata corrente per garantire un ambiente operativo stabile, quindi assicurati che la batteria da 9V sia collegata.
2. Modifica la Dashboard
Crea un Datastream di tipo Pin Virtuale nella pagina Datastream per ottenere il valore dell’interruttore Reed. Imposta il TIPO DI DATO su Intero e MIN e MAX rispettivamente su 0 e 1.
Trascina un widget LED sulla pagina della Dashboard Web, a un valore di 1 si accenderà (con colore), altrimenti sarà bianco.
Nella pagina delle impostazioni del widget LED, seleziona Datastream come Reed(V1) e salvalo.
3. Esegui il Codice
Apri il file
3.push_data_to_blynk.inonel percorso3in1-kit\iot_project\3.push_data_to_blynk, oppure copia questo codice in Arduino IDE.Sostituisci
Template ID,Nome DispositivoeAuth Tokencon i tuoi. Devi anche inserire ilsside lapassworddella rete WiFi che stai utilizzando. Per tutorial dettagliati, fai riferimento a 1.3 Collegare la scheda R3 a Blynk.Dopo aver selezionato la scheda e la porta corrette, fai clic sul pulsante Upload.
Apri il monitor seriale (imposta la velocità a 115200) e attendi che venga visualizzato un messaggio di connessione avvenuta con successo.
Nota
Se viene visualizzato il messaggio
ESP non rispondequando ti connetti, segui questi passaggi.Assicurati che la batteria da 9V sia collegata.
Ripristina il modulo ESP8266 collegando il pin RST a GND per 1 secondo, quindi scollegalo.
Premi il pulsante di reset sulla scheda R3.
A volte potrebbe essere necessario ripetere l’operazione 3-5 volte, sii paziente.
Ora, Blynk mostrerà lo stato delle tue porte e finestre. Se le porte e finestre sono chiuse, il widget LED sarà verde, altrimenti sarà grigio.
Se desideri utilizzare Blynk sui dispositivi mobili, fai riferimento a Come usare Blynk su dispositivi mobili?.
Come funziona?
In questo esempio, dovresti concentrarti sulle seguenti righe. «Scrivere i dati ogni secondo nel Datastream V1 di Blynk Cloud» è definito da queste righe.
BlynkTimer timer;
void myTimerEvent()
{
Blynk.virtualWrite(V1, pinValue);
}
void setup()
{
timer.setInterval(1000L, myTimerEvent);
}
void loop()
{
timer.run(); // Avvia BlynkTimer
}
La libreria Blynk fornisce un timer integrato, prima creiamo un oggetto timer.
BlynkTimer timer;
Imposta l’intervallo del timer in setup(), qui impostiamo l’esecuzione della funzione myTimerEvent() ogni 1000ms.
timer.setInterval(1000L, myTimerEvent);
Esegui BlynkTimer in loop().
timer.run();
Modifica la funzione personalizzata myTimerEvent(), il codice Blynk.virtualWrite(V1, pinValue) viene utilizzato per scrivere il valore pinValue su V1.
void myTimerEvent()
{
Blynk.virtualWrite(V1, pinValue);
}