5
u öu u ü u u z u u u z u w u v u ß u u u u u fiu w y u u u u w u v u u u u u v ü ü öß u ü z v w u ä u z ü äu u u w u u zw u v u w u ü w u u u u u u zw u x x z y ä z ö x ä u zw Ä u u x xz zw ö x x x x x u äß u x zu u u zu x w u ü w v u v x äß öu u x ü u u ü x z x u x u u u u x ü ä öu ö u z w öu u w u v x x ß v x zu x x w u z öu u äß u w u v x x u x w u x ü v v u ö u z x w u ä ä öu u Ä Ä u u x y w u u

Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

TECHNISCHE MECHANIK 6(1985)Heft4

Manuskripteingang: 30. 3. 1984

Die Lösung der Umkehrauigabe für Industrieroboter mit

kinematischer Redundanz

Pham Anh Tuan, Klaus Zimmermann

l. Einleitung

Der Einsatz und die Entwicklung von Industrierobo-

tern (IR) beeinflußt gegenwärtig im entscheidendem

Maße die Automatisierung der Produktion. Bei der Er—

forschung neuer Roboterkonfigurationen wird neben

bisher bekannten IR-Typen (DSS-, DDD-Struktur u. a.)

auch die Anwendung von redundanten Strukturen un-

tersucht. Sie verfügen über den mechanischen Freiheits-

grad größer 6 und sind für eine Vielzahl von Anwen-

dungsfällen besonders gut geeignet. (z. B. für Arbeiten

in Räumen mit Hindernissen) [3],

Zur Realisierung einer schnellen Bewegung durch den

Roboter muß eine Koordinatentransformation zwi-

schen kartesischen Koordinaten und Roboterkoordina-

ten (verallgemeinerte Koordinaten) durch einen Pro-

zeßrechner in etwa 20 bis 40 mSec ausgeführt werden.

In diesem Zusammenhang lassen sich 2 Grundaufgaben

formulieren:

a) Die direkte Aufgabe

Der Zusammenhang zwischen Roboterkoordinaten

und Lageparametern hat die Form ([2

xs=fs(q) (s=l,2,...,6) (1.1)

q = (ql, q2, . . . , q“) — Roboterkoordinaten

n — Freiheitsgrad des Roboters

x5, s = 1,2, 3 z. B. Zylinder- oder sphärische

Koordinaten

s = 4, 5, 6 z. B. EULER — oder CARDAN

Winkel '

ö f3Mit Hilfe der Jacohi-Matrix (

a a) erhält man einen line-

q

aren Zusammenhang zwischen den Änderungen der Ro-

boterkoordinaten und den Parametern x9.

AxszmtAqa bzw,

öq"

Ax=J(q)'Aq (1-2) (1-2)

mitAx=(Ax1,Ax2,...Ax6)T,Aq=(Aq1,Aq2,...,Aq

_.afs „L5

J(q) (aqa) 3: Ln

Nach Gleichung (1.2) läßt sich jedem Aq genau ein

A x zuordnen („direkte Aufgabe”).

n\T

l

b) Die Umkehraufgabe

Wenn zu jedem gegebenen A x ein Vektor A q derart be—

stimmt werden soll, da5 die Gleichung (1.2) erfüllt wird,

so spricht man von der Umkehraufgabe der Kinematik.

Mit Hilfe der inversen Jacobi-Matrix J—l läßt sich die

Lösung der Umkehraufgabe in der Form

Aq=J-1<q>-Ax (1.3)

darstellen. Für Roboterkonfigurationen sind aber die Be-

dingungen für die Existenz der Matrix J—l i. a. nicht er-

fiillt [9]. Zum Beispiel ist die Jacobi-Matrix fiir redun-

dante Strukturen nicht quadratisch (dim q =# dim x). Für

derartige Fälle sollen in dieser Arbeit Lösungsmöglich-

keiten der Umkehraufgabe gezeigt werden.

2. Die Lösung der Umkehraufgabe

2.1. Die Anwendung der generalisierten inversen Matrix

Die Matrix G heißt generalisierte inverse Matrix zur Ma-

trix] (mxn), wenn die Gleichung

J GJ zJ (2-1)

gilt Die Lösung der Umkehraufgabe läßt sich unter

Verwendung der generalisierten Inversen G in der Form

A q = G ' A x (2.2)

schreiben. Annahme: Es existiere eine Zerlegung der Ma-

trix J = U1 l J2 ], wobei J 1 eine quadratische, nichtsin-

guläre Matrix ist. Für diesen Fall berechnet sich die ge-

neralisierte Inverse G1 nach der Formel:

—1G1 =

gen von J entsprechend der genannten Forderung, so

lassen sich die Vektoren

l 0]T. Bildet man alle möglichen Zerlegune

Aqszk'Ax

berechnen.

Mit jeweils n—m+l linear unabhängigen Vektoren A qk

(k = 1, 2, . . . , n—m+ 1) erhält man die Lösung der Um-

kehraufgabe in der Form ([4], [10]):

A n +1 Ä A E +1 Ä 1 2 3= ' , mit = .q k=l k qk k:1 k ( )

Beispiel:

DDD—Roboterstruktur in der (x, y) Ebene (Bild 1)

Die Zwangsbedingungen (1.1) lauten

41

Page 2: Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

xc : L1 cos ql _ L2 cos (q1 + q2) + L3 cos (q1 + q2 + q3) J 3 :“—0,12639 0,21443“ Je—l3 z —l,61306 1,23069“

q

— ' - . 0,64689 0,28105 3 712

Ye ' Ll m91 — L2 31" (q1 + q2) + L3 am (ql + q2 + q3)‚ 76 0,7254

2. Schritt:

y qu’ Gq2’ Gq3

3““ 0 0 _0,05774 1.53458

Gq1= i _0,13783 3,6632sll‘6q2: 0 0

10,30277 —7,8606 9,93398 1,94091

—1,61306 1,23069

Gq3= 3.71276 0,7254

3. Schritt: A qk 0 0

x q; 0 q; 0,007384

Aql = q: : 0,017627 Aq2 2 q: z 0

Die Jacobi-Matrix hat die Form: ‘1? 0,0122 11 q: 0,059374

[_L1 sinq1+L2sin01—L3 sinQ2 ]EL2 sian—L3sian l—L2sinQ2

l = 1 l 1u 1 —0.0 2

lLl cosql — L2 cosQl + L3 cosQ2 l —L2cosQ1+L3 cosQ2{ L3cosQ2 q3 0191

7 2

(2.4) Aq3 — q3 — 0.022191

3 0mit: ql +q2=Q1 und q1+q2+q3=Q2 q3

ES 381 gegeben: Für k = 1,2 und Äl = Äz = 0,5 erhält man nach (2.3)

L1 = 0,5 m qlü‘) = 0,75 rad

2 l

L2 ‘ 0’3 m qm) = 2 "d ql 0.003692a

L3: 0,1 111 q?” = 2rad

l A q = q2 = 0.008813 (2.6)

A x = 0,005 m ‘

gesucht:

2.2. Die Anwendung der Pseudoinversen Matrix

Aql (tin), A92 (ti+1)‚ Aq3(ti+1) i Mit der Pseudoinversen Matrix J+ hat die Lösung der

Umkehraufgabe die Form [6], [8] ~

Jacobi-Matrix:

Aq=J+-Ax+<I—J*J>y (2.7)

u —0,l2639 0,21443 0,09993(2 5) +

: - I — Einheitsmatrix, J — Pseudoinv. Matrix zu J,

0’64689 028105 0100376 y _ beliebiger Vektor, (dim y = dim A q)

1- SChI'itt Für die Berechnung von A q nach (2.7) muß J+ bekannt

. _1 _1 _1 sein. Auf Grund des in der Formel willkürlich zu wählen-

Dle BereChnung von] (11’ J (12’ J 93 den Vektors y kann A q nicht eindeutig berechnet wer-

den. Um eine bestimmte (ausgezeichnete) Lösung zu fin-

J = 0,21443 0,09993 —1 = _0113783 3,66325 den, werden alle gefundenen Lösungsvektoren A q auf

Ell 028105 0,00376 <12 10730277 _7,86061 die Erfüllung eines Kriteriums hin untersucht.

2.2.1. Die Methoden von Konstantinov [8]

In [8] wird gezeigt, daß mögliche Lösungen der Umkehr-J2_ “—0,12639 0,09993“ _l _u—0,05774 1,53458”

_ 2

aufgabe die Beschränkungen0,64689 0,00576 q ' 9,93398 1,94091

4-2

Page 3: Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

AqmingAquqmax

A qmin: = qmin " (10i), A qmax = qmax — q(ti)v

q(ti) — Momentanwert

"erfüllen müssen. qmm und qmax sind Werte, die von der

Roboterstruktur abhängen (Minimum und Maximum der

Roboterkoordinaten). Nach Konstantinov soll die ausge-

zeichnete Lösung A q das Kriterium

H AE—QAq II->Min (2.8)

, Ag: : Aqmax + AC1min

2

erfüllen. Die Matrix Q heißt Wichtungsmatrix und gestat-

tet die Roboterkoordinaten hinsichtlich ihrer Änderun-

gen unterschiedlich zu bewerten. In [5] wird gezeigt, daß

diese nach (2.8) bestimmte ausgezeichnete Lösung A q

die kleinstmögliche Norm

‚Q: =diag(oz1‚a2, . . . ,am)

m u

IIAq II2 = _21 (A1192

l:

besitzt. Die Anwendung des Kriteriums (2.8) sichert die

Erfüllung der Positionieraufg’abe mit minimalem Energie-

aufwand. Aus (2.7) und (2.8) folgt

rAnin II Aff—QAq || = min IIAE—QU+AX+(I‘J+J)Y H

q y

= min II Afi'üQ-fo—Qa—Jlbyl'

Y

(2.9)

Substitution: A q~— Q ' J+ ' A x = A a

Q (I — 1+1) = Q

Dann gilt

min n A§_QAqu=min IIAq—_6y 1| (2.10)

Aq y

Das Funktional (2.10) wird minimiert durch den Wert

[5]

y. =ö+ - Ar +(I—Q*Q>v (2-11)

v — beliebiger Vektor

Aus (2.7) (2.11) erhält man

Aq = J+ Ax + (I—J+J) [6M3 +(I—ö+ 6) v]

und da (I — J+ J) eine Projektionsmatrix ist“

Aq =1+ Ax+Q

Aq=J+Ax+6+Aq+(I—6+6)v (2.12)

1) Projektionsmatrix P: P - x = x, W = P

Sonderfälle:

1. v = 0, Q = I

Aq = J+Ax + (I — J+J) (Ag—1+ Ax) (2.13)

da (I —— 1+ J) eine Projektionsmatrix istl)

2. v=0 Q¢1

Aq=J+Ax +[Q(I—J+J)]+(AE~QJ+AX) (2.14)

3. v¢0

Um auch für diesen Fall mit beliebigen v-Vektor eine

ausgezeichnete Lösung zu finden, benötigt man noch

weitere Kriterien. [8]

2.2.2. Die Methode von Coiffet [4]

In [4] wird von Coiffet folgendes Kriterium betrachtet,

um eine definierte Lösung der Umkehraufgabe zu be-

stimmen:

‘I’(q) =

Damit ergibt sich als Lösung von (1.3)

Aq 21+ Ax + (I -J*J> - grad <I><q> (2.15)

3. Berechnungsmethoden von Pseudoinversen

Matrizen

Die in den vorangegangenen Abschnitten formulierten

Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen

zu ihrer Anwendung die Kenntnis der Pseudoinversen

Matrix J+ voraus. Im folgenden sollen deshalb einige Me-

thoden zur Berechnung von Pseudoinversen vorgestellt

werden. Zwei Ziele stehen dabei im Vordergrund:

a) Schnelle Berechnung von J+ mit „rechnerfreundli-

Chen” Operationen

b) Eignung der Berechnungsmethode fiir viele Matrizen-

typen

3.1. Einfache Berechnung

Gegeben sei eine Matrix H der Dimension n x m.

a) 11“ = H—l, . (3.1)

falls H eine quadratische, nichtsinguläre Matrix ist.

b) H+ = HT (HHT)-1‚ ' (3.2)

falls n Zeilen linear unabhängig sind, d. h.

det (HHT) 0

c) H+ = (H+ = (HT H)—1 HT, (3.3)

falls m Spalten linear unabhäan sind, d. h.

det (HT H) 0

43

Page 4: Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

Beispiel:

Für die im Bild 1 gezeigte Struktur und den im Ab-

schnitt 2.1. gegebenen Werten soll die Umkehraufgabe

mit (2.13) und (3.2) gelöst werden. Dazu wurde ein PL-l

Programm entwickelt, daß nach Eingabe der JACOBI-

Matrix den Lösungsvektor A q berechnet.

JACOBI _ MATRIX

J(l,l)= —Ll - SIN(Q(1))+L2- SIN(Ql)—L3‘ SIN(Q2)

J(1,2) = L2 - SIN(Ql)—L3 - SIN(Q2)

J(1,3) = _L3 - SIN(Q2)

J(2,1) = Ll - COS(Q(1))— L2 - COS(Q 1)+L3 - c03(02)

J(2,2) z —L2' COS(Ql)+L3 - COS(Q2)

J(2,3)= L3-COS(Q2)

PSEUDOINVERSE MATRIX '

—1,392484 1,241230

3,186234 0,700230

1,408846 0,067374

DELTA VE‘KTOR

—0,000756

+o,o19432

+0,007331

Eine Abschätzung der Genauigkeit der gefundenen Lö-

sung ist durch das Einsetzen der (q + A q) in die

„Direkte Aufgabe” möglich.

Folgende Fehler (absolut) wurden ermittelt

5x = +4,5- 10-5, 3y = 5,5 - 10—5

Die Bedingung für die lineare Unabhängigkeit der Zeilen

oder Spalten ist nicht immer erfüllt. Für diese Fälle sol:

len zur Berechnung von H+ weitere Methoden vorgestellt

werden.

3.2. Die Methode der Matrixzerlegung

Es ist möglich, eine Matrix in das Produkt zweier Matri-

zen mit jeweils linear unabhängigen Zeilen und Spalten

zu zerlegen [5].

H=C-B (3.4)

C — Matrix mit lin. unabh. Spalten, B — Matrix mit lin.

unabh. Zeilen

Es gilt

H+ z B+ - c” (3.5)

mit B+ nach (3.2) und C+ nach (3.3).

Beispiel:

1 0 1 1 detHHT=detHTH=0

H = 0 +14 0 (3.6)

1 1 0 1

1 0

C: o 1 13:"1 0 1 I“0 1 —1 0

1 1

C+ nach (3.3) B+ nach (3.2)

2 1 1

3—5 5 2 1

(3+: l B+:l 1 3

1 2 1 5 1’2

‘3' 3 37 2 1

0 0 3 (3.7)

—1 5 4

H+=B+C+=é 4-5 —1

3 0 3

3.3. Die Gramm-Schmidt—Methode [5]

Es sei H eine Matrix mit der Dimension n x m, fiir den

Rang k gelte: k = min (n, m). Diese Matrix kann in der

Form geschrieben werden

H-P=(R IS) (3.8)

wobei P eine permutierte Matrix ist (eine aus Nullen und

Einsen bestehende Matrix derart, daß jede Zeile und

Spalte genau eine Eins beinhaltet).

R : eine Matrix n x k, mit linear unabhängigen Spalten

S : eine Matrix, deren Spalten die Linearkombinatio-

nen der Spalten der Matrix R sind.

Für eine beliebige Matrix U kann man schreiben

S=R-U (3-9)

Daraus resultiert fiir die Pseudoinverse Matrix die Form

[5]:

H+ = P(I| U)T (1+ UUT)-l 3* (3.10)

Diese Gleichung ist der Ausgangspunkt für das Rechen-

verfahren, das auf der Methode von Gramm-Schmidt ba-

siert. Die Methode von Gramm-Schmidt wird für die Be-

rechnung von P, R+, U und (I + UUT)‘l verwendet.

Für Beispiel (3.6) wurde H+ mit der Gramm-Schmidt-

Methode berechnet (Ergebnis vgl. 3.7).

Es gibt noch weitere Methoden zur Berechnung der

Pseudoinversen Matrix. So wird in [5] auf die Elimina-

tionsmethode von Gauß, Jordan, die Methode der Gra-

dientenprojcktion und die Methode von Cayley-Hamil-

ton verwiesen.

4. Zusammenfassung

In der Arbeit wurden Lösungsmöglichkeiten fiir die Um-

kehraufgabe bei Industrierobotern mit kinematischer Re-

dundanz vorgestellt. Schwerpunkt der Ausführungen

sollte die Erläuterung der praktischen Anwendbarkeit

Page 5: Aq=J-1 -Ax (1.3) · Lösungsvorschriften (2.12) —— (2.14) und (2.15) setzen zu ihrer Anwendung die Kenntnis der Pseudoinversen Matrix J+ voraus. Imfolgenden sollen deshalbeinige

der Methoden und weniger ihre aufgründigen theoreti-

schen Erläuterung sein. Dazu wurde auf ausführlicher

Darstellungen in entsprechenden Arbeiten hingewiesen.

Die Mehrzahl der genannten Methoden wurden auf dem

Rechner ES 1040 getestet. Die Einbeziehung weiterer

Programmsysteme (z. B. formal-analyt. Berechnung der

JACOBI—Matrix mit dem System JACOMA [2]) ist vor-

gesehen.

LITERATUR

[1]

[2]

[a]

[4]

[5]

Schmieder, 1.: Problem der Koordinatentransformation

bei rechnergesteuerten Manipulatorcn. ZAMM 60, 1980,

S. 48 — 50.

Denk, W., Maißer, P., Rothe, H.: Bahnsteuerung von Ma-

nipulatoren. Technische Mechanik 2 (1981 ), S. l — l6.

Tuan, P. A.: Großer Beleg, TH llmenau 1983.

Coiffet, Philippe: Modelling and Control-Robot-Technolo-

gy. Vol. 1, Kogan Page, London, 1982.

Albert, A.: Regression and the MoorePenmse Pseudoin-

verse, Acad. Press, New York-London, 1972.

[6]

[7]

[8]

[9]

[10]

Penrose, R.: A generalized inverse for matrices. Proc.

Cambridge Philos. Soc., 51 (1955), 406 —- 413.

Penrose. R.: On best approximate solution of linear

matrix equations. Proc. Cambridge Philos. Soc., 52

(1956), l7 — l9.

Konstantinov, M. S. et al.: Kinematic control of redun-

dant Manipulators. ll. ISIR, Tokyo 1981, pp. 561 — 568.

Gorla, 8.: Influence of the control on the strukture of a

manipulator from a kinematic point of view. Preprints

RoManSy, Warszawa, 1981 pp. 56 — 66.

Foumier, 'A.; Khalil, W.: Coordination and Reconfigura-

tion of Mechanical Redundant Systems. Proc. Int. Conf.

Cybem. Soc., pp 227 — 231, Washington D. C., 1977.

Anschrift der Verfasser:

Dipl-Ing. Pham Anh Tuan

Dr. K. Zimmermann

TH Ilmenau, Sektion Gerätetecth

63 Ilmenau

PSF 327