Como configurar PC e celular como cliente MQTT: IOT Parte 17

Cómo configurar PC y teléfono celular como cliente MQTT: IOT Parte 17

En tutoriales anteriores, se analizaron los paquetes de protocolos MQTT y los mecanismos de seguridad de MQTT. Ahora es el momento de empezar a ensuciarse las manos. Para crear una red de comunicación en la que varios dispositivos IoT puedan comunicarse entre sí a través de un agente MQTT, es importante configurar los dispositivos IoT como clientes MQTT. MQTT está construido sobre la pila TCP/IP, por lo que los dispositivos deben tener una pila TCP/IP si quieren comunicarse entre sí a través del intermediario MQTT.
En este tutorial se configurará un Smartphone y una PC como clientes MQTT. Para crear un cliente MQTT para un teléfono inteligente Android, se puede utilizar la aplicación de panel MQTT, que es una aplicación de Android. Esta aplicación de Android admite el protocolo MQTT para comunicarse con otros clientes MQTT. Para configurar la PC como cliente MQTT, se puede usar MQTT lens, que es un complemento de Chrome que también admite el protocolo MQTT. Una vez que el teléfono móvil y la PC estén configurados como clientes MQTT, pueden comunicarse a través de MQTT Broker.
Configurar el celular como cliente MQTT –
Para configurar un dispositivo móvil como cliente MQTT, se puede descargar cualquier aplicación compatible con MQTT o se puede crear una aplicación personalizada que admita el protocolo MQTT. Hay muchas aplicaciones de Android disponibles en Google Play Store que se pueden usar para crear un cliente MQTT para teléfonos Android. En este tutorial, se utiliza la aplicación IOT MQTT Dashboard.
Descargue e instale la aplicación. Después de instalarla en su teléfono Android, abra la aplicación. Se abrirá una ventana del panel. En esta ventana, toque el signo más.
Captura de tela móvel da atividade principal no painel IOT MQTT
Figura 1: Captura de pantalla móvil de la actividad principal en el panel de IoT MQTT
Se abrirá una nueva ventana para establecer una conexión.
Captura de tela móvel da nova atividade de conexão no painel IOT MQTT
Fig. 2: Captura de pantalla móvil de la nueva actividad de conexión en el panel de IoT MQTT
En el campo ID de cliente, defina un nombre único (una cadena) para que cuando el cliente móvil se conecte al corredor MQTT, el corredor MQTT pueda identificar y enviar o recibir fácilmente los datos del paquete solo a ese cliente específico. Los dos clientes no deben tener el mismo nombre. Por tanto, el nombre del cliente debe ser único. El ID del cliente puede tener un máximo de 24 bytes.
Después del campo ID de cliente, se debe mencionar el broker MQTT. En este tutorial, HiveMQ se utiliza como intermediario MQTT. También se puede utilizar cualquier otro corredor como Mosquitto, Eclipse Paho o CloudMQTT. El campo del servidor debe contener el nombre de dominio o la dirección IP pública del agente/servidor MQTT. El dominio del corredor HiveMQ es -broker.mqttdashboard.com.
Luego defina el número de puerto del intermediario público con el que puede comunicarse. El puerto 1883 se utiliza sin seguridad, mientras que el puerto 8883 se utiliza para habilitar la seguridad del transporte TLS/SSL. Aquí los datos se envían por el puerto 1883, que es un canal no cifrado.
Luego configure el nombre de usuario y la contraseña para conectarse al corredor MQTT. Sin embargo, no es obligatorio mencionar nombre de usuario y contraseña. Dado que se utiliza el puerto 1883, que es un puerto no cifrado, no es necesario establecer SSL en 1 porque SSL debe establecerse en 1 solo si se utiliza el canal o puerto cifrado.
Guarde la configuración tocando el botón crear. El cliente móvil enviará una solicitud al corredor público y el corredor escuchará esta solicitud y proporcionará una conexión al cliente MQTT.
De esta forma, el teléfono móvil se puede configurar como cliente MQTT. El cliente MQTT ahora se puede conectar al broker MQTT y el estado de la conexión será visible en la aplicación.
Configurar la PC como cliente MQTT –
Para configurar la PC como cliente, se utiliza un complemento de navegador, MQTTlens. Tiene la capacidad de conectarse al corredor MQTT y puede comunicarse con otros clientes MQTT. Este complemento está disponible para el navegador Chrome y se puede agregar desde Chrome Web Store. La lente MQTT admite algunas funciones adicionales para iniciar la conexión con el corredor. Con esta conexión de PC complementaria se puede configurar fácilmente como cliente MQTT.
Captura de tela da extensão MQTTLens do Chrome para configurar o PC como cliente MQTT
Fig. 3: Captura de pantalla de la extensión MQTTLens Chrome para configurar la PC como cliente MQTT
Después de agregar la extensión, se abrirá una ventana del panel. Toque el signo más para crear una conexión.
Captura de tela da janela principal do MQTTLens
Figura 4: Captura de pantalla de la ventana principal de MQTTLens
Se abrirá una ventana emergente para agregar una nueva conexión.
Captura de tela da nova janela de conexão do MQTTLens
Fig. 5: Captura de pantalla de la nueva ventana de conexión MQTTLens
En el campo del nombre de la conexión, escriba cualquier nombre (no tiene que ser único). Al igual que PC_CLIENT se puede utilizar como nombre de conexión. Luego configure el nombre de dominio del corredor MQTT para que el cliente de PC pueda iniciar la conexión con el corredor. Se debe utilizar el mismo broker (HiveMQ) utilizado en otros dispositivos cliente (cliente móvil en este caso), ya que la comunicación entre estos dos clientes se establecerá a través del broker MQTT, que debe ser el mismo para ambos dispositivos. A continuación, defina el puerto al que está conectado el corredor público, es decir, 1883.
Para identificar la PC como un cliente único, MQTTlens genera el ID de cliente único. Cada vez que el cliente establece conexión con el corredor, genera una identificación de cliente aleatoria. MQTTlens tiene sesión limpia, conexión automática, mantenimiento activo y función de última conexión.
La sesión limpia se establece en 1 para que el servidor pueda descartar cualquier información y datos del cliente conectado previamente y así tratar la nueva conexión como limpia. Cada vez que el cliente de PC se conecta al servidor, trata la conexión como una nueva conexión y no almacena ninguna firma ni mensaje anterior.
A continuación, la conexión automática es 1 para conectar automáticamente la PC al corredor. Los segundos de Keep Alive están configurados en 120 segundos, que es el tiempo máximo que el cliente y el corredor pueden permanecer conectados, incluso si no están intercambiando datos entre sí.
Los campos Nombre de usuario y Contraseña no son campos obligatorios, pero se pueden definir si se desea. No están definidos aquí. Si lo desea, se puede configurar el siguiente tema de último testamento y el mensaje de último testamento. Cuando se definen el tema de última voluntad y los mensajes de última voluntad, si el corredor MQTT está enviando un mensaje al cliente suscrito y la conexión entre los dos se cierra repentinamente, el mensaje se enviará como un mensaje de última voluntad a ese tema. Si no se establece la última voluntad, si la conexión entre el cliente y el servidor se desconecta repentinamente, el paquete de mensajes se perderá y el cliente no recibirá nada.
Captura de tela dos novos campos de conexão do MQTTLens
Fig. 6: Captura de pantalla de los nuevos campos de conexión MQTTLens
Guarde la configuración haciendo clic en el botón 'Crear conexión'. Después de guardar la configuración, el cliente MQTT se puede conectar al corredor MQTT y el estado de la conexión será visible en la aplicación.
De esta forma la PC actuará como cliente MQTT a través del complemento del navegador. Ahora la PC está configurada como cliente MQTT y puede conectarse a otros clientes a través del corredor MQTT.
En este tutorial, se definieron un teléfono inteligente Android y una PC como clientes MQTT con el broker HiveMQ sin seguridad. El próximo tutorial discutirá cómo definir temas y mensajes por parte del editor y del suscriptor. Después de eso, los dos clientes pueden comunicarse a través del corredor MQTT (público).

Volver al blog

Deja un comentario

Los comentarios deben ser aprobados antes de su publicación.