Ecco un esempio di codice Arduino che utilizza un GSM Shield 2 e un sensore PIR per rilevare il movimento e inviare un messaggio SMS quando viene rilevato un movimento.
#include <GSM.h>
#define PIR_PIN 2 // Pin di collegamento per il sensore PIR
#define PHONE_NUMBER "+1234567890" // Numero di telefono per l'invio del messaggio SMS
GSM gsmAccess; // Oggetto per l'accesso GSM
GSM_SMS sms; // Oggetto per la gestione degli SMS
void setup() {
pinMode(PIR_PIN, INPUT); // Imposta il pin del sensore PIR come input
Serial.begin(9600); // Inizializza la comunicazione seriale
// Connessione GSM
boolean connected = false;
while (!connected) {
if (gsmAccess.begin("<PIN_DEL_SIM_CARD>") == GSM_READY) { // Inserire il PIN della SIM card
connected = true;
} else {
Serial.println("Connessione GSM fallita...");
delay(1000);
}
}
Serial.println("Connessione GSM riuscita");
}
void loop() {
int pirState = digitalRead(PIR_PIN); // Leggi lo stato del sensore PIR
if (pirState == HIGH) {
Serial.println("Movimento rilevato!");
// Invia un messaggio SMS
sms.beginSMS(PHONE_NUMBER);
sms.print("Movimento rilevato!");
sms.endSMS();
delay(5000); // Attendi per evitare l'invio di messaggi multipli in rapida successione
}
}
Assicurati di avere installata la libreria GSM nella tua IDE di Arduino per poter compilare e caricare il codice correttamente. Inoltre, dovrai sostituire ‘<PIN_DEL_SIM_CARD>‘ con il PIN effettivo della tua SIM card e ‘<PHONE_NUMBER>‘ con il numero di telefono al quale desideri inviare il messaggio SMS.
