Browse our Blog. You will find multiple applications, solutions, code examples. Navigate using the tag cloud or search using specific criteria
How to convert a 4-20mA to 0-10V signal in a PLC Arduino
Programing Arduino analog inputs
What is a 4-20mA Signal?
Why is 4-20mA standard?
A 4-20mA signal is an analog signal which if it is connected to an Arduino board or an industrial Arduino based PLC controller identifies the value from the sensor. The controller receive a current from the sensor which allows the PLC to transform that electrical signal to an understandable value. ready for being used on the software code. This value is used for the programmer to know the right units of measure received from that sensor and to understand the situation on the Industrial project developed.
4-20mA is mainly used for long-distance cables because the current signal receives less interference from noise or EMC issues than a voltage signal such as 0-10Vdc analog inputs.
Arduino is not able to receive a current analog signal because the analog signals from Arduino work from 0 to 5Vdc so it is necessary to transform the current analog signal to a Voltage. It is important to know that Industry voltage analog signal standards work from 0 to 10Vdc so the way to transform a 4-20mA to Arduino is quite different as transformed for Arduino based PLC which works at 0-10Vdc.
Arduino Industrial application for Analog Signals:
It is necessary to convert a 4-20mA to a 0-10Vdc signal. As you can see in the below diagram. You can understand how to transform a 4-20mA to 0-10v using Ohm Law.
To do this it is necessary to connect an impedance of 500Ohm between the analog 4-20mA signal and the ground signal as shown in the diagram. If you do, the analog value will change from current to Voltage.
How can you program 4-20mA on your industrial controller Arduino for industrial automation?
Arduino as a single board is not able to be used on Industrial environments for that reason Industrial Shields has developed an Industrial Shield for Arduino which include an original Arduino board inside and it is fully compatible for Industrial Standards.
Through the Ohm Law it is easy to understand how to transform a 4-20mA to 0-10Vdc through a 500Ohm resistance. If you need to test it using an Arduino Uno, Arduino Mega or Arduino Leonardo Boards you must replace the 500Ohms to 250Ohms for transform 4-20mA to 0-5Vdc.
How does the input value change to Arduino?
When you have a signal of 4-20mA for 10bits you get the following data:
but, if you convert this signal to 0-10Vdc, the results are:
204 value* (aproximately)