Page 235 - Sensing, Intelligence, Motion : How Robots and Humans Move in an Unstructured World
P. 235
210 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS
seemingly similar cases can be more trying for the robot and may require a more
elaborate exploration.
How does this all relate to the actual motion of the arm manipulator in
W-space? The actual path in W-space whose reflection in C-space we just con-
sidered is shown in Figure 5.14. The path created by the arm endpoint on the
way from S to T is shown in a dash line. The direction of motion is indicated
by arrows; also shown are the intermediate positions of the arm that appear
in Figure 5.13. It is a good exercise to try to follow the path in Figure 5.14,
going through the same positions that we have followed in C-space: posi-
tions S, H 1 , 3,L 1 ,H 2 , 6, 5, 4,H 1 , 3,L 1 , 2, 1, 12, 11,L 2 ,T . Note that the local
cycle—the path segment that includes positions H 1 ,3, and L 1 —has been passed
twice.
As an exercise, try to see what kind of path would be created if the local
direction happened to be “left.”
To reiterate, the actual planning of the path by the motion planning algorithm is
done completely in the workspace (W-space), based on the sensing data from the
arm sensors. No preliminary exploration or computation of the C-space virtual
obstacles takes place. If the target position cannot be reached because of the
interfering obstacles, the reachability test will conclude so after some limited
exploration.
5.2.2 Algorithm
With all the necessary details ready, the whole motion planning procedure for
the planar arm of Figure 5.2 can now be formulated. The name for it would
be the RR-Arm Algorithm. Looking ahead, for the reasons that will become
clear later, the algorithm can also serve two-link arms with other kinematics;
hence it also deserves a more general name, the Two-Link-Arm Algorithm.Some
preliminaries:
• The hit points H j and leave points L j are numbered in the order of their
being defined along the path; L o = S.
• Any local direction, left or right, can be chosen for the arm’s passing around
an obstacle. For the sake of specificity, let us choose “right.”
• If a new M-line is introduced, the arm starts again at point S,and the
numbering starts over.
• Distance d(P, Q) between the arm positions P and Q is the Euclidean
distance in the plane of variables (θ 1 ,θ 2 ); the length of an M-line segment
is defined similarly.
• In the case of a Type II obstacle, a flag is used to indicate that one of the
two virtual boundary’s closed curves has been already processed.
• The test for target reachability is explicitly built into the algorithm’s Steps
5a and 5b. The test is based on the necessary and sufficient condition for
target reachability described in Section 3.3.2.