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 n - 1
link i

joint 1 link 2 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

=degreesoffreedominspaceinwhich
mechanismfunctions

Itisalsotruethat

=ci+fi (3.2)

whichleadstoGrubler'sCiterion:

j
Figure32ABB6axisrobot
F=(nj1) f i (3.3)
i 1

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)
i 1
L=87+1=2
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: Figure34Multipleloops

L=jn+1 (3.5)

Figure 34 applies this equation for a 2


loopmechanism.
S
Combining(3.5)withGrubler'sCriterion,
wegettheLoopMobilityCriterion:
fi=F+L (3.6) P

3.1.4 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
ExampleFigure35showstheStewart (notethatdashedlinesrepresentsame
Goughplatform. Determine the degrees SPSjointcombinationasshown:
offreedom. Note that each SPS S=sphericaljoint;P=prismaticjoint)
combination generates a passive degree
offreedom.Thus,

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

Figure 36 Revolute Figure37Spherical


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

L
a
d
O

y
x

Figure310ConventionalDHparameters

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

35
z

P(x,y,z)
O
y

Figure311Pointvectorlinedescription

The DenavitHartenberg parametric description of lines can be extended to represent


framecoordinatesforakinematicchainofrevoluteandtranslationaljointsconsiderthe
figurebelow.Notethatthereareseveralformsoftheseparametersbeingappliedtothe
forwardandinversekinematicsofserialmechanisms.
zi Jointi
zi+1
Jointi+1
xi+1
z i1 xi1

Jointi1 i
Linki
i
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.

Figure313Pumarobot
Joint ai di i i Range

1 0 0 90 90 150to150
2 432 149.5 0 0 225to45
3 0 0 90 90 45to225
4 0 432 0 90 110to170
5 0 0 0 90 100to100
6 0 55.5 0 0 265to265

Figure314PUMADHparameters

Using theD
H

representation,thefourparametersaredescribedas

37
i=jointangleofxiaxisrelativetoxi1axiswithdefinedaccordingtoRHruleabout
zi1axis.

di=distancefromtheoriginofthei1axestotheintersectionofthez i1axiswiththe
xiaxisandmeasuredalongthezi1axis.

ai=minimumdistancebetweenzi1andzi.

i=offsetangleofziaxisrelativetozi1axismeasuredaboutthexiaxisusingRH
rule.

z i1
i
Line=zaxis
i
ai
zi
i
di ydefinedbyRHcoordtriad
i

y i1
xi
i

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) (3.7)

where

38
1 0 0 0
0 c i - s i 0
H(,xi)=
0 s i c i 0
0 0 0 1

1 0 0 ai
0
H(a,xi)= 0 1 0
0 0 1 0
0 0 0 1

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

1 0 0 0
0 1 0 0
H(d,zi1)= 0
0 1 di
0 0 0 1

Applyingthematrixmultiplicationof(3.2),

c i - c i s i s i s i a i c i
s c i c i - s i c i a i c i
Ai= i (3.8)
0 s i c i di

0 0 0 1

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 Jointi+1
xi
z i1
i
Jointi1

di Linki

ai

Figure316RevisedDHparameters

ThetransformationforthissetofDHparametersis

ci - si 0 ai
si c i ci c i - s i - s i d i
Ai= (3.9)
sis i cis i c i c i d i

0 0 0 1

Classproblem:derivethesetofDHparametersforthePumarobotbeingconsidered.

310
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

Ti=A1A2....Ai= A j (3.11)
j11

TheTmatrixlocatingthegripperframeis
n

Tn= A j (3.12)
j11

Thesubscriptnmaybedroppedforsimplicity.
z0

y0

x0
p sliding
6

y6
approach
z6
x6
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 z4
x0 y0 y4
d6 s
p

a
x4
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 (3.17a)

313
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 (3.17d)
sy =S1 C23 C4 C5 S6 +S4 C6 +S23 S5 S6
+C1 S4 C5 S6 +C4 C6 (3.17e)

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)

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 (3.18a)


qy=S1(d4S23+a2C2)+d2C1 (3.18b)
qz=d4 C23 a2 S2 (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 (useatan2() (3.19)
qx +d2 qy

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 (3.20)
4d 24 a 22 q 2z q 2y q 2z - d 24 - a 22 - d 22 2

The+solnisfortheelbowabovehandwhereasthesolnisfortheelbowbelowhand.

Now,given 3 (andS3 andC3 ),wecanexpand C23 andS23 andfinallyarriveat(use


atan2)

2
qz a2 +d4 S3 d4 C3 q2 2
x +qy d2
2 =tan1
2
qzd4 C3 a2 +d4 S3 q2 2
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)
z 4 = (z4axisdirectioncosines) (3.22)
||z 3 xa ||

z5=a(z5axisdirectioncosines) (3.23)

y6=s(y6axisdirectioncosines) (3.24)

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)

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


5 =tan1 c1 s23 ax +s1 s23 ay +c23 az (3.26)

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

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


6 =tan1
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 j
C k = f i (3.28)
k 1 i 1

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
b c 3i c yi (3.31)
a s b s s( )
1i 3i 1i 2i c zi

Figure321Marylandlimbschematic

318
c xi c i s i 0 p x h - r
ci= c yi - s i c i 0 p y 0 (3.32)
0 0 1 0
c zi p z

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.

Consideringthe3limbsPmustlieonthe P
h Ci
intersection of three such spheres. There
arefourpossibilities:
Bi'
Genericsolution spheresintersectat h
Bi
two points, giving two solutions (one b zi
sphere intersects circle of intersection a
oftwootherspheres) O
r
xi
Singular solution one sphere is Ai
tangenttocircleofintersectionoftwo
otherspheres
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 p x - a c1i h - r
b c 3i - s i c i 0 p y 0 (3.33)
b s s( ) 0 0 1 - a s1i
3i 1i 2i p z

andthensquarethethreecomponentstogettheequation:

319
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)

where

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)

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
P
G
k2=l b +l0 / l2 +l3 / l2 + a s 11
5
2 2 2 2 2 2 2 2

2l0l5s1/l22al3s11/l2 Tp

and
T
l0=e32e43e33e42
l1=e13e32e12e33 O
l2=e22e33e23e32 Figure 323 Closing the
l3=e23e42e22e43 grippertoplatformloop
l4=e12e23e13e22

320
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.

From(3.31)wecandeterminetwosolutionsfor3ias

3i=cos1(cyi/b) (3.41)

321
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