Academia.eduAcademia.edu

Kinematics Modeling of a 4-DOF Robotic Arm

This work presents the kinematics model of an RA- 02 (a 4 DOF) robotic arm. The direct kinematic problem is addressed using both the Denavit-Hartenberg (DH) convention and the product of exponential formula, which is based on the screw theory. By comparing the results of both approaches, it turns out that they provide identical solutions for the manipulator kinematics. Furthermore, an algebraic solution of the inverse kinematics problem based on trigonometric formulas is also provided. Finally, simulation results for the kinematics model using the Matlab program based on the DH convention are presented. Since the two approaches are identical, the product of exponential formula is supposed to produce same simulation results on the robotic arm studied.

2015 International Conference on Control, Automation and Robotics Kinematics Modeling of a 4-DOF Robotic Arm Amin A. Mohammed and M. Sunar Mechanical Engineering Department King Fahd University of Petroleum & Minerals Dhahran, Saudi Arabia e-mail: [email protected] Abstract—This work presents the kinematics model of an RA02 (a 4 DOF) robotic arm. The direct kinematic problem is addressed using both the Denavit-Hartenberg (DH) convention and the product of exponential formula, which is based on the screw theory. By comparing the results of both approaches, it turns out that they provide identical solutions for the manipulator kinematics. Furthermore, an algebraic solution of the inverse kinematics problem based on trigonometric formulas is also provided. Finally, simulation results for the kinematics model using the Matlab program based on the DH convention are presented. Since the two approaches are identical, the product of exponential formula is supposed to produce same simulation results on the robotic arm studied. Keywords-Robotics; DH convention; product of exponentials; kinematics; simulations I. INTRODUCTION Nowadays, robotics is a rich area of research, in terms of their kinematics, dynamics and control. Kinematics, in particular, plays a significant role in robotics and especially for the study of industrial manipulators' behavior. Therefore, a decisive step in any robotics system is the analysis and modeling of the manipulator kinematics [1]. It can be divided generally into forward and inverse kinematics. The former refers to direct finding of the end effector (EE) position and posture for the given joint coordinates, on the contrary, the latter is the determination of joint variables in terms of the EE position and posture [2]. In other words, it is the process of obtaining a configuration space that corresponds to a given work space. It has several disciplines of applications including the computer graphics [3]. While the forward kinematics is straightforward, the inverse kinematics is not an easy task and it usually has multiple solutions. Numerous techniques and their combinations could be used for solving and analyzing the inverse kinematics problem. However each method beside its advantages possesses some handicaps. Therefore, it is advantageous to apply more than one method and to integrate them with additional procedures [3]. Several approaches have been investigated and compared by Aristides et al [4]. Jasjit Kaur et al [5] have analyzed and simulated a robotic arm having three links-manipulator, where the inverse kinematics results in two solutions, out of which the best one has been chosen with the usage of the genetic algorithm. They have concluded that the robotic arm movement optimization can be achieved by the genetic algorithms in a practical and effective way. A geometric approach to solve the unspecified joint angles needed for the autonomous positioning of a robot arm is presented in [1]. Based on few assumptions concerning the working environment of the manipulator and the kind of manipulation required, in addition to the basic trigonometry, an easier solution has been proposed. The introduced methodology has been tested using five degrees of freedom robotic arm compounded to an i-Robot. By carrying out the mechanical design, all components have been assembled together in addition to two infrared sensors to detect the object and to find its position. Finally, the electrical design was done, and the proposed method was tested and justified. However, this approach lacks its generality due to the abundant assumptions considered, and what is more is that the last link is restricted to just two orientations. In what we introduce here is that the last link could have any arbitrary orientation, which makes the analysis more general to different configurations. Ge and Jin [6] proposed an algorithm of a redundant robot kinematics based on product of exponentials (PE), where the forward and inverse kinematics problems were addressed. The inverse kinematics problem was decomposed into several sub problems and by studying them separately, a solution of the inverse kinematic problem was proposed. Kinematics and interactive simulation system modeling for robot manipulators is given in [7], where the forward and inverse kinematics of a robotic arm called Katana450 are studied by the exponential product method, then an interactive simulation system is built based on three-merit virtual scene modeling techniques proposed for robot manipulators. These techniques are OpenGL, VRML and another one based on Visual C++, Lab View and Matlab platform. A robot simulator, which is introduced by Lodes [8] and is based on Matlab, enables the modeling of any robotic arm provided that the corresponding DH parameters are known. Links visualization in terms of shape and size was made after some considerations. The program was shown to adequately model several example robots. This paper focuses on modeling and simulation of the RA-02 robotic arm, a small special robot with 4 revolute joints [9]. An excellent survey of robotics kits for postsecondary education is given in [10]. The rest of this paper is organized as follows: Section II below presents the kinematics analysis based on the DH convention and exponentials formulation. The inverse kinematics solution 978-1-4673-7521-4/15/$31.00 ©2015 IEEE 87 based on the algebraic method is given in section III. In section IV, the manipulator simulation procedure and results are presented. Section V concludes this work. II. Various rotary and linear motions of the robotic arm are shown below in Fig 3. Each motion is made possible by a servomotor (or just a servo) at the corresponding location. MANIPULATOR KINEMATICS The DH convention and product of exponentials often used in kinematics analysis of robot manipulators and other mechanical structures. The below section utilizes both methods to drive the kinematics model of the robot. To simplify the analysis, the effect of the gripper is ignored making the robotic arm a four degree of freedom, a four-joint spatial manipulator. The treatment of this manipulator is analogue to that of PUMA 560 after removing the wrist and adding one more revolute joint. A. DH Convention. Denavit-Hartenberg (DH) convention is commonly used in the kinematics analysis of the robotic manipulator [2]. It is based on attaching a coordinate frame at each joint and specifying four parameters known as DH parameters for each link, and utilizing these parameters to construct a DH table. Finally, a transformation matrix between different coordinate frames is obtained. The major objective is to control both the position and orientation of the EE or the gripper in its work space. We will first derive the relationship between the joint variables and the position, and orientation of the gripper, using the DH method [2]. The robotic arm under study is shown below in Fig. 1 (RA-02A of Images SI Inc [9] ) and DH parameters in Fig. 2. Figure 3. Robotic arm with 5 independent motions [9]. B. Forward Kinematics As Fig. 2 depicts a coordinate frame attached to every link in order to find its configuration in the neighboring frames using the rigid motion formula. To do so a DH table is needed as follows: TABLE I. DH PARAMETERS. Frame (i ) ai ai di 1 0 90 l1 2 l2 0 0 3 l3 0 0 4 l4 0 0 i 1 2 3 4 By applying the Denavit-Hartenberg (DH) notations [2] for the joints coordinates, the DH-table can be constructed as listed above in Table II. The link lengths as shown in Fig. 2 are l1 = 1 1 .5 c m , l 2 = 1 2 c m , and l 3 = l 4 = 9 c m . Figure 1. The robot arm. C. Forward Transformation Matrices Once the DH table is ready, the transformation matrices are easy to find. Generally, the matrix of transformation from the frame B i to the frame B i − 1 for the standard DH method is given by [2]:  cos  i  sin  i Ti =   0   0 i −1 Then − sin  i cos  i cos  i cos  i sin  i 0 sin  i sin  i − cos  i sin  i cos  i 0 a i cos  i  a i sin  i   di  1  (1) the individual transformation matrices for can be easily obtained. Thereafter, the complete transformation 0 T 4 is found from: i = 1, 2 , 3 , a n d 4 0 Figure 2. DH parameters. T4 = 0T1 1T2 2T3 3T4 Upon the determination of, 0 T 4 we can find the global coordinates of the end effector. The tip point of the arm is at the origin of frame B 4 (Fig. 2), i.e. it is at [ 0 0 0 1]T . So, its position in the global frame becomes: 88 (2) 0 rp = T4 0 4  0   r1 4   d x  0  r  dy   rp = T4   =  24  =   0   r3 4   d z        1   1   1  For a prismatic joint the twist 0 (3) Obviously, this is the last column of the transformation matrix 0 T 4 . After simplifications using trigonometric formulas, the previous equation becomes: dx = c 1  l 2 c 2 + l3 c (  2 +  3 )  + l 4 c 1 c (  2 +  3 +  4 ) (4) dy = s 1  l 2 c 2 + l 3 c (  2 +  3 )  + l 4 s 1 c (  2 +  3 +  4 ) (5) dz =  l1 + l 2 s 2 + l3 s (  2 +  3 )  + l 4 s (  2 +  3 +  4 ) (6) where s stands for s i n and c stands for c o s . In addition, dx , dy and dz are the global end effector coordinates. Moreover, the end effector orientation is:  =  2 + 3 +  4 (7) The DH parameters are akin to the configuration of the robot. For different manipulator structures, the kinematics equations are not unique. Moreover, kinematics equations of the manipulator based on the DH convention provide some singularity making the equations difficult to solve or unsolvable in some cases. In addition, in the DH convention, the common normal is not defined properly when axes of two joints are parallel. In this case, the DH method has a singularity, where a little change in the spatial coordinates of the parallel joint axes can create a huge misconfiguration in representation of the DH coordinates of their relative position. In the following section, an alternative to the DH convention, the PE is presented. D. Product of Exponentials Aside from the DH convention, another method is the socalled product of exponentials (PE). Using the reality that the motion of each joint is generated by a twist accompanied with the joint axis, a more geometric representation of the kinematics can be acquired. Remember that if ξ is a twist, according to reference [11], the forward kinematics is given by: g st (  ) = e 11 e  2 2 ...e  n n g st ( 0 ) ˆ ˆ ˆ (8) The above equation is called the product of exponential formula for the robot forward kinematics, where g st ( 0 ) is the final configuration of the robot and exponential given by [7]:  e nn ˆ e n n =   0 ( I − e ) (  n n n × vn ) +  n n nT  n   1  e n n is a matrix ˆ (9) i is given by:  = vi  , i   0 and for a revolute joint by:  =  −  i × q i  , i    i   where i ∈ R 3 is a unit vector in the direction of the axis of the twist, qi ∈ R is any point on the axis, and vi ∈ R is a unit vector directing in the translation direction. In this case, the twist ξ’s for different links of the robot are given by: 3 0 0   0 1 =   0 0   1  2 3  L1   0     0  =    0   − 1    0  L1  L1     0    0      − L2   − ( L2 + L3 )  3 =   4 =   0  0     −1    −1     0  0    Moreover, g s t ( 0 ) is the initial configuration of the robot given by g st (0) 1 0 =  0  0 0 1 0 0 0 0 1 0 l2 + l3 + l4   0   l1  1  The forward kinematics map of the manipulator has the form:  R ( ) ˆ ˆ ˆ ˆ g st (  ) = e 11 e  2 2 e  3 3 e  4 4 g st ( 0 ) =   0 p ( )   1  (10) By expanding terms in the product of exponentials formula, Eq. 10 yields  cos ( 2 +  3 +  4 ) cos 1  R ( ) =  cos ( 2 +  3 +  4 ) sin 1  sin ( 2 +  3 +  4 ) − sin 1 cos 1 0 − sin ( 2 +  3 +  4 ) cos 1   − sin ( 2 +  3 +  4 ) sin 1  cos ( 2 +  3 +  4 )  cos1 ( L3 cos (2 + 3 ) + L2 cos 2 + L4 cos (2 + 3 + 4 ) )   p ( ) =  sin 1 ( L3 cos (2 + 3 ) + L2 cos 2 + L4 cos (2 + 3 + 4 ) )     L1 + L3 sin (2 + 3 ) + L2 sin 2 + L4 sin (2 + 3 + 4 )  It is clear that the above equation (12) is identical to those in equations (4) through (6). Thus, the kinematics modeling using the DH convention and product of exponentials agrees with each other. III. INVERSE KINEMATICS We end up with a set of four nonlinear equations with four unknowns. Solving these equations algebraically, known as the inverse kinematics, requires that we need to know the joint variables  1 ,  2 ,  3 , a n d  4 for a given EE position [ dx , dy, dz ] and orientation  . We get from equations (4) to (7), by dividing, squaring, adding and using some trigonometric formulas: 89 (11) (12)  dy    dx   1 = ta n − 1  ) (  2 = tan −1 c , ± r 2 − c 2 − tan −1 ( a , b )  3 = cos −1  A   2 + B 2 + C 2 − l 22 − l 32   2 l2 l3  (13)  / 4 − / 2  / 4] , which are depicted in Figs. 6 and 7, respectively. [− / 2 0 − / 2 0] and [ (14) (15) where a = l3 sin  3 , b = l2 + l3 cos  3 , c = dz − l1 − l4 sin  , andr = a 2 + b 2 . In addition A = ( dx − l 4 c 1 c ) , B = ( dy − l 4 s 1 c ) , andC = ( dz − l1 − l 4 s ) Figure 4. Home position. Having determined  1 ,  2 , a n d  3 , we can then find from the EE orientation of  as follows: 4  4 =  −  2 − 3 IV. (16) SIMULATION OF THE ROBOTIC ARM Since robotics is a multidisciplinary subject, its study requires skills form different fields of knowledge, not easily available. Thus, simulation has been recognized as a suitable tool that combines all these features together enabling the user of a direct visualization of different kinds of motion that a robot may perform, making the role of simulation very important in robotics [12]. Using the robotics toolbox together with the Matlab software [13]-[15], the kinematics of a robotic arm can be simulated and analyzed based on the DH convention described before. The toolbox takes a conventional approach to represent the kinematics and dynamics of serial-link robotic arms. Besides, it provides several functions and routines, which are handy for the simulation and scrutiny of robotic manipulators, like kinematics, dynamics and trajectory creation. Based on the aforementioned toolbox, many configurations of the robot manipulator are easily visualized. In order to simulate the robotic manipulator, first we erect a vector of Link objects and insert our four groups of DH parameters as in Table I. Then, these are passed to the constructor SerialLink, which is the key step to utilize the toolbox. A detailed procedure can be found in [15]. In order to generate the plot four joint variables are needed. In the first case all joint variables are entered in the form of zeros (row vector), such as [ 1  2  3  4 ] = [ 0 0 0 0 ] . Fig. 4 shows rest or home position of the robot, where all joints variables are zeros. In the toolbox, each revolute joint is resembled by a small cylinder. Since we have four revolute joints, four cylinders can be seen in Figs. 4-7. A second interesting configuration is that when all links are standing upright as Fig. 5 shows. The corresponding input in this case is given by: [ 0  / 2 0 0 ] , where all the angles are defined in radian by default. To test the functionality of all the joints, other two configurations are selected as given by the vectors of joint variables 90 Figure 5. Upright position. Figure 6. Left-down position. Figure 7. All joints are given angles. V. CONCLUSION Kinematics model of a 4 degree-of-freedom robotic arm is presented using both the DH method and product of exponentials formula. It is proven that both approaches provide the same solution for the robot manipulator under study. In addition, the simulation of the robot manipulator is carried out using the Matlab software via the robotics toolbox, through which several positions of the manipulator are realized based on the DH convention. Although results of the product of exponentials formula are not given, they are expected to be same as those of the DH convention. ACKNOWLEDGMENT Authors gratefully acknowledge the support provided by King Fahd University of Petroleum & Minerals through the NSTIP project 09-ELE786-04. REFERENCES [1] [2] [3] [4] [5] [6] K. E. Clothier and Y. Shang, “A Geometric Approach for Robotic Arm Kinematics with Hardware Design, Electrical Design, and Implementation,” J. Robot., 2010. R. N. Jazar, Theory of Applied Robotics. Boston, MA: Springer US, 2010. “Barinka, Lukas, and Roman Berka. ‘Inverse kinematics-basic methods.’ Web.< http://www. cescg. org/CESCG2002/LBarinka/paper. pdf (2002).” A. Aristidou and J. Lasenby. "Inverse kinematics: a review of existing techniques and introduction of a new fast iterative solver," 2009. J. Kaur and V. K. Banga, "Simulation of Robotic Arm having three link Manipulator," International Journal of Research in Engineering and Technology (IJRET), vol. 1, no. 2, March, 2012, ISSN: 22774378, 2012. X. F. Ge and J. T. Jin, “The algorithm of redundant robotic kinematics based on exponential product,” Appl. Mech. Mater., vol. 58-60, pp. 1902-1907, Jun. 2011. [7] [8] [9] [10] [11] [12] [13] [14] [15] X. Xiao, Y. Li, and H. Tang, “Department of electromechanical engineering, university of Macau, Macao SAR, China,” IEEE International Conference on Information and Automation (ICIA), 2013, pp. 1177-1182. A. Lodes, “Robot Simulator in MATLAB,” unpublished. “http://www.imagesco.com/kits/robotic-arm.html.” M. Ruzzenente, M. Koo, K. Nielsen, L. Grespan, and P. Fiorini, “A review of robotics kits for tertiary education,” in Proceedings of International Workshop Teaching Robotics Teaching with Robotics: Integrating Robotics in School Curriculum, 2012, pp. 153-162. R. M. Murray, Z. Li, S. S. Sastry, and S. S. Sastry, A Mathematical Introduction to Robotic Manipulation, CRC press, 1994. L. Žlajpah, “Simulation in robotics,” Math. Comput. Simul., vol. 79, no. 4, pp. 879-897, Dec. 2008. P. I. Corke and others, “A computer tool for simulation and analysis: the Robotics Toolbox for MATLAB,” in Proc. National Conf. Australian Robot Association, 1995, pp. 319-330. P. I. Corke, Robotics, Vision and Control: Fundamental Algorithms in MATLAB. Berlin: Springer, 2011. P. Corke, Robotics, Vision and Control, vol. 73. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011. 91