# Sensor decoupling and noise reduction

I have an Arduino UNO board, and I wanted to design a simple 'sensor shield' --since all simple sensors has 3 pins (namely, SIG-5V-GND) and it is convenient to connect bunch of them directly-- and thats where things got ugly.

Below you can see my very basic design,

As you can imagine, there is 'a-lot' of noise going on right know (with 1 IR range and 3 ultrasonic sensors). I've managed to reduce some of the misreadings on the software side, yet it is clear that I have to make some hardware modifications as well.

A lot of people that had similiar problems advise coupling each additional IC with a 100nF cap.

My question is;

• Should I de-couple each line with its own 100nF cap, or is there a neater solution ?
• Also, these sensors are connected to my arduino with a 15-20cm cable (physical design restrictions). Because of this, should I take extra measures as well ?

EDIT: Sensors that I'm using

• Analog noise or digital noise? What frequency of signal? – pjc50 May 10 '13 at 13:24
• You could put a bulk capacitor of about 10uF to the input, then add 100nF decoupling capacitor right near each IC. That would give you a clear power rail to work on. Also, you could create a ground plane on the bottom layer, if you are working with a double sided design, which will improve signal integrity a lot. – abdullah kahraman May 10 '13 at 13:46
• @IsmailKuruca I can say more about it if you give information about your sensors. – abdullah kahraman May 10 '13 at 14:01
• @abdullahkahraman added links for the sensors I'm using. – JuniorDev May 10 '13 at 14:10
• It looks like you really tried hard not to connect power to the sensors on A0 to A5 directly. 5V is OK but flood the 0V copper on that PCB layer even if it's single sided. Maybe also break into the 5V with a series resistor that doesn't drop too much voltage when powering the sensors (<10ohms for a 1st pass estimate) and decouple the sensor side of the 5V with ceramic 10uF and 1nF in parallel. – Andy aka May 10 '13 at 14:13

Your sensors are actually circuit boards that process the sensor output and give you a easily understood and implemented signals. I have checked, and these boards include their bulk and decoupling capacitors.

One thing to improve is the grounding quality. To do that, you have to improve the impedance of the ground tracks. In low frequencies, the ground impedance is dominated by the resistance, however when the frequency goes high, inductance kicks in and dominates the impedance.

One way to make the ground impedance low at high frequencies is bypass capacitors that are put very close to the supply pins. Since you already have about 20 cm of wires, you cannot do much for the high frequency on your board. But at least you can isolate the noise from the board as noted below.

There are couple of things that come to my mind that will reduce overall noise:

Put an electrolytic capacitor that has a value of about 10uF to 220uF across GND and +5V. This will give you a cleaner power and room for inrush currents. Since capacitors have relatively low series resistance, they can give higher currents, of course limited with their storage. Also, connecting a 100nF ceramic capacitor with this bulk capacitor will filter out high frequency content and decouple the "sensor shield" from Arduino.

When a trace gets ticker, its resistance drops lower. Make the ground trace as thick as you can. Or better, as Andy aka suggested, make a ground fill, or a ground plane, depending on what your CAD software calls it.