kinematic modeling of wheeled modile robots

Upload: ahmed-el-kabbany

Post on 03-Jun-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    1/60

    Kinematic Modelingof Wheeled MobileRobots*Patrlck F. Mulr and Charles P. NeumanDepartment of Electrical and Computer Engineering, The Robotics Institute,Carnegie Mellon University, Pittsburgh, Pennsylvania 152 13Received April 22, 1986; acc epted November 25, 1986

    We formulate the kinematic equations of motion of wheeled mobilerobots incorporating con-ventional, omnidirectional, and ball wheels.' We extend the kinematic modeling of stationarymanipulators to accommodate such special characteristics of wheeled mobilerobots as multipleclosed-link chains, higher-pair contact points between a wheel and a surface, and unactuatedand unsensed wheel degrees of freedom. We apply the Sheth-Uicker convention to assigncoordinate axes and develop a matrix coordinate transformation algebra to derive the equationsof motion. We introduce a wheel Jacobian matrix to relate the motions of each wheel to themotions of the robot. We then combine the individual wheel equationsto obtain the compositerobot equationof motion. We interpret the propertiesof the composite robot equation to char-acterize the mobilityof a wheeled mobile robot according to a mobility characterizationtree.Similarly, we apply actuationand sensing characterizationrees to delineatethe robot motionsproducible by the wheel actuators and discernible by the wheel sensors, respectively. Wecalculate the sensedforward and actuated inverse solutions and interpret the physical conditionswhich guarantee their existence.To llustrate the development, we formulate and interpret the

    kinematic equations of motionof Uranus, a wheeled mobilerobot being constructed in the CMUMobile Robot Laboratory.

    m*or 1. A h 5 n o 1 5 a u; # - b5 4 r a e .%trr l a g r 3 m w % Y b Q) P ?% U l A R 3 t B E & i k - & b .5 L Q ) m Y> ? t a m . S l t l m Q ) m n 5 E t Q ) t ~ M d . IBaJstr d ?t I tr 2 b >s I h Le tz E Q) 0 kl i Jb a # Y b Q) li59% Q t%9i B 9 It f< ntl 09 tz 7 = e a L - 9 napbrm 7 9 Y Y S 8 ht l3t 6. P J%%Z&cr) a a Q) f: n Q l~ ~ Q ) 8 a H ~ u ; ~ ~ l 1 : a b ~ g ~ ~ Q ) ~ L ~ ~ ~ ~ ~ S hh - U i c k e rQ)tltB1:m 3 . % l p 1 Q ) P R b t P s v n P ~ e l ~ d i ~ b f : n ~ : l l a c ~ ~ ~ ~ l B ~ ~

    b T % 4 Q)J#llafis f .9 htt T u s Y b n.9 Ei Eal%Rzt8 f 6 . 0 pb s Yb n NUlE B nt2. R B 2RnJI3-6. FI 1# 1:. I p 1 n ;P 9 3 a I 9 12 d: 3 T F ;K Y b Q ) i l Y t OMt 2 +t 4 d: 3 T Z l T 3 & P # Y b nilt Ib 8 IJ c, 51 1 t b t2 n ;t L ~ t r Wbttf#:m t ?tBJli ) t*Biarnt b . t anmhME t @#JJQ)ZME4 2 . + t l 6 Q ) @ t f t%?z3- JBft9%#- El e A t 4 . LX-knUSB8 HliE t b f: bt, 1:. C M U b l a % '7 bn , r i t & l b S J ~ b p v u r a n u s Q ) B J b f i R ~ Q B ~ 4 k L ~ ~ ~ B ~ Q j .

    b r n 1:8Ibq3t k* 1 d: 3 T a Y b n QEP b~ f : b - t n T b

    Ta i e *

    *This research has been supported by the Office of Naval Research under Contract No.NOOO14-81-K-0503 nd the Department of Electrical and Computer Engineering, Carnegie

    Mellon University.

    Journal of Robotic Systems, 4(2 281-340 (19878 1987 by John Wiley81Sons, nc. dCC 0471 2~3/87/020281-60$04.00

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    2/60

    282 Journal of Robotic Systems-1987

    1. INTRODUCTION

    Over the past 20 years, as robotics has matured into a scientific discipline, researchand development have concentrated on stationary robotic r n a n ip ~ la to rs ,~ * ~rimarily

    because of their industrial applications.Less effort has been directedto mobile robots.Although legged4and treadeds locomotion has been studied,the overwhelming majorityof the mobile robots which have been built and evaluated utilize wheels for locomotion.Wheeled mobile robots(WMRs) are more energy efficient than legged or treadedrobots on hard, smooth surfaces6.'; andWMRs will potentially be the first mobilerobots to find widespread comm ercial application, because of the hard, smooth plantfloors in existing industrial environments. Wheeled transport vehicles, which auto-matically follow paths marked by reflective tape, paint, o r buried w ire, have alreadyfound industrial applications.*WMRs find application in space and undersea explo-ration, nuclear and explosives handling, warehousing, security, agricultural machinery ,

    military, education , mobility for the disabled, and personal robots.The wheeled mobile robot literature documents investigations which have concen-

    trated on the application of mobile platforms to perform intelligent ratherthan on the development of methodologies for analyzing , designing, and controllingthe mobility subsystem. Improved mechanical designs and mobility control systemswill enable the application of WMRs totasks in unstructured environments and toautonomous mobile robot operation.A kinematic methodology is the first step towardachieving these goals.

    Even though the methodologies for m odeling and controlling stationary manipulatorsare applicable to WMRs, thereare inherent differences which cannot be addressedwith these methodologies. Examples include:

    ( 1) WM Rs contain multiple closed-link chains ; whereas stationary manipulatorsform closed-link chains only when in contact with stationary objects.

    (2) The contact between a wheel and a p lanar su rface is a higher-pair joint; whereasstationary manipulators contain only lower-pair joints.12-14

    (3) Only some of the degrees-of-freedom (DOFs) of a wheel on a W MRare actuated;whereas all of the DOFs of each joint of a stationary manipulator are actuated.

    (4) Only some of the DOFs of a wheel on a WMR have position or velocity sensors;

    whereas all of the DOFs of each joint of a stationary manipulator have bothposition and velocity sensors.

    Wheeled mobile robot control requires a m ethodology for modeling, analyzing, anddesign which parallels the technology of stationary manipulators.

    Our objective is thus to model the kinematics ofWMRs. Kinematics is the studyof the geometry of motion.I3 In the context of WMRs, we determine the motion ofthe robot from the geometry of the constraints imposed by the motion of the wheels.Our kinematic analysis is based upon the assignment of coordinate axes within therobot and its environm ent, and the application of(4 X 4) matrices to transform betweencoordinate systems. Each step is defined precisely to lay a solid foundation for thedynamic modeling and feedback control of WMRs. Dynamic models may then be

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    3/60

    Muir and Neuman: Kinematic Modeling 283

    applied to design dynamics-based feedback controllers and simulators. A kinematicmethodology may also be applied to design WM Rs which satisfy such mobility char-acteristics as three DOFs ( i.e., two translations and a rotation in the plane).

    Our kinematic analysis of W MRs parallels the development of kinematics forsta-

    tionary manipulators. An established methodology for modeling the kinematics ofstationary robotic manipulators begins by applying the Denavit-Hartenberg co n ven ti ~n '~to assign coordinate axes to each of the robot joints. Successive coordinate systemson the robot are related by(4 X 4) homogeneous transformation A-matrices. TheA-matrices are specified completely by four charac teristic parameters(two displacementsand two rotations) between consecutive coordinate systems. Each A-matrix describesboth the shape and size of a robot link, and the translation (for a prismatic joint) o rrotation (for a rotational joint) of the associated joint. We assign coordinate axes tothe steering links and wheels of aW M R , nd apply the Sheth-Uicker conventionI6 odefine transformation matrices. The Sheth-Uicker convention separates the constantshape and size parameters from the variable wheel joint param eters, and simplifies thematrix formulation. The Sheth-Uicker convention allows us to model the higher-pairrelationship between each wheel on aWMR and the floor.

    The position and orientation in base coordinates of the end-effectorof a stationarymanipulator is found by cascadingthe A-matrices from the basic link to the endeffector. Velocity and acceleration transformationsare found by differentiating thecoordinate transformations. Velocities of the individual jointsare related to thevelocities of the end effector by the manipulator Jacobian matrix in the forw ardsolution. The inverse Jacobian matrix is applied in the inverse solution to calculatethe velocities of the joint variables from the ve locities of the end effector. W e developthe wheel Jacobian matrix to relate the velocities of each wheel on a WMR to therobot body velocities. Since WM Rsare multiple closed-link chains, the forw ard andinverse solutions are obtained by solving simultaneously the kinematic equations ofmotion of all of the wheels.

    In this paper, we advance the k inematic modeling ofWMRs, from the motivationof the kinematic methodology through its development and application.' In Section11, we describe the three wheels (conventional, omnidirectional, and ball wheels)utilized in all existing and foreseeable WM Rs. Then , in SectionIII, we develop ourapproach for the kinematic modeling of WM Rs. In Section IV, we adjoin the equations

    of motion of all of the wheels to formulate, solve, and interpret the solutions of thecomposite robot equation of motion. We apply, in Section V, our kinematic modelingmethodology to Uranus, a WMR being constructed in the Mobile Robot Laboratoryof Carnegie Mellon University. Finally, in Section VI, we provide concluding remarksand outline our plans for continuing research in dynamic modeling and feedback controlof WMRs.

    II. WHEELTYPES

    Three wheel types are used in WMR designs: conventional, omnidirectional, andball wheels. In addition, conventional wheels are often mounted on a steering link toprovide an additional DOF. Schematic viewsof the three wheels are shown in F igure

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    4/60

    204 Journal of Robotic Systems-1987

    Conve n t i ona l O n n ld l r e c t i ona l Whee l Ba l l

    Wheel ( r o l l e r s a t 0 8 ) Wheel

    S i d e Vi e w s .

    ro11.r

    ~ t - O f - C O l t l C t

    r l o o r Floo rFloor

    F r o n t Vi e w s

    Figure 1. Conventional, omnidirectional, and ball wheels.

    1 and the DOFsof each wheel are indicated by the arrows in Figure2. The kinematicrelationships between the angular velocity of the wheel and its linear velocity along

    the surfaceof travel are also compiled in Figure2.The conventional wheel havingtwo DOFs is the simplest to construct. It allowstravel along a surface in the direction of the wheel orientation, and rotation about thepoint of contact between the wheel and the floor. We note that the rotationalDOF sslippage, since the point of contactis not stationary with respect to the floor surface.*Even though we define the rotational slip as a DOF, we do not consider slip transverseto the wheel orientation a DOF, because the magnitude of force requiredfor thetransverse motion is much larger than that for rotational slip. The conventional wheelis by far the most widely used wheel; automobiles, roller skates, and bicycles utilizethis wheel.

    *Two bodies are in rolling contact if the points of contact of thetwo bodies are stationaryrelative to each0tI1er.I~

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    5/60

    Muir and Neuman: Kinematic Modeling 285

    Refe r ence Coord ina t e A l e s

    C o n v e n t i o n a l C o n v e n t i o n a lt e e r e d

    zLam n i d i r e c t i o n a l B a l l

    q ., 5 0

    Wheel DOFs

    K inerna t lc Re1a t o n s h i p sC o n v e n t i o n a land S t e e re d O m nid i r e c t o n a l B a l l

    C o n v e n t i o n a l

    5 = u..R 5 = w w XR - u Wr c o s ( q 1 5 - u r x Rv = 0 v - ow, r s f n ( r l 1 v, = u u y Rut = 0 1 1 0 1 - 0 , = .?

    Legend

    v and y == t c om po ne nt o f t h e a n g u l a r v e l o c i t y o f thm u h e e l at t h e p o i n t - o f - C o n t a c t

    = a n gu la r v e l o c i t i e s o f t h e r o l l e r a b ou t t h m i r a x l e 1

    = a . y. a n d ? a n gu la r Ve l o c i t i ~ s f the w h ee l a b o u t i t s C * nt e r

    = a n g u l a r v e l o c i t y o f t h e s t e e r i n g l i n k a b ou t t h e s t c e r t n g 1 1 1 1

    E ang l e o f t h a r o l l e r e i l e s w i t h r e s p e c t 10 t h e r h e e l o r i e n t e t l o n

    = r a d i i o f a wheel and 1 r o l l e r

    I and y components o f th. l i n e a r v e l o c i t y o f t h e wheel a t t h e p o i n t - o f - C o n t a c t

    01

    Wwr

    u w a e ry and lul

    r)

    R a n 0 r

    Figure 2. Wheel equations of motion.

    The omnidirectional wheel has three DOFs. One DOF is in the direction of thewheel orientation. The second DOF is provided by motion of rollers mounted aroundthe periphery of the main wheel. In principle, the roller axles can be mounted at anynonzero angle q with respect to the wheel orientation. The omnidirectional wheels inFigures 1 and 3 have roller axle angles of 9020-22 nd 45,23respectively. The thirdDOF is rotational slip about the point of contact. It is possible, but not common, toactuate the rollers of an omnidirectional wheel with a complex driving arrangement.When sketching WMRs having omnidirectional wheels, the rollers on the underside

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    6/60

    286

    1r o l l e r

    a x l e

    Joumel of Robotic Systems-1987

    ro l le rs

    ax10

    Figure 3. Omnidirectional wheel (rollers at 45 ).

    of the wheel (i.e., those touching the surface of travel), rather than the rollers whichare actually visible from a top v iew, are drawn to facilitate kinematic analys is.

    The most maneuverable wheel is a ball which possesses threeDOFs without slip.Schemes have been devised for actuating and sensing ball wheels,2sbut we are unawareof any existing implementations.An omnidirectional wheel which is steered about itspoint of contact is kinematically equivalent to a ball wheel, and may be a practicaldesign a lternative.

    111.KINEMATICMODELING

    A. lntroductlon

    In this section, we apply and extendstandard mbotic nomenclature andme tho do log^'^to model the kinematics ofWMRs. he novel aspects are our treatment of the higher-pair joint between each wheel and the floor, and the development of a transformation

    We begin (in SectionIII B) by defining a WMR and enumeratingour modelingassumptions o constrain the class of mobile robots to whichour modeling methodologyapplies. To include all existing and foreseeableW M R s , we would have to generalizeour methodology and thereby complicatethe modeling of the overwhelming majorityof WMRs. n Section I11 C, we assign coordinate systems to the robot body, wheels,and steering links to facilitate kinematic modeling. It is essential to define instanta-neously coincident coordinate systems to model the higher-pair joints at the point ofcontact between each wheel and thefloor. In Section111 D, we assign homogeneous(4 x 4) transformation matrices to relate coordinate systems. We present (in SectionIII E) a matrix coordinate transformation algebra to form ulate the equations of motion

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    7/60

    Muirand Neuman: Kinematic Modeling 287

    of a WMR. All kinematicsare derived by straightforward applicationto the axiomsand corollaries of the transformation algebra. Position k inematicsare treated in Sec tionIII F. We demonstrate that transforming the coordinates of a point between coordinatesystems is equivalent to finding a path in a transformation graph. Then, in SectionIII

    G, e formulate the velocity kinematics. Sincethe relationships between the wheelvelocities and the robot velocitiesare linear, we develop a wheel Jacobian matrix tocalculate the vector of robot velocities from the vector of wheel velocities. Finally,in SectionIII H, we apply our matrix coordinate transformation algebra to accelerationkinematics.

    To summarize the development, we enumerate in Sec tionIII I our kinematic mod-eling procedure. In Section IV, we adjoin the equations of motion of all of the wheelsto form the composite robot equation. We then proceed to solve the composite robotequation and interpet the solutions.

    6. Definitions And Assumptions

    The Robot Institute of America defines a robot as a programm able, multifunctionmanipulator designed to move material, parts, tools, or specialized devices throughvariable programmed motions for the performance of a variety of tasks. Kinematicmodels of WMRs are inherently different from those of stationary robotic manipulatorsand legged or treaded mobile robots. We thus introduce an operational definition ofa WMR to specify the spectrum of robots to which the k inematic methodology presentedin this paper applies.

    Wheeled Mobile Robot. A robot capable of locomotion on a surface solely throughthe actuationof wheel assemblies mounted onthe robot and in contact with the surface.A wheel assembly is a device which providesor allows relative motion between its mountand a surface on which it is intended to have asingle point of rolling contact.

    Each wheel (conventional, omnidirectional, or ba ll wheel) and all links between the

    We introduce the following six practical assumptions to make the modeling problemrobot body and the wheel constitute a wheel assembly.

    tractable.

    Design Assumptions(1) The WMR does not contain flexible parts.(2) There is zero or one steering link per wheel.(3) All steering axes are perpendicular to the surface.

    Operational Assumptions(4) The WMR moves on a planar surface.(5) The translational frictiomat the point of contact between a wheel and the surface is large

    (6) The rotational friction at the point of contact between a wheel and the surface is smallenough so that no translational slip may occur.

    enough so that rotational slip may occur.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    8/60

    288 Journal of Robotic Systems-1987

    We discuss our assumptions in turn. Assumption1 states that the dynamics of suchWMR components as flexible suspension mechanisms and tiresare negligible. Wemake this assumption to apply rigid body mechanics to kinematic modeling. Werecognize that flexible structures may play a significant role in the kinematic analysis

    of WMRs. A dynamic analysis to determine the changes in kinematic structure dueto forces/torques acting on flexible components isrequired to model these components.Such an analysis is appropriate for WMRs even though it has not conventionally beenaddressed for stationary open-link m anipulators becauseWMRs re inherently closed-link mechanisms. Flexible components that allow com pliance in the multiple closed-link chains of a WMR lead to a consistent kinematic model. Without compliantstructures, there cannotbe a consistent kinematic model forW M R s n the presenceof surface irregularities, inexact component dimensions and inexact control actuation.%A simultaneous kinematic and dynamic analysis ofWMRs is thus a natural continuationof our research.

    We introduce Assumptions2 and 3 to reduce the spectrum of WMRs that OUTmethodology must address and thereby limit the complexityof our kinematic model.WMRs which have more than one link per wheel canbe analyzed by our methodologyif only one steering link is allowed to move. We require that all non-steering linksare stationary, as if they are extensions of the robot body or wheel mounts. Byconstraining the steering links tobe perpendicular to the surface of travel in Assumption3, we reduce all motions to a plane. We thus constrainall component motions to arotation about the normal to the surface, andtwo translations in a plane parallel tothesurface.

    Assumption4 neglects irregularities n the actual surface upon which a WMR travels.Even though this assumption restricts the range of practical applications, environmentswhich do not satisfy this assumption (e.g., rough, bum py, o r rock surfaces) do notlend themselves to energy-efficient wheeled vehicle travel.

    Assumption5 ensures the applicabilityof the theoretical kinematic properties of awheel in rolling c~ntact~.~or the two translational degrees of freedom. This as-sumption is realistic for ry surfaces, as demonstrated by the success of brakingmechanisms on automobiles. Automobiles also illustrate the practicality of Assumption6. The wheels mustrotate (i.e., slip) about their points of contactto navigate a turn.Since WMRs also rely on rotational wheel slip, we include Assumption6.

    C. Coordinate System Asslgnments

    7. Sheth-Uicker Convention

    Coordinate system assignment is the first step inthe kinematic modeling of asta-tionary manipulator.9 Lower-pair mechanisms* (suchas revolute and prismatic joints)function with two surfaces in relative motion.In contrast, the wheels of a WMRarehigher pairs which function ideally by point contact. Because theA matrices whichmodel stationary manipulators depend upon the relative position and orientation of

    *Lower-pair mechanismsare pairs of components whose relativemotions are constrained bya common surface contact; whereas higher pairsare constrained by point or line conta~t.~

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    9/60

    Muir and Neuman: KinematicModeling 289

    P l a n a r P a t r

    Figure 4. Planar pair model of a wheel.

    C o n v e n t i o n a l W h e e l

    two successive joints, the Denavit-Hartenberg conven ti ~n '~eads to ambiguous as-signments of coordinate transformation matrices in multiple closed-link chains16 whichare inherent in WMRs. The ambiguity arises in deciding the joint ordering when thereare more than two joints on a single link.

    We apply the Sheth-Uicker convention16 o assign coordinate systems and modeleach wheelas a planar pair at the point of contact. This convention allows the modelingof the higher-pairwheel motion and eliminates ambiguities n coordinate transformationmatrices. The planar pair allows three DOFs as shown in Figure4: X and Y ranslation,and rotation about the pointof contact. The Sheth-Uicker convention is ideal formodeling ball wheels; the angular velocitiesof the wheel are converted directly intotranslational velocities along the surface. The planar pair motions mustbe constrainedto include wheels which do not allow three DOFs. For example, the coordinate system

    assigned at the point of contact of a conventional wheel is aligned with they axisparallel to the wheel. Thewheel model is completed by constraining thex componentof the wheel velocity to zero to satisfy Assumption5 (in Section III B) and avoidtranslational slip.

    2. WMR Coordinate Systems

    We assign coordinate systems at both endsof each link of the WMR. The links ofthe closed-link chain of aWMR are the floor, the robot body, and the steering links.The joints are a revolute pair at each steeringaxis, a planar pair to model each wheel,

    and a planar pair to model the robot body. When the joint variablesare zero, thecoordinate systems of thetwo links which share the joint coincide. We summarizeour approach to the modeling of a WMR havingN wheels with the coordinate systemassignments defined in TableI. Placement of the coordinate systems is illustrated inFigure 5 for the pictorial view of a WMR. For aWMR with N wheels, we assign3N + 1 coordinate systems to the robot and one stationary reference frame. Thereare also N + 1 instantaneously coincident coordinate systems (described in Section111 3) which need not be assigned explicitly.

    The floor coordinate systemF is stationary relative to the surface of travel andserves as the reference coordinate frame for robot motions. The robot coordinate systemR is assigned to the robot bodyso that the positionof the WMR s the displacementfrom the floor coordinate system to the robot coordinate system. The hip coordinatesystemH i s assigned at the point on the robotbody which intersects the steering axis

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    10/60

    290 Journal of Robotic Systems-7987

    Table 1. Coordinate system assignments.

    F Floor: Stationary reference coordinate system with the z-axis orthogonal to the surfaceof travel.

    R Robot: Coordinate system which moves with theW M R ody, with the z-axis orthogonalto the surface of travel.

    H i Hip (for i = 1, . . . , N): Coordinate system which moves with theWMR body, withthe z-axis coincident with the axis of steering jointi if there is one; coincident with thecontact point coordinate systemC, if there is no steering joint.Steering (for i = 1, . . . , N): oordinate system which moves with steering linki ,with the z-axis coincident with the z-axisof H i , and the origin coincident with the originof H , .

    Ci Contact Point (for i = 1, . . . , N): oordinate system which moves with steering linki , with the origin at the point of contact between the wheel and the surface; they axis isparallel to the wheel (if the wheel has a preferred orientation; if not, they axis isassigned arbitrarily) and thex-y plane is tangent to the surface.Instantaneously Coincident Robot: Coordinate system coincident with theR coordinate

    - system and stationary relative to theF coordinate system.Ci Instantaneously Coincident Contact Point (for i = 1, . . . , N): oordinate system

    coincident with theCi coordinate system and stationary relative to theF coordinatesystem.

    S,

    f

    fF l o o r

    Figure 5. Placement of coordinate systems on aW M R .

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    11/60

    Muir and Neuman: Kinematic Modeling 291

    of wheel i. The steering coordinate systemSi is assigned at the same point along thesteering axis of wheeli, but is fixed dative to the steering link. We assign a contactpoint coordinate systemCi at the point of contact between each wheel and the floor.

    Coordinate system assignmentsare not unique. There is freedom to assign the

    coordinate systems at positions and orientations which lead to convenient structuresof the kinematic model. For example, all of the hip coordinate systems may be assignedparallel to the robot coordinate system resulting in sparse robot-hip transformationmatrices and thus simplifying the model. Alternatively, forWMR control, then axesof the hip coordinate systems can be aligned with the zero position of the steeringjoint position encodersso that the hip-steering transformation is expressed in terms ofthe actual steering angle.

    3. Instantaneously Coincident Coord inate Systems

    To introduce the concept of instantaneously coincident coordinate systems, weconsider the one-dimensional example of a ball rolling in a straight line on a flatsurface. The position of the ball is depicted by the pointr in Figure 6.

    The ball is moving right to left with velocityv rand accelerationa,. The stationaryreference pointF lies in the path of the moving ball. At the instant the ball (pointr)and the reference (pointF) coincide in Figure7, we observe that: (1) the positionofthe ball relative to the reference point'p, is zero;and 2) the velocity'vr and acceleration'a, of the ball relative to the reference pointare non-zero. We call the pointF aninstantaneously coincident reference point for the moving ball at the instant shown inFigure 7.

    We continuously assign coincident reference pointT during the motion of the ballto generalize our observations forall time t. The position of the ball relative to itsinstantaneously coincident reference point is zero (i.e.,' p , ( t ) = 0), and the velocityand acceleration of the ball relative to its instantaneously coincident reference pointare nonzero (i.e, , 'v,( t) # 0 and 'a,(t) # 0). In the frameworkof instantaneouslycoincident reference points, we emphasize that we cannot differentiate the position(velocity) equation of motion to obtain the velocity (acceleration) equation of motion.

    The stationary reference pointf in Figure7 is a conventional reference point whoseposition is fixed. Since both reference points andr are stationary, the velocity(acceleration) of the ball relative to the point is equal to the velocity (acceleration)of the ball relative to the pointF in this one-dimensional example. Consequently, it

    S t a t ona r yR e f e r e n c e

    P o i n t Ball

    -r0

    Figure 6. Ball in motion before instantaneous coincidence.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    12/60

    292 Journal of Robotic Systems-1987

    S t a t o n a ryRef e fenc e

    P o i n t

    C o n v e n t i o n a lReference

    P o i n t

    1

    0

    b a l l

    Figure 7. Ball in motion at instantaneous coincidence.

    is not advantageous to introduce instantaneously coincident references in the one-dimensional example. The practical need for instantaneously coincident coordinatesystems arises in the multi-dimensional exampleas depicted in Figure8.

    The coordinate systemR s moving inthr dimensions:X, , nd 8. The coordinatesystems andF are stationary;R is an instantaneously coincident coordinate systemand F is a conventional reference coordinate system. W e make the analogous obser-vations. The position of the moving coordinate system relative to its instantaneouslycoincident coordinate system is zero (i.e.,'pR = 0). The position of the movingCoordinate system relative to the conventional reference coordinate system is non-zero(i.e., "pR # 0). The non-zero velocity'vR (acceleration o , ) f the moving coordinatesystem relative to the instantaneously coincident coordinate system is not equal to thevelocity F ~ Racceleration"aRof the moving coordinate system relative to the con-ventional reference coordinate system. The velocity (acceleration) of the moving co-ordinate system relative to the conventional reference coordinate systemF dependsupon the position and orientationof the moving coordinate system relative to thereference coordinate system. The motivation for assigning instantaneously coincidentcoordinate systems is that the velocities (accelerations) of a multi-dimensional movingcoordinate system canbe computed or specified independentlyof the position of themoving coordinate system. The instantaneously coincident coordinate system is aconceptual tool which enables us to calculate the velocities and accelerations of amoving coordinate system relative to its instantaneous current position and orientation .

    For stationary serial link manipulators, all jointsare one-dimensional lower pairs:

    prismatic joints allowZ

    motion and revolute joints allow8

    motion. In contrast, WMRshave three-dimensional higher-pair wheel-to-floor and robot-to-floor joints allowing

    JI

    F

    Figure 8. Coordinate systemR in motion.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    13/60

    Muir and Neuman: Kinematic Modeling 293

    simultaneous X, Y , nd 8 motions. We assign an instantaneously coincident robotcoordinate system R at the same position and orientation in space as the robot coordinatesystem R. n Table I, we define the instantaneously coincident robot coordinate systemto be stationary relative to the floor coordinate system F. By design, the position and

    orientation of the robot coordinate system R and the instantaneously coincident robotcoordinate system R are identical, but (in general) the relative velocities and accel-erations between the two coordinate systems are non-zero. When the robot coordinatesystem moves relative to the floor coordinate system, we assign a different instanta-neously coincident coordinate system for each time instant. The instantaneously coin-cident robot coordinate system facilitates the specification of robot velocities (accel-erations) independently of the robot position. SimilarIy , he instantaneously coincidentcontact point coordinate system zi (in Table I) coincides with the contact point co-ordinate system Ci and is stationary relative to the floor coordinate system. Since theposition of the wheel contact point is not sensed, we require the instantaneouslycoincident contact point coordinate system to specify wheel velocities and accelera-tions.

    D. Transformation Matrices

    Homogeneous (4 x 4) transformation matrices express the relative positions andorientations of coordinate systems. 9 The homogeneous transformation matrix Ustransforms the coordinates of the point Br n coordinate frame B to its correspondingcoordinates "r in the coordinate frame A :

    We adopt the following notation. Scalar quantities are denoted by lower case letters(e.g., w). Vectors are denoted by lower case boldface letters (e.g., r). Matrices aredenoted by upper case boldface letters (e.g., n).Pre-superscripts denote referencecoordinate systems. For example, r is the vector r in the A coordinate frame. Thepre-superscript may be omitted if the coordinate frame is transparent from the context.Post-subscripts are used to denote coordinate systems or components of a vector ormatrix. For example, the transformation matrix H Edefines the position and orientationof coordinate system B relative to coordinate frame A ; and r, is the x component ofthe vector r.

    Vectors denoting points in space, such as "r in ( l), consist of three Cartesiancoordinates and a scale factor as the fourth element:

    We always use a scale factor of unity. Transformation matrices contain the (3 x 3)rotational matrix (n o a), and the (3 x 1) translational vector p19

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    14/60

    294 Journal of Robotic Systems-1 987

    The three vector componentsn, 0 , and a of the rotational matrixin (3) express theorientationof the x, y, and z axes, respectively, of theB coordinate system relativeto the A coordinate system andare thus orthonormal. Thethr componentsp x ,p y ,and p 2 of the translational vectorp express the displacementof the origin of theBcoordinate system relative to the origin of theA coordinate system along thex, y , andz axes of theA coordinate system, respectively.

    The aforementioned propertiesof a transformation matrixg u m t e e that its inverse

    always has the special form:

    Before we define the transformation matrices between the coordinate systems ofour

    W M Rmodel, we compile in Table11 our nomenclature for rotational and translationaldisplacements, velocities, and accelerations.In general, anytwo coordinate systemsA and B in our WMR model are located at

    non-zerox, y and z coordinates relative to each other. The transformation matrix musttherefore contain the translationsAdBx, dBy,nd AdBz.We have assignedall coordinatesystems with the z axes perpendicular to the surface of travel,so that all rotationsbetween coordinate systemsare about thez axis. A transformation matrix in ourWMRmodel thus embodies a rotationA8Babout the z axis of coordinate systemA and thetranslationsAdBx,AdB,,,and AdBzalong the respective coordinate axes:

    For zero rotational and translational displacements, the coordinate transformation ma-trix in (5) reduces to the identity matrix.

    In SectionIII F, we apply the inverse of the transformation matrix in( 5 ) to calculateposition kinematics.By applying the inverse in(4) to the transformation matrix in(S),we obtain

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    15/60

    Muir and Neuman: Kinematic Modeling 295

    Table II. Scalar variables.

    Scalar Rotational and Translational DisplacementsThe rotational displacement about thez-axis of the A coordinate system between thex-axis of the A coordinate system and the x-axisof the B coordinate system(counterclockwise by convention).

    (for E [ x , y , z ] ) :The translational displacement along thej a x i s of the A coordinatesystem between the originof the A coordinate system and the originof the Bcoordinate system.

    scalar Rotational and Translational Velocitiesus: The rotational velocity iBbout the z a x i s of the A coordinate system between thex

    axis of the A coordinate system and thex a x i s of the B coordinate system.

    "vBj: (for E x , y l ) :The translational velocityA&, along thej a x i s of the A coordinatesystem between the originof the A coordinate system and the originof the.Bcoordinate system. Sinceall motion is in thex-y plane, the z-componenttranslational velocity is zero.

    of the

    Scalar Rotational and Translational AccelerationsaB: m e rotational acceleration 6, = " b bout the z axis of the A coordinate system

    between thex axis of the A coordinate systemand the x axis of the B coordinatesystem.

    "aB.: (for j E [ x , y ] ) :The translational acceleration" d B j ='coordinate system between the originof the A coordinate system and the originof [email protected] ystem. Since all motion is parallel to thex-y plane, the z componentA d B z of the translational acceleration is zero.

    along thej a x i s of the A

    cos ABB sin AeB 0 -AdBxcos AeB- dBYsin AeB0

    0 1

    0 1

    dBX in AeB- ^dBYcos A e B

    In Section III G, we differentiate the transformation matrix in (5) componentwiseto calculate robot velocities:

    - * o B sinAeB -AwB cos AeB 0 A

    cos A e , 0 A:),- Aw B sinAeB

    0 0 0 0(7)

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    16/60

    296 Journal of Robotic S y s t e m s 4 987

    and in Section III H, we differentiate the transformation matrix in(7) omponentwiseto calculate robot accelerations:

    (8)

    \ 0 0The assignment of coordinate systems results in twotypes of transformation matrices

    between coordinate systems: constant and variable. The transformation matrix betweencoordinate systems fixed at two different positions on the same link is constant.Transformationmatrices relating the position and orientation of coordinate systems ondifferent links include joint variables and thusare variable. Constant and variabletransformation matricesare denoted by andA@B, respectively.'6 In TableIII, wecompile the transformation matrices inour WMR model. The constant transformationmatricesare the floor-i'obot transformation(?;;), the robot-hip transformation( I;J;),the steering-contact transformation ( TC,), nd the floor-contact trans-formation (FT$. Since the instantaneously coincident coordinate systems andZi, are stationary relative to the floor coordinate system,al l transformation matricesbetween the floor coordinate system and the instantaneously coincident coordinatesystemsare constant. The variable transformation matricesare the Fobot-robot trans-formation(@") the hipsteering transformation( '&,), and the Contactcontact trans-

    formation('WC,). The transformation matrix from a coordinate systemto its instan-taneously coincident counterpart (or vice versa) is variable because there is relativemotion. We compile thefirstand second timederivatives of the variable transformationmatrices in TablesIII and IV, espectively. The matrix derivatives involving instan-taneously coincident coordinate systems (i.e.,'aR, @ci, 'bR, nd c&-,,) areformedb differentiating and simplifying the elements of the transformation matrices

    simplifying substitutions, the second time-derivative of a transformation matrix in-volving an instantaneously coincident Coordinate system cannotbe obtained by dif-

    ferentiating the first time-derivative. Time-derivatives of instantaneously coincidentcoordinate systemsare calculated in SectionIII E by applying matrix coordinatetransformation algebra. The timederivatives of constant transformation matricesarezero.

    For wheels which do not have steering links, the hip and steering coordinate systemsare assigned to coincide with the contact point coordinate system,so that the hip-steering and steering-contact transformation matrices reduce to identity matrices andthereby simplify the ensuing kinematic modeling.

    '@R andF@c,, respectively, by substituting' 0 ~ = 0 and ec, = 0. Because of the

    E. Matrix Coord inate Transformation AlgebraThe kinematics of stationary manipulatorsare modeled by exploiting the properties

    of transformation matrices.'* We formalize the manipulation of transformation matricesin the presence of instantaneously coincident coordinate systems by defining a matrix

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    17/60

    Muir and Neuman: KinematicModeling 297

    Table III Transformation matrices of the WMR model.

    Floor-Robot Transformation:

    Robot-Robot Transfoniution:

    Robot-Hip Transformation:

    HipSteeringTransfornation:

    Steering-contactTransformation:

    -Contact-Contact Transformation: ac, =

    Floor

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    18/60

    298 Journal of Robotic Systems-7987

    Table IV. Transformation matrix time derivatives.

    -Robot-Robot:

    Hipsteering:

    -ContactXontact: \ o o o o J

    coordinate transformation algebra. The algebra consistsof a set of operands anda setof operations which may be applied to the operands. T he operandsof matrix coordinatetransformation algebra are transformation matrices and their first and second timederivatives (in SectionIII D). The operations are listed in Table VI as seven axioms.In Table VI, A, E , and X are coordinate systems andll denotes either a constantTtransformation matrix or a variable transformation matrix. Matrix coordinate trans-formation algebra allows the direct calculation of the relative positions, velocities, and

    Table V. Transformationmatrix second time derivatives.

    -Robot-Robot:

    \ o o o o

    -Contact-Contact: b 0 0 1

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    19/60

    Muirand Neuman: Kinematic Modeling 299

    Table VI. Matrix coordinate transformation algebra axioms.

    Identity: *ll, = I f o r B = A or B =Cascade: ll, = I I X X n ,

    Inversion: =Zero-Velocity:

    Velocity:Zero-Acceleration:

    Acceleration:

    4, = o for B = A or n = Tir, = A& ~ n , nx ifi, = 0 for B = A or ll = Tfi, = f ix%, + 2 fIXh a llx ii~

    accelerations of robot coordinate systems (including instantaneously coincident co-ordinate systems).

    The identity axiom is se lf-evident since neither rotations nor translationsare requiredto transform from a coordinate system to itself or to its instantaneously coincidentcoordinate system. The cascade axiom specifies the order in which transformationmatrices are multiplied: the coordinate transformation matrix from the reference systemto the destination is the cascadeof two coordinate transformation matfices, the firstfrom the reference system to an intermediate coordinate system, and the second fromthe intermediate coordinate system to the destination. The inversion axiom states thatthe coordinate transformation matrix from a reference coordinate system to a destinationcoordination system is the inverseof the coordinate transformation matrix from thedestination coordinate system to the reference coordinate system.

    Just as the multiplication of transformation matrices is specified by the cascade

    axiom, time differentiation of transformation matrices is specified by the four velocityand acceleration axioms. Specifically, we cannot differentiate both sides of a matrixtransformation equation. For example, if we were to diffekn tiate both sides of theequation = I, we would obtain the incorrect result that hi = 0 since thevelocities between a coordinate system and its instantaneously coincident counterpartare (in general) non-zero. The zero-velocity axiom states that the relative velocitiesbetween a coordinate systemA and itself (B = A ) or another coordinate systemassigned to the same link(ll = T) re zero. This is becausetwo coordinate systemsassigned to the same linkare stationary relative to the link and to each other. Similarly,the zero-acceleration axiom states that the relative accelerations between a coordinatesystemA and itself (B = A ) or another coordinate system assigned to the same link(ll = T) re zero. The velocity axiom specifies how the time derivative of a trans-formation matrix m ay be expressed in terms of thetwo cascaded transformation ma-trices and their time derivatives. Finally, the acceleration axiom specifies how thesecond time-derivative of a transformation matrix maybe expressed in terms of thetwo cascaded transformation matrices and the ir first and second time-derivatives.

    The matrix coord inate transformation axioms in TableVI lead to the corollaries inTable VII, which we apply to the kinematic modeling of WMRs. We develop theinstantaneous coincidence corollary by applying the identity and cascade axioms. Theinstantaneous coincidence corollary simplifies transformation matrix expressions byeliminating the instantaneously coincident coordinate systems. The cascade positioncorollary calculates the transformation matrix from a reference coordinate system toa destination coordinate system, which may be kinematically separated fromthe ref-

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    20/60

    300 Journal of Robotic Systems-1 987

    Table VII. Matrix coordinate transformation algebra corollaries.- -

    Instantaneous Coincidence: = = & = &

    erence system by a number of cascaded intermediate coordinate systems. The cascadeposition corollary, which is derived by repeated applications of the cascade axiom, isthe foundation of position kinematics (in Section111 F). The cascade velocity corollaryis derived by repeated applications of the velocity axiom and the cascadeaxiom. Thecascade acceleration corollary is derivedby repeated applicationsof the cascade,velocity, and acceleration axioms.In Sections111 G and 111 H; we apply the cascadevelocity and cascade acceleration corollaries to relate linear and angular velocities andaccelerations between coordinate systems. Throughout Section111 G, we apply the

    axioms and corollaries of the matrix coordinate transformation algebra to derive thewheel Jacobian matrix.

    F. Position Klnematics

    We apply the transformation matrices (in SectionIII D) and the matrix coordinatetransformation algebra (in Section111 E) to calculate position kinematics. The practicalposition relations in WMR control require the calculation of the position of a point(e.g., r) relative to one coordinate system (e.g.,A) from the position of the pointrelative to another coordinate system (e .g.,2). or example, we calculate the position

    of the point mass relative to thefloor coordinate system from the position of the pointmass in a steeringlink relative to the steering coordinate system.

    We transform position vectors by applying the transformation matrix in(1):

    *r = Anz+. (9)

    When the transformation matrix II, is not known directly, we apply the cascadeposition corollary to calculate nz rom known transformation matrices:

    We apply transformation graphs to determine whether there is a complete set of knowntransformation matrices which canbe cascaded to create the desired nZ.n Figure9, we display a transformation graphof a WMR with one steering link per wheel.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    21/60

    Muirand Neuman: Kinematic Modeling

    R o b o t

    301

    FF l o o r

    Figure 9. Transformation graph of a WMR.

    The origin of each coordinate system is represented by a dot, and transformationsbetween coordinate systemsare depicted by directedarrows. Th e transformation inthe direction opposingan arrow is calculated by applying the inversion axiom. Findinga cascade of transformations to ca lculate a desired transformation matrix (e.g .,'TIsl)is thus equivalentto finding a path from the reference coordinate system of the desiredtransformation(F) o the destination coordinate system(Sl).The matrices to be cas-caded are listed by traversing the path in order. Each transfo rmation inthe path whichis traversed from the tail to the head ofan arrow is listed as the matrix itself, while

    transformations traversedfrom the head to the tailare

    listed as the inverseof thematrix.For exam ple, the point mass in Figure10 located at positionc relative to the steering

    coordinate systemS, s transformed to its position relative to the floor coordinatesystemF according to:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    22/60

    302 Journal of Robotic Systems-1987

    \ I \

    F

    Robot

    Figure 10. Point mass in the steering link.

    where

    In this example, the reference coordinate system is the floor coordinate systemFand the destination coordinate system is the steering coordinate systemS1. There aremultiple paths between anytwo coordinate systems in Figure9 because WMRs areclosed-link structures. In practice, the number of feasible paths is reduced becausesome of the transformation matricesare unknown. For example, we may seek tocalculate the desired transformation matrix in(12) as:

    but the transformation matrix from the floor to the wheel contact p i n tF T ~ ls typicallyunknown.

    G. VelocityKinematicsI. Introduction

    We relate the velocities of the WMR by applying the matrix coordinate transfor-mation algebra axioms and the cascade velocity corollary. In Section 111G2, wecalculate the velocity of a point (e.g.,r) relative to a coordinate system (e.g.,A )when the position of the point is fixed relative to another moving coordinate system(e.g., Z). This solution is directly applicable to the dynamic modeling ofWMRs forcomputing the velocity of a differential mass element on theWMR elative to the floorcoordinate system. Then, in SectionIII G3, we apply this methodology to calculate

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    23/60

    Muirand Neuman: Kinematic Modeling 303

    the velocities of the robot relative to the instantaneously coincident robot coordinatesystem when the velocities of a wheel* are sensed. We introduce the wheel Jacobianmatrix to calculate the robot velocity vector from the wheel velocity vector. Finally,we calculate (in Section III G4) he robot velocity vector relative to the floor coordinate

    system when the robot velocity vector is sensed relative to the instantaneously coin-cident robot coordinate system.

    2. Point Vefocities

    velocity of the point r in the A coordinate system:We differentiate the point transformation in (9) with respect to time to compute the

    (14)t = A f iZ

    z r*

    When the matrix fiZ is not known directly, we apply the cascade velocity corollaryto calculate azrom known ransfornation matrices and known transformation matrixtime derivatives according to:

    'fiz = nz + 'nB fit nz + . . . + %Z. (15)

    For example, (1 1) relates the position r of a point mass in the steering coordinatesystem S1 to its position in the floor coordinate system F. We calculate the velocityof the point r relative to the floor coordinate system by differentiating (1 1):

    ~r = a s 1 lr. (16)

    Since the vector is constant, its time derivative is zero. We apply the cascadevelocity corollary and the WMR ransformation graph to obtain an expression for theunknown transformation matrix derivative in (16):

    We simplify (17) to require only known transformation matrices and known transfor-mation matrix derivatives.

    *The wheel velocitiesare the steering velocityos,, he wheel velocity about its axleo w, therotational slip velocity o w = , he roller velocities o w, for omnidirectional wheels), andtherotational velocityo w, for ball wheels).

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    24/60

    304 Journal of Robotic Systems-7987

    In (18), the robot velocity(in 'bR) s calculated in the sensed forward solution (inSectionIV G), the steering position (in and velocity (inH&s,) are sensed, therobot position (in 'TIR) s calculated by dead reckoning,* and the robot-to-hiptrans-formation(RTH,)s specified by WMR design. The right-hand side of(18) is thus

    known. We then substitute(18) into (16) to calculate the velocity of the point massr relative to the floor coordinate system.

    3. Wheel Jacobian Matrix

    We formulate the equations of motionto calculate the velocities of the robot fromthe velocities of a wheel. We begin our development by applying the cascade velocitycorollary to write the matrix equation in(19) with the unknown dependent variables(i.e., robot velocities,'bR) n the left-hand side , and the independent variables (i.e,,the wheel i velocities, and &,$ on the right-hand side:

    The transformation graph in Figure9 is utilized to determine the order in which tocascade the transformation matrices; the inversion axiomis applied when anarrow inthe transformation graph istraversed from head-to-tail and the zero-velocity axiom isappliedto eliminate the matrices which multiply the derivatives of constantT matrices.Since he position of the wheel contact point relative to the floor is typically unknown,we apply the cascade position corollary to write an alternative expression to the floor-Zontact transformation matrix:

    We substitute(20) into (19) to obtain:

    We apply the identity axiom to simplify(21):

    We next apply Tables III and IV to write the transformation matrices and thetransformation matrix derivatives and multiply the result to obtain:

    *Deadreckoninp is the real-time alculation of the WMR position in floor coordinatesfromthe wheel sensor measurements.'

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    25/60

    Muir and Neuman: Kinematic Modeling 305

    0 %ci "dCp + cos BCi - f'vciv in0 0 dCF + sin 8, + %civ cos0 0 00 0 0

    To simplify the notation in(23), we have made the following substitutions:

    Upon equating the elements in(23), we obtain the robot velocities:

    (25)

    cos R e C i - in R e C i Rdcfsin cos ReC, - dcp

    = o 0 1 1

    = j i a i ,

    where i = 1 . . .N is the wheel index, 'PR is the vector of robot velocities in therobot frame, j i is the pseudoJacobian matrix for wheeli, and qi is the pseudo-velocityvector for wheeli. We define the number of wheel variables of wheeli to be w i . Sincetypical wheels possess fewerthan four wheel variables, the physical velocity vectorqi of typical wheels contains fewer than the four component velocities in(25). Fur-thermore, since all physical wheelmotions are rotations about physical wheelaxes,the wheel velocity vectorqi contains the angular velocitiesof the wheels rather thanthe linear velocities of the pointof contact along the surface of travel. We relate the

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    26/60

    306 Journal of Robotic System*l987

    (4 x 1) pseudo-velocity to the(wi x 1) physical velocity vectorqi by the (4 X wi)wheel matrix Wi :

    0 = wi qi. (26)

    We substitute(26) into (25) to calculate the robot velocities from the wheel velocityvector:

    The product J i = 3,Wiis the (3 x w i )wheel Jacobian matrix of wheeli . The rankof the wheel Jacobian matrix indicates the number ofDOFs of the wheel. A wheelhaving fewer DOFs than wheel variables is redundant. The Jacobian matrix of aredundant wheel has dependent columns. We thus formulate the following computa-tional test to detennine whether a wheel is non-redundant:

    Non-Redundant WheelCriterion

    det[J: J i ] f 0 .

    The wheel Jacobian matrices for non-steered conventional wheels, steered conven-tional wheels, omnidirectional wheels, and ball wheelsare detailed in Appendix1. InSection IV, we utilize (27) to develop the inverse and forward solutions.In SectionV, we apply the matrices in Appendix1 to calculate the inverse and forward solutionsof Uranus.

    4. Transforming Robot Velocities

    We equate the components in(15) to compute the translationalA ~ Z , ,and A ~ z yandrotational velocities velocities* of the coordinate system2 elative to coordinate

    system A. We apply this methodology to the practical problem of transforming ve-locities of the robot from Fobot coordinates to floor coordinatesF. We assume thatthe floor-robot transformation matrixFTR(i.e., the position and orientation of therobot relative to the floor) and the matrix'6, (i.e ., the velocities of the robot relativeto its current position and orientation)are known. The velocities tobe calculated (i.e .,the velocities of the robot relative to the floor)are the components of the matrixi rR. e apply the cascade velocity corollary (in SectionIII E) and theWMR t r ans -formation graph (in SectionIII F) o write the matrix equation

    *R = TF'@R + "TFF& (29)

    *There are no translational velocities along thez axis or angular velocities about thex andy axes becauseof our coordinate assignments.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    27/60

    Muir and Neuman: Kinematic Modeling 307

    in terms of known matrices.To simplify (29), we apply the zero-velocity axiom andthe instantaneous coincidence corollary:

    We expand each matrix into scalar components: the matrix derivative*R accordingto (7), he transformation matrix'TR ccording to (S), and the transformation matrixderivative 'hR ccording to Table IV. Upon multiplying, we obtain:

    0 0 0

    We obtain the angular velocity of the robot oR rom elements (1,l) and (2,l) andread the translational velocities vfi and F ~ R y irectly from elements (1,4) and (2,4 )of (31), respectively. We find that:

    8 5:)= v 'PR. (32)cos e, - in $0 0 1

    In (32), we observe that the angular velocity of the robot is equal in both coord inateframes; whereas the translational velocities in the floor coordinate frame and the(3 X 3) motion matrixV depend explicitly upon the robot orientation.

    H. Acceleration KinematlcsWe calculate the accelerationsof the W M R y applying the cascade acceleration

    corollary. Since the development parallels that of the velocity kinematics in Section111 G, we omit the computational details and concen trate on interpreting the results.We cannot formulate the acceleration equations of motion by d ifferentiating the resultsof Section III G , because differentiation of both sides of a transformation m atrixequation is not an allowable operation in our matrix coordinate transformation algebra.This is in contrast to the acceleration kinematics of mechanisms containing only lowerpairs (e.g. stationary manipulators) which are formulated by differentiating velocitykinematics.

    The acceleration of the pointr fixed relative to the moving coordinate systemZ istransformed to theA coordinate frame according to:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    28/60

    308 Journal of Robotic Systems-1 987

    We apply the cascade acceleration corollary to calculate the second time derivative ofthe transformation matrix and find that the component accelerations of he robot

    ('a~,, u R ~ . and ' aR) re related to the wheel accelerations ( " l a s i , CiacF, andas the cascade velocity corollary, in Section III G3, elates the robot velocities

    to the wheel velocities. In the notation of (24), the robot accelerations are:

    -

    The robot accelerations in (34) have three components: the self-accelerations('iacr, riacP and Hiasi ; he centripetal accelerations (%& and iw$> havingsquared velocities; and the Coriolis accelerations ('iwCi iwsi) having products of dif-ferent velocities.

    Transforming robot accelerations from Fobot coordinates to floor coordinates isanalogous to transforming robot velocities (in Section III G4). We find that the robotaccelerations are transformed from the abet to the floor coordinate frame by themotion matrix V that transforms the velocities in (32):

    The equations of motion are not solved in practice because accurate accelerationmeasurements are difficult to obtain.

    1. Summary

    We have formulated a systematic procedure for modeling the position, velocity, andacceleration kinematics of a WMR. In this section, we outline a step-by-step enu-meration of the methodology to facilitate engineering applications.

    1. Make a sketch of the WMR. how the relative positioning of the wheels andthe steering links. The sketch need not be to scale. A top and side view aretypically sufficient.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    29/60

    Muirand Neuman: Kinematic Modeling 309

    2. Assign the coordinate systems. The robot, hip, steering, contact point and floorcoordinate systems are assigned according to the conventions introducedin TableI.

    3. Develop the (4 X 4) coordinate transformation matrices. The robot-hip, h i p

    steering, and steering-contact transformation matricesare written according toTable 111.

    4. Formulate the position equations of motion. The relative positions and orienta-tions of two coordinate systemsare determined by applying the cascade positioncorollary . The transformation graphof Figure 9 is utilized to determinethe orderin which to cascade the matrices.

    5 . Formulate the velocity equations of motion. The equations relating velocitiesareformulated by applying the cascade velocity corollary. The w heel Jacobian ma-trix, which relates wheel velocities to robot velocities, may be written directlyby substituting components of the transformation matrices into the symbolicwheel Jacobian matrices compiled in Appendix1.

    6. Formulate the acceleration equations of motion. The equations relating accel-erations are formulated by applying the cascade acceleration corollary.

    The non-redundant wheel criterion in(28) tests the Jacobian matrix in (27) odetermine whether a wheel has as many DOFs as wheel variables.In our companiontechnical report,' we apply(28) to illustrate disadvantagesof redundant wheels. A

    kinematic model; i.e., the position, velocity and acceleration equations-of-motion,may be applied to the dynamic modeling, design, and control of a WMR.In theseapplications, the equations of motion are solved to compute unknown variables fromconstant and sensed variables. In Section IV, we computethe inverse and forwardsolutions by utilizing the wheel Jacobian matrix (introduced in SectionIII G3) s thefoundation.

    IV. THE COMPOSITE ROBOT EQUATION

    A. IntroductionWe combine the kinematic equations of motionof all of the wheels on a WMR to

    form the composite robot equation. We then investigate solutions of the compositerobot equation and their properties and implicationsfor WMR locomotion. Ourin-vestigation illuminates WMR mobility (in Section IV D), actuation (in Sections IVEand IV F) and sensing (in Sections IV G andIV H).

    In Section IV B, we formulate the Composite robot equation and in Section IVCwe discuss the conditions for its solution. We apply the resultsof Section IV C todevelop a mobility characterization tree in SectionIV D which enables us to interpretthe solubility conditions in terms of the mobility characteristics of the W MR. Themobility characterization tree indicates whether the mobility structure is determined,overdetermined, or undetermined, and associates specific mobility characteris tics witheach possibility. For example, we may apply the mobility characterizationtree to

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    30/60

    310 Journal of Robotic Systems-7987

    determine whether a W M R llows three DOF motion; and if it does not, the treeindicates the motion constraints.

    We proceed to solve the composite robot equation by addressing two classicalkinematic modeling problems: the actuated inverse solution (in SectionIV E) and the

    sensed forward solution (in SectionIV G). The actuated inverse solution computesthe actuated wheel velocities from the robot velocities. ForWMR control, we solveonly for the velocities of the actuated wheel variables. The solution forall of the wheelvelocities is a special case which maybe obtained by assuming that all of the wheelvariables are actuated.

    The actuated inverse solution does not guarantee that the specified robot velocitieswill be attained when the actuated wheel variablesare driven to the calculated velocities.We investigate the possible robot motions when the actuated wheel variables attainthe velocities computed by the actuated inverse solution in SectionIV F. We developan actuation characterization tree, analogous to the mobility characterizationtree, which

    enables us to determine the actuation structure (determined, overdetermined, or un-determined) of a WMR. The actuation characterization treeis applicable for W M Rdesign to avoid overdetermined actuation (which may cause actuator conflict) andundetermined actuation (which allows theWMR uncontrollableDOFs). From ouranalysis, we are ableto determine whether the actuated wheel variablesare sufficientfor producing allof the motions allowed by the mobility structure.

    The sensed forward solution in SectionIV G computes the robot velocities fromthe sensed wheel velocities andpositions. Since a W M R onsists of closed kinematicchains, it is not required to sense all of the wheel positions and Velocities, and inpractice, it is difficult to doso.

    In Section IV H, we develop a sensing characterizationtree which enables us todetermine the character (undetermined, determined, or overdetermined) of theW M Rsensing. We thusare able to determine whether the sensed wheel variablesare sufficientfor discerning all of the motions allowed by the mobility structure. Finally , in SectionIV I, we summarize our development.

    B. Formulationof the Compos ite Robot Equation

    In SectionIII G3, we developed the wheel Jacobian matrixJ i by applying velocity

    kinematics to compute the robot velocity vectorp from the wheel velocity vector$:

    p = JAi for i = 1, . . . , N, (36)

    where i is the wheel index,N is the total number of wheels,p is the vector of robotvelocities,J i is the (3 x wi) Jacobian matrix for wheeli, wi is the number of variablesfor wheel i, and Qi is the (wi X 1) vector of wheel velocities.

    The 3N wheel equations in(36) must be solved simultaneously to characterize theW M Rmotion. We combine the wheel equations toform the composite robot equation:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    31/60

    Muir and Neuman: KinematicModeling 31 1

    or

    &p = B& (38)

    where the I i , for i = 1, . . . , N, are (3 X 3) identity matrices,& is a (3N x 3)matrix, Bo is a (3N X w) block diagonal matrix,w = w1 + wz + . . . w N s thetotal number of wheel variables, andq is the composite wheel velocity vector.

    Having formulated the matrix equation in(38)to model the robot motion, we proceedto investigate the solution for the robot velocity vectorp in Section IV C and itsimplications forW M Rocomotion in SectionIV D.

    C. Solutionof Ax = By

    We characterizeWMR mobility (in SectionIV D), actuation(in SectionIV F), andsensing (in SectionIV H) by examining the pr op fli es of the solutions of the compositerobot equation in (38). We extend the standard criteriaz9 for the system of linearalgebraic equationsAx = b, where A is an (rn X n ) matrix, x is a ( n x 1) vector,and b is a (rn x 1) vector, to the solution of the system of linear algebraic equations

    A X = By, (39)

    where B is an ( m x p) matrix and y is a (p x 1) vector. Since the composite robotequation (38) has the form of (39), solutions of (39) are directly applicable to thesolution of the composite robot equation.

    We apply the method of least squaresz9 o compute the vectorx for overdetermined(i.e ., having fewer variables than independent equations) and determined (i .e ., havingthe same number of variables as independent equations) systems of linear algebraicequations:

    The necessary condition for applying the least-squares solution in40) s that rank(A) = n. There is no unique solution for undetermined systems (i.e., systems having

    fewer independent equations than independent variables).The residual error of the least-squares solution is:

    AX - By = [A(ATA)- ' AT - I] By = A(A) By. (41)

    For expository convenience , we define the Delta matrix functionA(@)as:

    for U = nullOtherwise(U) = {,:TU,-I UT - I

    where the argumentU s a (c x d ) matrix of rankd.To characterize WMR motion, we must determine whether the least-squares error

    in (41) is zero for all y. To do so, we may apply either of the following equivalenttests:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    32/60

    312 Journal of Robotfc Systems-lQ87

    A ( A ) B = 0 (43)

    or

    rank[A; B] = rank[A]. (44)

    If either test (43) r (44) s satisfied, the least-squares error is zero for ally. The firsttest in (43) s apparent from the expression for the least-squares error in(41). Thesecond test in (44) tates that if the columns of the matrixB lie in the vector spacespanned by the columns of the matrixA, then the vectorBy must also lie in the vectorspace spanned by the columns ofA for all y. The vector By can then be expressedas a linear combinationof the columns of A by proper choice (via the least-squaressolution) of x. Similarly, we may determine whether the least-squares error is zerofor a specificy by applying eitherof the followingtwo equivalent tests:

    A(A) By = 0, (45)

    or

    rank[A;By] = rank[A]. (46)

    We depict in Figure 1 1 a tree illustrating the nature of all possible solutions for thevector x of the system of linear algebraic equations in(39). he tree branches (directedarrows) indicate tests on the matricesA, B,and y and are numbered for future reference.The leaves (boxes) indicate the corresponding properties of the solution.

    As depicted in Figure11 , the system of linear algebraic equations in(39) may bedetermined, overdetermined, or underdetermined. The top branches,(0) and (l), e-termine whether the least-squares solution is applicable by testing therank of the matrixA. If the rank of A is n (branch(O)), the least-squares solution is applicable and thereis a unique solution for somey. If the rank of A is less than n (branch(l)), he least-squares solution is not applicable-indicating that the system is undetermined andthere is no unique solution for anyy. An undetermined system has more unknowns

    than independent equations.A determined system is one in which the number of independent equations (lessthan or equal to m) quals the number of unknowns(n). The least-squares error iszero for all y and thus tests (43) nd (44) pply at branch (00).

    An overdetermined system is one in which the number of independent equations isgreater than the number of unknowns. The least-squares error ofan overdeterminedsystem is thus non-zero for somey (branch (01)). Tests (45) nd (46) re applied atbranch (010) to determine whether the least-squares is zero for a specificy. If so, thesystem is consistent and there is a unique solution.If the least-squares erroris non-zero for a specificy (branch (Oll)), he system is inconsistent and there is no exactsolution.

    In Section IV D, we apply the solutiontree in Figure 1 1 to the compositerobotequation in (38) nd discuss the implicationsfor WMR mobility characterization.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    33/60

    Muir and Neuman: Kinematic Modeling 313

    U n i q u e S o l u t i o nf o r Some y

    1 r n S l - S q U . r M 9 S D 1 U I I O I

    I p p l l c a b l o

    D e t er m i n e d O v e r d et e r m i n e d U n d e t e r m l n r dU ni qu e S o l u t i o n U n iq u e S o l u t i o n No U n iq u e S o l u t i o n

    fo r A l l y f o r Some yL e o s t . S q u a r e s f e l u t ( o n

    N o t L p p l l c a b I aI t a i t - S q u r e % r r o r - 0

    t

    r a n k [ A ; B y ] - r a n k [ A ] r a n k [ A : B y ] > r a n k [ A ]o r o r

    A(A) y 9 0 & A ) B Y # 0

    C o n s i s t e n t I n c o n s i s t e n tU n i q u e Solu t lon No S o l u t i o n

    I.*art-squrr.r Error; * 0 lrs8t-Squ*rss Irror > 0

    Figure 11. The solution tree for the vector x in (39).

    D. Robot MobllltyCharecterlstlcsThe composite robot equation in(38) has the formof the system of linear algebraic

    equations depicted in Figure 11, in which&, Bo, , and q play the roles of A, B,x, and y, respectively. Since the robot velocity vectorp plays the role of the dependentvariable, we investigate the conditions under which the forward solution maybecomputed.In Figure 12, we apply the solutiontree in Figure 11to the composite robotequation in (38).

    By inspection of (37), we observe that the rank of the(3N X 3) matrix & s 3 andthus branch (0) always applies. Since branch (1) does not apply, the solution cannotbe undetermined; and hence the robot motion is completely specified by the motionof the wheels. From the structureof the matrices& and BO n (37), we observe thatthe rank of the augmented matrix[&, B,] is greater than 3 when there is more thanone wheel. A WMR with one wheel is determined [branch( O O ) ] ,and a WMR withmore than one wheelis overdetermined [branch(Ol)]. The overdetermined natureofWMRs having more than one wheel is a consequenceof the closed-link kinematic

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    34/60

    31 4

    Y

    D e t er m i n e d O v e r d e t er m i n e d U n d e t er m i n e dU ni qu e S o l u t i o n U ni qu e S o l u t l o n No U n i q u e S o l u t i o n

    f o r ~ i i f o r Some qYo r e Than One UhaelClosed-l Ink C h a l n s

    Not P o a i t b l eO n l y One Wheel< r L

    Journal of Robotic Sys t ems4 987

    Figure 12. The solution tree for the robot velocityvector p.

    structureof a WMR. s indicated in Figure 12, he composite robot equation in(38)

    will be consistent [and have a solution at branch(OlO)] or inconsistent [and have nosolution at branch (011)] depending upon the wheel velocity vectorq. Our no-slipassumption (in SectionIII B) ensures that the motionsof the wheels and the robot areconsistent and that there is thus an exact soiution.

    We depict in Figure12 he solution of the robot velocity vectoryp from the completewheel velocity vectorq. In practice, the wheel velocity vector mustbe measured bysensors. It is difficult to sense some of the wheel velocities, suchas the rotationalwheel slip. Since aW M Rwith more than onewheel has closed-link chains, it is notnecessary to sense all of the wheel velocitiesto calculate the robot velocity becausemany of the sensor motionsare dependent.In SectionsIV G and IV H, we investigate

    the solutionof the robot velocity vector from the sensed wheel velocities.Although the nature of the forward solution of the composite robot equation providesus with little physical insight, we gain significant understandingof W M Rmotion by

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    35/60

    Muirand Neuman: Kinematic Modeling 31 5

    ,U n i q u e S o l u t i o n

    f o r Some pM o t i o n E q u a t i o n s a r e S o l u b l eI n v e r s e S a l u l i o n A p p l i c a b l a

    (No W h e e l s H a v e R e d u n d a n t OoFr)

    investigating the nature of the inverse solution. For WMR control it is not necessaryto compute all of the wheel variables in the inverse solution since theyare not allactuated. Because of the closed-link chains, m oreover notall of the wheel variablesmust be actuated. In Section IV E, we com pute the actuated inverse solution for the

    actuated wheel variables. In the remainder of this section, we focus onthe completeinverse solution to gain physical insight into WMR mobility characteristics.We investigate the inverse solution by interchanging the roles of the right- and left-

    hand sides of the composite robot equation in(38) and applying the solution tree inFigure 11. Thereby, Bo, A,,, q, and p in (38) play the roles of A, B, x, and y in (39),respectively. The solution tree for the inverse so lution, subsequently referredto as themobility characterization tree, is depicted in Figure13. The branch tests indicatedwithin curly brackets"{ ) are simplified e s t s which apply if thereare no couplingsbetween wheels.

    The inverse solution can be determined, undetermined, or overdetermined dependingupon the kinematics (i.e., Boand &). The top branches test therank of the (3N X w )

    C o m p o si t e R o b o t t q u a t i o nk 3

    ( w i = 3 f o r i = l ,..., }T h r e e DOF C r i t e r i o n

    Ie t e r m i n e d

    U n i qu e S o l u t i o nfor All p

    3 - D O F M o b i l i t yI n v e r 5 e l a a r t - S q u a r e s Error - 0

    A ( ) . f 0

    ( w i < 3 f o r some i }\ \I

    v e r d e t e r m i n e d

    I U n i q u e S o l u t i o n Is o m e R o b o t DOFS O r p e n d r n rf o r Some pFewer Than 3-OOF M o b i l i t yU n d e t e r m i n e d

    No U n i q u e S o l u t i o nSome W h e e l s Have Redundant DOFsI n v e r s e a n d F o r r a r t l Solutions.

    a n d A c t u a t i o n a n d S e n s i n g T r a m st l n n l I r X h l .

    { A ( J i ) = 0 f o r i = 1 , ..,N }K i n e m a t i c M o t i o n C o n s t r a i n t s

    C o n s i s t e n tU n i q u e S o l u t i o n

    M o t i o n D w p e n d w n c i e s Sa t i s? i . dROW^ M o t i o n f lP o s s i b l e

    I n v c r s a L e a s t - S o u i r m s Error - 0

    ( A ( J 4 ) i 0 f o r some i }

    I n c o n s i s t e n tNo S o l u t i o n

    Motion D e p e n d e n c i e s H o t S a t i t f t 8 dR o b o t M o t i o n f lNot P o s s i b l e

    I n v a r s e L e a s t - S w a r e a Error > 0

    Figure 13. The mobility characterization tree.

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    36/60

    316 Joumd of Robotic Systems-7987

    matrix Boagainst the total number of wheel variablesw. Since the rankBo is the sumof the ranks of allof the wheel Jacobian matrices when there are no wheel couplings,we test therank of each wheel Jacobian matrixJi against the number of wheel variablesw i or all wheels i = 1, . . . , N. The rank of the (3 X wi) heel Jacobian matrixJ iis w i f the determinant of the matrix[JTJi] is non-zero as indicated by the non-redundant wheel criterion in(28). We refer to branch test (MO) as the soluble motioncriterion because it determines whether the compositerobot equation canbe solved.

    Soluble Motion Criterion

    runk[Bo]= w , (474

    Soluble Motion Criterion withNo Wheel Couplings

    det[JT Ji] # 0 for i = 1, . . . , N . (47b)

    If the determinant of the matrix[J: Ji] is zero, the associated wheel is redundant.A WMR having redundant wheels and no w heel couplings is undetermined. We cannotcompute the inverse solution for a WMR with redundant wheels. Since the inversesolution is utilized for WM R control,' we suggest that undetermined mobility structures(i.e., redundant wheels) be avoided.

    W M R swithout redundant wheels allow some robot motions since there is a uniquesolution to the system of linear algebraic equations in(38) or somep. Branches (MOO)and (MO1) test the rank of the augmented matrix[Bo;&] gainst the rank of Bo.Fromtheir structure in(37), he r a n k sof these two matricesare equal when all of the wheelJacobian matrices are (3 x 3) and rank 3 (i.e., all of the wheelsare non-redundantand possess three DOFs). The m obility structure of aWMR is therefore determinedif the test at branch(MOO) succeeds. A determined structure has a unique solution forall p; Le., for any desired three-dimensional robot velocity vectorp there is a wheelvelocity vectorq which is consistent with the motion. W e thus conclude: The kinematicdesign of a WMR allowsthree DOF motion if and only if all of the wheels possessthree DOFs. This requirement is expressed computationally inthe three DOF motioncriterion in (48).

    Three DOF Motion Criterion

    r~nk[Bo]= w and A(B0) & = 0, (484

    Three DOF Motion Criterion with No Wheel Couplingsder[JT Ji] # 0 and wi = 3 or i = 1, . . . , N . (486)

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    37/60

    Muir and Neuman: Kinematic Modeling 31 7

    If branch (MO) succeeds and the WMR does not possessthree DOFs, the solutionis overdetermined [branch (MOl)]. The robot does not allow some motions becausesome of the robotDOFs are dependent. For example, a WMR with a non-steeredconventional wheel which satisfies branch (MO) must have an overdetermined mobility

    structure because no motions perpendicular to the wheel orientation may occur withoutslip. Branches (M010) and ( M o ll ) indicate the possible robot motionsp without slip.If the least-squares error is zero, the solution is cons istent, andthe motion may occur.We thus determine the kinematic constraints on the robot motion by equating the least-squares error to zero in (49 ). By examining the structure of the erro r in (49a), we findan equivalent computationally simpler test in (49b) when there areno ouplings betweenwheels.

    Kinematic Motion Constraints withNo Wheel Couplings

    A(Ji)p = 0 for i = 1, . . . , N. (496)

    We may thus determine the kinematic motion constraints for a WMR without re-dundant wheels or wheel couplings by considering each wheel independently.

    The augmented matrix[A(Bo)&] ndicates whether the WMR possessesthree DOFsat branch (MOO)or fewer than three DOFs at branch (M01). When there are fewerthan threeDOFs, the numberof independent colum ns of the m atrix[A(Bo)&] specifiesthe number of dependent robotDOFs. The number of DOFs of a WMR having noredundant wheels is:

    Number of WMR DOFs

    DOFs = 3 - rank[A(Bo)&I. (50)

    The test at branch (MO) determines whether the complete inverse solution for all ofthe wheel variables can be calculated by the least-squares solution. In SectionIV E,we apply the leas t-squares solution to calculate the actuated inverse solution for theactuated wheel variables. Although the actuated inverse solution may exist for somerobot velocitiesp for which the complete inverse solution does not, it is not practicalto apply such an actuated inverse solution because the desired robot velocitiesareconstrained by the unactuated wheel variables. We thus utilize the soluble motion

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    38/60

    318 Journal of Robotic Systems-1 987

    criteria in (47) o indicate when the actuated inverse solution in Section IVE ispractically applicable.

    E. Actuated Inverse Solu tion

    We calculate the actuated inverse solution by solving for the actuated wheel velocitiesin (38). Because of the closed-link chains inWMRs, we need not actuateal l of thewheel variables.To separate the actuated and unactuated wheel variables , we partitionthe wheel equation in(36) into two components:

    The u subscripts denote the actuated components andthe u subscripts denote theunactuated components. We letai denote the number of actuated variables, anduidenote the number of unactuated variables for wheeli (i.e., ai + ui = wi) . We definethe total numter of actuated wheel variables tobe a = a l + a2 + . . . + aN andthe total number of unactuated wheel variables to beu = ul + u 2 + . . . + uN. Wecombine the partitioned wheel equations in(5 1) to rewrite the composite robot equationin (37) s

    or

    The (3N X w )matrix Bop and the( w X 1) vector ilpare he partitioned counterpartsof the matrix Bo and the vectorq n (37). The soluble motion criterion in(47) indicatesunder what conditions the least-squares solution maybe practically applied to computethe inverse solution (i.e., rank[Bo]= w ) . We henceforth assume that the least-squaressolution is applicable and that all matrix inverses encountered in its applicationarecomputable. We apply the least-squares solution in(40) to calculate the vectorof thewheel variables from the robot velocity vector:

    In Appendix 2, we compute the vector of actuated wheel velocitiesqa = [qL ... GalT n (52) s

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    39/60

    Muir and Neuman:KinematicModeling 319

    Actuated Inverse Solution

    Each (ai 3) block row of the matrix on the right-hand side of ( 5 3 ,correspondingto the actuated velocities qip, involves only the Jacobian matrix of wheel i. The inversesolution for each wheel is thus independent of the kinematic equations of all of the

    (N - 1) other wheels. When wheel i is non-redundant with three DOFs and allthr

    wheel variables are actuated, each block row of ( 5 5 ) simplifies to

    We may therefore assume that all of the wheel variables of all of the non-redundantwheels having thr DOFs are actuated, apply the inverse Jacobian matrix in (56) tocalculate the wheel velocities, and extract the actuated velocities for robot control.This approach requires approximately one-tenth of the arithmetic operations requiredfor the direct application of (55) .

    F. Robot Actuatlon Characteristlcs

    A WMR control engineering application of the actuated inverse solution (in SectionIV E) s to command the velocities of the actuated wheel variables to their calculatedvalues. We investigate the characteristics of the robot motion when the actuated wheelvelocities attain the values computed by the actuated inverse solution. We relate therobot velocity vector to the actuated wheel velocities by eliminating the unactuatedwheel velocities from the composite robot equation in (37). Under the no-slip as-sumption, the unactuated wheel velocities will be consistent and comply to the robotmotion. We compute in (57) the unactuated wheel velocities from the robot velocitiesin the actuated inverse solution by interchanging the roles of the actuated ( a sub-scripts) and unactuated ( , ubscripts) variables:

    The conditions guaranteeing he computability of the unactuated and actuated inversesolutions are identical and are indicated in the soluble motion criterion in (47). Wesubstitute (57) into the partitioned composite robot equation in (52) to obtain:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    40/60

    320 Journd of Robotic Systams-1@87

    or

    The robot actuation equationin (58) has the form of (39) with &, B,, p, and &playing the rolesof A, B, x and y, respectively. We apply the solutiont r in Figure1 1 to (59)and obtain the actuation characterizationtree in Figure 14.

    The actuation characterizationtree, in analogy with the mobility characterizationtree indicates the propertiesof the actuation structureof a WMR. The branch testsare developed from the solutiont r in Figure 1 1 . We concentrate on the implicationsof the solutions.

    The systemof linear algebraic equations in(59) representing the actuation structureof the W M Rmay be determined, undetermined, or overdetermined.If branch (Al)

    succeeds, the actuation structure is undetermined and there is no unique solution forthe robot motion p. Since we cannot calculate the robot motion, it is unpredictable,and some robot DOFs are uncontrollable. We suggest that undetermined actuationstructuresbe avoided.

    If branch (AO) ucceeds, we are assured that all robot DOFs are actuated. Specif-ically, all robot motions allowed by the mobility structure canbe produced by theactuators. Consequently, we referto branch test(AO)as the adequate actuation criterion:

    Adequate A c t u a t h Criterion

    det(LT&) # 0. (6f-N

    If the actuation structureis overdetermined [branch(AOl)], some of the actuatormotions are dependent. If the dependent actuator motionsare consistent [at branch(AOlO)] robot motion is produced, otherwise (at branch(AOll)) wheel slip occurs.Any mechanical couplingsbetween actuated wheel variables must satisfy the actuatordependencies to allow robot motion; we therefore refer to branch test(A010) as theactuator coupling criterion:

  • 8/12/2019 Kinematic Modeling of Wheeled Modile Robots

    41/60

    Muir and Neuman: Kinematic Modeling 321

    Actuator Coupling Criterion

    If the dependent actuator motions are not consistent [branch(AOll)], wheel slipmust occur because the least-squares error is non-zero. Since a control system cannotguarantee zero actuator tracking errors, the actuated wheel velocities may deviate fromthe values computed by the actuated inverse solution. In the presence of these trackingerrors, the actuator coupling criterion is not satisfied and the system of linear algebraicequations in (59) becomes inconsistent with no solution. We referto this situationas

    IA a i = 6 . i .R ob ot A c t u a t i o n f a u a t l o nrankCA.1 = 3 rankCA.1 < 3

    Unique So1ut)onf o r Some qa

    A d eq u at e A c t u a t i o nA11 Robot DWa A c t u a t e d

    R ob us t A c t u a t i o