¿Buscas alguna otra cosa?
Detalles del escenario:
- Se dispone de 100 dispositivos con puerto RS232 (115200,8,N,1 y control flujo HW) los cuales necesitan ser monitorizados desde un puesto de Control Central vía 4G, para ello se utilizarán módems con MTX-Tunnel, para que actúen como un túnel transparente 4G-RS232
- Se debe poder acceder a los dispositivos RS232 en cualquier momento, por lo que el módem conectado al puerto serie del dispositivo debe permanecer conectado a 3G de forma permanente (a la espera de una conexión). El acceso a los módems deberá estar únicamente autorizado para la dirección IP del PC de Control (200.200.200.200) y para una IP del router fibra de backup de las oficinas centrales: 200.200.200.201
- Por motivos de ahorro se utilizarán tarjetas SIM con dirección IP dinámica. Al ser un número elevado de módems se descarta el uso de DynDNS, por lo que debe ser el MTX-Tunnel quien deberá enviar a un servidor WEB por HTTP GET la IP que tenga en cada momento (asignada por el operador GSM). Cada vez que en un módem cambie la dirección IP, éste deberá enviarla al centro de control (con URL http://www.miweb.com/datosIP.asp y puerto 8080) para informar del cambio. De esa manera el WebServer externo almacenará la dirección IP en una base de datos SQLServer para que el PC del Centro de Control pueda acceder en cada momento a los dispositivos
Solución: MTX-Tunnel firmware + MTX-Java-IoT/MTX-Java-T/MTX-Java-T2
Archivo de configuración config.txt:
Configuración | Observaciones |
COMM_baudrate: 115200 COMM_bitsperchar: 8 COMM_autocts: on COMM_autorts: on COMM_stopbits: 1 COMM_parity: none GPRS_apn: movistar.es GPRS_login: MOVISTAR GPRS_password: MOVISTAR GPRS_DNS: 8.8.8.8 GPRS_timeout: 0 MTX_PIN: 0000 MTX_model: MTX-4G-JAVA-IOT-STD-N MTX_mode: server MTX_urc: off TCP_port: 20010 FIREWALL_enabled: on FIREWALL_IP1: 200.200.200.200 FIREWALL_IP2: 200.200.200.201 DNS_enabled: on DNS_mode: http DNS_httpMode: get DNS_password: 12345678 DNS_server: miweb.com:8080/datosIP.asp DNS_extended: off |
Serial port baud rate 8 bit data CTS hardware control enabled RTS hardware control enabled 1 stop bit No parity GPRS APN from your network operator GPRS Login GPRS Password Google DNS. Must be used if TCP_IP is set to DNS Value 0 means MTX-Tunnel is always connected If SIM card has no PIN security, use 0000 MTX terminal modem model used TCP server mode URC messages will not be sent TCP port used Enabled to accept authorized IPs This IP can only connect to remote modem This IP can only connect to remote modem DNS service enabled GPRS IP address sent using HTTP GET It will be reported by HTTP GET Password string sent in DNS communication DNS server URL GPIO and ADC values extra information is not sent |
Detalles:
- Fíjese que, usando http, en caso de usar un puerto TCP distinto al estándar HTTP (TCP 80), el puerto debe incluirse en el parámetro “DNS_server” y no en “DNS_port”
- Cada vez que un MTX-Tunnel cambie su IP, llamará a la siguiente URL:
http://www.miweb.com:8080/datosIP.asp?IMEI=<suIMEI>&PASS=12345678&IP=<IP Pública>
El servidor web deberá recoger los parámetros enviados por el MTX-Tunnel y almacenar la IP en una base de datos. Para recoger los parámetros usando una página ASP, puede hacerse con este simple código insertado en “datosIP.asp”
<%
IMEI=Request.QueryString (“IMEI”)
Password=Request.QueryString (“PASS”)
IP=Request.QueryString (“IP”)
%>
- Si lo prefiere (recomendado) puede enviar los datos al servidor en formato JSON vía GET o POST. Por ejemplo, si quisiera enviar los datos en formato JSON vía HTTP GET, tendría que modificar la configuración con algo como:
Configuración | Observaciones |
DNS_server: www.miweb.com:8080/datosIP.asp?data= DNS_httpMode: getjson |
URL where the IP will be sent Data will be sent in JSON format |
- Y para enviar enviar los datos en formato JSON vía HTTP POST, tendría que modificar la configuración con algo como:
Configuración | Observaciones |
DNS_server: www.miweb.com:8080/datosIP.asp DNS_httpMode: postjson |
URL where the IP will be send Data will be sent in JSON format |
- Cuando configure el módem en modo getjson / postjson el módem enviará un JSON con el siguiente formato de ejemplo:
{“IMEI”:357042060366409,”TYPE”:”DNS”,”P”:”12345678”,”IP”:”88.28.253.206”, “CSQ”:26,”VER”:”9.12”,”AUX”:””,”MOD”:”201”}
- Donde:
IMEI: imei del módem (único para cada módem)
TYPE: tipo de JSON enviado (en este caso DNS)
P: un campo de usuario El especificado en DNS_password
IP: ip actual del módem
CSQ: rssi del módem (entre 0 y 31)
VER: versión del MTX-Tunnel
MOD: modelo de módem MTX
- Recuerde que dispone de los parámertros de configuración DNS_header1, DNS_header2, DNS_header3, por si desea añadir cabeceras a sus peticiones HTTP