Control Gsm

12
ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA MECATRÓNICA Electrohidráulica y Electroneumática CONTROL DE POSICIONAMIENTO DE CILINDROS A TRAVES DE MENSAJE DE TEXTO SMSProfesor: Fredy Sotelo Valer INTEGRANTES: André Francisco Gonzales Chavez Joel Jesús Figueroa Vilcarromero Miguel Ángel vera Masias 2012

Transcript of Control Gsm

Page 1: Control Gsm

ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA

MECATRÓNICA

Electrohidráulica y Electroneumática

“CONTROL DE POSICIONAMIENTO DE CILINDROS A

TRAVES DE MENSAJE DE TEXTO SMS”

Profesor: Fredy Sotelo Valer

INTEGRANTES:

André Francisco Gonzales Chavez

Joel Jesús Figueroa Vilcarromero

Miguel Ángel vera Masias

2012

Page 2: Control Gsm

1. Modulo sim900 quad band

Diseñado para el mercado global, SIM900 es un quad-band GSM / GPRS motor que funciona en las frecuencias de GSM 850MHz, 900MHz EGSM, DCS 1800MHz y 1900MHz PCS. SIM900 funciones GPRS multi-slot clase 10 / clase 8 (opcional) y es compatible con los esquemas de codificación GPRS CS-1, CS-2, CS-3 y CS-4. Con una configuración pequeña de 24 mm x 24 mm x 3 mm, SIM900 puede satisfacer casi todas las necesidades de espacio en sus aplicaciones, como M2M, teléfono inteligente PDA y otros dispositivos móviles.

Los comandos AT son instrucciones codificadas que conforman un lenguaje de comunicación entre el hombre y un Terminal MODEM. Fueron desarrollados en 1977 por Dennis Hayes como un interfaz de comunicación con un MODEM para así poder configurarlo y proporcionarle instrucciones, tales como marcar un número de teléfono. Más adelante, fueron las compañías Microcomm y US Robotics las que siguieron desarrollando y expandiendo el juego de comandos hasta universalizarlo. Los comandos AT se denominan así por la abreviatura de attention. Aunque la finalidad principal de los comandos AT es la comunicación con módems, la telefonía móvil GSM también ha adoptado como estándar este lenguaje para poder comunicarse con sus terminales. De esta forma, todos los teléfonos móviles GSM poseen un juego de comandos AT específico que sirve de interfaz para configurar y proporcionar instrucciones a los terminales, permiten acciones tales como realizar llamadas de datos o de voz, leer y escribir en la agenda de contactos y enviar mensajes SMS, además de muchas otras opciones de configuración del terminal.

2. Pruebas con el virtual terminal de PROTEUS

En la plataforma de PROTEUS utilizaremos el COMPIM con una configuración de 9600 baudios

esté conectado directamente conectado al VIRTUAL TERMINAL, con el fin de probar el estado

de modulo a través de los comando AT.

Page 3: Control Gsm

En la figura podemos apreciar los caracteres que nos envía el modulo GSM al ser encendido,

por defecto hace una llamada para conectar la tarjeta SIM que posee el modulo con la

operadora correspondiente.

Procederemos a enviar el comando AT por el teclado “AT” y podemos observar como de

manera automática nos llega al virtual terminal un “OK”.

Como podemos apreciar lo que nosotros escribimos nos llega como un ECO, lo cual nos facilita

para saber si estamos escribiendo correctamente. Pero como lo vamos a conectar a un

microcontrolador no va ser necesario corroborar lo que escribimos, será suficiente con una

respuesta “OK”.

Desactivaremos el ECO con el comando AT “ATEO”, aquí podemos probar que todo lo que

ingresamos con el teclado ya no es visible.

Page 4: Control Gsm

Pero como aun estamos en pruebas necesitamos saber lo que escribimos, asi que nuevamente

activamos el ECO con el comando AT “ATE1”.

Ahora enviamos un SMS con el fin de poder evaluar si necesita configuración para que este sea

leído.

Podemos leer el SMS automáticamente ni bien llega, esa es una ventaja para nosotros, ya que

asi no necesitamos hacer otra configuración adicional para lectura.

Hora se usar el comando AT “AT+CMGL=”ALL””, con este comando podemos leer los sms que

tenemos almacenados en el SIM; al ser almacenados corremos el riesgo de que llenen la

capacidad máxima de la tarjeta SIM y se niegue a recibir más mensajes, es por esto que

debemos buscar el comando AT para la eliminación de SMS.

Page 5: Control Gsm

El comando AT para la eliminación de SMS es “AT+CMGD=1”, donde 1 es el orden de meoria

donde se guardo el SMS, en la anterior imagen podemos observar el string “+CMGL: 1, …” y el

string “+CMGL: 2, …” que son los SMS que se encuentran guardados en el SIM.

Nuevamente enviamos el comando AT “AT+CMGL” y podemos observar que solo sale el string

“+CMGL: 2, …” ya que con el anterior comando se ha borrado el mensaje en la ubicación 1.

Enviamos ahora para borrar SMS con el comando “AT+CMGD=2”, ahora con el 2 para borrar el

SMS de esa ubicación.

Verificamos que no hayan SMS en la memoria del SIM con el comando “AT+CMGL=”ALL”” y

vemos que solo sale “OK”, y no hay ningún SMS en la memoria del SIM.

Page 6: Control Gsm

3. Desarrollo de programa en CCS PIC para realizar una secuencia de 4 cilindros

Para empezar a tener en claro lo que va hacer nuestro microcontrolador en este caso el

PIC18F877A, va tener que enviar y recibir string por su modulo UART que es su propio puerto

serial asíncrono que este posee.

Luego procedemos a realizar la lógica de programación en un resumido diagrama de flujo, para

así poder desarrollar la programación en CCS.

SI DATO=

OK

INICIO

ENVIAR

ATE0

ENVIAR

AT+IPR=9600

AT+CMGD=1

AT+CMGD=2

SI DATO=

OK

ESPERANDO SMS

LED ON 0,5SEG

LED OFF 0,5SEG

LED ON 0,5SEG

LED OFF

¿HAY SMS?

LEER SMS

HACER

SECUENCIA

WHILE TRUE FIN

A+A-B+B-

B+B-A+A-

NO

SI

NO

SI

SI

NO

NO

Culminado nuestro diagrama de flujo, a continuación apreciaremos nuestro código en CCS.

Page 7: Control Gsm

En esta parte inicializamos programa configurando el microcontrolador, que tipo es es, cristal,

puerto serial, etc.

Procedemos a la creación de la interrupción para la lectura de string del PIC por puerto serial.

Creamos las funciones para borrar el array y una funcionde retardo de 2 segundos, esta

funciones simplificaran la escritura.

Damos rumbo al inicio del programa inicializando las interrupciones para que asi pueda

detectar ni bien está ingresando un dato al microcontrolador.

Despues borramos el dato por seguridad que poseemos en el micro y expulsamos por el

puerto serial el comando AT “ATE0” para la eliminación del eco, como aprendimos en uin

principio.

Page 8: Control Gsm

Después forzamos a ingresar a un bucle infinito con el fin de ni bien ocurren las lectura, estas

sean comparadas y asi ejecutar las siguientes funciones:

Configuramos el puerto del modulo GSM a 9600 baudios

Eliminamos los mensajes de texto que tenga guardada la tarjeta sim

Despues de borrar los SMS espera una respuesta “OK” para hacer un titileo de un led

por el puerto D2

Terminado el titileo podemos asegurar que el microcontroldador está esperando que

llegue un mensaje de texto con la secuencia y así poder realizar el proceso.

Si el mensaje llega nuestro siguiente código procederá hacer la lectura de los caracteres uno

por uno y asi expulsar las salidas necesarias.

Page 9: Control Gsm

Aquí culmina nuestro código y como posee un WHILE activado siempre, ni bien termina de

hacer la secuencia del mensaje de texto, nuestro código borrara lo almacenado en el string y

empezara el ciclodesde un principio configurando el puerto y borrando el SMS que ha llegado y

ha sido almacenado en el SIM.

4. Simulación de PIC con modulo conectado a través del puerto COM de la

computadora

Nuestro diagrama en proteus es el siguiente:

Se visualiza el puerto COM de la computadora conectado directamente al TX y al RX del PIC,

además hemos añadido dos Virtual terminal para leer e ambos caso lo que trasmite el PIC y lo

que recibe, para detectar posibles fallos.

Empezamos ejecutando el simulador y la siguiente imagen detalla lo sucedido.

Page 10: Control Gsm

El PIC envía stisfactoriamente el comando AT “ATE0” para desactivar el ECO después el PIC

recibe el primer OK, según el algoritmo leido este “OK” se procede a configurar el puerto y a

eliminar los 2 primeros mensajes de la tarjeta SIM.

Ahora se espera que se culmine el titileo del pin D2 y enviamos el SMS con la secuencia

deseada.

Page 11: Control Gsm

El modulo envía satisfactoriamente el mensaje con la secuencia, en la imagen se e como esta

en la parte B+ de la secuencia enviada. El pic está esperando que se acabe la secuencia para asi

poder enviar lo que corresponde al programa.

Termino de hacer la secuencia y nuestro microcontrlador vuelve al inicio, borrando el SMS de

la secuencia que realizo y esperando después del titileo otro SMS para realizar un nuevo

proceso.

5. Implementación

Despues de los gratos resultados en la simulación procedemos a implementar nuestro circuito

en tres partes:

1. El modulo de comunicación GSM

Page 12: Control Gsm

2. El microcontrolador

3. ETAPA DE POTENCIA

LOS TRES MODULOS CONECTADOS