Converting a large DC motor to servo

I'm working on a project that requires large motors, such as a dc motor. I've made a model of the mechanical side of the project, but it's quite heavy, even for a scale model. What I need is to be able to control a large DC motor as if it were a 180 degree rotation servo. I figure, servos are just small dc motors with the control circuits, could I just hook up a similar control circuit to the large dc motor? How do I keep it at 180 degree rotation? Any help would be appreciated.

Hey friend, If it's a big DC motor (dimensions appreciated), I think you could use an encoder with it. This is just an lil' piece of circuit mounted on the shaft of your motor, where it will measure the angles the shaft moved, and will translate it to code. Maybe this site can help you: http://www.truetex.com/servomod.htm Cheers

For large DIY servos you probably need a pot on the driven shaft to report the shaft position, a motor driver setup, and a controller to supply the PWM to the motor driver. Below are some DIY servo setups. Several different approaches.

http://www.youtube.com/watch?v=VCbM8qvdXxU

http://www.youtube.com/watch?v=Rpqsvw2iTIo

http://www.youtube.com/watch?v=FoblOUokfJY

Thanks guys. How would I go about making the circuit though? Is there a place where I can buy said circuit? And after that, what would I use to limit the rotation? I know servos have a small notch on a gear that stops them, I just don't know how to translate all this to a bigger motor. What I want to do is make a large robotic arm that mimics my arm, using a suit equipped with accelerometers. The accelerometers measure the x,y, and z positions of my arm, and translate that to large motors on the big arm.

I need a specific circuit to hook up to the motor, and how I would control that with an arduino. Is it feasible to just take the circuit straight out of a servo, and hook it up to a dc motor? I doubt it, but no harm in asking. if not, I need to know how I hook up a similar circuit to a dc motor, and then control that like a servo with the arduino.

Also, another question: Would gyroscopes be better than accelerometers? I just need to sense the position of my arm on the x, y, and z axis, and from what i've seen so far, accelerometers are the way to go. I just want to make sure. Thanks guys!

you need an encoder, forget accelerometers, they give wild readings during motion.

You need an H-bridge motor driver, absolute encoder (pot) and microcontroller, PID loop to do the feedback. A gear motor is probably most sensible for 180deg sweep.

I meant an accelerometer to control the DC motor when I get it working. Is there a schematic somewhere that shows how to connect all of this, alogn with maybe an example code? I'm sorry, I'm a bit of a noob at this, but I'm working on it.

I'd put pots at the arm joints to measure the angle of bend so the angle can be measured. Not sure how gyroscopes and accelerometers would be used. You probably could use the internals of a cheap servo to drive an H-bridge for the motor.

http://www.youtube.com/watch?v=-XChu20hTxU

You haven't said how much torque you need. Some off-the-shelf servos have very high torque.

Also you haven't said if your motor has reduction gearing. I think it would be difficult to control a direct drive motor to operate over just 180 degrees.

...R

Apart from the position control, the difference between a servo and an ordinary dc motor, is the gearing. Although you see you servo only rotating about 180 degrees, the little motor inside has actually spun around a lot more than that.

Not sure how gyroscopes and accelerometers would be used.

That's what the quaternions are for....

Well the thing is, i haven't actually bought the motor yet, because I wanted to know if it was feasible or not. The accelerometers would be placed on the different sections of my arm to measure the different x, y, and z movements of my arms. I just need to know if it is possible to control a dc motor like a servo, and what kind I would want to get.

Hi, can I ask what experience you have programming and electronic construction and theory.
This will help us to give you the level of help you need.
You seem to know what you want but you need design and assembly input.
For example as mentioned your servo will need feedback, small servos use a potentiometer for position feedback, so you will have to fit one to the output shaft to measure angle.
Also the arduino cannot drive a motor directly, you will need a motor controller.

Hope to help …Tom… :slight_smile:

WireJunky: Well the thing is, i haven't actually bought the motor yet, because I wanted to know if it was feasible or not. The accelerometers would be placed on the different sections of my arm to measure the different x, y, and z movements of my arms. I just need to know if it is possible to control a dc motor like a servo, and what kind I would want to get.

Have you read all the replies you have received?

Don't you think it would help your cause if you responded to the various issues and questions - or explained why you aren't able to or don't understand them?

...R

Hi, can I ask what experience you have programming and electronic construction and theory. This will help us to give you the level of help you need. You seem to know what you want but you need design and assembly input. For example as mentioned your servo will need feedback, small servos use a potentiometer for position feedback, so you will have to fit one to the output shaft to measure angle. Also the arduino cannot drive a motor directly, you will need a motor controller.

I have pretty limited electronics experience, but I do know my way around. I don't know anything more than how to code in Arduino, but I've done a few simple projects. I have a good bit of ghetto mechanical know-how. I'm very limited to the funds I have available, which isn't much That's why I come on here for help. In the simplest way I can put it, a schematic of the kind of set-up I'm looking for would be nice, maybe and example code. I'm not quite grasping the setup of what i need, for example, how to hook up a potentiometer to a dc motor, send that to a motor controller, and control it with arduino. If I can get a clear way of doing that, I'm golden.

Don't you think it would help your cause if you responded to the various issues and questions - or explained why you aren't able to or don't understand them?

I'm reading all of the replies, watching the videos over and over again, but I'm not grasping the technology behind what the people are doing. I see it happening, but I don't see the circuit or code behind them. That's what I'm looking for.

One other small thing, I need to know if a gyroscope or accelerometer would be better. I want to measure the x, y, and z angles of my arm, to translate to the mechanical arm. I'm not quite sure of the difference between a gyro and an accelerometer, but every similar project has used an accelerometer. I've even tried comparing the two using apps on the iphone, but they don't seem that different. Any advice?

WireJunky:

Don't you think it would help your cause if you responded to the various issues and questions - or explained why you aren't able to or don't understand them?

I'm reading all of the replies, watching the videos over and over again, but I'm not grasping the technology behind what the people are doing. I see it happening, but I don't see the circuit or code behind them. That's what I'm looking for.

It seems as if you are sitting back waiting for an answer here. It's not going to happen. You need to respond to the forum, not just read it.

...R

An accelerometer measures acceleration and a gyro sensor measures rotation.

It seems as if you are sitting back waiting for an answer here. It's not going to happen. You need to respond to the forum, not just read it.

I'm actually trying here. I'm trying to understand this, I've been looking for an answer for a couple weeks now. I'm not just waiting for it to fly to me on a golden platter. And in case you didn't notice, I am actually replying.

An accelerometer measures acceleration and a gyro sensor measures rotation.

So if I wanted to, say, set a servo to the position my arm is at on the y axis. Would a gyroscope be better?

A gyro is a lot better, but they drift, so for the short term it would work but there would be no long-term control. So people use encoders.

Are you referring to using a gyro for measuring my arm's position? And what do you mean by "they drift"?