# Protocolos de comunicación

AugeLab Studio admite varios protocolos de comunicación para permitir la integración y el intercambio de datos con distintos sistemas y dispositivos.

Cada bloque de comunicación se encuentra en la sección **Blocks➡️ Input/Output ➡️ Communication**.

A continuación se explican cómo usar cada protocolo de forma sencilla:

<details>

<summary>REST API</summary>

REST es un protocolo de servicios web que usa solicitudes HTTP para GET y POST de datos.

#### Uso

* **GET Request Block**: Usa este bloque para obtener datos de un servidor. Configura la URL y los parámetros necesarios.
* **POST Request Block**: Usa este bloque para enviar datos a un servidor. Configura la URL, los encabezados (headers) y el payload según se necesite.

</details>

<details>

<summary>OPC</summary>

OPC (OLE for Process Control) es un conjunto de estándares y especificaciones para la telecomunicación industrial. Se usa para la comunicación entre dispositivos y aplicaciones de control en entornos industriales.

#### Uso

* **OPC Client Block**: Usa este bloque para conectarte a un servidor OPC. Configura la dirección del servidor y los parámetros necesarios.
* **OPC Read/Write Blocks**: Usa estos bloques para leer datos desde o escribir datos hacia el servidor OPC.

Asegúrate de que el servidor OPC esté correctamente configurado y sea accesible desde AugeLab Studio.

</details>

<details>

<summary>S7 Siemens</summary>

#### Descripción

S7 es el protocolo de comunicación usado por los PLCs (Programmable Logic Controllers) de Siemens. Sirve para controlar y supervisar procesos industriales.

#### Uso

* **S7 Client Block**: Usa este bloque para conectarte a un PLC S7. Configura la dirección IP y la información de rack/slot.
* **S7 Read/Write Blocks**: Usa estos bloques para leer o escribir datos en el PLC.

Comprueba que el PLC esté configurado correctamente y que la red permita la comunicación.

</details>

<details>

<summary>MQTT</summary>

MQTT (Message Queuing Telemetry Transport) es un protocolo ligero de mensajería, optimizado para sensores pequeños y redes con latencia o conexión inestable.

#### Uso

* **MQTT Subscribe Block**: Usa este bloque para suscribirte a un tema (topic) específico.
* **MQTT Publish Block**: Usa este bloque para publicar mensajes en un topic.

Asegúrate de que el broker MQTT esté funcionando y accesible, y que los topics estén configurados correctamente.

</details>

<details>

<summary>Modbus</summary>

#### Uso

* **Modbus Client Block**: Usa este bloque para conectarte a un servidor Modbus. Configura la dirección del servidor y parámetros de comunicación (por ejemplo, puerto COM, baud rate).
* **Modbus Read/Write Blocks**: Usa estos bloques para leer o escribir en registros Modbus.

Verifica que el servidor Modbus esté correctamente configurado y sea accesible desde AugeLab Studio.

</details>

<details>

<summary>Email</summary>

También puedes enviar correos electrónicos y adjuntos a varias personas usando el bloque de correo.

* **Send Email block**: Usa este bloque para enviar e‑mail con adjuntos a múltiples destinatarios.

</details>
