<<

Mechanism and Machine Theory 116 (2017) 404–418

Contents lists available at ScienceDirect

Mechanism and Machine Theory

journal homepage: www.elsevier.com/locate/mechmachtheory

Research paper

Geometrical kinematic solution of serial spatial manipulators using screw theory

∗ ∗ Hee Sung An a,1, Jie Hyeung Lee b,1, Chan Lee c, TaeWon Seo a, , Jeh Won Lee a, a School of Mechanical Engineering, Yeungnam University, Gyeongsan 712-749, Republic of Korea b Automation R&D Group, Daewoo Shipbuilding & Marine Eng., Geoje 656-714, Republic of Korea c School of Robotics Engineering, Daegu Gyeongbuk Institute of Science & Technology, Daege, 42988, Republic of Korea

a r t i c l e i n f o a b s t r a c t

Article history: of a robot manipulator is an essential component of robotic analysis that in- Received 16 December 2016 cludes control, motion planning, and design. Previous studies have proposed several differ-

Revised 31 March 2017 ent methods to provide an exact solution for kinematics. However, most of the methods Accepted 4 June 2017 are mathematically complicated and not sufficiently intuitive to express the geometrical Available online 28 June 2017 meaning of kinematics. In this study, the exact solution to kinematics is derived based on

Keywords: the screw theory. The most important contribution of this study is providing a geomet-

Geometrical solution rical intuition of kinematics. Two arbitrary screws in are equivalent to the sum of Instantaneous kinematics the mutual relation. In the study, general case solutions and special cases of par- Motion analysis allel and perpendicular configuration were examined, and their geometrical meaning was discussed. The proposed method was used to analyze two industrial manipulators, and Screw theory practical effectiveness was verified. The method could be applied to various manipulator configurations and the solution provides the geometrical intuition effectively. Additionally, the geometrical meaning of the solution can be used in design and motion planning. ©2017 Elsevier Ltd. All rights reserved.

1. Introduction

Kinematic analysis of a robot manipulator involves both a kinematics and displacement kinematics. These kinematics analysis is a linear relationship between joint space and end-effector space and is essential for precise control and motion planning. Extant studies analyzed kinematics and differential kinematics using the Denavit–Hartenberg(DH) notation [1–3] . However, the DH method involves several weaknesses, including a singularity problem, shortage of degrees of freedom in space, and difficulty in locating the immediacy of physical meaning in differential kinematics [4] . In 1990, Ball [5] proposed the use of the screw theory to explain motion. This constitutes a useful mathemat- ical tool and natural geometric representation. Following this, several studies used the screw theory. Plücker [6] expressed a screw vector using the Plücker coordinate. Poinsot [7] described a couple and wrench concept with respect to analysis of an end-effector. Chasles [8] introduced a velocity relationship using a twist vector. Woo [9] analyzed the mechanical systems using line such as sphere between parallel planes. Various researchers attempted to adopt the screw theory in the field of robotics. Sugimoto [10] examined linear algebra as a general method to determine a screw system. Duffy [11] analyzed kinematics and instantaneous kinematics of planar

∗ Corresponding author. E-mail addresses: [email protected] , [email protected] (T. Seo), [email protected] (J.W. Lee).

1 H. S. An and J. H. Lee contributed equally to this work as first authors. http://dx.doi.org/10.1016/j.mechmachtheory.2017.06.002 0094-114X/© 2017 Elsevier Ltd. All rights reserved. H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 405 serial and parallel manipulators using the screw theory. Brockett [12] suggested a product of exponentials method in con- junction with and theory for forward kinematics. Hunt [13,14] examined the importance of geometrical kinematic analysis via the screw theory. Gibson [15] classified a screw system for joint analysis. Wolf [16] are studied the method of synthesis of a Stewart platform using Screw theory. Yi and Kim [17] designed the planar mobile robot using screw based kinematics. Phillips [18] analyzed mechanisms and directly combined a screw system in three dimensions. Frisoli [19] suggested a new estimation method of position accuracy with joint clearances in a spatial manipulator using the screw theory. Several researchers adapted the screw theory with respect to serial and parallel robot manipulator analysis [20–25] . Recently, various studies applied the screw theory to robotic applications and focused on simplifying the complicated method involved. Wang [26] and Li [27] studied kinematic errors caused by kinematic calibration that occur during the assembly process. They presented identification using a 3D measuring machine (i.e., laser tracker and laser scanner) and a joint axis configuration space method. Alvarado [28] detailed various joints for a decoupled series parallel robot. Kurbanhusen [29] studied force closure of a cable-driven open system using the reciprocal screw theory. Torre [30] focused on instantaneous kinematics of 3-CRC parallel mechanism via the screw theory. Dai studied the screw algebra and characteristics of finite displacement screw matrix and analysis of planar serial manipulator based on his study. [31–33] Kinematic analyses in conjunction with geometrical intuition are necessary to create a simple reference for mechanism design and motion planning. Several studies have examined a geometrically intuitive solution based on the screw theory. Zhao [34] explained the intuitive geometrical approach from reciprocal screws. Yuan [35] are studied the spatial mechanisms by composition of screw coordinates. Waldron [36] introduce the Jacobian matrix of serial manipulator. From his study, He explain the physical phenomenon such as singularity. Wen expressed a kinematic singularity and stiffness synthesis of a par- allel robot using Grassman −Caylay algebra [37–39] . Kim [40] focused on a graphical instantaneous center of a planar parallel robot using the screw theory. Lee [41] explained a screw vector sum in a planar manipulator via the barycentric formula. These studies involve the use of geometrical intuition to explain an instantaneous motion of a planar mechanism. Addi- tionally, a few studies used a graphical representation to explain the motion in simple terms. However, these studies were limited to planar manipulators, and it was not possible to directly extend the proposed method to a spatial manipulator. The present study provided a new method to analyze the motion of 3-dimensional spatial manipulators by using the screw theory. The analysis commenced with the calculation of a screw sum in a space by using a mutual moment. The method was used to determine magnitude, direction, and distance from the original screw vector of the resulting screw. Based on the screw sum calculation, general cases of manipulator configuration were analyzed to verify the method. Special cases of planar and perpendicular configuration were analyzed, and the results were compared to those obtained by previous studies. The contribution of the study is as follows. The proposed method was extremely geometrically intuitive in calculating the spatial motion of a manipulator. The method was also useful in understanding the meaning of a Jacobian matrix in space. Characteristics of the planar analysis could be directly used in the proposed spatial analysis. Thus, the method was simple to understand, and the planar cases could constitute special cases of the proposed analysis method. The method can be also used to graphically represent general spatial motion, and this can provide an intuitive reference to design or control a manipulator. This paper is organized as follows. Section 2 presents the basics of the screw theory. Section 3 explains the concept of mutual moments and the derivation of the screw vector sum method for a general case. Additionally, special cases of parallel and perpendicular configuration are analyzed, and the results are compared. In Sections 4 and 5 , the application of the screw vector sum method to a special manipulator and a 6-DOF industrial robot with a configuration similar to PUMA configuration or Stanford configuration is described. The conclusions are presented in Section 6 .

2. Preliminaries

This section explains the expression of a screw vector using a Plücker coordinate. A screw vector is classified into three types, namely a screw, a line, and a couple vector. A screw vector (denoted as $ ) consists of an axis vector (denoted as S ) and a moment vector (denoted as S 0 ). An axis vector is determined by two points, namely p1 (x1 , y1 , z1 ) and p2 (x2 , y2 , z2 ) as follows (see Fig. 1):

S = ( x 2 − x 1 ) i + ( y 2 − y 1 ) j + ( z 2 − z 1 ) k = L i + Mj + Nk . (1) where the symbol( i, j, k ) denotes a unit direction vector and the distance between two points is one.  S  = L 2 + M 2 + N 2 = 1 . (2) The moment vector (denoted as S 0 ) can be calculated as follows:

S 0 = r × S + h S = P i + Qj + R k . (3) where r ( x, y, z ) denotes the distance vector between O and an axis vector, and h denotes the value of pitch. Pitch corresponds to the ratio of prismatic about rotation and result of projection S 0 on to S . It is expressed as follows:

h = S 0 · S. (4) A screw vector is called a line vector when a moment vector and an axis vector are perpendicular ( h = 0). A screw vector is called a couple vector when a moment vector and an axis vector are parallel ( h = ∞ ) (see Fig. 2 ). Therefore, a screw 406 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 1. Screw vector in space.

Fig. 2. Moment vector.

Table 1 Three types of screw vectors.

h  = 0, ∞ Screw vector $ = [ S S 0] T T 0 h = 0 Line vector $ = [ S S 0 ] S ⊥ S

h = ∞ Couple vector $ = [ 0 S ] T S  S 0 vector is divided by a line vector. A couple vector and three types of screw vectors are summarized in Table 1 . A line vector is used to define a pure rotation joint, and a couple vector is used to define a prismatic joint. T S L M N S 0 = = = + . $ 0 T (5) S P Q R S 0 h S

3. Geometrical kinematic solution in 3D space

The kinematic solution of a manipulator involves a Jacobian, which is composed of screw vectors. In order to determine a screw vector, it is necessary to define geometric screw sum parameters such as , pitch, and twist angle. The screw sum parameters have a geometrical meaning and provide researchers with a physical intuition. Summation of screw vectors is performed using the mutual moments of two skew axis vectors in space. This section introduces mutual moment, sum of two skew axis vectors, and screw sum parameters.

3.1. Mutual moment

α Two skew axis vectors in Fig. 3 were distorted by distance(D) and twist angle( ). Additionally, S1 and S2 denote axis vectors, and r1 and r2 denote distance vectors.

M12 is a moment of S2 about S1 and is expressed as follows:

M 12 = ( r 2 − r 1 ) × S 2 = D r 12 × S 2 (6) H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 407

Fig. 3. Mutual moment of two axis vectors.

Fig. 4. Summation of two axis vectors in space.

Mutual moment (denoted as M1m ) corresponds to a special case of a reciprocal product when the pitch is zero. Mutual moment M1m between S1 and S2 is defined as follows:

M 1 m = M 12 · S 1 = [ ( r 2 − r 1 ) × S 2 ] · S 1 = S 02 · S 1 + S 01 · S 2 = D sin α (7)

= × = × where S01 r1 S1 and S02 r2 S2 .

Mutual moment corresponds to the effect on S1 by M12 . If two axis vectors are co-planar, then the mutual moment becomes zero because the twist angle (denoted as α) or distance (denoted as D ) is zero [42] .

3.2. Summation of the screw vector

Summation of two screw vectors (denoted as $12 ) is expressed in Fig. 4 S 1 S 2 S 12 S 12 0 ω $ = ω + ω ω = ω + . (8) 12 12 1 2 12 0 12 S01 S02 S12 S0 , 12 hS12 408 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 5. Projection S 12 on to S 1 _ S 2 plane.

where S12 and S0,12 are

ω 1 S 1 + ω 2 S 2 S 12 = (9) ω 12

ω S + ω S = 0 − = 1 01 2 02 − S0 , 12 S12 hS12 hS12 (10) ω 12 from ( 8 ). ω It was assumed that project S1 , S2 and S12 were on a plane as shown in Fig. 5. Magnitude (denoted as 12 ) and twist θ angle (denoted as 12 ) between S1 and S12 are geometrically obtained as follows: 2 2 ω 12 = ( ω 1 + ω 2 c α ) + ( ω 2 s α ) (11)

θ12 = atan 2 ( ω 2 s α, ω 1 + ω 2 c α ) (12) Distance (denoted as d ) between S and S is obtained from the mutual moment as follows: 1 1 12 $ 1 , $ 2 = M 12 = S 1 · S 02 + S 2 · S 01 = D s α (13) $ 1 , $ 12 = M 1 m = S 1 · S 0 , 12 + S 12 · S 01 = d 1 s θ (14) where s α, c α, s θ , and c θ correspond to sin α, cos α, sin θ, and cos θ. Substituting (9) , ( 10 ), and ( 13 ) into ( 14 ), the mutual moment is rewritten as follows: ω 1 S 01 + ω 2 S 02 ω 1 S 1 + ω 2 S 2 M 1 m = S 1 · − h S 12 + · S 01 ω 12 ω 12 ω 2 = ( S 1 · S 02 + S 2 · S 01 ) − h ( S 1 · S 12 ) ω 12 ω 2 = D s α − h ( S 1 · S 12 ). (15) ω 12 where the inner product between Si and S0 i corresponds to zero. Additionally, cos θ is geometrically expressed from Fig. 5 as follows:

ω 1 + ω 2 c α S 1 · S 12 = c θ = (16) ω 12 Furthermore, pitch h is obtained from ( 4 ) and ( 13 ) as follows:

( ω S + ω S ) ( ω S + ω S ) h = 1 01 2 02 · 1 1 2 2 ω 12 ω 12 ω 1 ω 2 ω 1 ω 2 = ( S 01 · S 2 + S 02 · S 1 ) = Ds α. (17) ω 2 ω 2 12 12 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 409

Table 2 Screw sum parameter.

General case Perpendicular case ( α = ± 90 °) Parallel case ( α = 0 °, 180 °)

ω ω 2 + ω 2 + ω ω α ω 2 + ω 2 ω ± ω 12 1 2 2 1 2 c 1 2 1 2 θ atan2 ( ω s α, ω + ω c α ) atan2( ω , ω ) 0 ° 12 2 1 2 2 1 ω 2 + ω ω c α ω 2 ω 2 1 2 2 2 d1 /D 2 2 2 2 2 2 ω + ω +2 ω 1 ω 2 c α ω + ω ω ±ω ω 1 ω 2 ω 1 ω 2 1 2 1 2 1 2 h ω 2 Dsα ω 2 D 0 T⎡ ⎤ T⎡ ⎤ ⎡ ⎤ ( ω 2 + ω ω ) + ( ω 2 + ω ω ) ω 2 + ω 2 ω + ω 1 1 2 cα x1 2 1 2 cα x2 1 x1 2 x2 1 x1 2 x2 1 ⎣ ( ω 2 + ω ω ) + ( ω 2 + ω ω ) ⎦ 1 ⎣ω 2 + ω 2 ⎦ 1 ⎣ ω + ω ⎦ r12 2 1 2 cα y1 1 2 cα y2 2 y1 y2 ω 1 y1 2 y2 ω 1 2 ω 1 2 T T ( ω 2 + ω ω ) + ( ω 2 + ω ω ) T ω 2 + ω 2 ω + ω 1 1 2 cα z1 2 1 2 cα z2 1 z1 2 z2 1 z1 2 z2

Eqs. (16) and (17) are substituted into (15) as follows: ω ω ω ω + ω c α ω ω ω + ω c α = 2 − 1 2 1 2 = 2 − 1 1 2 M1 m Dsα Dsα Dsα 1 ω ω 2 ω ω ω ω 12 12 12 12 12 12 ω 1 ω 1 + ω 2 c α = D s θ 1 − (18) ω 12 ω 12 ω ω where ( 2 sα)/ 12 corresponds to sθ from Fig. 5. The distance (denoted as d ) is obtained from ( 14 ) and ( 18 ) as given below: 1 ω 1 ω 1 + ω 2 c α d 1 = D 1 − (19) ω 12 ω 12

The position vector (denoted as r12 ) of S12 is calculated using (19) as follows: x 12 x 1 x 2 − x 1 d 1 r = y = y + y − y 12 12 1 D 2 1 z 12 z 1 z 2 − z 1

ω 2 + ω ω x1 ω 2 + ω ω x2 1 1 2 cα 2 1 2 cα = y + y 2 1 2 2 ω ω 12 z 1 12 z 2 ⎡ ⎤ 2 2 ω + ω 1 ω 2 c α x 1 + ω + ω 1 ω 2 c α x 2 1 2 1 ⎣ 2 2 ⎦ = ω + ω 1 ω 2 c α y 1 + ω + ω 1 ω 2 c α y 2 . (20) ω 2 1 2 12 ω 2 + ω ω + ω 2 + ω ω 1 1 2 cα z1 2 1 2 cα z2

3.3. Special cases: parallel and perpendicular

α Screw sum parameters as shown in Table 2 are functions of twist angle between S1 and S2 and can be simplified in the case of parallel and are perpendicular to each other. Twist angle α corresponds to 0 ° or 180 ° when two axis vectors are parallel. Screw sum parameters include the following:

ω 12 = ω 1 ± ω 2 (21)

◦ θ = 0 (22)

±ω 2 d 1 = D (23) ω 1 ± ω 2

h = 0 h = 0 (24)

ω x + ω x 1 1 1 2 2 r 12 = ω 1 y 1 + ω 2 y 2 (25) ω T ω 1 z 1 + ω 2 z 2

ω Magnitude (denoted as 12 ) corresponds to the sum of angular velocity. The twist angle and pitch are zero. Distance ω is proportional to the magnitude (denoted as 12 ). Screw sum parameters are simple because axis vectors are typically on a plane. Therefore, summation of a two-axis vector can be easily obtained using methods such as the barycentric formula proposed by Lee [31] . 410 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 6. Graphical representation of Summation vector of a two-axis vector.

The twist angle α is ±90 ° if two axis vectors are perpendicular to each other. Screw sum parameters are as follows: ω = ω 2 + ω 2 12 1 2 (26)

√ θ = atan 2 ω 2 , ω 1 (27)

2 d ω 1 = 2 (28) D ω 2 + ω 2 1 2

ω ω h = 1 2 D (29) ω 2 + ω 2 1 2

ω 2x + ω 2x 1 1 1 2 2 = ω 2 + ω 2 r12 y1 y2 (30) ω 2 1 2 T ω 2 + ω 2 1 z1 2 z2

ω θ Magnitude (denoted as 12 ) and twist angle (denoted as 12 ) between S1 and S12 are obtained by the Pythagorean theorem. Distance and pitch are proportional to the square of the magnitude.

Five types of screw sum parameters are summarized in Table 2. As shown in Fig. 6, S12 converges to S2 from S1 .

4. Analysis on special type manipulators

The proposed method was applied to a few special manipulators such as the 3R planar manipulator, 3R spatial manipulator, and 3R wrist manipulator. These special cases could be applied in two types of industrial robots. The geometrical meaning of the Jacobian matrix is discussed with respect to the special manipulators.

4.1. Planar type

A planar serial manipulator with 3 revolute joints in Fig. 7 has screw vectors that are expressed as follows: T S 0 0 1 = 1 = $1 T (31) S 01 0 0 0 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 411

Fig. 7. Schematic of 3R planar robot ( α = 0 °, 180 °).

T

S 2 0 0 1 $ 2 = = (32) S T 02 y 2 −x 2 0 T

S 3 0 0 1 $ 3 = = (33) S T 03 y 3 −x 3 0

where xi and yi denote the location of each joint. The link length of each link and the angular velocity of each joint ω α corresponded to li and i , respectively. Additionally, i is 0° because the three axes vectors were parallel to each other.

Specifically, $23 is obtained from sum of $2 and $3 . Screw sum parameters include the following:

ω 23 = ω 2 + ω 3 (34)

◦ θ23 = atan2 0 , ω 2 + ω 3 = 0 (35)

d ω 23 = 3 (36) l 2 ω 2 + ω 3 x 23 x 2 x 3 − x 2 ω 2 x 3 − ω 3 x 2 d 23 1 r 23 = y 23 = y 2 + y 3 − y 2 = ω 2 y 3 − ω 3 y 2 . (37) l 2 ω 2 + ω 3 z 23 z 2 z 3 − z 2 ω 2 z 3 − ω 3 z 2

Here, $23 is result screw vector of two parallel screw vector which is $2 and $3 and consisted of axis vector S23 and 0 moment vector S23 . The axis vector S23 also parallel with another axis vector.

Similarly, $T is obtained from the sum of $1 and $23 , and its screw sum parameters are calculated as follows:

ω T = ω 1 + ω 23 = ω 1 + ω 2 + ω 3 (38)

◦ θT = atan 2 0 , ω 1 + ω 23 = 0 (39)

d ω ω T = 23 = 23 (40) l T ω 1 + ω 23 ω T x T x 1 x 23 − x 1 ω 2 x 2 − ω 3 x 3 d T 1 r T = y T = y 1 + y 23 − y 1 = ω 2 y 2 − ω 3 y 3 . (41) l T ω T 0 z 1 0 0

where x1 and y1 correspond to zero. $T is result screw vector of summation. It consisted of axis vector ST which is the direction of rotation and magnitude of axis vector is rotation velocity, and moment vector that means linear velocity of end effector. 412 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 8. Schematic of three perpendicular axis vectors ( α =±90 °).

Angular velocity is the sum of three axis vectors, and linear velocity is expressed in terms of the cross product of the distance vector (denoted as rT ) and sum axis vector (denoted as ST ). Therefore, angular velocity and linear velocity are expressed as follows: 0 ω T S T = ω 1 S 1 + ω 2 S 2 + ω 3 S 3 = 0 . (42) ω 1 + ω 2 + ω 3 ω 2 y 2 + ω 3 y 3

ω 0 = × ( ω ) = −ω − ω . T ST rT T ST 2 x2 3 x3 (43) 0

4.2. Spatial type

Fig. 8 shows a 3R spatial type. Two axis vectors (that is, S2 and S3 ) are parallel, and an axis vector (S1 ) is perpendicular ω each other. The 3R spatial type has three screw vectors, namely $i , link length li and angular velocity i . Three screw vectors with pure rotation are expressed as follows: T S 0 0 1 = 1 = $1 T (44) S 01 0 0 0 T − S 2 s1 c1 0 $ 2 = = (45) S T 02 0 0 x 2 c 1 + y 2 s 1 T − S 3 s1 c1 0 $ 3 = = (46) S T 03 −z 3 c 1 −z 3 s 1 x 3 c 1 + y 3 s 1 where the locations of each joint were geometrically calculated from Fig. 8 as follows: x = l c 2 1 1 (47) y 2 = l 1 s 1 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 413

x 3 = ( l 1 + l 2 c 2 )c 1 y 3 = ( l 1 + l 2 c 2 )s 1 (48) z 3 = l 2 s 2

As shown previously, the sum of two parallel axis vectors was already calculated in the 3R planar case. Screw sum parameters include the following:

ω 23 = ω 2 + ω 3 (49)

◦ θ23 = 0 (50)

d ω 23 = 3 (51) l 2 ω 2 + ω 3

h = 0 (52)

x 23 x 2 x 3 − x 2 ω 2 x 2 + ω 3 x 3 d 23 1 r T = y 23 = y 2 + y 3 − y 2 = ω 2 y 2 + ω 3 y 3 . (53) l 2 ω 23 z 23 0 z 3 ω 3 z 3

In this case, the results of the sum axis vector were the same as those in the planer type except r23 , which had a z component.

Furthermore, two axis vector, namely S1 and S23 are perpendicular to each other. Screw sum parameters of ST can be calculated using Table 2 as follows: ω = ω 2 + ω 2 T 1 23 (54)

√ θT = atan 2 ω 23 , ω 1 (55)

2 2 d ω ω T = 23 = 23 (56) l ω 2 + ω 2 ω 2 T 1 23 T

ω 1 ω 23 h = l T (57) ω 2 T

ω + ω xT 0 x23 0 ω 2 2 x2 3 x3 dT 1 23 r = y = 0 + y = 0 + ω y + ω y . (58) T T 23 ω 2 2 2 3 3 l23 23 ω 0 z 23 0 ω 3 z 3 T 0

In contrast to the previous case, the pitch occurred because of the twist angle that corresponded to 90° and distance lT of S1 and S23 .

The result axis vector ST is sum of two perpendicular axis vector which is S1 and S23 . The direction of ST is not parallel with another axis vector and is expressed as direction of angular velocity. The final sum axis vector and moment vector correspond to the following: −ω 23 s 1 ω T S T = ω 1 S 1 + ω 2 S 2 + ω 3 S 3 = ω 23 c 1 . (59) ω 1

ω 1 y T − ω 23 c 1 z T ω T S 0 , T = r T × ( ω T S T ) = −ω 1 x T − ω 23 s 1 z T . (60) ω 23 ( c 1 x T + s 1 y T ) 414 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 9. Wrist configuration of industrial robot.

Angular velocity is the sum of the axis vector, and the linear velocity is calculated using the moment vector. This is expressed as follows: ω − ω −ω 1 yT 23 c1 zT ω ω ω 23 s1 0 1 23 3 ω S = ω ( S , + h S ) = −ω x − ω s z + l + l c ω c T T T 0 T T 1 T 23 1 T 2 T ω 2 2 23 1 ω 23 ω 23 ( c 1 x T + s 1 y T ) T ω 1 −ω 23 c 1 z 3 = −ω 23 s 1 z 3 . (61) ω 2 ( c 1 x 2 + s 1 y 2 ) + ω 3 ( c 1 x 3 + s 1 y 3 ) The difference between the planar and spatial type is due to the pitch. If two axis vectors have a twist angle and distance, then linear velocity is expressed by a combination of the axis vector and moment vector.

4.3. Wrist type

The wrist type involves three axis vectors, namely S4 , S5 , and S6 . Three axis vectors are gathered at the wrist center (xw , y w , z w ) as shown in Fig. 9 .

First, S5 and S6 are summed and the screw sum parameters are as follows: ω = ω 2 + ω 2 56 5 6 (62)

θ56 = atan 2 ( ω 6 , ω 5 ) (63)

d 56 = 0 (64)

Next, the total sum axis vector (denoted as Sw ) included a summation of the relation between S4 and S56 as follows:

ω = ω 2 + ω 2 + ω ω α w 4 56 2 4 56c w (65)

θ = ( ω , ω + ω ) w atan2 6 sαw 45 6 cαw (66)

d w = 0 . (67) The resulting equations were similar to the results of skew-coordinates [43] . The wrist axis vector is located as follows: x w r T = y w . (68) z w From these results, angular and linear velocity are simply calculated as follows:

ω w S w = ω 4 S 4 + ω 5 S 5 + ω 6 S 6 (69)

ω 0 = × ( ω ) w Sw rw w Sw (70) The pitch corresponded to zero because the three axis vectors were gathered at a single point. In this section, the proposed method was applied to several types of manipulators. The meaning of the Jacobian matrix could be understood graphically. H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 415

Fig. 10. General case of an industrial robot.

Fig. 11. Screw sum progress of an industrial robot.

5. Analysis of 6 axis spatial manipulators

The proposed method was used to analyze industrial robots such as Puma type manipulators and Stanford manipulators. The results were compared with those of pure rotation joints and prismatic joints.

5.1. PUMA type manipulator

A PUMA type manipulator has six axis vectors with pure rotation as shown in Fig. 10 . Each axis vector is attached to a joint. The PUMA manipulator consists of two parts, namely a 3R spatial arm part and a wrist part. The 3R spatial part is shown in Fig. 11 (a). The screw sum parameters were calculated in the previous section and can be expressed as follows: 2 ω = ω 2 + ( ω + ω ) a 1 2 3 (71)

θa = atan 2 ( ω 2 + ω 3 , ω 1 ) (72)

2 ( ω 2 + ω 3 ) = . da D123 (73) ω 2 + ( ω + ω )2 1 2 3 Additionally, the wrist parts were also calculated in the previous section. The distance corresponded to zero because three axis vectors were gathered at a single wrist point as shown in Fig. 11 (b). The screw sum parameters are as follow:

ω = ω 2 + ω 2 + ω ω α w 4 56 2 4 56c w (74) 416 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

Fig. 12. Stanford arm manipulator.

θ = ω α , ω 2 + ω 2 + ω α w atan2 6s w 4 5 6c w (75)

d w = 0 (76)

α where ω corresponds to the twist angle between S4 and S56 . Finally, two axis vectors, namely S a and S w were added. The two axis vectors ( S a and S w ) have a twist angle denoted by α T and a twist distance denoted by DT (see Fig. 11(c)). The final screw sum parameters include the following: ω = ω 2 + ω 2 + ω ω T a w 2 a w cαT (77)

θ = ( ω , ω + ω ) T atan2 w sαT a w cαT (78)

ω 2 + ω ω α w a wc T d 1 , T = D T . (79) ω 2 + ω 2 + ω ω a w 2 a w cαT using Table 2 . The angular velocity and linear velocity are as follow:

6 ω T S T = ω i S i (80) i =1

ω 0 = ω ( × + ) T ST T rT ST hST (81) where rT denotes the distance vector, and ST denotes angular velocity. The resulting axis vectors are graphically expressed in Fig. 11 (c).

5.2. Stanford manipulator

The Stanford manipulator is shown in Fig. 12 . The Stanford manipulator has five pure rotation joints and a prismatic T joint. The screw vector of the prismatic joint was a couple vector and its screw coordinate was [0 S3 ] . The other screw T coordinate was [Si S0 i ] . The Stanford manipulator could also be separated by an arm part and a wrist part such as a PUMA manipulator. The screw sum parameters of the arm part were also referred to the 3R perpendicular case and are expressed as follows:

ω = ω 2 + ω 2 a 1 2 (82)

θa = atan2 ( ω 2 , ω 1 ) (83)

2 d , ω 1 a = 3 . (84) l ω 2 + ω 2 1 1 2 Furthermore, the summation of the wrist axis vector was same as that of the PUMA robot. The distance between the wrist axis vectors corresponded to zero. The results are as follows:

ω = ω 2 + ω 2 + ω ω α w 45 6 45 6 c ω (85)

θw = atan 2 ( ω 6 s αω , ω 45 + ω 6 c αω ) (86) H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418 417

Fig. 13. Screw sum of the Stanford arm.

d w = 0 (87)

Finally, the last axis vector is shown in Fig. 12 , and the screw sum parameters are as follow: ω = ω 2 + ω 2 + ω ω T a w 2 a w cαT (88)

θ = ( ω , ω + ω ) T atan2 w sαT a w cαT (89)

ω 2 + ω ω α w a wc T d 1 , T = D T . (90) ω 2 + ω 2 + ω ω a w 2 a w cαT

The moment vector of ST in the end-effector is as follows:

ω 0 = ω ( × + ) + ω T ST T rT ST hST T S3 (91)

where rT denotes the distance vector between the resulting axis vector and end-effector. The couple vector only had an effect on the moment vector. The result is shown in Fig. 13 (b), and linear velocity was geometrically expressed. The proposed method had an exact solution and could be applied to all types of joints from the two examples.

6. Conclusions

This study introduced a method to determine an exact differential kinematic solution of spatial manipulators by using a geometrical method. In order to define a Jacobian, the summation of the screw vector of spatial manipulators was geometrically determined. The method was based on a screw vector sum using a mutual moment in a space. The exact solution of the screw vector sum in a space was provided, and the geometrical meaning of the vector sum was examined. The planar type and a wrist configuration of the screw vector sum were also analyzed as special cases. The analysis results with a planar 3R manipulator were compared with the results of previous studies based on the barycentric formula. Two popular manipulator configurations, PUMA and Stanford manipulators, were selected for case studies. The proposed method was used to analyze the manipulators, and the calculation results and geometrical meaning were discussed. The results indicated that the proposed method was extremely intuitive and provided a geometrical meaning for the Jacobian equation. Hence, the method can be used in designing or controlling a manipulator. Future research will involve direct calculation of inverse Jacobian without inverting the forward Jacobian to get the geometrical information in the derived eqautions.

Acknowledgments

This work was supported by the 2016 Yeungnam University grant. 418 H.S. An et al. / Mechanism and Machine Theory 116 (2017) 404–418

References

[1] M.W. Spong , S. Hutchinson , M. Vidyasager , Robot Modelling and Control, Wiley, 2005 . [2] S.B. Niku , Introduction to Robotics Analysis, Control, Applicataion, second ed., Wiley, 2010 . [3] J. Denavit , R.S. Hartenberg , A kinematic notation for lower-pair mechanisms based on matrices, ASME J. Appl. Mech. 22 (June (2) (1955) 215–221 . [4] R. He , Y. Zhao , S. Yang , S. Yang , Kinematic-parameter identification for serial-robot calibration based on POE formula, IEEE Trans. Robot. 26 (3) (2010) 411–423 . [5] R.S. Ball , A Treatise on the Theory of Screws, Cambridge Univ. Press, Cambridge, England, 1900 . [6] J. Plücker , On a new geometry of space, Philos. Trans. R. Soc. London 155 (1865) 725–791 . [7] L. Poinsot , Sur la composition des moments et la composition des aires, J. Ecole Polytechnique 6 (1806) 182–205 Paris . [8] M. Chasles , Note sur les Propriétés Générales du Système de Deux Corps Semblables entr’eux, Bulletin de Sciences Mathematiques, Astronomiques Physiques et Chimiques 14 (1830) 321–326 Baron de Ferussac, Paris . [9] L. Woo , F. Freudenstein , Application of line geometry to theoretical kinematics and the kinematic analysis of mechanical systems, J. Mech. 5 (1970) 417–460 . [10] K. Sugimoto , Application of linear algebra to screw systems, Mech. Mach. Theory 17 (1) (1962) 73–83 . [11] J. Duffy , and Kinematics With Applications to Robotics, Cambridge Univ. Press, 1996 . [12] R.W. Brockett , Robotic manipulators and the product of exponentials formula, in: Mathematical Theory of Networks and Systems, Springer Verlag, Berlin, 1984, pp. 120–129 . [13] K.H. Hunt , Kinematic Geometry of Mechanisms, Clarendon Press, 1978 . [14] K.H. Hunt , Special configurations of robot-arms via screw theory, Robotica 4 (1986) 171–179 . [15] C.G. Gibson , K.H. Hunt , Geometry of screw systems 2, Mech. Mach. Theory 25 (1) (1990) 1–10 . [16] A. Wolf , M Shoham , Screw theory tools for the synthesis if the geometry of a parallel robot for a given instantaneous task, Mech. Mach. Theory 41 (6) (2006) 656–670 . [17] B.J. Yi , W.K Kim , Screw-based kinematic modeling and geometric analysis of planar mobile robots, in: Proceedings of the 2007 IEEE International Conference on Mechatronics and Automation, 2007 . [18] J. Phillips , Freedom in Machinery: Vol 1 Introducing Screw Theory, Cambridge Univ. Press, 1984 . [19] A. Frisoli , M. Solazzi , D. Pellegrinetti , M. Bergamasco , A new screw theory method for the estimation of position accuracy in spatial parallel manipu- lators with revolute joint clearances, Mech. Mach. Theory 46 (2011) 1929–1949 . [20] R.M. Murray , Z. Li , S.S. Sastry , A Mathematical Introduction to Robotic Manipulation, CRC Press, 1994 . [21] R.N. Jazar , Theory of Applied Robotics: kinematics, and Control, second, Springer, 2010 . [22] J.M. Selig , A class of explicitly solvable vehicle motion problems, IEEE Trans. Robot. 31 (3) (2015) 766–777 . [23] Y. Fang , L.W. Tsai , Inverse velocity and singularity analysis of low-DOF serial manipulators, J. Robot. Syst. 20 (4) (2003) 177–188 . [24] J. Zhao , Z. Feng , F. Chu , N. Ma , Advanced Theory of Constraint and Motion Analysis For Robot Mechanisms, Elsevier, 2014 . [25] A.Y.C. Nee , Handbook of Manufacturing Engineering and Technology, Springer reference, 2015 . [26] H. Wang , S. Shen , X. Lu , A screw axis identification method for serial robot calibration based on the POE model, Ind. Robot 39 (2) (2012) 146–153 . [27] C. Li , Y. Wu , H. Lowe , Z. Li , POE-based robot kinematic calibration using axis configuration space and the adjoint error model, IEEE Trans. Robot. (99) (2016) 1–16 . [28] J.G. Alvarado , R.R. Castro , A.S. Rodriguez , Kinematics of a decoupled series-parallel manipulator by means of screw theory, Adv. Robot. Res. 1 (3) (2014) 185–198 . [29] S.K. Mustafa , S.K. Agrawal , On the force-closure analysis of n-DOF cable-driven open chains based on reciprocal screw theory, IEEE Trans. Robot. 28 (1) (2012) 22–31 . [30] H.D.L. Torre and E. Rodriguez-Leal, “Instantaneous kinematics analysis via screw-theory of a novel 3-CRC parallel mechanism”, Int. Adv. Robot. Syst., vol. 13, pp. 1–16, Available http://arx.sagepub.com/content/13/3/128.full.pdf+html . [31] J.S. Dai , N. Holland , D.R. Kerr , Finite twist mapping and its application to planar serial manipultors with revolute joints, J. Mech. Eng. Sci. 209 (1995) 263–271 . [32] J.S. Dai , J.R. Jones , Null-space construction using cofactors from a screw-algebra context, Proc. R. Soc. London A 458 (2024) (2002) 1845–1866 . [33] J.S. Dai , Finite displacement screw operators with embedded chasles’ motion, J. Mech. Robot. 4 (4) (2012) 041002 . [34] J. Zhao , B. Li , X. Yang , H. Yu , Geometrical method to determine the reciprocal screws and applications to parallel manipulators, Robotica 27 (2009) 929–940 . [35] M.S.C. Yuan , F. Freudenstein , Kinematic Analysis of spatial Mechanisms by Means of Screw Coordinates. Part 1 –screw coordinates, J. Eng. Ind. 93 (1971) 61–66 . [36] K.J. Waldron , S.L. Wang , S.J. Bolin , A Study of the Jacobian Matrix of Serial Manipulators, Trans. ASME 107 (1985) . [37] K. Wen , T. Seo , J.W. Lee , A geometric approach for singularity analysis of 3-DOF planar parallel manipulators using Grassmann-Cayley algebra, Robotica 35 (3) (2015) 1–10 . [38] K. Wen , J.W. Lee , T.W. Seo , Inverse statics analysis of planar parallel manipulators via Grassmann-Cayley algebra, Int. J. Control, Auto. Syst. 14 (2016) 1–6 . [39] K. Wen , C.B. Shin , T. Seo , J.W. Lee , Stiffness synthesis of 3-DOF planar 3RPR parallel mechanisms, Robotica 34 (12) (2015) 1–12 . [40] M. Kim , M.S. Han , T. Seo , J.W. Lee , A new instantaneous center analysis methodology for planar closed chains via graphical representation, Int. J. Control, Auto. Syst. 14 (2016) 1–7 . [41] C. Lee , J.H. Lee , T. Seo , J.W. Lee , Geometrical kinematic and static analyses of planar manipulators using a barycentric formula, Mech. Mach. Theory 97 (2016) 72–84 . [42] Z. Huang , Q. Li , H. Ding , Theory of Parallel Mechanisms, Springer, 2013 . [43] L.P. Lebedev , M.J. Cloud , Tensor Analysis, World Scientific, 2003 .