SIM900 GPRS

Se puede utilizar un módulo GSM/GPRS con una tarjeta SIM, de forma que podamos comunicarnos con Arduino UNO como si se tratase de un teléfono móvil.

Y es que esta tarjeta basada en el módulo SIM900 nos permite enviar y recibir llamadas y SMS y conectarnos a Internet, transformando nuestro Arduino en un teléfono móvil.

Se puede conectar la cámara UART JPEG VC0706 a Arduino Uno, tomar una foto, grabarla en una tarjeta micro SD y enviar esta foto a un correo electrónico desde una placa 3G / GPRS. Para esto se puede utilizar un servicio de correo como SMTP2GO.

Este vídeo tutorial informa sobre el proceso paso a paso para enviar correos electrónicos, mensajes SMS y realizar llamadas de voz utilizando la placa 3G / GPRS de libelium Communication.

#include <SoftwareSerial.h>

SoftwareSerial SIM900(7, 8); //Seleccionamos los pines 7 como Rx y 8 como Tx

void setup()

{

SIM900.begin(9600);

Serial.begin(19200);

delay(1000);

SIM900.println("AT"); //Como estás SIM900?

delay(5000);

SIM900.println("AT+CPIN=\"4554\""); //Enviar pin dela SIM

delay(5000);

}

void loop()

{

//Enviamos y recibimos datos y los mostramos en el monitor del puerto serie

if (Serial.available() > 0)

SIM900.write(Serial.read());

if (SIM900.available() > 0)

Serial.write(SIM900.read());

}

Para llamar:

SIM900.print("ATD");//Comando AT para iniciar una llamada

SIM900.print("+34 ");//Número de telefono al cual queremos llamar

SIM900.println(";");//El ";" indica llamada de voz y no llamada de datos ej:(FAX)

Serial.println("Llamando...");//Leyenda que indica que se inicio el llamado

delay(25000);//Duración del llamado antes de cortar

SIM900.println("ATH"); // comando AT cortar llamada

Serial.println("Llamada finalizada");//Leyenda que indica que finalizó el llamado

Para SMS:

SIM900.println("AT+CMGF=1\r"); // Configuring TEXT mode

delay(1000);

SIM900.println("AT+CMGS=\"+34 \"");//change ZZ with country code and xxxxxxxxxxx with phone number to sms

delay(1000);

SIM900.println("Last Minute y tu tía y la mia y la del vecino"); //text content

delay(5000);

SIM900.println((char)26);

delay(5000);

SIM900.println();

delay(100);

Mostrar y borrar registros de SMS

#include <SoftwareSerial.h>

SoftwareSerial SIM900(7, 8); //Seleccionamos los pines 7 como Rx y 8 como Tx

char caracter = 0;

void setup()

{

SIM900.begin(9600);

delay(100);

Serial.begin(19200);

delay(100);

SIM900.println("AT"); //Handshaking with SIM900

delay(1000);

SIM900.println("AT+CPIN=\"4554\"");

delay(1000);

// SIM900.println("AT+CMGD=2");//Borrar registro 2

// delay(10000);

SIM900.println("AT+CMGR=2");// Mostrar registro 2

}

void loop()

{

if (Serial.available() > 0)//Enviamos y recibimos datos

SIM900.write(Serial.read());

if (SIM900.available() > 0){

caracter = SIM900.read();

Serial.print(caracter);

//Serial.write(SIM900.read());

}

}