¿Buscas alguna otra cosa?
Table of Contents
Detalles del escenario
Cada día son más habituales las aplicaciones de telecontrol. En muchas de estas aplicaciones suele ser necesidad el poder tener acceso a la imagen o vídeo de una cámara remota. En muchos de esos lugares no hay acceso una línea ADSL convencional para poder conectar directamente una cámara IP. Ejemplos típicos son huertos solares, estaciones desatendidas, … En estos casos una solución válida es el uso de un router 3G/4G que permita dicho acceso remoto.
Mediante esta nota de aplicación se pretende dar una guía práctica, un ejemplo paso a paso, de cómo usar y conectar una webcam USB a un MTX-Router-Titan-II-3G. Tras leer esta guía sabrá cómo conectar una webcam USB al router TitanII, capturar una imagen (en un instante dado, en función de un valor modbus, etc) y enviar la imagen vía MQTT
Hardware necesario
- MTX-Router-Titan-II-3G con antena y alimentador
- Webcam USB
- Cable Adaptador USB a micro-USB (OTG)
- Tarjeta SIM con datos (3G/4G) habilitados
Configuración WAN del MTX-Router-3G-Titan
El primer paso para llevar a cabo esta práctica es la configuración del MTX-Router-Titan-II-3G. Para ello conecte un cable de red entre su PC y el router Titán. Después abra su navegador de Internet. El router tiene por defecto la dirección IP estática 192.168.1.2, por lo que debe configurar su PC con una IP estática dentro del rango 192.168.1.X, por ejemplo configure en su PC la dirección LAN 192.168.1.10.
Una vez hecho eso, escriba en la barra de direcciones de su navegador http://192.168.1.2 e irá directamente a la siguiente pantalla de inicio de configuración del router.
El Username y Password por defecto son: admin / admin, por lo que introduzca esos datos y pulse el botón “LOGIN”. Empezaremos configurando los parámetros de red para la tarjeta SIM utilizada. Para ello vaya al menú “Wan > Basic Settings”.
Seguidamente, lo más importante, es cambiar el password del usuario “admin”. Para ello es necesario acudir al menú “Other > Password” y cambiarlo. Pulsamos el botón “Save Admin Pass” para guardar los cambios.
Configuración de la sección MQTT del router Titan
En esta ocasión, vamos a configurar el servicio MQTT del router Titan. Esto es necesario, ya que la imagen será retransmitida por esta vía. Para ello debe accederse a la sección Other > Mqtt.
Especificaremos mínimo lo siguiente: habilitación de la casilla “Enable” para habilitar el servicio, el Broker MQTT que utilizamos, y el MQTT ID para identificar a nuestro router. Pulsamos tras finalizar el botón “SAVE CONFIG”.
Tomar foto cada minuto y enviarla automáticamente vía MQTT
En esta primera configuración, configuraremos el router Titan para tomar una instantánea cada minuto y enviarla vía MQTT. El proceso es muy sencillo y debe hacerse desde la sección “External Devices > USB Camera”
En dicha sección, habilitamos el servicio haciendo click en la casilla “Enabled”, especificamos la resolución de la foto (en este ejemplo 640×480), indicamos el periodo de captura y envío (el valor 60 del ejemplo indica un envío cada 60 segundos) y, finalmente, configuramos el TOPIC mqtt a donde se enviará la foto (en este ejemplo el topic es FOTO). Pulsamos el botón “SAVE CONFIG” para finalizar la configuración.
Si dispone de la cámara USB conectada al router Titan (a través de un cable USB-mini USB (OTG)), puede realizar una prueba y pulsar el botón “TAKE PHOTO NOW”. Si todo es correcto, al cabo de unos segundos debería ver la imagen capturada en la parte inferior de esa misma pantalla.
Ahora ya puede reiniciar el router y deberá recibir una imagen vía MQTT cada minuto, una vez el router Titan disponga de conectividad IP.
Formato del envío de imagen vía MQTT
El router Titan transmite la imagen vía MQTT en el siguiente formato:
nombreImagen,tamañoImagenEnBytes,[array bytes de la imagen jpeg]
Es decir, el mensaje MQTT que llevará a su bróker se divide en 3 campos separados por “,”. En el primero está el nombre del archivo de imagen. En el segundo está el tamaño del archivo de imagen en bytes, y en el último parámetro está un array de bytes con todo el contenido raw de la imagen en jpeg.
Captura y envío de una imagen vía comandos AT
Una característica importante de los router Titan es que es posible hacer casi cualquier cosa por comandos AT. En esta ocasión, también es posible tomar una foto y enviarla con comandos AT. Dichos comandos AT pueden enviarse de las maneras habituales: vía Telnet, SSH, HTTP Rest, SMS, Modbus TCP, Modbus RTU, SNMP, …
Por ejemplo, imagine un PLC que quiera enviar tomar una imagen cuando reciba datos de un sensor, y enviarla vía MQTT. Lo único que tendría que hacer es enviar un par de comandos AT vía modbus TCP o RTU al router Titan (consulte la nota de aplicación AN10 para saber cómo enviar comandos AT por modbus)
El comando AT que le permite la captura de una imagen es:
AT^MTXTUNNEL=GETUSBPHOTO
Una vez lanzado ese comandoAT, el router tomará una instantánea en unos segunfos. Devolverá OK o ERROR en función de si la captura fue correcta.
El comando AT que le permite en envío de la última imagen capturada es:
AT^MTXTUNNEL=SENDUSBPHOTOMQTT,topic
Una vez lanzado ese comandoAT, se enviará la imagen vía MQTT al topic especificado en el campo “topic” de dicho comando AT.
Para cualquier consulta contacte con nosotros en iotsupport@mtxm2m.com.