Scholarly article on topic 'Simulation of obstacles’ effect on industrial robots’ working space using genetic algorithm'

Simulation of obstacles’ effect on industrial robots’ working space using genetic algorithm Academic research paper on "Mechanical engineering"

CC BY-NC-ND
0
0
Share paper
Keywords
{"Industrial robots" / "Working space" / "Robot workspace obstacles" / "Mechanical arms" / Manipulators / "Genetic algorithms"}

Abstract of research paper on Mechanical engineering, author of scientific article — M.F. Aly, A.T. Abbas

Abstract The study of robot workspace is an interesting problem since its applications are directly related to industry. However, it involves several mathematical complications; Thus, many of the arising questions are left without a definite answer. With the motivation of industrial demand, the need for finding better answers than the existing ones lasts. The workspace (WS) determination of a robot with general structural parameters is a complex problem, which cannot be solved in an explicit way. Closed form solutions are only available in some particular cases. Otherwise, computational algorithms and numerical techniques are used. The task becomes even much more complicated by the presence of obstacles in the robot accessible region. Obstacle presence does not only exclude points from the original WS but it affects the whole robot workspace’s shape and size to the extent that it sometimes divides the working space in two or more separate regions that cannot be linked by the same robot. Much research work in the literature is directed toward path planning in the presence of obstacles without having to determine the robot WS. However, a real situation in industry occurs when the knowledge of the WS is of importance in facility layout. This paper presents an approach for the estimation of a generic open-chain robot in the presence of obstacles with any desired number of prismatic and/or revolute joints of any order. Joints’ axes may have any orientation relative to each other. The robot can be placed in free space or in a work cell consisting of a set of Computer Numerically Controlled (CNC) machines and some obstacles.

Academic research paper on topic "Simulation of obstacles’ effect on industrial robots’ working space using genetic algorithm"

Journal of King Saud University - Engineering Sciences (2013) xxx, xxx-xxx

King Saud University Journal of King Saud University - Engineering Sciences

www.ksu.edu.sa www.sciencedirect.com

ORIGINAL ARTICLE

Simulation of obstacles' effect on industrial robots' working space using genetic algorithm

M.F. Aly a, A.T. Abbas b *

a Mechanical Engineering Department, The American University in Cairo, New Cairo, Egypt

b Mechanical Engineering Department, Engineering College, King Saud University, P.O. Box 800, Riyadh 11421, Saudi Arabia Received 15 September 2012; accepted 29 December 2012

KEYWORDS

Industrial robots;

Working space;

Robot workspace obstacles;

Mechanical arms;

Manipulators;

Genetic algorithms

Abstract The study of robot workspace is an interesting problem since its applications are directly related to industry. However, it involves several mathematical complications; Thus, many of the arising questions are left without a definite answer. With the motivation of industrial demand, the need for finding better answers than the existing ones lasts. The workspace (WS) determination of a robot with general structural parameters is a complex problem, which cannot be solved in an explicit way. Closed form solutions are only available in some particular cases. Otherwise, computational algorithms and numerical techniques are used. The task becomes even much more complicated by the presence of obstacles in the robot accessible region. Obstacle presence does not only exclude points from the original WS but it affects the whole robot workspace's shape and size to the extent that it sometimes divides the working space in two or more separate regions that cannot be linked by the same robot. Much research work in the literature is directed toward path planning in the presence of obstacles without having to determine the robot WS. However, a real situation in industry occurs when the knowledge of the WS is of importance in facility layout. This paper presents an approach for the estimation of a generic open-chain robot in the presence of obstacles with any desired number of prismatic and/or revolute joints of any order. Joints' axes may have any orientation relative to each other. The robot can be placed in free space or in a work cell consisting of a set of Computer Numerically Controlled (CNC) machines and some obstacles.

© 2013 King Saud University. Production and hosting by Elsevier B.V. All rights reserved.

1. Introduction

* Corresponding author. Tel.: +966 14679799. E-mail addresses: mfawzyaly@yahoo.com (M.F. Aly), atabba-s1954@yahoo.com (A.T. Abbas).

Peer review under responsibility of the King Saud University.

The study of robot's global geometrical performance has been an area of ongoing interest in the last decade due to its industrial importance. The knowledge of robot WS can provide useful information for facility planning and layout. The boundary contours of the WS of a robot of general structure are difficult to be described in a closed form solution, which is only available in some particular cases. Examples of such cases are the research of Tsai and Soni (1981,1983); Gupta and Roth (1982); Williams and Reinholtz (1988) and Salerno et al. (1995). Otherwise,

1018-3639 © 2013 King Saud University. Production and hosting by Elsevier B.V. All rights reserved. http://dx.doi.Org/10.1016/j.jksues.2012.12.005

numerical techniques and computational algorithms are used such as the work of Liegeois et al. (1986); Kumar and Patel, 1986; Riley and Torfason (1994); Wang and Hsieh (1998) and Megahed and S.M. (2001). Other researchers resorted to experimental design for workspace estimation as in the work of Chen et al. (2007). One of the major factors that affect the geometry and size of the robot WS is the presence of obstacles in its accessible region. (Wenger, 1989) studied the influence of obstacles represented by different constituents of a work cell on the robot WS. His work aimed to characterize the free WS of a robot and the changes that occur in the presence of obstacles. However, the methodology used by Wenger was based on an exhaustive search, in which the computational effort increases with the increase in the number of actuated axes. Trials of such methodology show that exhaustive search is not suited for robots with more than three joints. A lot of up to date research is oriented toward planning of robot motions in the presence of stationary and moving obstacles in its accessible region (Marchis et al., 1994; Kavraki, 1995; Curto and B., 1997; Huang and Lawrence, 1999; Kyatkin and Chirikjian, 1999; Abdel-Malik and Yang, 2005). Some of this work uses visual tracking for robot control and path planning such as the work of Tsai (Tsai and Song, 2009) while others use PLC coding and model generation for collision detection within a workcell (Flordal et al., 2007).

Estimation of the full WS of a robot of a general structure in the presence of obstacles is an under-explored topic, which needs more study and investigation. This paper presents a technique for approximate estimation of the WS of a simple chain robot of general structure having any number of joints in the presence of obstacles in its accessible region. These joints may be of revolute (R) and/or prismatic (P) type. Robot type may be represented by a series of letters R and/or P starting from its base.

2. Workspace mathematical modeling

Determining robots' working space is directly linked to their geometry and the types and orientation of connecting joints of its links. The mathematical analysis presented here is for an open chain robot structure, which is conveniently done using Denavit-Hartenberg (D-H) representation (Denavit and Hartenberg, 1955). The next section briefly explains the D-H representation and its implementation in WS estimation.

2.1. Denavit-Hartenberg representation

Denavit and Hartenberg (1955) is used to establish the relationship between consecutive links of a robot. The robot Tool Center Point (TCP) coordinate system is subsequently represented in terms of the robot base coordinate system. Fig. 1 shows the D-H parameters relating the robot moving links and joints numbered from 1 to n starting from the base. Using these D-H parameters, the resulting HTM between the two successive coordinate systems Ri & Ri+1 is given by:

= [rM+i]

,i+1J4x4

Xi+1 Yi+i Zi+1 1

i+1]4x4

ci — caisi saisi a;c

si caici — sai ci aici

o sai cai ri

o o o 1

where c; = Cos(0;), s; = Sin(hi), cai = Cos(a) and sa = Si-n(aj). qi is the generalized coordinates of the ith joint given by: qi = r'jh; + r^where ri = 0 for revolute joints and ri = 1 for prismatic joints, and r' = 1—ri.

The Homogeneous Transformation Matrix between the Tool Center Point Rn+1 with respect to the robot base Ro (0o, Xo, yo, zo) is given by:

T0,n+1 x T1,2 x T2, 3 x T3 ,4.........Tn,n+1 (3)

with [ Xo yo Zo 1]t = To,n+1 [ Xn + 1 yn + 1 Zn + 1 1]t

The 4 x 4 Homogenous Transformation Matrices (HTM) are used to evaluate the position and orientation of the robot links relative to the robot's base.

The final position and orientation of the Tool Center Point (TCP) also known as the robot end effector (x, y, z) can be expressed as a function of all the robot generalized coordinates (q1, q2,...., qn).

2.2. Workspace points generation

Approximate determination of robot WS is based upon discretization of the volume about the robot, which is expected to contain the WS defined as search volume. The search volume (SV) is divided into a finite number of points located on imaginary grid lines that partition the SV into a number of divisions along each of the robot base axes directions xo, yo, and zo.

Determining which points in the discretized SV belong to the WS starts by setting all the joints to their minimum range (Initial Position). Then, the closest point on the grid to the TCP location is marked as a surface point on the WS (WSP). By incrementally moving the last joint through its range of motion the initial point sweeps a set of new points. These new points are added to the WS. For each of these points, the closest point on the grid is added to the existing WS (Fig. 2). The existing WS points are swept through the range of motion of the preceding joint to form a new WS. The process is repeated until sweeping through the first joint (attached to the ground) range is completed. It should be noted that only the surface points of the existing WS (WSP) are used for the sweeping since they enclose the extreme reaches of the WS.

Sweeping of a WSP is done by first computing the HTM of the joint axes that does the sweeping (active joint) according to Eq. (3). Next, the position of the WSP with respect to the active joint axes is computed by:

r Y 1 ^•sp,a Xsp

Y 1 sp ,a 7 sp a = [To,a] —1 Y sp Zsp

Where: ^sp^ -^sp^

Zsp,a are the coordinates of the WSP with , Zsp are the coordinates

respect to the active joint axes, Xsp, Fsj of the WSP with respect to the robot base axes respectively and [T0,a] is the HTM of the active joint axes at its initial position.

Figure 1 Robot representation and D-H parameters.

Figure 2 WS points generation.

Figure 3 Points classification in search volume.

Finally, by incrementally moving the active joint and computing its new HTM ([T0,a]New) the new WSP position is computed by:

= [T0,a]f

sp,a 1

Zsp are the new coordinates of the WSP with

where: XSp, YSp.

respect to the robot base axes respectively.

The following sections describe two algorithms for the numerical estimate of the WS of a simple chain robot arm with general structural parameters. The first one estimates the WS of the robot when placed in a free space. The second one estimates the robot WS in the presence of other constituents in its accessible region such as machines and/or obstacles. The two algorithms are detailed in the next sub-sections.

3. Workspace estimation techniques in free space

The workspace computational algorithm in free space is developed to implement any industrial robot model. The objective of the algorithm is to numerically estimate the set of all points accessible by the robot end effector and to locate positions that are inaccessible by the robot.

3.1. Basic technique employed

The algorithm for robot WS estimation labels all the discret-ized points of the SV as external points (EP) that are not accessible by the robot, workspace surface points (WSP) or workspace internal points (WIP) (Fig. 3).

Classification of the SV points into WSP, WIP or EP is described by the flow chart shown in Fig. 4. The inputs include the robot number of joints, D-H parameters and joints' ranges of motion. Additionally, it is necessary to define size limits for the SV, number of divisions of the SV in each of the robot base axis directions (NDX, NDY, and NDZ) and the number of divisions per joint motion.

The algorithm starts by locating an accessible point for the robot TCP when all the joints are at their minimum range, the point is marked as a WSP. Then, The WSP is moved throughout the range of motion of the last joint to determine new accessible points in the SV. After range of motion completion of the last joint, all the accessible points in the SV are stored into WSP if they are in contact with an EP or as WIP if not in contact with any EP. The new set of WSP is moved through the range of motion of the preceding joint to generate a new set of accessible points. The process is repeated for the remaining joints to obtain the total WS.

As a result of discretization, it may occur that some internal points are not reached in the discrete search and therefore they form an artificial void in the WS. The algorithm compensates

Read: # of Joints, their Type & Motion Range, D-H & SV Parameters

Allocate Memory for: 3D Array of SV Points 1D Array of WSP

Set all Joints to their min range

Set TCP position as a WSP

Set active Joint to Last One

Determine which are surface points in WS

Set active Point to first WSP point

Determine position of active point w.r.t. active joint

Increment active joint position and Find new position of active point

Is new position in WS?

Subroutine Adding a Point to WSP

Has full range of joint motion been attained?

Is the set of surface points finished?

Set active point to next WSP

Subroutine Artificial Void Removal

Free allocated memory of old surface Points Determine number of surface points in new WS

Is the active Joint the first one? Set active joint to previous one

Determine new

surface points

Save: # of & location of surface points, state of all points in SV (EP/WSP/WIP)

(a) Main Loop

Set added point as a surface point

Check added point and all surrounding points

Is checked point fully surrounded by WS points?

Set checked point as a WIP

Are the checked points finished?

Check next point

(b) Subroutine Adding a Point to WS

Start with the first point in SV

Is the point in WS (WSP or WIP) ?

Is the point included between two WS points?

Subroutine Adding a Point to WSP

Are all points in SV finished?

Check next point

(c) Subroutine Artificial Void Removal

Figure 4 Workspace estimation flow chart.

this problem by detecting artificial voids after completing the range of motion of each joint and marking them as WIP.

3.2. Computer code

The algorithm is implemented into computer code using the Delphi programing language (Delphi, 1997). The Delphi programing language was chosen for the algorithm implementation because the executable programs resulting from its

compiler have a relatively high speed of execution compared to programs generated by other compilers. In addition, Delphi has a relatively easy coding language and high programing capabilities. One of the good features implemented in the code is the capability of having an external subroutine for giving the controller commands. This allows further development of the code without modification of the main core solver. The main solver subroutines of the code use text files for data input and output.

Figure 5 Unimate 2000.

Figure 6 Kinematic diagram of unimate 2000. 3.3. Verification of WS estimation technique

A huge variety of industrial robots is available in the market. Robots' structures, number and types of joints differ according to the robot type and its design based on the functions required from it. Some of the most popular industrial robots are used in the computer code validation as case studies. The robot joints may be classified into two main types. Revolute (R) and/or prismatic (P) type. Robot type may be represented by a series of letters R and/or P starting from the base side.

Figure 7 WS of unimate 2000.

Figure 8 Unimate 9000.

Table 1 Data of case studies industrial robots for WS in free space.

Robot ID No. of joints Axis # Joint type D-H parameters Joint motion range

6 r a a Min. Max.

Unimate - 2000 (Fig. 6) 4 0 - 0.0000 0.0000 0.0000 0.0000 - -

1 R qi 1.2000 0.0000 1.5708 0.2443 3.3859

2 R q2 0.0000 0.0000 1.5708 1.1170 2.0944

3 P 0.0000 q3 0.0000 -1.5708 0.9650 2.0260

4 R q4 0.0000 0.1000 0.0000 -3.4121 0.2075

Unimate - 9000 (Fig. 7) 7 0 - 1.5708 0.0000 0.0000 -1.5708 - -

1 P 0.0000 qi 0.0000 1.5708 0.0000 4.3000

2 R q2 1.1000 0.0000 1.5708 -0.7854 1.5708

3 R q3 0.0000 1.0000 0.0000 0.3491 1.5708

4 R q4 0.0000 0.1000 1.5708 -0.8727 0.8727

5 R q5 1.2500 0.0000 -1.5708 -6.2832 6.2832

6 R q6 0.0000 0.0000 1.5708 -1.9199 1.9199

7 R qv 0.1000 0.0000 1.5708 -4.7124 7.8540

aAll lengths are in meters and all angles are in radians.

Table 2 Data of case studies of industrial robots for WS with obstacle presence.

Robot ID No. of joints Axis # Joint type D-H parameters Joint motion range

0 r a a Min. Max.

SCARA (Fig. 3) 4 0 - 0.0000 0.0000 0.0000 0.0000 - -

1 R qi 0.3000 0.2500 0.0000 -1.6755 1.6755

2 R q2 0.0000 0.1500 0.0000 -2.0071 2.0071

3 R q3 0.0000 0.0000 3.1415 -3.9269 3.9269

4 P 0.0000 q4 0.1000 0.0000 0.1500 0.2500

PUMA (Fig. 9) 6 0 - 0.0000 0.0000 0.0000 0.0000 - -

1 R qi 1.0300 0.0000 1.5708 -1.2217 -4.3633

2 R q2 0.0000 0.6500 0.0000 -0.3491 3.4907

3 R q3 0.0000 0.0000 1.5708 -0.7854 3.9270

4 R q4 0.6000 0.0000 -1.5708 -4.6426 4.6426

5 R q5 0.0000 0.0000 1.5708 -1.9199 1.9199

6 R q6 0.1000 0.0000 1.5708 -4.6426 4.6426

aAll lengths are in meters and all angles are in radians.

Figure 9 Kinematic diagram of unimate 9000. Figure 11 Search volume discretization.

Figure 10 WS of unimate 9000.

Figure 12 Computational algorithm flow chart.

Two types of industrial robots are used in the verification of the technique performance and the evaluation of the estimated WS. A comparison between the estimated WS obtained by the developed algorithm and the WS provided by the manufacturer is presented. This comparison shows that the proposed algorithm conveniently approximates to the correct robot WS as it is given by the manufacturers.

3.3.1. Unimate 2000 robot

Fig. 5 and 6 show the figure and the kinematic diagram of the Unimate 2000 robot. D-H parameters, joints' types and ranges of motion of this robot are given in Table 1.

Fig. 7 shows the workspace graph of Unimate 2000 robot provided by the supplier along with the estimated working space developed by the proposed algorithm for comparison.

Figure 13 SCARA robot.

Figure 14 Kinematic diagram of SCARA robot.

An overview on both figures shows the good resemblance between the manufacturer WS and plotted one. The developed algorithm can also provide slices in the estimated WS at any desired positions in any of the three essential planes (XY, YZ and XZ planes).

3.3.2. Unimate 9000 robot

Figure and the kinematic diagram of the Unimate 9000 robot are shown in fig. 8 and 9. Table 1 provides the D-H parameters, joints' types and ranges of motion of this robot.

Fig. 10 shows a comparison between the manufacturers provided working space that comes with any industrial robot and the estimated WS produced by the proposed algorithm. Very close resemblance in the WS can be observed and two sections are taken at locations A and B to demonstrate the similarity between the manufacturer and the obtained WS. The manufacturer can only provide a projection of the robot WS by simply drawing the motion of the set of first principle links. This justifies the importance and usefulness of the proposed algorithm in determining accessible points by the robot which can be judged by the program if a point is within the robot WS or not even if it seems to be an external point in the WS view in one of the principle projection planes.

4. Robot workspace estimation algorithm in a space with obstacles

The main objective of the proposed algorithm is to estimate the modified WS of a given robot due to obstacle presence in its accessible region depending on its shape and relative position to the robot base. (Megahed et al., 2001). This problem is formulated as an optimization problem performed using genetic algorithm for which a brief note is given in the next sub-section.

4.1. Basic technique employed

The predefined search volume (SV) is discretized as a group of finite points as shown in Fig. 11. Every point in the SV is considered as a target point for the robot to reach and the evaluation of each target is made based on the capability of the robot to reach such a point without having any of its links interfering with obstacles.

The proposed algorithm can be effectively used to solve the inverse kinematic position model (IKPM) Megahed, 1993 by formulating the problem as an optimization problem. The objective function of the optimization problem is to minimize

Figure 16 Estimated WS of SCARA robot - without obstacles.

Figure 17 Estimated WS of SCARA robot - obstacle present.

Figure 18 PUMA robot in a work cell.

the distance between the robot end effector and the target points with a constraint of not having any of the links interfering with any of the obstacles present in its working space. The optimization problem is solved using real-coded variables genetic search (Zhang and Wang, 2004; Goldberg, 1989; Davis, 1991; Mickalewicz et al., 1994). The objective function to be minimized is described in Eqs. (6) and (7),

Minimize f(x) = {(xTCP - xTarget)2, (yTCP

- yTarget)2; (zTCP - zTarget)2} (6)

Subject to : ^{(xlink - xobstaclej)2; (y^k - yobstaclej)2; i=1

(zlink — zobstaclej)2} p Vavoid; j — ••• ; n (7)

Table 3 Comparison between the Two Developed Numerical Techniques.

Technique applied to robot in free space Technique applied to robot in space with obstacle

Links representation Obstacle parameters WS determination procedure Generalization

Computational time

Wire frame None

Full run for WS determination Works for free space only Few secondsa (less than 10 s)

Outer diameter of links must be inputted for interference check Number & location of forbidden points are identified Optional full run or stepped according to robot dimensions and maximum ranges

Can work free space (if the number of forbidden points are inputted zero, and small links diameters are chosen) but will take much more time 8 ha (for a 6-link robot arm with moderate number of forbidden points)

This analysis was performed on an Intel processor 1.67 GHz with 2 GB RAM.

Figure 19 Kinematic diagram of the PUMA robot. Where:

xTCP is the x position of the robot end effector yTCP is the y position of the robot end effector zTCP is the z position of the robot end effector xTarget is the x position of the target point yTarget is the y position of the target point zTarget is the z position of the target point j is the total number of obstacles

Vavoid is the minimum distance to avoid robot collision with obstacles

Fig. 12 shows the flow chart explaining the computational rational of the proposed algorithm. Inputs to the program include robot's geometric parameters and joints' ranges as well as obstacle data.

Initially, all points are marked as inaccessible points. The algorithm then repeats a genetic search for each target point trying to find a combination of joint positions that minimize the distance between the robot end effector and the target point without interfering with any obstacles.

4.2. Verification of WS estimation technique

To verify the developed computational algorithm and judge its efficiency and capabilities, two types of industrial robots are used the SCARA and the PUMA robots. The SCARA robot is used for its simple WS shape, which will enable the detection of any bugs or errors in the developed algorithm. The obstacle in the SCARA robot accessible region is chosen to have a simple cylindrical shape to study its effect on the whole robot WS, while for the PUMA robot, the obstacle is chosen to have a rectangular cross section with a height exceeding the robot maximum and minimum limits.

4.2.1. SCARA robot

The figure and the kinematic diagram of the 4-axes SCARA robot of type RRRP is shown in Fig. 13 and Fig. 14, while the D-H parameters, joints' types and ranges of motion are given in Table 2. Due to the special configuration of the SCARA robot, the top view is usually sufficient for specifying the WS. Moreover, the top view of the WS can be drawn manually just like a two-link robot. Fig. 15 shows the exact WS of the SCARA robot with and without obstacles drawn manually.

Figure 20 Three dimensional view of estimated PUMA robot WS - obstacle present.

Figs. 16 and 17 show the corresponding working space as developed by the proposed algorithm. A good matching between the actual and developed WS results can be concluded. The obstacle is plotted within the search volume as an inaccessible region for the end effector to be excluded as target points.

4.2.2. PUMA robot

In order to reveal some of the capabilities of the proposed algorithm, estimation of the WS of a PUMA robot is demonstrated. The picture and the kinematic diagram of the PUMA

robot is given in Figs. 18 and 19. The D-H parameters, joints' types and ranges of motion are provided in Table 2. Fig. 20 shows leveled sections in the estimated WS after an obstacle is placed close to the robot base. Slices taken at different levels of 0.5, 1, 1.5, and 2 m height are shown in these figures illustrating the robots' working space at those levels in presence of the obstacle.

Knowing the PUMA robot to have a great degree of flexibility in its WS, we can see that the WS is slightly affected by the obstacle presence in the area surrounding the obstacle. However, other places away from the obstacle are also affected by the obstacle presence and points are not reached due to robot link interference with the obstacle.

4.3. Evaluation of techniques performance

A brief evaluation and comparison between the two developed numerical techniques to estimate robot WS in free space and in space with obstacles are presented in Table 3. Also, information concerning execution time and type of data input required to each program is provided.

5. Conclusions

This paper presents a new and efficient numerical technique for the estimation of the working space of any open chain robot arms with different types of joints and orientations. Also, a computational algorithm for the robot workspace estimation in presence of obstacles is developed.

The numerical technique proposed is based on a new approach. This approach suggests the discretization of the search volume into a finite number of points in order to minimize the computational time. This discretization is performed according to the desired accuracy and search volume size. A sweeping process of an existing surface through the active joint range of motion is then performed. The closest point in the discretized search volume to the swept one is added to the WS and this procedure is repeated for all points on the existing surface to obtain a new one. An incremental increase in the joint position from its initial value to the final one creates the final WS. This sweeping process is then repeated for all the robot joints beginning from the last one till the ground to obtain the whole WS of the robot. Two industrial robots of different configurations are used for the verification of the developed technique and show the similarity between the estimated WS obtained by the algorithm and the WS provided by the robot manufacturer.

For the same problem in the presence of obstacles, judgment of search volume points as accessible or inaccessible is formulated as an optimization problem that is solved using genetic search. The genetic search is thus used to classify the points in this search volume into accessible points and inaccessible points which cannot be reached by the robot without one of the robot links interfering with any of the present obstacles. Two case studies are presented to demonstrate the effectiveness of the proposed technique. The proposed technique is tested for the cases of single open chain robot arms but can be generalized to more complex robot configurations. The generalization however, requires the methodology of computing the position and orientation of all the robot links to be available.

The major advantage of the proposed algorithm is that it provides detailed information about the whole robot WS and

not only the outer work envelop as provided by the robot manufacturers. Most of the available software provides only means of path planning of robot arms in the presence of obstacles which no robot manufacturer offers. The proposed algorithm is generalized in the means that it can adapt to obstacles geometry changes as well as obstacle position changes relative to the robot base which can alter the resulting robot accessible region drastically and change the WS shape. Robot manufacturers do not offer this type of information and the available software will only provide a path plan for the arm movements and will need to be checked every time the robot is required to perform a different task or go to new positions (Delphi, 1997). Path planning is an important step but it becomes next to selecting the suitable robot for a certain job. In order to do so, we have to provide the end-user with the robot type and the corresponding working space to determine if it can serve in a certain location with some constraints or not. Robots provider provides only the working envelop of each industrial robot that consists of the maximum reach in the 3 main planes. They do not provide software or a method for altering the workspace in the presence of obstacles. Our paper provides a method for the users to produce the working space and the changes that happen to it when changing the obstacle position and/or shape.

Some limitations are induced by the genetic search. Genetic search generally requires a large number of objective function evaluations which is time consuming especially if the required accuracy level demands the discretization of the search volume to produce a large number of finite points. A key factor in the genetic search is the choice of population size and maximum number of generations till convergence (Goldberg, 1989). Choice of a relatively large number for both population size and number of generations produces better optimization accuracy at the expense of longer computational time. While using relatively small population size and number of generations reduces the computational time but can lead to some faulty results; difficult locations to reach (such as at the boundary or close to obstacles) may be incorrectly judged as inaccessible. On an average scale, the modified technique can result in reduction of the total computational time to less than half.

Acknowledgment

This Project was supported by the King Saud University, Deanship of Scientific Research, College of Engineering Research Center.

References

Abdel-Malik, K., Yang, J., 2005. Sweeping of an object held by a robotic end-effector. Robotics and Computer-Integrated Manufacturing 21 (2), 159-173. Chen, Y., Zhang, J., Yang, C., Niu, B., 2007. The workspace mapping with deficient-DOF space for the PUMA 560 robot and its exoskeleton arm by using orthogonal experiment design method. Robotics and Computer-Integrated Manufacturing 23 (4), 478-487. Curto, B., Moreno, V., 1997. Mathematical formalism for the fast evaluation of the configuration space. In: Proceedings of IEEE International Symposium on Computational Intelligence in Robotics and Automation, Monterey, CA, USA, 194-199. Davis, L., 1991. Handbook of Genetic Algorithms. Van Nostrand

Reinhold, New York, USA. Delphi, Borland International Inc., 1997.

Denavit, J., Hartenberg, R.S., 1955. A kinematic notation of lower pair mechanisms based on matrices. ASME Journal of Applied Mechanics 77, 215-221.

Flordal, H., Fabian, M., Akesson, K., Spensieri, D., 2007. Automatic model generation and PLC-code implementation for interlocking policies in industrial robot cells. Control Engineering Practice 15 (11), 1416-1426.

Goldberg, D.E., 1989. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Publishing Company Inc., Massachusetts, USA.

Gupta, K.C., Roth, B., 1982. Design considerations for manipulator workspace. ASME Journal of Mechanical Design 104, 704-711.

Huang, Z.Y., Lawrence, Y., 1999. Extension of usable workspace of rotational axes in robot planning. Robotica 17 (3), 293-301, Cambridge University Press, NY, USA.

Kavraki, L.E., 2005. Computation of configuration-space obstacles using the Fast Fourier Transform, IEEE Transactions on Robotics and Automation, Vol. 11, n. 3, IEEE Piscataway, (NJ, USA) 408413.

Kumar, A., Patel, M.S., 1986. Mapping the manipulator workspace using interactive computer graphics. International Journal of Robotics Research 5 (2), 130-138.

Kyatkin, A.B., Chirikjian, G.S., 1999. Computation of robot configuration and workspaces via the Fourier transform on the discrete-motion group. International Journal of Robotics Research 18 (6), 601-615, Thousand Oaks, CA, USA.

Liegeois, A., Borrel, P., Tanner, P., 1986. Automatic modeling of the workspace for robots. International Journal of Robotics Research, 205-212.

Marchis, V., Petrone, F., Sinatra, R., 1994. Correlation between the state-space and the task-oriented path in the presence of obstacles for mechanical manipulators. Journal of Robotic Systems 11 (5), 441-448, John Wiley & Sons Inc., (NY, USA).

Megahed, S.M., 1993. Principles of Robot Modeling and Simulation. John Wiley and Sons Ltd., West Sussex, England.

Megahed,S.M., Abbas,A.T., Aly, M.F., Hamza,K.T., 2001. Introducing industrial robots to a pre-installed manufacturing system. In: 7th International conference on Production Engineering, Design and Control, PEDAC, Alexandria, Egypt.

Megahed, S.M., Abbas, A.T., Aly, M.F., Hamza, K.T., 2001. Robot Workspace Estimation in Presence of Obstacles in its Accessible Region, CSME Conference. Concordia University, Montreal, Quebec, Canada.

Mickalewicz, Z., Logan, T., Swaminatham, S., 1994. Evolutionary operators for continuous convex parameter optimization. In: Proceedings of the 4th International Conference on Evolutionary Computations.

P.E. Riley and L.E. Torfason, Workspace characteristics, cusp locations, and boundary crossing for general RRP regional structures of manipulators, ASME 23rd Biennial Mechanism Conference, Vol. 72, n. 3, (1994) 147-152.

R.J. Salerno, S.L. Canfield, A.J. Gsnino and C.F. Reinholtz, Parallel, four degree-of-freedom robotic wrist, in Proc.: The 1995 ASME Design Engineering Technical Conferences Vol. 82, n. 1, September 17-20 (Boston, MA, USA, 1995).

Tsai, C.Y., Song, K.T., 2009. Dynamic visual tracking control of a mobile robot with image noise and occlusion robustness. Image and Vision Computing 27 (8), 1007-1022.

Tsai, Y.C., Soni, A.H., 1981. Accessible region and synthesis of robot arms. ASME Journal of Mechanical Design 103, 803-811.

Tsai, Y.C., Soni, A.H., 1983. An algorithm for the workspace of a general n-R robot. ASME Journal of Mechanical Design 105, 5257.

Wang, L.T., Hsieh, J.H., 1998. Extreme reaches and reachable workspace analysis of general parallel robotic manipulators. Journal of Robotic Systems 15 (3), 145-159.

Wenger, P., 1989. Aptitude d'un robot manipulateur a parcourir son espace de travail en presence d'obstacles, Ph.D thesis, Universite de Nantes, France.

Williams, R.L., Reinholtz, C.F., 1988. Closed-form workspace determination and optimization for parallel robotic mechanisms, ASME design engineering division (Publication) DE trends and developments in mechanisms. Machines and Robotics 15 (3), 25-28.

Zhang, Y., Wang, J., 2004. Obstacle avoidance for kinematically redundant manipulators using a dual neural network IEEE Transactions on Systems. Man and Cybernetics - Part B Cybernetics 34 (1).