Die theoretischen grundlagen zur behandlung algebraischer singularitäten der kinematischen koordinatenumkehr in der robotertechnik

Die theoretischen grundlagen zur behandlung algebraischer singularitäten der kinematischen koordinatenumkehr in der robotertechnik

Mech. ,Mack. Theory Vol. 26. No. 3, pp. 315--3"-2.. ~ 1991 Printed in Gr~at Britmn. All rishts rescr~d 009d-114X,91 $3.00+0.00 Copynllht ~' 1991 Pcrp...

464KB Sizes 2 Downloads 44 Views

Mech. ,Mack. Theory Vol. 26. No. 3, pp. 315--3"-2.. ~ 1991 Printed in Gr~at Britmn. All rishts rescr~d

009d-114X,91 $3.00+0.00 Copynllht ~' 1991 Pcrpmon Pr¢~ pie

DIE THEORETISCHEN GRUNDLAGEN ZUR BEHANDLUNG ALGEBRAISCHER SINGULARIT,g, TEN DER KINEMATISCHEN KOORDINATENUMKEHR IN DER ROBOTERTECHNIK JORGE ANGELES Department of Mechanical Engineering and Robotic Mechanical Systems Laboratory. MeGiII Research Centre for Intelligent Machines. McGill University. Montr6al. Qu6bec, Canada

(Eingegangen 16 April 1990)

Zmammenfasmng--Dcr Unterschied zwischen kinematischen und algcbraischen Singularititen bci d u Koordinatenumkehr in der Robotertechnik wird in diesem Bcricht dargelegt. Da di¢ ¢rst¢ Art in der Fachliteratur schon hinreichend diskutiert wurde, ist dieser Bcricht der zweiten Art gewidmet. Die th¢oretischen Grundlagen. die die Bchandlung algebraischer Singularit:iten erlaubcn, werden beschrieben und praktische Hinweise. die dies¢ Singularit/iten im allgemeinen zu ¢liminiercn erlaul0gn, werden angegebcn. Daf/ir werden zwei alternative Methoden vorgelegt: die einfacher¢ yon diescn wird zuerst diskutiert. Welter wird gezeigt, dad es cinch Fall gibt, in dem die algebraischen Singularit.:iten mit diescr Methode nicht eliminiert werden k6nnen. Diescr Fall wird aber voll identifiziert und ist in der Praxis schr unwahrschcinlich. Er kann Fdoch. wie bier gezcigt wird, mit Hilfe dcr zweiten Method¢, die auf den Euler-Parametcrn basiert, einfach bchandelt werden.

I.

EINLEITUNG

Dic Programmicrung computergesteucrtcr Manipulatoren, also lndustricrobotern, verlangt die sogcnannte kincmatischc Koordinatenumkehr, d.h. die Transformation yon kinematischen Gr61kn, die dic Position, also dic Oricntierung und Lage eines Punktes, des Endeffektors bcstimmcn, zu Gclenkvariablen, d.h. Winkeln bzw. Verschicbungen bci Drehgelenken bzw. Schubgelcnken. Es ist bckannt, dab diese Koordinatcnumkehr hoch nichtlinear ist [I]. Deswegen sind entwedcr mchrere odcr keinc L6sungen des Problems zu erwarten, was davon abh/ingt, ob die vorgegcbcnc Position innerhalb des Arbeitsraums des Manipulators liegt oder nicht. Weiterhin, sollten cin oder mehrere Paare yon L6sungen sich auf eine einzige L6sung reduzieren, dann liegt der Manipulator auf der Grcnze seines Arbeitsraums, wobei eine kinematische Singularitiit auftritt. Die numerische Behandlung kinematischer Singularitfiten ist ausffihrlich untersucht worden [2, 3], doch diese Art yon Singularitliten ist nicht die einzige, die in tier Robotertechnik zu erwarten ist. Wcrden die sogenannten linearen lnvarianten des Drehtensors [4] zur Darsteilung der Orientierung des Endcffektors eingef/ihrt, dann sind auch sogenannte algebraische Singularit/iten m6glich. Doch diese Singularit/iten k6nnen wie die kinematischen Singularit/iten mit Hilfe des in [3] eingef'dhrten Algorithmus behandelt werden, was allerdings eine sehr aufwendige Berechnung verlangt. Da die algebraischen Singularit.:iten sich yon den kinematischen Singularit:,iten wesentlich unterscheiden, kann man letztere mit Hilfe bestimmter Methoden bchandeln, die in diesem Bcricht eingef'fihrt werden und zu noch einfacheren Algorithmen f/ihren. 2. KINEMATISCHE BZW. ALGEBRAISCHEN SINGULARIT,~TE BE! DER KOORDINATENUMKEHR

Ein bclicbiger sechsachsiger Manipulator, Bild I, wird im Bericht beriicksichtigt. Dariiberhinaus k6nnen, obwohl Bild I eincn Manipulator nur mit Drehgelcnken illustriert, auch Manipulatoren mit einem, zwei oder drei Schubgelenken beriicksichtigt werden. Wit interessieren uns f'fir die Orienticrung des Endcffektors sowie fiir die Lage eines seiner Punkte P. Weiterhin unterscheiden wit zwischen den Sollwerten und den lstwerten der Variablcn, die Orientierung und Lage darstellcn. Die Orientierung bzw. die Lage wird mit Hilfe eincs Drehtensors bzw. eines Ortsvektors dargcstcllt. Also stcllcn P bzw. Q den lstwert bzw. den Sollwert des Drehtensors dar. 315

316

JORGE ANGELES @5 r,Z)

O1

16

Bild I. Sechsachsiger Manipulator.

In entsprechender Weise stellen p bzw. q den lstwert bzw. den Sollwert des Ortsvektors dar. Weiterhin werden die kartesischen Koordinaten des Endeffektors mit dem Vektor s, die Gelenkvariablen mit dem Vektor x dargestellt. Hierbei wird der Vektor s wie in [5] mit Hilfe der linearen Invarianten des Sollwerts Q des Drehtensors definiert, also

[" Vekt(Q) s = [~,[Sp(Q)-'l-

]

(I)

Dabci bczichcn sich dic crstcn drei Komponenten dieses Vektors auf den sogenannten Achsem,ektor odcr einfach dcn Vektor des vorgehendcn Drehtensors, also fi sin~, wobei fi bzw. dcr Sollwcrt des Einhcitsvcktors parallel zur Achsc der einbezogenen Drehung bzw. der Soliwert des Winkcls dic,~r Drchung ist. Dic sicbcn Komponcnten des s-Vektors werdcn freilich wegen der Manipulationsaufgabc, mit Bcriicksichtigung dcr Tatsachc, dab die Summc dcr Quadrate der erstcn vicr Komponcntcn davon glcich I scin muB, gcw'3hlt. Dariibcrhinaus stcllt man mit x, die ire Komponcntc des Vcktors x, also dic Gelcnkvariablc der itch Achse dar. Aus algorithmischen Griindcn wurden in [5] dic crstcn vier Komponentcn des s-Vektors mit einem Faktor 2 multipliziert, was hierbci nicht n6tig ist. Dcr 7-dimcnsionalc Istwertvektor, der dem s-Vektor entspricht, wird jetzt mit f bezeichnet. Da dicser Vektor eine Funktion dcr Gelenkvariablen ist, wird er explizit als eine solche Funktion ausgedr/ickt, d.h. als f = fix). Weiterhin I/isst sich dieser Vektor wie folgt unterteilen:

fix)--

~f~(x)~ l:,
(2)

Lp(x)J wobei fv -= Vekt(P),

f, -= ½[Sp(P) - 1].

(3a)

Stcllt u bzw. q~ den lstwcrt des Einheitsvektor parallel zur Drehachs¢ bzw. den lstwert des

Drehwinkels dar, so gelten die untengegebenen Beziehungen: f,.(x) ~- u sin0, f,(x) = cosO.

(3b)

Das kinematische Modeli des Manipulators 1/iBt sich jetzt wie folgt ausdriicken:

fix) = s.

(4)

Ziel der Koordinatenumkehr istes, die L6sung yon x aus GI. (4) fur einen vorgegebenen Wert yon s zu erzeugen. Zur Koordinatenumkehr wurde die Newton-Gaussche Methode in [5] eingefiihrt,

die die Jacobimatrix des Vektors f(x) verlangt. Es wurde schon in [5] gezeigt, dab diese Matrix als J dargestellt die folgende Gestalt hat: J -- H K

(5)

Kincanatische Koordinatenumkehrin der Robotertechnik

317

wobei H e i n e 7 x 6-Matrix und K eine 6 x 6-Matrix ist. Diese Matrizen sind wie foigt definiert [5]:

H =

-[Vckt(P)] T 0

o

.

K=

,

(6a)

t_l

wobei O die 3 x 3-Nullmatrix und 0 den 3-dimensionale Nullvektor darstellen. Auferdem ist M die untengegebene 3 × 3-Matrix: M = ½[ISp(P) - P].

(6b)

Wciterhin werden A, B und P erkl~irt. Es seien: e, der Einheitsvektor parallel zur iten Gelenkachse; r, der Vektor yore Punkt O, dcr iten Gelenkachse zum bestimmten Punkt P des Endeffektors. Abb. I; Q, der Drehtensor. der die Relativbewegung des iten Gelenks bezfiglich des (i + I) ten Gelenkes darstellt. AIIe vorgehenden Variablen sind Funktionen yon x. Daraus ergeben sich die folgenden Definitionen:

A = [el e , . . . e~]

(7a)

B = [el x rle: x r z . . . e 6 x r6]

(7b)

P = Q, Q.~""" Q , .

(7c)

Danach k6nnen jctzt dic zwci Artcn yon Singularit'~ten definiert werden. Die yon K sind als kincm.'tti.~hcn Singularit."itcn, dic yon H als algcbraischen Singularitiiten dcfinicrt. Dic Bcdcutung dcr erstercn wurdc ~hon in dcr Fachlitcratur voll diskutiert, doch wird sic hier noch welter erklfirt, um dic zwci Artcn ¢infachcr vcrgleichcn zu k6nnen. Die kinematische Singularit~it wird unter Bcrficksichtigung dcr Bczichung [3] Kit = t

(8)

crkl~rt, wob¢i t den 6-dimensionalcn Geschwindigkeitsvektor des Endeffektors darstellt. Dieser ist als

delinierto wobei ~ bzw. ~ die Winkelgesehwindigkeit des Endeffektors bzw. die Geschwindigkeit des P-Punktes des Endeffektors ist. Wi¢ wohi bckannt ist [3], entspricht eine Singularitit der Matrix K einer Verminderung des Freiheitsgrads des Endeffektors. Das heil3t, bci Singularitfiten yon K ¢xistieren gewiss¢ Werte des Vektors i , die nicht null sind und kein¢ Bewegung des Endeffektors er-zeugen k6nnen. Andererseits ist es klar, dab die Matrix H rangdefekt wird,t wenn und nur wenn die 4 x 3-Untermatrix L ebcnfalls rangdefekt wird, wobci

L=

C M ] _[Vekt(P)lT

,

(10)

Wie in [4] gezeigt wird, ist die Determinante dcr obcren 3 x 3-Untermatrix M yon L wie folgt

gegeben: Det(M) = ~[Sp"(P) - I].

(11)

Daher ist ¢s klar, dab die obcngenannte M-Matrix singuliir wird, wenn und nur wenn die Spur yon P einen Bctrag yon I erreicht. Da Sp (P) = I + 2 cos~, ist es klar, dab M singulfir wird, wenn und nur wenn ~ = +_hi2. n. Jetzt wird bcwiesen, dal3 die obcn definierte L-Matrix rangdefekt wird, ?Man kann nicht sagen,dab diese Matrix singul~irwird. weil sic nichl quadratisch ist.

318

JOaGEA,~GEL~

wenn, und nur wenn ¢~ = n. Dieses bedeutet, dab bei Werten yon ~ = __.n/2, die eincr Singulant~t der M-Matrix entsprechcn, L voilen Rang hat. Sat- ! [st ¢~ = +n/2, so ist M yon Rang 2, und [Vekt(P)] T bzw. Vekt(P) ist linear unabh/ingig yon den Zeilcn bzw. yon den Spalten yon M. Beweis. Bei cos~ -- + n / 2 wird M = ~(l - P).

(12)

Weiterhin wird bcwiesen, dab Vekt(P) im Kern von M liegt. Da Vekt(P) der Eigenvektor yon P beziiglich dem Eigenwert 4-1 ist. PVekt(P) = Vekt(P). Unter Beriicksichtigung yon GI. (12) wird deshalb MVekt(P) = 0. Das bedeutet, dab Vekt(P) im Ker(M) liegt. Danach hat die 4 x 3-Matrix L aus GI. (10) drei linear unabhfingige Zeilen. Das bedeutet, dab die vier Zeilen yon L einen dreidimensionalen Vektorraum spannen, d.h. L hat vollen Rang. Satz 2 1st ¢~ = n, so sind M und L yon Rang I. Also ist die L-Matrix rangdefekt. Beweis. Wenn ¢~ = n, dann ist P = - I + 2u®u, wie es in [4] bcwiesen wird, wobei das ®-Zeichen das Tensorprodukt der nebenliegenden Vektoren darstellt. Daraus folgt, dab M = -u®u.

Das bcdeutet, dab M in diescm Fall ein Rang-I-Tensor ist. Da Vekt(P) als u sin¢~ definiert wird, sind die drci Z¢ilen der M-Matrix in dicsem Fall linear abh/ingig yon Vekt (P). Deshalb ist dic L-Matrix vom Rang I. in den folgendcn Ab~hnitten wird diskutiert, wic und unter wclchcn Bedingungen die in Satz 2 vorgcsagte algcbraische Singularit/it bei der Koordinatenumkehr behandelt werden kann. 3. DIE BEHANDLUNG DER ALGEBRAISCHEN SINGULARIT.AT MIT HILFE EINER Z U S A T Z L I C H E N DREHBEWEGUNG Es ist jetzt klar, dab die algcbraische Singularit/it nur davon abhiingt, wie die Drehbewegung. die die P-Matrix darstellt, gemessen wird. Nimmt man die bekannte Hartenberg-Denavitsche (HD) Notation [6] an, so ist die Zi-Achse des ersten Koordinatensystems parallel zur Achse des ersten Gelenks des Manipulators. Sonst sind die .Y,- und Y,-Achsen unbestimmt. Dies bedeutet, dab sich das erste Koordinatensystem frei urn die Z,-Achse drehen kann ohne die HD-Notation zu verletzen. Man braucht jetzt nur den Wink¢l ~ dieser Drehung zu bestimmen, damit die resultierende Drehung einen Winkel hat, der sich so viel wie m6glich yon n unterscheidet. Es wird dann vorausgesetzt, dab die Drehung yore ersten zum letzten Koordinatensystem, also zum Koordinatensystem. das am Endeffektor angebracht gedacht wird, einern Winkel yon ~ entspricht. Dar~berhinaus mu0 dieser Winkel mit Hilfe einer Drehung um die Z,-Achse durch cinch Winkel modifiziert werden. Die letzte Drehung bestimmt also ein neues Koordinatensystem X,,, Fo. Zo = Z,, das yon nun an das nullte Koordinatensystem heil3en wird. Wie im vorgehenden Abschnitt. wird mit dem Einheitsvektor u die Richtung der Drehachse der Bewegung yore ersten zum ietzten Koordinatensystem dargestellt. Weiterhin seien -P'o, 5 , und .P" das nullte, das erste und das letzte Koordinatensystem. Dann stellt der Tensor Po bzw. P die Abbildung yon .~0 bzw. yon .~, nach .P dar. d.h., p0:.~¢'0....,~', p:5,-....>w.

(13a)

Aul3erdem wird die Abbiidung yon ,~0 zu . ~ mit dem R-Tensor dargest¢llt, d.h., R : -P'0-".F, •

(13b)

Kinematische Koordinatenumkehr in der Robotertechnik

3t9

Da P eine Drehung urn einen Winkel n darsteUt, hat P die Gestalt [4] P= -1 + 2u~u.

(14)

Wird die Drehung des R-Tensors mit Hilfe der Euler-Parametern dargestellt, so ist dieser Tensor R = (2ro-- I)i + 2(I -- ro)k® k + 2rox/l - r 0 1 x k,

(15a)

wobei roals cos({/2) definiert ist und der Einheitsvektor k parallel zur Z,-Achs¢ liegt. Unter ikrBcksichtigung der vorangegangenen Definitionen kann man unmittelbar die folgende Beziehung erhalten: Po = PR = - ( 2 r o -

1 ) 1 - 2(! - r o ) k ® k -

2ro~//I - r~l x k

+2(2ro-I)u®u+4(i-ro)u'ku®k+4ro,v/I-r~u®(uxk).

(15b)

Der Kosinus des ck'-Winkels, der sich auf den Tensor Po bezieht, kann jetzt mit Hilfe der Spur des vorangegangenen Produktes bestimmt werden, d.h., cos ~b" = ,~[Sp(PR) - I].

(16a)

Das fiihrt unmittelbar zu der Beziehung cos ~b' = - 2 ( u - k):r 0 + 2(u. k): - I,

(16b)

Da man einen ~b'-Winkel haben will, der den gr6fltm6glichen Abstand zu n aufweist, muB man versuchen, ~k' so klein wie m6glich zu machen. Dieses bcdeutet, dab die in GI. (16b) ausgedriickte Funktion m6glichst I werden sollte. Damit kann man die folgenden Schliisse ziehen: (i) Ist u- k = 0, so ist ~ unbestimmt, d.h. ist es unm6glich, mit einer Drehung um die Z , - A c h ~ den ~b-Winkel, dcr gleich n ist, zu ver/indern; (ii) 1st u. k ¢- 0, so muff man ~, = n definieren, um den Betrag des ~k'-Winkels so klein wic m6glich zu machen. In dcr Praxis muB man den Wert des ~k-Winkels iibcrpr/ifen, um zu wisscn, warm es notwendig ist, die entsprcchendc zus/itzliche R-Drehung einzufiihren. Um bcstimmte Grenzen dieses Wertes zu bcstimmen, soil ein rationelles Kriterium eingefiihrt werden, das im folgenden Abschnitt diskutiert wird.

4. DAS KRITERIUM

ZUR E I N F C H R U N G

DER Z U S J i T Z L I C H E N

DREHUNG

Diescs wird mit Hilfe der Konditionszahl [7, 8] ~(L) der L-Matrix abgeleitet. Damit wird diese Zahl als Verh~ltnis des gr6Bten zum kleinsten Singularwert der L-Matrix definiert, d.h., g(L) -= o~.

(17)

Es folgt daher, dab man zuerst die drei Singuliirwerte dieser Matrix bestimmen muB. Dieses wird aber unmittelbar bewerkstelligt, wenn man die entsprechenden Singul/irwerte als die Quadratwurzel der Eigenwert¢ der N-Matrix berechnet, wobei die N-Matrix ihrerseits als das Produkt LTL definiert wird. Weiterhin ist folgender Satz zu bcweisen: Sat: 3

Die Eigenwerte der obengenannten N-Matrix sind 2~ = 4, it, - it~ = 2(1 + coseb). Beweis. Zuerst wird N berechnet: N = [ISp(P) - Pr][ISp(P) - P] + 4Vekt(P)® Vekt(P).

(18)

Weiterhin sei v --- Vekt(P) - u sin~b. Dann wird Nv = [ISp(P) - Pr][ISp(P) - Ply + 4 v ® v • v.

(19)

Nach einigen algebraischen Manipulationen kann der obige Ausdruck vereinfacht werden: Nv = 4v,

(20)

JORGEANGELF~

3"~0

so daft der Vektor yon P ein Eigenvektor yon N ist, dessen Eigenwert 4 ist. Wegcn dcr Orthogonalitfit dcr drei Eigenvektoren yon N iiegen dann die restlichen zwei Eigenvcktoren in einer Ebene, die senkrecht zu v steht. Es sei r e i n beliebiger Vektor des dreidimensionalen Euklid~hen Raumes und s ein Vektor desselben Raumes, der senkrecht zu v ist, so gilt die Definition

s=(P-

I)r.

~21)

Weiterhin foigt Ns = [! + Sp'(P)] (P - l)r - Sp(P(P + pT)(p _ I)r + 4Vekt(P) ® Vekt(P)(P - l)r. wobei der letzte Term verschwindet, well Vekt(P) ein Eigenvektor yon P ist. Deswegen vereinfacht sich der letzte Ausdruck zu Ns = [I + Sp:(P)](P - Ijr - Sp(PJ(P: - P + I - pr)r.

(22a)

Wie in [4. S. 41] bewisen wurde, gilt die Beziehung p: _ pr _._ Sp(P)(P - I).

(22b)

Fiihrt man G1. (22b) in GI. (22a) ein, so wird der letzte Ausdruck fiir Ns vereinfacht zu Ns = [I + Sp(P)](P - I)r = 2( I + cos0 )(P - I)r = 2( I + cosek )s,

(23)

so dab die restlichen zwei Eigenwerte yon N gleich 2( I + cos ~b) sin& womit der Beweis erbracht ist. Von der vorherghenden Diskussion ist es klar, dab die Konditionszahl yon L aus -)

x:(L) = I + cos 4~'

(24)

bcrcchnet werden kann, so dab der Wert dieser Zahl von I bci ~b = 0 bis o~ bei ~b = rt Iiiuft. In dcr Praxis m6chte man dic Gr6ge dicser Zahl innerhalb gewissener Grezcn halten, z. B. untcr x~l, was cinc cntsprechcnde Bcgrezung yon ~b verlangt. Dicscs bcdeutct, dab cos ¢ / >

2-,~, - x~-- '

(25)

Um x.,, bestimmen zu k6nnen, braucht man nur zu beriicksichtigen, dab die Konditionszahl einer Matrix ein MaD der'Verstfirkung des Rundungsfehlers der L6sung eines aufdiese Matrix bezogenen algebraischen Gleichungssystems ist. Nennt man die Konditionszahi der K-Matrix die kmematische Komlitions'.ahi und die der H-Matrix die algebraische KonditionscahL so gleicht die Konditionszahl yon J ungef'3hr dem Produkt der zwei obengenannten Zahlen. Es folgt daher, dab es nbtig ist, fiir Begrenzung der Rundungsfehlerverstiirkung beim L6sen eines linearen Gleichungssystems mit J ais Matrizenkoeflizient die obengenannten Konditionszahlen zu begrenzen. Wenn keine kinematische Rundungsfehlerverstiirkung gr613er ais 1000 erlaubt werden kann, mu8 man die kinematische Konditionszahl mit I000 begrenzen. Weiterhin, wenn keine Vergr6Berung der kinematischen Konditionszahl wegen der algebraischen Konditionszahl gr613er als 100 zugelassen wird, so mud man letzte mit 100 begrenzen. Dies bedeutet, dab im schlimmsten Fall die ganze Rundungsfehlerverst.:irkung nicht gr613er als I00,000 ist. Um den entspreehenden O-Wert zu begrenzen, braueht man nut i,'~! = 100 in GI. (25) einzusetzen. Das fiihrt zu cos ~b/> - 0 . 9 9 8 oder 0~<176.4.

0 i> 183.6,

womit die gesuchte Begrenzung fiir 0 bestimmt ist. 5. D I E

E I N F ~ ' H R U N G DER E L ' L E R - P A R A N I E T E R N Z U R B E H A N D L U N G DER A L G E B R A I S C H E N S I N G U L A R I T , ~ . T E N

Die in den vorgehenden Absehnitten behandelte algebraische Singularitiit bei 0 = 180 ~ kann nieht angewandt werden, wenn die entsprechende Drehaehse senkrecht zur ersten Drehaehse des

Kinemausche Koordinatenumkehr in der Robotertechnik

321

Manipulators steht. In diesem Fall w:~re die im folgend©n diskutierte, alternative L6sung gfinstig. Diese L6sung basien auf den Euler-Parameter r0 und r. die schon in G1. (15a) eingef'fihrt wurden. In diesem Fall sind die Euler-Parameter

/°)

(°)

r0---cos ~ .

r=usin ~

.

(261

Die Beziehung zwischen den iinearen Invarianten und den Euler-Parametem kann besser erkl/irt werden, wenn man die Quadratwurzel des Drehtensors einffihrt. Zuerst mug man erkennen, dab die zwei Drehtensoren Q und Q= Drehbewegungen um dieselbe Achse darstellen, der erste mit dem Winkel 0. der zweite mit 20. Ahnlicherweise foigt, dab die zwei Drehtensoren Q und ,~ Q Drehbewegungen um dieselbe Achse darstellen, der erste mit dem Winkel 0, der zweite mit 0/2. Bestimmt ist die Quadratwurzel einer gewissen n x n-Matrix nicht eindeutig, weil fie 2" Quadratwurzeln annimmt. Deswegen entsprechen acht Quadratwurzeln dem unter Beriicksichtigung 3 × 3-Drehtensor. Jedoch nut vier yon diesen sind reelle Tensoren, die anderen abet komplexe. Dariiberhinaus stellen nur zwei der reeilen Wurzein Drehbewegungen bedeuten, nur einer eine Drehbewegung yon der Htilfte des Drehwinkeis des urspriinglichen Tensors dar. in Wirklichkeit brauchen die acht Quadratwurzeln des Drehtensors nicht berechnet zu werden, da die eindeutigc Wurzel, die uns interessiert, wie folgt ausgedriickt werden kann:

lctzt ist es klar, dab die Eulcr-Parametcr des urspriinglichen Orektensors als die Iinearen [nvariantcn der Quadratwurzcl dieses Tensors bcrechnet werdcn k6nnen, d.h., a[s r,, = ':[Spl~/r-(~)-

I1.

r = Vekt(,g/-QI.

(28)

Stcllt nlan die Drchbcwcgung mit Hilfc dcr Eulcr-Paramctern dar, was dcr Vermeidung der algebrai.~hen Singularitfit dient, so :'indcrt sich der in GI. {I) gezeichncte 7-dimensionale Vektor:

F vck,( ) ]

s" : [~[Sp(,~qQ)- 11"

(29)

~,hnlichcrweisc :'indern sick die in GI. (4) dargestellten Beziehungen zu f'-usin

(+)

~ , f;=cos

(°)

~ .

(301

Damit tindert sick die Jacobimatrix J wegen der entsprechenden Anderung yon H, die jetzt als J' bzw. als H' dargesteUt wird. Um die Gestalt dieser Matrizen abzuleiten, mug man zuerst die Euler-Parametern nach einer beliebigen Achsenkoordinate x, ableiten. Mit Hilfe der Tensorrechnung erhtilt man ~ x/__PP ~x, = 1 × e,.x/-P

(31)

und weiterhin

:

<-<,l"

Nach den in Gin. (3l) u. (32) gezeigtcn Ergebnisse kann man jetzt die t'olgenden Beziehungen aufsteUen g Vekt{,J~) = = Vekt(! x e,. x/FP}. CX'~

CSp(~{'PI

= Sp(l x e,.v/P).

(33a)

(33b)

JORGE,~NGEUES

322

U m einfachere Ausdriickc der vorgehendcn Abicitungcn zu erhalten, f'dhrt m a n jetzt die in [4] gcprOftcn Ergebnisse ein: Sind S bzw. T ein antisymmetrischer bzw. ein beliebigcr 3 × 3-Tensor. so gelten Vekt(ST) = ~[Sp(T)I - T]Vekt(S)

(34a)

Sp(ST) = - 2[Vek t(T)] r v e k t(S).

(34b)

Jetzt kann m a n mit Beriicksichtigung yon Gin. (34a) u. (34b) die in Gin. (33a) u. (33b) gezeigten Ausdrficke wie folgt vereinfachen: ~Vekt(x/-P ) d.r, = ~[Sp(w/-P)l - ~/-P]e,

(35a)

Sp(~/-P) = _ [Vekt(P,,/~)lre," c~x,

(35b)

Nun I/isst sich die neue Jacobimatrix J" wie folgt ausdriicken: J' = H'K.

(36a)

wobei H'--

IL

O ' OI ' 1

L'=L

(36b)

J

und O ' dic 4 x 3 - N u l l m a t r i x darstcllt. D a m i t w i r d dic algcbraischc S i n g u l a r i t i i t bci 4) = 180' vcrmicdcn. Tats/ichlich w i r d dic obcngcgcbcnc U - M a t r i x bci b = ~ zu L'=[~(l-u®u+lX_u r

u) I .

bci

*=n.

Z u m Bcwcisen, dab L' yon vollcm Rang ist, b r a u c h t man wic bci dcr P r i i f u n g y o n Sat;" I n u r zu zeigcn, dab ihrc viertc Zcilc im K e r n i h r c r obcren U n t e r m a t r i x licgt. Dies folgt u n m i t t e l b a r aus dcm vorangegangcncn A u s d r u c k yon L" bci 4) = ~ und b r a u c h t nicht welter d i s k u t i c r t zu wcrdcn.

LITERATUR I. L. W. Tsai und A. P. Morgan, ASMEJI Mech. Transm. Automn Des. 107 (2), 189-200 (1985). 2. Y. Nakamura und H. Hanafusa, Trans. ASME JI Dynamic System Me~'ur. Control lOg (3), 163-171 (1986). 3. J. Angel~z, K. Anderson, X. Cyril und B. Chen, ASME J/Dynamic Systems Mea~ur. Control i IO (3). 246- 254 (1988). 4. J. Angeles, Rational Kinematics Springer, Ncw York (1988). 5. J. Angeles, Int. J. Robot. Res. 4 (2) 21-37 (1985). 6. R. S. Hartcnberg und J. Denavit, Kinematic Synthesis of Linkages. McGraw-Hill, New York (1964). 7. G. H. Golub und C. Van Loan, Matrix Computations. Johns Hopkins, Baltimore. 8. K. G. Finck yon Finckcnstcin, Einfiihrung in die Numerische Mathematik, Bd. 1. CarI-Hanscr, Miinchen-Wein (1977).

THEORETICAL BACKGROUND K I N E M A T I C S IN T H E P R E S E N C E

OF THE ROBOTICS INVERSE OF ALGEBRAIC SINGULARITIES

Al~llr~t--Discussed in this pal~r is the difference between kinematic and algebraic singularitics in the realm of robotics invcr~ kincmalics. Since singularities of th¢ first kind have been discu~xl extensively in the sp¢cialized literature, this pal~r focus¢~ on those of lh¢ second kind. Presented in the paper arc th© thcorclical foundations pcrlaining to algebraic singulariti~, along with practical guidelines for their elimination. Two methods are pr¢~ntcd to cop¢ with algebraic singularities in this paper. The simpler of these is imroduccd first. It is shown that a case exists in which the~ singularities cannot be eliminated using this method. This case is fully identified and shown to be very unlikely in practice. Neverlhcless. it can be handled with the introduction of Euler parameters, as lull)' discus.~'d in this pal~r.