Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
522,5 KB
Nội dung
186 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS (robot) around simple closed curves. The key property will then be deduced: For a two-link arm, no matter how complex the arm motion around an actual physical obstacle in W -space, the corresponding virtual boundary in C-space presents a simple curve—that is, a curve with no self-intersections and double points. This will be shown to be true for each of the arms in Figure 5.1. With this property in hand, by transforming the motion planning problem from W -space to C-space, we will effectively make our problem similar to the one that was tackled in Chapter 3 for mobile robots. In fact, on a certain level of generalization, both problems look identical. The actual algorithms will differ due to a number of new issues that need to be worked out. Still, understanding the Bug family algorithms from Chapter 3 will help one grasp the algorithms for robot arms that we are about to develop. We can now sketch the idea behind a motion planning algorithm for a planar robot arm manipulator. It is easier to describe the operation in C-space; the actual operation in W-space proceeds accordingly. As one will notice, the sketch sounds much like the algorithm Bug2; deviations and complexities will be added later. At the beginning, the C-space arm image point moves along a simple M-line, which is a desired path from point S to point T , an equivalent of the straight-line M-line for the mobile robot (Section 3.3). During this motion, when (in W-space) some point of the arm body meets an obstacle, in C-space this corresponds to the image of M-line intersecting the obstacle’s virtual boundary. The point of intersection is said to define a hit point, H j ,wherej is the running index enumerating such points. We will show below that the virtual boundary is a simple curve, a curve with no self-intersections or double points. This being so, at the hit point the arm has a simple choice: to walk along the virtual boundary in one or the opposite direction along the curve. Since no information is available beforehand as to which of the two directions is better, one direction, called the local direction, will be chosen once and for all. While following the obstacle virtual boundary, the arm may meet the M-line again. If it does, and if this occurs at a distance (measured appropriately along the M-line) from point T shorter than the distance from the latest hit point H j to T , the arm will define a leave point , L j . Hit and leave points will play an important role in the path planning procedure. We will see below that these points come in pairs, (H j , L j ), j = 1, 2, For convenience, denote L o = S,Start, with no corresponding H o . The motion planning algorithm proper, the proof of its convergence, and the test for target reachability will emerge from our analysis of the described scheme and of C-space properties. Similar to the mobile robot case (Chapter 3), under our scheme the arm will need no beforehand information about the obstacles in order to move properly. The C-space presentation is used primarily for the analysis, the algorithm devel- opment, and the proof of convergence. No explicit mapping of any kind from W -space to C-space and no explicit calculation of C-space will ever take place before or during the actual arm motion. PLANAR REVOLUTE–REVOLUTE (RR) ARM 187 5.2 PLANAR REVOLUTE–REVOLUTE (RR) ARM Let us reiterate, with a bit more specifics of the RR-arm, the arm’s model given in Section 5.1.1. The arm consists of two links, l 1 and l 2 , and two revolute joints, J 0 and J 1 (Figure 5.2). Joint J 0 is fixed. Strictly for better visualization, links will be drawn as line segments. (As mentioned above, the shape of the arm links, or the fact of their being smooth or convex or concave, will be of no importance to the planning algorithm.) Link l i ,i = 1, 2, is hence a straight-line segment of length l i . It can rotate indefinitely about the corresponding joint producing an angle θ i , called the joint value.IfW -space (workspace) is free of obstacles, the arm endpoint b can reach any point within the W -space boundaries. The arm’s W -space is formed by a circle of radius (l 1 + l 2 ) (the outer circle, Figure 5.2) and by a circular “dead zone” (the inner circle, Figure 5.2) of radius |l 1 − l 2 |. The middle circle in Figure 5.2 is a locus of points reachable by joint J 1 . For a given position P of the arm endpoint in W-space, the corresponding pair of values (θ p 1 ,θ p 2 ), or the set of Cartesian coordinates of the link endpoints a p and b p , represent an arm solution (arm position) for P . It is easy to see that, in general, any position of the arm endpoint in W -space, except for points along the W -space boundaries, corresponds to two arm solutions. An obstacle in W -space is a closed curve of finite length homeomorphic to a circle; that is, it cannot have self-intersections or double points. This also means O J o a b q 1 q 2 l 1 l 2 J 1 q 1 = 0 q 2 = 0 Figure 5.2 Revolute–revolute (RR) arm. l 0 and l 1 are joints; θ 1 and θ 2 are joint values; b is the arm endpoint. 188 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS that for all practical purposes an obstacle can be of arbitrary shape. There can be only a finite number of obstacles present in W -space. Any disk or a straight line passing through W -space intersects a finite set of obstacles. Being rigid bodies, obstacles cannot intersect. Two or more obstacles may touch each other, in which case the arm will treat them as one obstacle. Only such configurations of sets of obstacles are considered for which, at any position of the arm, at least some arm motion is possible. Only continuous motion of robot links is allowed. At any given moment, the arm knows its current coordinates θ 1 and θ 2 ,as well as coordinates of the target position T . The starting position S is known to be reachable; that is, when the arm is in the position S, no arm links intersect any obstacles. It is not known whether position T is reachable and, if so, whether T can be reached from S. The arm is said to be moving in free space when it has no contacts with obstacles. Repeating the description given in the section above, the arm is assumed to be capable of the following actions: 1. Moving the arm endpoint through a prescribed simple curve (called main line or M-line) that connects points S and T . 2. Identifying the point(s) of contact on the arm body when the arm hits an obstacle. 3. Following the obstacle boundary. The first operation implies that the arm is capable of computing coordinates of consecutive points along the M-line and transforming them into the corresponding pairs (θ 1 , θ 2 ). The purpose of the second operation is to provide information needed to pass around an obstacle. This is done with the help of the arm’s tactile sensing. When at least one point of an arm link is in contact with an obstacle, relative coordinates of the point(s) of contact can be identified in the link reference system. Note that the identification is a local operation that does not require any additional information about the environment. Assume, for example, that the arm is covered with a “skin” with densely spaced tactile sensors, so that when a sensor contacts an obstacle, the point of contact on the arm body is known. For the third operation, imagine that, while in contact with an obstacle, the arm follows the obstacle boundary as if some weak force pushes it against the obstacle. Therefore, at any moment during such motion, there is a variable point or points of contact between the obstacle boundary and the arm body. 1 If the arm endpoint follows the obstacle up to the W -space boundary—for example, points on the outer circle in Figure 5.2—it is not clear whether the arm is still in contact with the obstacle on the boundary. To avoid an ambiguity, assume that no point of the W -space boundary can be a point of contact between an obstacle and the arm. 1 A similar ability is considered in works on compliance control of robot wrists (see, e.g., Ref. 104). PLANAR REVOLUTE–REVOLUTE (RR) ARM 189 5.2.1 Analysis Here we will expand to our RR arm manipulator the theory developed in Section 3.3 for mobile robots. One important part of that theory is making use of distinc- tive topology of obstacles—namely, the fact that any obstacle is a simple closed curve. Exploiting this fact resulted in elegant motion planning algorithms with guaranteed convergence. We now intend to establish a similar characteristic of obstacles faced by our RR arm—namely, that the arm’s complete passing around an obstacle presents some sort of simple closed curves. As we will soon observe, this is not so in the arm workspace. Simple examples will show that paths produced by the arm endpoint when moving around even simple obstacles are complex and self-intersecting. We will also see, however, that the said property holds for all virtual obstacles in C-space. It will further be shown that the number of such closed curves per obstacle is limited—a fact that is important for the algorithm completeness. These facts will become the basis of the algorithm design. We will then study the nonuniqueness of choices for the M-line caused by peculiarities of the arm kinematics, and establish a criterion for choosing appropriate M-lines. Finally, we will address one side effect of the developed motion planning procedure, which can sometimes cause the arm to repeat parts of its path. Obstacles in W-Space. Consider an example of the arm interaction with obstacles in the arm workspace (W -space). The formal underpinnings of our observations will become clearer in the subsequent analysis of C-space. We begin with a simple circular obstacle A in the arm’s workspace (Figure 5.3). Starting at position S, the arm moves its endpoint along the M- line (S, T ) toward the target position T . In this example the M-line happens to be a straight line. Denote by (a i ,b i ) the ends of link l 2 , where point b i is the arm endpoint. After traveling for a while in free space, at some moment the arm will contact obstacle A, at which time the link l 2 position is (a 2 ,b 2 ), and the point of contact on A is b . Now the arm will attempt to pass around the obstacle in order to continue its motion along the M-line. Observe that here the arm has two options for maneuvering around the obstacle while maintaining a contact with it. With option 1, starting at the link l 2 position (a 2 ,b 2 ), the arm endpoint moves along the curve b 2 ,b 3 , ,b 6 ,b 7 ,b 8 . Soon thereafter (between points b 8 and b 9 ), the arm endpoint encounters the M-line (S, T ) and can continue moving along it toward T .WhenatT , the position of link l 2 is (a T ,T). With option 2, starting again at point b 2 , the arm endpoint passes through the curve b 2 ,b 14 ,b 13 ,b 12 . At point b 12 the arm endpoint will encounter the M-line and then continue along it toward T .WhenatT , the position of link l 2 will be (a T ,T). In other words, depending on the option taken, the arm endpoint may encounter the M-line at different points, and the arm may consequently arrive at point T with different positions of its links. Notice that we can accommodate this discrepancy: For example, when moving under option 1, after passing point b 8 and reaching 190 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS B A A B T S P 2 a 13 a 14 a 1 a 2 a 3 a 5 a 6 a 8 a 9 a 7 O P 1 a 4 b 7 b 2 b 3 b 4 b 5 b 6 a 10 a 11 a 12 b 8 b 9 b 10 b 11 b 12 b 13 b 14 b T a' T a T '' b' b'' b 1 Figure 5.3 Obstacles A and B form “shadows”; the arm endpoint cannot reach points inside a shadow. For example, point P 1 is in the shadow of the circular obstacle A and thus cannot be reached. The shadow of the circular obstacle B forms two disconnected “subshadows.” the M-line, the arm endpoint can continue through points b 9 ,b 10 ,b 11 , meeting the M-line again at point b 12 as under option 2. In fact, when starting at point b 2 under any of the two options, if one con- tinues “rotating” the arm around obstacle A while keeping in contact with it, the arm endpoint will make a complete closed curve, passing through the points b 2 ,b 3 ,b 4 ,b 8 ,b 9 ,b 13 ,b 14 and eventually arriving at the same point b 2 . This indicates that the paths produced under both options are complementary to each other: When added together, they form a closed curve. Regarding this curve, consider the area whose curvilinear boundary passes through points b ,b 2 ,b 3 ,b 4 , then the segment b 4 ,b 10 of the workspace boundary, then points b 10 ,b 9 ,b of our curve, and finally the smaller part of the obstacle A boundary between points b and b . This area is called the shadow of obstacle A: Though this is a part of free space, no point (such as P 1 ) inside this area can be reached by the arm endpoint. This suggests that an obstacle shadow will be perceived by the arm as an obstacle, as real as an actual physical obstacle. The arm cannot penetrate either PLANAR REVOLUTE–REVOLUTE (RR) ARM 191 a 2 a 3 a 1 a 4 a 5 a 6 a 8 a 7 a 10 a 9 a 11 a 12 a 14 a 13 a b 3 b 1 b 2 b 4 b 6 b 7 b 8 b 9 b 10 b 11 b 12 b 13 b 14 b 15 b 16 b 5 A B C q = 0 θ 1 ’’ θ 1 ’ a 16 a 17 O b 17 Figure 5.4 An example of interaction between obstacles. The shadow (shaded area) behind obstacle A is the result of interaction between obstacles A and B. If the arm moves through the positions (a 1 ,b 1 ), (a 2 ,b 2 ), ,(a 17 ,b 17 ), at any moment it is in contact with either obstacle A or B. This means that the arm will perceive these two obstacles as one obstacle. Because of obstacle C, link l 1 cannot realize any angle values θ 1 in the range θ 1 <θ 1 <θ 1 . of them. The shape of a shadow depends on the shape, size, and position in W -space of the corresponding actual obstacle that creates the shadow, as well as on the arm links’ shapes and dimensions. An obstacle can form disconnected shadows, as in the case of obstacle B (Figure 5.3). Or, obstacles can interact in forming shadows; this happens, for example, when two or more points of the arm body touch two or more actual obstacles simultaneously, as at position (a 8 , b 8 ) in Figure 5.4. Definition 5.2.1. A virtual obstacle X is an area (or areas) in W -space, no points of which can be reached by the arm endpoint because of the arm’s possible inter- ference with the actual obstacle X. Thus a virtual obstacle consists of the corresponding actual obstacles and their shadows. In W -space a virtual obstacle forms one or more compact areas (see Figure 5.4). Whereas topologically this combination presents little of interest in W -space, we will see below that it possesses interesting properties in the arm’s C-space. 192 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS Definition 5.2.2. Passing around an obstacle presents a continuous motion of the arm, during which the arm is constantly in contact with the corresponding physical obstacle(s). It is clear from Figure 5.4 that two or more actual obstacles may be interpreted by the arm as a single virtual obstacle. In Figure 5.4, at any position from the set (a 1 ,b 1 ), (a 2 ,b 2 ), ,(a 17 ,b 17 ) the arm is in contact with at least one of the actual obstacles A and B. Hence the two obstacles will be interpreted as one. Definition 5.2.3. A virtual line is a curve in W -space that the arm endpoint fol- lows when passing around an obstacle. The virtual line forms the boundary of a virtual obstacle in W -space. A virtual line is not necessarily a smooth curve. For example, if the arm endpoint follows a sharp corner on an obstacle, or if the arm contacts some obstacle while passing around another obstacle [as in the link position (a 8 ,b 8 ), Figure 5.4], the virtual line may form sharp turns. Nor is a virtual line necessarily a non-self-intersecting curve (see virtual boundary of obstacle B, Figure 5.3), differing in this respect from the boundaries of physical two-dimensional objects. We will discuss this issue later, when analyzing the arm C-space properties. Points of contact on the arm may undergo a discontinuous jump when passing around obstacles. This can happen because of the shapes of obstacles and arm links involved, or because of the arm–obstacle interaction. In Figure 5.4, for example, during link l 2 motion through positions (a 1 ,b 1 ), (a 2 ,b 2 ), and so on, an instant before position (a 8 ,b 8 ) link l 2 is in contact with obstacle A; an instant after position (a 8 ,b 8 ) the link is in contact with obstacle B. Accordingly, in this short period the contact point on the arm jumps from a point of contact on one side of link l 2 to a completely different point on the link’s other side. Note, however, that even in such cases there will be no discontinuity in the virtual curve. 2 For example, in the area of point b 8 , which corresponds to the jump of the contact point mentioned above (Figure 5.4), the virtual line remains continuous. There will be more on the virtual line continuity in our analysis of the arm C-space. Observe also that some distinct pieces of the virtual line may be associated with the same physical curve. Such is, for example, a part of the virtual line (b 14 ,b 8 ) (Figure 5.3), which is a part of obstacle A boundary. When trying to do a complete “rotation” by the arm around A, the arm endpoint will follow the curve segment (b 14 ,b 8 ) twice, once in each of the two directions. The requirement of continuous contact while passing around the obstacle is equivalent to adding a constraint on the arm motion. In general, the arm’s position relative to obstacles is described by one of these three situations: 1. No contact with obstacles takes place; the motion is unconstrained, and all points in the vicinity of the arm endpoint are available for its next position. 2 Given the physics of the underlying phenomenon, this is not surprising: Physical motion is contin- uous, so the arm endpoint must be moving through a continuous curve. PLANAR REVOLUTE–REVOLUTE (RR) ARM 193 2. One degree of freedom of the system (not necessarily one arm link) is con- strained by an obstacle boundary; then only points along the virtual line—that is, a one-dimensional curve—are available for the next positions of the arm endpoint. 3. Two degrees of freedom of the system are constrained: No motion is possible. Because of our model’s assumption that some motion is always possible, case 3 is impossible. Case 2 thus includes all cases of interaction between the arm and obstacles. Obstacles in C-Space. Configuration space (C-space) of our RR arm manip- ulator is presented as the surface of a common two-dimensional torus defined by two independent angular variables, θ 1 and θ 2 [57]. Values of these variables are the arm joint values, respectively. An arm position P with coordinates (joint val- ues) θ p 1 and θ p 2 in W -space corresponds to a point P with the same coordinates on the surface of the C-space torus. Continuity is preserved in this mapping: A small change in the position of arm links in W-space translates into a small displacement of the corresponding image point in C-space. A closed curve in W -space has its closed curve counterpart in C-space [105]. For an M-line in W -space, there is an M-line image in C-space (Figure 5.5). S T M 1 M 2 M 3 M 4 q 1 = 0 q 1 T q 2 T q 2 q 2 + q 1 + q 1 − Inner equator Outer equator − Figure 5.5 C-space torus. Zeroes and positive and negative directions for both angles θ 1 and θ 2 are shown. For a given θ 1 , the point θ 2 = 0 lies at the corresponding point of the torus’s outer equator. For example, coordinates of point T are (θ T 1 ,θ T 2 ). Points M 1 ,M 2 ,M 3 ,andM 4 are the middle points of four M-lines, the four “straight line” routes between points S and T . 194 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS A geodesic curve connecting points S and T on the surface of the C-space torus corresponds to a straight line in the plane of variables (θ 1 ,θ 2 ). This geodesic curve can therefore be used as the “shortest” M-line between positions S and T . Because of the torus topology, in general, four such “shortest” M-lines can appear. Shown in Figure 5.5 are these four M-lines, their middle points, and positive and negative directions and zero points for both variables (θ 1 ,θ 2 ). With appropriate positioning of points S and T on the torus, all four M-lines can be made indeed equal. Otherwise, each M-line presents the “shortest” curve for a given set of directions of change of variables (θ 1 ,θ 2 ). Since in general every position of the arm endpoint corresponds to two posi- tions of the arm, defining uniquely the image of a virtual line in C-space will require some additional information about the corresponding arm positions. Definition 5.2.4. A virtual boundary is a curve in C-space that represents the image of the corresponding virtual line. Clearly, the virtual boundary corresponds to one out of two sets of arm posi- tions tied to the virtual line. Where is the other set? The other set is physically unrealizable: In each such position the arm links would cross through the corre- sponding obstacle. The virtual boundary separates an area of C-space occupied by the virtual obstacle from the rest of C-space. A finite number of actual obstacles in W -space produce a finite number of virtual obstacles in C-space. Each intersection of the M-line with the virtual line in W -space has its counterpart intersection of the M-line image with the virtual boundary. Unlike virtual lines, virtual boundaries cannot form self-intersections or double points. This means that at any point during the motion along the virtual boundary in C-space, there is one and only one possible direction for continuing the motion. Therefore, the following statement holds. Lemma 5.2.1. A virtual boundary can consist of only simple curves. To define the virtual boundary corresponding to the virtual line of obstacle A in Figure 5.3, points a 1 to a 14 have to be added, coordinates of the endpoint of link l 1 ; the respective positions (a i ,b i ) of link l 2 are shown in the figure. Note that the coinciding points on the virtual line correspond to different positions of link l 2 .Thatis,inC-space all points of the virtual boundary are distinct. The same is true for obstacle B. Theorem 5.2.1. A virtual boundary can consist of only simple closed curves. (See the proof in the Appendix to this chapter.) This statement will be pivotal in the design of the motion planning algorithm for an RR arm. Formally, the statement means that no matter what direction is chosen for following the virtual boundary, eventually the whole curve will be PLANAR REVOLUTE–REVOLUTE (RR) ARM 195 explored, and the arm will return to the position where it started. The theorem does not tell us how many simple closed curves may constitute a given virtual boundary. Can a virtual boundary consist of two, three, or an infinite number of simple closed curves? We will need to address this question, because it is very important from the algorithmic standpoint. Following a simple virtual boundary is as advantageous as it was for the Bug family algorithms in Section 3.3 to follow the simple closed curves of obstacles, and for the same reason: When the arm meets an obstacle, one of only two possi- ble directions for passing around it will have to be chosen. Since no information about the obstacles is available, neither of the two directions is preferable to another. Definition 5.2.5. A local direction is a predefined direction for passing around a virtual obstacle in C-space; it can be either right or left. Here “right” and “left” are defined in the same natural way as we did with the Bug algorithms. Looking at the scene from above, going left means going along the curve clockwise, that is having the obstacle to one’s right, and going right means going along the curve counterclockwise—that is, having the obstacle to one’s left. The motion planning algorithm (which is still to be formulated) will proceed as follows. The arm’s endpoint starts moving along the M-line from its starting position S toward the target position T . (In C-space the arm and both positions S and T are points.) When during this motion the arm encounters a virtual boundary—which means the arm contacts an obstacle—it defines on it a hit point H. The arm then starts passing around the obstacle using the chosen local direction. Since in doing so it follows a simple closed curve, it will eventually either reach point T , or return to the hit point H , or meet the M-line again. In the latter case, if the distance, as measured along the M-line, between the point where the arm meets the M-line and T is shorter than that between the hit point H and T , the arm defines this point as a leave point L. In Figure 5.3 the arm position (a 2 ,b 2 ) is the hit point H 1 , and position (a 12 ,b 12 ) is the leave point L 1 . (As mentioned above, depending on the chosen local direction and the way of passing around the obstacle, some other point might be defined as the leave point; this option will be discussed further later.) We now turn to the question of the maximum number of simple closed curves that may form a virtual obstacle. Unlike some special two-dimensional nonori- entable surfaces, such as the Moebius strip and Kline bottle, the surface of the common torus is topologically an orientable surface [57]. By continuously mov- ing on one side of an orientable surface, a point robot will never find itself on the other side of the surface (which can happen on nonorientable surfaces). This fact follows from the Jordan Curve Theorem [57, 105], according to which any closed curve homeomorphic to a circle drawn around and in the vicinity of a given point on an orientable surface divides the surface into two separate domains, for which the curve is their common boundary [57]. [...]... a6 b8 a2 a8 b9 b4 b a4 3 b5 a1 b2 a9 b1 a5 (a) 9 8 5 10 4 3 1 6 2 7 (b) Figure 5.10 (a) W -space and (b) C-space with an obstacle whose virtual boundary in C-space is formed by two nonintersecting closed curves The curves’ ranges are C1 = 2π, C2 = 2π, making this another example of Type II cases shown in Figures 5.8d and 5.8e Each point Pi , i = 1, , 10, on the obstacle virtual boundary in C-space... generic proximity sensing hardware, such that every point of the arm body can sense approaching obstacles Algorithmic Issues How do we incorporate proximity sensing in the RR-Arm Algorithm or similar motion planning procedures? In the discussion on sensing versus motion planning for mobile robots (Section 3.6), we assumed that the robot has a circular sensing range, with some limited radius of sensing For... 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 considered is shown in Figure 5.14 The path created by the arm endpoint on the way from S to T is shown... cases shown in Figure 5 .8 The case in Figure 5.8a corresponds to a Type I obstacle; the four remaining cases correspond to Type II obstacles The cases in Figure 5.8b and 5.8c are topologically equivalent; the cases in Figure 5.8d and 5.8e are equivalent as well From the path planning standpoint, all five cases are distinct and are treated in the algorithm separately 200 MOTION PLANNING FOR TWO-DIMENSIONAL... ARM MANIPULATORS q2 = 0 b l2 J1 q2 a q1 l1 A Jo Figure 5.9 q1 = 0 O Obstacle A forms in C-space a Type II obstacle type shown in Figure 5.8c Figures 5.3 and 5.6 provide examples of the Type I case of Figure 5.8a An example for the Type II case in Figure 5.8b is shown in Figure 5.7 The Type II case shown in Figure 5.8c appears, for example, when an obstacle in W space presents a ring whose center is in... the M-line again (point 2); it follows the M-line and very soon meets obstacle D; it moves along D until it meets obstacle C (e.g., point 3); while following C, it meets again obstacle D (point 4); it follows D (points 5, 6, 7, 8) until it meets the M-line again; and finally it proceeds along M-line to T PLANAR REVOLUTE–REVOLUTE (RR) ARM 213 B S l2 1 3 A 1 S 2 2 4 3 l1 C T 8 5 D O 4 7 6 T 7 6 8 5 Figure... real time Note that although the M-line plays a crucial role in the RR-Arm Algorithm’s workings, in this example the arm actually spends very little time moving along the M-line; that is, only a small part of the arm’s path coincides with the M-line Most of the time is spent passing around obstacles 5.2.5 Motion Planning with Vision and Proximity Sensing Similar to how in Section 3.6 VisBug algorithms... -space 202 MOTION PLANNING FOR TWO-DIMENSIONAL ARM MANIPULATORS curves of a Type II obstacle have the same range (see Figures 5.8b to 5.8e) For a given obstacle, therefore, the term “arm joints range” is equivalent to the term obstacle range For a Type II obstacle, its range is (n1 · 2π, n2 · 2π), with either ni = 0, |n3−i | = 1 (Figures 5.8b and 5.8c) or |ni | = 1, |n3−i | = 1, 2, (Figures 5.8d... obstacle Also shown in Figure 5.13 is the M-line (S, T ), chosen as a straight line in a “flatten” C-space Let us choose “right” as the local direction for the arm’s passing around an obstacle Although the sensing, the motion, and the actual algorithm procedure will be happening in W -space, to understand what happens under this procedure it is better to follow the generated path first in C-space As we... the RR-Arm Algorithm performance in an emulated “industrial” work cell The arm is required to move from the starting position (S, S) to the target position (T , T ), along the M-line (S, T ) (dashed line) that presents the shortest path between S and T in C-space The arm workspace is crowded with four obstacles A, B, C, D Shown also are some intermediate positions of link l2 , (1, 1) to (8, 8) No a . in W-space translates into a small displacement of the corresponding image point in C-space. A closed curve in W -space has its closed curve counterpart in C-space [105]. For an M-line in W -space,. more specifics of the RR-arm, the arm’s model given in Section 5.1.1. The arm consists of two links, l 1 and l 2 , and two revolute joints, J 0 and J 1 (Figure 5.2). Joint J 0 is fixed. Strictly. MANIPULATORS B A A B T S P 2 a 13 a 14 a 1 a 2 a 3 a 5 a 6 a 8 a 9 a 7 O P 1 a 4 b 7 b 2 b 3 b 4 b 5 b 6 a 10 a 11 a 12 b 8 b 9 b 10 b 11 b 12 b 13 b 14 b T a' T a T '' b' b'' b 1 Figure 5.3 Obstacles A and B form “shadows”; the arm endpoint cannot