This is a Lego Mindstorms rover robot, similar to the Shrimp III. Its specialty is climbing stairs, or steep and inconsistent surfaces. It is based on rocker-bogie suspension. The great part of this design is that it doesn't need to know that it is climbing stairs. Most robots need actuators and multiple stages of behavior. This robot simply goes, and the mechanics naturally deal with obstacles. I originally designed it wide and hollow to carry a lot of computer equipment and batteries, but it's only carrying the small RCX now. By placing angle sensors in its joints, it would make a topographic map of its travels. With the addition of steering castors on the front and back, stereo infrared distance sensors, and touch sensors, its mapping skills and AI controlled behavior could be complete. But, I think it is time to retire this thing.

Images of the new design:

Side, Rear Dual Motor Assembly, Very Small Motor Assembly, Motor Assembly Separated

Images of the previous design:

45, Top, Back, Going Up - Side, Going Up - Front, Going Up - Top, Disassembled

Dimentions:

Max Height: 26cm
Main Height: 20.5cm
Length: 66cm
Width: 42.5cm
Wheel-base Width: 35.5cm

Videos:

Get the Flash Player to see this player.

Movie Captions

Watch or comment this on YouTube.

History:

So how does one come about such crazy looking mechanics? Important discoveries in bold.

Goals

  • To create a robot capable of going up a staircase and other difficult obstacles.
  • Keep the robot shorter than one step.
  • Design climbing functionality with a single RCX and minimal amount of motors and sensors. This way I can use the limited functionality of the RCX; and my limited supply of equipment; for other tasks such as navigation.

Crazy Ideas - Spring 2004

Jumping robot. Impossible with the weight of the RCX and strength of Legos, but that led me to the next idea.

My first usable ideas involved projectiles. Ie: A robot that fires a grappling hook made with a fish hook, which would only work on carpet. Or one that fires a ball and chain which is heavier than its self, using the ball as an anchor. The main problem here is that aiming and firing a roped projectile is complex and sloppy.

I also considered forklift based designs, but this generally requires the robot to be/become very tall and unbalanced.

I looked into bipeds but a bipedal leg must be at least twice as tall as a step.

I then implemented a quadraped to take out the balance and height issues of a biped. It's leg motion was so exaggerated that when it lifted a leg it could reach more than twice it's standing height. It's semi-circular motions looks as if the robot was swimming on the ground over obstacles. Sadly, when it came time to climb the stairs, the extreme torque on the moving parts destroyed a motor and many gears.

It occured to me to try using the rocker-bogie of the versatile mars rover (pictured much further down this page). This was the first design I actually successfully implemented without it self-destructing. Copying the mars rover didn't work for stairs, going one way would get one of the three pairs of wheels up a single step, going the other way would get two of the three pairs up. This design didn't work, but it would ultimately become the basis of my work.

Then my ideas started making a little bit of sense. At this point I started thinking of the stair climbing problem as simultainously balancing on 2-3 steps, rather than leaping large bounds or taking single-step climbs.

Less Crazy Ideas - Fall 2004

Blue Circle:

This is supposed to be an equilateral triangle track with two joints, and one disconnect. Then on the bottom is a cart which can move along this track. This cart also has wheels on the bottom touching the ground, so it can carry the whole assembley around. (Think of it this way, its like a car with a paper shredder in the front that you feed a train track into.) When it gets to an obstacle (ie: stairs), the track unfolds over it, the car retracts its ground wheels, and rides up the track. This is displayed in the picture below the blue circle. Then the car lowers the wheels to the ground, lifting the track. It resets the track, and does it again if needed. The purpose of folding the track is to make it easier for the robot to carry it around and to deploy it over obstacles. Each segment of the track needs to be about 0.75 of the hypotneuse of the steps.

This works well to overcome obstacles, but it it's complexity makes it unreliable and it's too difficult to add other rover style exploration functionality and equipment to this robot. This was implemented, but operated under manual control. I wish I had a video of this one, it looked insane.

Red Circle:

This robot is two isosceles triangles, cornered with wheels, hinged together to form a square. It opens and closes its self to climb up steps. However, this design can only climb up one step. After that the hinge is on the wrong side.

This made me think of the possibility of using multiple triangle robots as a team. One would line its self up in the step, and the other would ride up it. The number of climbable steps would be limited by the number of robots built. To handle different sized steps the robot would need some way to either resize its self, or change the angle of its platform. I pictured army ants making bridges with each other.

I re-thought of the projectile and forklift robots using this paradigm, but nothing good came out. For example, I pictured a pair of monkeys helping to lift each other up to climb up a tree, and thought to use electro-magnets as hands: Robot A flings robot B up a step; robot B reaches down and manget-grabs A to pull it up; repeat. So complex. Monkeys don't even do this.

Yellow Circle Above and Next Image:

Here is a snake style robot. If it is long enough, the idea goes that if it can have at least as many wheels going straight as there are going up, it may be able to push its self up.

Then, without wheels, I wondered what would happen if I took a snakes locomotion for going forward, and rotated it 90 degrees to make up and down waves instead of side to side. Would this alow it to climb up as it went forward? The above part of the right image is a top view how I would segment levers.

But, I'd have needed a lot more parts to seriously try either of these. Plus, I don't know how they would have handled balancing the weight of the RCX. I realized I couldn't get the motion just right anyway, and I'd end up with an inchworm.

My thinking had become too focused on triangles, and I soon began thinking of square configurations.

This design is interesting, but the front part rotating like a windmill isn't enough to lift the back up. I was hoping that it would push down with the same timing as my snake idea.

I did realize though, that replacing the back part with another windmill would probably work fine. The problem is, this design would be at least two steps high.

But I had a key realization: now I began to think of the force vectors changing angle as they flow down the tangent of a circle, rather than just thinking up-down front-back.

Return to Rocker-Bogie - Winter 2004

First some background: The rocker-bogie suspension is used by Nasa in its rovers. It can clear obstacles taller than its wheels while keeping a center platform level.

I decided I didn't need the platform leveling functionality, so I tried to use those levers to alter the force vectors between the front and rear sections of the suspension.

I did this by changing which hinge-points of the design were fixated or not. And by tweaking the location of these hinge-points.

The right picture has two examples of minor tweaks. Note: The top rover drawing's hinge points are quite ineffective as shown, and some were re-fixated in implementation. The bottom one has been altered so that the left assembly doesn't bottom out on a step corner. The top rover drawing actually has my snake assembly overlayed as a thought experiment.

The very top simple sketch in this picture is a force diagram relating the first and last wheel when on a step (with very exaggerated arrow heads to let me visualize steps and pushing against a wall).

That simple 6 line drawing, with a center of gravity as the fat dot, would eventually become the front towering part of my final robot!

Rocker-Bogie Modifications - Winter 2004

So I tried playing with the rocker-bogie style suspension for awhile but with no success. This picture chronicals some design attempts. Usually the first two wheels would go fine up and over a step, but they werent strong enough to drag the final wheel up. Especially if the first wheel had begun its ascent up the next step.

Then I remembered my rule from above that I had discovered: I need at least as many wheels going straight as there are going up.

The red circle in this picture shows the previous iteration of the design, but with an additional wheel-leg sticking out the rear support.

Four rows of wheels is key.

Optimum Wheel Configuration - Winter 2004

Building on the principal of four rows of wheels, I tried to imagine the best relative positioning while on steps.

I finally realized that, of course: Positioning of the wheels and center of gravity in position #1 as it climbs up a step is complementary to position #3 after it is over a step.

Each of these three positions are stable and don't need feedback from the motors to prevent the robot from moving unvoluntarily.

Final Sketch - Winter 2005

My previous thinking was that the first pair of wheel rows, and second pair work as units. After finishing the above sketch, I realized this is wrong!

My thinking was locked into pairing wheel rows, so the next logical step was to pair the middle two rows, and the first and final row.

To make this configuration possible, I produced this [rough] sketch to the right.

This is the sad part of the story for me. At this point I thought I had invented a new type of suspension! But I was very wrong. Someone saw my design, and pointed me to the Shrimp III. How devastating! How had I not found this myself? And it had turned out that the Bluebotics company had only released the Shrimp III earlier that year! I later found out that a different group of people made a previous revision of the Shrimp that dates to 2002 or before. Knowing that, at least I don't feel the badness about being the slower party of a simultaneous invention.

This design worked well enough on the stairs, but the tower in the middle moved put its center of gravity to far rear. So, I moved the tower forward, and lowered the connection of the rear brace, and my design became nearly one with the Shrimp

At this point I admited to myself that I had invented nothing, bit my lip and looked up the dimensions of the Shrimp to tweak my design

But my robot has more payload room and can climb a taller wall than theirs. :P
...(But that's only proportional to the size difference of the robots, anyway. Mines bigger.)

Completion - Summer 2005

The photos of the previous design at the top of this section show this completion. My initial goals were mostly met. But the robot's main tower is a few centimeters taller than its maximum climb height. Also, 6 motors (+1 more for extra power if there's a payload, +2 more with steering) is a little excessive for Legos. The climbing requires zero sensors, climbs stairs and obstacles obsticals, and uses only one RCX, so I feel like I met the goals I cared about.

veltrop@gmail.com

mario power up

 

My TrailGuru

My YouTube

My Mixi

My Facebook

My LinkedIn

My Google Profile

 

+81 80 3350 5880

taylor@i.softbank.jp

taylor@veltrop.com

 

Map Last Known Location

 

Twitter: @taylorveltrop