Regulated +5V drops when relays are switched on

arduinopowerpower supplyvoltagevoltage-regulator

A regulated power supply RAC02-055C/277 provides 5V to an Arduino driving 2 relays. The power supply is rated to provide 2W of power.

Connecting a multimeter between one of the leads of the power supply to the +5V bus (which connects to Arduino 5V pin and the +5V pins of the relays), and another multimeter across the +5V and GND rails, the current reads 98.6 mA and the voltage is 4.969 V.

When one of the relay is turned on, the readings are 209.4 mA and 4.911 V.

When both relays are turned on, the readings are 301.9 mA and 4.869 V.

How can we prevent the voltage output from the supply from dropping/changing whenever the relays are turned on and off? The +5V rail is used to bias a input signal, so a constantly changing +Vcc will give inaccurate readings.

Best Answer

According to the datasheet, the voltage drop is within spec:

"Load Voltage Regulation 10% to 100% full load ±6% max." If "full" load is 400mA for a 2W, 5V output version, then you are getting up to 75% load by then. (4.869V / 5.0V ) * 100 gives us 97.38% of load voltage regulation, which is still within reason.

I suggest you use a more constant reference.. Some people use a reference (zener) diode or maybe another small linear regulator that goes from 5V to 3.3V but its more of a reference than a 'power supply' so to speak. Basically you need something to act as a stable reference, and not ever-changing due to such large changes in load as one or both relays turn on.

Edit: To use a resistor and zener diode as a voltage reference, see this question and it's answer by Anindo for how to do it, and calculate the required resistance to make it work. Using a Zener diode as voltage reference