Nota
Ciao, benvenuto nella Community di Appassionati di SunFounder Raspberry Pi, Arduino e ESP32 su Facebook! Approfondisci Raspberry Pi, Arduino e ESP32 con altri appassionati.
Perché unirsi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara e condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni festive e omaggi: Partecipa a concorsi e promozioni festive.
👉 Pronto a esplorare e creare con noi? Clicca [Qui] e unisciti oggi stesso!
Sistema di Sicurezza via IFTTT
Con questo progetto, creiamo un dispositivo di sicurezza che utilizza un sensore PIR per rilevare intrusi o animali randagi che entrano nella tua casa. In caso di violazione, riceverai un avviso via email.
Utilizzeremo Webhooks come servizio fondamentale. Una richiesta POST viene inviata al servizio di IFTTT dall’UNO R4.
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 |
---|---|---|
Elite Explorer Kit |
300+ |
Puoi anche acquistarli separatamente dai link sottostanti.
INTRODUZIONE COMPONENTI |
LINK ACQUISTO |
---|---|
- |
|
Collegamenti
Schema
Configurazione di IFTTT
IFTTT è un servizio gratuito che offre vari metodi per collegare diversi servizi dati tra loro.
Creiamo un Applet che risponde a un webhook (URL personalizzato) inviando dati a IFTTT, che poi ti invierà un’email.
Segui i passaggi seguenti su IFTTT.
Visita IFTTT per accedere o creare un account.
Clicca su Create.
Aggiungi un evento If This.
Cerca Webhooks.
Seleziona Receive a web request.
Compila il nome dell’evento (es. SecurityWarning) e clicca su Create trigger.
Aggiungi un evento Then That.
Cerca Email.
Scegli Send me an email.
Inserisci l”Oggetto e il Corpo, quindi clicca su Create action.
Clicca su Continue per terminare la configurazione.
Regola il nome del titolo se necessario.
Verrai reindirizzato automaticamente alla pagina dei dettagli dell’Applet, dove puoi vedere che l’Applet è attualmente connesso e puoi attivare/disattivare l’interruttore per abilitarlo/disabilitarlo.
Ora che abbiamo creato l’Applet IFTTT, abbiamo anche bisogno della chiave webhooks, che può essere ottenuta da Webhooks Impostazioni per permettere al tuo dispositivo di accedere a IFTTT.
Copia la chiave webhooks in «arduino_secrets.h» e inserisci il tuo SSID e password.
#define SECRET_SSID "your_ssid" // your network SSID (name) #define SECRET_PASS "your_password" // your network password (used for WPA, or as a key for WEP) #define WEBHOOKS_KEY "your_key"
Esegui il codice
Nota
Puoi aprire il file
03_ifttt_pir.ino
nel percorsoelite-explorer-kit-main\iot_project\03_ifttt_pir
direttamente.Oppure copia questo codice nell’IDE Arduino.
Nota
Nel codice, SSID e password sono memorizzati in arduino_secrets.h
. Prima di caricare questo esempio, devi modificarli con le tue credenziali WiFi. Inoltre, per motivi di sicurezza, assicurati che queste informazioni siano mantenute riservate quando condividi o memorizzi il codice.
Avvertimento
Per evitare che la tua casella di posta venga inondata, ti preghiamo di testare in anticipo il Modulo Sensore di Movimento PIR prima di eseguire il codice per questo progetto.
Come funziona?
Includi le librerie necessarie e i file header:
"WiFiS3.h"
: Utilizzata per gestire le connessioni Wi-Fi."arduino_secrets.h"
: Contiene il nome della rete Wi-Fi e la password per proteggere le informazioni sensibili.
Definisci alcune variabili globali e costanti:
ssid
: Nome della rete Wi-Fi.pass
: Password della rete Wi-Fi.status
: Stato della connessione Wi-Fi.client
: Client utilizzato per comunicare con il server Wi-Fi.server
: Indirizzo del server Webhook di IFTTT.event
: Nome dell’evento Webhook di IFTTT.webRequestURL
: URL costruito per l’invio delle richieste HTTP, incluso il nome dell’evento Webhook e la chiave.pirPin
: Pin digitale a cui è collegato il sensore PIR.motionDetected
: Variabile flag per monitorare la rilevazione di movimento.
Funzione
setup()
:Inizializza la comunicazione seriale.
Verifica la presenza del modulo Wi-Fi e stampa la sua versione firmware.
Tenta di connettersi alla rete Wi-Fi, con ritenti in caso di fallimento.
Imposta il pin collegato al sensore PIR come input.
Funzione
readResponse()
:Legge i dati di risposta HTTP dal server IFTTT e li stampa sulla console seriale.
Funzione
loop()
:Chiama la funzione
readResponse()
per leggere i dati di risposta HTTP.- Controlla il movimento utilizzando il sensore PIR. Se viene rilevato movimento e non era stato rilevato in precedenza:
Stampa «Movimento rilevato!» sulla console.
Chiama la funzione
triggerIFTTTEvent()
per inviare una richiesta HTTP al server IFTTT, attivando l’evento Webhook.Imposta il flag
motionDetected
sutrue
per indicare che è stato rilevato un movimento.
Se non viene rilevato alcun movimento, imposta il flag
motionDetected
sufalse
.
Funzione
triggerIFTTTEvent()
:Stabilisce una connessione con il server IFTTT.
Invia una richiesta HTTP GET, includendo l’URL dell’evento Webhook e altre intestazioni HTTP.
Funzione
printWifiStatus()
:Mostra informazioni sulla rete Wi-Fi connessa, inclusi SSID, indirizzo IP e intensità del segnale (RSSI) sulla console seriale.