Electronic Projects, forums and more.

Go Back   Electronic Circuits Projects Diagrams Free > Electronics Forums > Electronic Projects Design/Ideas/Reviews


Electronic Projects Design/Ideas/Reviews Are you building an electronic project or want to? Maybe you need some assistance? Come and submit your electronic questions here and let our experienced members find a solution.

Reply
 
LinkBack Thread Tools Display Modes
Old 28th May 2006, 04:27 AM   (permalink)
Default Converting A DC motor to ServoMotor

Is it possible to make a DC motor work like a servomotor? Coz im desperate to keep my project under budget. In my place, its hard to find servomotor and the only one i manage to find cost $RM 150.00. But its easier to find a stepper motor tho. Can u control a stepper motor like a servomotor? i just need 90 degree rotation with one pulse instead of sending multiple pulses to archive the same thing in stepper motor. Or do u have better suggestion?
__________________
HoLoBean:cool:
holobean is offline  
Old 28th May 2006, 04:54 AM   (permalink)
Default RC Servo

Get an RC (radio-controlled) servo motor- the kind used on model cars and airplanes from a hobbyshop. It's $15 and up per motor if you do that. They are by far the cheapest servo motors. Everything is already made and put together and it is sold to a relatively large consumer base which drives prices down.

All other servo motors are pretty much industrial/research. What they do is go out and buy each individual part and put it together exactly how they need it. They basically change a DC motor to a servo motor (as you suggest) but this won't say you money...at ALL. This is absolutely the most expensive way to go about it.

You can change a DC motor as a servo motor, but that is the most expensive way to go. You need to get a motor, gearbox, and feedback device (like an encoder). And you have to get them such that they all mate together properly...and to do that you will probably have to buy them brand new from the motor manufacturer = VERY EXPENSIVE.

To make control a stepper motor like a servo motor, you need to add a feedback device and build your own electronics that will monitor the stepper's position (you would be basically doing the same thing as above, building a servo motor from scratch out of a stepper motor).

Stepper motors don't have feedback. This means that if something is blocking the motor shaft, and you energize the stepper motor windings in a sequence to move it 90 degrees, it won't and you will have no way of knowing if it really did or not without feedback.

A stepper motor can only be told how far to go, not where to go (like a servo motor). So if you want to control it using a position signal like a servo motor, you are going to have to do what servo motors do to accomplish this- add on a control circuit.

Last edited by dknguyen; 28th May 2006 at 05:13 AM.
dknguyen is offline  
Old 28th May 2006, 07:58 PM   (permalink)
Default

a servo is just a dc motor with feedback to allow precise control of motor positioning. with a microcontroller and quadrature encoder, you can construct one. there are several projects out there. google is your friend

A hobby servo will have poor resolution though the digital ones will be a little better. If that's good enough, for your application then you are in luck.
philba is offline  
Old 28th May 2006, 08:33 PM   (permalink)
Default

Quote:
Originally Posted by philba
a servo is just a dc motor with feedback to allow precise control of motor positioning. with a microcontroller and quadrature encoder, you can construct one. there are several projects out there. google is your friend
A quadrature encoder won't give you absolute positioning, as such it's NOT really suitable for a servo.

Quote:

A hobby servo will have poor resolution though the digital ones will be a little better. If that's good enough, for your application then you are in luck.
It's more than enough for most uses, and far better than many alternatives.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 28th May 2006, 09:04 PM   (permalink)
Default

You can use an encoder for absolute positioning, but it has to be relative to a reference point. THe encoder won't output a position as much as it outputs how far something has moved. YOu then need to keep track of how far it has moved relative to a reference point.

*Due to unclear wording pointed out in Nigel's next post, this 1st Paragraph has been corrected to:*
You can use an encoder to keep track of a reference point for absolute positioning. The encoder won't output a position as much as it outputs the direction and distance that the motor has rotated. You then need to keep track of how far it has moved relative to a reference point.

Plus if you use an encoder the degree of rotation possible by your servo can be multiple rotations. It is no longer limited by how many times the potentiometer can rotate and is only limited by how much the wiring can twist...but who needs an elbow that can rotate 1020 degrees?

Last edited by dknguyen; 28th May 2006 at 10:26 PM.
dknguyen is offline  
Old 28th May 2006, 09:13 PM   (permalink)
Default

Quote:
Originally Posted by dknguyen
You can use an encoder for absolute positioning, but it has to be relative to a reference point. THe encoder won't output a position as much as it outputs how far something has moved. YOu then need to keep track of how far it has moved relative to a reference point.
That makes no sense! - you first say "you can use an encoder for absolute positioning", which isn't true (for normal encoders). You then say the complete opposite "but it has to be relative to a reference point", which is true - and is relative positioning, not absolute at all.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 28th May 2006, 09:15 PM   (permalink)
Default

Wordy mix-up. If you use an quadrature encoder to keep track of how far you have moved relative to a starting point (reference point) via uC you can use it to achieve absolute positioning feedback.

It is the same as knowing where you are standing and then counting the number of steps you have taken in a certain direction and then using that to figure out your new position. You don't know what your new position is, but what you do know is where you started and the direction/distance that you moved in. You then can use this to figure out your new position.

Last edited by dknguyen; 28th May 2006 at 09:24 PM.
dknguyen is offline  
Old 28th May 2006, 09:33 PM   (permalink)
Default

Quote:
Originally Posted by dknguyen
Wordy mix-up. If you use an quadrature encoder to keep track of how far you have moved relative to a starting point (reference point) via uC you can use it to achieve absolute positioning feedback.

It is the same as knowing where you are standing and then counting the number of steps you have taken in a certain direction and then using that to figure out your new position. You don't know what your new position is, but what you do know is where you started and the direction/distance that you moved in. You then can use this to figure out your new position.
That's still relative positioning, NOT absolute, and completely useless for a servo.

To use your own analogy?, I throw you in the back of a car, spin you round, drive you 492.5 miles in a random direction and let you out - you then take four steps forward in the direction I left you facing - do you know EXACTLY where you are any more?. You're just four steps from where I dropped you, in the direction I pointed you - that's a RELATIVE position, and you don't have the slightest clue where you might be.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 28th May 2006, 09:41 PM   (permalink)
Default Digital

Referencing movement relative to a reference point allows the same thing as absolute positoning. Ask yourself, what is he really looking for? Absolute positioning? Relative positioning? Or does he just want his motor to move to where he wants it to move? Different methods, same (oftentimes better) results. Though the quad encoder may be a relative positioning device, it can be used for the purpose of absolute positioning. What the method is called has no bearing on the fact that it accomplishes the same thing and in many cases the quad encoder has advantages over the absolute encoder.

As I said, you can use a quadrature encoder to know the motor's absolute position by using it to keep track of how much the motor has rotated from a reference point (such as the position the motor was at when the system was first powered up). For example, you could have an end switch that the motor might hit if it reached its limit of rotation. This switch could be used so that the system can self-calibrate itself to a known position to be used as a reference point upon startup. The point being that you can use the information from a quadrature encode to calculate the absolute position of the motor = servo motor.

Quadrature encoders are digital devices so that if you design the system properly so that the uC does not miss any pulses (ie. with differential signaling and sufficiently fast circuitry) you can use them for very accurate positioning feedback. There are no offset or drift errors due to the digital nature.

Quadrature encoders can also have much higher resolutions than absolute encoders (which are also oftentimes not digital and as result are also subjected to drift) so you can also get very accurate and stable positioning. It is far easier and cheaper to build a quadrature encoder in very small increments that is repetitive all around than it is than to build a digital absolute encoder of the same tiny increments which is unique at every point. Far from useless.

But, most of this is beyond the scope of the original question (the stability and precision requirements that is).

Last edited by dknguyen; 28th May 2006 at 10:12 PM.
dknguyen is offline  
Old 28th May 2006, 10:13 PM   (permalink)
Default

I'm sorry nigel, you are playing with words. you could build an absolute position scheme but it would be complex, expensive and, as dkn says, have resolution drawbacks. using quad feedback in conjunction with a starting point can give you absolute positioning. how do you think CNC stuff works? Yes, it is "relative" but from a starting point. With an extra line for a reference sensor, you can gain absolute positioning at a very reasonable cost.
philba is offline  
Old 28th May 2006, 10:28 PM   (permalink)
Default

Quote:
Originally Posted by philba
I'm sorry nigel, you are playing with words. you could build an absolute position scheme but it would be complex, expensive and, as dkn says, have resolution drawbacks. using quad feedback in conjunction with a starting point can give you absolute positioning. how do you think CNC stuff works? Yes, it is "relative" but from a starting point. With an extra line for a reference sensor, you can gain absolute positioning at a very reasonable cost.
"in conjunction with a starting point" is by definition relative positioning, there's no 'playing with words' involved - it's either relative or absolute, you can't say a relative postion is absolute because you specify a starting point.

The CNC machine you mention uses relative positioning, and will presumably move itself to a zero point before it can move anywhere else - so it moves 'relative' to it's zero point. Incidently, floppy disk drives used this same technique.

For examples of positioning:

Relative - move 25 degrees left from where you are now.

Absolute - move 25 degrees east of south.

The CNC machine can do either (to some extent), but to simulate an absolute position it will have to move to it's reference point first, or be 100% certain of where it currently is, regardless of power cuts or anything else.

However, likewise, an absolute positioning system like a servo will need to maintain a record of where it is, in order to move relative to it's current position - you can't tell it to go 25 degrees left, you need to work out where it is now, add the 25 degrees left to it, then tell it to go to the resulting position.

Really we need to know what the application is, and what it requires? - presumably as a servo was originally specified?, absolute positioning is required?.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 28th May 2006, 10:34 PM   (permalink)
Default

then we completely disagree. no point arguing it because neither is going to be convinced.

except on the point of the need to know the application requirements...
philba is offline  
Old 28th May 2006, 10:36 PM   (permalink)
Default

Absolute Encoder vs Quad Encoder w/ Reference is similar to Brushed Motor (mechanical commutation) vs Brushless Motor (electrical commutation).

The first of each pair puts more complexity into the mechanical aspect thus simplifying the electronics, while the second of each pair puts more complexity into the electronics thereby simplifying the mechanics.

The only times that I can think of where you want an absolute encoder over quad encoder with reference is for extremely noisy systems where sound design techniques cannot compensate for the possibility of missing pulse counts or for lossy systems with power supplies that may have to restart too often to calibrate for the reference position upon startup. FInally the last situation is if you cannot deal with the additional overhead processing required for the quad encoder system and want simpler electronics (or coding).

Back to the original question: Look for radio-controlled (RC) servo motors used in model airplanes and cars.

Last edited by dknguyen; 28th May 2006 at 10:44 PM.
dknguyen is offline  
Old 29th May 2006, 03:59 AM   (permalink)
Default

Quote:
Originally Posted by holobean
Is it possible to make a DC motor work like a servomotor? Coz im desperate to keep my project under budget. In my place, its hard to find servomotor and the only one i manage to find cost $RM 150.00. But its easier to find a stepper motor tho. Can u control a stepper motor like a servomotor? i just need 90 degree rotation with one pulse instead of sending multiple pulses to archive the same thing in stepper motor. Or do u have better suggestion?
Is 90 degree rotation ALL you need? Or a sequence of 90 degrees?
If the former, you don't have to use a motor at all. A simple solenoid and crank will do that.
It does make a difference to the replies if you spend some time explaining just what you are trying to do. You got a lot of unwarranted trivial exchange about wording I bet you did not bargain for.
Klaus
Klaus is offline  
Old 29th May 2006, 05:36 PM   (permalink)
Default



anyway this is what im planing to do, the gear part is up to my mechanical groupmate to decide.... but if u have ideas on how i can make my life easier and the mechanical job easier.. plz do suggest.. bare with me the picture.. im not so artistic.. thanks for taking ur time to help me out
__________________
HoLoBean:cool:
holobean is offline  
Reply

Bookmarks

Thread Tools
Display Modes





All times are GMT. The time now is 06:35 AM.


Electronic Circuits  |  Learning Electronics
Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.

eXTReMe Tracker