Inviare SMS e chiamate con il modulo GSM SIM800L e Arduino

progetti Arduino

Il modulo GSM SIM800L è un potente strumento che può essere utilizzato in varie applicazioni, tra cui effettuare chiamate, inviare SMS e persino accedere a Internet tramite GPRS. In questo articolo, vedremo come controllare il modulo GSM SIM800L con il microcontrollore Arduino UNO per renderlo operativo senza problemi. Una volta compreso come “maneggiare” questo modulo, si potranno affrontare con disinvoltura progetti di domotica basati su GSM, sistema di chiamate telefoniche IVR (Interactive Voice Response), connessione Internet portatile, ed altro ancora.

Introduzione - GSM e GPRS

Prima di addentrarci nella descrizione del funzionamento e interfacciamento con Arduino del modulo GSM/GPRS SIM800L, tratteremo alcuni aspetti fondamentali del sistema GSM e GPRS.

GSM

Il sistema GSM (Global System for Mobile) è una famiglia di standard per descrivere i protocolli della telefonia cellulare digitale di seconda generazione (2G), progettato principalmente per le comunicazioni tra dispositivi mobili. Sviluppato per facilitare la comunicazione mobile, il GSM è una tecnologia di rete cellulare digitale che consente agli utenti di effettuare chiamate, inviare messaggi di testo e accedere a servizi dati di base come SMS (Short Message Service) e MMS (Multimedia Messaging Service). Le reti GSM operano su diverse bande di frequenza a livello globale, consentendo agli abbonati l’accesso ai servizi di roaming internazionale.

GPRS

GPRS (General Packet Radio Service) è un'evoluzione dello standard GSM, che consente la trasmissione di dati mobili. Introduce la tecnologia di commutazione di pacchetto nelle reti GSM, consentendo velocità di trasferimento dati più elevate rispetto ai tradizionali metodi a commutazione di circuito. Il GPRS dispone inoltre di funzionalità come la navigazione Internet, l'accesso alla posta elettronica e altre applicazioni ad alta intensità di dati sui dispositivi mobili. Il GPRS ottimizza le risorse di rete utilizzando la larghezza di banda solo durante la trasmissione dei dati, rendendo il GPRS più efficiente per la comunicazione dati rispetto al suo predecessore GSM.

Il modulo GSM/GPRS SIM800L

Il SIM800L è un modulo GSM/GPRS quad-band progettato per la trasmissione di voce, SMS e dati. Esso dispone di un'ampia gamma di funzionalità e supporta le bande di frequenza 850/900/1800/1900 MHz, che lo rendono compatibile con le reti 2G globali. Il modulo comunica con altri dispositivi tramite comandi AT e può funzionare in un range di temperatura da -40 °C a +85 °C. Il package è simile ad un piccolo chip con un connettore per antenna, uno slot per microSIM e vari pin. L'immagine in Figura 1 mostra il modulo SIM800L e i relativi pin, che sarà utile avere come riferimento in seguito quando collegheremo il modulo GSM SIM800L ad Arduino UNO.

progetti

Figura 1: Modulo SIM800L

Alimentazione del modulo GSM SIM800L

Per il corretto funzionamento di questo dispositivo è fondamentale che venga fornita una tensione di alimentazione stabile compresa tra 3,7 V e 4,2 V, effettivamente diversa dai valori di tensione standard normalmente previsti per le alimentazioni dei circuiti elettronici. Ad esempio, si può utilizzare un alimentatore buck in grado di fornire una tensione regolata di 4 V e una corrente di 2 A o superiore, in quanto il modulo SIM800L durante l'invio di messaggi o chiamate ha un elevato consumo energetico. L'aggiunta di un condensatore tra il pin VCC e GND del SIM800L può migliorare la stabilizzazione riducendo gli effetti del rumore sulla tensione di alimentazione. In alternativa all’alimentatore buck si può impiegare una batteria agli ioni di litio da 3,7 V con capacità di corrente ≥ 2 A per soddisfare questo requisito energetico.

Circuito per i test del SIM800L con Arduino UNO

In Figura 2 è riportato il circuito di collegamento del modulo SIM800L con Arduino UNO, che costruiremo per condurre i test funzionali del modulo.

progetti

Figura 2: Circuito di interfaccia del modulo SIM800L con Arduino UNO

Nello schema elettrico dei collegamenti d’interfacciamento SIM800L (U3)-Arduino (U1), oltre a questi due componenti è presente il convertitore DC-DC LM2596 (U2) che dovrà essere regolato per fornire una tensione stabilizzata di 4 V al modulo GSM SIM800L. All’ingresso di questo convertitore viene applicata una tensione di 12 V (che può essere anche non regolata) proveniente da un alimentatore esterno in grado di fornire una corrente di almeno 2 A, che sarà collegato al connettore d’ingresso CN1.

Quando si utilizza il SIM800L con un microcontrollore, è necessario prestare attenzione alla compatibilità di tensione dei rispettivi pin I/O, poiché il modulo SIM800L funziona a 3,3 V, mentre molti microcontrollori, come Arduino UNO, funzionano a 5 V. Pertanto, occorre assicurarsi che il livello di tensione applicato ai pin del modulo GSM non superi 3,3 V per evitare danni. E’ stato quindi previsto l’inserimento di un partitore di tensione costituito dai resistori R1 e R2 tra i pin di uscita (a 5 V) di Arduino e i pin d’ingresso (a 3,3 V) del modulo SIM800L.

[...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2161 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend