Technical Details

M-DUINO PLC Arduino Ethernet 38AR I/Os Analog/Digital/Relay PLUS

BACK TO THE PRODUCT

Initial 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 compatible with Industrial Shields Controllers.

Apart from that, Industrial Shields bring the possibility to select your Arduino based PLC (programmable logic controller) into your Arduino IDE and compile your sketches for the different PLC controllers.

Download the Arduino IDE 1.8.6: 

Windows Installer

MAC OSX

Install Industrial Shields units to Arduino IDE:

Industrialshields boards

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 possible to connect them in a different power supply
than 24 V.  

Inputs:  (10x) Analog (0-10Vdc, 10bit) / Digital (5-24Vdc) Inputs configurables by software.

To know more about analog inputs... 

TYPICAL CONNECTION

Arduino PLC Analog Imputs 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 possible to connect them in a different power supply than 24 V.  

Inputs:  (5x) Isolated Digital Inputs (5-24Vdc)

               (10x) Analog (0-10Vdc, 10bit) / Digital (5-24Vdc) Inputs configurables by software.


All digital inputs are PNP.

To know more about digital inputs...


TYPICAL CONNECTION


- Digital Isolated Input


Arduino PLC Digital Isolated Imput Typical Connection 

- Digital No Isolated Input

Arduino PLC Digital No Isolated Imput Typical Connection

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 program and runs the associated ISR function ignoring any other task. 


Inputs:  (4x) Interrupt Inputs (5-24Vdc). “Can work like Digital Input (24Vdc)”

 

Interrupt Pin Arduino Mega Pin MDuino
INT0 2 I0.5/INT0
INT1 3 I0.6/INT1
INT0.1 18 I1.0/INT0
INT1.1 19 I1.1/INT0

   - I0.5/INT0 and I0.6/INT1 also as Pin3 and Pin2. Enable Interrupts turning ON the switches number 3 and 4 of down communication
switches.

To know more about interrupt inputs...

TYPICAL CONNECTION

 Arduino PLC Interrupt Service Rutine TYPICAL CONNECTION


EXAMPLE 

In this example we activate INT0 using pin I0_0 from M-duino board. When there’s a change   

#define INTERRUPT I0_0 //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;
}