Data Acquisition, I/O & Signal Conditioning

There are many different signals in use today, but fewer than there were ten years ago. The most important thing to remember is to make sure that your I/O module matches the actual signal / device that you are connecting to.

Types of I/O

Typically there are three types of I/O:

1. Digital I/O 2. Analogue I/O 3. Specialty I/O

Discrete(digital) I/O is simply On / Off, True / False or some other binary designation of two states. Analogue I/O’s are varying levels such as temperatures, pressures, levels. Specialty I/O is everything else — high speed motion control, high speed counters, high speed interfaces to encoders, etc. Note the word “high speed” in connection with specialty I/O. Typically a specialty I/O module is a module with its own processor that allows the module to operate faster than the PLC and regular I/O.

Signal Characteristics

There are several factors that have to be considered for every input and output:

1. Voltage level 2. Current level 3. Noise

Examples of things not to do are:

* do not connect a 24VDC I/O module to a 240 VAC device * do not connect an output that sources 1/4 amp to a device that draws 1/2 amp * do not expect high accurate analogue signals without having lots of isolation and other noise reducing measures


We can categorise three main voltage groups:

1. Low voltage (typically 5 volts or less) such as TTL, thermocouples, strain gauges, etc. 2. Medium DC voltage: 12 VDC, 24 VDC, 48 VDC 3. High voltage: 240 VAC or higher, most AC voltages

Low voltages are very susceptible to receiving interference whereas high voltages are prone to causing interference.

Medium DC voltage (namely 24 VDC) tends to be in the middle of the two extremes. That (plus a few other reasons like current draw) is why many companies have been using 24 VDC for industrial applications.

You can not do without the low voltage devices. However, you can try to contain them in a shielded box (shell) and convert that low voltage signal to a 4 to 20 ma (current) signal as soon as possible. For example, if you have a thermocouple in an oven it is probably generating a signal in the millivolts range (hundredths of a volt). If your controller is a hundred feet away then you can buy a hundred feet of special thermocouple wire and try to eliminate noise throughout the hundred foot run back to the controller. Or you could mount a thermocouple to milliamp (ma) current loop transmitter on the outside of (or close to) the oven and then the ma current runs back to the controller and is less susceptible to noise. You still want to use a high quality, twisted pair, shielded cable on a 4 to 20 ma analogue differential input for lowest noise. The point being — there is less noise in transmitting a 4 to 20 ma current over distances then transmitting a thermocouple (millivolt) signal over the same distances. So convert analogue signals, at their source (as soon as possible) to 4 to 20 ma current analogue signals.

5 volts (TTL) does not really belong in the low voltage group but TTL is such low current it does require the same precautions as these other signals.

You can not do without high voltage devices either. The best you can do is keep the AC voltage cabling and devices separated and isolated from the rest of the system.

Current Loop

One of the most commonly used analogue signals in automation today is 4 to 20 milliamps. You will see analogue I/O modules and converters for all kinds of other voltages and currents but 4 to 20 ma is still popular since it is the least susceptible to noise. Sending/receiving an analog signal over a great distance can be a problem if it is a voltage signal. The reason is because the wires that it is transmitted over will have a certain resistance. And that resistance will change the voltage that is received at the end of the line. This is referred to as a voltage drop.Sending a current over a long distance also produces a voltage drop. However, the voltage drop (also called a ‘loop drop’) does not reduce the 4-20ma current as long as the system can compensate for the drop. (most any system can, by design) The total current in the loop is not affected by the voltage drop caused by the long running of wiring because of the way electricity ‘works’. All of the current originating at the – terminal of the power supply has to return back to the + terminal of the power supply. Some analogue converters may have other current ranges, such as 0 to 20 ma, but most devices today use 4 to 20 ma. Using a current signal, however, will not affect the signal (as described above) because the current starts and ends the same. Generally, we use 4ma as our zero point and 20ma as our highest measured value point.
Why not use 0ma as the low point? Simply stated we use 4ma instead of 0ma because if the wire was to break, the current would drop to 0ma. By using 4ma as the zero point we are able to see if a wire has broken. If 0ma was the low point and a wire broke, how would we know?

For measuring high currents, such as reading current draw on a large motor, there are current transformers that convert 0 to 200 amps at 480 volts AC to 4 to 20 ma at 24 VDC. There are also voltage to current converters. For example you can buy transformers that convert 0 to 480 volts AC to 4 to 20 ma current.


Noise is everywhere. The lower your voltage and current the more susceptible to noise you are. There are many things you can do to cut down on noise:

1. Shield cables, enclosures, conduit 2. Proper grounding 3. Use isolation on power and signals 4. Use different methods to filter signals 5. Use twisted pair, shielded cables 6. Use differential inputs instead of single ended inputs

The best way to “see” noise is to get an oscilloscope and a good isolation transformer. Look (on the oscilloscope) at the voltage going into the isolation transformer versus the voltage coming out of the transformer. You can make similar tests using other signals and filters.

One important concept is signal to noise ratio. The higher the signal power and the lower the noise — the better your signal to noise ratio and the more accurate results you will receive.

One important question is — how much noise is bad? It depends on your system and what you need to achieve. For example, if you have all AC powered discrete I/O and no analogue data then there should be little problem with noise. You still need protection such as fuses and surge protectors. But we would not recommend an expensive isolation transformer, we would probably just use something like a Corcom AC filter.

However, If you need to accurately measure analogue signals in a system with variable speed drives then you need to take a lot of extra effort to isolate and eliminate noise. This means starting with isolating the power going to your control system and using isolation on the power going to the variable speed drives.

One of the worst sources of noise are motors and variable frequency drives. For sensitive applications (i.e. those using analogue I/O) it is important to keep the power and signals isolated between your controller and drives. To reduce noise on the power line from drives you can use isolation transformers, reactors, and filters. Note that isolation and filters blocks most of the noise both ways — it eliminates much of the noise from getting into your system — and in the case of drives — it prevents the noise from the drives from getting back out onto the main power lines and then getting into other equipment. Ferrite coils are often used to cut down on noise.


Filtering a signal cuts down on the noise but reduces the response time. For example, an encoder must have little filtering so that it can produce pulses at a fast speed. Whereas most proximity switch applications can have heavy filtering and are less prone to false signals due to noise. There are several ways

Most input modules have a resistor and capacitor that filter the incoming signal. If you check the specifications of most digital input modules they will tell you that the input module has a delay or response time of typically 10 milliseconds (ms). Therefore you can not measure signals with response times faster than the specified response time. Note that there are high speed input modules but they have less filtering and are more susceptible to noise.

Really good input modules will allow you to set the input filtering time. For example, if you are trying to measure the force to press a switch this is high accuracy and fast sampling. So you would use less filtering (higher response time) and noise is more of a concern. Whereas if you were measuring the outside temperature then you could dampen the signal a lot (because outside temperature changes very slowly) and noise would not be much of a concern.

Another way to filter signals in code is to use a moving average. If you average results you reduce the peaks and valleys (fluctuations) of the signal. We would recommend that you first try to use electronics filtering and use moving averages only as a last resort.

It is important to understand how much noise will effect your system and to take effective measures to reducing noise.

Signal Conditioning

Signal conditioning and protection is something that has to be considered for every input and output. For example you can not connect an encoder that produces a 5 VDC TTL level signal to a high speed counter designed for 24 VDC. Like wise you can not connect an output that sources 1/4 amp to a coil that draws 1/2 amp. Any conversion of signals is cumbersome but luckily many manufacturer’s make signal conditioning modules. These modules typically are DIN rail mounted.

For digital inputs and outputs we always try to use 24 VDC. If we have signals that are something other than 24 VDC we try to convert them, at their source, to 24 VDC and then run the wires back to our controller. If there are only a few signals to convert then you can get DIN rail mounted converters. If you have more than 6 or 8 signals to convert then you may want to use a rack mount or board mounted converters to achieve higher densities and lower total cost.

The great thing about signal conditioning is that there are so many options. Since many I/O modules are designed for different signals, remote I/O can be used. For example, we love 24 VDC but suppose we have to interface to another machine whose inputs and outputs are all 240 VAC. Our options would be:

1. We can buy 240 VAC input and output modules for our controller and pull the 240 VAC back into our controller and let the AC wiring generate a lot of noise.

2. We can buy a bunch of 240 VAC to 24 VDC converters (solid state relays or similar), and mount them on the other machine and run only 24 VDC in and out of our controller.

3. We can take a small rack of 240 VAC remote I/O, stick it on their machine, and only the communications is brought back to our controller. Note that the communications is usually isolated.

For digital outputs you typically add a mechanical or solid state relay for isolation and to boost the switching current of the output. Since the circuit on each side of the relay is supplying its own voltage and current, relays allow you to change current and voltage for incompatible circuits.

Types of I/O

1. PLC I/O 2. Embedded controller I/O 3. Computer I/O on ISA, PCI, VME bus 4. Remote I/O

When you buy a PLC you can of course buy I/O that works with the PLC. You can also buy PLC I/O with or without a CPU and just use the I/O. PLC I/O is designed so well that if you have a computer controller and you like a certain PLC manufacturer’s I/O (or perhaps it is already in use at the customer site) that you simply have a communications link between the computer and the PLC I/O.

Embedded controllers (computers) will have their own I/O as well.

Computer I/O can be extremely fast. These boards plug into a computer slot and a program can quickly read the I/O and write the data to disk. Thousands of samples per second is easy to accomplish. Companies such as National Instruments offer sampling rates as fast as millions of samples per second. At this rate, they can’t write the values to disk in real-time but memory is so cheap that they can write thousands of measurements to memory and then write these values to disk once the reading phase is completed.

Remote I/O or distributed I/O is much like PLC I/O without the CPU. It is industrial quality I/O with a communications link that allows a controller to read and write I/O that are mounted away from the controller. For example, if you are controlling equipment that is physically located over a 50 by 50 foot area you could pull all the wires for every digital and analogue signal back to one cabinet or you could use remote (distributed) I/O and place the I/O in several different points around the area. This reduces how far the wires are pulled and having to bring thousands of wires into one cabinet. Each remote I/O “drop” is connected to the others and the main controller using a single communications cable.

Tips & Ticks

1. Each system is different in regards to noise problems and what you need to do. You do not have to do much for systems with only digital I/O as you do with systems that contain high accuracy analogue signals and variable frequency drives.

2. Follow good power & grounding guidelines.

3. Use 24 VDC where possible

4. Use isolation where possible: on power and on the signals going between systems

5. Use networks to read and write analogue values instead of using analogue inputs and outputs for two reasons:

A. Devices handling analogue values are typically limited to just one or two analogue I/O. With networks you can typically read and write a lot more values.

B. Errors in an analogue signal are created by converting a number into an analogue signal (D to A conversion), during the propagation of the analogue signal (i.e. the wiring), and then when the analogue signal is converted back to some value (A to D conversion). All of these errors are eliminated with networking.

6. Use circuit breakers or fuses liberally to protect the users, the equipment, and to facilitate troubleshooting. This includes (but not limited to) a fuse on every output and a fuse on every power input.

7. Convert low voltages and currents to higher voltage / current.

8. For analogue I/O, use differential signals instead of single ended for higher accuracy.

9. For communications, use twisted pair shielded cable.

10. If there are multiple outputs on one module, there are typically two ratings; one for each output and another rating for all outputs combined. For example, suppose you have a 16 point digital output module. It may specify that each output can source 1/4 amp of power but the module (all outputs combined) can only source a total of 2 amps. So if all 16 outputs were on at the same time, and all were trying to source 1/4 amp that would be 4 amps total and would exceed the 2 amp maximum limit.

11. Put a diode across the coils of all DC relays and inductors to reduce surges.

12. Put a metal oxide varistor (MOV) across the coils of all AC relays and inductors to reduce surges.

13. Carefully read and follow the manufacturer’s manual in detail. Most manufacturers include “best practices” on how to install their systems but most users want to “cut corners” and ignore this advice.