Go Down

Topic: Arduino and Servos losing power (Read 1 time) previous topic - next topic

Longrange_Lauber

Hey all, I am working on this project and have it fully functioning but I'm having an issue with the Uno board and also the 4 servos I have hooked up. Here's a quick run down of my setup:

I have a 9v, 2a power supply hooked up on one of the rails of a solderable breadboard. I have that same rail powering the arduino via the barrel plug on it. Also on that rail I have two resistors. A one ohm resistor on the (+) side and a 3 ohm resistor on the (-) side in order to create a voltage divider that jumps over to the opposite rail in order to power the 4 MG995 servos @ 6.5v (measured; calculated, in theory, should be 6.75v). I then ran a common ground and a common 3.3v wire to open columns on the breadboard from the Uno in order to power the 10k ohm potentiometers (pic attached of my TinkerCAD setup) since I found out pots do not like any voltage above 5v.

Everything functions with one motor working at a time, but the mg995 I have for the picker hand/claw seems to just die out with just the tiniest bit of resistance while it is trying to pick something up. It can't really apply pressure to the object without the motors and Uno board losing power and then having to reset to their appropriate positions (in which I have to physically help because the motors are trying to home back to where the potentiometers are set at and the power kicks in and out until they get back into position.)

Servo Specs:

Weight: 55g
Dimension: 40.7×19.7×42.9mm
Stall torque: 9.4kg/cm (4.8v); 11kg/cm (6v)
Operating speed: 0.20sec/60degree (4.8v); 0.16sec/60degree (6.0v)
Operating voltage: 4.8~ 6.6v
Gear Type: Metal gear
Temperature range: 0- 55deg
Dead band width: 1us
servo wire length: 32cm
Current draw at idle 10MA
No load operating current draw 170MA
Stall current draw 1200MA

What I'm thinking is there is not enough current to supply the Uno and all 4 servos once one of the servos comes under a slight load since the other 2 motors are pretty much always under a constant load (the shoulder and elbow servos.) Just want to get someone else's opinion before proceeding with this. Thanks all!


slipstick

It sounds like you're trying to use a resistive voltage divider which is really bad way to supply lots of current to 4 servos. Just your 2 resistors are already drawing 9 / 4 = 2.25A out of the 2A power supply before the servos even start up.

MG995s have a stall current of 1.2A so for 4 of them you really need a separate 6V 5A(at least) power supply. The weedy little 9V 2A supply is probably enough to supply the Arduino and any sensors involved.

BTW pots have no objection to 5V or more. It's the analog pins that you probably have them connected to that you will kill.

Steve





Longrange_Lauber

It sounds like you're trying to use a resistive voltage divider which is really bad way to supply lots of current to 4 servos. Just your 2 resistors are already drawing 9 / 4 = 2.25A out of the 2A power supply before the servos even start up.

MG995s have a stall current of 1.2A so for 4 of them you really need a separate 6V 5A(at least) power supply. The weedy little 9V 2A supply is probably enough to supply the Arduino and any sensors involved.

BTW pots have no objection to 5V or more. It's the analog pins that you probably have them connected to that you will kill.

Steve





Steve, thanks for taking the time to reply. I see what you mean about the pots and analog pins, makes sense. I'm new to this whole Arduino thing and learning as I go, it's definitely a lot of fun!

So it looks like you're suggesting dropping the 9v, 2a supply in favor of a 6v, 5a (or more) power supply. Makes sense and I'll give it a shot. Will this 6v supply be enough to supply the Uno board as well? I was told by a fellow classmate that dropping the input voltage for the barrel connector below 7v could cause issues with the Uno, but if you think it will be fine I will go ahead and get a power supply that is capable of more current and that doesn't have to run through those resistors which eat up a lot of the current.

Thanks!

slipstick

6V is not good for the Arduino which is why I said you could carry on using the 9V 2A supply for JUST the Arduino and any sensors you have.

The alternative  is to get  a 5V 5A power supply which will run the servos AND the Arduino (you connect it to the 5V pin NOT the barrel connector). The catch with that is the servos will not have quite as much speed or power as they do on a higher voltage.

Steve

gilshultz

A real inexpensive solution is to use a NPN transistor, collector connected to +9, the base to the resistor devicer set 0.7 volts higher then you want, the emitter is your output, best add some capacitance to this.  The HFE of the transistor is your current gain so depending on the transistor you can use a relative high impedance divider.  The best solution is to use a buck converter. This response is to help you get started in solving your problem, not solve it for you.
Good Luck & Have Fun!
Gil


Longrange_Lauber

So I ended up purchasing a 5v, 6a power supply to replace the 9v, 2a supply and resistors. When I had the Uno hooked up on the same 5v supply (via a hacked up USB cable), the motors were very sporadic and shook a lot. I measured the voltage on the power rail that was supplying electricity to both the motors and Uno board and it measured out at 3.8 volts. Seems like the voltage dropped causing either the motors to go sporadic or maybe even the Uno board to not get a good voltage to it.

Solved this issue by using a 5v output powerbank into the USB port of the Uno. Everything functioned great and it was even strong enough to lift my phone up too (Samsung Note 8 with Otter Box!)

In turn, I am using a 9V battery hooked up to the Vin port on the Uno so as to reduce our cost for the project since our limit was $100.

Thank you all that helped me learn a little bit more about Arduino as well as servos and develop a further understanding of electrical current!

Go Up