Go Down

Topic: Servo Controller (Read 3019 times) previous topic - next topic

LouisianaTech

We are currently using arduino to control 2 3v DC motors.
We want to convert the DC motors to Servo motors but we want to keep the same motors as the ones we have. Meaning we do not want to buy servos... we want to convert our own motors to servos.
can someone guide me on how to do this?
thank you in advance
J

davekw7x

#1
Jan 18, 2011, 07:45 pm Last Edit: Jan 18, 2011, 07:47 pm by davekw7x Reason: 1
A servo motor is a motor with a positional feedback sensor that creates a signal that can be used to control the device.  RC servo motors actually contain the motor, the feedback sensor and a certain amount of electronics that allows a "simple" input signal (typically PPM) to control the position of some actuator arm or shaft.

A couple of references:

The Difference Between
Stepper Motors, Servos, and RC Servos


Servomechanisms - Wikipedia



Regards,

Dave

LouisianaTech

Thanks Dave
i know the difference between the two

i just need to know how to convert a DC to servo so i can control it directly from the controller

westfw

Quote
i just need to know how to convert a DC to servo so i can control it directly from the controller

A servo motor usually consists of a motor with geartrain, some sort of positional feedback mechanism (usually a variable resistor) and some circuitry that reads a "desired position" using some interface (sort-of-PWM for common hobby servo) and drives the H-bridge to move the motor in the correct direction until the actual position (as measured by the feedback mechanism) is the same as the desired position.   There are several "open source" servo motor designs out there. (eg: http://www.openservo.com/ )

Now, if you already have an Arduino in your circuit, you can think about using PART of the arduino CPU power to replace the circuitry.  The "desired position interface" can go away entirely (you already have it internally.)  You can gain considerable flexibility in the actual position feedback mechanism (hall effect, linear encoders, optical...)

Unfortunately, the expensive parts are usually the motor itself, the geartrain, and the H-bridge, and you usually end up with more people modifying servo motors to act as general purpose motors than the other way around.

Coding Badly


I believe these folks have graciously published information about building "digital servos"...
http://www.openservo.com/

cr0sh

Quote
Now, if you already have an Arduino in your circuit, you can think about using PART of the arduino CPU power to replace the circuitry.  The "desired position interface" can go away entirely (you already have it internally.)  You can gain considerable flexibility in the actual position feedback mechanism (hall effect, linear encoders, optical...)


For my UGV, I'm essentially currently doing this (well, I have the code, and the motor is installed - I have yet to complete the interface between the two) for the steering mechanism; my DC motor is a 12 volt DC Pittman gearmotor, feedback is a potentiometer.

Currently my software is a simple "window comparator" algorithm; depending on how well it works (or doesn't), I may switch it over to a PID algorithm.

In order to create a servo from a regular DC motor, you either must be able to gear down the output to use a potentiometer, or you need a way to count the turns of the shaft (from the motor or gear) in either direction (using a quadrature encoder, hall sensors, etc).
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

Go Up