I/O protection for industrial controller

Thread Starter


Joined Dec 8, 2018

I want to design a circuit board that can turn on valves, process switching contacts (digital Input) and has one 4 to 20 mA input. The power supply is 24VDC. Valves, switching contacts and 4 to 20 mA are supplied by this 24VDC source. The microcontroller on this board gets the power from this supply too, which is reduced to 5V. The circuit board will be operated in an industrial environment.

Now I am not so sure if it is ok to directly connect all the I/O directly to the microcontroller besides the use of protection diodes. I looked at the circuit boards from other manufacturers. One is Siemens Logo (cheap PLC) and another is a chiller controller from Danfoss (MCX). Both use Schmitt Inverter for digital input and don't have any sort of galvanic isolation for analog inputs. I also found an example on the infineon website where they contact a PROFET directly to the microcontroller to switch valves.

In contrast, in application reports of some IC manufacturers for PLC modules you can find that every I/O module is galvanic isolated from the microcontroller.

Can I directly connect my I/O to the microcontroller or should I isolate the microcontroller from the rest of the circuit. Is galvanic isolation used for PLC modules because there are mainly external voltages with different potentials? Since these controls must be very universally applicable. Or is it to protect against the interference of other voltages. In my circuit everything gets supplied from the same source.



Joined Jul 18, 2013
PLC I/O are isolated for a few reasons, one is as you say to isolate the 5v processor from the I/O, which usually can be 24vdc for inputs and 24v to 240vac on the outputs.
Early versions of isolation were the popular Opto22 that supplied boards that can be populated with all kinds of modules, from 5v to 60vDC and 120/240vAC.
In an industrial application I would tend to use a similar form of isolation if using a 5v micro etc.
If a one-off, the Opto22 versions can be picked up fairly cheap, they come with indicator LED and fused outputs.
Modbus is the fairly common way now for PLC remote control etc.


Joined Feb 20, 2016
Almost all the boards I have designed for industrial control have opto isolated I/O.
Here is one and you can see them all :) This is my mod of one designed where I used to work, before it closed down.

Each of the 16 I/O pins can be an input or an output.
The network is not isolated but for a later board I've made provision to use the MornSun isolated RS485 modules.

They also have a range of other isolated devices like...

Having isolation helps protect things from being blown up but also is a great help in noisy industrial installations.
It is well worth a bit of investigation.


Joined Oct 3, 2010
If your time is worth at least minimum wage, then you are wasting money if you spend more than a day on this. you can buy a Brick PLC (AKA smart relay) for under $100 with opto-isolated inputs and everything.


Joined Feb 20, 2016
Also, you can use a relay to give you output isolation. I have a board the drives 8 slim relays from the 5V supply using an I2C expander.
These relays are available with .2" width so you can stack a lot in.
Here you can see the MornSun RS485 module grown on for a test.
Also, there in Ethernet using the XPort module.
This board does not have the 4 x analog inputs isolated but it generally works well.
Each board does have a 24V to 5V isolated supply built in.
Isolation is your friend in industrial control!

Thread Starter


Joined Dec 8, 2018
Thank you for your replies. I shouldn’t have mentioned the PLC example since I want to build something much more simpler without any modbus or network blink blink. Replacing any failed input parts like opto couplers would be to expansive.

Why are no optocopters used within the Danfoss chiller controller? Take a look at the picture below. These things are sold very often.
What’s so bad about using a 74HC14D as an 24V to 5V input converter.




Joined Feb 20, 2016
You can just use an input series resistor divider then a zener diode from the input to 0V. The zener will clamp any over volts input. That is a simple way. But zeners are not recommended if you want full range on analog inputs as they are non linear as the zener action starts.
I tend to use BAT54S dual diodes, wired so the cathode is to +V, the common point of the 2 diodes is the processor input pin, and the anode is 0V. Once again, a series input resistor is used to limit the input current to a safe value.

A combination of these, with resistive dividers and a switched termination resistor gives me a selectable 0-10V or 0-20mA analog input on the PIC32 chips. If you are interested, I can post the circuit I use later.