Technical Details
M-DUINO PLC Arduino Ethernet 57AAR I/Os Analog/Digital/Relay PLUS
BACK TO THE PRODUCTInitial Installation
ARDUINO IDE
Industrial controller Arduino IDE is the original platform to program Arduino boards. This cross-platform application is available on Windows, macOS and Linux and is configured under
the GNU General Public License. Arduino IDE supports C and C++ code structuring.
Industrial Shields recommend using Industrial Arduino automation IDE to program
Arduino Based PLC’s, but any Arduino industrial automation compatible software are also compatible with Industrial Shields Controllers.
Apart from that, Industrial Shields bring the possibility to select your Arduino based industrial PLC controller into your Arduino IDE and compile your sketches for the different PLC’s (programmable logic controller).
Download the Arduino IDE 1.8.6:
Inputs & Outputs
ANALOG INPUTS
Voltage variation between –Vcc (or GND) and +Vcc, can take any value. An analog input provides a coded measurement in the form of a
digital value with an N-bit number. In Digital and Analog I/O there’s self insulation, so its posible to connect them in a different power supply
than 24 V.
Inputs:
(16x) Analog (0-10Vdc, 10bit) / Digital (7-24Vdc) Inputs configurable by software.
To know more about Analog inputs...
TYPICAL CONNECTION
DIGITAL INPUTS
Voltage variation from –Vcc (or GND) to +Vcc, with no intermediate values. Two states: 0 (-Vcc or GND) and 1 (+Vcc). In Digital and Analog I/O there’s self insulation, so its posible to connect them in a different power supply than 24 V.
Inputs: (16x) Analog (0-10Vdc, 10bit) / Digital (7-24Vdc) Inputs configurable by software.
To know more about Digital inputs...
TYPICAL CONNECTION
- Digital Isolated Input
- Digital No Isolated Input
INTERRUPT INPUTS
Interrupt Service Rutine. A mechanism that allows a function to be associated with the occurrence of a particular event. When the event
occurs the processor exits immediately from the normal flow of the PLC program and runs the associated ISR function ignoring any other task.
Inputs: (6x) Interrupt Inputs (7-24Vdc). “Can work like Digital Input (24Vdc)”.
Interrupt | Arduino Mega Pin | M-Duino Pin |
INT0 | 2 | I0.5 |
INT1 | 3 | I0.6 |
INT2 | 19 | I1.1 |
INT3 | 18 | I1.0 |
INT4 | 21 | I2.1 |
INT5 | 20 | I2.0 |
- I0.5 and I0.6 also as Pin3 and Pin2. Enable Interrupts turning ON the switches number 3 and 4 of down communication switches.
- I1.5 and I1.6 also as Tx1 and Rx1. Enable Interrupts turning ON the switches number 1 and 2 of up communication switches.
- I2.0 and I2.1 also as SCA and SCL. Enable Interrupts turning ON the switches number 3 and 4 of up communication switches. In this case you won’t be able to use I2C.
To know more about Interrupt inputs...
TYPICAL CONNECTION
In this example we activate INT0 using pin I0_5 from M-duino board when there’s a change.
#define INTERRUPT I0_5 //other pins: I0_1, I0_6, I2_6, I2_5, I1_6, I1_5 (M-Duino) I0_0, I0_3, I0_2, I0_1 (Ardbox) volatile bool state = false; void setup() { pinMode(INTERRUPT, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(INTERRUPT), function_call_back, CHANGE); } void loop() { if (state == true){ Serial.println("Interrupt activated"); state = false; } } void function_call_back(){ //Change led state state = true; }