alarma sms

Ejemplo SMS 1. Envío de SMS de alarma ante cambio de entrada digital

Detalles del escenario ejemplo:

• El escenario es muy simple. Tan sólo se necesita enviar un SMS cuando una señal digital proviniente de un circuito externo pasa de “0” a “1”.

• La alarma SMS debe de enviarse por seguridad a 5 números de teléfono (67777771, 67777772 , 67777773, 67777774 y 67777775). El texto debe ser, “ALARMA DETECTADA”.

• Una vez producida la alarma, la señal digital puede cambiar continuamente, por lo que debe limitarse el envío de SMSs de Alarma a no más de 1 vez a la hora.

Solución propuesta con  MTX-65i + MTXTunnel:

alarm-sms

Archivo de configuración del MTX-65i + MTXTunnel para la solución anteriormente propuesta:

Esta configuración es la que hay que introducir en el fichero de configuración del módem para poder realizar la aplicación descrita en el escenario:

MTX_model: MTX65i El modelo MTX escogido es el MTX65i
MTX_mode: none No es necesario un túnel GPRS-Serie
MTX_urc: off No necesitamos los mensajes de información URC
ALARM_gpioEnabled: on Activamos el servicio de alarma por SMS por cambio de entrada digital
ALARM_gpioValue: 1 La alarma saltará cuando la entrada digital haga el cambio “0” -> “1”
ALARM_gpioMessage1: ALARMA DETECTADA Texto de la alarma a enviar por SMS
ALARM_gpioPause: 3600 No queremos que el módem mande más de un bloque de SMS por hora
ALARM_smsNumber1: 677777771 Teléfono 1 de envío de SMS de alarma
ALARM_smsNumber2: 677777772 Teléfono 2 de envío de SMS de alarma
ALARM_smsNumber3: 677777773 Teléfono 3 de envío de SMS de alarma
ALARM_smsNumber4: 677777774 Teléfono 4 de envío de SMS de alarma
ALARM_smsNumber5: 677777775 Teléfono 5 de envío de SMS de alarma
reles gprs ejemplo

Ejemplo relés 2. Control de relés por GPRS y lectura de entradas digitales y analógicas

El ejemplo que voy a mostrar a continuación es similar al anterior pero en lugar de controlar los relés por SMS vamos a hacerlo por GPRS.  Vamos a suponer que queremos hacer una aplicación para PC que se conecte con varios equipos GPRS geográficamente distribuidos para conmutar relés y poder leer a voluntad el estado de 6 entradas digitales y 2 entradas analógicas, una 0-2.4V y la otra 4-20mA. Vamos a usar la plataforma MTXTunnel-IND, que cuenta con esos 4 relés, 6 entradas digitales y 2 entradas analógicas.

¿Cómo hacer eso? Pues lo haremos de la manera más sencilla, con Telnet. El MTXTunnel soporta Telnet, es decir, podemos, por ejemplo, abrir una consola MSDos y escribir “Telnet xxx.xxx.xxx.xxx” donde xxx.xxx.xxx.xxx es la dirección IP actual del MTXTunnel y nos conectaríamos con nuestro PC (que suponemos con conectividad a Internet) remotamente con los MTXTunnel que tienen conectividad GPRS. Una vez conectados por Telnet podemos enviar comandos AT al módem. Veamos un ejemplo:

En este ejemplo vemos que nos hemos conectado vía telnet al MTXTunnel y enviamos el comando AT+CSQ. Ese comando AT sirve para averiguar la cobertura GSM (¡ remotamente !). Pues lo mismo que utilizamos un comando AT para leer la cobertura GSM, podemos usar otro comando AT para conmutar los relés. Concretamente podemos usar los comandos AT:

AT^SSIO=0,0 y AT^SSIO=0,1    para activar y desactivar el Relé 1 del equipo llamado RL1
AT^SSIO=1,0 y AT^SSIO=1,1    para activar y desactivar el Relé 2 del equipo llamado RL2
AT^SSIO=2,0 y AT^SSIO=2,1    para activar y desactivar el Relé 3 del equipo llamado RL3
AT^SSIO=6,0 y AT^SSIO=6,1    para activar y desactivar el Relé 4 del equipo llamado RL7

Y para leer las 6 entradas digitales, pues de forma análoga a lo anterior podemos usar los comandos:

AT^SGIO=3
AT^SGIO=4
AT^SGIO=5
AT^SGIO=7
AT^SGIO=8
AT^SGIO=9

Y por último, para las entradas analógicas usaremos los comandos AT:

AT^SRADC=0    para leer el conversor A/D configurado como 0-2.4V
AT^SRADC=1    para leer el convesor A/D configurado como 4-20mA

Pues bien, estos comandos AT los podemos enviar de manera muy sencilla mediante una consola MSDos vía Telnet, pero resulta también muy fácil programar una aplicación (en Visual Basic, .Net, C#, java …) que se conecte al puerto TCP23 del MTXTunnel (o el puerto TCP configurado) y envíe dichos comandos AT para conmutar relés o leer las entradas digitales  o analógicas.

Por último vamos a activar en este ejemplo el servicio DynDNS, de esa manera no será necesario contratar una tarjeta SIM con dirección IP fija

Archivo de configuración del MTX-IND + MTXTunnel para la solución anteriormente propuesta.

Esta configuración es la que hay que introducir en el fichero de configuración del módem para poder realizar la aplicación descrita en el escenario:

GPRS_apn: movistar.es APN GPRS proporcionado por el operador GSM
GPRS_login: MOVISTAR Login GPRS proporcionado por el operador GSM
GPRS_password: MOVISTAR Password GPRS proporcionado por el operador GSM
GPRS_timeout: 0 Conexión permanente a GPRS
MTX_model: MTX65IND El modelo MTX escogido es el MTX65IND
MTX_mode: none No es necesario ningún túnel GPRS-Serie
FIREWALL_enabled: off No activamos el firewall
TELNET_enabled: on Activamos el Telnet
TELNET_port: on Puerto TCP para el Telnet
TELNET_login: user Login para el Telnet
TELNET_password: 1234 Password para el Telnet
DYNDNS_enabled: on Servicio DynDNS activo
DYNDNS_server: members.dyndns.org Servidor de DynDNS de la cuenta creada
DYNDNS_hostname: mtxtunnel.dyndns.org Nombre de la DNS de un MTXTunnel creado en DynDNS
DYNDNS_login: usuario Usuario de la cuenta de DynDNS
DYNDNS_password: miPassword Password de la cuenta de DynDNS
control-rele-sms

Ejemplo relés 1. Control de relés por SMS

En este ejemplo se muestra cómo configurar el MTXTunnel para controlar 4 relés por SMSs. Relés que pueden utilzarse para activar/desactivar luces, calderas, … Veamos el escenario a resolver con detalle.

Detalles del escenario ejemplo:

• Se necesita controlar 4 relés por SMS para activar o desactivar unas luminarias en una ubicación remota.

• Se pretende que al enviar un SMS con el texto ONx o OFFx, donde x es 1,2,3,4 se activen o desactiven los relés, respectivamente, para ello se necesitarán crear unos ALIAS en el módem.

• Sólo deben tener poder enviar SMS los 100 números autorizados que tiene la empresa, los cuales empiezan por 6662746XX

• Sólo se necesita el acceso a los relés por SMS, pero debe poderse activar el WEBSERVER del MTXTunnel vía SMS (enviando SMS con el texto “mtxtunnel on” o llamada perdida) en sesiones de 10 minutos para realizar tareas de mantenimiento como reconfigurar el propio MTXTunnel así como tener acceso a los relés desde el navegador de un PC.

Solución propuesta con MTX-IND + MTXTunnel

Archivo de configuración del MTX-IND + MTXTunnel para la solución anteriormente propuesta.

Esta configuración es la que hay que introducir en el fichero de configuración del módem para poder realizar la aplicación descrita en el escenario:

GPRS_apn: movistar.es APN GPRS proporcionado por el operador GSM
GPRS_login: MOVISTAR Login GPRS proporcionado por el operador GSM
GPRS_password: MOVISTAR Password GPRS proporcionado por el operador GSM
GPRS_timeout: 10 Las sesiones GPRS de mantenimiento serán de 10 minutos
MTX_PIN: 0000 Si la tarjeta SIM no tiene PIN, dejar en 0000
MTX_model: MTX65IND El modelo MTX escogido es el MTX65IND por los relés
MTX_mode: none No necesitamos túneles serie-gprs
MTX_urc: off No necesitamos los mensajes de información URC
WEBSERVER_enabled: on Habilitamos el servicio WebServer
WEBSERVER_login: user El Login de acceso al webserver
WEBSERVER_password: 1234 El Password de acceso al webserver
WEBSERVER_skin: http://www.mtxtunnel.com/webserverimg/ Skin del WebServer
WEBSERVER_gsmScript: http://www.blogelectronica.com/gps/gsm.php Script localiz. GSM
FIREWALL_enabled: off Firewall desactivado para aceptar conexiones desde cuaqluier IP
SMS_allPhones: off Sólo queremos los 100 números de teléfono autorizados
SMS_validPhone1: 6662746 Indicamos la parte común de los 100 números de teléfono
SMS_ATEnabled: on Se aceptan comandos AT por SMS
SMS_ATResponse: on Se devuelve la respuesta al comando enviado por SMS
SMS_alias1: ON1>AT^SSIO=0,0 Activamos el Relé1 cuando se reciba un SMS con ON1
SMS_alias2: OFF1>AT^SSIO=0,1 Desactivamos el Relé1 cuando se reciba un SMS con OFF1
SMS_alias3: ON2>AT^SSIO=1,0 Activamos el Relé2 cuando se reciba un SMS con ON2
SMS_alias4: OFF2>AT^SSIO=1,1 Desactivamos el Relé2 cuando se reciba un SMS con OFF2
SMS_alias5: ON3>AT^SSIO=2,0 Activamos el Relé3 cuando se reciba un SMS con ON3
SMS_alias6: OFF3>AT^SSIO=2,1 Desactivamos el Relé3 cuando se reciba un SMS con OFF3
SMS_alias7: ON4>AT^SSIO=6,0 Activamos el Relé7 cuando se reciba un SMS con ON4
SMS_alias8: OFF4>AT^SSIO=6,1 Desactivamos el Relé7 cuando se reciba un SMS con OFF4
SMS_aliasOk: Comando Ok Se envía este texto por SMS si el comando SMS se ejecutó bien
SMS_aliasError: Comando Error Se envía este texto por SMS si el comando SMS se ejecutó mal

Básicamente con esta configuración se configuran unos ALIAS.  Puedes encontar la explicación completas de los ALIAS en el manual del MTXTunnel, pero básicamente sirven para lo siguiente:  el MTXTunnel es capaz de ejecutar comandos AT vía SMS. Para conmutar un relé bastaría con enviar un comando AT como por ejemplo ”AT^SSIO=0,0″ si queremos conmutar el Relé1. Obviamente es algo complicado teclear en un teléfono móvil (y recordar, por supuesto) ese comando AT, por lo que el MTXTunnel permite el uso de ALIAS. Es decir, es posible definir una clave para que cuando  el MTXTunnel reciba por SMS esa clave ejecute el comando AT asociado a esa clave. En el ejemplo mostrado el ALIAS  “ON1″ ejecutaría el comando AT  “AT^SSIO=0,0″ por lo que bastaría con enviar un SMS con la palabra “ON1″ para conmutar un relé.

Bajo consumo gprs to rs232 low power

Ejemplo ULP1. Comunicaciones gprs de ultra bajo consumo (ultra low power).

El siguiente ejemplo muestra una configuración típica para un sistema de ultrabajo consumo con comunicaciones GPRS.  Imaginemos que nuestro escenario es el campo y por tanto sin posibilidades de alimentación normal (es decir, sin toma de red 220V). Tenemos 3 equipos  con puerto RS232 que van recolectando ciertos datos y queremos leerlos una vez al día desde un puesto de control central.

Como decimos el consumo es crítico en la aplicación, por lo que los módems GPRS deben estar totalmente apagados (consumo de 2 uA) y únicamente activarse unos minutos una vez al día para el volcado de la información al servidor. De esa manera conseguiremos que las baterías de los módems duren varios años. Veamos un poco más en detalle el escenario completo.

Detalles del escenario ejemplo:

• Se dispone de tres estaciones metereológicas con puerto RS232. Éstas funcionan con baterías y recogen continuamente parámetros metereológicos que almacenan en su interior. Se precisa leer esos datos metereológicos almacenados en ellas mediante GPRS una vez al día, pero sin comprometer el consumo del sistema, es decir, se precisa un consumo mínimo por parte del módem GPRS conectado a la estación metereológica.

• Por esa razón los módems deben permanecer en modo ultrabajo consumo (2 uAmperios) 24 horas y despertar sólo unos minutos.

• Cada 24h los módems deben despertarse, conectarse a GPRS y conectarse a un servidor remoto que tenemos en la oficina con dirección IP 200.201.202.203 el cual está a la escucha en el puerto TCP 20010.

• Una vez conectado un MTXTunnel al servidor remoto lo primero que tiene que hacer el MTXTunnel es identificarse (el servidor tiene que saber qué MTXTunnel de los 3 se ha conectado en un momento dado). Para ello cada módem tiene que enviar un ID distinto justo al realizar la conexión, por ejemplo ”Equipo1″, “Equipo2″ y “Equipo3″. Una vez enviado el ID, estará establecido un tunel GPRS-RS232 transparente entre el servidor de las oficinas centrales y la estación metereológica conectada al MTXTunnel, por lo que el servidor central podrá leer los datos de la estación metereológica como si tuviera conectado un cable serie RS232.

• Se establecerá un tiempo de tunnel de 2 minutos. Es decir, si pasan 2 minutos y no hay tráfico GPRS el MTXTunnel pasará a modo ULP (Ultra Low Power) y no se despertará hasta al cabo de 24h.

Solución propuesta con MTX-65ULP + MTXTunnel

Archivo de configuración de  MTX-65ULP + MTXTunnel para la solución anteriormente propuesta.

Esta configuración es la que hay que introducir en el fichero de configuración del módem para poder realizar la aplicación descrita en el escenario:

COMM_baudrate: 9600 Baudios del puerto serie
COMM_bitsperchar: 8 8 bits de datos
COMM_autocts: off Control de flujo hardware CTS desactivado
COMM_autorts: off Control de flujo hardware RTS desactivado
COMM_stopbits: 1 1 bit de stop
COMM_parity: none Sin paridad
GPRS_apn: movistar.es APN GPRS proporcionado por el operador GSM
GPRS_login: MOVISTAR Login GPRS proporcionado por el operador GSM
GPRS_password: MOVISTAR Password GPRS proporcionado por el operador GSM
GPRS_timeout: 120 El módem permanecerá conectado a GPRS permanentemente
MTX_PIN: 0000 Si la tarjeta SIM no tiene PIN, dejar en 0000
MTX_model: MTX65ULP Modelo del módem
MTX_mode: client El módem se configura como clientTCP
MTX_IDClient: equipoX Identificador de MTXTunnel, X debe ser diferente para cada módem
MTX_urc: off No necesitamos los mensajes de información URC
TCP_IP: oficina.midominio.com IP (DNS) del PC Servidor al que se conectará
TCP_port: 20010 Puerto TCP del PC Servidor al que se conectará
ULP_sleepMode: mnutes Indica que el módem se despertará cada X minutos
ULP_rtc: on El módem usará la RTC para despertarse cada X minutos
ULP_minutes: 1440 El módem se despertará cada 1440 minutos = 24 horas
ULP_mode: gprs El envío de la telemetría será por GPRS (no SMS)