go_away

Author Topic: Servos VS DC geared motors  (Read 2170 times)

0 Members and 1 Guest are viewing this topic.

Offline drinuTopic starter

  • Full Member
  • ***
  • Posts: 61
  • Helpful? 1
Servos VS DC geared motors
« on: February 17, 2013, 08:59:13 AM »
Hi all,

I am planning to build a robotic arm using DC geared motors instead of servos. This choice was made since DC motors can rotate 360 degrees and are easier to program.
Are there more disadvantages when using DC geared motors? if yes, what are they? and what are the advantages of using them on servos?

Any help is appreciated.

Thanks in advance.

Offline waltr

  • Supreme Robot
  • *****
  • Posts: 1,938
  • Helpful? 98
Re: Servos VS DC geared motors
« Reply #1 on: February 17, 2013, 09:13:58 AM »
Servos have an intrinsic position sensing and feed back built in. For example the pulse width 'sets' the servo's position.
To use a DC gear motor you need to add position sensing and feed back to the controller. If you wish to command the robot arm to move 20 then the controller needs to know where the arm is currently positioned and how long to turn on the motor and in which direction to move to the new position. Also, an acceleration and deceleration what likely be needed when starting and stopping the motor.

DC gear motors can be a good choice for the reasons you stated and can be available with higher Torque at a reasonable price.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: Servos VS DC geared motors
« Reply #2 on: February 17, 2013, 11:14:22 PM »
Quote
I am planning to build a robotic arm using DC geared motors instead of servos. This choice was made since DC motors can rotate 360 degrees and are easier to program.

A "servo" is a closed loop motor. It contains a motor, an encoder, and controller logic. There is no rule that says servos only can rotate a certain number of degrees, or even only a certain number of rotations. Typical industrial servos have high resolution 360-degree encoders, and can run for as long as you want in whatever direction you want with high precision.
If by "servo" you mean a $20 hobby servo, then I understand the problem -- those use a cheap potentiometer for feedback, and typically don't rotate more than over a 180 degree arc for that reason. (300 degree arc if you use a Dynamixel AX-12 or Herkulex DRS-0101)

Now, if you need full rotation, and still need good position sensing, you can use a higher-quality servo. For example, the Dynamixel MX series uses absolute position encoders, splitting the 360 degree rotation into 4,000 different positions, so it has a position sensing accuracy of better than 0.1 degrees. Similar performance is often had on industrial control servos, too.

Another option, if you don't need to sense "where you are" but only need the ability to "go somewhere" is to use a stepper motor. A stepper motor does not use a sensor; instead it assumes that it will always get where it wants to go, and the controller "counts" how many steps it's taken in each direction. The good news is that steppers are pretty cheap compared to full servo systems. The bad news is that they do need calibration on start-up (which can be done with limit switches or whatnot.)
 The other bad news is that they are generally not high torque.

That being said: A DC gearmotor with a relative (quadrature) encoder on it can be better than a stepper motor, but less good than a real servo, because it still needs some "zero point" to compare to if you want to know where you are, not just where you're going.

Offline newInRobotics

  • Supreme Robot
  • *****
  • Posts: 1,015
  • Helpful? 48
  • N.I.R.
Re: Servos VS DC geared motors
« Reply #3 on: February 19, 2013, 11:11:43 AM »
This choice was made since DC motors can rotate 360 degrees and are easier to program.
As mentioned above, there are many different 360 servos, just Google them :) As for ease to program - servos probably are the easiest actuators to use programming-wise, as they only need PWM input, all the rest is worked out inside the servo. To position control plain geared DC motor You need to build/buy external feedback systems (a.k.a. encoders - as mentioned in previous posts) and program microcontroller to understand them.

Are there more disadvantages when using DC geared motors?
Main disadvantage of DC motor for positional control is need for external feedback system. Advantage of DC motor is power/ and power/size. Also, for absolute positional tracking one can use magnetic encoder (as opposed to binary encoder), which would tell position of joint even after power-down/reset.

and what are the advantages of using them on servos?
They are easy to control, You don't need any extra hardware to position control them. Disadvantages: they offer less power than same size/price geared DC motors. Analog servos tend to jitter under load due to low position update rate (50Hz). You cannot control angular velocity of a servo as internal electronics decide for You what angular velocity should be depending on next angular position.

As jwatte mentioned, take a look at stepper motors, they don't need feedback system to maintain angular position. Although using it to drive joint directly might not be the bast way around it, investigate worm and spur gear setup.
"Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music." - Kristian W

Offline mstacho

  • Supreme Robot
  • *****
  • Posts: 363
  • Helpful? 10
Re: Servos VS DC geared motors
« Reply #4 on: February 19, 2013, 01:46:06 PM »
I'll also mention, as a major benefit to DC gear motors, you have direct control over the PWM signal that you are giving them, and therefore you can control the torque.  This might be relevant to you (it is to me in my projects, where I need to be able to control the motor's torque in order to properly apply a desired amount of force from a robot hand) or it might be a major pain (if you REALLY don't care and just want the arm to move, your control loops have to be properly tuned)

MIKE
Current project: tactile sensing systems for multifingered robot hands

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: Servos VS DC geared motors
« Reply #5 on: February 20, 2013, 11:23:58 AM »
Quote
servos probably are the easiest actuators to use programming-wise, as they only need PWM input

When you say "servo" here, I presume you mean "cheap RC hobby servo"? Because most servos used for non-hobby purposes use RS-485 or CAN or similar digital control busses.

Offline newInRobotics

  • Supreme Robot
  • *****
  • Posts: 1,015
  • Helpful? 48
  • N.I.R.
Re: Servos VS DC geared motors
« Reply #6 on: February 20, 2013, 11:49:49 AM »
When you say "servo" here, I presume you mean "cheap RC hobby servo"? Because most servos used for non-hobby purposes use RS-485 or CAN or similar digital control busses.
I think we can all agree that servo in context of this thread stands for hobby servo ;)
"Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music." - Kristian W

Offline drinuTopic starter

  • Full Member
  • ***
  • Posts: 61
  • Helpful? 1
Re: Servos VS DC geared motors
« Reply #7 on: February 20, 2013, 11:57:17 AM »
Thanks for all the replies  :)

After reading all the comments, I concluded that using servos might be a better option. But I'm concerned about the jitter/vibrations of the servos when the robotic arm lifts the load and while moving. what actually cause the jitter? (as in the video below)

Robotic Arm (test servo #1) - Homemade Handmade


I can notice these type of not smooth movement in many videos. Is this caused by the servos or by the mechanical structure??

Another question, if the speed of the servo is reduces, will the torque also be reduced ??

Thanks in advance.


Offline newInRobotics

  • Supreme Robot
  • *****
  • Posts: 1,015
  • Helpful? 48
  • N.I.R.
Re: Servos VS DC geared motors
« Reply #8 on: February 20, 2013, 02:11:41 PM »
Few different things can cause servo to jitter: current spikes & dips, noisy signal suplied to servo, loose gears inside, poor quality potentiometer, low internal position update rate, etc, etc. If You need Your robot not to jitter, try getting higher quality digital servos, or other types of actuators.

Arm in the video does not jitter than bad, I must say, I had a chance to program one that was shaking a lot more.

As for hobby servo speed control, as far as I know, You cannot control it, as angular velocity is worked out inside servo itself. There are ways around it, like driving servo in small increments to keep speed down, however, control that You get might not be worth the effort.
"Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music." - Kristian W

Offline drinuTopic starter

  • Full Member
  • ***
  • Posts: 61
  • Helpful? 1
Re: Servos VS DC geared motors
« Reply #9 on: February 20, 2013, 02:40:39 PM »
Hi,
thanks for the reply.
Are XQ-power servos of good quality? they don't look expensive but I have doubts about their quality.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: Servos VS DC geared motors
« Reply #10 on: February 20, 2013, 07:32:48 PM »
If you want servos that you can program to jitter less, look at the Dynamixel AX-12 or Herkulex DRS-0101. Each is less than $40 each (buy 6 or more) and each has settings where you can program, at a minimum, how much they react based on how far off they are.
Jitter can be caused by many things, including a poor match between the actual load, and the control of the servo. A servo that over-reacts will cause jitter. A servo that's not strong enough will also cause jitter. Poor mechanical fit or excessive play will also cause jitter.

Offline drinuTopic starter

  • Full Member
  • ***
  • Posts: 61
  • Helpful? 1
Re: Servos VS DC geared motors
« Reply #11 on: February 21, 2013, 01:34:28 PM »
Hi,

are the  Dynamixel AX-12 or Herkulex DRS-0101 controlled using PWM or I have to use a custom controller? I can see that the harness consists of 4 wires not 3 and the servo have 2 connectors? Why is this please?

Thanks.
« Last Edit: February 21, 2013, 01:37:35 PM by drinu »

Offline ErikY

  • Robot Overlord
  • ****
  • Posts: 186
  • Helpful? 0
Re: Servos VS DC geared motors
« Reply #12 on: February 21, 2013, 02:34:27 PM »
Hi,

are the  Dynamixel AX-12 or Herkulex DRS-0101 controlled using PWM or I have to use a custom controller? I can see that the harness consists of 4 wires not 3 and the servo have 2 connectors? Why is this please?

Thanks.

Both are serial servo's, meaning you do not use PWM to control them.

The AX-12's use half duplex, I am not sure about the DRS-0101 as I have not yet used them.

I will say that the AX-12's are incredible, Webbot lib is really fantastic for using these.

I have not put any significant load on these, but they are incredibly powerful, very fast, and the level of control you get on these things is amazing.

You can control position, speed, get positioning, get speed, get torque, set limits, and much more, they are really amazing.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: Servos VS DC geared motors
« Reply #13 on: February 22, 2013, 01:02:25 PM »
 They use serial communications (TTL UART) which most microcontrollers can talk to just fine. Like the Axon, for example :-)

For the single duplex case, you can tie TXD and RXD together to the bus with a small resistor. If you also want to use the serial port for other things (like Arduino programming without a ICSP programmer) you have to be able to separate them again with a jumper or circuit.

Offline drinuTopic starter

  • Full Member
  • ***
  • Posts: 61
  • Helpful? 1
Re: Servos VS DC geared motors
« Reply #14 on: February 22, 2013, 05:05:26 PM »
Thanks for the replies.

If I use actuators instead of servos or geared motors, will it be a good idea?
they are more powerful,  easily programmed, easy to control their speed (PWM).

Any help would be appreciated.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: Servos VS DC geared motors
« Reply #15 on: February 23, 2013, 09:59:15 PM »
There is no 'best' choice. Each application has certain requirements for speed, accuracy, torque, runtime, feedback, cost, etc. Engineering is the art of researching and quantifying these requirements for a particular application, then trading the requirements off among available options to solve for that application.

 


Get Your Ad Here

data_list