M-Duino 42: Arduino PLC with 42 I/O and Ethernet
The M-Duino 42 is an industrial PLC from Industrial Shields built around an original Arduino Mega 2560. It has 26 inputs (12 analog 0-10 V) and 16 outputs (6 analog/PWM), Ethernet, RS-485, RS-232, I2C, SPI, a real-time clock and a microSD slot, and mounts on a DIN rail. It is programmed with the Arduino IDE, with no licence fees, and suits machines and systems with many sensors and digital signals.
Not sure this is the right model? Our engineers help you choose the controller and the options for your project.
Talk to an engineerTechnical specifications
| Microcontroller | Arduino Mega 2560 (ATmega2560, 16 MHz, 256 KB flash, 8 KB SRAM) |
|---|---|
| Inputs | 26: 12 analog/digital (0-10 V, 10-bit) and 14 digital optoisolated, 5 to 24 Vdc, 4 with interrupt |
| Outputs | 16: 6 analog/digital/PWM (0-10 V, 8-bit), 10 digital optoisolated, 5 to 24 Vdc |
| Ethernet | W5500, 10/100 Mbit, RJ45 |
| Serial and buses | RS-485, RS-232, TTL serial, I2C, SPI |
| Built in | Real-time clock, microSD slot, USB 2.0 Type-B |
| Programming | Arduino IDE with the Industrial Shields boards package |
| Power supply | 12 to 24 Vdc, fuse (2.5 A) and polarity protection |
| Environment | 0 to 60 °C operating, 10 to 90 % humidity without condensation |
| Mounting and protection | DIN rail TS35, IP20, inside a cabinet |
| Communication versions | Wi-Fi & BLE, GPRS/GSM, LoRa and DALI versions are described in the family datasheets |
Projects built with Arduino-based PLCs
Field-tested examples with code, built on M-Duino PLCs with the same Arduino IDE environment.
- Modbus TCP register map for a plantSee the example
- Modbus TCP to RTU gatewaySee the example
- Modbus flow meter 32-bit counter and remote resetSee the example
- Modbus RTU drive speed controlSee the example
Before you choose the M-Duino 42
How do I program the M-Duino 42?
With the Arduino IDE (1.8.0 or later). Install the Industrial Shields boards package from the Boards Manager and select the M-Duino 42. Upload through USB; the Ethernet port also lets you maintain it remotely.
Does it have relay outputs?
No. Its outputs are optoisolated digital and analog/PWM outputs. If you need relays, look at the M-Duino models with relay outputs, such as the 19R, 38R or 57R.
Can it talk Modbus?
Yes. Use Modbus RTU over RS-485 and Modbus TCP over Ethernet with the Industrial Shields Arduino libraries. It can act as master or slave.
Can the analog inputs read 4-20 mA sensors?
The analog inputs measure 0-10 V with 10-bit resolution. To read a 4-20 mA loop, add a precision shunt resistor (500 Ω turns 20 mA into 10 V) and scale the reading in your program.
Does it keep the time and log data?
Yes. It has a real-time clock and a microSD slot, so it can timestamp events and log data locally.