Login

Please login for an individual price calculation.

Forgot Password?

Always stay up to date

With our e-mailings you will receive regular information about products, events, services and Balluff.

REGISTER AS A COMPANY

We will check whether you already have a customer number with us in order to link your new online account with it.

Register
Products
Industries and Solutions
Resources
Company
Version 2.0
·
Last edited on 2025-03-03

Lectura de datos MQTT de HW9 (BNI) mediante Python

1. Introducción

Proporciona instrucciones sobre cómo utilizar Python para suscribirse y recuperar datos de un tema MQTT, específicamente dirigido a la serie de dispositivos BNI (Balluff HW9 IO-Link Master).

2. Requisitos previos

  • Python instalado en su sistema.
  • Conocimientos básicos del protocolo MQTT.
  • Acceso a un broker MQTT instalado y en ejecución.


3.1. Instalar las bibliotecas necesarias

Asegúrate de tener instalada la librería `paho-mqtt`. Puedes instalarla usando el comando pip de abajo si no está ya instalada:

pip install paho-mqtt

3.2. Configuración del código Python

Cree un script Python utilizando el siguiente código para conectarse al broker MQTT y suscribirse al tema especificado:

Introduce el siguiente código en tu IDE de python

importar paho.mqtt.client como mqtt
importar json

def on_connect(client, userdata, flags, rc):
    if rc == 0:
        print("Conectado")
        client.subscribe("balluff//iolink/devices/master1port8/processdata/in")
    si no
        print("Error al conectar, Código de error", rc)

def on_message(client, userdata, msg):
    payload = json.loads(msg.payload.decode())
    item = payload.get("datos", {}).get("items", {})

    print(item)

cliente = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("192.168.10.200", 1883)
client.loop_forever()

3.3. Entender el Código

on_connect: Gestiona la conexión al broker MQTT y se suscribe al tema especificado.
on_message: Procesa los mensajes MQTT entrantes. Descodifica la carga JSON y recupera los datos relevantes del mensaje.

3.4. Ejecutar el script

Ejecute el script Python. Se conectará al broker MQTT en `192.168.10.200` en el puerto `1883` y comenzará a escuchar mensajes en el tema especificado.

4. Conclusión

Esto concluye el manual para la lectura de datos MQTT desde el dispositivo BNI usando Python. Para una mayor personalización o integración en sistemas más grandes, consulte la documentación de MQTT y Python.

5. Solución de problemas

  • Asegúrese de que la dirección del broker MQTT (`192.168.10.200`) y el puerto (`1883`) son correctos y accesibles desde su red.
  • Compruebe si existe algún cortafuegos o restricción de red que pueda impedir las conexiones.
  • Confirme el estado del broker: Asegúrese de que su broker MQTT se está ejecutando utilizando herramientas de depuración como MQTT Explorer. Vaya a Servicios > Mosquitto para comprobar que está activo.

  • Compruebe la conexión del dispositivo BNI: Confirme que su dispositivo BNI está correctamente configurado y conectado al broker. Si está conectado, verá los indicadores de estado correspondientes, como se muestra en la imagen siguiente.

  • Instrucciones de configuración: Si aún no ha configurado su broker o su dispositivo BNI, consulte los siguientes recursos:
    • Notas técnicas de aplicación
    • Documento: doc-18588303 - Instalar Mosquitto Broker y Conectar MQTT en dispositivos HW9 (BNI)

Energy consumption labeling
Energy consumption labeling

EPREL - European Product Database for Energy Labeling

Do you have any questions or suggestions? We are at your disposal.

For all questions concerning commercial topics such as quotations, orders, and delivery times, our inside sales department will be happy to support you: [email protected]

For Aftersales, Technical Support, Applications and
Product Inquiries we will be happy to support you: [email protected]

Feel free to contact us directly by telephone:

Inside Sales 859-727-2200 - press 1
Presales Tech Support 859-727-2200 - press 2
Aftersales Tech Support 859-727-2200 - press 3


Balluff Inc.

8125 Holton Dr.
Florence, KY 41042

Free sample product

In order to add a free sample product to the cart we will need to remove all the normal products from the cart. Are you sure you want to continue