¿Buscas alguna otra cosa?
Table of Contents
Detalles del escenario
Los routers Titan incluyen todas las características típicas de un router 2G / 3G / 4G. Sin embargo, también incluyen una serie de características adicionales que ayudan a convertirlo en uno de los routers líderes del mercado por la cantidad de características adicionales que incluye.
Una de estas características adicionales es la capacidad de ejecutar AT commands a través de SMS. Mediante comandos AT, podemos leer parámetros como la cobertura de la red, realizar un reset del dispositivo, cambiar la configuración, conmutar un relé, editar un registro Modbus en un dispositivo externo conectado al router, etc.
De vez en cuando, puede ser difícil ejecutar AT commands directamente a través de SMS, dado que pueden ser largos e incómodos de escribir en un teléfono móvil. En los siguientes ejemplos veremos las ventajas de utilizar ALIAS que solucionan este problema.
Descripción del ejemplo
En este ejemplo, configuraremos los comandos SMS para un router Titan. Imaginemos que tenemos la siguiente configuración:
(Imagen: envío de mensajes SMS; dispositivo Modbus TCP / RTU con puerto Ethernet / RS232 / 485)
Configuraremos 5 mensajes SMS. El mensaje 1 recuperará la cobertura de red del router de forma remota. El mensaje 2 escribirá el valor 1 en el registro # 5 de Modbus RTU con la dirección @ 1. El mensaje 3 escribirá el valor 0 en el registro # 5 de Modbus RTU con la dirección @ 1. El mensaje 4 escribirá el valor “1” en el registro # 5 del dispositivo Modbus TCP con la dirección IP 192.168.1.95 y el puerto TCP 502. El mensaje 5 escribirá el valor “0” en el registro # 5 del dispositivo Modbus TCP con la dirección IP 192.168.1.95 y puerto TCP 502.
Cómo se deben enviar los comandos SMS sin ALIAS
Si no usamos ALIAS y por tanto tenemos que enviar comandos AT directamente, tendríamos que enviar el siguiente código para cada uno de los mensajes detallados anteriormente:
SMS nº1: mtx at+csq
SMS nº2: mtx at^mtxtunnel=setmodbus,1;5;1
SMS nº3: mtx at^mtxtunnel=setmodbus,1;5;0
SMS nº4: mtx at^mtxtunnel=setmodbus,192.168.1.95:502;5;1
SMS nº5: mtx at^mtxtunnel=setmodbus,192.168.1.95:502;5;0
Como podemos ver, estos no son mensajes fáciles de escribir, especialmente en un teléfono móvil. Para evitar esto, podemos usar ALIAS, donde el código anterior se sustituye por un texto específico que se puede escribir y ejecuta el código correspondiente.
Cómo se deben enviar los comandos SMS mediante ALIAS
Primero debemos establecer el texto que tendrá asociado cada uno de los SMS anteriores. Por ejemplo, podemos elegir lo siguiente: “gsm”, “rtu on”, “rtu off”, “ip on”, “ip off”.
gsm at+csq
rtu on at^mtxtunnel=setmodbus,1;5;1
rtu off at^mtxtunnel=setmodbus,1;5;0
ip on at^mtxtunnel=setmodbus,192.168.1.95:502;5;1
ip off at^mtxtunnel=setmodbus,192.168.1.95:502;5;0
En otras palabras, cada vez que enviamos un SMS con el texto rtu on, el router ejecutará el AT command asociado con este código, es decir, en ^ mtxtunnel = setmodbus, 1; 5; 1. Luego devolverá el resultado de la ejecución vía SMS.
La pantalla de configuración del router Titan se puede ver a continuación:
Cuáles son los posibles mensajes de respuesta de un SMS que se envía mediante ALIAS
Depende de la configuración. Hay dos casillas: “Resultado de alias OK” y “ERROR de resultado de alias”, como se puede ver en la siguiente pantalla:
Si no se introduce texto en estos cuadros, el router Titan devolverá el resultado de la ejecución del comando AT. Esto puede ser apropiado o no, dependiendo del tipo de comando AT. Por ejemplo, si enviamos un SMS con el ALIAS “gsm”, el router puede devolver por SMS un texto como el siguiente:
at+csq
+CSQ: 20,99
OK
Esto es correcto ya que queremos saber el estado de la red GSM (en este caso, podemos ver “20”). Sin embargo, si usamos el ALIAS “rtu on” la respuesta sería:
at^mtxtunnel=setmodbus,1;5;1
OK
Por lo tanto, dependiendo del perfil de usuario utilizado, esto puede ser correcto o no. Los routers Titan permiten una respuesta personalizada para cada ALIAS. Continuando con el mismo ejemplo, podemos crear las siguientes respuestas:
gsm the reply from the AT command
rtu on rtu on OK (if the execution was successful)
rtu on ERROR (if the execution failed)
rtu off rtu off OK (if the execution was successful)
rtu off ERROR (if the execution failed)
ip on ip on OK (if the execution was successful)
ip on ERROR (if the execution failed)
ip off ip off OK (if the execution was successful)
ip off ERROR (if the execution failed)
Para implementar esto, debemos poner en el cuadro “Resultado de Alias OK” el texto que deseamos que aparezca para cada ALIAS que se ejecute correctamente:
<a1></a1><a2>rtu on OK</a2><a3>rtu off OK</a3><a4>ip on OK</a4><a5>ip off OK</a5>
Así, en el cuadro “ERROR Resultado de Alias”, debemos ingresar el texto que deseamos que aparezca para cada ALIAS que se ejecute con errores:
<a1></a1><a2>rtu on ERROR</a2><a3>rtu off ERROR</a3><a4>ip on ERROR</a4><a5>ip off ERROR</a5>
Tenga en cuenta que la respuesta para ALIAS nº 1 es <a1> </a1>. Si no se especifica texto, se devuelve la respuesta del comando AT. En el caso del ejemplo, esto es interesante ya que deseamos conocer el estado de la cobertura de la red, pero no se devuelve.
Descripción del ejemplo
Recuerde que para ejecutar comandos SMS, independientemente de que usemos ALIAS o no, debemos activar la opción de ejecutar comandos AT vía SMS en la configuración (que se muestra a continuación), así como especificar los números de teléfono autorizados para realizar esta acción (ya sea todos los números o una lista restringida de números autorizados).