• 沒有找到結果。

Adjusting joint angle in Step 3

4.3 Implementation Details

4.3.3 Adjusting joint angle in Step 3

Once the minimum potential position of lnknis determined with Step 2 of End effector to GP, another univariant procedure, which allows the distal link to adjust its orientation with

2To move linkn such that the potential will have maximum rate of reduction, −u can be chosen as the projection of

f1+

f2 on GP .

p

Figure 4.4: Sliding p on GP10, by translating lnkn to reduce the repulsive potential.

end-effector p fixed in position is performed to reduce the potential further, as shown in Fig. 4.3(c). Under such a constraint, the distal link can rotate with respect to p to reduce the repulsive potential. The direction in which the distal link should rotate is determined by the repulsive torque experienced by the distal link with respect to p. Let τn be the repulsive torque experienced by lnkn with respect to p due to the repulsion between lnkn and let f2, as described in the previous subsection, be the force exerted on Jn−1 due to the repulsive torque between other manipulator links and obstacles. The resultant torque experienced by lnkn with respect to p is equal to

τn = τn+ f2⊥·ln (4.3)

where ln is the length of lnkn and f2⊥ is the projection of f2 onto a plane perpendicular to lnkn.

To find the minimum potential orientation of lnkn for p fixed in position, gradient-based binary searches are performed using the projection of τn along three orthogonal axes of rotation, one axis at a time. For each binary search, the initial rotating angle is arbitrarily chosen as 5o, while the accuracy in identifying the 1-D potential is chosen as 0.5o. Each time the orientation of lnkn is changed, the orientation of the rest links are adjusted recursively for connectivity and for minimum potential using τn−1, τn−2...., etc. Step 3 ends if a binary search using τn results in a negligible change in the orientation of lnkn, i.e., 0.5o.

As for the computation complexity, if every link needs k binary searches on the average to find a best orientation, the total number of binary searches needed for the derivation of

GP1 GP2 GP3

(a) (b)

Figure 4.5: A path planning example for a 6-link manipulator in a 3-GP workspace. (a) The initial configuration. (b) The final configuration.

the minimum potential configuration of an n-link manipulator is equal to

k1 + k2+ · · · + kn−2 = (kn−1− k)/(k − 1) (4.4) which appears to have a fairly large value. Fortunately, much lower computation complexity is often observed, as in the examples considered in next section.

4.4 Simulation Results

In this section, simulation results are presented for path planning performed on Pentium III (1GHz) for manipulators in 3-D environment. Figs. 4.5(a)(b) show the initial and final con-figurations, respectively, of the path obtained for a 6-link manipulator in a 3-GP workspace wherein the GPs are shown as gray polygons. While Fig. 4.5(a) shows the crooked ini-tial manipulator configuration, Fig. 4.5(b) shows that the end-effector reaches the final GP safely. The simulation takes a total of 2.924 seconds to plan an 8-configuration collision-free path. Figs. 4.6(a)-(d) show side views of the initial configuration of the manipulator, as well as intermediate configurations as its end-effector reaches each of the three GPs. Links of the manipulator basically lies in the middle of the workspace due to the repulsive potential model. Fig. 4.7 shows complete as well as partial manipulator trajectories. In order to show the manipulator trajectory more clearly, configurations obtained by End Effector to GP are shown in different gray levels, i.e., the initial configuration is shown in white while final configuration is shown in black. It is readily observable that these trajectories are safe and smooth.

Figs. 4.8(a)-(c) show the initial and final configurations of the path planning for another 6-link manipulator stretching into a tapered passage with 4 GPs. The passage makes up,

(a) (b) (c) (d)

Figure 4.6: Side views of the initial configuration of manipulator, as well as intermediate configurations as its end-effector reaches each of the three GPs in Fig. 4.5.

(a) (b) (c) (d)

Figure 4.7: (a) The complete manipulator trajectory. (b) The partial trajectory between Figs. 4.6(a) and (b). (c) The partial trajectory between Figs. 4.6(b) and (c). (d) The partial trajectory between Figs. 4.6(c) and (d).

GP1

GP2

GP3

GP4

(a) (b) (c)

Figure 4.8: A path planning example for a 6-link manipulator in a 4-GP workspace. (a) The initial configuration. (b)-(c) Two different views of the final configuration.

down and right turns at GP1, GP2 and GP3, respectively. Fig. 4.8(a) shows the initial configuration of the manipulator which lies in a plane parallel to GP1. Figs. 4.8(b)-(c) show top and side views, respectively, of the final configuration indicating that the end-effector of the manipulator reaches the final GP safely. Figs. 4.9(a)-(e) show the top views of the initial configuration of the manipulator, as well as intermediate configurations as its end-effector reaches each of the four GPs. Figs. 4.10(a)-(e) shows complete as well as partial manipulator trajectories. The planned manipulator path is also observed to be a safe and smooth. The simulation takes a total of 26.648 seconds to plan the 12-configuration collision-free path and the computation time for each configuration is shown in Table. 4.1. While the difference in the amount of CPU time required to compute different manipulator configurations are mostly insignificant, it takes much more time to compute the first configuration. This is because the first configuration, which can be seen clearly in Fig. 4.10(b), requires the most adjustments in manipulator joint angles from the previous (initial) configuration.

Figs. 4.11(a)-(c) show the initial (from two different views) and final configurations, respectively, of the path obtained for a 6-link manipulator working in a blocked workspace.

Figs. 4.12(a)-(c) show side views of the intermediate configurations as its end-effector reaches each of the three GPs. Figs. 4.13(a)-(c) show top views of the same manipulator configura-tions. It can be seen clearly from Figs. 4.12 and 4.13 that the end-effector of the manipulator reaches the three GPs safely. Figs. 4.14 and 4.15 show side views and top views, respec-tively, of some partial trajectories of the manipulator. The safety and smoothness of the manipulator trajectory is also observed. The simulation takes a total of 34.199 seconds to plan a 11-configuration collision-free path. Because the workspace is more complex, the path planning is more time-consuming than other examples.

(a) (b) (c) (d) (e)

Figure 4.9: Top views of the initial configuration of the manipulator, as well as intermediate configurations as its end-effector reaches each of the four GPs in Fig. 4.8.

(a) (b) (c) (d) (e)

Figure 4.10: (a) The complete manipulator trajectory. (b) The partial trajectory between Figs. 4.9(a) and (b). (c) The partial trajectory between Figs. 4.9(b) and (c). (d) The partial trajectory between Figs. 4.9(c) and (d). (e) The partial trajectory between Figs. 4.9(d) and (e).

Table 4.1: Computation time for manipulator configurations shown in Fig. 11.

computation times (sec) config.1: 5.988 config.7: 1.963 config.2: 3.245 config.8: 1.612 config.3: 1.612 config.9: 1.472 config.4: 2.184 config.10: 1.502 config.5: 1.592 config.11: 2.374 config.6: 1.492 config.12: 1.612

total time: 26.648

GP1

GP2

GP3

(a)

GP1

GP2

GP3

(b) (c)

Figure 4.11: A path planning example for a 6-link manipulator in a 3-GP blocked workspace.

(a)-(b) Two different views of the initial configuration. (c) The final configuration.

(a) (b) (c)

Figure 4.12: Side views of the intermediate configurations as its end-effector reaches each of the three GPs in Fig. 4.11.

(a) (b) (c)

Figure 4.13: Manipulator configurations shown in Fig. 4.12 observed from a different viewing angle.

(a) (b) (c)

Figure 4.14: (a) The partial trajectory between Figs. 4.11(a) and 4.12(a). (b) The partial trajectory between Figs. 4.12(a) and (b). (c) The partial trajectory between Figs. 4.12(b) and (c).

(a) (b) (c)

Figure 4.15: Partial manipulator trajectories shown in Fig. 4.14 observed from a different viewing angle.

4.5 Summary

In this chapter, a potential-based algorithm for a robot manipulator is proposed to solve path planning problems in variant 3-D workspace. The proposed algorithm uses an artificial potential field to model the workspace wherein obstacles surfaces are assumed to be charged uniformly and the manipulator is represented as a set of charged sampling points. The repulsive force and torque between manipulator and obstacles thus modeled are analytically tractable, which makes the algorithm efficient. To give a general direction of the path, a sequence of GPs to be reached by the manipulator are assumed to be given in advance in the workspace. As a GP is an intermediate or final goal for the end-effector of a manipulator to reach, it also helps to establish certain motion constraints for adjusting manipulator configuration during path planning. According to such constraints, the proposed approach derives the path for a manipulator by adjusting its configurations at different locations along the path to minimize the potential using the above force and torque. Simulations show that a path thus derived is always spatially smooth and effective. Since the proposed approach uses workspace information directly, it is readily applicable to manipulators of high DOFs.

While only the static environments are considered in this chapter, the proposed approach can be extended to workspace of moving obstacles with essentially no change in the path planning algorithm.

Chapter 5

Potential-based Path Planning of Articulated Robots with Moving Bases in 3-D Environments

5.1 Overview

In this chapter, the algorithm of path planning of articulated robots by using potential field model presented in [1] to model the workspace is proposed. The proposed approach is similar to that done in 3-D manipulator mentioned in Chapter 4. In this algorithm, a sequence of predetermined GPs are also used to provide the robot a general direction to move forward and also help to establish certain motion constraints for adjusting robot configuration during path planning. A collision-free path of a robot will then be obtained by locally adjusting the robot configuration to search for minimum potential configurations using the force and torque. While the base of a manipulator is fixed, the base of an articulated robot is movable.

Since the base of an articulated robot is not fixed, the force exerted on a link due to the torque of other links does not longer exist. Thus, a sequential planning strategy [60] is adopted to speedup the computation.

The algorithm for articulated robot is proposed in Sec. 5.2. An implementation of the proposed approach based on a sequential planning strategy is presented in Sec. 5.3. In Sec. 5.4, simulation results are presented for path planning performed for robots in different 3-D environments. Sec. 5.5 has a discussion about GPs. Sec. 5.6 gives conclusions of this work.

Figure 5.1: A 3-D articulated robot is to move toward the goal by sequentially traversing a sequence of GPs.

Leading Tip J1 J2

lnk1 lnk2 lnk3

Figure 5.2: The leading tip, joints and links of a 3-D articulated robot with a moving base moved toward the goal.

5.2 The Proposed Path Planning Algorithm

In this section, the application of the potential model reviewed in the previous section to path planning of 3-D articulated robots with moving bases will be discussed. Unlike some c-space based approaches, which often require expensive preprocessing to construct the c-space, the proposed approach uses the workspace information directly. The approach computes repulsive force and torque experienced by each rigid component, e.g., a link, of a 3-D articulated robot. A collision-free path of the articulated robot can then be obtained by locally adjusting its configuration along the path for minimum potential using these force and torque. In this thesis, it is assume that links of the articulated robot are connected with spherical joints since the high DOF of such joints can take full advantage of the proposed potential minimization algorithm.

For a rough description of the path of an articulated robot, the proposed approach iden-tifies one or more guide planes (GPs) as its final or intermediate goals in the 3-D workspace.

The GPs are polygons among obstacles in the free space, providing the articulated robot a general direction to move forward. In this thesis, it is assumed the sequence of GPs are given in advance. Usually, for an elongated free space passage, like the one shown in Fig. 5.1, the GPs can be obtained as a subset of the cross-sections associated with the generalized cylinder [56] representation of the passage (see Fig. 5.1). As for a description of the configuration of the articulated robot, an n-link articulated robot is represented by its leading tip and the n − 1 joints, as shown in Fig. 5.2. A sequential and collision-free traversal of a given sequence of GPs by these control points (and the links) is regarded as a global solution of the path planning problem of the articulated robot. In the planning procedure discussed next, intermediate GPs will also be added along the path each time when a given GP is not directly reachable.

5.2.1 Basic Procedure of Path Planning

In this thesis, the proposed path planning approach derives a series of minimum potential configurations along the path of an articulated robot by locally adjusting its configuration for minimum potential using the results reviewed in Sec. 2.2. Assuming that a guide plane GP1 is given as an intermediate goal, the basic path planning procedure for moving the leading tip, p0, of an articulated robot onto GP1 include (see Fig. 5.3):

(i) Translate links of the articulated robot to move p0 toward the GP1. If p0 can not reach GP1 directly, e.g., due to collision, an intermediate plane GP10 is inserted. (Fig. 5.3(a)) (ii) Search for the minimum potential configuration of the articulated robot for p ∈ GP10

by repeatedly executing :

(a) Search for the minimum potential configuration of the articulated robot with lnk1 fixed in orientation by sliding p on GP10 (see Fig. 5.3(b)).

(b) Search for the minimum potential configuration of the articulated robot with p fixed in position (see Fig. 5.3(c)).

(iii) Repeat (i) and (ii) until p reaches GP1.

In general, there are different ways to change the configuration of the articulated robot to move p0 toward GP1. A simple translation of all links is adopted in (i) as a preliminary

p

Figure 5.3: Basic path planning procedure for a given GP (see text).

GP

1

(a)

GP

1

Intermediate GPs

(b)

Figure 5.4: The moving direction of articulated robots and intermediate GPs (see text).

implementation of our algorithm, as shown in Fig. 5.3(a). The direction of the translation is determined such that −→

p0p is in the direction of the attractive force −→

Fp0 experience by p0 due to GP1. A collision check is performed for such a translation. If collision occurs, the distance of the translation is halved until the translation is collision-free. Accordingly, a new GP is inserted, e.g., GP10. No configuration improvement to reduce the repulsive potential is considered at this stage.

As for the search for the minimum potential configuration of the articulated robot in (ii), since lnk1 has five DOFs, i.e., two for its location for p ∈ GP10 and three for its orientation, the associated constrained optimization problem is divided into two iterative univariant optimization procedures, as in (ii-a) and (ii-b). In (ii-a), lnk1 is fixed in its orientation (see Fig. 5.3(b)) as p slides on GP10 to search for the minimal potential configuration and other links are sequentially adjusted in orientation, staring from lnk2. In (ii-b), lnk1 is adjusted in

orientation while fixed in position (see Fig. 5.3(c)) and the procedure for adjusting the rest links is similar to that in (ii-a). For a particular GP, say GP10 in Fig. 5.3, (ii-a) and (ii-b) are repeatedly performed until negligible changes in the configuration of the articulated robot is obtained. Then, another intermediate GP which is closer to GP1 is obtained with (i) and the process repeats. The path planning algorithm, as summarized below, ends as the leading tip reaches the given GP1 or exist abnormally for an infeasible problem. Detailed implementation of the algorithm is presented in the next subsection.

Algorithm Articulated Robot to GP

Step 0 Initialize δ = δ0 and GP ← GP1.

Step 1 Translate all links of the articulated robot with distance δ to move p0 to p along −→

Fp0. Find the smallest n ≥ 0 such that δ ←− δ/2n corresponds to a feasible and collision-free translation. If δ < δmin, go to Step 6; otherwise, construct GP10 with GP10⊥−→

Fp and p ∈ GP10, and let GP ← GP10.

Step 2 Translate lnk1, by sliding p on GP , and adjust the orientations of the rest links to minimize the potential.

Step 3 With p fixed in position, adjust the orientations of all links to minimize the potential.

Step 4 Go to Step 2 if the translation in Step 2 or the joint angle adjustment in Step 3 is not negligible.

Step 5 If p reaches GP1, the planning is completed. Otherwise, p0 ← p and go to Step 1 with δ = δ0.

Step 6 Exit and report that GP1 is unreachable.

For path planning involving multiple GPs, the above algorithm will be executed for each of them sequentially. It is assumed that the planning for a GP starts as the planning of the previous GP is accomplished. The path planning ends as the leading tip of the articulated robot reaches the goal, which is usually a (goal) GP in the path planning problems considered in this thesis.

5.3 Implementation Details