Welcome to Synthiam!

Program robots using technologies created from industry experts. ARC is our free-to-use robot programming software that makes features like vision recognition, navigation and artificial intelligence easy.

Get Started
Asked — Edited
Resolved Resolved by Steve G!

System Reboots When Servos Move

I'm running a 12 volt 3 amp power supply. Then I have a 12 volt to 6 volt DC step-down to power my EZ-B4 and servos. After the robot runs a little while sometimes the servos stop responding. But most often If I run a script to put the robots arm on its hip, sometimes it will work. Other times the arms will start to move and then the EZ-B4 will disconnect and then reboot.

I have also seen that after running a while the servos in the arms will start to run slow and not quite make it to there assigned spot. While the servos in the neck keep right on going like normal.

So I was thinking we did not have enough AMPS for all the servos. See I have 2 servos in each shoulder, one servo in the elbow, two servos in the wrist and one in the hand for a total of 6 servos in each arm. + 2 servos in the neck.

Test 1
I started to look at the power supply. Maybe we do not have enough AMPS. So I grabbed one of R2D2's 12 volt 18 amp hour battery. R2 was not vary amused to see one of his battery's wandering off. While the servos ran a tad bit faster I soon ran into the same problems.

Any ideas? *confused*

AI Support Bot
Related Content
Synthiam
United Kingdom
#12  
No problem. Glad I could help.:)

And thanks Richard.;)
PRO
Synthiam
#13  
Linear power supplies will suffer delivering their specified amperage - this is an inherit limitation to the design of a linear power supply.

If you want sufficient power for servos, then a digital switching power supply is what you require - I recommend an ATX power supply from a PC.
#14  
DJ,

Humm good idea on the ATX power supply. I seem to have a few of those kicking around.

Thanks.:)
PRO
USA
#15  
I'm having same problems with the android head. Its connected to my to my Powerwerx SPS-30DM which is designed to supply 25 Amps continuous and 28 Amps surge. The neck servos are the Power HD 1235mg, they are rated at 7.4v and stall torq can be as much as 9 amps. I've never seen the amps go above 2 amps, but i have the exact same problem, as times passes the servo exhibits odd behavior and then eventually the EZB reboots. How is it possible I don't have enough amps with that power supply?! Am I missing something?

Edit: could wire gage be an issue?
#16  
@fxrtst Put it on a lipo battery to test.. if it stops rebooting then it is your power supply causing the issue.. If the ezb continues to reboot check you wiring is of the appropriate gauge to supply those amps... I use 14g battery wire to my servo board and ezb... Perhaps over kill, but I have no issues driving 26 servos on my inMoov using a 6V SLA battery....
PRO
USA
#17  
Thanks Richard, looks like I'm off to the hobby store! I'll let you know how it goes.
#18  
Make sure you buy a lipo that can delivery a minimum of 25C... If it has heavy duty battery leads then it is the one you want....
#19  
I've said this before many times. I don't think it's a good idea to channel power for servos on these big robots through the EZB. Using the EZB as a power conduit will only rob the EZB of voltage when the servos start sucking current. Yes I know Voltage and current are two different things but it's a fact of nature that one depends on the other. On these bigger servos that are moving heavy loads you should route your power around the EZB. A alternate power supply is even a better idea but I've found this really unnecessary unless your PS is underrated for your amp load. By simply running power directly from the PS to the servo (or it's properly sized step down regulator) you will avoid EZB brown outs.

Also throw out the in line linear voltage regulators and get some Switching BEC's.

Castle Creations CC Bec 10A 6S Switching Regulator


User-inserted image


Good Luck. ;)
PRO
USA
#20  
@richard thanks I'm here now. Just in time!

@dave I originally for my testing purposes had this set up with separate power going to these servos. This is the first time I have the system set up all thru the EZB. Since the d ports are longer regulated, I let the EZB power to be the same as the big servos at 7.4v then I have bec's on the 2 micro servos for the eyes. The jaw servo gets its regulated power from the audio servo control board. I think the length and gauge of wires might be my a problem too. Worst case I'll just set up the big servos on their own direct power from my line in and avoid putting that thru the EZB. I find it hard to believe with all the digital ports and the EZ servos rated higher than standard servos (6v I think) that mine would brown out with just two servos?!?
#21  
My EZB browned out with only one 7.4v HS-7950th servo attached. It's tested to pull 4.8 amps in a stall/lock on situation. It was also mounted inside a servo City gear box (see below) and lifting about 3 lbs at the end of a 12 inch channel (the B9 claw and wrist sold by a B9 club vendor. You know how heavy that set up is). When I rerouted the power directly to the PS I had no issues. Wire size is very important and perhaps larger wire would help to allow current to pass to and from the EZB easier. However my theory of routing power through the EZB is when the current reaches it, it still has to pass through several connectors, another fuse, pins and board traces that are smaller then your enlarged wire before it exits and moves on the motor. Sounds like a bottle neck to me.

Here's the one servo mounted in the gearbox that browned out my EZB under load:

User-inserted image


Electricity is very strange and will do strange things. My experience as a power distribution lineman who has been working on and repairing low voltage and overloading problems on a large urban power grid for almost 35 years now show me that overloaded wire can handle a lot of current. The voltage will drop some but usually it will heat up or melt. Under constant load the loading device will just keep pulling the current is needs till the conductor fails. More powerful devices like DC motors will rob current away from more sensitive devices like electronics if they are on the same circuit. In situations where there are low voltage problems on our power grid our engineers usually have us install larger transformers closer to the load. However sometimes we'll also upgrade the wire sizes if they are obviously to small.

Now startup load is a whole norther animal. This is probably what is causing the EZB brown outs. When the servo starts up the current demand spikes. If your feeding servo through the EZB the PS cant deliver enough current quick enough to keep the it up and running. This happens on our urban power grid also. When big industrial customers start turning on their motors and other current hungry devices the voltage on our distribution lines start to drop. We place large capacitors in line that switch on at times we know this will be a problem (like in the morning of a work day) to keep the voltage from sagging. We don't usually change the conductor size (unless it's a huge current draw like a fire pump), we just add ampacity. Our little servo, sensor and EZB circuits are much the same as a big city power grid, just smaller. :)

Sorry if I bored anyone. I thought this may be useful to this issue. :)
#22  
@Dave, not boring at all. That actually helps a lot in explaining this situation.


Particularly the bit about the high draw devices "robbing" from the low draw devices.

Alan
PRO
USA
#23  
Excellent info Dave. I just tried a larger gauge wire and seems to be working better, but now I think just for safely purposes I'm gonna reroute power to the large big bad boys. You right there are lots of bottle necks along the way as I have to be able to dismantle the pieces so there are connectors here and there, lots of servo pins for the lack of a better word. It should not add too much more wiring to the already tight neck and head. I'll let you know how it goes.

Thanks again and NEVER boring!
#24  
Hey guys ,popping in for a moment, I was going to wait till next week , but I will drop the bomb now. Obviously I have been a supporter of "external power for high torque servos" for obvious reasons. I will soon have a version of my inline regulators that use external power , a ground reference and a signal pass through. This way there is still adjustable voltage but from a external source.

Castle BEC are great , but the cost is also very high as well, that being said mine are value focused for the budget minded hobbiest, student or child.
#25  
You can use this to bypass the ezb for power... Cheaper than @Dave's option (if you have a adequate power supply and/or battery)... It supports up to 8 servos...Servo power board


@Josh also has a great option too with his 3amp inline variable voltage regulators....
#26  
I'll definitely be getting a handful of Josh's regulators.
Italy
#27  
Hi all, sorry i am a noob at this, it's my first time.

My problem is that my ez-b 4 is disconnecting, i have looked into nearly all the threads here and have upgraded to a lipo battery 2500mah so more than sufficiant power.
The strange thing is that if i open a new project the board connects fine and never cuts off, but when i load the JD project and try to connect it gives me the following:

Attempting connection on 192.168.1.54:23
Connected to 192.168.1.54:23
Reports EZB v4 OS With Comm 1
EZ-B v4 ID: 67-50-0-0-46-255-57-59-54-38-38-38
Setting battery monitor voltage: 7
Setting battery protection: True
Setting i2c rate: 300000
EZ-B voltage is 8.184497646
EZ-B temperature is 24.44489368264605312C
Connected
Comm Err: System.IO.IOException: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at EZ_B.EZB.M3jweGrVXK(Int32 , Byte[] cmdData)
BbytesToExpect: 2

Received: 0 0
Disconnected

Can someone please help me out i am really giving up here it has been 3 days now *stress*
User-inserted image

This is the battery i am using

I am on Windows 10 ent. 64 bit 64 gb Ram no antivirus running and firewall disabled
#28  
It isn't a battery problem. It is an I2C problem.

Check the cable to the JD Eyes and make sure it has a good connection.

Find the JD-No Eyes sample project and try that (or just try a connection with no project loaded).

If any I2C object tries to initialize and can't find the device, the EZ-B will lock up and disconnect.

Alan
PRO
Synthiam
#29  
I'm guessing due to the strange 3rd party battery that you 3D printed a jd and don't have the rgb eyes.

Remove the rgb animator from the project before connecting to the ezb.
Italy
#30  
Hi guys and thanks for your help, i am sorry i opened another thread on this topic but as i said i am really new at this and new to the forum so when it sent me a mail that i had helped another member well i guessed it was the wrong place to post. I had already loaded the no rgb project but still had the same problem.
I think in the mean time i have found out the problem. i have a shorted servo. i disconnected it resetted everything and it seems to move without any problem.

Once again thanks for the help and again sorry for the double thread