Mensajería
El nodo puede enviar y recibir mensajes de texto (SMS).
Se pueden programar hasta 8 mensajes,
y a estos se les puede indicar que incluyan el valor de variables
internas. Además cuenta con mensajes predefinidos para informar acerca de
su estado.
Hay 3 maneras para que se envíen los SMS:
1. Controlados por el PLC o dispositivo maestro que esté conectado al
nodo.
2. Por un SMS enviado al nodo.
3. Por programa desde el mismo nodo.
Por controlador maestro
Cuando se escribe en un área específica de la memoria
del nodo (dirección Modbus 49001 en adelante) los datos no son
retransmitidos, sino que se "dirigen" al nodo.
49370 o SmsIdx, que es el número (1
al 8) de SMS a enviar.
49371 o SmsDst, que es el número (1
al 4) de destinatario.
Un controlador externo como un PLC o una pantalla puede
indicarle al nodo que envíe mensajes. Se debe elegir el número de mensaje
y el número de destinatario. Estos se definen al configurar
el nodo. Suponiendo que el mensaje que se quiere enviar contenga
variables, el orden de procedimiento es este:
1. Escribir o actualizar el valor en las variables selectas (por arriba
de 49001), si es que el
mensaje las tiene.
2. Escribir el
número de SMS a enviar en la variable 49370 (SmsIdx).
3. Escribir el
número de destinatario en la variable 49371 (SmsDst). Aquí
se desencadena el envío del SMS.
Por SMS
Para hacerlo por SMS (desde el teléfono de un usuario)
el mensaje debe tener 3 elementos:
1. La clave. Es una contraseña prefijada en el nodo al momento de programarlo.
2. El comando. En
este caso de ejemplo es "mensaje".
3. El número de
mensaje. Entre 1 y 8.
El nodo responderá al remitente con el mensaje
especificado (ver solapa "Mensajes"). En caso de tener variables, estas
deben ser refrescadas permanentemente desde el dispositivo conectado al
nodo para asegurarse de que el mensaje contenga los valores mas recientes.
Un ejemplo de mensaje programado en el nodo con
variables podría ser:
Alarma!! presión = &10,
temp. = &11
Literalmente como se ve se envía, excepto los elementos
marcados con un &. Estas son las variables internas del nodo. En este
ejemplo &10 corresponde a la variable cuya dirección es 49010 y
&11 a la 49011. Como son variables internas controladas desde el mismo
nodo se omite el 49xxx. El destinatario del mensaje recibiría, por
ejemplo, algo como:
Alarma!! presión = 205, temp.
= 98
205 y 98 son los valores (hipotéticos para este
ejemplo) de las variables 49010 y 49011 respectivamente al momento de
enviar el mensaje. Las variables internas del nodo van desde 49001 a la
49352, y no es necesario asociar variables a los mensajes.
Para comunicarse con el nodo mediante SMS el usuario
debe enviar un mensaje con el siguiente formato:
contraseña comando argumentos
Un ejemplo sería:
1234 mensaje 2
Es este caso el nodo responderá al remitente con el
Texto SMS 2 programado en el nodo. La única variante es enviar solamente
la contraseña. En este caso el nodo responderá al remitente con el Nombre
identificador de este dispositivo (ver solapa "Telemetría").
Si hay algún error en el mensaje enviado por el
remitente (contraseña incorrecta, número de mensaje mayor que 8, espacios
de más, etc) el nodo NO responderá.
Desde el mismo nodo
Como en el caso descrito en "Por controlador maestro",
las variables 49370 (SmsIdx) y 49371 (SmsDst) son controladas mediante
programa. Esto es útil con un 2CGSMPLC ya que se puede "avisar" de algún
evento "detectado" por sus entradas. La secuencia es:
1. Escribir o actualizar el valor en las variables selectas (por arriba
de 49001), si es que el mensaje las tiene.
2. Escribir el
número de SMS a enviar en la variable 49370 (SmsIdx).
3. Escribir el
número de destinatario en la variable 49371 (SmsDst). Aquí
se desencadena el envío del SMS.
Comandos personalizados
Se pueden elegir hasta dos palabras clave para
desencadenar eventos. Cuando el nodo recibe un SMS con alguna de esas
palabras, una variable interna es puesta en valor 1. La acción se ejecuta
mediante el programa con el que se ha programado el nodo. Ejemplo:
ld CustCmd1On
;Leo
eq 0
;Comparo con 'no activado'
jmpc NoS0
;Si no se activó, omito programa hasta 'NoS0'
move 0,
CustCmd1On ;Borro
activación como 1° paso
...
...líneas de código aquí
...
NoS0 ld...
Las variables internas CustCmd1On y CustCmd2On (mas 3 y
4 para la ROM 1.05) corresponden a cada uno de los comandos personalizados
o definidos por el usuario. Cada
uno puede tener hasta 15 caracteres y es indistinto mayúscula o minúscula.
El formato del SMS es:
contraseña
comando_personalizado
Ejemplo:
1234 apagar
En el ejemplo 1234 es la clave de acceso, y apagar la
palabra-comando. Ambos se cargan
en el nodo programándolo.
Mensajes predefinidos
Estos no se pueden modificar. Están pensados para
informar acerca del estado del nodo. Se usa el mismo formato de contraseña
comando.
- Contraseña
sola: responde con el nombre que se le ha asignado al nodo
-
Contraseña
info: responde con unos parámetros que pueden ser
interpretados con el utilitario que está en el software de
programación o en la página de telemetría.
- Contraseña
i/o: (ROM 1.05 en adelante) devuelve los valores correspondientes a
los estados de las entradas y salidas. Solo tiene utilidad en el
modelo 2GSMPLC.
- Contraseña
cont:
(ROM 1.06 en adelante) devuelve los valores de los contadores de
eventos:
- ErrCon:
cantidad de fallas de conexión
- FteOff:
cantidad de apagados del nodo
- WDCW:
cantidad de errores graves
- ErrTot:
cantidad de errores irrecuperables
- Prgrm:
cantidad de veces que fue programado
- ErrMasCon:
cantidad de errores masivos de conexión
- cntNoGPRS:
cantidad de intentos de conexión sin GPRS
- ReqTx:
contador tiempo desde última petición de transmitir (ROM 1.07)
- Tx:
contador tiempo desde última transmisión (ROM
1.07)
- Contraseña
cont0:
(ROM 1.06 en adelante) pone a cero los contadores de eventos
Indice