Arun Waves

July 23, 2010

Leg-Wheel hybrid for a rover robot: Whegs

Filed under: Robotics — Arun @ 2:05 am
Tags: , , , , ,

During one of my exploratory voyages across the vast untamed expanse of the “internet” I made an exciting discovery, Whegs – a wheel-leg hybrid system. First watch this video to get hooked.

Robot designers are constantly on the look out for tricks to get better performance out of their robots. Just like we humans, robots also face obstacles along their way. Now you can detect the obstacle and go around it but there are plenty of occasions where it is advantageous to go over the obstacle. And between you and me, the real reason for the latter options is your robot will be lot more cool and awesome (and bada**) if it can simply go over the obstacles!!

Wheels are great but mother nature decided to give us and many other animals legs, so there must be some advantage to it. Thus millions of years after legs became a way of life and thousands of years after wheels came into being, someone thought, “hey why not mix the two” and the result is Whegs. I found it at this site and this (no time to figure out who came up with it first). Long story short, Whegs climb over taller obstacles when compared to wheels.

Now why is a hybrid design better than the wheel?!?! Here is an illustrative description…..

Consider the above wheel with an obstacle much smaller than the wheel radius (which is the height of the wheel’s center (the black dot) from the floor.

As the robot moves forward (which is ‘left’ in this case), it’s wheel will make contact with the obstacle.

Once a contact has been made, friction will kick in which will force the point of contact to stay the same. Since the torque on the wheel will continue to act, the point of contact acts like a pivot. If the robot’s motor is powerful enough then it will continue turning the wheel, use the pivot point to push down and lift the robot chassis. Eventually this will result in the wheel climbing over the obstacle.

Now imagine a similar condition but this time the obstacle is comparable to the radius of the wheel (h \approx r ). Once again contact is made but this time the point of contact is on the face of the obstacle and not on top as in the previous case. Although friction kicks in, at this point the friction has to be so high that it should allow the wheel to travel vertically up on the face of the obstacle!! Typically this will not be the scenario and even if the friction is so high, think of how will the wheel let go the point of contact if it tries to move forward (in this case move up); if it wants to roll then it must continuously change the point of contact. Since it fails for this scenario it will fail to work for h > r since the point of contact is always on the face of the obstacle and not on top of it.

Now that we have understood how the wheel works, let us consider the same obstacle vs. a Wheg. For accurate comparison this Wheg has the same radius as the wheel and this particular one is a three legged Wheg. The circle is purely illustrative and is shown for reference only – it does not exist. The first thing that becomes apparent is the large amount of empty space that this structure has and in the following sections we will see how this is used to our advantage.

Since it has empty space where there was a wheel once, this structure can, so to speak, penetrate the obstacle as shown in the above illustration. Remember the circle is just a guide to the eye; it merely shows the trajectory of the three legs. Even if the Wheg started out with the previous position, it will simply slip and eventually get to a position similar to the one showed above.

As this Wheg rolls forward (not as smooth as a wheel though), one of the legs will make a contact with the obstacle and its approach will be from top and not on the face as see in the case of a wheel. As before the torque on the Wheg continues and the leg that makes the contact is used as a pivot to raise the chassis as shown below. PS: Note the illustrative circle digs into the floor because the Wheg moves from one leg to another unlike a wheel which has a continuous contact with the floor.

The above discussion is applicable for taller obstacles also. Thus this hybrid wheel can climb over obstacles that are comparable to the radius of the Wheg 😀 by virtue of it being able to penetrate the obstacle profile and having the leg approach the obstacle from top. So if obstacle climbing is your thing then Wheg is the way to go.

Now let us push the system further – what is the maximum height of the obstacle where even the Wheg fails? Above illustrations shows the maximum height for which this Wheg will work, if the obstacle were any taller then the leg will not be able to rest on its top. Thus the limiting height depends on how high a leg can reach so as to approach the bstacle from top which depends on how deep the Wheg can penetrate the obstacle’s profile. PS: you can achieve more height by reducing the angle between the top two legs but then the Wheg will not be stable, or you can add more legs but then the penetration depth will be reduced.

Now as magical as this may seem, remember, there is no free lunch!! Cons for a Wheg;

  • The robot’s ride will be rough
  • Slender legs have a tendency to sink into soft/nonrigid surfaces like sand and mud because of reduced contact surface area to the floor
  • If things are poking out of a moving part then they tend to get entangled in stuff, like in grass or undergrowth
  • If you are really deep into robotics then consider the non-uniform forces that the axle-leg joint will be subject to with every rotation

Happy Robotics 🙂


May 5, 2010

Rover robot

muah ha ha ha ……. my first minion ……… its ALIVE 😈

What every tech-nut dreams of; build your own robot! Finally I built my obstacle avoiding rover robot using;

  • Arduino Duemilanove – robot brain
  • Hi-Tec HS 311 servos – actuator/ drive for wheels
  • spring loaded single throw switch for sensor (mustache/bump switch)
  • wheels from a “99 cents only” store toy
  • don’t own a drill (sigh 😥 I know) so used masking tape to hold plywood sheets which form the chassis

It is a simple one, to get my feet wet; Arduino drives 4 servos, mustache detects obstacles, simple algorithm reverses rover and turns it to avoid obstacle. Turning is achieved by reversing rotation direction on one side of the rover.

Here are some pics and yessssss a video 😀

Testing servo after modifying it into a continuous rotation servo

Layout of 4 servos and corresponding wheels on the chassis

(after few hours) ta da; used velcro and masking tape to hold components together, did not put any effort to hide the ugly guts of the rover. I did not provide detailed instructions for constructing the rover since there are plenty of sites which already do a good job at it. But feel free to ask any questions, I would be glad to answer them.

Here is a video of stress testing the rover to determine the maximum incline that it can handle:

Next step is to add a SHARP IR Range finder to detect obstacles and take evasive action before the rover makes contact with the obstacle.

It will be interesting to explore alternative styles of robotics like legged robot or non-processor robot like the BEAM robots. Avenues are plenty, the only limitation is time!

Blog at