instruentation
-
Upload
makess2001 -
Category
Documents
-
view
218 -
download
0
Transcript of instruentation
-
8/10/2019 instruentation
1/4
IEEE TRANSACTIONS ON ROBOTICS A N D
A U TO M A TI O N ,
VOL.
6 .
NO. 5 . OCTOBER 1990
597
REFERENCES
H. G. Barrow, J. M. Tenenbaum, R. C. Bolles, and H . C. Wolf,
Parametric correspondence and chamfer matching: Two new tech-
niques for image matching, In Proc. Fifth Int. Joint Conf. Artifi-
cial Intell.
(Cambridge, MA), 1977, pp. 659-663.
G. Borgefors, Distance transforms in arbitrary dimensions, Com-
p u t .
Vision Graphics Image Processing, vol. 27, pp. 321-345,
1984.
G. Borgefors, Distance transforms in digital images, Comput .
Vision Graphics Image Processing, vol. 34 , pp. 344-371, 1984;
FOA Rep. C
30401-EI.
Nat. Def. Res. Ins. Linkoping, Sweden.
T . E. Boult. On the complexity of constrained distance transforms
and digital distance map updates in two dimensions, Tech. Rep.
Dept. Comput. Sci., Columbia Univ., June 1989.
P. E . Danielsson. Euclidean d istance mapping,
Comput. Vision
Graphics Image Processing, vol. 14, pp. 227-248, 1980.
L.
Dorst and P.
W .
Verbeek, The constrained distance transforma-
tion: A pseudo-Euclidean, recursive implementation of the lee-al-
gorithm, in I. T . Young et al. (eds.), Signal Processing
III:
Theories and Applications.
S Kambhampati and L.
S .
Davis, M ulti-resolution path planning for
mobile robots, Proc. DARPA Image Understanding Workshop
(DARPA), Dec. 1985, pp. 421-432.
C . Y. ee, An algorithm for path connections and its applications,
IRE Trans. Electron. Comput. , pp. 346-365, Sept. 1961.
U. Montanari, A method for obtaining skeletons using a quasi-
Euclidean distance,
J .
A C M , vol. 15, pp. 600-624, 1968.
A. Rosenfeld and J. Pfaltz, Sequential operations in digital picture
processing,
J .
A C M , vol. 13, pp. 471-494, 1966.
A. Rosenfeld and J. Pfaltz, Distance functions on digital pictures,
P a t . R e c o g . ,
vol.
1,
no.
1.
pp. 33-61, 1968.
T. Soetadji, Cube based representation of free space for the naviga-
tion of an autonomous mobile robot, in L.O. Hertzberger and
F.C.A. Groen (Eds.), Proc. Int.
Intell.
Autonomous Syst. Conf.
(Amsterdam, Netherlands), Dec. 1986, pp. 546-561.
P. W. Verbeek, L. Dorst, B. J . H . Verwer, and
F.
C. A. Groen,
Collision avoidance and path finding through constrained distance
transformation in robot state space, in
L . 0
Hertzberger and F. C.
A. Groen (Eds.), Proc. Int. Intell. Autonomous Syst. Conf.
(Amsterdam, Netherlands), Dec. 1986, pp. 627-634.
New York: Elsevier, 1986.
A Free Gait
for
Generalized Motion
P.
K .
PAL A N D K. JAYARAJAN
Abstract-A
method has been presented for the generation of a
locally optimal free gait for 2-D generalized motion of a quadruped
walking machine. It employs a heuristic graph search procedure based
on the A * algorithm. The method essentially looks into the conse-
quences o f a move to a certain depth before actually committing to it.
Deadlocks an d inefficiencies are thus sensed well in advance and avoid ed.
I. INTRODUCTION
The control of a walking machine requires making decisions as to
which leg to lift and when, and also when to place a leg and where,
so
that the machine may continue to move stably and efficiently
along its prescribed route. The periodic solutions to the problem
[1 ]- [3 ] for a straightline motion of the m achine prove ineffective for
Manuscript received July 27, 1988 ; revised May 30, 1990 .
P. K. Pal is with the Computer Division, Bhabha Atomic Research
K. Jayarajan is with the Division of Remote Handling and Robotics,
IEEE Log Number 9038855.
Centre, Bombay, India.
Bhabha Atomic Research Cent re, Bombay, India.
YO
Y
U
xo
Fig. 1.
Machine coordinate system X,,, ) t x ,
y )
and at an orientation
0
with respect to the ground coordinate system A,, o ) . F is the foot
position.
a generalized motion on a terrain with regions that are not stepwor-
thy. The problem of generation of a terrain-adaptive aperiodic gait,
which is commonly referred to as a free gait
[ 5 ] ,
was first formal-
ized and solved by Kugushev and Jaroshevskij [4] and subsequently
improved upon by M cGhee and Iswandhi [5 ] . Their algorithm tries
to maintain stability and maximizes the minimum kinematic margin
over all legs through the lifting and placing of legs. Though
brilliantly conceived, the absence of any look-ahead feature in the
method may result in inefficiency of the generated gait, or worse, in
deadlocks. Hirose applied a similar method for the generation of a
free gait for a quadruped machine, adding certain guiding rules for
the selection of a foothold [6] that tends to generate efficient gait
while avoiding deadlock. These guiding rules, which are specific to
the quadruped machine, may not be easily extended to the case of
other legged machines nor do they assure optimality of the gener-
ated gait in all circumstances. In addition, Hiroses machine, while
following the prescribed route, maintains a constant orientation and
resorts to crab walking.
Thus, the existing methods for the generation of free gait lack in
two respects-they have
not
been applied to the case of a general-
ized motion, and they do not employ a general set of principles or
techniques for the generation of an optimal free gait. Even for a
regular terrain, even though there has been an attempt to determine
the foot motions required for a generalized motion through the
introduction of a crab angle [7], the underlying gait is assumed to be
one optimized for straight-line motion.
In this paper, we present a method for the generation of a locally
optimal free gait for a
2-D
generalized motion of a quadruped
walking machine. It employs a heuristic graph search procedure
based on the
A*
algorithm
[8 ] .
The method essentially
look5
into
the consequences of a move to a certain depth before actually
committing to it. Deadlocks and inefficiencies are thus sensed well
in advance and avoided.
11.
FOOT
MOTION
OR
A GENERALIZEDOTION F THE
WALK ING ACHJNE
Let X o ,Y o ) represent the ground coordinate system with its
origin at 0 (Fig. l), and let ( X , , Y , ) represent the machine
coordinate system with its origin at C, hich is the center of gravity
1042-296X/90/1000-0597 01.CN3 990 IEEE
-
8/10/2019 instruentation
2/4
5 9 8
IEEE TRANSACTIONS ON ROBOTICS AN D AUTOMATION, VOL. 6. NO.
5 ,
OCTOBER
199
( C G ) of the machine. F indicates a foot position. Then, at any
instant, if the machine is at
x ,
y at an orientation 8 with respect
to the ground coordinate system, the coordinates of the foot F in the
two coordinate systems will be related as
[ ;I [ sein 0 - s i n eos
0
y
1[: l ]
YI
0 1
which may be written as
where , A 1 is the matrix that transforms position from the machine
to the ground coordinate system, F, is the column matrix represent-
ing the foot position in the ground coordinate system, and F , is that
in the machine coordinate system.
F, = , A * F , 1)
Equation (1) may be rewritten as
F , ,A * F,
(2)
where A o ( , A ) - .
At a later instant, suppose the machine moves to a position
x 6 x ,
y 6y and that its orientation changes to
0 +
6 0 . Then,
the foot coordinates in the displaced machine coordinate system may
be written, following 2), as
F2
= 2 A o * F o
3 )
where 2Ao s obtained from
, Ao
by substituting 0
+
68 for 0 ,
x 6 x
for x , and y 6y for
y
Using
l ) ,
3)
may be written as
F2
= 2 A o * , A * F , .
The foot motion required for a differential motion of the machine
is then
6 F ,
F2 F ,
[ 2 A o * , A Z ] * F , .
(4)
Equation (4) gives the foot motion required in the machine
coordinate system to achieve a generalized motion of the machine
from x , y , 0) to x 6 x ,
y
+ 6y ,0 +
60)
in the ground coordi-
nate system. The equation holds irrespective of the number of legs
or their arrangement in the machine.
111. MODEL F THE MACHINE
The walking machine has been modeled as shown in Fig. 2. The
legs are numbered clockwise starting from the first quadrant of the
machine coordinate system
( X I , , ) .
C is the CG of the machine
and the origin of the machine coordinate system. The small square
around C is representative of the body of the machine. The reach-
able areas of each of the legs are shown as dashed squares. All
distances are measured in the un it of a side of these squares.
IV. A MEASUREF
GENERALIZED
OTION
We need to have a measure of motion that is uniformly sensitive
to both translation and rotation of the machine. The sum of foot
travels of all the legs is one such measure, but it depends on the
positions of the feet. Thus,
it
would be appropriate to measure a
motion in terms of the magnitude of the required foot motion (see
4)) averaged over the entire reachable area of the machine. How-
ever, to reduce computation, we determine the average of the
magnitudes of foot motions that would be necessary had the foot
been at the center of each of the reachable areas. We will refer to
motion measured in this way as the travel of the machine. The
generalized motion of the machine may now be seen as a linear
motion in the travel space.
V . STATESND
TRANSITIONS
The input to our gait generator program will be the desired
positions and orientations of the machine at closely spaced time
intervals. We will refer to the motions between successive positions
Fig. 2.
the
and orientations of the machine as motion segm ents. Our treatment
of the problem will be discrete in the sense that decisions regarding
lifting or placing of legs will be taken only after completion of a
motion segment and not during such a motion. Hence, we will be
concerned about the possible states of the machine only at these
points of motion.
A leg state primarily describes whether the foot
is
on the ground
or in the air. If it is on the ground, the description also includes the
coordinates of the foot in its reachable area.
A machine state is described in terms of its leg states, whereas a
walking state includes a description of the machine state as well as
the position and orientation of the machine in the ground coordinate
system.
For the machine at a certain walking state, let us consider the
possible motions of a given leg. If it is touching the ground, then it
must satisfy the foot motion implied in (4). It may as well be lifted,
provided that does not make the machine unstable. On the other
hand, if it is in the air, then it may continue as such or be placed on
the ground at one
of
several points within its reachable area. These
choices determine the leg states, to which, transition from the
current leg state may be made. To limit the number of possible
transitions (in order to reduce the number
of
nodes in the search
tree), we introduce the following two rules governing the lifting and
placing of legs:
1) A leg in stance is not considered for lifting until the machine
completes a prespecified length
of
travel during the stance. During
this period, the foot has no choice other than to follow the motion
prescribed by (4). After it becomes eligible for lifting, it has the
choice of continuing to remain on the ground or to be lifted for a
transfer. At this stage, if the leg is still on ground and moves out of
its reachable area, then, of course, it has to be lifted.
2) A leg in the air must continue as such until the machine
completes a prespecified length of travel since the leg was lifted
off
the ground. After this, the leg has the choice of continuing in the air
or making contact with the ground at one of the points decided by a
foothold selection algorithm.
A machine state will in general have a number of connecting
states such that a transition to any of these states is stable and effects
the next motion segment. A machine state transition is brought
about by a compatible set of leg state transitions. Compatibility of
the foot motions is ensured by the use of 4). Hence, the leg state
transitions must be such that the machine remains stable during the
transition.
The support pattern for a machine state is the convex hull of the
point set in a horizontal plane, which contains the vertical projec-
-
8/10/2019 instruentation
3/4
IEEE TRANSACTIONS ON ROBOTICS AND AUTOM ATION, VOL. 6. NO. 5 . OCTOBER 1990
599
2
.,s 4
Fig. 3 .
S, . S, arc the candidate footholds when the instantaneous
direction of foot motion is SIP.
tions of the feet
of
all supporting legs [ 5 ] . If the support pattern
includes the vertical projection of the CG of the machine, then its
absolute stability margin is the minimum distance between the
vertical projection of the CG and the boundary of the support
pattern. A machine state is statically stable only if the absolute
stability margin of its support pattern exceeds a certain prespecified
value.
A transition from machine state
n ,
to
n 2
will be stable if
n I
and
n 2
are separately stable. Here the support pattern of n , is formed
by excluding any leg that is in the air in
n ,
and the support pattern
of n 2 is formed by excluding any leg that is in the air in n I .
VI. SELECTIONF
CANDIDATE
OOTHOLDS
The placement of a foot determines its kinematic margin, i.e. , the
travel the machine can have along its prescribed route before the
foot moves out of its reachable area. It also affects the stability of
the machine in a way that is difficult to determine in adv ance.
Hence, we allow a foot to be placed at one of four preselected points
within the reachable area. These points are
so
chosen that among
themselves, they try to satisfy varying stability requirements while
assuring a reasonably high kinematic margin.
Fig.
3
shows the candidate footholds. S , is the center of the
reachable area and is one of the candidate footholds. The line
segment S I P represents the direction of foot motion at the time of
contact had the foot been placed at
SI .
S I P
s extended backwards
to meet the boundary of the reachable area at S , , which is another
candidate foothold. The other two footholds are S , and S , , and they
lie on the perpendicular bisector of the line segment S , S , at a
distance
of
0.35 on either side. T he distance
0.35
(i.e.,
/4)
has
been selected
so
that these points lie within the reachable area for
any direction of foot motion. If the instantaneous center of rotation
of the machine is close to the center of the reachable area, the
footholds are selected on a circle around the center.
If the terrain has regions that are not stepworthy, then the
candidate footholds (SI
.
. .
S,)
have to be checked for suitability.
If any of them is found to be unsuitable, a predefined array of points
around it are checked for suitability, and the nearest suitable point,
if any, is passed as the candidate foothold. If no substitute is found,
that particular foothold is dropped from the set of candidate
footholds.
VII . THENOTIONOF PROGRESS
In a graph search, it is necessary to measure the progress made
by the machine towards its goal at any point in the course of its
motion. The measure should be sensitive to both the travel and the
state of the machine, thereby accounting for the motion that
is
realized as well as the potential for ocward motion.
Walking involves two distinct processes-the support phase, dur-
ing which a leg pushes the body forward, and the transfer phase,
through which a leg restores its kinematic margin. These two
processes must go hand in hand for the machine to advance. H ence,
for a straightline motion of the machine, we define its progress as
the mean of the distance covered by its CG and the average distance
covered by its legs from the beginning of motion or any reference
walking state. Following this definition, the progress from a starting
state
s
to the current state
n
may be shown' to be c + K ,
K , ) / 2 ,
where is the distance covere d by the
CG
of the machine, and K ,
and K , are the average kinematic margins of the legs in states n
and s, espectively.
In the case of a generalized motion, we carry forward the same
expression for progress with a slight reinterpretation of the first
term. c is now the travel of the machine, where K , and K , are
now the actual kinematic margins.
VIII . THEGRAPHSEARCH
TRATEGY
We have broken up the entire motion of the walking machine into
small motion segments. After completion of every motion segm ent,
the machine is given a choice of lifting or placing som e of its legs in
the form
of
connecting states. However, there is
no
judicious way to
choose from these states. What is required is a control structure that
will allow
us
to probe deeply into the future before deciding
on
which of the connecting states should actually be taken up for a
transition. A graph search
[8]
provides a method for doing this.
A graph consists of a set of nodes connected to each other
through a set of arcs. The nodes in this case will correspond to the
walking states of the machine, and the arcs will represent transitions
between such states. The g raph search procedure, which is based on
the A* algorithm
[8]
for generating an optimal route to the goal,
starts with the initial walking state as the sole node of the graph.
This node is expanded to form its offspring nodes,
which are
essentially its connecting states. These are included in a list of open
(i.e., unexplored) nodes. The open nodes are evaluated for their
promise or worthiness to be included in the solution, and the most
promising open node is removed from the open list and expanded.
This process continues, and the graph grows until the goal node is
reached.
The evaluation of the promise of a node proceeds on a heuristic
line. For example, in the gait generation problem, we try to
minimize the number of transfers of the legs to reach the goal.
Hence, a node
looks
most promising if the path passing through that
node seems to require the least number of transfers. The estimated
cost of reaching the goal through the node n may be given by
f n )
g n)
h ( n ) , where g n ) is the number of transfers from
the start node
s
to the node n and is directly available from the
generated graph, whereas
h n )
is a heuristic estimate of the number
of transfers necessary to reach the goal from node n. It is reason-
able to assume that h n ) should be approximately proportional to
the progress to be made to reach the goal from node n. The
proportionality constant is chosen to correspond to the quadruped
wave gait with zero stability margin. When h n ) is thus underesti-
mated, optimality of the solution is assured
[8].
To reduce the search effort. we limit the search tree to a certain
If
k,,
and
k,,
are the kinematic margins
of
the ith leg at the initial
walking state
s
and current state
n ,
respectively, the distance covered by the
this leg from states
s
to
n
will
be
c k n i
k,, ,
where c is the distance
covered by the CG of the machine during this period. The average distance
covered by a leg is then c ( K , K , ) , where K , I , k , , ) / 4 is the
average kinem atic margin of the machine at state
n
and likewise for K , . The
associated progress
of
the machine then evaluates
to
[ c
+ (c + K ,
K , ) ] / 2 ,
. e . ,
c + ( K , K , ) / 2 .
-
8/10/2019 instruentation
4/4
600
9
IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 6, NO.
5
OCTOBER 1990
1
11 12
I
I 1
~
Fig.
4.
Successive frames of the machine as it moves straight, takes a
sharp turn to its left, and then proceeds straight again. Only the states in
which a leg has either been lifted or placed have been shown. A leg,
which is not shown, is in the air.
depth (in terms of progress) with respect to the root. W henever the
graph tends to grow beyond this limit, the machine makes a
transition from the root towards the deepest open node in the graph,
its newly acquired state is redefined as the root, and the tree is
accordingly pruned. Because the search is confined to a limited
depth, the generated gait is only locally optimal.
IX. THEGAIT
GENERATIONLGORITHM
The algorithm is summarized below.
1
A
search graph consisting solely of the start node s (corre-
sponding to the initial walking state) is created, and s s put on a list
called
OPEN.
2)
If OPEN is empty, the program exits with the message cannot
advance. Otherwise, the first node from
OPEN
is removed. Let it be
n .
3) Expand n, generating offspring nodes corresponding to its
connecting states (see Section V) allowed by the terrain and include
them in OPEN. If no such state is found, loop back to step
2).
4 The progress to each of the nodes, which are generated in step
3),
are evaluated relative to the root. The node with the maximum
progress ( m u x p r o g ) is labelled as m ux n. If m ux p ro g exceeds a
prespecified value, or if the total number of nodes in the search tree
exceeds a certain number, the machine makes a transition from the
root towards m u x n . The node now occupied by the machine is
redefined as the root. The branches of the previous root that were
left out are removed from the tree, and their open nodes are
removed from
OPEN.
5)
Loop back to step
2).
The output of the program will be the sequence of walking states
through which the machine actually makes transitions.
The nodes in the OPEN list are maintained in the ascending order
of the cost evaluation function f n ) , nd a node is removed for
expansion only from the top. A new node is added at the appropriate
place in the list to maintain order.
X . COMPUTER
I M ULATI ON
The gait generation algorithm for generalized motion has been
implemented on a Norsk Data Computer ND-570 in Pascal. In the
test runs, the search tree was limited to a depth of unit progress and
to a size of 2000 nodes. The commanded motion segments corre-
sponded to a travel of about
0.05,
and the absolute stability margin
demanded was 0.025, where all these were measured in the unit of a
side of the reachable area of a leg. A leg was not allowed to be
lifted until the machine completed a travel
of
0.5.
Likewise, a leg in
transfer was not allowed to be grounded until the machine made a
travel of 0.1.
Fig. 4 hows the walking machine as it moves straight, takes a
sharp
turn
to its left around its
CG,
and proceeds straight again.
Only the states in which the leg has just been lifted or placed have
Fig.
5.
Successive frames of the walking machine as
it
takes a slow turn
to
its right along a circular arc on a terrain in which the marked regions are
not stepworthy. Only the states in which a leg has just been placed have
been shown.
been shown in the figure. The element of anticipation, which com es
through the graph search, is made obvious at frame 5 when leg is
placed in preparation of the coming rotation, or say at frame 11,
where, aga in, leg 1 has been placed keeping in mind the coming
translation.
Fig. 5shows the machine as it takes a slow turn to its right along
a circular arc on a terrain in which the marked areas are not
stepworthy. He re, only the states in which a leg has just been placed
have been shown.
Fig. 5 also shows how the machine selects
footholds from the available regions of the terrain to execute the
commanded motion with as few transfers as possible. The CPU time
used to compute the states in the figure was slightly more than a
minute.
XI.
CONCLUSI ON
We have developed the basic framework for the generation of
free gait through a graph search. Graph search, as a technique, is
fairly old and well known, and its relevance to gait generation is
obvious. Howev er, it remained unexplored, possibly because of the
associated computational complexity. In the present work, we have
demonstrated the feasibility and usefulness of this approach.
Our
treatment of generalized motion is simple and general. The
notion of progress should also prove useful in this area of research.
Improvem ents may be sought mainly in two areas-the foothold
selection algorithm, through a better understanding of the role of
stability and kinematic margin in such matters, and the leg state
transition rules, where stronger heuristics may reduce the search
time. The latter will prove
to
be crucial if this technique has to be
applied in the case of a hexapod machine.
REFERENCES
R . B. McGhee and
S . S
Sun, On the problem of selecting a gait for
a legged vehicle, in Proc. VI IFAC Symp. Automat ,
Contr.
Space (Armenian S . S . R . , USSR), Aug. 1974.
A. P. Bessnov and N. V. Umnov, The analysis of gaits in six legged
vehicles according to their static stability, in Proc. Symp. Theory
Practice Robots Manipulators (Udine, Italy), Sept. 1973.
R . B . McGhee and A. A. Frank, On the stability properties of
quadruped creeping gaits, Math. Biosci. , vol. 3 , no. -3 /4 , pp.
331-351, Oct. 1968.
E . I. Kugushev and V . S Jaroshevskij, Problems of selecting a gait
for an integrated locomotion robot, in Proc. Fourth I n t . Conf.
Artificial Intell. (Tbilisi, Georgian SSR, USSR), Sept. 1975, pp.
R. B. McGhee and G . I . Iswandhi, Adaptive locomotion of a
multilegged robot over rough terrain, IEEE Trans. Sysf . Man
Cybern, vol. SMC-9, no.
4
pp.
176-182,
Apr.
1979.
S Hirose, A study of design and control of a quadruped walking
vehicle, Int. J . Robotics Res., vol. 3 , no. 2, pp. 113-133,
Summer 1984.
D
E. Orin, Supervisory control of a multilegged robot,
I n f . J .
Robotics Res., vol. 1, no. I pp. 79-91, Spring 1982.
N. J . Nilsson, Principles
of
Artificial Intelligence, New York:
Springer Verlag, 1980.
789-793.