SOURCES OF NOISEThe first source of noise is the board itself. Manufacturers of A/D boards quote component specifications in their data sheets but rarely quote a system specification for general accuracy and noise. The reasons the system are not specified are that the system specification would be less accurate than component specification and that system specifications must also specify the conditions under which the specification was made. That means the PC, the PC's power supply and the connection to the front end. To determine what the system accuracy of a board is in a given PC in a given location, simply short out an input to ground and take 10,000 readings and plot the data. This will show how much noise you have in your system. In an ideal case you would see a straight line, however, this in not typical and you will see some fluctuations.
SIGNAL WIRE NOISESignal wires, especially single ended inputs, are subject to EMI and RFI, both of which can induce noise on the wires carrying the transducer signal to the A/D board. Fortunately, signal wire noise is often localized and can be reduced by repositioning the signal wire run.
To check for signal wire noise, first, short an analog input channel to ground. If it is a single-ended input, simply connect a piece of wire from the channel input to low level ground. If it is a differential input, connect a piece of wire from channel (+) to channel (-) and then another wire from (-) to low level ground. Then, take 10,000 samples and plot the histogram. This is the best that the signal can be and is what you will try to achieve with the signal wires in place.
After you have an ideal case histogram, remove the short between your analog input and ground, and attach the signal wires that go from the board to the sensor. Do not connect the other end to the sensor yet, but simply run the wires and then short out the wires near the sensor and connect (-) to low level ground on the board. Take data for the histogram and compare it to the best case data taken previously. If it shows noise, you can try to eliminate the noise by doing the following:
Move the signal wires, trying to locate a 'quiet' run or use a shielded twisted pair as the signal wire. Attach the shield at the PC only. If the shield is attached at both the PC and the sensor, it may create a ground loop and add to signal interference.
SENSOR NOISEWhen the signal wires have been tested and characterized for signal quality, connect the sensor and provide a known input to the sensor, then take data for the histogram plot. If additional noise has been introduced by the sensor which exceeds the sensor specifications, you can try moving the sensor a bit. Sometimes, it is necessary to electrically isolate the sensor from the measured medium. For example, if you insert a thermocouple to a machine, and if you connect that thermocouple to your board and suddenly get noise, you may need to UNGROUND the thermocouple from the machine. This may be done by using an ungrounded thermocouple, for example. Basically, remove the ELECTRICAL connection between the sensor and the device that you are measuring. Another method is to use a SIGNAL CONDITIONER to electrically isolate the sensor's output from the A/D board.
SIGNAL CONDITIONERSSignal conditioners have many uses, such as sensor linearization, filtering, amplification and electrical isolation. They can be used to correct for ground loops AND noise reduction. Signal conditioners are available for many different sensor input types, including but not limited to thermocouples, RTDs, strain gages, voltage, current and frequency. Isolation is not generally inexpensive, and the average conditioner costs approximately USD$200 per input, however, they are very simple to use, and usually solve most difficult noise problems. Many models also provide high voltage isolation, protecting expensive equipment as well as the operator.
SMOOTHING DATAIt is not always possible to eliminate all noise, especially with very low level sensors, but noise looks terrible when plotted and can raise doubts about otherwise excellent data. There are two simple ways to eliminate noise from the data:
- Apply a moving average to the data if you want to retain the same apparent accuracy.
- Remove the information from the noisy range. Fore example, shift the data by the number of counts of noise. If a 12-bit A/D converter is at +/- 5 volts (10 volts full scale) then one LSB=10/4095 = 0.00244 volts. If your system is inducing +/- 0.007V of noise (or +/- 3 counts), then just round all the readings by +/- 3 counts. In this way the reading's value reflects the true accuracy of the system.