Pages Menu
TwitterFacebook



BANNER1_ALT

Posted by on Jun 2, 2014 in Comunicación | 50 comments

Modulo de Comunicacion Inalambrica GSM Shield

Modulo de Comunicacion Inalambrica GSM Shield

Modulo de Comunicación Inalámbrica GSM Shield

 

SONY DSC

 

 

Es un modulo Multi-banda WCDMA/GSM/GPRS/EDGE que soporta transferencias de datos WCDMA hasta 384 kbps. 

El modulo provee mucha flexibilidad con los protocolos TCP/UDP/FTP/HTTP/HTTPS/SMTP/POP3 y MMS. 

Esta es una tarjeta GPRS ultra compacta de comunicación inalámbrica. La tarjeta es compatible con todos los modelos de Arduino con el formato UNO, además puedes controlarla con otros microcontroladores también. La tarjeta está basada en el módulo SIM900 4.

La tarjeta GPRS está configurada y controlada por vía UART usando comandos AT. Solo conecta la tarjeta al microcontrolador, Arduino, etc, y comienza a comunicarte a través de comandos AT. Ideal para sistemas remotos, comunicación recursiva, puntos de control, mandar mensajes de texto a celulares, etc.

ESPECIFICACIONES

  • Totalmente compatible con Arduino
  • Conexión con el puerto serial
  • Quad-Band 850/ 900/ 1800/ 1900 Mhz
  • GPRS multi-slot clase 10/8
  • GPRS mobile station clase B
  • Compatible GSM fase 2/2+
  • Clase 4 (2 W (AT) 850 / 900 MHz)
  • Clase 1 (1 W (AT) 1800 / 1900MHz)
  • TCP/UP  embebido
  • Soporta RTC
  • Consumo de 1.5 mA (suspensión)

Hoja de datos 1  : GSMSHIELD-1

Hoja de datos 2:   GSMSHIELD-2

Tabla de comandos:  sim900_at_command_set

Código Arduino: gsm

 

/*
Herramientas Tecnologicas Profesionales
www.hetpro-store.com

Tutorial Original:
http://tronixstuff.com/2014/01/08/tutorial-arduino-and-sim900-gsm-modules/

Comandos AT:
http://probots.co.in/Manuals/SIM900%20GSM%20Modem%20-%20Starter%20Guide.pdf

Hoja de datos:

Instrucciones para Arduino: Configura la terminal serial a 19200 baudios para que puedas ver los mensajes.
*/

#include <SoftwareSerial.h>
SoftwareSerial SIM900(2, 3); // Configura el puerto serial para el SIM900

char incoming_char=0; //Variable que guarda los caracteres que envia el SIM900
int salir = 0;
void setup()
{
 SIM900.begin(19200); //Configura velocidad serial para el SIM900
 SIM900power(); //Encender el chip
 delay(25000); //Retardo para que encuentra a una RED
 Serial.begin(19200); //Configura velocidad serial para el Arduino
 Serial.println("OK"); //Mensaje OK en el arduino, para saber que todo va bien.
}

void SIM900power()
// Encendido por software del SIM900, es equivalente a precionar el boton de encendido
{
 digitalWrite(8, HIGH);
 delay(1000);
 digitalWrite(8, LOW);
 delay(5000);
}

void llamar()
// Función que permite llamar a un celular local
{
 // SIM900.println("ATD 10725275;"); //Numero local
 SIM900.println("ATD 3310725275;"); //Celular
 delay(100);
 SIM900.println();
 delay(30000); // wait for 30 seconds...
 SIM900.println("ATH"); // Cuelta el telefono
 delay(1000);
}
void mensaje_sms()
Funcion para mandar mensaje de texto
{

 SIM900.print("AT+CMGF=1\r"); // AT command to send SMS message
 delay(100);
 SIM900.println("AT + CMGS = \"3310725275\""); // recipient's mobile number, in international format
 delay(100);
 SIM900.println(analogRead(0)); // message to send
 delay(100);
 SIM900.println((char)26); // End AT command with a ^Z, ASCII code 26 //Comando de finalizacion
 delay(100);
 SIM900.println();
 delay(5000); // Tiempo para que se envie el mensaje

}

void espera_mensaje()
{
 salir = 1;
 while(salir==1)
 {
 if(SIM900.available() >0)
 {
 incoming_char=SIM900.read(); //Get the character from the cellular serial port.
 Serial.print(incoming_char); //Print the incoming character to the terminal.
 salir = 0;
 }
 }
}
void modo_recibe_mensaje()
{
 //Configura el modo texto para enviar o recibir mensajes
 SIM900.print("AT+CMGF=1\r"); // set SMS mode to text
 delay(100);
 SIM900.print("AT+CNMI=2,2,0,0,0\r"); 

 // blurt out contents of new SMS upon receipt to the GSM shield's serial out
 delay(1000);
}
void loop()
{
 llamar(); //Llama
 mensaje_sms(); //Envia mensaje
 modo_recibe_mensaje();
 for(;;)
 {
 if(SIM900.available() >0)
 {

 incoming_char=SIM900.read(); //Get the character from the cellular serial port.
 Serial.print(incoming_char); //Print the incoming character to the terminal.
 }
 if(Serial.available() > 0)
 {
 if(Serial.read() == 'A') break;
 }
 }
 Serial.println("OK-2");
 SIM900power();
 delay(100);
 SIM900.println();
 delay(30000);
 while(1); // Esperate por tiempo indefinido 

}

 

50 Comments

  1. Hola, me gustaría enviar un String que tengo almacenado en mi programa por medio de mensaje, pero a la hora de añadir el string en el campo de envío de mensaje, no me envía nada. Solamente si escribo la frase entre comillas me lo permite.
    ¿Me pueden apoyar?

    • Nestor, como tienes declarado el string? y cual es el mensaje que guardas en el programa=?

  2. oye disculpa tengo un problema con la tarjeta lo que pasa es que estoy haciendo una rutina para encender un led por un sms y utilice los 2 comandos mencionados en el ejemplo para recepción de sms a lo cual solo recibo un sms y al querer recibir otro ya no me da opción se traba la tarjeta y tengo que reiniciarla y también en ocasiones recibe mensajes viejos no se si necesite algún comando extra para realizar esto SALUDOS

    • Hola que tal, debe de haber un comando para limpiar la memoria de recepcion, quizas no tenga mucha. Podrias buscar en la hoja de datos el comando exacto, saludos.

  3. hola estoy realizando mi proyecto de tesis y necesito conectar un sensor de caudal a un arduino y la informacion obtenida enviarla mediante la red gsm a una base de datos en internet mi pregunta es que tarjeta me recomienda lo puedo hacer con la tarjeta gsm shield todo o necesito dos tarjetas una para obtener los datos y otra para enviar la informacion ayuda porfavor, saludos

  4. Hola por favor me pueden ayudar, necesito saber si a la tarjeta arduino GSM shield se le puede conectar un sensor y obtener los datos o debo primero conectar a la tarjeta arduino UNO y luego conectarla a la tarjeta arduino GSM shield

    • Hola, primero tienes que conectarla a un arduino, con el arduino leer el sensor y mandarlo por sms. Saludos

  5. Que tal, compre este mismo producto con ustedes, me podrían decir cuanto voltaje le tengo que suministrar? con el de la placa es suficiente (5V o 3.3V)?, y como serian las conexiones para el arduino mega

    • Que tal, 5V, puedes ver las conexiones de la hoja de datos, saludos.

      • Ok, disculpa pero la comunicacion serial se hace con el pin 2 y 3 como lo muestras en el ejemplo, entonces hay que conectar estos pines del shield
        http://s2.subirimagenes.com/imagen/previo/thump_9358151shield.png

        a la placa arduino 2 y 3?, aunque la placa este tapando los pines de arduino?, llevo casi 2 dias intentando y nadamás no puedo establecer comunicación serial entre arduino y el shield. Estoy usando el arduino mega 2560, lo eh intentado conectando los pines de la placa rx,tx a los pines 18 y 19 de arduino mega y nada.

  6. me podrian dar este codigo en ensamblador de favor para asi poder calcular de forma correcta los tiempos que se va a tardar el micro en hacer estas tareas sin perder de vista otras funciones
    muchas gracias y ojala me puedan proporcionar este dato para asi ya poder adquirir este componente

    • Ricardo, nosotros ya no manejamos ensamblador y sinceramente no lo recomendamos a excepción de calculo de retardos. Saludos

  7. Qué tal, tengo entendido que el modulo tiene la capacidad de enviar coordenadas GPS, alguien ha trabajado con eso? he visto ya tutoriales pero no he logrado hacerlo. Estoy trabajando con Arduino uno. Si alguien sabe algo al respecto le agradecería. Saludos!

  8. hola me pueden ayudar con esta tarjeta se pueden enviar los datos a la web y como puedo hacer

  9. que es lo que hace el codigo envia un mensaje, luego llama y que mas

    • Hola que tal Alejandro.
      El ejemplo solo llama y envia un mensaje, no tiene una aplicacion especifica y es de apoyo de inicio para cualquier proyecto. Si tienes una aplicacion en mente, este codigo te ayuda a configurar el módulo para que solo agregues el codigo de la aplicación que necesites.
      Saludos.

  10. Hola, puedo usar este modulo con una raspberry para enviar y recibir llamadas y sms.

  11. hola, yo tambien estoy probando la gsm sim900, pero no hay forma de que coja señal, le alimentado con 5v, 1,2A, 2A, y 4A, y tambien con varias tarjetas desbloqueadas de codigo sim, pero se enchufa, parpadea varias veces pero se apaga solo, ya no se si es el modulo que no funciona o que.. alguien sabe porque?

    • Jose, si estas prendiendo el módulo? casi todas las versiones de este tienen o un botón que tienes que mantener presionado una par de segundos o un pin digital.

  12. Ola disculpa una pregunta estoy utilizando el sim900 con arduino uno realizo la conexion y al momento de encender presiono el boton power y el led NetLight parpadea por un momento y se vuelve a apagar que podria hacer con eso xfavor si puediera ayudarme….??¿?¿?¿

    • Ese problema es debido a la falta de corriente en la fuente de alimentación, si lo estas usando solo del USB esto es común, te recomiendo que uses un eliminador de 2A.

  13. se puede utlizar con cualquier tipo de tarjeta SIM?

    • Hola que tal Andres, la hemos probado con Telecel y Iusacell y funciona bien. Saludos.

  14. funciona con sim 800L?

    • el mio es un modulo gsm sim800L

  15. Como puedo hacer el software power up/down?

    No encuentro JP.

    • No hay Jumper, puedes usar el pin D9 del arduino mandando una digital alto por 2 segundos y despues bajandolo. Saludos.

  16. hola, nose si me puedan ayudar, adquirí esta misma tarjeta y eh intentado hacer varias pruebas pero no recibo nada en el celular, trato de hacer una simple llamada o de enviar un mensaje, y me indica en la computadora que todo esta bien pero en el celular no recibo nada :/

    • Hola, posiblemente sea tu compañia telefonica, puedes verificar si tienes buena red y las conexiones correctas, saludos

      • Hola es Telcel y lo eh probado con AT&T y sí tratando de tener la mayor red posible pero nada ni una sola vez nose sí tenga algo que ver que tenga plan

        • podrias intentar con otra compañia por favor para descartar ese detalle y otro equipo telefonico

          • Hola ya lo eh probado con todas las compañías disponibles en méxico y no eh tenido resultados satisfactorios.

          • Probablemente ya sea una falla fisica de la tarjeta o alguna comptibilidad

  17. mini pro sim900 puede conectarse o enlazarse hacia un a web?…tambien quisiera saber si es posible la comunicacion en tiempo real direccionados a otro SIM900 como maestro?

    • Hola, si se puede realizar lo que comentas nuestros clientes han hecho algo similar, pero no contamos con la informacion por el momento, saludos

  18. Buena tarde, estoy tratando de investigar las comunicaciones hoy en dia que emplean los semaforos para trasmitir datoscomo wifi, gsm, fibra optica, etc .. este modulo se puede configurar para que mande datos a una central o me podrian dar un indicio donde enctrontrar.. gracias

    • Hola si podrias realizar el envio de datos pero me parece que necesitas agregra mas comandos para que realice el envio de datos

  19. Hola tengo una consulta de algo que me sucede, cuando estoy conectada con el arduino y el shield sim900 envia el sms perfectamente, ahora cuando lo alimento al arduino por una corriente externa, probe con uno de 5V y otro de 9V, y el arduino se conecta al shield para alimentarlo, no encuentra señal, empieza a titilar la luz de status y la netligh y se apagan, pero el shield no se apaga, cambie los jumpers de lugar y sigue sucediendo. La tarjeta sim no es ya que cuando esta enchufado a la pc con usb funciona perfectamente, alguna idea de que puede ser? el transformador de 9V es de 1mA.

    • cuando estoy conectada al PC funciona OK, con corriente externa no busca señal del chip

      • Hola buen dia a lo que vemos este problema se presento a distintos usuarios y probablemnete que sea por la falta de corriente, puede leer los comentarios anteriores, saludos

        • Así es, Leo que a todos les sucede lo mismo pero no hay una solucion precisa. Si a todos les pasa puede ser que alguna conexión que indican esta mal… Ya probe las alternativas de alimentación que proponen y tampoco funcionan…

          • Una disculpa si es un error de nosotros esperemos que pronto se corriga en cuanto tengamos disponible una tarjeta para pruebas

  20. se puede conectar un sim 900 una tarjeta de recepcion rf en un arduino mega???
    la instruccion seriar sirve para ambas???? o es indeendiente

  21. disculpe como habilito los pines 2 y 3 porque no me funcionan

    • Hola buen dia le recomendamos leer los comentarios de otros usuarios en este mismo post

Post a Reply

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *