Modular Robot

Embed Size (px)

Citation preview

  • 8/4/2019 Modular Robot

    1/15

    Kinematic Calibration of Modular ReconfigurableRobots Using Product-of-

    Exponentials Formula

    I-Ming Chen* and Guilin YangSchool of Mechanical and Production EngineeringNanyang Technological UniversitySingapore 639798, Republic of Singaporee-mail: michen@ ntu.edu.sg

    Received June 20, 1996;accepted June 30, 1997

    A modular reconfigurable robot system is a collection of individual link and jointcomponents that can be assembled into different robot geometries for specific taskrequirements . However, the machining tolerance and assembly errors at the moduleinterconnections affect the positioning accuracy of the end-effector . This article de-scribes a novel kinematic calibration algorithm for modular robots based on recursiveforward dyad kinematics . The forward kinematic model derived from the Product-of-Exponentials formula is configuration independent . The error correction parametersare assumed to be in the relative initial positions of the dyads . Two calibrationmodels, namely the six- and seven-parameter methods, are derived on the grounds ofthe linear superposition principle and differential transformation . An iterative leastsquare algorithm is employed for the calibration solution . Two simulation examples of

    calibrating a three-module manipulator and a 4-DOF SCARA type manipulator aredemonstrated . The result has shown that the average positioning accuracy of theend-effector increases two orders of magnitude after the calibration . 1997 John Wiley &Sons, Inc.

    * To whom all correspondence should be addressed .

    ( ) ( )Journal of Robotic Systems 14 11 , 807 821 19971997 by John Wiley & Sons, Inc. CCC 0741-2223/ 97 / 110807-15

  • 8/4/2019 Modular Robot

    2/15

    Journal of Robotic Systems1997 808

    1. INTRODUCTION

    A modular reconfigurable robot system is referredto as a collection of individual link and joint compo-nents that can be arbitrarily assembled into a num-ber of different robot configurations and geometries .1

    Compared to a conventional industrial robot manip-ulator which is designed as a complete system for alimited set of tasks, a modular robot system canprovide an inventory of functional components for awide spectrum of tasks through the selection andreconfiguration of components . Several prototypingsystems have been demonstrated in various re-search institutions .2 5 Applications of modularitydesigned robots have been seen in rapid deployablerobot systems for field and hazardous material han-dling, 2 space station based autonomous systems, 6

    and flexible manufacturing systems .7

    However, one main concern in the modularrobot system is the positioning accuracy of the end-effector . A series of robot modules are joinedthrough connecting mechanisms to form a completerobot assembly . Factors like the machining toler-ance, compliance, and wear of the connecting mech-anism and misalignment of the connected modulecomponents may affect the positioning accuracy ofthe end-effector . Therefore, identifying the criticalkinematic parameters to improve the positioningaccuracy of the end-effector becomes a very impor-tant issue for modular reconfigurable robots . Modu-lar robot calibration comes into play in at least twosituations . One is after the reconfiguration of a robotgeometry . In this case, new kinematic parameters ofthe robot have to be identified and corrected . Theother is after a number of operations because of thepossible loose module connections . The actual kine-matic parameters may vary from the previouslycalibrated ones .

    Because the robot geometries that a modularrobot system can generate differ significantly, e .g.,serial, branch, and close-loop types, conventionalcalibration schemes 8,9 dealing with a specific type ofrobots with serial geometry are not suitable undersuch circumstances . Furthermore, most of these al-

    .gorithms are based on the Denavit-Hartenberg D-Hparameterization method, 10 which uses a minimumset of parameters to describe the relationship ofadjacent joint axes . When being adopted in a cali- bration procedure, this method is not amendable to

    direct identification because all of the parameters inthe kinematic model are precisely defined and areunique .11 In addition, it has the singularity problemwhen neighboring joint axes are nearly parallel .Hayati, 12 Stone, 11 and Zhuang 13 focused on over-coming the singularity problem using modified D-Hrepresentations . However, these approaches maycomplicate the calibration model with arbitrarilydefined parameters .

    In this article, we propose a novel singularity-free kinematic calibration modeling method for the

    modular reconfigurable robot system designed inNanyang Technological University . This calibrationmethod is based on the configuration independentforward kinematic algorithm for modular robotsdeveloped by Chen .1,7 The kinematic algorithm con-tains a graph-based modular assembly representa-

    .tion, termed Assembly Incidence Matrices AIM ,which describe the connectivity and spatial relation-ship of connected modules, and a recursive dyadkinematics relating the relative positions of adjacentmodules . The dyad kinematics employs the Product-

    . 10of-Exponentials POE formula, which is a geo-metric representation of the kinematics of a ma-nipulator based on the concept of one-parametersubgroup of Lie groups . The POE method is uni-

  • 8/4/2019 Modular Robot

    3/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 809

    form in modeling manipulators with both revoluteand prismatic joints, and thus provides a very struc-tured parameterization for an open chain manipula-tor . Significantly, the kinematic parameters in thePOE model vary smoothly with changes in joint

    axes so that no special descriptions are requiredwhen adjacent joint axes are close to parallel . Thisfact makes the POE formula very suitable for kine-matic calibration . Moreover, the POE formula isbasically a zero reference position method, in which

    the description of the manipulator is in terms of thejoint axes directions and locations in the zero refer-

    .ence position s . It can be shown with this articlethat the POE formula is more convenient to auto-matically generate the kinematic calibration modelfor a modular robot .

    It is worth mentioning that Park et al .14 pro-posed a calibration method based on the POE for-mula for general open chain manipulators . Thismethod works by assuming the kinematic errorsexist in the joint axes and the home position of thetool frame . All kinematic parameters are expressedin the base frame so that the local frames attachedto each link are unnecessary . Such a modelingscheme is suitable for a monolithically designedrobot . For a modular robot, however, it becomesimpractical since it is simple and clear to expressthe kinematic parameters in the local referenceframes in this case . In our calibration model, areference frame is defined on each module . Thekinematic errors are assumed to exist in the relativeinitial position of two module frames and the rela-tive joint angle in a dyad . Based on the linearsuperposition principle, the gross error in the end-effector position is the sum of the differential errorsresulting from the errors in the initial positions ofall dyads and the joint angles . Based on differenterror assumptions, six-parameter and seven-param-

    eter models are derived . Both models are suitablefor modular robots with different geometries . Fi-nally, an iterative least-square algorithm is em-ployed for calibration solution . Two simulation ex-amples of calibrating a three-module manipulatorand a SCARA type manipulator are demonstrated .The results have shown that the average positioningaccuracy of the end-effector increases significantlyafter the calibration .

    This article is organized as follows . Section Two briefly describes the design of a modular robotsystem to be built in Nanyang Technological Uni-versity for factory automation purposes . SectionThree briefly mentions the configuration-indepen-dent modular robot kinematics . The kinematic cali- bration models for modular robots are introduced inSection Four . Two simulated calibration examplesare given in Section Five to demonstrate the accu-racy, effectiveness, and generality of this approach .It is also shown that the two calibration models areequivalent in the sense of calibrating a modularrobot of the same geometry . Section Six summarizesthe article .

    2. MODULE DESIGNS

    A novel modular reconfigurable robot system has been proposed by Chen and Yang 7 for factory au-tomation purposes . The main feature of this systemis the use of a minimal number of module compo-nents to construct a robot geometry for a specificassembly task . Hence, the swiftness of the operationcan increase .

    Two categories of modules are considered: link .modules Fig . 1 and joint modules . Joint modules

    include simple one degree-of freedom revolute joints . .Fig. 2 and prismatic joints Fig . 3 . All modules are

    Figure 1. Link module .

  • 8/4/2019 Modular Robot

    4/15

    Journal of Robotic Systems1997 810

    Figure 2. Revolute joint module .

    designed based on the building block principle:cubic units with multiple connecting sockets . Theconnecting sockets are located on the faces of thecubes . Two modules are fastened together by aconnector or an adapter through the sockets . Therelative orientation of two modules can be changedjust by fastening them through different connectingsockets . The geometry of the entire robot assemblycan be altered in a similar way .

    The link module is a cube with fixed connecting

    sockets on each face.

    The designs of joint modulesare similar, but with built-in linear or rotary actua-tors . Only the socket connected to the actuator canmove; all other sockets are fixed . Two series ofmodules of different dimensions are considered . Thesmaller series will be mounted as distal modules toreduce the inertia load of the robot itself . Modules

    .of the same size are joined by connectors Fig . 4a ;modules of different sizes are joined by adapters .Fig. 4b .

    3. MODULAR ROBOT KINEMATICS

    To handle the diversified robot geometries gener-ated from a collection of modular robot compo-nents, the kinematic model for modular reconfig-urable robots need a notion of the module assemblysequence and an algorithm to determine the spatialrelationship of the assembled modules . In the D-Hparameterization model, these two identities arecombined . A clean separation of the two identities is

    important in modeling modular reconfigurablerobots for clarity and simplicity . An Assembly Inci- .dence Matrix AIM representation is proposed by

    Chen 1,7 for the modular robot assembly sequences .This matrix describes the connectivity and geometry

    .of connections the connected sockets of all themodules in a robot assembly . One will be able toassemble a modular manipulator according to agiven AIM . With such representation, kinematics,dynamics, assembly configuration enumeration, and

    Figure 3. Prismatic joint module .

  • 8/4/2019 Modular Robot

    5/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 811

    Figure 4. Connector r adaptor .

    calibration issues can be investigated separately .Solution strategies can be implemented based on

    the AIMs to achieve geometry independence.

    3.1. Modular Robot Assembly Representation

    The AIM is based on the concept of kinematic graphsfrom mechanism analysis and synthesis .15 A robot,like a kinematic chain, comprises a collection oflinks and joints, and thus admits a graph represen-tation in which vertices represent links and edgesrepresent joints . It is known that this graph can berepresented numerically as a vertex-edge incidencematrix in which the entries contain only 0s and 1s .16

    The number of columns and rows in this matrix areequal to the numbers of edges and vertices in the

    .graph, respectively . Entry i, j is equal to 1 if edgej is incident on vertex i, otherwise, it is equal tozero .

    To further describe the geometry of the moduleconnections, we use labels to identify all the con-necting sockets . The 1s in the incidence matrix ofthe robot graph have provided the connectivity ofall link and joint modules, and thus substituting the1s with the labels of the connected sockets on re-

    spective modules indicates exactly how those mod-ules are assembled . The types of links and jointsused in the robot assembly can be shown by addingone additional row and column to the matrix thatspecify the types of link and joint modules . This

    incidence matrix with labels of connected socketsand types of connected links and joints is the AIM .Once it is given, the assembly configuration of therobot is fully described .

    The socket labeling scheme is non-unique . It can be named by numbers, 1 or the direction vectors ofthe connecting socket 7 with geometric definitions ofthose labels given . The assembly configuration ofthe following AIM is shown in Fig . 5. It is the AIMrepresentation for the module robot system men-tioned in the previous section .

    Figure 5.An assembly configuration

    .

    . . .z , x x, y y x, y 0 0 0 0 L p1 .y z, x 0 0 0 0 0 0 Lc2

    . .0 y y, x 0 z, x 0 0 0 Lr 1 . .0 0 y x, y 0 z, y x 0 0 Lr 1

    . . . 0 0 0 x, z 0 y x, y z 0 L A G s ,c1 . .0 0 0 0 y x, y 0 z, y L p2

    .0 0 0 0 0 x, y z 0 Lc2 .0 0 0 0 0 0 x, z Lc2

    J J J J J J J 0 p2 v1 v1 r 1 r 2 v 2 p 3

  • 8/4/2019 Modular Robot

    6/15

    Journal of Robotic Systems1997 812

    where L , L , and L is 1 for large series and 2 p i r i c i.for small series denote the types of links; J , J , p i r i

    and J is 1 for a large connector, 2 for an adapter,vi.and 3 for a small connector denote the types of the

    joints . In our modeling scheme, all modules areconsidered as links, i .e., links from prismatic jointmodules, revolute joint modules, and cubic linkmodules denoted by L , L , and L respectively; p i r i c ithe connector r adapter is considered a joint be-tween two connected modules . The connector istreated as a revolute joint J when it is fastenedr ito the rotating socket of a revolute joint module; aprismatic joint J when it is fastened to the p itranslating socket of a prismatic joint module; and avirtual joint J when it is fastened to two fixedvisockets of any two modules . The two modules arerigidly connected through the virtual joint . The . ., entry in A G is termed a port vector, whichindicates the location of the connected socket andthe orientation of the connector with respect to theaxis of the local module coordinate frame .7

    3.2. Dyad Kinematics

    Once the AIM of a modular robot is given, we areable to derive the forward kinematics of the robot .In our design, multiple branching robot structuresare considered as well . The forward kinematics in-cludes the forward transformation of every branchwith respect to the base frame . The dyad kinemat-ics, which relates the motion of two connected mod-ules under a joint displacement, is proposed 1,7 inthis case . Applying dyad kinematics to every dyadand following the traversing order of the modulesgenerated from the graph-traversing algorithms forthe given AIM, the motions of every module in thebranched modular robot can be derived .

    Let v and v be two adjacent links connected byi ja joint e , as shown in Figure 6 . Also let joint e and j jv be link assembly j. Denote the module coordinate jframe on v by frame i, v by frame j. The relativei jposition of the dyad, v and v , with respect toi jframe i, under a joint angle, q , can be described byia 4= 4 homogeneous matrix,

    s q j j . . .T q s T 0 e , 1i j j i j

    . .where s g se 3 refer to Appendix for definition is j .the twist of joint e expressed in frame j, T 0 and j i j

    . . .T q g SE 3 refer to Appendix for definition . Ini j jthe following context, the position of a module isalways referred to as the 4 = 4 homogeneous ma-trix, including both the orientation and position of

    Figure 6. Two adjacent links .

    the frame with respect to a base reference frame . In . .Equation 1 , T 0 is the initial position of frame ji j

    relative to frame i, and

    . .R 0 d 0i j i j . .T 0 s , 2i j0 1

    . . where R 0 g SO 3 refer to Appendix for defini-i j. . 3tion and d 0 g R are the initial orientation andi j

    position of link frame j relative to frame i, respec-tively . The twist of link assembly j, s , is written as j

    w v i j .s s , 3 j 0 0

    where w is a skew-symmetric matrix related to w j j .T .s w , w , w , the unit directional vector of the j x j y jz joint axis expressed in frame j, by

    0 y w w j z j yw 0 y w .w s ; 4 j z j x j

    y w w 0 j y j x

    .T and v s v , v , v , is the position vector of the j j x j y j z joint axis relative to frame j. The twist, s , can also j be represented by a six-dimensional vector through

    . 6= 1a mapping: s s s v , w g R , termed twist j j j j .coordinates . For virtual joints, s s 0, 0 , thus j

    . .T q s T 0 , a constant . For revolute joints, s si j j i j j .0, w , where w is the unit directional vector of the j j joint axis expressed in frame j. For prismatic joints,

    .s s v , 0 , where v is the unit directional vector of j j jthe joint axis with respect to frame j.

  • 8/4/2019 Modular Robot

    7/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 813

    3.3. Forward Kinematics of an Open Chain Modular Manipulator-POE Formula

    We consider the calibration of serially connectedmodular robots because serial topology is the mostpopular robot manipulator structure in practical use .For serial type robots, the traversing order of themodule is very obvious . Let the base module frameof the robot be the frame 0 . Then the forward

    .kinematics of a modular manipulator with n q 1modules is

    .T q , q , . . . , q0 n 1 2 n . . .s T q T q T q01 1 12 2 ny 1 , n n

    s q s q s q1 1 2 2 n n . . . .s T 0 e T 0 e T 0 e , 501 12 ny 1 , n

    .where T q , q , . . . , q or just simply T , repre-0n 1 2 n 0 nsents the position of the end-effector frame n with

    .respect to the base frame . Note that Equation 5 isthe local frame representation of manipulator kine-matics using the POE formula .7

    4. KINEMATIC CALIBRATIONFOR MODULAR ROBOTS

    Kinematic calibration typically begins with a lin-earization of the forward kinematic equations . Let

    .the nominal forward kinematics be T s f T , S, q ,0where T , S, and q represent the initial positions,0twist coordinates, and joint angles respectively, i .e.,

    . . ..T T s T 0 , T 0 , . . . , T 0 , S s0 0 1 1 2 n y 1 , n .T .T s , s , . . . , s , and q s q , q , . . . , q . The lin-1 2 n 1 2 nearized equation is of the form

    f f f .dT s dT q dS q dq , 60 T S q0

    The differential, dT , can be interpreted as the posi-tioning error of the end-effector resulting from thekinematic errors that existed in T , S, and q, so that0it is equal to the difference between the theoreti-cal position and the measured position of the end-effector . The kinematic calibration for an open chainmanipulator involves making several measurementsof the error in the position of the end-effector, dT ,and determining the optimal dT , dS, and dq that0minimize the error in the least-squares sense, e .g.,

    minimizing f f f

    dT y dT y dS y dq .0 T S q0

    4.1. Geometric Errors in a Dyad

    Our kinematic calibration is based on the local frame .representation of dyads described in Equation 1 .

    Two assumptions are made in the dyad of link iy 1 .

    and i of a modular robot chain here: 1 small .geometric errors exist in the initial position T 0 ,iy 1, i .and the joint angle q ; and 2 the twist s or s hasi i i

    no geometrical error and remains the nominal val-ues . Under these assumptions, all errors includingthe errors of the twist in the dyad are lumped into

    .errors in the initial position T 0 and the jointiy 1, i .angle q . The term, f r S dS, in Equation 6 thusi

    can be eliminated . Seven geometric errors are intro-duced into a dyad in totalsix of which are from

    . .T 0 g SE 3 and one from the joint angle q .i , iy 1 i

    Since the parameters can fully describe the geome-tric errors in a dyad, our calibration model is para-metrically complete . Let the small error in the initial

    .position be dT 0 . This error can be realized byiy 1, i .an infinitesimal translation Trans dx , dy , dz andi i i

    followed by an infinitesimal rotation, Rot . x , y , z , where dx , dy , and dz are in-i i i i i ifinitesimal displacements along x, y, and z-axis oflink frame i, respectively, and x , y , and z arei i iinfinitesimal angles about x, y, and z-axis of linkframe i, respectively . According to the definition of

    differential transformation, we have1 0 0 dx i0 1 0 dy i . .Trans dx , dy , dz s , 7i i i 0 0 1 dz i0 0 0 1

    1 y z y 0i iz 1 y x 0i i .Rot x , y , z s .i i i y y x 1 0i i

    0 0 0 1 .8

    .After adding the small error dT 0 , the cor-iy 1, i .rected or measured position of link frame i,

    .T 0 , relative to link frame iy 1 becomesiy 1, i

    . . .T 0 s T 0 q dT 0iy 1 , i iy 1 , i iy 1 , i . .s T 0 Trans dx , dy , dziy 1 , i i i i . .Rot x , y , z . 9i i i

    The differential transformation is expressed in frame .i. Hence, Equation 9 follows the right multiplicative

    .9differential transformation of T 0 .iy 1, i

  • 8/4/2019 Modular Robot

    8/15

    Journal of Robotic Systems1997 814

    .Subtracting T 0 from both sides of theiy 1, iequation, we get

    . .w .dT 0 s T 0 Trans dx , dy , dziy 1 , i iy 1 , i i i i . x

    Rot x , y , zy

    I i i i 4= 4 . .s T 0 , 10iy 1 , i i

    where

    0 y z y dxi i iz 0 y x dyi i i .s . 11i y y x 0 dzi i i0 0 0 0

    Let the small error in joint is angle be dq , then theicorrected joint angle q can be given byi

    X .q s q q dq . 12i i i

    4.2. Gross Geometric Error in the Completed Robot

    Now let us look at the gross geometric error of theend-effector position between the actual one and the

    nominal one.

    For simplicity, we assume the grosserror can be realized by an infinitesimal rotation .Rot x , y , z and followed by an infinites-0 n 0 n 0 n

    .imal translation Trans dx , dy , dz , where0 n 0 n 0n x , y , and z are the rotation angles about0 n 0 n 0 n

    the axes of the base frame, and dx , dy , and dz0 n 0 n 0 nare the displacements along the axes of base frame,respectively . It follows that

    T X s T q dT 0 n 0 n 0 n

    .s Trans dx , dy , dz0 n 0 n 0 n . .Rot x , y , z T . 130 n 0 n 0n 0 n

    The gross error, dT , is expressed in the base frame .0 n .Hence, Equation 13 follows the left multiplicative

    differential transformation of T .90 n

    w .dT s Trans dx , dy , dz0 n 0 n 0 n 0 n . xRot x , y , z y I T ,0 n 0 n 0n 4= 4 0 n

    .s T , 140 n 0 n

    and

    y 1 .s dT T . 150 n 0 n 0 n

    .Similar to Equation 11 , is of the form0 n

    0 y z y dx0 n 0 n 0 nz 0 y x dy0n 0 n 0 n .s . 160 n y

    y x 0 dz0 n 0 n 0 n0 0 0 0

    4.3. Linear Superposition

    Based on the assumptions mentioned in Section 4 .1 .and Equation 5 , the errors in all the dyads con-

    tribute to the gross error of the position of theend-effector, dT . Thus, it can be written as a0 nfunction of the errors of initial position of the dyads,

    .dT 0 , and errors of joint angles, dq

    .Since theiy 1, i igeometric errors are all very small, the principle of

    linear superposition can be applied . We assume thatthe gross errors dT is the linear superposition of0 n

    . .dT 0 and q is 1,2, . . . , n . Letiy 1, i i

    T 0. q .dT s dT q dT , 170 n 0 n 0 n

    where dT T 0. and dT q denote the differential er-0 n 0 nrors of T due to the errors of initial positions and0 n joint angles of dyads, respectively . Then

    n

    T 0. s q i iw . .xdT s T T 0 y T 0 e T 0 n 0 , iy 1 iy 1 , i iy 1 , i i , ni s 1

    n

    s q i i . .s T dT 0 e T , 18 0, iy 1 iy 1, i i , nis 1n

    q s q q d q . s q i i i i i .w xdT s T T 0 e y e T .0 n 0, iy 1 iy 1, i i , ni s 1

    .19

    .Equation 18 sums up all the initial position errorsof the dyads by first converting them into the base

    .frame coordinates . Likewise, Equation 19 sums upthe error of joint angles in all dyads written in the base frame . The forward kinematics of link frame j

    .relative to link frame i iF j is represented by T .i j .Especially, T s I 4= 4 identity matrix when is j.i j

    . .Substituting 10 into 18 , we obtain

    n

    T 0. s q i i . .dT

    sT T 0 e T

    .200 n 0, iy 1 iy 1, i i i , ni s 1

    Because dq is very small, we can use first orderiapproximation to reduce the exponential series to

  • 8/4/2019 Modular Robot

    9/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 815

    .the simplified form in 21 .

    s q q d q . s q s d q q q . s qi i i i i i i i i ie y e s e y es d q s qi i i i .s e y I e

    s qi i .s s dq e . 21 i i

    . .Substituting 21 into 19 , we getn

    q s q i i . .dT s T T 0 s dq e T . 220 n 0, iy 1 iy 1, i i i i , ni s 1

    . . .Putting 20 and 22 back to 17 , the gross error ofthe end-effector position, dT , becomes0 n

    n

    s q i i . .dT s T T 0 q s dq e T . 23 /0 n 0, i

    y1 i

    y1, i i i i i , ni s 1

    .From Equation 15 , we find that

    y 1s dT T 0 n 0 n 0 nn

    s q y 1 i i .s T T 0 q s dq e T T . /0, iy 1 iy 1, i i i i i , n 0ni s 1

    .24

    Also, can be given by0 n y 1 X y 1 X y 1 . .s dT T s T y T T s T T y I , 250 n 0 n 0 n 0 n 0 n 0 n 0n 0n

    where T X

    is the actual or measured position of0 nend-effector frame n with respect to the base frame .If T

    X

    and T are sufficiently close, then T X

    T y 1 is0 n 0 n 0n 0 nin the neighborhood of the identity matrix . Hence,

    2X X Xy 1 y 1 y 1 . . .log T T s T T y I y T T y I r 20n 0 n 0n 0 n 0n 0 n3X y 1

    . .q

    T T y

    I r

    3y

    . . . . 260 n 0 n

    Using first order approximation, we get

    X y 1 . .s log T T . 270 n 0n 0n

    .Because , , and s all belong to se 3 , they can0 n i ialso be represented as 6 = 1 vectors as follows .

    T . s dx , dy , dz , x , y , z ,0 n 0 n 0 n 0 n 0 n 0 n 0 n 0 nT . s

    dx , dy , dz , x , y , z ,i i i i i i iT T . .s s s v , w s v , v , v , w , w , w . i i x i y i z i x i y i z i

    .28

    .Converting Equation 24 into the adjoint represen - .tation see the Appendix for details , we get

    n

    . .s Ad Ad q s dq . 29 .0n T T 0. i i i0, iy i iy 1, ii s 1

    X

    y 1. . Because log T T is also an element of se 3 see0 n 0 n.Appendix for details , it has a 6 = 1 vector represen-

    k X y 1. .tation, denoted by log T T . Combining 270 n 0 n .and 29 , we obtain the essential equation for modu-

    lar robot calibrationn

    Xk y1 . .log T T s Ad Ad q s dq . .0 n 0 n T T 0. i i i0, iy 1 iy 1, ii s 1

    .30

    .Equation 30 also can be expressed in the followingform

    .y s Ax , 31where

    k X y 1. 6= 1y s log T T g R ,0 n 0 nw x xs column , , . . . , , dq , dq , . . . , dq1 2 n 1 2 ng R 7n= 1, andw x 6= 7n As A , A g R withdT dSw . A s row Ad , Ad Ad , . . . , AddT T 0. T T 0. T 01 01 12 0,ny 1 .x 6= 6 n Ad g R ,T 0.ny 1, n

    A s A Sg R 6=

    n, in whichdS dT w x 6n = nSs diag s , s , . . . , s g R .1 2 n

    x is the error parameters to be identified for amodular robot assembly . The quantities in matrix Aand T y 1 are determined from the nominal model .0 nT

    X

    can be found from the actual measured data .0 n .Equation 31 is a parametric complete calibra-

    tion model with seven parameters . We are able toreduce the complexity of this model further byassuming that the joint angle q has no errors . Alligeometric errors are attributed to the errors in initial

    . qpositions of the dyads, T 0 . By setting dT s 0iy 1, i 0 n . .and following the same steps from 18 30 , we

    obtain a six-parameter calibration model similar to .Equation 31 ,

    .y* s A* x* , 32where

    k X y 1 . 6= 1y* s y s log T T g R ,0n 0 nw x 6 n= 1 x* s column , , . . . , g R , and1 2 n

    . A* s A s row Ad , Ad Ad , . . . ,dT T 0. T T 0.01 01 126= 6n . Ad Ad g R .T T 0.0, ny 1 ny 1, n

  • 8/4/2019 Modular Robot

    10/15

    Journal of Robotic Systems1997 816

    4.4. A Least-Squares Algorithmfor Kinematic Calibration

    To improve the accuracy of the actual model, thekinematic calibration procedure usually needs to

    measure the position of the end-effector in severaldifferent robot postures . For ith measurement, weobtain a y . The corresponding A can be deter-i imined from the nominal model . After several mea-surements, we can stack y and A to form thei ifollowing equation:

    .Y s Ax , 33

    where

    6 m = 1w xY s column y , y , . . . , y g R ,1 2 mm s the number of measured end-effector posi-

    tions, xs the error parameters in the dyads to be

    .determined , 6 m = 7nw x A s column A , A , . . . , A g R for 7-1 2 m

    .parameter model 31 . It is a 6m = 6n ma- .trix for the 6-parameter model 32 .

    The least squares solution for x can be obtainedby

    y1T T . . xs A A A Y , 34

    T y 1 T .where A A A is the pseudoinverse of A. .The solution of Equation 33 can be further

    improved through iterative substitution . Let X de-note the vector of the initial positions of the dyadsand the joint angles and initialize X using thenominal model . Based on the measured data and

    .Equation 34 , we can obtain the error parametervector, x. The vector X is updated by substituting

    .x into Equation 9 . The same procedure is repeated5 5until the norm of the error vector, x , approaches

    zero and the vector X converges to some stablevalues . Then X represents the final calibrated pa-

    X . .rameter vector, i .e ., X T , dq s T 0 ,0 01 . . .T 0 , . . . , T 0 , dq , dq , . . . , dq . It has been12 ny 1, n 1 2 n

    shown that this iteration method is computationallyefficient . In general, only three or four iterations are

    y 5 .needed to achieve the prescribed precision 10 .Since the error vector, x, will converge to zero

    after the iterations, it no longer represents the actualkinematic errors in the dyads . To calibrate the posi-tion of the end-effector, we directly put the finalcalibrated vector, X , into the kinematic model .However, the actual kinematic errors in the dyads

    .can be recovered based on Equation 10 . For the

    7-parameter model, the errors of joint angles can bedirectly derived from the final calibrated kinematicvector X ; the error parameters of the initial posi-tions in the dyads can be obtained by

    k y 1 . X .. .slog T 0 T 0

    .35i iy 1 , i iy 1 , 1

    .In the case of 6-parameter model, only Equation 35is needed .

    5. COMPUTER SIMULATIONS

    In this section, two simulation examples are givento demonstrate the accuracy, effectiveness, and gen-erality of the proposed calibration algorithms . For

    .simplicity, a three-module 2 DOF robot calibrationis provided first . It is followed by the calibration of

    .a seven-module 4 DOF SCARA type modularmanipulator .

    ( )Example 1 A 3-module robot . As shown in Fig-ure 7, a modular manipulator consisting of twolarge revolute joint modules and one small cubiclink module is given . The AIM and other kinematicquantities are given as follows .

    . .z , x 0 L Baser 1

    . .y x, y z, y Lr 1 . A G s ; .0 y z, x Lc 2

    J J 0r 1 r 2T T . .s s 0, 0 , 0, 1 , 0, 0 , s s 0, 0 , 0, 0 , 0, 1 ;1 2

    0 1 0 00 0 1 0 .T 0 s ,01 1 0 0 350.00 0 0 1

    0 y 1 0 01 0 0 0 .T 0 s .12 0 0 1 312.50 0 0 1

    All the angles are expressed in radians, and thelengths are in millimeters . To validate the proposedcalibration model, we presented here a simulatedcalibration result and consider both 6-parameter and7-parameter models . The measured end-effector po-

    . .sitions simulated are obtained from Equation 5 bya set of preset kinematic errors . This procedure isstated as follows .

    .Assign kinematic errors and dq is 1, 2i i .listed in Table I .

  • 8/4/2019 Modular Robot

    11/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 817

    Figure 7. A three-module manipulator .

    Find the actual initial position in each dyad

    . . .T 0 s T 0 q I is 1, 2 .iy 1 , i iy 1 , i iCalculate the end-effector positions

    X s q q d q . s q q d q .1 1 1 2 2 2 . . .T q , q s T 0 e T 0 e02 1 2 01 12

    The same set of prescribed errors is used for bothmodels . The joint angle errors in 7-parameter model

    . Table I. Calibration results 3-module .

    7-Parameter 6-ParameterPreset errors model model

    dx 0.5 0.4248 0.42481dy 0.2 0.2009 0.20071dz y 0.4 y 0.4002 y 0.40011

    x 0.0015 0.000351 0.0007021 y 0.001 0.001001 0.0010011 z y 0.0025 y 0.002499 y 0.0025001

    dx 0.25 0.0006 0.00042dy y 0.35 y 0.4243 y 0.42442dz 0.5 0.5014 0.50092

    x 0.002 0.002000 0.0019992 y y 0.0025 y 0.003297 y 0.0032982 z 0

    .002 0

    .001000 0

    .0020012 . .dq 0 0.000351 01

    . .dq 0 y 0.001000 02

    .are all set to zero, i .e., dq s dq s 0. Solving 331 2iteratively, we obtain the solutions for both models,respectively, as listed in Table II .

    It has been shown that the calibrated end-effec-tor positions based on either 6-parameter or 7-

    parameter models are very close to the measuredone . This indicates that both 6-parameter andseven-parameter models are correct and effective .From a computational point of view, the 6-parame-

    . Table II. Positions before and after calibration 3-module .

    T . Joint angle q s r 6, 5 r 3

    Nominal 0.433013 0.750000 y 0.500000 y 156.250position 0.250000 0.433013 0.866025 270.633

    0.866025 y 0.500000 0 350.0000 0 0 1

    Measured 0.432215 0.748153 y 0.503467 y 156.491position 0.250236 0.436877 0.864020 270.556

    0.866363 y 0.499428 0.001609 350.7300 0 0 1

    Calibrated 0.432214 0.748153 y 0.503467 y 156.491position 0.250235 0.436878 0.864022 270.557 .7-parameter 0.866361 y 0.499428 0.001608 350.729

    0 0 0 1

    Calibrated 0.432216 0.748154 y 0.503468 y 156.491position 0.250234 0.436879 0.864022 270.556 .6-parameter 0.866362 y 0.499429 0.001607 350.729

    0 0 0 1

  • 8/4/2019 Modular Robot

    12/15

    Journal of Robotic Systems1997 818

    ter model is better than 7-parameter due to a fewernumber of parameters needing to be identified .

    Comparing the preset errors with the errorsderived from the two calibration models, which arelisted in Table II, it is observed that the preset errors

    cannot be fully recovered . Six out of the 14 errorparameters in the 7-parameter model and seven outof the 12 error parameters in the 6-parameter modelexceed 1 % precision . There are two reasons to ex-plain this situation .

    1. Basically, four independent error parametersare enough for calibrating one dyad . With either the6-parameter or the 7-parameter model, redundanterror parameters exist, which cannot be guaranteedto be recovered .

    2. Some error parameters are coupled due to thegeometry of the robot . Taking the 7-parameter modelas an example, the orientation error in z-direction,

    , and the error of joint angle, dq , in dyad i isz i i.1, 2 cannot be distinguished from each other be-

    cause both of them describe the differential rota-tions about the same axis . This is very similar tosolving the inverse kinematics of a robot when jointsingularity exists .

    Nevertheless, both of these two sets of calibra-tion results are equivalent in the sense of calibratingthe end-effector positions . The precision of the endeffectors position is the main concern in the robotcalibration . Whether the error parameters can befully recorded or not becomes less important .

    Figure 8. A SCARA type modular manipulator .

    (Example 2 A 4-DOF SCARA type modular ma -)nipulator . As shown in Figure 8, a 4 DOF SCARA

    type modular manipulator consists of seven mod-ules, i .e., three large revolute joint modules, two

    large cubic link modules, one small prismatic jointmodule, and one small cubic link module . The AIMis given as follows .

    .z , y y 0 0 0 0 0 Lr 1 . .y x, y z, y 0 0 0 0 Lc1

    . .0 y y, x z, x 0 0 0 Lr 1 . .0 0 y z, x y, z 0 0 Lc1 . A G s . . .0 0 0 y x, y z z, x 0 Lr 1

    . .0 0 0 0 y z, x z, x L p2 .0 0 0 0 0 y z, x Lc2

    J J J J J J 0r 1 v1 r 1 v1 r 2 p 3

    Based on the given AIM, the calibration model canbe automatically generated . Similar to Example 1,

    we first preset small geometric errors isi.1,2, . . . , 6 into dyad i , and then compute a number

    of measured positions . For convenience, all inithe dyads are preset to identical values, i .e., si .T 1.0, 1.0, 1.0, 0.0025,0.0025,0.0025 . Using the six-parameter model, the identified kinematic errors

  • 8/4/2019 Modular Robot

    13/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 819

    are:

    T X .s y0.0053,0.9978,1.0098, y 0.005656, 0.002496, 0.002511 ,1T X

    .s 0.00004, 1.1342, y 0.0053,0.004991, 0.005019, 0.009729 ,3T X .s 2.7713, y 0.00003, 0.0053,0.005047, 0.004975, 0.002033 ,5

    T X .s 1.0015,0.9963,0.005330, 0.002528, 0.002534, 0.002034 .6

    .Because joint 2 in dyad 2 module 1 and 2 and joint .4 in dyad 4 module 3 and 4 are virtual joints, the

    two modules in both dyad 2 and dyad 4 are rigidlyconnected . Here, we consider each of these dyads asa rigid body . By doing so, the errors in such a dyadare considered to have occurred in its precedingdyad and succeeding dyad . For instance, the preseterrors in dyad 2 will be lumped into the errors2

    .of both dyad 1 base module and module 1 and .dyad 3 module 2 and 3 . Thus, instead of recover-

    ing and , we assumeX s X s

    2 4 2 4 .T 0,0,0,0,0,0 . The computation result also reflectsthat the preset errors can not be fully recovered . On

    the other hand, the average positioning accuracysignificantly increases two orders of magnitude af-ter calibration, which is shown in the results listedin Table III . Since this manipulator contains varioustypes of joints, i .e., prismatic joints, revolute joints,and virtual joints, the proposed algorithm is a gen-eral approach .

    6. CONCLUSION

    We introduced a kinematic calibration model forserially connected modular reconfigurable robots .This method is based on recursive dyad kinematicsfor modular robots . The kinematic errors are at-tributable to the error in the initial positions in thedyads and joint angles . Applying differential tran-formation techniques and the linear superpositionprinciple, we are able to derive two compact kine-matic models, namely the 6-parameter model andthe 7-parameter model . Two simulation examples

    .for calibrating a 3-module robot 2 DOF and a

    .7-module SCARA type 4 DOF modular manipula-tor are demonstrated . The result has shown that both models are simple and robust for modularrobot applications . Furthermore, these models areconfiguration-independent, i .e., they can be appliedto any serially connected modular robot configura-tion regardless of the number and types of modules .

    . Table III. Positions before and after calibration SCARA type .

    T . Joint angle q s r 6,0, y r 6,0, r 3,100

    Nominal 0.5 y 0.866025 0 653.109position y 0.866025 y 0.5 0 175.000

    0 0 y 1 y 187.50 0 0 1

    Measured 0.500011 y 0.865966 0.012690 664.664position y 0.866037 y 0.499880 0.013461 183.145

    y 0.005310 y 0.017704 y 0.999866 y 184.7240 0 0 1

    Calibrated 0.500035 y 0.866016 0.012761 664.711position y 0.866088 y 0.499925 0.013486 183.153 .6-parameter y 0.005310 y 0.017749 y 0.999891 y 184.764

    0 0 0 1

  • 8/4/2019 Modular Robot

    14/15

    Journal of Robotic Systems1997 820

    Recent research has shown that these calibrationmodels are also suitable for tree structured modularmanipulators with hybrid geometry . Furthermore,the overall calibration algorithm can be applied togeneral open chain industrial manipulators without

    modification . A simulated calibration study usingthe POE and the proposed algorithm on an ASEA

    .IRB6r 2 robot 5 DOF has been completed and issuccessful . Our current research is focused on de-veloping experimental calibration procedures formodular robots based on this approach .

    APPENDIX

    ( )Special Orthogonal Group SO 3

    . 3= 3 T . 4 .SO 3 s Rg R : RR s I ,det R s 1 1

    . 3SO 3 is also referred to as the rotation group on R .Every rigid body rotation about a fixed axis can be

    .identified with an Rg SO 3 .

    ( ) ( )Lie Algebra of SO 3 so 3

    . .The Lie algebra of SO 3 , denoted so 3 , is a vectorspace of 3 = 3 skew-symmetric matrices, such that

    . 3= 3 T 4so 3 s wg R : w s yw

    0 y w wz y .2w 0 y wws z x

    y w w 0 y x

    .T 3where ws w , w , w g R . w corresponds to thex y zaxis of a rigid body rotation . In exponential form,

    w qRs e , where qg R is the angle of rotation .

    ( )Special Euclidean Group SE 3

    R p 3 . . .SE 3 s gs : Rg SO 3 , pg R 3 50 1where R is interpreted as a rigid body rotation and

    .p as a rigid body translation . SE 3 represents thegroup of general rigid body motions including rota-tion and translation . It can also be written as an

    .ordered pair, gs p, R .

    ( ) ( )Lie Algebra of SE 3 se 3

    . .The Lie Algebra of SE 3 , denoted se 3 , can bedefined as

    w v 3 . . .se 3 s ss : vg R , wg so 3 4 50 0 .where s admits a 6-vector presentation: ss v, w ,

    termed a twist . The twist s denotes the line coordi-nate of the screw axis of a general rigid body mo-

    .tion rotation and translation . w is the unit direc-tional vector of the axis; v is the position of the axisrelative to the origin . If pg R 3 is a point on the axisand h is the ratio of translational displacement to

    the angular displacement, then vs y

    p=

    wq

    hw. Insq .exponential form, gs e g SE 3 , where qg R is theangle of rotation .

    Adjoint Representation

    .An element of a Lie group SE 3 can be identifiedwith a linear mapping between its Lie algebra via

    .the adjoint map . The adjoint map of gs p, R g .SE 3 , is

    R pR . Ad s , 5 g 0 R

    R pR v . . Ad s s 6 g w0 R

    ( )Exponential of se 3

    An important connection between a Lie group, . .SE 3 , and its Lie algebra, se 3 , is the exponential

    .mapping, defined on each Lie algebra . Let sg se 3 , . 5 52 2 2 2ss v, w and w s w q w q w , thenx y z

    we Avs . .e s g SE 3 70 0

    where

    5 5 5 5sin w 1y cos w w 2 .e s I q wq w 8 2

    5 5w 5 5 w5 5 5 5 5 51y cos w w y sin w

    2 . As I q wq w 9 2 35 5 5 5w w

  • 8/4/2019 Modular Robot

    15/15

    Chen and Yang: Calibration with Product-of-ExponentialsFormula 821

    ( )Logarithm of SE 3

    A matrix logarithm also establishes a connectionbetween a Lie group and its Lie algebra while theLie group is in the neighborhood of the identity . Let

    . .Rg SO 3 such that trace R / 1 and 1 q 2cos s . 5 5trace R , - , then

    y 1R p w A p . .log s g se 3 100 1 0 0

    where

    T . .ws Ry R 11

    2sin

    5 5 5 5 5 5.1 2 sin w y w 1q cos w 2y1 5 5 A s I y wq w 22 5 5 5 52 w sin w

    .12

    T .If is very small, ws Ry R r 2.

    The authors thank Mr . Chee Tat Tan of the School ofMechanical and Production Engineering, NanyangTechnological University for providing the 4 DOFSCARA robot calibration example . This work wassupported in part by the Ministry of Education, Sin-gapore, under Research Grant RG64-96 .

    REFERENCES

    1. I.-M. Chen, Theory and applications of modular reconfig-urable robotic system, Ph.D thesis, California Instituteof Technology, CA, 1994 .

    2. D. Schmitz, P . Khosla, and T . Kanade, The CMUreconfigurable modular manipulator system, Car-negie Mellon Univ ., CMU-RI-TR-88-7, 1988.

    3. R. Cohen, M . G. Lipton, M . Q. Dai, and B . Benhabib,Conceptual design of a modular robot, ASME J. Mechanical Design, 114, 117 125, 1992.

    4. T. Fukuda and S . Nakagawa, Dynamically reconfig-urable robotic system, Proc. IEEE Int. Conf. Roboticsand Automation, 1988, pp . 1581 1586.

    5. K. H . Wurst, The conception and construction of amodular robot system, in Proc. 16th Int. Sym. Indus-

    ( )trial Robotics ISIR, 1986, pp . 37 44.

    6. R. O. Ambrose and D . Tesar, Modular robot connec-tion design, Fourth ASME Conference on Flexible As-sembly Systems, Scottsdale, AZ, 1992, pp . 41 48.

    7. I.-M. Chen and G . Yang, Configuration independentkinematics for modular robots, IEEE Int. Conf.Robotics and Automation, Minneapolis, MN, 1996, pp .

    1440 1445.8. J. M. Hollerbach, A survey of kinematic calibration,The Robotics Review I , MIT Press, Cambridge, MA,207 242, 1989.

    9. B. W. Mooring, Z . S. Roth, and M . R. Driels, Funda-mentals of Manipulator Calibration, A Wiley-Intersci-ence Publication, John Wiley & Sons, New York, 1991 .

    10. J. Denavit and R . S. Hartenberg, A kinematic nota-tion for lower pair mechanisms based on matrices, J. Applied Mechanics, 2, 215 221, 1955.

    11. H . W. Stone, Kinematic Modeling, Identification, andControl of Robot Forward Manipulators, Kluwer, Boston,MA, 1987.

    12. S. Hayati, Robot arm geometric link parameter esti-mation, IEEE Int. Conf. Decision and Control, SanAntonio, TX, 1983, pp . 1477 1483.

    13. H . Zhuang, Z . S. Roth, and F . Hamano, A completeand parametrically continuous kinematic model forrobot manipulators, IEEE Trans. Robotics and Automa-tion, 8, 451 463, 1992.

    14. F. C. Park and K . Okamura, Kinematic calibrationand the product of exponential formula, in Advancesin Robot Kinematics and Computational Geometry, MITPress, Cambridge, MA, 1994, pp . 119 128.

    15. L. Dobrjanskyj and F . Freudenstein, Some applica-tions of graph theory to the structural analysis ofmechanisms, ASME J. Engineering for Industry, 89,153 158, 1967.

    16. N . Deo, Graph Theory with Applications to Engineeringand Computer Science, Prentice-Hall, 1974 .

    17. F. C. Park, Computational aspect of manipulators viaproduct of exponential formula for robot kinematics,

    .IEEE Trans. Auto. Contr. 39 9 , 643 647, 1994.18. M. L. Curtis, Matrix Groups, Springer-Verlag, New

    York, 1984 .19. R. W. Brockett, Robotic manipulators and the prod-

    uct of exponential formula, Int. Symp. Math. Theoryof Networks and Systems, Beer Sheba, Israel, 1983,pp . 120 129.

    20. R. Murray, Z . Li, and S . Sastry, A Mathematical Intro-duction to Robotic Manipulation, CRC Press, USA, 1994 .21. F. C. Park, J . E. Bobrow, and S . R. Polen, A Lie group

    formulation of robot dynamics, International Journal .of Robotics Research, 14 6 , 609 618, 1995.

    22. R. Johnsonbaugh, Discrete Mathematics, Macmillan,New York, NY, 1984 .