martes, 20 de septiembre de 2011

New version

Based on the circuit and program published in previous posts I made some improvements with the following results.
At first only use one input and one output, but nothing prevents you from adding more inputs and more outputs.
In general the system allows you to enable or / disable an output by sending an sms.
When an input is activated, it sends a sms at two cellphone with the word "Panic".
You can ask the system a report about the status of inputs and outputs by sending a sms.
The entire system is programmed by sending a sms, when I refer to program, means that to change the system password, I need to send a sms and the same for changing cell phone numbers used by the system to send a sms when an input is activated.
The password and the cell phone numbers are stored in the EEPROM of the pic.

The syntax of the message being sent is: Command # Password.
Command
Action
On
Set output
Off
Reset ouput
Estado
Ask a system  report
Pwd
Change the password
Num1
First cellphone number is stored
Num 2
Second cellphone number is stored


Example 1:The default system password is 1234 to change it to 5555 send the sms:

Pwd5555#1234
The system forwards the following sms: "The new password was accepted"

Example 2: To store the first cellphone number in eeprom send the sms:

Num1+59812345678#1234 (+598 international prefix of my country and 12345678 cell phone number).

The system forwards the following sms: "The new phone number was accepted"

Example 3: To turn on the output send the sms

On#1234

The system forwards the following sms: 
Input - Ouput
1           1
D          A
D= Disable  A= Active

Example 4: To ask a system report send the following sms:

Estado#1234
The received sms is the same of example #3

IMPORTANT!! For each command to be sent, the system resoponds with a sms.
The interesting thing is that the system always answers to the phone that sent the command, in particular, any one who knows the command and password can use the system.
I think this is a good thing because the numbers of users are unlimited.
If someone forgot the password can be reset and return to the default password by following this procedure: turn off the system and connect the input to ground then turn on and wait 10 second the password will change to 1234, don't forget to disconnect the input.

Nueva version

Basándome en el circuito y programa publicados en entradas anteriores hice algunas mejoras obteniendo los siguientes resultados.
En principio solo uso una entrada y una salida, pero nada impide que se puedan agregar más entradas y más salidas.
En general el sistema permite activar u/o desactivar una salida con el envío de un sms.
Cuando se activa la entrada, se envía un sms a 2 celulares con la palabra "Pánico".
Se le puede solicitar al sistema que nos envíe un sms con el estado en el que se encuentra la entrada y la salida,
Todo el sistema se programa a través del envío de sms, cuando me refiero a programar, significa que para cambiar la clave del sistema, debo mandar un sms y lo mismo para cambiar los números de celular al cuál se envía un sms cuando se activa la entrada
La clave mas los números de celular se almacenan en la eeprom del pic.

La sintaxis del mensaje que se le envía es la siguiente: Comando#Clave.



Comando
Acción
On
Activa la salida
Off
Desactiva la salida
Estado
Pide un reporte al sistema del estado de entrada/salida
Pwd
Cambio de clave
Num1
Graba  primer número de celular
Num 2
Graba segundo número de celular


 Ejemplo 1: la clave del sistema por defecto es 1234 para cambiarla a 5555 se debe enviar el sms:

Pwd5555#1234.

El sistema reenvía el siguiente sms: "La nueva clave fue aceptada"

Ejemplo 2: para grabar el primer numero de celular al cuál se le envía el mensaje de pánico se debe enviar el sms:

Num1+59812345678#1234 (+598 es la caracteristica internacional de mi país y 12345678 sería el número de celular), es lo mismo para grabar el segundo número de celular pero enviando el comando Num2.

El sistema reenvía el siguiente sms: "El nuevo numero de celular fue aceptado"

Ejemplo 3: para activar la salida se envía el sms:

On#1234
El sistema reenvía el siguiente sms:

Entrada - Salida
1              1
D              A
D= Desactivada  y A= Activada
Ejemplo 4: para pedir un reporte del estado de entrada/salida se envía el sms:

Estado#1234
El sistema reenvía un sms igual al del ejemplo 3.

IMPORTANTE!!: por cada comando que se le envíe, el sistema contesta con un sms.
Lo interesante de todo es que siempre le contesta al celular que le envió el comando,  en concreto, cualquier usuario que conozca el comando y la clave puede usar el sistema, con esto se logra que no se tenga un número limite de usuarios.

Si se olvidaron de la clave se puede retornar a la clave 1234, la forma de hacerlo es: se apaga el aparato se pone a tierra la entrada se enciende y se esperan 10 segundos, luego se desconecta la entrada de la tierra y queda cambiada la clave.

La foto de abajo es la placa prototipo en ella se puede ver el módulo gsm conectado a la placa, lo dos integrados que se ven son: el pequeño es un Max232 y el otro es un pic 16F886 que funciona con el oscilador interno.
Uno de los led es para indicar el estado de la salida, y el otro lo uso como monitor para saber cuando se recibe un sms o cuando se está enviando uno.



martes, 9 de agosto de 2011

Módulo Gps

Compré un módulo Gps, ya que tengo pensado incorporarlo al sistema gsm. La idea de funcionamiento, que no es nada nueva, es hacer un sistema de "tracking", con un sms solicitar las coordenadas del lugar donde se encuentra el vehículo, para localizarlo en el mapa de Google Map.
Por ahora lo único que puedo compartir son las fotos del módulo Gps, el cuál supongo que estará llegando a fines de agosto, ya que viene desde China.
Para bajar el manual de este módulo este es el LINK


lunes, 8 de agosto de 2011

Proteus portable

Cansado de tratar de instalar sin éxito en mi PC el programa de simulación de circuitos Proteus, encontré esta versión portable que se debe ejecutar cada vez que se desea simular un circuito.
Para descargar este es el LINK:

viernes, 22 de julio de 2011

Control por sms

El programa anterior enviaba un sms cada vez que se ponía a masa la entrada RB5. Ahora en este nuevo programa ademas de hacer lo anterior, se puede encender u/o apagar la salida RB4 indicada como" led_out".
Enviando el sms con la palabra On o la palabra Off, se enciende o apaga la salida RB4, enviando Estado se recibe un sms reportando el estado de la entrada y salida.
El formato de sms recibido es este:


Inputs - Outputs
1  / 1
D / A

La interpretación del sms del ejemplo es: la entrada 1 está Desactivada (D) y la salida 1 está Activada (A).
Creo que el programa está bien comentado como para entenderlo, y lo pueden bajar en este LINK.


sábado, 16 de julio de 2011

Comunicación entre la placa gsm y el pic

En el primer intento de establecer una comunicación entre la placa gsm y el pic, fue conectando directamente los pines Rx y Tx del pic con el puerto de comunicación de la placa, en este caso, no hubo dialogo.
Mirando el esquema del circuito que proporciona el fabricante de estas placas gsm, veo un MAX 232 que convierte los niveles TTL entregados por el módulo gsm a RS-232, razón por la cual en el primer intento no hubo comunicación con el pic.
Como el pic se comunica con niveles TTL es necesario hacer una conversión de RS-232 a TTL, y usando un MAX-232 se logra el diálogo entre el pic y la placa gsm.
Como conclusión de todo esto:

1) Si se sacan las señales Rx y Tx directamente del módulo gsm, no es necesario agregar al circuito un MAX-232, ya que el módulo gsm y el pic se comunican con niveles TTL.

2) En caso de tener una placa que contenga un puerto de comunicación RS-232, es necesario para la comunicación con el pic, adaptar las señales usando un MAX-232.





miércoles, 13 de julio de 2011

Envio de un mensaje de texto con un pic y el modulo gsm

Hice un pequeño programa para probar el funcionamiento del módulo gsm con el pic, está escrito en lenguaje C y utilizo el compilador CCS v4.104.
El programa envía un sms cada vez que la entrada RB0 del pic pasa a nivel bajo.
La función "verifica_ok()", se usa para chequear el OK que envía el modem después de enviar el sms, si la respuesta es válida se apaga el led.
Con la función "escr_eeprom()", grabo las respuesta que da el modem, para luego leerlas con el programador de pic, es para ir conociendo que responde el módulo cada vez que se le envía un comando AT.
El circuito usado es el que publique en otra entrada.
Aqui pueden leer el prgrama LINK
El circuito usado armado en protoboard.

miércoles, 29 de junio de 2011

Circuito del modulo gsm con microcontrolador

El esquema eléctrico que permite conectar un micro controlador pic con el módulo gsm.
Es muy básico posee un pulsador que actúa como entrada, cada véz que este se presiona hace que se envíe un mensaje de texto.
El led OUT se enciende u/o apaga cuando se le envía el mensaje con la orden correspondiente.
El led STATE es para monitorear que el sistema funcione.
El Max 232 es la interfaz entre el pic y el módulo gsm.
Para no tener que sacar el pic cada vez que se hace una modificación al programa se agregó el conector para la programación In Circuit.
Esquemático del circuito empleado para interconectar el modulo gsm con el microcontrolador pic.
Esquematico del circuito que contiene el módulo GSM

domingo, 19 de junio de 2011

Comandos AT para enviar sms

Estos son algunos de los comando AT que voy a emplear y que los envía el pic al modulo gsm.

AT+CMPS="SM","SM" :Elije la memoria sim para almacenar y leer los sms.
AT+CMGF=1 :Formatos de los mensajes (0=PDU, 1=Texto)
AT+CMGR=1 : Lee el mensaje 1.
AT+CNMI=2,1,0,0,0 : Cuando llega un mensaje muestra la posición en la que está
AT+CMGD=1 : Borra el mensaje 1.
AT+CMGS="num de teléfono" : Envía mensaje al numero de teléfono, las comillas hay que colocarlas.

sábado, 18 de junio de 2011

Pruebas realizadas con el módulo gsm

Hice algunas pruebas como llamar y enviar un sms.
Este video muestra como hacer una llamada.
Con el comando ATD es posible hacer una llamada. En este caso uso un módulo gsm Sim300 conectado al puerto serie de la PC. El comando ATH es para cortar la llamada





Trata sobre el envío de un mensaje sms.
 El primer comando enviado AT es para comprobar que el modulo funcione.
 AT+CMGF=1 es para entrar en el modo texto de escritura de un sms.
Luego de escribir el sms se debe presionar en el teclado de la PC: Ctrl +Z para poder enviar el msj.

miércoles, 15 de junio de 2011

Modulo Gsm



Compre en Ebay esta placa basada en el módulo gsm Simcom 300.
Trae la antena y un módulo de audio aparte.
Las pruebas que hice hasta el momento es conectándola al puerto serie de la PC, y usando los comando AT logre enviar sms e hice algunas llamadas telefónicas.
Lo siguiente será conectarle un microcontrolador pic para hacerla funcionar como un control remoto para que me active una salida o me envíe un sms cuando se active una entrada del pic.
El esquema del circuito de la placa lo pueden conseguir aquí.
Cuando tenga mas resultado los iré publicando, hasta la próxima!!!.