Ir al contenido

Cómo mapear cualquier PLC M-Duino para OpenPLC

Cómo configurar el mapeo de E/S de OpenPLC para cualquier PLC M-Duino usando un enfoque basado en zonas que cubre salidas digitales, analógicas y de relé
18 de junio de 2026 por
Boot & Work Corp. S.L, Arnau Tena

Note: this post was created before M-Duino was officially supported in OpenPLC. For an updated guide on using M-Duino with OpenPLC, see this post:

 Using ESP32 PLC, M-Duino and Ardbox with OpenPLC

Tutoriales previos de OpenPLC para programar M-Duino

Antes de mapear los M-Duinos, puede que quieras revisar algunos de los posts anteriores que hemos publicado sobre OpenPLC, especialmente si aún no te has familiarizado con el software.

Este post te ayudará a empezar a usar OpenPLC para programar PLCs:

First steps with OpenPLC

This one builds on the previous post and shows you how to use Modbus with OpenPLC:

Modbus on Arduino with OpenPLC

Este último demuestra que el M-Duino 42+ puede programarse con OpenPLC:

OpenPLC on M-Duino 42+

Cómo mapear las zonas del PLC M-Duino en OpenPLC

La familia de PLCs M-Duino es muy modular; los distintos modelos se construyen siempre a partir de los mismos bloques básicos. Estos bloques se denominan zonas. Hay tres capas posibles de zonas, y una zona puede ser analógica/digital o de relé. Son fáciles de distinguir: basta con buscar la presencia de relés. Si sabemos cómo mapear estas zonas, podemos mapear cualquier M-Duino fácilmente.

We will start by mapping the analog/digital zones. We can do this by mapping an M-Duino 58+, which has three layers of analog/digital zones.

M-Duino 58+

ZoneDigital InputsM-Duino 58+IEC 61131-3Modbus input
022, 23, 24, 25, 26, 2, 3, 99,I0.0-I0.6%IX0.0-%IX0.60-6
127, 28, 29, 30, 31, 18, 19, 99,I1.0-I1.6%IX1.0-%IX1.68-14
232, 33, 34, 35, 99, 20, 21, 99I2.0-I2.3, I2.5-I2.6%IX2.0-%IX2.3, %IX2.5-%IX2.616-19, 21-22
ZoneDigital OutputsM-Duino 58+IEC 61131-3Modbus coil
036, 37, 38, 39, 40, 99, 99, 99,Q0.0-Q0.4%QX0.0-%QX0.40-4
141, 42, 43, 44, 45, 99, 99, 99,Q1.0-Q1.4%QX1.0-%QX1.48-12
253, 47, 48, 49, 99, 99, 99, 99,Q2.0-Q2.3%QX2.0-%QX2.316-19
Comm14, 15, 16, 17, 18, 19, 20, 21TX3-SCL%QX3.0-%QX3.724-31
ZoneAnalog InputsM-Duino 58+IEC 61131-3Modbus input R
0A0, A1, A2, A3, A4, A5,I0.7-I0.12%IW0-%IW50-5
1A6, A7, A8, A9, A10, A11,I1.7-I1.12%IW6-%IW116-11
2A12, A13, A14, A15I2.7-I2.10%IW12-%IW1512-15
ZoneAnalog OutputsM-Duino 58+IEC 61131-3Modbus holding R
04, 5, 6,A0.5-A0.7%QW0-%QW20-2
18, 9, 7,A1.5-A1.7%QW3-%QW53-5
212, 13A2.5-A2.6%QW6-%QW76-7

Recuerda que el 99 se usa para evitar que las diferentes capas se superpongan.

To map the relay zones, we can map the M-Duino 57R+, which has three layers of relay zones.

M-Duino 57R+

ZoneDigital InputsM-Duino 57R+IEC 61131-3Modbus input
02, 3, 99, 99, 99, 99, 99, 99,I0.0-I0.1%IX0.0-%IX0.10-1
118, 19, 99, 99, 99, 99, 99, 99,I1.0-I1.1%IX1.0-%IX1.18-9
220, 21, 99, 99, 99, 99, 99, 99I2.0-I2.1%IX2.0-%IX2.116-17
ZoneDigital OutputsM-Duino 57R+IEC 61131-3Modbus coil
023, 22, 25, 24, 40, 39, 38, 37,R0.1-R0.8%QX0.0-%QX0.70-7
128, 27, 30, 29, 45, 44, 43, 42,R1.1-R1.8%QX1.0-%QX1.78-15
233, 32, 35, 34, 49, 48, 47,R2.1-R2.8%QX2.0-%QX2.716-23
Comm14, 15, 16, 17, 18, 19, 20, 21TX3-SCL%QX3.0-%QX3.724-31
ZoneAnalog InputsM-Duino 57R+IEC 61131-3Modbus input R
0A0, A1, A2, A3,I0.2-I0.5%IW0-%IW30-3
1A6, A7, A8, A9,I1.2-I1.5%IW4-%IW74-7
2A12, A13, A14, A15I2.2-I2.5%IW8-%IW118-11
ZoneAnalog OutputsM-Duino 57R+IEC 61131-3Modbus holding R
04, 5, 6,A0.5-A0.7%QW0-%QW20-2
18, 9, 7,A1.5-A1.7%QW3-%QW53-5
212, 13A2.5-A2.6%QW6-%QW76-7

Aplicar el mapeo de zonas a cualquier modelo de PLC M-Duino

Now that we know how to map any zone, we can map any M-Duino. For example, we will map the M-Duino 38AR+. It has two zones: the first is analog/digital and the second is relay. To map it, take zone 0 from the first table and zone 1 from the second.

This is the resulting mapping for the M-Duino 38AR+:

ZoneDigital InputsM-Duino 38AR+IEC 61131-3Modbus input
022, 23, 24, 25, 26, 2, 3, 99,I0.0-I0.6%IX0.0-%IX0.60-6
118, 19, 99, 99, 99, 99, 99, 99,I1.0-I1.1%IX1.0-%IX1.18-9
ZoneDigital OutputsM-Duino 38AR+IEC 61131-3Modbus coil
036, 37, 38, 39, 40, 99, 99, 99,Q0.0-Q0.4%QX0.0-%QX0.40-4
128, 27, 30, 29, 45, 44, 43, 42,R1.1-R1.8%QX1.0-%QX1.78-15
99, 99, 99, 99, 99, 99, 99, 99,
Comm14, 15, 16, 17, 18, 19, 20, 21TX3-SCL%QX3.0-%QX3.724-31
ZoneAnalog InputsM-Duino 38AR+IEC 61131-3Modbus input R
0A0, A1, A2, A3, A4, A5,I0.7-I0.12%IW0-%IW50-5
1A6, A7, A8, A9,I1.2-I1.5%IW4-%IW74-7
ZoneAnalog OutputsM-Duino 38AR+IEC 61131-3Modbus holding R
04, 5, 6,A0.5-A0.7%QW0-%QW20-2
18, 9, 7,A1.5-A1.7%QW3-%QW53-5

This is what it looks like in OpenPLC:

Ahora deberías ser capaz de mapear cualquier modelo M-Duino.

Next post:

MQTT on M-Duino with OpenPLC

Buscar en nuestro blog

Boot & Work Corp. S.L, Arnau Tena 18 de junio de 2026
Compartir esta publicación
Etiquetas

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.

Comparativa de PLCs