HOME

PRODUCTOS

PROYECTOS

TUTORIALES

VIDEOS

FREEWARE

PROGRAMAS

FUNCIONES C

EMPRESA

ENGLISH

                   

 Control remoto M2M: solución utilizando la red de datos UMTS e internet con el protocolo cliente-servidor TCP-IP

Autor del proyecto: Moisés Meléndez Reyes

 

Video demostrativo en HD

 

1. Descripción general:

Las nuevas tecnologías permiten utilizar las redes de datos de telefonía móvil para el control remoto y telemetría de sistemas microcontroladores, conocido como M2M (Machine to Machine), a un costo muy barato del ancho de banda, dado que el volumen de datos trasmitidos es en general muy bajo.

Adicionalmente, dado que en estos sistemas ya es posible utilizar tanto la infraestructura de la red de telefonía móvil, como internet, puede establecerse una conexión entre localidades con una cobertura global, incluyendo la capacidad de tener tanto el puesto central de control como las terminales remotas en distintas regiones de un país, ó incluso en distintos países.

Para la implementación de un sistema como el descrito, se hace uso de módems con posibilidad de conexión a la red celular, y que cuentan además con un puerto serial RS232 a través del cual es posible controlarlos por medio de una computadora PC ó bien de un microcontrolador. Tal es el caso del módem Quectel UMTS G3, el cual es utilizado en el presente proyecto.

Con base en el diagrama de la figura 1, haciendo uso de un enlace del tipo Cliente- Servidor TCP-IP, se implementó un control remoto entre una computadora PC, y un microcontrolador Bolt 18F2550, conectado con el Módem Quectel UMTS mencionado.

Las capacidades del sistema son:

- Conexión simple entre el microcontrolador y el módem, usando un cable serial RS232 (ver punto 4), y estableciendo entre ellos una comunicación por medio de los comandos AT.

- Módem Quectel operando en la red UMTS, 3G, con cobertura global y un tiempo de respuesta rápido.

- Software servidor TCP-IP para la PC gratuito y fácilmente configurable para su conexión al router y a la red internet.

- Alcance global entre Cliente y Servidor TCP-IP, utilizando la red de datos de telefonía móvil e internet.

- Uso del servicio DDNS 'Dynamic Domain Name Service' el cual actualiza automáticamente su información en el router y permite el uso de una dirección única para el servidor TCP-IP.

 

Figura 1. Diagrama general de bloques del sistema M2M

 

 

2. Comandos remotos disponibles para control remoto y telemetría:

Con base en la figura 1, una vez que se tiene el enlace Cliente Servidor con status online, es posible para el usuario enviar cualquiera de los 4 comandos listados. Adicionalmente, el sistema remoto detecta en forma automática y envía el status 'abierto' - 'cerrado', de una puerta (emulada por el dip switch SW1 del sistema Bolt) cada vez que hay algún cambio.

 - 'enciende relevador': activa remotamente el relevador del sistema Bolt.
- 'apaga relevador': apaga remotamente el relevador del Bolt.
- 'lee temperatura': solicita remotamente el valor de temperatura del sensor DS18B20 del sistema Bolt.
- 'status puerta': solicita el estado del dip switch SW1 de la tarjeta Bolt

 

 

3. Hardware utilizado como Cliente TCP-IP del sistema de telemetría.

Para implementar el Cliente TCP-IP, se hace uso de un sistema microcontrolador Bolt, con un display LCD 16x1 y conectado por medio de un cable serial, al módem Quectel UMTS, como se muestra en la figura 3.

El Bolt controla al módem por medio de cadenas de caracteres ASCII, conocidos como comandos AT. En el display LCD se muestra el status actual del sistema, inlcuyendo cada uno de los comandos enviados, así como el status 'online' - 'offline' del enlace remoto.

Para garantizar la confiabilidad del enlace se usa una antena de 3 db de ganancia y con un cable de 3 metros de longitud, lo que permite posicionarla en lugares con buena comunicación con la estación base más cercana del operador de telefonía celular.

 

Figura 3: Hardware del microcontrolador Cliente TCP-IP remoto

 

 

4. Arnes para la conexión entre los puertos seriales RS232 de los dispositivos Bolt-Módem Quectel UC15:



Para la conexión entre el sistema Bolt y el módem UC15, se recomienda el alambrado de un arnés con 2 conectores del tipo macho DB9 y utilizando únicamente 3 de señales: TX, RX y GND.





Conector macho DB9
(visto por el frente)

La conexión entre ambos conectores macho DB9, debe realizarse con 3 cables:

PIN 2-------------------PIN 3
PIN 3-------------------PIN 2
PIN 5-------------------PIN 5

 

5. Datos importantes del proyecto:

* Se empleó una PC Windows 10 para habilitar la aplicación de servidor TCP-IP.

* Conectado a la PC (por vía WiFi), se utilizó un módem router Telmex Alcatel Lucent Infinitum modelo 1-240W-A, de fibra óptica, y el cual tiene asignada la siguiente dirección para su configuración: http://192.168.1.254/

* La guía usada para configurar el módem router infinitum es la siguiente: Servidor TCP-IP configuración router infinitum

* La aplicación de software para el servidor TCP-IP utilizada en la PC es: Servidor TCP-IP Hércules.

* Para el módem Quectel UMTS, todas las pruebas mostradas fueron realizadas utilizando un SIM en modo de prepago del operador Telcel. Se realizaron pruebas con SIM tanto de las redes 2G y 3G (MicroSim, V5.0 128 Kb)

* Para la conexión UMTS de la red de datos de Telcel se utilizó la siguiente configuración dentro del firmware del microcontrolador Bolt:

APN: internet.itelcel.com
Nombre de usuario: webgprs
Contraseña: webgprs2002

* Para el servicio de DNS dinámico (DDNS, dynamic domain name service), se utilizó este link.  El hostname ó dominio utilizado para el acceso al IP dinámico de la computadora PC servidor TCP-IP es: puntoflotante.ddns.net

* La guía utilizada para dar de alta el servicio en el DDNS es ésta: NoIP-DDNS-Create-Hostname-User-Guide.pdf

* El número de puerto ó socket utilizado en el servidor TCP-IP es: 2020

* El baud rate de la conexión RS232 entre el microcontrolador Bolt 18F2550 y el módem, es de 9600 bps. Adicionalmente, el módem Quectel debe estar configurado de tal manera de habilitar los URC (Unsolicited Result Codes). Siga el siguiente manual para configurar correctamente el módem: CONFIGURACION-INICIAL-Y-PRUEBAS-DEL-MODEM-QUECTEL-UC15.pdf

 

 

6. Firmware del microcontrolador Bolt 18F2550:

El firmware para el microcontrolador Bolt 18F2550 fue desarrollado en lenguaje ANSI C y con el compilador C18 de Microchip. Se utilizó el ambiente de desarrollo MPLAB-IDE. El control de Módem Quectel UMTS se realiza a través del puerto serial RS232 por medio de su set de comandos AT.

El firmware hace uso de la función Watch Dog del microcontrolador, para reactivar al sistema en caso de perderse el enlace con el servidor.

Importante:

- Para el funcionamiento correcto con el firmware, el módem Quectel debe estar previamente inicializado para operar a un baud rate de 9600 bps

- Adicionalmente, el módem Quectel debe estar configurado de tal manera de habilitar los URC (Unsolicited Result Codes).

- Antes de realizar las pruebas, el usuario debe activar ambas configuraciones, utilizando el siguiente manual:

CONFIGURACION-INICIAL-Y-PRUEBAS-DEL-MODEM-QUECTEL-UC15.pdf

Archivos del firmware:

Quectel UC15 - Bolt- Telcel.zip

 

 

7. Implementación del servidor TCP-IP con servicio de DNS dinámico, con una PC Windows 10:

Como se explicó en la introducción de este proyecto, para el funcionamiento del enlace Cliente (microcontrolador) - Servidor (computadora PC), se requiere habiltar la PC como servidor TCP-IP. Siga los siguientes tutoriales para realizar la configuración en su propio módem-router y la computadora PC y dar de alta el servicio DNS dinámico:

 

8. Download de la aplicación de software servidor TCP-IP para su máquina.

 

 

 

Para habilitar su máquina PC como servidor TCP-IP, se requiere de un software especializado.

Baje aquí el programa de aplicación: Servidor TCP-IP Hércules.

El software consta de un solo archivo .exe como se muestra en la imagen de la izquierda, y no requiere de instalación. Guarde el archivo en su carpeta de trabajo para este proyecto.

Puede usted también bajar este software directamente del sitio de internet: Servidor TCP-IP Hércules.

 

 

9. Configuración del software Hércules Servidor TCP-IP.

 

 

Abra el archivo de nombre hercules_3-2-8.exe previamente almacenado en el punto 6. Una vez en la pantalla de inicio, usted requiere activar 3 funciones: primeramente dé click sobre la pestaña llamada 'TCP Server'.

Posteriormente escriba en la ventana llamada 'Port' el número 2020, que es el puerto asignado a su servidor TCP-IP. Ahora, para iniciar la aplicación, dé click en el ícono de color verde denominado 'Listen' y verá la pantalla como se muestra en la Figura 4.

Con base en la Figura 4, en este momento, el Servidor TCP-IP ya se encuentra listo para el acceso remoto con el microcontrolador Bolt 18F2550 a través de internet. En la ventana de status de la conexión (Client connection status), se muestra el mensaje "All connections closed", ya que el controlador remoto se encuentra por el momento apagado.

 

Figura 4

 

 

10. No olvide desactivar el Firewall de Windows y de su antivirus:

Para permitir la conexión entre los sistemas cliente y servidor TCP-IP, deben desactivarse las opciones del firewall tanto de Windows como de su antivirus, pues de lo contrario el software Servidor TCP-IP Hércules no funcionará adecuadamente. En Windows 8, siga el siguiente procedimiento:

>Configuración >Panel de Control >Firewall de Windows >Activar ó desactivar Firewall de Windows

Desactive el Firewall en la configuración tanto de Red Pública como Privada, quedando las ventanas como se muestran abajo:

 

 

 

 

 

Desactivación del Firewall del software antivirus Panda.

 

En cuanto al software antivirus, dependiendo de su versión, habrá que aplicar el procedimiento correspondiente. En el caso particular del antivirus PANDA, versión 2015, la ventana de configuración del Firewall se muestra en la imagen de la izquierda.

Nota importante: por favor considere que al desactivar las protecciones de Firewall en su computadora, el riesgo de ingreso de malware ó software malintencionado en su máquina se incrementa.

 

11. Pruebas de telemetría y control remoto del sistema Bolt 18F2550:

Finalmente, estamos listos para efectuar las pruebas de acceso remoto (ver Figura 1). Usted debe tener listo su hardware como se muestra en el punto 3, con el microcontrolador Bolt 18F2550 ya cargado con el firmware indicado en el punto 6. Su módem router debe estar configurado como se indicó en el punto 7, y el servicio de DNS dinámico debe haber sido dado de alta siguiendo las instrucciones en el mismo punto 7. La pantalla del software Hércules debe estar en espera como se muestra en la figura 4.

Hay que recordar que, tratándose del protocolo TCP-IP, la secuencia de conexión entre cliente - servidor debe iniciarla el cliente, mientra el servidor se encuentra en stand by (espera).

Revise 2 puntos importantes antes de continuar: el módem Quectel UMTS debe estar inicializado a un baud rate de 9600 bps y con los URC habilitados (ver punto 5) pues de lo contrario no podrá establecer comunicación con el microcontrolador. También revise que el chip SIM (Telcel) del módem esté en su receptáculo y que tenga saldo disponible.

Con base en la Figura 3, active el switch general de alimentación del hardware del cliente TCP-IP. Usted observará en el LCD del sistema la secuencia de comandos AT que se están ejecutando con el fin de establecer la conexión con el servidor TCP-IP. Pasado alrededor de 1 minuto, usted verá la conexión establecida, y el cliente TCP-IP envía un mensaje de bienvenida, como se muestra en la siguiente pantalla:

 

Figura 5

 

 

Prueba de comandos remotos:

Cada 45 segundos, el Cliente envía al Servidor TCP-IP tres puntos suspensivos ("..."), los cuales confirman el status online del enlace.

El usuario puede escribir cualquiera de los comandos mostrados como se muestra en la figura 6, dando click en el botón Send. Por cada comando enviado, deberá recibir la confirmación en la propia pantalla de la aplicación. Si el usuario mueve la posición del dip switch SW1 del sistema Bolt, entonces se enviará automáticamente el mensaje 'La puerta se ha abierto' ó 'La puerta se ha cerrado'.

Nota importante: para óptimos resultados, se recomienda enviar los comandos después de la recepción de los puntos suspensivos ("..."). Ésto dará estabilidad al enlace, minimizando los tiempos de espera.

 

Figura 6: pantalla que muestra los comandos remotos al Cliente TCP-IP

 

Links adicionales:

MODEM-QUECTEL-UC15-M200-UMTS

Control remoto M2M con mensajes SMS desde teléfono móvil. Bolt 18F2550 y módem Quectel

Alartma puerta abierta con mensajes SMS. Bolt 18F2550, módem Quectel UMTS