You are on page 1of 22

3 ROBOTKINEMATICS

Purpose:
Thepurposeofthischapteristointroduceyoutorobotkinematics,andtheconcepts
related to both open and closed kinematics chains. Forward kinematics is
distinguishedfrominversekinematics.

3.1 KinematicsChains
Mechanisms can be configured as kinematics chains. The chain is closed when the
groundlinkbeginsandendsthechain;otherwise,itisopen.
3.1.1

Serialrobots

Themanipulatorofaserialrobotis,ingeneral,anopenkinematicschain. Thejoints
mustbecontrolledindividually.
joint 2
joint 1

link 2

joint n - 1

link i

link n

joint i

Fixed link 1

Figure31Setofseriallinksconnectedbyjoints
Assumingbinarypairjoints(jointssupporting2links),thedegreesoffreedom(F)ofa
mechanismisgovernedbytheequation
j

F=(n1) c i

(3.1)

i 1

where
F=mechanismdegreesoffreedom
n=numberofmechanismlinks

31

j=numberofmechanismjoints
ci=numberofconstraintsimposedbyjointi
fi=degreesoffreedompermittedbyjointi
ji = number of joints with i degreesof
freedom
=degreesoffreedom inspace inwhich
mechanismfunctions
Itisalsotruethat
=ci+fi

(3.2)

whichleadstoGrubler'sCiterion:
j

F=(nj1) f i
i 1

(3.3)

Figure32ABB6axisrobot

Example 6axis revolute robot(ABB IRB


4400):
Using(3.1)andreferencingFigure32:
F=6(71)6(5)=6"asexpected"
Note:thatthedegreesoffreedomoftherobotequalsthe
number of moving links, which equals the number of
joints. Tospecify aunique manipulator configuration,
eachjointmustbecontrolled.

Example3axisrevoluteplanarrobot:

Figure33Planarrobot

Using(3.1)andreferencingFigure33:
F=3(31)2(2)=2
Whyisn'ttheanswer3?
3.1.2

Redundantdegreesoffreedom

32

Grubler'sCriterionisvalidaslongastherearenoredundantjoints.Aredundantjointis
one that is unnecessary because other joints can provide the needed position and/or
orientation(seelast3jointsonIRB4400).
Redundant joints can generate passive degreesoffreedom, which must be subtracted
fromGrubler'sequationtoget
j

F=(nj1) f i fp

j=8;n=7(3.4)
L=87+1=2

i 1

Example: Quicktime video of robot.


Showshowlastjointscanbeconfigured
to avoid redundancy during robot task
motion.
3.1.3

LoopMobilityCriterion

ConsiderFigure34.Someofthelinks
have more than two joints, leading to
multiple loops. The number of
independentloopsisthetotalnumberof
loops excluding the external loop. For
multipleloopchainsitistruethatj=n+
L1whichgivesEuler'sequation:
L=jn+1

Figure34Multipleloops

(3.5)

Figure 34 applies this equation for a 2


loopmechanism.

Combining(3.5)withGrubler'sCriterion,
wegettheLoopMobilityCriterion:

fi=F+L
3.1.4

(3.6)

Parallelrobots
S

A parallel robot is a closed loop chain,


whereas a serial robot is an open loop
chain. A hybrid mechanism is one with
bothclosedandopenchains.

Figure35StewartGoughPlatform
(notethatdashedlinesrepresentsame
SPSjointcombinationasshown:
S=sphericaljoint;P=prismaticjoint)

ExampleFigure35showstheStewart
Goughplatform. Determine the degrees
offreedom. Note that each SPS
combination generates a passive degree
offreedom.Thus,
33

=6;n=14;j1=6;j3=12;

Figure37Spherical

Figure 36 Revolute
Figure 33
Spherical

Figure38Cylindrical

Figure39Rectangular

fp=6
Then,
F=6(14181)+(12x3+6)6=6!Asexpected!

3.2 SerialRobotTypes
Serial robots can be classified as revolute, spherical, cylindrical, or rectangular
(translational,prismatic,orCartesian).TheseclassificationsdescribetheprimaryDOF
(degreesoffreedom)whichaccomplishtheglobalmotionasopposedtothedistal(final)
jointsthataccomplishthelocal,primarilyorientation,motion.

3.3 SerialRobotTypes
Therearenumerousparallelrobottypes.Someofthesewillbeexaminedlater.

3.4 OpenChainLinkCoordinates
According to the conventional DenavitHartenberg (DH) notation (Denavit, J. and
Hartenberg,"AKinematicNotationforLowerPairMechanismsBasedonMatrices,"J.
ofAppliedMechanics,June,1955,pp.215221.),onlyfourparameters(a,d, )are
necessarytodefineaframeinspace(orjointaxis)relativetoareferenceframe:
34

a=

minimum distance between line L (the z axis of next frame) and z axis
(mutuallyorthogonallinebetweenlineLandzaxis)

d=

distancealongzaxisfromzorigintominimumdistanceintersectionpoint

anglebetweenxzplaneandplanecontainingzaxisandminimumdistance
line

anglebetweenzaxisandL
z

O
d

y
x
Figure310ConventionalDHparameters
AlternativelywecandefinealinebyanypointPonthelineanditsdirectionunitvector
2
2
n.Thisrequires5parameterssincen2
x +ny +nz =1.

35

z
L
n
P(x,y,z)

x
Figure311Pointvectorlinedescription
The DenavitHartenberg parametric description of lines can be extended to represent
framecoordinatesforakinematicchainofrevoluteandtranslationaljointsconsiderthe
figurebelow.Notethatthereareseveralformsoftheseparametersbeingappliedtothe
forwardandinversekinematicsofserialmechanisms.
zi

zi+1

Jointi+1

xi+1

z i1
Jointi1

Jointi

xi1
i
i

Linki
Linki+1

di

xi
ai

Figure312ConventionalDHnotationforseriallinks/joints
Eachlinkihasaninwardjointiandanoutwardjointi+1. Thecoordinatesystemis
establishedbeginningatjoint1,theinputjoint,andnumberingoutward.Forarevolute
robotthecoordinatezaxisforeachlinkliescolinearwiththeaxisofrotation.Thexaxis
isestablishedbythemiminumdistancelinebetweenthecurrentzaxisandthezaxisof
theinnerjoint.aistheminimumdistancebetweenthetwoconsecutivezaxes.Theaxes
arenumberedsuchthatthei1axesareassociatedwiththeith jointoftheith link(and

36

thusdescribesthedisplacementofthepreviouslink).Thesetofaxesestablishedfora
PUMArobotisshownasfollows.

Joint
1
2
3
4
5
6

ai
0
432
0
0
0
0

Figure313Pumarobot
di
i
0
149.5
0
432
0
55.5

90
0
90
0
0
0

i
90
0
90
90
90
0

Range
150to150
225to45
45to225
110to170
100to100
265to265

Figure314PUMADHparameters
Using
H

theD

representation,thefourparametersaredescribedas
37

i=jointangleofxiaxisrelativetoxi1axiswithdefinedaccordingtoRHruleabout
zi1axis.
di=distancefromtheoriginofthei1axestotheintersectionofthez i1axiswiththe
xiaxisandmeasuredalongthezi1axis.
ai=minimumdistancebetweenzi1andzi.
i=offsetangleofziaxisrelativetozi1axismeasuredaboutthexiaxisusingRH
rule.

z i1
i
ai
di

Line=zaxis
i
zi

ydefinedbyRHcoordtriad
i

y i1
i

xi

xi1
Figure315DHframenotation
Forrevolutejointsiisthejointvariablewithd i,ai,andiconstant.Forprismaticjoints
thejointvariableisdiwithi,ai,andiconstant(ai istypicallyzero)
Givenarevolutejointapointx i locatedontheithlinkcanbelocatedini1axesbythe
following transformation set which consist of four homogeneous transformations (2
rotationsand2translations).Thesetthatwillaccomplishthisis
Ai=H(d,zi1)H(,zi1)H(a,xi)H(,xi)(i=1,...n)
where

38

(3.7)

1
0
H(,xi)=
0
0

0
0
c i - s i
s i c i
0
0

H(a,xi)= 0
0
0

0
1
0
0

0
0
1
0

ai
0
0
1

c i - s i
s i c i
H(,zi1)=
0
0
0
0

1
0
H(d,zi1)= 0

0
1
0
0

0
0
1
0

0
0
0
1

0
0
1
0

0
0
0
1

0
0
di
1

Applyingthematrixmultiplicationof(3.2),

c i - c i s i s i s i a i c i
s i c i c i - s i c i a i c i
Ai=
0
s i
c i
di

0
0
1
0

(3.8)

Class problem: What is the correct order in multiplying the four H transformation
matricestoget(3.8)?
Ai=??
3.4.1

OtherDHNotation

TheCODEsystemusesasetofDHparametersthatdifferfromtheconventionalset.
ThesearesimilartoCraigsDHconvention.
ReferringtoFigure3.16,wenotethatfourparametersmustbespecified:
ai=

minimumdistancebetweenjointiaxis(zi)andjointi1axis(zi1)

39

di= distancefromminimumdistanceline(xi1 axis)tooriginofithjointframe


measuredalongziaxis.
i= anglebetweenziandzi1measuredaboutpreviousjointframexi1axis.
i= angleaboutzijointaxiswhichrotatesxi1toxiaxisinrighthandsense.
Thexiaxisistheminimumdistancelinedefinedfromz itozi+1;ziisdefinedasthejoint
rotationortranslationaxisaxisandyibytherighthandrule(zixxi).Theoriginofeach
jointframeisdefinedbytheminimumdistancelineintersectiononthejointaxis.
zi

Jointi

zi+1

yi
xi

z i1
i

Jointi1

di

Linki

ai
i

Figure316RevisedDHparameters
ThetransformationforthissetofDHparametersis

ci
- s i
0
ai
si c i ci c i - s i - s i d i
Ai=
s s cis i c i c i d i
i i

0
0
1
0

(3.9)

Classproblem:derivethesetofDHparametersforthePumarobotbeingconsidered.

310

Jointi+1

3.5 ForwardKinematicsforSerialRobots
GiventheAtransformationmatricesofonejointaxesrelativetotheprecedingaxes,one
can relate any point in the ith link to the global reference frame by the following
transformationset.Let vi beapointfixedtotheith link.Itscoordinates uiinglobal
axesare(n=#DOF)
ui=A1A2....Aivi(i=1,2,...n)

(3.10)

TypicallywerepresentthesetoftransformationsabovebyasinglematrixcalledtheT
matrix
i

Ti=A1A2....Ai= A j

(3.11)

j11

TheTmatrixlocatingthegripperframeis
n

Tn= A j

(3.12)

j11

Thesubscriptnmaybedroppedforsimplicity.
z0

y0
x0

sliding

y6

x6

z6

approach

Gripper
Figure317Thegripperframe
ExaminingthegrippercoordinatesinthePUMAfigureshownpreviously(x 6,y6,z6),the
z6axis willtypicallydenotethegripperapproachdirectionwhilethey6axisdenotesthe
slidingdirection.ExaminingT,thefirst3columnsdescribetheframedirectioncosines

311

ofx6,y6,z6 relativetoglobal(orbase)framewhereasthe4thcolumnlocatesthex6,y6,
z6originrelativetoglobalframe.
3.5.1

ForwardkinematicsusingalternativeDHnotation

Usinghomogeneoustransformationsbetweentheseriallinksofarobottheposeofatool
frameattheendoftherobotcanbedeterminedbytheequation
T=A1A2A3...AnG

(3.13)

whereTlocatesthetoolrelativetotherobotbaseframeandGlocatesthetoolrelativeto
thelastjoint/linkframe. Notethatthejointframesareusuallyorientedsuchthatthe
rotationortranslationtakesplaceaboutthejointzaxis.
Question:Whyis G requiredinthealternativenotation,butnotintheoriginalDH
notation?
Inforwardkinematicsthejointtranslationorrotationisspecifieddirectlyandthetoolis
commandedtotheposedescribedmathematicallybyTsinceeachAiisknown.Forward
kinematicsisusedinteachpendantprogramming.

3.6 InverseKinematicsforSerialRobots
Inversekinematicsraisestheoppositequestion:GiventhatIknowthedesiredposeofthe
tool,whatarethejointvaluesrequiredtomovethetooltothepose?
Mathematically, we rearrange equation (3.13) so that we isolate the homogeneous
transformationsthatareafunctionoftheunknownjointvaluesandsomehowsolvefor
thejointvaluesbyapplyingthefollowingequation:
1

(jointvaluesunknown) A1A2A3...An=TG (rightsideknown)

(3.14)

Inversekinematicsisusedforcontrollingpathfollowingorinsensordirectedmotion
whereatargetcanbedetermined.
3.6.1

InverseKinematicsAnExample

Sinceafunctionoftherobotistoplaceobjectsinpositionsandorientationsdescribedin
globalspace,itisdesiredtodeterminethejointvariablestoaccomplishthis. Thisis
knownastheinversekinematics(invkin)problem.Thissectionconsiderstheinverse
kinematicssolutionforthePUMAmanipulator.

312

TheopenloopequationforasixaxisrobotlikethePumaisT=A1A2....A6.wherethe
targetposeTisknownandthejointvariables(iinthiscase)whichmakeupAimatrices
areunknown(andtobefound).
Thesolution,calculatedintwostages,firstusesapositionvectorfromthewaisttothe
wrist.ThisvectorallowsforthesolutionofthefirstthreeprimaryDOFthataccomplish
theglobalmotion. Thelast3DOF(secondaryDOF)arefoundusingthecalculated
valuesofthefirst3DOFandtheorientationmatricesT4,T5,andT6.
z0

q
y0

x0

z4

y4

d6

x4

a
n

Figure318Waisttowristsolution
Letthegripperframebedefinedbytheunitvectortriadn,a,ands(solutionprocedurein
Paul'stextbookRobotManipulators)
q=pd6a

(3.15)

Itisassumedthatpknownandaknown,sinceforaPUMAmanipulator,T(thedesired
globalframeofthegripper)isoftheform:
T = nsap
0001

(3.16)

where(e.g.,C23=cos(2+3))
nx =C1 C23 C4 C5 C6 S4 S6 S23 S5 C6
S1 S4 C5 C6 +C4 S6

313

(3.17a)

ny =S1 C23 C4 C5 C6 S4 S6 S23 S5 C6


+C1 S4 C5 C6 +C4 S6

(3.17b)

nz=S23 C4 C5 C6 S4 S6 C23 S5 C6

(3.17c)

sx =C1 C23 C4 C5 S6 +S4 C6 +S23 S5 S6


S1 S4 C5 S6 +C4 C6
sy =S1 C23 C4 C5 S6 +S4 C6 +S23 S5 S6
+C1 S4 C5 S6 +C4 C6

(3.17d)

sz=S23 C4 C5 S6 +S4 C6 +C23 S5 S6

(3.17f)

ax =C1 C23 C4 S5 +S23 C5 S1 S4 S5

(3.17g)

ay =S1 C23 C4 S5 +S23 C5 +C1 S4 S5

(3.17h)

az=S23 C4 S5 +C23 C5

(3.17i)

px =C1 d6 C23 C4 S5 +S23 C5 +S23 d4 +a2 C2 S1 d6 S4 S5 +d2

(3.17j)

(3.17e)

py =S1 d6 C23 C4 S5 +S23 C5 +S23 d4 +a2 C2 +C1 d6 S4 S5 +d2 (3.17k)


pz=d6 C23 C5 S23 C4 S5 +C23 d4 a2 S2

(3.17l)

Nowsetting 4 = 5 = 6 =0andd6 =0 wegetthecomponents of q from(3.17j)


(3.17l).
q=p ]4= 5= 6= d6=0
orbyapplying(3.8)
qx =C1 (d4 S23 +a2 C2 )d2 S1
qy=S1(d4S23+a2C2)+d2C1
qz=d4 C23 a2 S2

(3.18a)
(3.18b)
(3.18c)

Now,canbedeterminedfromqx andqy components.Let=d4 S23 +a2 C2 ;thus,


qx =C1 d2 S1
qy=S1+d2C1
Itcanbeshownthat=

q 2x q 2y d 22

andthat

314

qy d2 qx

1 =tan1

qx +d2 qy

(useatan2()

(3.19)

where(3.19)iscalculatedusingthefourquadrantatan2function.Onenotesfrom(3.19)
that 2 solutions exist: + for left shoulder PUMA; for right shoulder PUMA. The
solutionfor3canbefoundbysquaringthe(3.18)componentsandaddingtofindsin 3 ,
thenfinding
cos3=sqrt[1sin23]

q 2x q 2y q 2z - d 24 - a 22 - d 22

3=tan1

4d 24 a 22 q 2z q 2y q 2z - d 24 - a 22 - d 22 2

(3.20)

The+solnisfortheelbowabovehandwhereasthesolnisfortheelbowbelowhand.
Now,given 3 (andS3 andC3 ),wecanexpand C23 andS23 andfinallyarriveat(use
atan2)
2 =tan1

2
2
qz a2 +d4 S3 d4 C3 q2
x +qy d2
2
2
qzd4 C3 a2 +d4 S3 q2
x +qy d2

(3.21)

Thesolncorrespondstotheleftarmconfiguration,+solncorrespondstorightarm
configuration.
Obviously knowing 1 , 2 ,and 3 permits definition of 0T3.. To determine
4 , 5 ,and 6 weassumethatanapproachdirectionisknown(aknown)andthathand
orientationisspecified(n,s).ForthePUMArobotwecanarrangethejointaxessuch
that
(z 3 xa)
(z4axisdirectioncosines)
||z 3 xa ||

(3.22)

z5=a(z5axisdirectioncosines)

(3.23)

y6=s(y6axisdirectioncosines)

(3.24)

z 4 =

Nowgiventheabovecriteria,wecansolvefor 4 from
C4 =y 3 z 4 (=y 3 Tz 4 )
S4 =x 3 z 4 (=x 3 Tz 4 )

315

Determinex 3 andy 3 from1stand2ndcolumnsof0T3toget(useatan2)


c1 ay s1 ax
4 =tan1 c c a +s
1 23 x
1 c23 ay s 23 az

(3.25)

Given 4 wecandetermine0T4.Inasimilarfashionasfor 4 wecandetermine 5 .


Nowgiven 4 ,0T4isdefined(andsoisx 4 ,y 4 ,andz 4 ).
NowS5=x4aandC5=y4asothat(useatan2)
5 =tan1

c1 c23 c4 s1 s4 ax + s1 c23 c4 +c1 s4 ay c4 s23 az


c1 s23 ax +s1 s23 ay +c23 az

(3.26)

Nowif 5 0,adegeneratecaseresultsinwhicha5axisrobotwouldbesufficientsince
joint5isnotneeded.Tosolvefor6aligny6withssothatS6=y5nandC6=y5s
wherey5comesfromT50 andnandscomefromT.Weget(useatan2)
6 =tan1

S1 C4 +C1 C23 S4 nx + C1 C4 S1 C23 S4 ny + S4 S23 nz


S1 C4 +C1 C23 S4 sx + C1 C4 S1 C23 S4 sy + S4 S23 sz

(3.27)

3.7 KinematicsSummaryforSerialRobots
Both forward and inverse kinematics are important to
robotics.Therobotteachpendantusesdirectjointcontrol
toplacetherobottoolatdesiredposesinspace.Itisa
formofforwardkinematicscontrol.
When the target for an endeffector tool is specified
directly, either by a sensor or as the robot interpolates
moves along specified curvilinear paths in space, it
requiresinvkinsolutionstogeneratethenecessaryjoint
values.
DHparameters provideasimplewayofrelatingjointframes relative toeachother,
although more than one DH form proliferate the application methods. The invkin
solutionscanbecomplexdependingontherobotstructure.

3.8 ForwardKinematicsforParallelRobots
Aparallelmechanismissymmetricalif:
number of limbs is equal to the number of degreesoffreedom of the moving
platform
316

jointtypeandjointsequence
ineachlimbisthesame

number and location of the


actuatedjointsisthesame.

Otherwise, the mechanism is


asymmetrical. We will examine
the kinematics for symmetrical
mechanisms.
Wedefineseveralterms:
limb=aserialcombinationof
links and joints between
groundandthemovingrigid
platform
connectivityofalimb (Ck)=
degreesoffreedom
associatedwithalljointsina
limb

Figure320Marylandrobotschematic

Observation of symmetrical
mechanismswillestablishthat
m

k 1

i 1

C k = f i (3.28)
wherejisthenumberofjointsintheparallelmechanismandmisthenumberoflimbs.It
is also observed that the connectivity of each limb should not exceed the motion
parameter()andnotbelessthanthedegreesoffreedomofthemovingplatform(F),
leadingto
CkF

(3.29)

ExampleUniversityofMarylandMechanism(orABBPickerrobot)

317

Thegeneraldegreesoffreedomequation(3.3)doesnotapplytothisrobotbecauseofthe
symmetryofthedesignandotherconstraints.Thisrobothas3translationaldegreesof
freedom,witharotationalorientationjointaddedtothecenterofthemovingplatformin
thecommercialversion.
Figures320and321depictthenotationforanalysisoftherobotkinematics.Wedefine
alimbcoordinatesystemasxi,yi,zi,orientingthelimbbasepointA irelativetothefixed
robotbaseframex,y,zbytheorientationanglei.Thelimb'srevolutejointsarelabeledas
1i,2i,etc..whereidefinesthelimbnumber.
ExaminingFigures320and321,wecanwritealoopclosureequation:
ABi+BCi=OP+PCiOAi(3.30)
Expressing(3.30)inthelimbicoordinateframe,weget

a c1i b s 3i c(1i 2i ) c xi

c yi
b c 3i
a s b s s( )
1i
3i
1i
2i

c zi

(3.31)

Figure321Marylandlimbschematic

318

c xi c i s i 0 p x h - r
ci= c yi - s i c i 0 p y 0
0 0 1 0

pz
c zi

(3.32)

wherecilocatesCirelativetolimbcoordinateframeandplocatesPrelativetothex,y,z
baseframe.Notethat3irepresentstheoutofplanemotionofpointCi.
The forward kinematics (or direct kinematics as referred to in Tsai's book) can be
determinedbyspecifyingtheangles 11, 12,and 13.Theproblemistodeterminethe
positionx,y,zofpointP.
Firstnotethatforagivenangle1ithatpointPwilllieonaspherecenteredatB i',which
isoffsetinthehorizontaldirectionfromCi
toPbyadistanceh,Figure322.
P

Consideringthe3limbsPmustlieonthe
intersection of three such spheres. There
arefourpossibilities:

Genericsolution spheresintersectat
two points, giving two solutions (one
sphere intersects circle of intersection
oftwootherspheres)
Singular solution one sphere is
tangenttocircleofintersectionoftwo
otherspheres

Ci
Bi'

b
O

zi

r
Ai

Bi

a
xi

Figure322Forwardsolution

Singularsolutioncenterofanytwoof
thethreespherescoincide,resultingin
aninfinitenumberofsolutions.Thestructuraldesignwillprecludethishappening.
Anexampleofsuchaproblemiswhentheindependentjointsareall/2andr=h.

Nosolutionthreespheresdonotintersect

Wecanrearrange(3.31)and(3.32)toobtain

b s 3i c(1i 2i ) c i s i 0

- s i c i 0
b c 3i
b s s( ) 0 0 1
3i
1i
2i

p x - a c1i h - r
p

0
y
- a s1i

pz

andthensquarethethreecomponentstogettheequation:

319

(3.33)

b2=px2+py2+pz22(pxci+pysi)(ac1i+rh)
2pzas1i+(ac1i+rh)2+a2s21i

(3.34)

Thisequationrepresentsthesphereforlinki.Wenowapply(3.34)forlinks1andj(2or
3)andthensolvethemsimultaneouslytoget2equations(j=2andj=3):
e1jpx+e2j+py+e3jpz+e4j=0(j=2,3)

(3.35)

e1j=2cj(ac1j+rh)2c1(ac11+rh)

(3.36)

e2j=2sj(ac1j+rh)2s1(ac11+rh)

(3.37)

e3j=2as1j2as11

(3.38)

e4j=(ac11+rh)2+a2s211(ac1j+rh)2a2s21j

(3.39)

where

Notethattheformin(3.36)istheequationofaplanesince11,12,and13areknown.If
wegenerate(3.35)forbothj=2andj=3,thensolvefortheintersectionoftwoplanes,
wegettheequationofaline.Wethenintersectthis linewithoneofthespheresto
generatetwosolutions.Equivalently,thequadraticequationforthesetwosolutionscan
befoundbysolvingthetwoequationsrepresentedby(3.35)forp yandpzintermsofpz
andthensubstitutinginto(3.34)toget
k0px2+k1px+k2=0

(3.40)

wherethequadraticcoefficientsare
ko=1+l12/ l22+l42/ l22
k1 =2 l0l1/l22 + 2 l3l4/l22 2l5 c12
l5l1s1/l22al4s11/l2
k2=l52b2+l02/ l22+l32/ l22+ a2s211
2l0l5s1/l22al3s11/l2

Tp

and

T
l0=e32e43e33e42

O
Figure 323 Closing the
grippertoplatformloop

l1=e13e32e12e33

320

l2=e22e33e23e32
l3=e23e42e22e43
l4=e12e23e13e22
l5=ac11+rh
Thesolutioncasesare

k124k0 k2>0,twosolutions

k124k0 k2=0,onesolution

k124k0 k2<0,nosolution

Oncepxisfoundin(3.40),thenyoudeterminepyandpzbybacksubstitutioninto(3.35).
3.8.1

ForwardKinematicsImplementation

Howwouldyouuseateachpendanttodrivethisrobot?Inrealityyouwouldprobably
notcommandthejointsdirectly,butmostlikelycommandtranslationsintheu,v,andw
directions.Thus,youwouldnotlikelydrivethisrobotusingforwardkinematicsbut
onlyapplyinversekinematics.

3.9 InverseKinematicsfortheMaryland/PickerParallelRobot
Weassumethatthepositionvectorpisgiven.Theproblemistofindthejointanglesto
placepointPatp.Inreality,thegripperwouldnotbelocatedatP,butbeattachedtothe
moving platform. This is determined by gripper frame G relative to the platform
coordinateaxes.
AtargetframeisspecifiedasT.Wedeterminethetargetfortheplatformcoordinateaxes
asshowninFigure323.TheframeforpointPisdeterminedfromthefourthcolumnof
Tp=TG1.Wedesignatethisvectorasp.
Given p we determine the location of point Ci. This is simple because the moving
platformcannotrotateandthusthelinebetweenPandC itranslatesonly.Thus,givenP
(asdeterminedbyp)andthedistanceh,wecandetermineCiasdisplacedfromPbya
vectoroflengthhthatisparalleltoxi.
ThelocusofmotionoflinkBiCi isaspherewithcenteratC i andradiusb.Thefigure
showninthetextasFigure3.12isdeceivingbecauseitispresentedtwodimensionally.It
canonlybeinterpretedin3D.

321

From(3.31)wecandeterminetwosolutionsfor3ias
3i=cos1(cyi/b)

(3.41)

Tsaiconfusestheinversekinematicssolution,sinceyoushouldonlychooseapositive
solutionfor3i.

Why?
Given3iwecandetermineanequationfor2ibysummingthesquaresof(3.31)toget
2abs3ic2i+a2+b2=cxi2+cyi2+czi2

(3.42)

whichleadstoasolutionfor2ias
2i=cos1()

(3.43)

where=(cxi2+cyi2+czi2a2b2)/(2abs3i).Physically,wecandeterminetwosolutions
for2i("+"angleand""anglesimilartoelbowup/downcase).
Thetwosolutionsfor1icanbedeterminedfrom(3.31)byexpandingthedoubleangle
formulas,solvingforthesineandcosineof1iandthenusingtheatan2functiontoget
1i.
Itis possible that thetarget framemay fall outside therobot's reach; thus,wemust
examinethespecialcases:

Genericsolution circleoflinkABintersectsthesphereattwopoints,givingtwo
solutions.

Singularsolutioncircletangenttosphereresultinginonesolution.

Singularsolutioncircleliesonspherephysicallyunrealisticcase!

Nosolutioncircleandspheredonotintersect

3.10 KinematicsSummaryforParallelRobots
Boththeforwardandinversekinematics canposedifficult solutions.Itis helpfulto
understandthegeometryofmotion,becausethisprovidesinsightsintothekinematics
solutions.Grubler'sCriteriondoesnotreadilyapplytothisclassofcomplexmechanisms.

322

You might also like