Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
Asked — Edited

Turn Dc Gear Motors Into A Servo

Hey guys,

Anyone tried something like this yet? This may be what I need to use for my arm motors.

High Power Servos


Upgrade to ARC Pro

Synthiam ARC Pro is a cool new tool that will help unleash your creativity with programming robots in just seconds!

Interesting. I too have been searching for something to move my arms and give me the strength I want. This seems like a very inexpensive alternative to what I had found. I see using a simple dual H bridge to control forward and reverse. Hmmm

How many H-Bridge's can I control with the EZ-B? Do you hook them to the same port as a servo? (I'm still trying to gather the $ to order my EZ-B)
@ rgordon ,
That depends on the interface for the H bridge from what I have found. The one DJ sells on his site uses only one port i think. I have one in my bot that uses 4 (one each L/R for motor speed and one each L/R for motor polarity). You can also get DC motor controller boards like the Pololu pik (controls 2 motors) from Sparkfun that only uses one port with serial control that could work with a movement script. Hope this helps.

Very interesting post btw....I am definitely going to look into that! I will need some higher power servos for my next project!


@ kkeast,

I will have 4 motors in each arm: shoulder, elbow, wrist, and claw. I guess I could use servos for the wrist and claw but the shoulder and elbow will definitely need some high torque gear motors.

So you are controlling the speed and direction of 2 motors with 4 ports? Is this what you are saying?

I will look into the Pololu pik you mentioned.

@ rgordon ,
Yes, two motors with 4 EZB ports.

Here is an example of my movement script for turning Left


I am not adjusting speed right now, however the board claims it will accept PWM for speed control (which would be using PWM for D19 and D9 in the above example instead of OFF/ON). Now that DJ has the PWM control I might be able to do that...but I did notice there is no script command for setting that....yet (not sure if servo(DX,XX) will work for that?)

Hope this answers your question.


So if I use H-Bridges I'll need (8) ports : (4) for the L & R shoulder DC gear motors and (4) for the L & R elbow DC gear motors.

Then I would need 4 servo ports : (2) for the L & R wrist servos and (2) for L & R claw servos.

(1) port for the neck servo.

(1) port for the waist servo. (I have not purchased this one yet)

Presently I am using two Victor 883 ESC's for controlling the wheelchair motors using a Spektrum DX6 transmitter and BR6000 Bot Rcvr. I want to use the EZ-Board to control my drive system. So will the ESC's need PWM? Will my EZ-Board have enough ports to do what I need to control these as well?

I have not received my EZ-B yet. I'll probably have a ton more questions when I start messing around with it. Thanks for the script example and all your advice. Every little bit helps. That's what I like about this site..everyone is very helpful.

BTW I live in Nelson, Virginia.
@ rgordon ,

I think there are a few of us from the Tri State area on here.... a Mid Atlantic get together has been proposed..which would be a great thing to do at some point!

Answer to your question...Two H Bridges if you also want to control elbow motors as well. The only thing I have found with the motors is that you don't know the motor position without some other sensor device (wheel encoder, hall effect sensor, micro-switch). Motors work great if all you want is remote control but definitely a challenge if you want to do autonomous things. You also get the torque of course! Are you planning on implementing the above solution you presented?

Electronic Speed Controls plug in just like standard servos (so I am told). Check this thread out for more on that. Trick is to find ESCs that do both forward and reverse that meet your motor current requirements. They have them but I tend to go back to the H bridges due to cost.

Electronic Speed Control Thread


In the article above it seems like he is using the servo itself as position and speed control of the DC motor, by tying the servo arm to the motor arm. That way the servo has something to measure speed and position. Interesting.... I may need to experiment this weekend.
To rotate my torso, radar, etc. I've been giving some thought to setting up a DC motor with two relays as an H-Bridge (see image) then controlling the motor with a servo. The servo would have to be placed as if it were trying to rotate the part, but it would actually be pushing against small buttons that would activate the motor. I made this quick 3D drawing. I hope that it makes sense. The blue would all move together. In reality, one would have to mount the buttons on something that was spring loaded so that the servo wouldn't strip its gears if it moved faster than the accompanying motor. Once the part catches up to the servo, it will stop. It is something like power assisted steering.
I know that motor controllers are the right way to go. I bought them for my drive motors, but I cannot afford to do them all that way. Besides, this has the advantage of keeping track of the position.
Maybe this will help you.
User-inserted image

User-inserted image

User-inserted image
Cheaper is always better, and that is a very interesting way to do this. Have you tried it out yet?
@ Danger!

Hmmm.....I like your idea and will consider trying it out.

A couple of years ago I had an idea similar to yours but, I never built it. I am to the point now in my build that it may be a good time to test ideas like these. My version is a little crude but it may also work.

I invite everyone to take a closer look at this and let me know if you think it will work.

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image

User-inserted image
It seems like that would work to me. Our ideas are almost the same, except you use latching relays, and hit the micro switches in short clicks, my system would require the buttons to be held until the servo stops, and the torso catches up to it. (In my picture, the buttons look as though they are mounted on a solid piece. I didn't want to get too technical, but they would have to be on something that swings and absorbs the difference in speed between the servo and the actual motor. Once the servo stops, springs would bring it back to center relative to the torso, as the torso aligns itself with the servo).
I am not sure if I will actually do it that way or not. It is just something that I was thinking about. My fear is that in practice, the momentum of such a heavy torso will overshoot the servo and there will be a lot of the DC motor jumping back and forth between forward and reverse until it lines up. The rotation sensor that I linked to in my last post might make more sense. It would be more difficult to program.
I would like to take advantage of EZ-B's simple servo controls, but I have to weigh it against making the hardware more complex, and the risk of something breaking down. I guess that I will have to experiment a little more. This whole project has been a few years of trial and error so far. If it were easy though, there wouldn't be much of a point in doing it. I would just take up Shuffleboard instead.
Yeah I had thought that jumping/hunting might be a problem with mine. That was why I chose the micro switch method. So when it hit the stop switch and unlatched the circuit there was a small amount of space/slop it could coast before it hit the other switch.

Then I thought about using a motor that uses a worm gear. I think that worm gear motors don't coast but stop dead in their tracks. That may be the answer to both our designs.

Any ideas on what RPM to use so it doesn't jerk so hard when it stops?

Oh well looks like its time to test it out.:)
Thanks for getting me motivated on this again.
I have a windshield wiper motor for mine. It has a worm gear in it. I have tested them with relays. The H-Bridge does stop them instantly.
As far as the speed, Bob May used to fling that torso around like it was a top. I'd love to be able to re-create that. Prudence tells me that would be a bad idea. I'm thinking along the lines of him turning 180 degrees in about three seconds.
Speaking of 180 degrees. I would like my torso to make a full rotation. A nice feature of the original robot was that he would turn his body around and drive off backwards, so he would need 180 in either direction. This could easily be done by mounting the servo on top of the horn of another one. Either, or both could turn.
I will start experimenting on that. Right now, I am working on the mechanism to bend his waist forward and back. Unfortunately, I work a lot of hours and do not have much time to spend on it.
i seriously need to get some H-Bridges and start experimenting.

Will you need slip rings for the waist? There are some home-made slip ring "how to's" out there I just can't rmember the links.
How are you planning to make him bend at the waist? Linear actuator, cam mechinisim?

I too find it hard to find the time to work on Magnus.
i been with with making my own home made servos
best way is to take futaba 3003 ,AND TAKE IT APART and remove the motor and feedback pot 5 k pot
its the cheapest,and remove the h-bridge and add you own depending on motor and stall curent
made well over 100 and some at 50 amps to drive wheelchair motors
ebat has them for about, $3.50 and then add a gear box if needed the pot goes on the output shaft going to item you want to control
i have a circuit of the FUTABA S3003 can buy a servo board and add your own feedback pot,board is $20 plus shipping caled open servo project,but about the same as a S3003 AT LESS THEN $4 icluding shipping
i use that design in all my robot toy projects like RAD 2.0,THE ROVER,and many more,all the cheap robot toys only use a motor and no feedback,there are many other feedback types,opto encoder high cost,magnetic kinda high cost, like use in the NEATO motors,then EMF feedback off the motor (not really accurate) ,but i think you are looking at a low cost design used in servos
i have lots and lots of info on this
@robotmaker - that is what I am looking for, for sure. Could you maybe do some pics and step by step? I can do the work if someone points me in the right direction, but I am not that tech savvy. THhanks.
ok can do that pretty easy.i have also design h- bridges also
will need info on motors like model # or the load you want to lift ,carry or move
rgordon that is a good link seen it many times ,it same idea i use in many of my projects very simple and easy and cheap:D
high power servo's
here is the schematic of the FUTABA S3003 servo ITS LIKE MY BIBLE
futaba s3003 schematic

the h-bridge it rated at 1 amp and can put 2 in parallel to get 2 amps
now on interfacing to a h-bridge some need simple digital circuit ,some with ccw and cw like in schematic dont need anything

i made my own circuit board for digital circuit and made boards for my h-bridge design 60 amps
will post them
files in bmp and sch,i mostly send my circuit out to be made
making boards at home is lot of trouble and there is a few days to make them
if only one board with many parts or few,i make with protoboard called vector board with holes .100 apart using buss wire,done it with one chip and 20 chips doesnt matter

in my design i do have servo to pwm circuit not really good,no feedback
h-bridge design is in 2 circuits h-bridge and pwm circuit
I would like for you to take a look at my idea for a servo mimic that I came up with. I t is different than the link I posted. It is listed later on in the thread on second page. I put up an idea for a servo mimic with several drawings. Wanted you thoughts on my idea.

Also thanks for the H-Bridge schematic. I would like to try that also.
RGORDON relays are the worst idea for controlling that old school design before h-bridge ,relay have a chatter problem,contacts wear out,plus draw alot of current
now limit switches can be used ,but not neededalmost because using a feedback pot on turntable
from the feedback position you can set the limits in the micro code

Thanks for your input. I don't have any experience yet with micro-controllers and programming and this was just way to save money instead of buying expensive high torque servos. I still may try it just to see if it works.

I appreciate you looking at it.
taking FUTABA S3003 servo apart and adding h-bridge wont need any programming
code i am talking about is scripts in EZB board ,and me or anyone else can help with that
@rgordon and others
i designed h-bridge design and pcb boards all info in zip file,made this design awhile back and sold many boards if anyone needs to buy the boards let me know,more that buy the boards the lower the cost to have it made ,boards are in 2 parts ,main reason is that the board is universal
logic circuit on one board and pwm h-bridge on another rated at 60 amp cont,but you can easy remove mosfets to save money,remove 4 of the 8 mosfets give you 30 amps
i dont get money from this and dont need it
files in bmp and sch and parts list
To answer your question about bending the waist.
I am going to have to take some pictures this weekend and start my own thread in Project Showcase. I made it pretty cheaply, and if you look at the pictures it is easy to figure out, but you will see that it is very hard to describe without looking at it. *confused*
rgordon Danger! is correct
yes bending the waist is very easy done it on a few robots ,not hard or high cost ,with already made parts or easy to make parts,mostly depend on the weight you need to bend and that would the torque needed to bend and return,
bending is very easy but returning needs alot more torque

on the h-boards i am selling adding a special stall and what i call under stall (i guess it can have a better name)
stall is easy its when your robot bumps into something or a gear gets jammed and you could burn out the motor or h-bridge

now on under stall.it when your robot goes on to a carpet or some thing and motor keeps spinning and does move there is a way to detect that
both conditions you can have to shut down the motor or go in reverse or turn off the robot
as you can see i love designing circuits 20 hours a day ,and sometimes think about when i am sleeping and passing it free to others
If you are still interested in how I am making my robot bend at the waist, I have pictures
It is all cheap hardware.
my RAD 4.0 will have bending at the waist ,using legs like on a person and using strong servo's ,has more then a 40 lb lift
User-inserted image

if you have a bigger robot,look at windshield motors very high torque
and i use a h bridge connected to a FUTABA S3003 BOARD ,i use this for my main robot arms to each lift near 50 lbs may be more,very high servo's
@ Rgordon: know these high-torque servos and low price (30kg: 72 pounds), I filisofia to find a powerful yet inexpensive servo I found these, now I have one mounted on the head of my robot RSP (soon I'll upload the photos) his strength is great! watch your fingers, you can attach a machacarlos.y if the servo pinion gear ring with a large and well make a speed reducer would gain much strength.
If you have occasion to balance the center of gravity of the robot arm with the axis of the servo (it may be impossible at times), but at least put some weight that is more useful patra balanced, this helps to reduce torque servo, here are some ideas that I implemented in my project, I hope some will be useful.

Big servo
Thanks! Wow, that's a good price. Strong too! 28.6 lb.-in. I may have to have some of these.
i buy alot from hobbyking,does take a very long time to get to usa *stress*
Thanks for the pictures of the waist mechanism. It gave me some ideas:)

I like your RAD 4.0 robot. He's cool! I would like to use this kind of setup for my robot arm. Would you be willing to sell me a h-bridge rated for 30 amps connected to a FUTABA S3003 BOARD so I can control my dc gear motor like a servo? I would like to test one first then if it works out I would buy more from you.:D
I mean do you have an H-Bridge already connected to a FUTABA S3003 Board that I could buy that is ready to hook up to a motor?
Also, does it have to be a FUTABA S3003 or can any servo work?
most use t he futaba S3003 because it has schematic for it and pins easy to connect
mine are in robots
I'm.going.to come back.and read this after I've had sleep. I have the wrist motors and claws and maybe a shoulder that runs off 3 to 6v motors I need to interface with ezb.
User-inserted image

User-inserted image
they will work perfect with FUTABA 3003 servo,and istead of the feedback pot can use two 2.6 k or 2.4 k resistors in series and use the center or use a trim pot and adjust the pulse width,in my design looking to use a servo motor
way you asdust it is set it for 1.5ms and adujst pot till motors dont move,mostly near center value of pot witch is 2.5 k ,same with 2 resistors 5.2k divided by 2 = 2.6k or using 2.4 k 's
mostle need to stay near 5k value when selecting two same resistors ,another name its called is 'dead center"