Sistema de Control y Supervisión remota basada en telefonía

Anuncio
Sistema de Control y Supervisión remota basada en
telefonía móvil GSM
Carmina Boter; Laia Sánchez; J. L. Romeral
Departament d’Enginyeria Electrònica. Universitat Politécnica de Catalunya
Colón 1, 08222 Terrassa (Barcelona). Spain
Tel.: +34 937398194, Fax.: +34 937398016
[email protected]
emergencia,..) no puede confiarse en ningún margen
preestablecido, En otras palabras, el sistema no es
determinista.
Resumen
La aplicación presentada tiene como finalidad controlar y
supervisar plantas aisladas desde cualquier punto remoto
mediante un teléfono móvil, utilizando un módem GSM
conectado a un autómata programable o PLC.
El sistema es capaz de realizar el control de la planta
mediante el envío y la recepción de mensajes cortos de
texto, concretamente mensajes SMS (Short Message
Service), los cuales podrán ser redireccionados a distintos
números de teléfono, según los protocolos establecidos en
la aplicación. Estos mensajes, prefijados o incorporando
variables de estado, pueden considerarse como alarmas si
los genera automáticamente el PLC, o como respuestas a
demandas de información desde el operador.
-
La comunicación sólo podrá establecerse si existe
cobertura para la señal. Dado que ésta depende de la
posición del operador y del estado de la red, no puede
garantizarse el enlace permanentemente.
-
El teléfono móvil utiliza batería, y ésta debe recargarse
periódicamente. Durante los tiempos de recarga, el
operador permanece desconectado del sistema.
-
Aunque no están definitivamente establecidos los
efectos fisiológicos de la telefonía móvil celular, la
aplicación del principio recomendado de gestión de
riesgo “as low as reasonably achievable” puede llevar a
una reducción de la potencia de los terminales y
módems, dificultando la expansión de las aplicaciones
industriales sugeridas en este artículo.
1. Introducción
Actualmente, la telefonía móvil está ganando terreno en el
campo
de
las
comunicaciones
interpersonales,
conjuntamente con aplicaciones basadas en Internet. El
número de móviles que se comercializa aumenta
continuamente, y la demanda de uso se centra
mayoritariamente en la recepción y envío de mensajes
cortos, lo que ha propiciado la reducción de costes y la
mejora continua en los tiempos de recepción y
retransmisión de los mismos por parte de las compañías de
servicios.
Por otra parte, la telefonía móvil presenta frente a otras
alternativas de comunicación industriales algunas ventajas
ciertamente destacables:
-
Así, el sistema permitirá (Fig. 1):
-
Enviar Órdenes desde el operador (parada/marcha,
cambio de consignas, etc), y recibir Respuesta de
ejecución desde el PLC
-
Enviar Alarmas desde el PLC, y reconocerlas por
Confirmación desde el operador, modificando si
procede la secuencia de control.
No es necesaria una línea física de interconexión, lo que
permite colocar la aplicación y el usuario en cualquier
punto.
-
Siendo un adminículo de uso personal, el peso y el
tamaño del móvil se reduce continuamente, lo que
contribuye a su transportabilidad.
-
El precio del móvil es muy reducido, y además el
usuario ya lo ha amortizado con su uso personal, sin que
repercuta en el coste final de la aplicación. Por su parte,
el precio del módem, siendo ligeramente superior,
tampoco es significativo frente a los elementos típicos
de un sistema automatizado.
Naturalmente, presenta también algunas desventajas:
-
En cualquier caso, puede establecerse como campo general
de aplicación la supervisión y seguimiento de plantas
remotas, y la posibilidad de actuación previa a la presencia
física del operador.
El sistema puede enviar y recibir mensajes y órdenes
continuamente, pero cuando el tiempo de respuesta es
un factor crítico (alarmas vitales, paradas de
Orden / Confirmación
MODEM
PLC
SMS
USUARIO
Respuesta / Alarma
SISTEMA
Fig. 1. Aplicaciones del sistema
Tampoco debe descartarse la opción de, una vez conectado
el sistema, utilizarlo no sólo para supervisión y control, sino
también para actualización y/o reparación del programa del
autómata, evitando desplazamientos superfluos de
programadores e integradores.
45
2. Configuración del Sistema
Los componentes del sistema descrito son (Fig.2) el
Autómata Programable o PLC, el módem GSM y el móvil
de usuario, además del PC que servirá para la programación
y puesta a punto de todos los elementos.
La comunicación entre PLC y MODEM se hace mediante
conexión estándar RS-232 (Tabla I), por los puertos
disponibles a tal efecto en ambos aparatos.
Rx
Tx
GND
2)
3)
5)
(2
(3
(5
Fig.3 Conexión PLC - MODEM a tres hilos
La Tabla II muestra la equivalencia entre las señales del
conector estándar RS-2323 (25 pines) de la Tabla I, y los
más frecuentes conectores industriales DB9 de sólo 9 pines.
DB9
PLC
Conector RI 45
RS-232
1
2
3
4
5
6
7
8
9
Móvil
GSM
Módem GSM
Conector DB9
Fig. 2 Diagrama de bloques del sistema
Número
Señal
Descripción
1
Ground
Tierra de protección
2
TxD
Transmisión de Datos
3
RxD
Recepción de Datos
4
RTS
Petición de envío. Señal de
salida controlada por el DTE
5
CTS
Habilitación de envío. Señal
de respuesta controlada por
el DCE
6
DSR
Confirmación de estado de
módem operativo
7
GND
Común de señal
8
DCD
Detección de portadora
15
TC
Reloj de transmisión
17
RC
Reloj de recepción
20
DTR
Confirmación de estado de
Terminal (PLC) operativo
22
RI
Indicador de recepción de
llamada de línea
Tabla 1. Señales de enlace RS-2323
El módem incorpora un puerto estándar en configuración
DCE (Data Communication Equipment), mientras que los
autómatas suelen disponer de puertos configurables, que
habrá que parametrizar para funcionamiento RS-232 en
configuración DTE (Data Terminal Equipment). Las
señales a utilizar son todas las indicadas en la Tabla I, o
únicamente las tres primeras, dependiendo de si se pretende
establecer contención hardware o no. En cualquier caso, el
enlace entre ambos se realiza pin a pin, como muestra el
ejemplo de Fig. 3, realizado sobre conectores DB9.
DTE
DCE
Rx
Tx
GND
Señal
DCD
RxD
TxD
DTR
GND/SG
DSR
RTS
CTS
RI
DB25
8
3
2
20
7
6
4
5
22
Tabla I1. Equivalencia entre conectores DB9 y DB25
La configuración típica del enlace PLC-MODEM podría ser
la siguiente:
Velocidad: 9600 baudios
Data bits: 8 bits; Stop Bits: 1
Paridad: ninguna;
Control de flujo: ninguno
El tiempo de respuesta del módem (señal CTS) a la
demanda de comunicación del PLC (señal RTS),
denominado ‘tiempo de inversión’, es característico de cada
MODEM y debe ser tenido en cuenta al establecer el
programa de control del puerto en el autómata.
La comunicación entre el usuario y el sistema se realiza vía
GSM (Global System for Mobile Comunications),
intercambiando información según norma ETSI GSM 7.07
(AT Command Set for GSM Mobile Equipment), a una
frecuencia de 900MHz.
2.1 MODEM GSM
Un MODEM GSM no es más que un terminal celular
semejante a un teléfono móvil, pero sin teclado ni display.
Por lo tanto, necesita darse de alta en algún operador, que le
proporcionará un número por contrato o tarjeta, y un
número de Centro de Mensajes, para la recepción/envío de
mensajes SMS. En esta aplicación se utiliza el MODEM
WAVECOM [1].
En cuanto al software de control o comandos del MODEM,
la mayoría de ellos se ajustan a la norma Hayes [3],
comandos del tipo AT+, que tienen el formato general
siguiente:
AT+Comando = Dato <CR> <LF>
para escritura de configuración / envío de mensajes, y
AT+Comando? <CR> <LF>
para lectura de configuración / estados del MODEM.
Como se puede observar, el fin de la transmisión queda
identificado por los caracteres <CR> y <LF>, excepto en
algunos comandos especiales.
46
Por ejemplo, para programar el MODEM con la
configuración anterior, hay que enviarle los comandos
indicados en la Tabla III.
9600 bps
8 bits de datos
AT+ICF=3,4<CR><LF>
Sin paridad
1 bit de Stop
Tabla III. Ejemplo de configuración del MODEM
-
AT+IPR=9600<CR><LF>
-
La configuración o parametrización inicial del MODEM
puede ser realizada desde el PLC, o desde un PC con el
software de control de puerto COM serie adecuado, por
ejemplo, Hyper Terminal (Fig. 4). En cualquier caso, los
parámetros de enlace RS-232 han de ser idénticos siempre
en ambas partes de la línea.
-
Respuesta:
El módem pide el número de PIN
-
Introducimos PIN
-
Preguntamos por cobertura
Respuesta:
0: Registro de operadora desactivado
AT+CSMP = ‘1,167,0,0’, con el que se define el tipo
de mensajes, que con los valores indicados serán
mensajes tipo SMS-SUBMIT, 24 horas máximas de
retención de mensaje en el Servidor antes de hacerlo
llegar a destino, envío del mensaje como texto ASCII y
sin conversión a cadena binaria.
AT+CMEE, = 1, para habilitar la generación de
mensajes de error con el formato ‘+CMS/CME ERROR:
<tipo de error>’ desde el MODEM.
ATE0, para deshabilitar el eco de caracteres recibidos
desde el PLC en el MODEM.
ATQ0, para habilitar el envío de los caracteres de
confirmación (‘OK’) o de error desde el MODEM
después de recibir un comando.
AT+CNMI=2,1,0,0,0. Este comando define la gestión
de mensajes entrantes en el MODEM. En la aplicación,
se ha optado por que el MODEM advierta al PLC que
ha llegado un mensaje y está almacenado en una cierta
posición de la memoria SIM.
AT&W, para grabar en memoria EPROM del MODEM
la configuración actual.
AT+CREG, para leer desde el MODEM el estado actual
del operador con quien se tenga dada de alta la SIM,
incluyendo la cobertura..
AT+CMGS, comando esencial para el envío de
mensajes al MODEM, según la secuencia siguiente:
Enviar al módem:
Fig. 4 Envío de PIN y consulta de cobertura desde PC
AT+CMGS=699799315
(número de móvil)
Respuesta 1ª módem:
>
Enviar al módem:Mensaje SMS <ctrl-Z>
Existe un gran número de comandos AT con diferentes
finalidades, para programación del puerto, envío de
mensajes SMS, gestión de memoria de mensajes dentro de
la tarjeta del MODEM, establecimiento de llamadas de voz,
etc., aunque no todos son necesarios para la aplicación
propuesta. Ejemplos de comandos a utilizar, además de los
mostrados en la Tabla III, son los siguientes:
-
-
-
-
AT+CPIN = “código PIN”, con el que se envía al
MODEM el PIN o Personal Identification Number de la
tarjeta SIM o Suscriber Identity Module para poder
inicializar el Sistema
AT+CSCA = ”Número del Centro Servidor de
Mensajes”, o CSA (Service Centre Address) que indica
qué Servidor se utilizará para enviar el mensaje
AT+IFC = n1,n2, con el que se definen las señales a
considerar en el enlace RS-232. Por ejemplo, n1,n2 =2,2
indica al MODEM que las señales RTS (Request to
Send) y CTS (Clear to Send) serán necesarias para el
control de la transmisión y recepción de datos.
AT+CMGF=n, con el que se define el modo texto o
PDU (cadena binaria) para la transmisión/recepción de
mensajes. Por ejemplo, si se desea trabajar en ASCII, lo
que facilita la manipulación de datos en el PLC, debe
hacerse n=1.
AT+CSCS =”PCCP437”, para habilitar el alfabeto
especial PCCP437, que incluye el carácter ‘@’. Así, la
aplicación será capaz de enviar una dirección de correo
como encabezamiento del mensaje SMS, lo que
redirecciona el mismo a un servidor de correo
electrónico.
47
Respuesta 2ª módem:
+CMGS: 188
OK (mensaje enviado)
Muchos de estos comandos son de tipo escritura/lectura, y
enviados con un interrogante ‘?’ responderán con la
configuración/estados actuales del MODEM.
Algunos de estos comandos pueden ser parametrizados
inicialmente en el MODEM, y no es necesario enviarlos
para cada enlace establecido.
2.2 Autómata Programable
La mayor parte de PLCs disponen de uno o más puertos
serie integrados en el cuerpo del autómata, o disponibles
como accesorios conectables a él. Las instrucciones de
usuario permiten la manipulación de estos puertos para la
recepción y envío de datos, una vez parametrizados
correctamente con el software de programación
Los datos transmitidos/recibidos pueden estar codificados
en diferentes formatos, siendo los más usuales los códigos
ASCII y Hexadecimal. En concreto, los comandos y datos
a enviar al MODEM deben ser previamente tratados en
registros internos del autómata, hasta formar la secuencia
completa ‘comando AT + parámetro’, según los ejemplos
mostrados en la Tabla III.
En esta aplicación se utiliza el autómata IDEC IZUMI
Micro3 [3], que dispone de un puerto serie adicional
además del puerto de programación, configurable como
puerto se usuario y gestionado con las instrucciones TXD y
RXD, que permiten el envío y recepción de datos a través
del mismo. En Fig. 5 se muestra la estructura y
programación de la instrucción TXD, siendo muy similar la
de la instrucción RXD. S1 es el dato a transmitir, D1 es el
registro o relé interno que advierte de que la transmisión se
ha realizado correctamente, y D2 es el registro que informa
del estado actual de la transmisión: preparando,
transmitiendo, o completada. Para la programación de la
instrucción se abre una ventana de usuario en el software de
programación del autómata, que permite la introducción de
todos estos valores.
3. Lectura del mensaje en registros del PLC, e
identificación del mismo por comparación con una
plantilla de órdenes predefinidas.
Cada instrucción puede transmitir / recibir hasta un
máximo de 200 bytes. Todos los caracteres del teclado se
pueden enviar o recibir, ocupando 1 byte cada uno de ellos.
También pueden enviarse o recibirse datos en codificación
hexadecimal
Si el mensaje recibido es de Control y no de Supervisión, el
PLC lo atenderá después de identificar la orden (punto 3)
devolviendo (puntos 4 y 5) un mensaje de confirmación de
orden ejecutada al usuario, por ejemplo, ‘ORDEN OK’.
4. Atención de la orden, y generación de la secuencia de
respuesta a transmitir.
5. Escritura de la secuencia en el MODEM, incluyendo el
número del teléfono móvil al que se llamará.
6. Confirmación de envío desde el móvil, y paso al estado
de recepción (lectura).
Para el caso de emisión de Alarmas, el protocolo es:
1. Preparación de la secuencia a transmitir, incluyendo o
no variables de proceso, tras la aparición de la alarma.
2. Escritura del mensaje en el móvil, y confirmación de
recepción por parte de éste.
3. Paso del PLC al estado de recepción, y espera de la
confirmación de lectura por parte del usuario.
4. Recepción de la confirmación de usuario en el PLC, y
activación de las siguientes opciones (según el tipo de
alarma enviada):
a. Paso al estado de Supervisión/Control , en espera de
nuevas indicaciones por parte del usuario.
b. Actuación directa sobre el proceso.
Fig. 5. Configuración de la instrucción TXD
Para la sincronización entre el PLC y el MODEM es
necesario interpretar correctamente el fin de cada
transmisión. Para ello, al final de la mayoría de los
comandos AT se debe enviar un CR (Carry Return) y un LF
(Line Feed). Estos caracteres tienen su correspondiente
valor decimal: CR = 13d ; LF = 10d., aunque también cabe
emplear su equivalente en hexadecimal debido a la
posibilidad de incorporar esta codificación en las
instrucciones TXD. En este caso, los códigos
correspondientes son CR = 0Dh; LF = 0Ah.
Para indicar el final de texto de mensaje, carácter ctrl+Z, se
envía su codificación en hexadecimal, que corresponde a
1Ah.
3. Descripción de la aplicación
La aplicación desarrollada cubre dos
representadas esquemáticamente en Fig. 1:
-
Supervisión/Control del proceso.
-
Generación y envío de alarmas
opciones,
El protocolo de usuario para la Supervisión se establece
como sigue:
1. Envío de un mensaje codificado al MODEM desde un
teléfono móvil, demandando cierta información.
2. Recepción en el MODEM, y re-envío al PLC, cuyo
puerto permanecía en estado de lectura (es decir,
esperando al ejecución de una instrucción RXD).
Ambos protocolos se han programado de forma que tras
cada escritura en el MODEM es necesario hacer una lectura
del mismo, para comprobar que el comando ha sido
correctamente
atendido
(respuesta
‘OK’).
Esta
comprobación asegura la robustez del sistema en el nivel
básico de enlace, aunque no se ha introducido ningún
protocolo de identificación/corrección de errores:
desconexión del móvil llamado, o no recepción de la
respuesta de confirmación desde el mismo, órdenes de
usuario (mensajes) no identificables, etc., dado que esta
comprobación es muy dependiente de la aplicación final
desarrollada.
Todos los comandos y datos enviados /recibidos por el
puerto de enlace PLC-MODEM lo son codificando los
caracteres ASCII en serie, tal y como deben aparecer en el
mensaje final.
Los protocolos anteriores han sido programados en el
autómata, mostrándose ahora como ejemplo la secuencia
programada para la emisión de una alarma de proceso, que
consta de tres etapas transmisión-recepción:
ETAPA 1
1.1 Introducción del código PIN de la tarjeta SIM que está
dentro del módem, mediante el envío del comando
AT+CPIN.
1.2 Espera del ‘OK’ de confirmación de que el módem ha
procesado correctamente la orden o comando de
identificación de tarjeta.
La confirmación puede hacerse por lectura y comprobación
de los caracteres ‘OK’, o simplemente comprobando que la
48
recepción ha sido correcta (registro D2 de la instrucción
RXD, ver apartado2.2, Fig. 5).
Primer Scan de PLC
ETAPA 2
2.1 Envío del comando AT+CMGS, por ejemplo,
AT+CMGS=699799314, número de llamada del
MODEM.
2.2 Tras la confirmación de recepción, se espera recibir en
el PLC el carácter “>”, que significa que el MODEM
está esperando el texto del mensaje a retransmitir.
Inicializar registros
Comando
AT+CPIN=2533
Esperar 20 s
ETAPA 3
3.1 Generación y/o preparación de la secuencia a
transmitir, con o sin variables de estado.
3.2 Envío del texto de alarma. Esta etapa, la que manda el
mensaje, se podría considerar como la segunda fase del
comando AT+CMGS.
3.3 Comprobación de envío correcto. Para ello, se espera
recibir desde el MODEM la secuencia
+ CMGS: nº de mensaje
OK
Comando
AT+CSCA=”+34656000311”
Comandos de configuración
AT+IPR= 9600
AT+ICF= 3,4
AT+IFC= 2,2
AT+CMGF= 1
AT+CSMP= 1,167,0,0
AT+CSCS= “PCCP437”
AT+CMEE= 1
ATE0
ATQ0
AT&CNMI= 2,1,0,0,0
La secuencia general de cada etapa, y por ende de toda la
aplicación, está esquemáticamente representada en Fig. 6.
Inicializar Registros
Salvar parametros
AT&W
Enviar Comando / Datos
Cobertura
AT+CREG?
Esperar respuesta
Fig.7. Secuencia de inicialización del MODEM
Confirmar respuesta
5. Conclusiones
Fig.6. Secuencia de operación PLC - MODEM
-
datos de configuración para enviar al MODEM
Se ha presentado en este trabajo los principios de operación
para establecer una supervisión / control a distancia de una
planta controlada mediante un autómata programable por
medio de la telefonía móvil celular.
-
textos de mensajes constantes predefinidos, para
enviar al MODEM, o comparar con mensajes
recibidos,
El sistema propuesto, de muy bajo coste, resulta sencillo de
implementar sobre cualquier autómata o equipo de control
de mercado con salida RS-232.
-
la parte del mensaje de salida que incorporará
variables de estado del proceso.
La aplicación descrita puede ser adaptada a cualquier
proceso que no exija tiempos de respuesta críticos, sin más
que cambiar los protocolos de conversación programados
en el PLC.
La inicialización carga en los registros del PLC las
constantes de la aplicación:
La secuencia de inicialización del MODEM, que
típicamente se realizará una única vez en la puesta en
marcha, podría ser la representada en Fig. 7 (el PIN y los
números de teléfono son ejemplos).
49
Referencias
[1]
http://www.wavecom.com/showroom/bigframe.html
[2]
http://www.cellular.co.za/hayesat.htm#SMS Command Set
[3]
http://www.idec.com/usa/html/PLCs.html
Descargar