Electronic – arduino – Supply noise due to Motor

arduinodc motorpower

I'm currently trying to install some IR sensors on an Arduino robot and am having issues with the sensor readings anytime the motors (2 of them) turn on.

I'm using an Arduino Uno connected to an Arduino Motor Shield. The IR sensors are Vishay IR detector modules powered from the regulated supply rail (5V) on the Arduino.

Anytime the motors are powered off, everything works just fine; that is when it detects IR the output of the sensor goes to GND.

But as soon as the motors turn on, the output keeps dropping to GND regardless. I used an oscilloscope to confirm that indeed there is high frequency (~10 MHz) noise. I'm assuming this is noise introduced into the supply by the motor/Motor Shield PWM control signal?

But isn't the whole point of a regulated 5V supply to provide a stable voltage?

I even tried connecting the sensors straight to the Battery (3300 MAh NiMh cells, so current draw isn't a problem) and it made no difference. I've also tried putting capacitors across the motor terminals, across the IR sensor Vin and GND, and also tried them across the Output and GND. No dice. So are the motors actually causing ripples on the Battery voltage?

Any insights?

EDIT:

This is the IR detector: http://www.pololu.com/file/0J19/TSOP34156.pdf

Best Answer

I'm fishing around a bit and this graph is what I found. It tells you that the sensitivity of the device optically can be significantly changed in the presence of quite small variations of noise on the power line feeding it and this could be magnetically coupled or just a high-frequency loading effect the motor has on the battery which in turn gets dumped onto the sensor via its power wires: -

enter image description here

The graph tells me that as the "ripple" voltage on the power supply wires gets higher in frequency, the "effect" it can have becomes more dominant. Shown are ripple disturbances of 1kHz and 10kHz and I can envisage a scenario of 10 mV at 100 kHz having an effect. Even higher in frequency, I would say 1MHz at 1mV is likely to cause problems.

On this basis I'd consider having a local voltage regulator on the device just so the device power supply is kept as clean as possible. I don't know how long the cables are feeding the sensors but maybe if they could be shortened this might help too.

The capacitors you may have tried should not be electrolytic but rather they should be ceramic 100nF types. I'm aware that my answer may be missing the real problem but I'm just reporting worries on reading the data sheet.