More on Robots:
Events
  Killer Robots
  Robogames 2011
  Robogames 2010
  Robogames 2009
Robots
  Fluffy
  Kudu
  Peanut Tin of Terror
  Little Miss Destruction
  John Frizell's Robots
  Quokka
  Sterylite 6000
Videos
  Festo Robots
Parts
  Guide to Servos for Robots
  Notes on Robot Batteries
  Propeller Controller Boards
  Ultrasonic Rangefinding
How To
  Tools You Need to Build Robots
Also
  My Embarrassing Hobby
  Unintelligent Design
  The Five Best Places for Robot Parts




Search Robot Sites

A custom search of the best robot sites.
Custom Search
What is this?

Servos for Walking Robots

Servos are the key mechanical component of walking robots, at least the ones most hobbyists build. The capabilities and requirements of your servos will dictate your design and performance of your walking robot so it is good to understand them as well as possible.

Contents

How a Servo Works

A servo is a motor a geared electric motor with a feedback circuit built in so that you can set it to a position, usually at a particular angle. Servos are shaped like a rectangular box because there is a motor inside -- oddly on the side opposite the gear head-- and then on the other side a potentiometer connected to the output shaft. There are gears between them which you may sometimes need to replace. In some models of servos the gears can be the main thing that changes since they can take a servo design and make it faster with less torque or slower with more torque just by changing the gears. An example of this is the HS-625 and HS-645.

For most hobby servos the angle of the servo is controlled by a series of pulses. The angle of the servo motor is determined by the length of the pulse in milliseconds (usually between about 1000-2000ms). Some servos can also be controlled by serial signal. Robotis servos are controlled by a high speed serial signal. Some HiTec digital servos can be controlled by a serial signal or a pulse width, but I have never seen anyone use anything but a pulse width so I don't know how well that works.

You can get controllers for servos, or example code of how to control them for most microprocessors. Because they are so common and so standardized, they are actually pretty easy to hook up to a control system.

Specifications of Servos

There are certain specifcations that are particularly important for servos such as speed, weight, and torque.

Servo Speed

Speed is very important for servos in robot legs. In general, the fewer legs you have the faster the legs have to move to maintain balance. Bipeds need fast and accurate servos for their moves. Hexapods don't have to worry about speed or precision so much because they should always have a triangle of three legs on the ground.

There is a potential design trade-off in taking a fast servo and making a mechanical linkage to reduce speed and improve torque. Some leg designs use a dog bone joint to convert a longer servo movement into a shorter, slower action with more force. You can see some of these approaches at Lynxmotion, or in my own robot Fluffy. This is not the preferred approach by me. It seems to me that you can achieve the same effect with a servo with a lower gearing ratio, since both are taking advantage of the same mechanical principles. Also, in my experience a dog bone joint fails more than a servo gear does. And besides speed, you loose a lot of flexibility. A servo can usually turn at least 120 degrees, sometimes more. A dog bone joint has perhaps 60 degrees of travel.

Servo speeds are typically listed in terms of the amount of time it takes a servo to rotate 60 degrees. That is useful for comparison purposes because pretty much every servo rotates that much.

Servo speeds will depend on the voltage applied to the servo. The more voltage you apply, the faster the servo will go. Hobby servo speeds are often listed for 4.8v and 6v, but I have also run many Hitec servos at 7.2v without incident. With LiPo batteries some robotocists are running hobby servos at 7.4v. Some of the newer digital hobby servos are actually designed for that voltage. When you look at the speed of a servo be sure to check the voltage at which the speed is measured, otherwise you are comparing apples to oranges.

HS-645MG Speed 60deg/s
4.8v0.24
6.0v0.20
7.2v0.17 (est)
7.4v less then 0.17

For a Robotis servo you do not always see the speed listed in 60 degree/sec increments. You see the motors speed in RPM. If you take the RPM, divide it by 360, you will should get the amount of time it takes to travel 60 degrees. An AX-12+ can turn at 57 RPM at 12v. That corresponds to (57rpm/60sec*60/360=) 0.156 sec/60deg.

What do these speeds mean in practice for a walking robot? First, the speeds you see listed are "no load". That means that the servo is going to be slower as it carries weight, up to its stall torque where it just stands still. Also, while a servo may be able to move in one direction at a certain speed, if it is cycling it will be changing its momentum and not able to move as fast. Finally, depending on the accuracy of the servo you may need to leave some time for the servo to "settle". In practice this means that while servos may have a speed of 0.2sec for 60 degrees they can really only move that distance ever 0.5 or 0.33 seconds if they are cycling back and forth.

Servo Torque

Torque is the amount of angular force a servo motor generates at a given amount of voltage, assuming sufficient current. For walking robots torque is really important because it relates directly to how much weight your robot can carry. There are definitely some trade-offs between speed and torque that I will discuss below, but as a rule of thumb you almost always can use more torque in a walking robot.

Torque is usually listed in ounces per inch (oz-in) or kilograms per centimeter (Kgf-cm). The torque of a spinning motor acts like a lever in the sense that the longer the lever arm, the less the force. So a servo with 10 oz-in of torque delivers 10 ounces of torque when connected to a 1 inch arm, 5 ounces when connected to 2 inch arm, and 1 ounce of force when connected to a ten inch arm. If you are thinking about a walking robot that lever arm length is the length of your legs. The longer you make your legs the less force they will be able to apply. But increasing the length of your legs increases the distance of your gait and hence speed. Increasing the length also usually increases the size of the obstacle you can clear.

There are a few different measurements of torque that can be used, such as dynamic torque and stall torque. Stall torque is the force that it takes to bring a servo to a dead stop at its normal power. Dynamic torque is the amount of force the motor is imparting while it is turning at some given speed. Stall torque is sometimes listed because it is usually the greater of the two measurements. But in practice it is not a good number to base your robot design around. You want to design the size and weight of your robot such that it can be carried by the normal torque of its motors, not the size and weight that will cause it to stall, or even get near to stalling. Because of obstacles, inclines, and momentum, the force on servos is not going to be constant. So if you are close to stalling, you will stall in certain common conditions.

An example of this is that the excellent Dynamixel AX-12+ servos are sometimes listed as having 15 Kgf-cm stall torque. That is a lot. But I have heard people point out that they cannot normally be expected to carry that weight. I believe the naming conventions of the Dynamixel servos give you a tip to what torque the engineers were expecting the servos to normally be expected to deliver. The AX-12 probably can handle about 12 Kgf-cm, the RX-28 about 28 Kgf-cm, the RX-10 about 10 Kgf-cm, and so on. I don't know this for a fact. But I point it out because you need to think about the torque the motor can really handle and not some theoretical peak figure.

Servo Rotation Range

Servos do not all have the same rotation range. Some servos rotate 90 degrees, some 135 degrees (both very common), and some rotate as much as 720 degrees, with many ranges in between. For a legged robot, you probably want between 90 and 135 degrees of rotation. But you want to be aware of the range, particularly if it is unsuitable for your leg's design.

There are also servos that rotate continuously. You can use these as simple speed controllers for robot wheels. I do that for the Peanut Tin of Terror. Robotis servos have the ability to rotate to a specific position or to rotate continuously.

Rotation Range of Selected Servos
Servo Rotation Range
HS-311  90 degrees
HS-815BB  140 degrees
HS-75BB  180 degrees
HS-785HB  1260 degrees
HS-1425CR  Continuous

Servo Sizes

Knowing the size of your servo and that it will fit its mounting well is extremely important for walking robots. Powering legs is a very demanding application for servos. Walking involves constantly changing the direction of the servo with a lot of weight on the servo and repetitive impacts. As the legs interact with different surfaces at different angles, a servo and its gears can get pulled in different ways. So you want to mount them tightly, with mounts that fit the servo snugly.

There is very little standardization in the size of hobby servos. Generally servos are describes as standard, micro, or quater scale. Standard hobby servos are the most common but standard servos vary slightly in size by servo type and manufacturer. Hitec makes a set of standard servos that are very close in size (bot not all exactly the same size) that include the HS-425BB, HS-485HB, HS-645MG, HS-5485HB, HS-5645MG etc. These are good servos to use particularly because they are common and similar sizes. Brackets can be found for them in many places, with a great selection of brackets at Lynxmotion.

Micro servos are smaller than standard servos, and they also come in a variety of sizes. At first people didn't use them much for walking robots because they are so small they used to not have enough power to carry a controller board and battery in a walking robots. People now make hexapods based off of micro servos. I have never seen a biped robot built off micro servos, but as their power increases I suppose that is inevitable.

Quarterscale servos are larger than standard servos and usually more powerful at the same price range. They are also about twice as heavy as standard servos, an imporant consideration when you are building walking robots. In their favor, because they are bigger they seem to have more sturdy gears then standard hobby servos. I have yet to strip the gears on a 1/4 scale HS-755MG, while I have stripped the gears on a couple HS-645MG. The HS-755 has 200oz of torque, vs 133oz for the HS-645MG, at the same price. But the 1/4 scale servo weighs twice as much.

Robotis servos come in three general sizes: AX, RX, and EX. Because these servos are created with robot building in mind their designs lend themselves to better mounting for robot legs then with standard hobby servos. The AX size servos that are exteremly popular for building robots. You can get plastic brackets for them from Robotis or metal brackets from either Crust Crawler or Trossen Robotics. Trossen Robotics even sells quadruped and hexapod frames for AX servos. Crust Crawler has leg assemblies.

The RX, and EX servos are larger and more powerful. You can buy metal brackets for them from Crust Crawler or Trossen Robotics. The brackets and the servos are pretty expensive, but they are probably among the best you can get.

Servo Gears

Servo gears are the most likely point of fault for servos on a robot. I have had two different HS-645MGs break their gears on the robot Fluffy. While it is a drag that this happens, you should keep in mind that the drive trains of all types of robots are prone to fail sooner or later and one of the reason why I recommend getting relatively common servos is that they are easy to replace. You can also get gear sets for most Hitec servos. It is cheaper to replace the gearset on the servo then servo, and Hitec sells the gear sets.

Servos gears can be (in order of strength): "plastic" (nylon or karbonite), "metal", or titanium. In general the expensive high torque servos will have metal or titanium gear sets. But check the kind of gear set the servo has when you are considering what servo to get. I also believe that quarter scale servos have sturdier gear sets when all else is equal, because the gears are just bigger. My reason for believing that is that I have put Sterylite through incredible abuse (look at some of the videos) and never lost a metal gear on its quarter-scale servos. Fluffy has stripped the metal gears on its HS-645MGs with a smoother gait and much less weight to carry. So my belief is that all other things being equal, the quarter scale servos are stronger.

On Robotis servos, the AX-12+ and AX-18 use "engineering plastic" gears. The RX-24F/ RX-28 use full metal gears. The AX servos are built for robotics and so I think less likely to strip gears then other plastic hobby servos.

Servo Weight

It is easy to underestimate the importance of servo weight, since batteries can weigh so much more than any individual servo. But while you may only have one to three batteries, you can easily have a walking robot with twelve or eighteen servos. So the relative weight of those servos can matter a lot.

An important thing to consider about servo weight is the weight of the servo plus whatever bracketing is required to mechanically attach the servo. Some servos come with most of the bracketing built in, particularly the AX-12+. With hobby servos you will have to add a bracket, and perhaps a metal hub and axel to get the mechanism you are looking for. The weight of these things usually isn't much, but again, you have to figure that you will have many of them so you need to account for it.

Picking the Right Servos

There are a plethora of robot components to buy on the Internet, including servos. For your robot project you could go around and comparison shop. You could pick the servos that had the best specifications for the price. But this could be a big mistake. Servos are not always as good as their specs, and so it really helps to know what you are getting into before you buy a bunch of them. Some manufacturers are not very accurate in their specifications. Some servos are less reliable then others. Some servo specifications are misleading, particularly torque figures. This is why I tend to stick to a few servo brands.

Digital servos are generally faster then analog servos, and may be more precise. I have hear that some cheap digital servos jitter a lot. It really makes sense to try and find someone who has used the servo you want to use in a similar application. Ask that person how they worked. I have had good experiences with Hitec HS-5685MGs and HS-5485HBs.

Servo Brands

The brands of servos that are dependable enough for Robotics and are also usually the ones that are widely available. These are HiTec, Robotis Dynamixel, and Futaba. There are other good servos available, but it is harder to know what you are getting. Some RC Hobby stores have their own line of servos that are good. HiTec and Futaba are probably the two largest manufacturers of servos and so are quite common. Robotis is probably the most popular manufacturer of servos exclusively for robotics.

It's a good idea to limit your servo search to these manufacturers because they are dependable and commonly found. All motors and gears on a robot are likely to fail at some point. You want to be able to replace the gears or the servo if they do fail. You can sometimes find deals on strange servos on the internet, but I recommend being careful about this. They can be oddly shaped, or difficult to calibrate.

Servo Price

This seems like an obvious consideration, but the price I am thinking of is the cost of the whole servo system including brackets, hinges, and controllers. Hobby servos in particular need additional mounting hardware in order for them to be mounted reliably on a robot. Some of the cheaper hobby servos may have plastic hubs which you may want to replace with metal hubs, which will come at a cost. When you think about servos, think about the cost of brackets and hubs, it you will need them, because otherwise you won't be making much of a comparison.

When you are making walking robots you often have a choice of how many servos you can use in your design. Robots with fewer and more well articulated limbs look cooler, particularly when they are bipeds. But a hexapod with two jointed legs will work fine. Sometimes you can make a robot with more less expensive servos. For example you can get away with building a hexapod with HS-485HB servos. A good biped probably requires higher torque servos.

Robotis AX-12+ are generally considered to be a good robot servo for a low cost. The Hitec HS-645 has been popular for a long time, and the HS-485 seems to be a high quality low cost servo.

Protecting Servos

Servo failure is a common problem for walking robots. They can burn out or strip their gears. There are a few things I have learned to do that can help you avoid destroying servos.

First, consider using a voltage regulator to get the right voltage for your servos. LiPO batteries have a voltage of 7.4v or higher when fully charged. Many analog servos are designed for a maximum voltage of 6v. They work at the higher voltage, but it means they will fail more quickly. A good way to address this is with a 78XX linear voltage regulator. It is only a few bucks and it is probably worth it, particularly if you have LiPO batteries and analog servos.

Another important point with servos is to be careful with the plugs. There are many cases where it is possible to plug in a servo in such a way that the polarity is reversed. When you are using low power, or high quality servos this often is survivable. But it can wreck a servo in the worst case. To avoid this, don’t plug in servos with the power on. Before you connect the power, check to make sure that ground, positive, and signal wires are all plugged into the correct header for each servo.

When your servo is connected to an arm or leg and unpowered, be careful about how you move it around. Jerking a servo around can be harder on the gears than you think, because the gearing is all working backwards. The worst case I have seen has been to drop a robot in such a way that leg moves the servo violently and a gear tooth breaks off. You should be as gentle with a robot with power off as you would be with the power on.

Finally, while servos are sometimes water resistant, they are almost never waterproof. What that means is that they can handle moistute and even getting splashed on some. But if you leave them underwater for a long they will probably be ruined. Their are tutorials on line for how to water-proof serovs. You should look into this if there is a chance your servo will get soaked.

Servo Descriptions