Help: Servo vs Stepper

OK,so I am thinking of making a simple robot. I'm a beginner and I don't know much electronics. Main question is what it's the difference between a stepper and a servo? What should in use for say, an arm or head. What should I use for walking legs.Or wheels?

Servos (as used in flying model aircraft) can move their output arm through about 180 degrees. Typical Arduni code would be myservo.write(87); which would move the servo arm to the 87 degree position.

You can also get continuous rotation servos where the "angle" actually defines the speed of rotation. 90 degrees is stop, 0 deg is full speed in one direction, 180deg is full speed in the other direction. Most regular servos can be modified to make them into continuous rotation.

And you can get sail-winch servos which can rotate about 3 full turns (1080 degrees) with position control.

Stepper motors as their name implies move accurately step by step and are generally used when precise movement is needed. You need to use a stepper motor driver board between an Arduino and a stepper motor. The Arduino cannot ptovide enough current for a motor or a servo.

Arduino's can also control regular DC motors at varying speed using analogWrite(x). x = 0 is stopped, x = 255 is full speed. Again you need an interface board between the Arduino and the motor.

If a servo will suit your application it is by far the easiest of these to use.

...R

Just to clarify, steppers and DC motors need a motor driver board, but Servo doesn’t?
But a servo will need a different source of power?

It looks like a servo is most suitable. If it’s easy to use, I’ll just get that. So all I need is for servos is:

  • Servos
  • Servo Library
  • Arduino
  • Power for Arduino
  • Power for Servos

Is that correct?

iVisualHack: Just to clarify, steppers and DC motors need a motor driver board, but Servo doesn't? But a servo will need a different source of power?

It looks like a servo is most suitable. If it's easy to use, I'll just get that. So all I need is for servos is: - Servos - Servo Library - Arduino - Power for Arduino - Power for Servos

Is that correct?

All that is correct.

Just make sure to connect the ground for the servo power supply to the Arduino ground so they have a common point of reference

It may make sense to buy a cheap servo to experiment with.

...R

Not strictly true to say that steppers or dc motors need driver boards, since either of those can be driven by discrete components. But from a practical POV, yep a board (or a shield) is easiest. A shield btw is a board designed to plug in on top of an Arduino so the connection is much easier than a standalone board which will need wires.

Here’s a tutorial for a dc motor, and this one is for a stepper.

Servos just connect as shown in the attached pic.

Many servos- small.jpg

Thanks for the replies. The image is very easy to understand. Thanks