Robotics Report on ABB IRB

September 5, 2018 | Author: kingdom2342 | Category: Kinematics, Euclidean Geometry, Mechanical Engineering, Mechanics, Classical Mechanics
Share Embed Donate


Short Description

Report on frame analysis based on the DH- transforms for the ABB IRB robot....

Description

 Newcastle University, Faculty of Science, Agriculture and Engineering. E ngineering. The School of Mechanical and Systems Engineering, Stephenson Building.

ROBOT KINEMATIC ANALYSIS - ABB IRB140 INDUSTRIAL ROBOT

An Assignment Report for the MEC8026 ROBOTICS Module  by BEDIAKO, Michael Osei Asare Asare [130513533]

December 2013

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

TABLE OF CONTENTS LIST OF FIGURES

LIST OF SYMBOLS AND ABBREVIATIONS

II

III

1  ASSIGNMENT OVERVIEW

1

2  ABB IRB140 ROBOT PROFILE

1

3

3

FORWARD KINEMATICS

3.1

JOINT AND FRAME ASSIGNMENT USING DHM

3

3.2

LINK PARAMETER TABLE

5

FORWARD KINEMATICS

5

4 4.1

GENERAL TRANSFORMATION MATRIX

5

4.2

MATLAB CODE FLOW CHART

6

4.3

MATLAB CODE EXECUTION PATH

7

4.4

CHARACTERITIC T6 EQUATIONS FOR ABB IRB 140 ROBOT FROM M-FILE

8

4.5

COMPUTATION OF ROLL -PITCH-YAW ANGLES

8

4.6

COMPUTATION OF QUARTERNIONS

9

5 5.1

VALIDATION M-FILE DISCUSSION

9 9

5.2  ARBITRARY POSES

10

5.3

12

ORTHOGONAL POSES

5.4  ACCURACY AND SOURCES OF ERROR

14

6

15

REFERENCES

BEDIAKO, Michael Osei Asare

i

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

LIST OF FIGURES Figure 2.1 ABB IRB140 Robot with Joint Axes indication (image source: ABB Robotics Product Manual: IRB140 Type c)

1

Figure 2.2: ABB IRB140 Robot Dimensions shown on rear, side (Zero pose) and top views (image source: ABB Robotics (2004) Product Manual: IRB140 Type c)

2

Figure 3.1 DHM convention for a pair of serially connected link( revolute joint) (image source: (CRAIG, John J., 2005))

3

Figure 3.2 ABB IRB140 Frame assignment using J.J Craig’s convention

4

Figure 4.1 MATLAB code Flow chart

6

Figure 4.2 M-File execution path

7

Figure 5.1: Line Diagram for Orthogonal Pose 1[ 0,0,0,90,-90,0] for ABB IRB140 Robot

12

Figure 5.2 Line diagram for Orthogonal Pose 2 [0, 90, -180, 0, 90, 360] for ABB IRB140 Robot

13

LIST OF TABLES

Table 1: ABB IRB Robot Performance chart for ISO 9283 test at rated load and 1.6m/s velocity on the inclined ISO test plane (Data source: ABB Robotics (2004) Product Manual: IRB140 Type C) ............ 2 Table 2: Link Parameter table for ABB IRB 140 Using J.J. Craig’s Convention .................................... 5 Table 3 Algorithm Results against Simulated results for Arbitrary Pose 1 on ABB IRB140 robot ...... 10 Table 4: Algorithm Results against Simulated results for Arbitrary Pose 2 on ABB IRB140 robot ..... 11 Table 5 Algorithm results against Simulated results for Orthogonal pose 1 (image source: RoKiSim 1.61(2011) .............................................................................................................................................. 12 Table 6 Algorithm results against Simulated results for Orthogonal Pose 2 (image source: RoKiSim 1.61(2011) .............................................................................................................................................. 13

BEDIAKO, Michael Osei Asare

ii

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

LIST OF SYMBOLS AND ABBREVIATIONS 1. Denavit-Hartenberg

DH

2. Modified Denavit-Hartenberg (Craig convention)

DHM

3. Degree of Freedom

DOF

4. Cosα; Sinα

cα; sα

5. Link Length; Link Twist

l, α

6. Joint angle; joint offset

θ; d

7. Transformation Matrix

T6

8. Roll-Pitch-Yaw

R-P-Y

BEDIAKO, Michael Osei Asare

iii

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

1

ASSIGNMENT OVERVIEW

In this assignment, the Forward Kinematics of an ABBIRB140 Six (6) Degree of Freedom (DOF) all revolute robot arm is evaluated. The modified Denavit-Hartenberg (DH) convention as used by J.J Craig (DHM) is adopted for the robot frame assignment. The resulting T6 Transform Matrix is also generated. MATLAB (version R2012a) is used to develop an algorithm (see attached pdf file) for computing: 1. The T6 Transformation, given the joint angles, j1-j6; 2. The Euler Roll-Pitch-Yaw, R-P-Y angles; 3. Quaternion (q1,q2,q3,q4)

2

ABB IRB140 ROBOT PROFILE

Figure 2.1 ABB IRB140 Robot with Joint Axes indication (image source: ABB Robotics Product Manual: IRB140 Type c)

BEDIAKO, Michael Osei Asare

1

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

Parameter

Values

IRB

140-6/0.8 and 140T-6/0.8

Pose repeatability, RP(mm)

0.03

Pose accuracy, AP(mm)

0.02

Linear Path repeatability

0.08

Linear Path accuracy, AT(mm)

0.67

Pose stabilization time, Pst(s) within 0.2mm of the position

0.08

Table 1: ABB IRB Robot Performance chart for ISO 9283 test at rated load and 1.6m/s velocity on the inclined ISO test plane (Data source: ABB Robotics (2004) Product Manual: IRB140 Type C)

Figure 2.2: ABB IRB140 Robot Dimensions shown on rear, side (Zero pose) and top views (image source: ABB Robotics (2004) Product Manual: IRB140 Type c)

BEDIAKO, Michael Osei Asare

2

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

3

FORWARD KINEMATICS

In analyzing the forward kinematics of a Robot, the robot configuration and end effector  position and orientation is determined from the knowledge of the various joint angles. This is a solution in general terms expressed as the consecutive rotation and translation of joint frames from the base frame to the end effector frame. It is convenient to express the solution as a matrix, 0T6  containing both rotations and translations along respective joint axes. The following sections lays out the procedure for obtaining the 0T6  matrix as adopted from J.J. Craig’s convention of frame assignment and used in the development of the MATLAB ®  program.

3.1

JOINT AND FRAME ASSIGNMENT USING DHM

Figure 3.1 DHM convention for a pair of serially connected link( revolute joint) (image source: (CRAIG, John J., 2005))

J.J. Craig’s modifications to the DH convention of   frame assignment is adopted for this assignment. According to this convention, the following parameters are defined: 1.

the

minimum

perpendicular

distance

between

consecutive

joint

axis

pairs

(Zi and Zi-1) measured along the X i-1 axis. This is ai-1 (set as li-1 for this assignment) 2. the angle of twist required to set Z i-1 to Zi taken along the Xi-1 axis ; set as αi-1 (set as ai-1 for this assignment) 3. the displacement between X i-1 and Xi measured along Zi as the Joint offset di BEDIAKO, Michael Osei Asare

3

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

4. the angle required to set X i-1 and Xi measured about Zi as the Joint angle j i

With these parameters defined, The most iportant point of the convention is the Setting of the Base frame {0}equal to {1} when joint angle j 1=0. The final frame{N} is then set so as to make its joint angle J n=0. Figure 4 shows the frame assignment based on this convention. The resulting parameters are shown in Table 2.

Figure 3.2 ABB IRB140 Frame assignment using J.J Craig’s convention

BEDIAKO, Michael Osei Asare

4

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

3.2

LINK PARAMETER TABLE

Joint (i) 1 2 3 4 5 6

Link twist (αi-1)°

Link Length (l i-1)mm

Joint angle (θi) °

(α0) = 0 (α1) =-90 (α2) =0 (α3) = -90 (α4) =90 (α5) = -90

0 70 360 0 0 0

0 -90 0 0 0 180

Joint offset (di)mm d1 = 352 0 0 d4 = 380 0 d 6 = 65

Table 2: Link Parameter table for ABB IRB 140 Using J.J. Craig ’s Convention

4

FORWARD KINEMATICS

In analyzing the forward kinematics of a Robot, the robot configuration and end effector  position and orientation is determined from the knowledge of the various joint angles. This is a solution in general terms expressed as the consecutive rotation and translation of joint frames from the base frame to the end effector frame. It is convenient to express the solution as a matrix, 0T6  containing both rotations and translations along respective joint axes. The following sections lays out the procedure for obtaining the 0T6  matrix as adopted from J.J. Craig’s convention of frame assignment and used in the development of the MATLAB®  program.

4.1

GENERAL TRANSFORMATION MATRIX

From Craig’s convention, the resultant Homogenous transformation matrix from the DH method is replaced by Equation 1:

         [      ]                     [     ]    

This represents:

Equation 1

i-1

Ti =Rot(z, θi) Trans(z, d i) Rot(x,αi) Trans(x,ai)

BEDIAKO, Michael Osei Asare

Equation 2

5

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

4.2

MATLAB CODE FLOW CHART

Figure 4.1 MATLAB code Flow chart

BEDIAKO, Michael Osei Asare

6

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

4.3

MATLAB CODE EXECUTION PATH

Figure 4.2 M-File execution path

BEDIAKO, Michael Osei Asare

7

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

4.4

CHARACTERITIC

T6 EQUATIONS FOR ABB IRB140

ROBOT FROM M-FILE

T0= [cosd(j1) -sind(j1) 0 l0; sind(j1)*cosd(a0) cosd(j1)*cosd(a0) -sind(a0) -sind(a0)*d1; sind(j1)*sind(a0) cosd(j1)*sind(a0) cosd(a0) cosd(a0)*d1; 0 0 0 1]; T1= [cosd(j2) -sind(j2) 0 l1; sind(j2)*cosd(a1) cosd(j2)*cosd(a1) -sind(a1) -sind(a1)*d2; sind(j2)*sind(a1) cosd(j2)*sind(a1) cosd(a1) cosd(a1)*d2; 0 0 0 1]; T2= [cosd(j3) -sind(j3) 0 l2; sind(j3)*cosd(a2) cosd(j3)*cosd(a2) -sind(a2) -sind(a2)*d3; sind(j3)*sind(a2) cosd(j3)*sind(a2) cosd(a2) cosd(a2)*d3; 0 0 0 1]; T3= [cosd(j4) -sind(j4) 0 l3; sind(j4)*cosd(a3) cosd(j4)*cosd(a3) -sind(a3) -sind(a3)*d4; sind(j4)*sind(a3) cosd(j4)*sind(a3) cosd(a3) cosd(a3)*d4; 0 0 0 1]; T4= [cosd(j5) -sind(j5) 0 l4; sind(j5)*cosd(a4) cosd(j5)*cosd(a4) -sind(a4) -sind(a4)*d5; sind(j5)*sind(a4) cosd(j5)*sind(a4) cosd(a4) cosd(a4)*d5; 0 0 0 1];

T5= [cosd(j6) -sind(j6) 0 l5; sind(j6)*cosd(a5) cosd(j6)*cosd(a5) -sind(a5) -sind(a5)*d6; sind(j6)*sind(a5) cosd(j6)*sind(a5) cosd(a5) cosd(a5)*d6; 0 0 0 1];

T6=T0*T1*T2*T3*T4*T5;

4.5

COMPUTATION OF ROLL -PITCH-YAW ANGLES

Computation of Position and Orientation in Euler Roll-Pitch-Yaw configuration  psir= atan2(rr 32/ rr 33);  phir= atan2(rr 21/ rr 11); thetar=atan2(-rr 31/ (rr 11 cos (phir)+ rr 21sin(phir));

BEDIAKO, Michael Osei Asare

8

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

4.6

COMPUTATION OF QUARTERNIONS

The Euler angles computed in section 4.3 are computed from Equation 2.

Equation 3 Euler angles conversion to Quaternions (Equation source: (HENDERSEN, D. M., 1977))

Quaternions are of particular importance in this assignment mainly because it provides and quick and more accurate method of computing the end effector orientation. This is evident by the ±0.0001 accuracy obtained between the algorithm results and simulated results. Judging by degree of accuracy, it can be concluded that determining and thus, programming robot arms to use the quaternions ensure a higher degree of accuracy in Robot arm translation in the various frames as compared to the matrix approach requiring the Euler R-P-Y angles.

5

VALIDATION

The validity of the developed T6 algorithm is tested for several sets of Joint angles in the Forward Kinematics analysis. Two arbitrary poses (Tables 3 and 4) are evaluated from Laboratory sessions with an actual Robot arm and two other orthogonal poses (Table 5 and 6) are also evaluated with line diagrams (Figure 5.1 and 5.2) and also from the RoKiSim© robot simulator. Both cases are compared to results obtained from the algorithm. An error computation is also obtained and discussed in the final section of the report.

5.1

M-FILE DISCUSSION

The m-file was developed in MATLAB® R2012a. The computation of arctan2 in radians was converted to degrees ( radtodeg( )) for proceeding lines. The feature arctan2d,  which computes the arctan2 value directly in degrees is not available until Version R2012b. By default all Joint Angles in the m-file have been set to zero degrees (0 °). This prevents the  program from returning an error is not angle is input for any joint. On completion on each stage the program requests user input to move to the next stage.

BEDIAKO, Michael Osei Asare

9

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

In conclusion, I will say that the m-file was developed to be both interactive and concise. The code is heavily commented as a guide to the least advanced user. Instructions are also  provided at the beginning to guide the user. Additional features of the code are the display of the full resulting T6 Matrix with, labeling, and also an image file to show the robot zero pose. Additional features are available to the user by choice.

5.2

ARBITRARY POSES

Arbitrary Pose 1 Position

Joint Angles

Algorithm (A)

Simulated (S)

Error (E= S-A)

Position(XYZmm)

247.62, -302.06, 737.0

247.8, -302.0, 737.7

0.18, 0.06, 0.7

Euler(R-P-Y°)

49.3, 36.0, 95.4

49.4, 36.0, 95.4

0.1, 0, 0

0.67724, 0.55234,

0.67685, 0.55270,

Quarternions

0.48246, 0.05913

0.48253, 0.05978

Table 3 Algorithm Results against Simulated results for Arbitrary Pose 1 on ABB IRB140 robot

BEDIAKO, Michael Osei Asare

10

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

Position

Joint Angles

Algorithm (A)

Simulated (S)

Error (E= S-A)

Position (XYZmm)

325.2, -566.6, 492.2

325.4, -566.2, 492.1

0.2, -0.4, -0.1

Euler(R-P-Y°)

68.3, -30.8, 129.6

68.4, -30.8, 129.6

0.1, 0, 0

0.205, 0.78518,

0.20476, 0.78497,

Arbitrary Pose 2

Quarternions

0.39649, 0.42927

0.39693, 0.42936

Table 4: Algorithm Results against Simulated results for Arbitrary Pose 2 on ABB IRB140 robot

BEDIAKO, Michael Osei Asare

11

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

5.3

ORTHOGONAL POSES

Figure 5.1: Line Diagram for Orthogonal Pose 1[ 0,0,0,90,-90,0] for ABB IRB140 Robot

Algorithm Results

Simulated Results

X-Y-Zmm

450, -65, 712

450, -65, 712

R-P-Y°

0, 0, 90

0, 0, 90

q1, q2,

0.70711, 0.70711,

0.70711, 0.70711,

0, 0

0, 0

q3, q4

Table 5 Algorithm results against Simulated results for Orthogonal pose 1 (image source: RoKiSim 1.61(2011)

BEDIAKO, Michael Osei Asare

12

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

Figure 5.2 Line diagram for Orthogonal Pose 2 [0, 90, -180, 0, 90, 360] for ABB IRB140 Robot

Algorithm Results

Simulated Results

X-Y-Zmm

495, 0, 732

495, 0, 732

R-P-Y°

0, 90, 0

0, 90, 0

q1, q2,

0.70711, 0,

0.70711, 0,

0.70711, 0

0.70711, 0

q3, q4

Table 6 Algorithm results against Simulated results for Orthogonal Pose 2 (image source: RoKiSim 1.61(2011)

BEDIAKO, Michael Osei Asare

13

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

5.4

ACCURACY AND SOURCES OF ERROR 

Error, E =

  

Accuracy, % = 100% - E%; But

            

Equation 4

Equation 5

From the above validations the conclusion can be drawn that the developed algorithm has a high degree of accuracy with calibration errors on the actual robot being possible sources of errors encountered in algorithm results. From the datasheet for the IRB140, the manufacturer indicates a system repeatability of 0.03mm. Thus our computed accuracy is well within limits. Although this is a Kinematic Analysis, only the Forward Kinematic Solution is presented.

BEDIAKO, Michael Osei Asare

14

MEC8026 Assignment: ABB IRB140 Robot Kinematic Analysis

6

REFERENCES

1. ABB. 2004. Product Manual: Articulated Manual ABB IRB 140 type C; IRB 140T type C; IRB 140-6/0.8 type C; IRB 140T-6/0.8 type C. Vasteras: ABB Robotics Products. 2. BARKER, L. Keith. 1986.  Modified Denavit-Hartenberg Parameters for Better  Location of Joint Axis Systems in Robot ARms. Virginia: NASA. 3. CRAIG, John J. 2005. Manipulator Kinematics.  In: THIRD, (ed).  Introduction to  Robotics - Mechanics and Control , Upper Saddle: Pearson Education International. 4. ECOLE DE TECHNOLOGIE SUPERIEURE. 2011.  Robot Kinematics Simulator . [online]. 5. HENDERSEN, D. M. 1977.  Euler Angles, Quaternions and Transformation Matrices.  NASA. 6. SEDAR, Kucuk and Bingul ZAFER. 2006. Robot Kinematics: Forward and Inverse Kinematics. In: Sam CUBERO, (ed).  IndustrialIndustrial Robotics: Theory, Modelling and Control , Pro Literatur Verlag, Germany / ARS, Austria, p.964. 7. SIEGWART, Roland and Illah R. NOURBAKHSH. 2004. Introduction to Autonomous Mobile Robots.  In: Ronald C. ARKIN, (ed).  Intelligent Robotics and  Autonomous Agents, Cambridge: The MIT Press. 8. ZHOU, Chen. 1999. Robot Motion Analysis - Kinemat ics. Zhou Chen.

BEDIAKO, Michael Osei Asare

15

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF