*) even with nosings/ledges
and open risers, minimum run length = 25cm,
maximum slope = 37°.

and a support.

Brief description

Principal
data

stairBOT
is a small robot for indoor environments. On even floor it
drives like many other small robots with a differential-drive.
In addition it can change its length with linear guides mechanism
with a spindle-drive. By this mechanism it can - together with
its omniwheels (with brakes) and a support - reliably climb up
and down regular sized stairs. It was one of the objectives for
the design to use as few actuators and sensors as possible.

Who
wants to learn more, is invited, to read

beneath ....

length
min/max

63cm
/ 30cm

hight
min/max

27cm
/ 60cm

width

37cm

mass

6
kg

actuators

5

sensors
for stair climbing

6

ThestairBOT - Concept

Objectives

A
robot, which

1.
- can reach every
freely accessible place in a building;

2.
- is not longer than 50 cm;

3.
- needs as few
actuators and sensors as possible;

4.
- can be controlled by simple controll-structures.

The
Stair Problem

A
robot which moves freely in a building has to be adapted to an
environment made for humans. On
its way it may encounter small obstacles ( up to 4 cm of hight, e.g.
door steps, sills etc.) and stairs. These stairs often have
nosings or ledges and sometimes open
risers. The slope of indoor stairs can vary between 25° and 42°.
Sometimes you will find in residental buildings even steeper stairs,
especially spiral stairs. In public buildings stairs often have a rise s
of 17cm and a run a of 29cm (slope approx. 30°)

*) I can't find the correct
english word. Some papers dealing with stair climbing robots use
"ledges".
On the other hand "STAIR SAFETY, A
Review of the Literature and Data ConcerningStair
Geometry and Other Characteristics" , a paper prepared for U.S.
Department of Housing and Urban Development, did not use the word
"ledge" at all, but you will find a lot about safety riscs
caused by "nosings".

StairBOT
can negotiate stairs with a run length a not smaller than 25cm
and a maximum rise s of 20cm. Thanks to its big wheels are
nosings and open risers no problem.

Well-known Stair
Climbing Robots

If
you search the internet, you will find quite a number of stair climbing
robots. There are the famous two-legged robots(
e.g. Asimo, HRP2), six-legged robots ( e.g. RHex), and tracked robots, mainly in military or law enforcement
applications (e.g. Urbie,
packBot).
Looking for wheeled robots you will find only a small selection. Best
known probably shrimp
of the EPFL Lausanne. Helios V
also climbs up and down stairs. There are also some hybrid designs with
rotating legs, a mixture of a wheel and a 1-DOF-leg: whegs,
whegsII and mini-whegs
IV ( and RHex). Mini-whegs
IV uses yet another concept: It jumps from step to
step.

As
impressive these robots are, according to the objectives mentioned above
they also have some drawbacks. Either they are very complex and
thus expensive, or they use tracks (not very appropriate to indoor
environments) or some designs have problems with nosings and open risers
(e.g. shrimp). Even RHex, (my favorite stair
climber: more than 200 steps of Montmartre-stairs in
Paris or fire escape stairs, slope 42°!) can only show its outstanding
performance, if it appropriately hits the first step. At least
downstairs RHex has to be placed manually in the right starting position
and the stairs should not have large nosings and open risers. Actually
you will find only few robots climbing downstairs.

In
the amateur area are successful stair climbers too, for example the Lego
robot P'titgneugneu. It climbs stairs in both directions, but it is not well suited for
floors, due to its design especially developed for stair climbing.

1.1
Moving
on the Floor

1.1.1
The differential drive

Most
of the time an indoor robot will move on even floors. The
differentialdrive is an easy to handle concept for such a
situation. Thus stairBOT uses this drive concept too.
Because of its stairclimbing ambitions the castor was replaced by
two omniwheels.

1.2
Moving on Stairs

1.2.1
Wheel diameter

The
wheel diameter should be big enough, that the wheel could not be blocked
by nosings and stairs with open risers. A wheel diameter of 25cm enables
the robot to climb stairs with 20cm rise. With a bigger rise and very
small ledges ( t in the drawing ) the danger of a blocked wheel
will increase.

D
= 255mm stairBOTs wheel diameter

(
the smaller circle with the dashed line shows the wheel diameter of the
EPFL shrimp -Robot)

1.2.2
Push the wheel upstairs

How
can this big wheel be moved on next step? .... Push it upstairs!

To
simplyfy things a little bit, let's consider that the center of mass is
located in the middle of the wheel. So we get the following:

The
wheel will be pushed upwards, by a force supported lateral to the center
of mass. As a result we will also have a force component normal to the
step. So a driven wheel can contribute to the upward move. That will only
work as long as the support will stay in place in spite of the horizontal
reaction force.

The
consequence are problems

- of static friction,

- of the right balance
between the different masses,

- of the adjustment of the
wheel speed and the speed of the

linear guides.

1.2.3
Omniwheels with brake

This
differentialdrive robot uses omniwheels as castors when driving on the
floor. Climbing upstairs these omniwheels are the bearings for the
linear guides whilst pushing up the wheels. They have to stay in their
position against the horizontal reaction force. Brakes prevent the
turning of the omniwheels, which should provide a sufficient wheel grip.

1.2.4
The support

Has
the wheel reached its position on the upper step, the omniwheels can be
pulled up. Especially at the beginning of this movement the lever arm of
the rear masses is rather long. To prevent that the robot topples
over or simply slide backwards down the step, it gets an additional
support. In addition the adherent covering of the support inhibits a
backward movement .

1.2.5
Speed adjustment of wheel and linear slide

The
adjustment of the wheel speed and the speed of the spindle drive of the
linear guides
has proven as crucial. To slow or to fast, always is the result that the
friction between the omniwheels and the floor will not be sufficient
enough to hold the wheels in position against the horizontal reaction
forces, the robot falls down. For the build robot a working combination
of the two speeds was found by trial and error.

1.2.6
Perpendicular to the step

To
"drive" stairs safely the orientation to the step is another
important issue. For most of the robots (e.g. small tracked robots) it
is best to start with and to hold a perpendicular
orientation to the step. To recognize its orientation to the edge of the
step, the robot should have appropriate sensors in a symmetrical
configuration.

1.3
Concept of stair climbing

1.3.2
one step up

-
approach - recognize the stairs - short position - drive towards
the first step until the wheel-bumpers hit the edge of the step
- main wheels stop - apply the brakes - linear guides start moving
to the long position - concurrently start the main wheels with
synchronized speed - release the brakes when the linear
guides are in the long position (= main wheels on step) - drive
forwarduntil
the wheel bumpers hit the next step or the linear guides bumpers hit the edge of the step - main wheels stop - the linear
guides move to the short position to pull the omniwheels up (
the robot is resting on its main wheels and the support in this
phase) - when the linear guide is in the short position
the support is folded and the robot rests on its omniwheels
again.

1.3.2
one step down

Same
procedure running backwards. For that purpose the robot has to turn
180° after it recognized a downwards leading step. With its omniwheels
ahead the robot approaches the step. The
descent is only controlled by the
two rear ir-sensors (GP2D120).

2.0
The design

2.1
Dimensions and distribution of masses

To
climb stairs the robot has to be:

-
small enough, to fit into the length of a step,

-
long enough, to
span the distance of two steps.

To meet
these conflicting requirements stairBOT was engineered as a
differentialdrive robot of variable size.

Therefore
it was build of two relocatable units:

-
the
wheel-unit with the main drive and the support,

- the linear-guides-unit
with spindle drive, omniwheels and sensor head

wheel-unit

(
with center of mass )

linear-guides-unit

(with center of mass)

Position
of the sensors:

[1]
IR-sensor front

(tiltable sensor head)

[2]
Wheel-bumper

[3]
linear-guides-bumper

[4]
IR-sensor rear

Total
mass is splitted pretty evenly to both units. The approximate position of
the centres of mass for both units is shown in the drawing. The prototype
of stairBOT has a total mass of approx. 6 kg. 20% of the total mass
are contributed by the batteries. The distribution of the batteries is the
easiest way to balance the robot.

A
foldable support is mounted on the wheel unit to hold the robot on a step when the linear guides with the omniwheels are moved up or
down. The
wheel unit is mounted like the carriage of a linear motion system.

2.3
The linear guides unit

The
wheel unit can be moved along the linear guides by a leading screw (
pitch 5mm, travel 290 mm). The drive motor is aDC
-Motor ( 11Watt, 4.8 :1 planetary
gearbox,
encoder ). The
motor is controlled by a PID-controller via a 3A H-Bridge.
Additionally two limit switches are used for termination and
calibration. With this mechanism the length of the robot is continuously adjustable
between approx. 60cm and 30cm.

As
castors two 60 mm
omniwheels (TRAPO, polyurethane) are used.

2.4
Sensors for stair climbing

To
recognize the steps, its orientation to the step and the position on the
step the robot is equipped with the following sensors:

#

mounting

right

left

typ

direction

function

1

front

x

x

80cm
IR ranger Sharp GP2D12

up /
down

beginning
of the stairs

2

front

x

x

micro
switch (wheel bumper)

up

wheel
at step edge

3

central

x

x

micro
switch (linear guides bumper)

up

linear
guides touch step edge

4

rear

x

x

30cm
IR ranger
Sharp GP2D120

down

recognize
step edge

To
climb the stairs only sensors # 2, 3 and 4 are necessary. To provide for
the perpendicular orientation of the robot to the step these sensors are symmetrically
mounted on both sides of the robot. If for example the left wheel reaches
the edge of a step the left driving motor is stopped while the right motor
still runs until the right wheel reaches the edge too. Thus the robot can
climb spiral stairs - if the run is long enough.

Sensors
1 are mounted on the tiltable sensor head. The sensor head preserves a
given line of sight, because its adjusting servo gets a feed back of the
actual spindle drive position.

In
addition to the two GP2D12s
the sensor head is equipped with a CMUcam2 and a SRF08 ultrasonic sensor. These
both sensors are not used for stair climbing.

2.5
Design details

click to enlarge

Both
omniwheels use simple disc brakes. The brake is made from a
flexible plastic part covered by a lining (black/red) normally
used for table-tennis bats (=
ping-pong paddles for american readers).

Moving
the servo mounted cam pushes both brake discs ( via the rods) against
the omniwheels. The brakes will be released by retaining
springs. The polyurethane-rollers of these wheels ( 60mm
TRAPO-rollers) provide sufficient adhesion even on smooth ground.

bottom view

mechanical
design: side view

mechanical
design: front view

(still
with long sensor girder with two SRF08)

Approaching
the first step

Ascent
would not start until the robot is in a perpendicular position to
the edge of the step.

On
the first step

On
the step, 1 wheel removed

You
can see the function of the support and the positioning of the
6V-batteries.

The
red parts are the wheel-bumpers. Their movable white end pieces
will be pushed up by the edge of the step when descending. This
prevents a blocking of the bumpers.

It
can be adjusted in any linear guides position in a wide range
from perpendicular up ( e.g. to find lamps at
the ceiling as landmarks) to perpendicular down (e.g. to
recognize obstacles or steps).

Beneath
the sensor head you can see 4 of the subC-cells of the motor
powersupply (total 11 cells). These cells are placed in the
upper part of the linear guides for a better balance during
stair descent.

3.0
Control-electronics

The
robot is equipped with 4 micro- controllers. mC2
and mC4 are PID motor- controllers. mC1 and mC3 are used to handle the
analog and digital inputs of the sensors and to control the servos. The mCs
are programmed in TEA (proprietary acroname), a subset of ANSI-C. For data
transfer between the 4 mCs an I2C-bus is used. One of the microcontrollers
is configured as a router. This router has a serial link to the host. The
elements drawn with dashed lines are already mounted for a more realistic
weight distribution but not working yet. At the moment the robot is still
tethered to a desktop-PC as a host. Router-mC and host communicate via RS232.