> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/spanish/function-blocks/blocks-reference/input-output/communication/modbus-connect.md).

# Modbus Connect

Este bloque de función establece una conexión Modbus TCP con un dispositivo remoto y proporciona una salida reutilizable `Modbus Client` que otros bloques pueden usar para realizar lecturas/escrituras.

## 📥 Inputs

Este bloque de función no tiene entradas.

## 📤 Outputs

* `Modbus Client` — Una referencia de cliente Modbus conectada que puede conectarse a bloques de comunicación para leer o escribir registros.

## 🕹️ Controls

* `IP Address` — Introduzca la dirección IP del servidor Modbus TCP (por ejemplo 192.168.0.10).
* `TCP Port` — Introduzca el puerto Modbus TCP (por defecto suele ser 502).

## ⚙️ Mecanismo de ejecución

* Al evaluarse, el bloque intenta conectarse al servidor Modbus en la dirección y puerto indicados en los controles.
* Si la dirección o el puerto cambian, o si la conexión se cae, el bloque intentará reconectar automáticamente y seguirá proporcionando una salida actualizada `Modbus Client` para otros bloques.
* Otros bloques reciben el `Modbus Client` a través del conector de salida y lo usan para realizar tareas de comunicación (lecturas/escrituras).

## 🎯 Features

* Conexión persistente en la salida para que múltiples bloques compartan un único cliente.
* Reconexión automática cuando la dirección cambia o se pierde la conexión.
* Controles de UI sencillos para configurar IP y puerto.

## 📝 How to use

1. Configure `IP Address` y `TCP Port` en los controles.
2. Deje correr el escenario — el bloque establecerá la conexión y proporcionará `Modbus Client` en su salida.
3. Conecte la salida `Modbus Client` a los bloques de comunicación que la requieran (por ejemplo bloques de lectura/escritura) para realizar operaciones Modbus.

## 💡 Tips and Tricks

* Para leer datos de forma periódica, conecte la salida `Modbus Client` al bloque `Modbus Read` y use un `Logic Input` u otro disparador para controlar cuándo se realizan las lecturas.
* Para escribir comandos o valores, conecte `Modbus Client` al bloque `Modbus Write` y use un disparador lógico para realizar escrituras solo cuando sea necesario.
* Envíe telemetría a sistemas remotos combinándolo con `MQTT Publish` (conecte la salida de un bloque de lectura a `MQTT Publish`) para mensajería ligera.
* Guarde o registre valores enviando las salidas de lectura a `SQL-DB Operations` o `CSV Export` para almacenamiento persistente y análisis posterior.
* Use `Debug Input` o `Scope` para inspeccionar valores procedentes de bloques de lectura durante la configuración y solución de problemas.

(hint: recommended companion blocks — `Modbus Read`, `Modbus Write`, `Logic Input`, `MQTT Publish`, `SQL-DB Operations`, `CSV Export`, `Debug Input`, `Scope`)

## 🛠️ Troubleshooting

* Conexión rechazada o tiempo de espera — verifique que `IP Address` y `TCP Port` sean correctos y que el servidor Modbus sea accesible en la red.
* Reglas de firewall o red — asegúrese de que el puerto usado por Modbus TCP esté permitido en los firewalls de ambos extremos.
* Múltiples clientes — si el servidor limita conexiones, evite crear muchas conexiones simultáneas; comparta la salida `Modbus Client` proporcionada con otros bloques.
* Si la conexión parece inestable, verifique la calidad de la red y pruebe con otro cable de red o puerto de conmutador.
