8
Archiv fflr Elektrotechnik 64 (f 981) 237 -- 244 Archiv fiir Elektrotechnik G Springe>Verlag 1981 Beitrag zur elektronischen Steuerung von Robotern Teil I : Kinematik und Programmierung von Gelenkrobotern L. Hannakam und G. Duelen, Berlin l~bersicht: Aufgestellt wird ein Echtzeitprogramm fflr einen Gelenkroboter mit sechs Freiheitsgraden, der bei Verwendung von Sensoren ein Werkzeug entlang einer vorgegebenen Bahn- kurve auf einer Werkstflckoberfl/iche zu fflhren hat. Die vorausgehende kinematische 13etrachtung erfolgt koordinaten- frei mit Hilfe der Vektorrechnung, die ]3etrachtung und Ergeb- nisse wesentlich vereinfacht. Universaldiagramme charakteri- stischer kinematischer Kenngr6gen werden angegeben. Die Bestimmung der Eingabewerte, ngmlich der nachzufahrenden Bahnkurve und des maBgebenden Normalenvektors, wird an dem Beispiel des AnschweiBens eines zylindrischen Rohres an einen Beh/ilter gekriirnmter Oberfl~tche gezeigt. Contribution to the Electronic Regulation of Robots Part I: Kinematics and Programming of Robots with Pivotal Elements Contents: A real time prograrnme is set up to manipulate a pivotal robot having six degrees of freedom and guiding, using sensors, a tool-piece along a prederrnined path on the surface of a work-piece. The kinematical study in preamble is performed veetorially independent of any coordinate-systems, leading essentially to simplified treatment and results. Uni- versal graphs for characteristic kinematical quantities are thereby produced. The determination of input-values viz. the path to be followed and the significant normal vector, is illustrated in the case of welding a cylindrical pipe on to the curved surface of a container. 1 Vorwort Das aktuelle Thema elektronischer Steuerung mecha- nischer Handhabungsger~ite wird hier mit dem Ziel behandelt, dem Ingenieur der Elektrotechnik die kinematischen Grundlagen von Robotern zu ver- mitteln, die er fiir den Entwurf der Steuerung ben/5- tigt. Veranlassung dazu waren Abhandlungen in anstgndischen Zeitsehriften der Elektrotechnik, die sich konventioneller Transformationen der Mechanik bedienen. In dem vorliegenden Beitrag wird die gesamte Bestimmung der Steuergr6t3en in koordi- natenfreier Form mit Hilfe der Vektorrechnung vor- genommen, die dem Elektrotechniker vertrauter ist und sonst nur schwer erkennbare Rechenverein- fachungen in dem aufzustellenden Echtzeitprogramm ermASglicht. Dieses wird mit dem volIstandigen For- melplan ffir die Programmierung des Gelenkroboters mit sechs Freiheitsgraden angegeben. 2 Problemstellung Der betrachtete Gelenkroboter weist gem~tl3 Bild t die strichpunktiert eingezeichnete Gestellachse auf, um die der Gestellarm OA = a mit dem Winkel ~0 drehbar gelagert ist und mit der er den Winkel einschlieBt. An den Gestellarm schlieBt sieh der Arbeitsarm A P = b ~ a an, der mit der Gestellachse den Winkel/~ ~ ~ bildet. Das Gelenk A ist als Dreh- gelenk ausgefiihrt, so dab Gestellachse, Gestellarm und Arbeitsarm in einer Ebene liegen. Das Kugel- gelenk P tr~igt den Halter PH = h, der mit der Achse des Arbeitsarmes den Winkel ~ einschliegt nnd um diese mit dem Winkel 90 drehbar ist. Der Halter ist weiterhin um seine Achse mit dem Winkel y drehbar und start mit dem Werkzeug HQ = w verbunden E51. Die Aufgabe des beschriebenen Gelenkroboters besteht darin, mit dem Werkzeugende Q gem/iB Bild 2 eine vorgegebene Bahnkurve CD auf der Werkstiick- oberfl~tehe F mit konstanter Geschwindigkeit v zu befahren. Die Bahnkurve wird in Parameterdar- stellung durch den Ortsvektor q---q(z) wit dem 0003-9039/8t/0064/0237/$ t.60

Beitrag zur elektronischen Steuerung von Robotern

Embed Size (px)

Citation preview

Page 1: Beitrag zur elektronischen Steuerung von Robotern

Archiv fflr Elektrotechnik 64 (f 981) 237 -- 244 A r c h i v f i i r E l e k t r o t e c h n i k

G Springe>Verlag 1981

B e i t r a g z u r e l e k t r o n i s c h e n S t e u e r u n g v o n R o b o t e r n

T e i l I : K i n e m a t i k u n d P r o g r a m m i e r u n g v o n G e l e n k r o b o t e r n

L. H a n n a k a m und G. Duelen, Ber l in

l~bersicht: Aufgestellt wird ein Echtzeitprogramm fflr einen Gelenkroboter mit sechs Freiheitsgraden, der bei Verwendung von Sensoren ein Werkzeug entlang einer vorgegebenen Bahn- kurve auf einer Werkstflckoberfl/iche zu fflhren hat. Die vorausgehende kinematische 13etrachtung erfolgt koordinaten- frei mit Hilfe der Vektorrechnung, die ]3etrachtung und Ergeb- nisse wesentlich vereinfacht. Universaldiagramme charakteri- stischer kinematischer Kenngr6gen werden angegeben. Die Bestimmung der Eingabewerte, ngmlich der nachzufahrenden Bahnkurve und des maBgebenden Normalenvektors, wird an dem Beispiel des AnschweiBens eines zylindrischen Rohres an einen Beh/ilter gekriirnmter Oberfl~tche gezeigt.

Contribution to the Electronic Regulation of Robots

Part I: Kinematics and P r o g r a m m i n g of Robots with Pivotal Elements

Contents: A real time prograrnme is set up to manipulate a pivotal robot having six degrees of freedom and guiding, using sensors, a tool-piece along a prederrnined path on the surface of a work-piece. The kinematical study in preamble is performed veetorially independent of any coordinate-systems, leading essentially to simplified treatment and results. Uni- versal graphs for characteristic kinematical quantities are thereby produced. The determination of input-values viz. the path to be followed and the significant normal vector, is illustrated in the case of welding a cylindrical pipe on to the curved surface of a container.

1 V o r w o r t

Das ak tue l l e T h e m a e lek t ron i scher S teue rung mecha- n ischer Handhabungsger~ i t e wird hier mi t d e m Ziel behande l t , dem Ingen ieu r der E l e k t r o t e c h n i k die k i n e m a t i s c h e n Grund lagen von R o b o t e r n zu ver - mi t t e ln , die er fiir den E n t w u r f der S t eue rung ben/5- t igt . Veran lassung dazu waren A b h a n d l u n g e n in ans tgndischen Ze i t sehr i f t en der E l ek t ro t echn ik , die

sich konven t ione l l e r T r a n s f o r m a t i o n e n der Mechanik bedienen. In d e m vor l i egenden B e i t r a g wi rd die gesamte B e s t i m m u n g der Steuergr6t3en in koord i - na tenf re ie r F o r m mi t Hilfe der V e k t o r r e c h n u n g vor- genommen , die dem E l e k t r o t e c h n i k e r v e r t r a u t e r is t und sonst nur schwer e rkennba re Rechenvere in - f achungen in dem aufzus te l l enden E c h t z e i t p r o g r a m m ermASglicht. Dieses wi rd mi t d e m vol Is tandigen F o r - me lp l an ffir die P r o g r a m m i e r u n g des Ge lenkrobo te r s mi t sechs F r e i h e i t s g r a d e n angegeben.

2 P r o b l e m s t e l l u n g

Der b e t r a c h t e t e Ge lenkrobo te r weis t gem~tl3 Bi ld t die s t r i c h p u n k t i e r t e ingeze ichnete Ges te l lachse auf,

u m die der Ges te l l a rm O A = a m i t dem W i n k e l ~0 d r e h b a r ge lager t is t und mi t der er den W i n k e l einschlieBt. An den Ges te l la rm schlieBt sieh der

A r b e i t s a r m A P = b ~ a an, der mi t der Ges te l lachse den Winke l /~ ~ ~ bi ldet . Das Gelenk A is t als Dreh- ge lenk ausgef i ihr t , so dab Geste l lachse , Ges te l l a rm u n d A r b e i t s a r m in einer E b e n e liegen. Das Kuge l -

gelenk P tr~igt den H a l t e r P H = h, der mi t der Achse des A r b e i t s a r m e s den W i n k e l ~ e inschl ieg t nnd um diese mi t dem W i n k e l 90 d r e hba r ist. Der H a l t e r is t we i te rh in u m seine Achse mi t dem W i n k e l y d r e h b a r

und s t a r t mi t d e m W e r k z e u g HQ = w v e r b u n d e n E51. Die Aufgabe des beschr iebenen Ge lenk robo te r s

be s t e h t dar in , mi t dem W e r k z e u g e n d e Q gem/iB Bi ld 2

eine vorgegebene B a h n k u r v e C D auf der Werks t i i ck - oberfl~tehe F mi t k o n s t a n t e r Geschwind igke i t v zu befahren . Die B a h n k u r v e wi rd in P a r a m e t e r d a r - s te l lung durch den O r t sve k to r q - - - q ( z ) w i t d e m

0 0 0 3 - 9 0 3 9 / 8 t / 0 0 6 4 / 0 2 3 7 / $ t .60

Page 2: Beitrag zur elektronischen Steuerung von Robotern

238 Archiv far Elektrotechnik 64 (1981)

e.r I J

\!, ! 0 ) ~ . . . .... ey i

r b.-pl:~ ...... U

Ebene (p-rib =0 Ebene (p-dh=0

Bild 1. Kinematische Darstellung des betrachteten Gelenk- roboters mit seehs Freiheitsgraden sowie Definition der Nuli- lagen der Roboterwinkel

Bild 2. Festlegung tier Bezeichnungen f0r die Bewegung des Halters mit Werkzeug entlang einer beliebigen Bahnkurve auf einer beliebJg geformten WerkstfickoberflS, che

Paramete r T c < T _< T D beschrieben, wodurch der in Richtung der Ableitung dq/dz weisende Bahnvektor s = s(T) Iestliegt. Der Normalenvektor n = n(z) der Eigensehaft sn : 0 ist durch die Fl iehennormale der regul~iren Werkst0ckoberfl/iche F gegeben. Beim SchweiBen einer Naht, die durch die Schnit tkurve zweier Flfichen der F1/ichennormalen n~ und n 2 ge- bildet wird, werden optimale Arbeitsbedingungen mit einem Normalenvektor n erreicht, der in Rich- tung der Vektorsumme (n I + n2) zeigt. Das Werkzeug liegt in der dutch die Vektoren s und n gebildeten Ebene und schliel3t mit dem Normalenvektor n in Bewegungsrichtung den spitzen Winkel ~r ein. Der

Hal ter ist mit dem Werkzeug tiber einen s tumpfen Winkel 8 s tarr verbunden und das aus Hal ter und Werkzeug gebildete Dreieck PHQ weist eine Fl ichen- normale m auf, die mit dem Vektor (s • n) den Winkel ?L mit [21 =<- ~ einschliel3t, Dutch diese Fest- legungen werden beliebig angebrachte Sensoren mit- erfal3t.

Aufgrund dieser Vorgaben liegt eine vorgegebene r/iumliche Bewegung des Dreiecks PHQ vor und zu berechnen sind die sechs Roboterwinkel (c~,~,~0; ~, ~; 7), mit denen der vorgegebene Bewegungsvor- gang durch elektronische Steuertmg des GeIenk- roboters erreicht wird. Da bei allgemeinen Raum- kurven keine Proportionalit~tt zwisehen dem Para- meter z und der Zeit t besteht, verlangt die Forderung nach einer konstanten Bahngeschwindigkeit noch die Angabe der Verknttpfungsfunktion V(T) zwischen den Parameterschr i t ten zJz und den Zeitschritten At w/ih- rend des Steuervorganges:

Ida i-1 XIz= V(T) At mit V ( T ) : - v I ~ [ (t)

/~,~l

3 B e r e c h n u n g der B a h n k u r v e n der Ge lenke

Fi~r die bevorstehende vektorielle Betrachtung wird den Roboterteilen der aus Bild t ersichtliche vek- torielle Charakter a des Gestellarmes, b des Arbeits- armes, h des Halters und w des Werkzeuges gegeben, wobei die Flgchennormale m des Dreiecks PHQ in Ricbtung des Vektors (h • w) zeigt. Die Gestetlachse wird zur z-Achse des kartesischen Koordinaten- systems der Einheitsvektoren (ex, ey, ey) gemacht und ein allgemeiner R a u m p u n k t R - - R ( r ) wird durch den Ortsvektor r erfagt.

Dem Dreieck PHQ kann nun die Aussage

w/w = -- (s sin a + n cos a) (2)

en tnommen werden, wodureh die Lage des Eck- punktes H als ( q - w) bekannt ist. Mit dem ein- gefiihrten Winkel d zwischen Hal ter und Werkzeug und aufgrund der Forderung, dab die Vektoren (h • w) und (s • n) den Winkel 2 einschlieBen, k6nnen dem Bild 2 die Beziehungen

h w = -- (sh) w s i n c r - - (nh) w c o s a = - - h w c o s d ,

(h • w ) ( s • n) =: (sh) w c o s a - - (nh) w s i n a =

= hw sin d cos 2

entnommen werden. Damit liegen zwei Best immungs- gleichungen ffir die Komponenten (sh) und (nh) des Hal tervektors h vor, den man somit mittels der Beziehungen

h/h = s(cos (5 sin ~ -- sin ~ cos a cos2) +

+ n(cos d cos a -- sin 8 cos a cos g~) +

+ (n X s) sin 8 sin 1, (3)

Page 3: Beitrag zur elektronischen Steuerung von Robotern

L, Hannakam und G. Duelen: Beitrag zur e!ektronischen Steuerung yon Robotern. Teil I 239

aus den Vorgaben s(z), n ( j und (&, 2, a) be rechnen kann , w~ihrend ftir die Fl~ichennormale m des Drei- eekes P H Q die folgende Rechenvor sch r i f t g i l t :

h x w m - - - - (n sin a - - s cos a) s i n 2 4 -

}h • w I + (s • n) cos Z. (4)

Mit den Ausd r t i cken (2) und (3) is t auch der Or ts - v e k t o r p = % p , 4- %P~ 4- %P~ des Kuge lge lenkes P als p = q - - w - - h b e k a n n t , so dab m a n wegen der k o m p l a n a r e n Vek to ren a, b, % u n d p fi~r die R o b o t e r - winke l ~ und /5 mi t ~ = 15~ 4- P~, die B e s t i m m u n g s -

g le ichungen

p , = (%p) : (%a) 4- (%b) - - a cos c~ 4- b cos ~ ,

o : : [e~ X p[ = [ % • 4- [ % x b l : a s i n ~ 4- b s i n ~

erhS.lt. Diese l iefern mi t p~ : ~ + p~ nach Einf t ih- rung der n a c h s t e h e n d def in ie r ten cha rak t e r i s t i s ehen R o b o t e r k o n s t a n t e n 0 ~ x ~ I ffir die be iden ge-

suchten W i n k e l die Ergebn i s se

zp z - 0~ / t - - x 2 p 2 + b 2 _ a 2 fl = arc cos P mi t x -- 2pb "

(5) p2 _ a ~ _ b ~

= / ~ - - arc cos 2ab (6)

Bi ld 3 zeigt die Abh&ngigkei t der be iden so berech- ne ten R o b o t e r w i n k e l a u n d /~ v o n d e r bezogenen E n t f e r n u n g 9/b ffir den in te ress i e renden Bere ich c~ ~ 0 m i t d e m Verh&ltnis a/b % I der Arml~tngen als Pa r a me te r . Die so gewonnenen U n i v e r s a l d i a g r a m - me wurden fiir ve r sch iedene A rbe i t s e be ne n p~ = -= cons t angegeben, u m die wahre Verk le ine rung des Robo t e rw i rkungsbe re i c he s bei A n h e b u n g des Kuge[- gelenkes P aus der H a u p t e b e n e p~ = 0 aufzuzeigen.

Mit d e m somit b e k a n n t e n W i n k e l /3 erh&lt m a n dann u n t e r A u s n u t z u n g der k o m p l a n a r e n Eigen-

, 0o 0 _

60" / 0~ J

%25 %50 0,75 1,00 0,75 0,50 0,25 0

a o/b - - @ - - - - b/~

~50~ ! p -

b

I I 1

0 0,25 0,50 0,75 ~,00 0,75 0,~0 0,25 0

%~176

L4

19~176 { ~4

;rcco~ pzt(a 60o!

i 30 ~

0 o 0,25 0,50 %75 1,00 0,75 0,50 0,25

db--L~ b/~

~0~ ~20ol J _ [

.' I ! In , 4' I

i ooC

0 0,25 0,50 %75 1,00 0,75 0,50 0,25 a O / b - - ' ~ b,',o

B i l d 3a- -d . Die Kurven unterhalb bzw. oberhalb tier gemeinsamen Linie r162 = fl geben die Roboterwinkel 0r und fi in Abh~n- gigkeit yon tier bezogenen Entfernung o/b mit dem VerhS.ltnis a/b G 1 der Armlgngen als Parameter an, u. zw. fflr die Arbeits- ebenen

Page 4: Beitrag zur elektronischen Steuerung von Robotern

240 Archly ffir Elektrotechnik 64 [t981)

schaft der Vektoren a, b, e, und p fiir den Vektor b des Arbei tsarmes den Ausdruck

b - - - eX @ ey sin 15 + % cos/3, (7)

so dal3 aufgrund der Beziehung a - p -- b auch die Lage des Gelenkes A bes t immt werden kann.

4 B e r e c h n u n g der res t l i chen R o b o t e r w i n k e l

Die Drehung des Roboters um die Gestellachse wird gem~iB Bild t durch den Winkel ~, mit ]~1 =<. a erfaBt, den die Projekt ion ~ m i t der posi t iven x-Achse ein- schliel3t und der somit mittels der Beziehung

~/J = arc cos p~ mit sign p = s ignpy (8) #

gefunden wird. Der in R ieh tung seiner wachsenden Wer te weisende Einhe i t svek tor % = ey cos ~2 - e~ �9 �9 sin ~ wird sp~ter als die Fl~chennormale des Gestell- dreieckes OPA benStigt.

Ebenso einfach gestal tet sich die Bes t immung des Winkels 0 ~ # =< ~z, den der Hal te r mit der Achse des Arbei tsarmes einschlieBt und der mit den bekannten Ausdri~cken (3) und (7) filr die Einhei t svektoren h/h und bib wie folgt gefunden wird"

t9 = arc cos T " (9)

I m Hinbl ick auf die S teuerung des Gelenkroboters l~13t man das Dreieck A P H mit dem Gestelldreieck

OPA an dem gemeinsamen Arbe i t sa rm A P den Winkel q) mit Ir =<.. ~ einschlieBen, so dab die in Bild t angegebene Pro jek t ion auf die Ebene (p -- r) b -- 0 ents teht . Den gleichen Winkel schlieBen niimlich die Vektoren (b X h) und e,j, ein, so dal3 man die Winke lbes t immung

( = arc cos %, ~b x-il~]

mit sign ?) = sign i(b • ev,) (b • h)~

erh~ilt. Diese muB im Hinbl ick auf das aufzustel lende E c h t z e i t p r o g r a m m mit vektoralgebraischen Um- formungen vereinfacht werden. Zu diesem Zwecke wird mit den angegebenen Ausdrt tcken fiir die Ein- he i t svek toren e v und b/b das Vek to rp roduk t

b c = % • - ( = (e~ cos ~0 4- ey sin ~O) cos/3 --- e~ sin/3

(to) gebildet, womit sich die g e s t i m m u n g des Winkels q~ wegen ev, b ~ 0 auf die ]3ereehnung zweier Skalar- p roduk te reduziert"

ch = arccOShsin # mi t s i g n ~ = sign (e~h) . (11)

Aus gleichen Grtinden l~13t man das aus Hal te r und Werkzeug gebildete Dreieck P H Q mit dem Drei-

eck A-PH an dem gemeinsamen Hal te r A P den Winkel 7 mit lY] ~ < ~ einschliegen so dab die in

Bild ~ angegebene Projekt ion auf die Ebene (p -- r) h -~ 0 entsteht . Den gleichen Winkel 7 schliegen die Fl i ichennormalen der genannten Drei- ecke ein und ftihren somit zu der Winke lbes t immung

( X = arc cos m ~ x h i ]

mit s i g n y = sign [(m • h) (b • h)? .

Auch diese l~tl3t sich durch vektoralgebraisehe Um- formungen vereinfachen und ftihrt wegen m h = 0 zu dem Iolgenden Ergebnis, das auch nur zwei Skalarprodukte enth~lt :

wb cos # cos b -- wb y = arc cos wb sin # sin 3

mit sign 7 = sign ( rob) . (t2)

5 E insa tz des E c h t z e i t p r o g r a m m e s

Zur Veranschaul ichung des Arbei tens mit den auf- gestellten allgemeinen Beziehungen wurde die Ro- boters teuerung fiir einen Arbe i t svorgang program- miert , bei dem die Spitze Q des Werkzeuges der L~inge w/b = 0,t gem~il3 ]3ild 4 auf der Werkst i ick- oberfliiche z/b = 0,l die Gerade y/b ~ 1,3 beschreibt. Die Bewegung erfolgt in positfver x-Rictatung, so daf3 der kons tan te Bahnvek to r s ~ e x vorliegt, der mit der kons tan ten Fl~ehennormalen n ~ % das Vektor- p roduk t (s • n ) - - - e y bildet. Die eingezeichnete Lage des Halters mit Werkzeug ha t die Fl~ichen- normale m = - % zufolge, so dab entsprechend der allgemeinen Fest legung nach Bild 2 die Winkellage )~ ~--~/2 vorliegt. Die weiteren Abmessungen und festen Winkel wurden zu a == b und h/b = 0,3 sowie

z/b

1,0

0,8

0,5

0,4

I 0,2

0 0,2 0,4 0,6 0,0 1,0 1,2 1,4 1,6 1,8 y/b

Bild 4. Mal3stiibliche Darsfeilung des Roboters mit V~'erlc - stack fflr den als B e i s p i e l betrachteten Arbeitsvorgang bei einer Lage x ~ 0 der Werkzeugspitze Q

Page 5: Beitrag zur elektronischen Steuerung von Robotern

L. Hannakam und G. Duelen: ]3eitrag zur elektronischen Steuerung von Robotern. Teil I 241

150'

120'

90'

60'

Bahnkurve besteht . Dies soll an dem Anschweigen eines zyl indrischen Rohres des Durchmessers 2R an den BeMl te r des Bildes 6 gezeigt werden, dessert Oberfl~tche F eine Fl~iche zweiter Ordnung

+ ~ + ~ ~ ~* (~3)

mit den Halbachsen a,~, ay und G darstellt . Die dabei auf t re tenden Pa ramete r /,y, #~ und # weisen die Werte -F 1 und 0 auf und begrenzen die folgenden K6rper

30'

01

0 0,2 0/, 0,6 0,8 1,0 1,2 1,4

x / D ~

B i l d 5. Die nach dem aufgestellten Echtzeitprogramnl be- rechneten sechs Roboterwinkel bei der Bewegung der Werk- zeugspitze Q entsprechend dem in Bild 4 dargestellten Arbeits- vorgang

= 0 und d = 7r/2 festgelegt. Mit den so definierten E ingabeda ten wurden mittels der ]3eziehungen (2) bis (12) die sechs Roboterwinkel (~, fi, ~o; #, ~0; y) berech- net und in Bild 5 in Abh~ngigkei t yon der I .age x/b des Werkzeuges dargestellt . Die in Bild 4 gestrichelt

eingezeichnete Kurve A P gibt die Pro jek t ion der Bahnkurve des Gelenkes A auf die Ebene x = 0 an.

Die gesamte Be t r ach tung l~iBt erkennen, dab nach Angabe des gesamten Formelplanes in F o r m der Beziehungen (2) bis (t2) die wesentliche Arbei t bei der P rogrammierung des Roboters in der Best im- mung der Da ten q(z), s(z) und n(z) der zu befahrenden

(( .1t - ~-- ~. (q-~L o . . . . " \ \ "W /

B i l d 6. Festlegung der ]3ezeichnungen fi~r das Anschweil3en eincs kreiszylindrischen Rohres an einen Bch~ilter der Ober- II~tche F

180 o

#y #z /z K6rperform

1 1 t Ellipsoid 1 -- 1 -- 1 zweischaliges Hyperboloid 1 -- t t einschaliges Hyperboloid 1 -- 1 0 elliptischer Kegel 1 0 t elliptischer Zylinder

-- l 0 1 hyperbolischer Zylinder

Die Achse des zylindrischen Rohres verl~tuft durch den P u n k t (20 = Q0(q0) des Ortsvektors q0 = %% + q- ey.y o + %z 0 in R ich tung des Einhei tsvektors

e 0 ~ (e x cos ~ + ey sin ~) sin ~ + e~ cos ~7 , (14)

der in angegebener F o r m durch die Kuge lkoord ina ten (0 ~ ~ ~ ~ und --re ~ ~ ~ re) festgelegt ist. Die fur das R e c h e n p r o g r a m m ben6t igten E ingabeda ten (q,

s, n) der Bahnkurve CD, die die Schn i t tkurve des Rohres mit dem Beh~tlter darstellt , sollen mit tels eines einzigen, fiir alle erw~hnten KSrper formen giiltigen P rogrammes aus der jeweiligen Geometr ie der Anordnung bes t immt werden.

6 B e s t i m m u n g d e r B a h n k u r v e

Den gesuchten Or tsvektor q(z) der Bahnkurve kann man mit der zun'~tchst unbekann ten skalaren Funk- t ion u -- u(z) in der Parameterdars te l lung

q(~) = %x + eyy + %z = RLf(r) + e0u(~)] (15)

schreiben, wobei die vektorielle Funk t ion f -- e,f~ q- + eyfy + ej~ mit den K o m p o n c n t e n

J'~(r~) - - (xo/R) - / sin ~ sin 1: -- cos ~] cos $ cos T

fy(r) - - (yo /R) - - cos ~ s inz - - cos ~l sin ~ c o s t (16)

.f~(r) = (zo/R) - / sin ~ cos r

die Lage des laufenden Punktes (2 der Schni t tkurve auf der Zylinderoberfl~iche garant ier t . Die unbekann te Funk t ion u(,) f indet man dutch Einsetzen der Aus- driicke (15) ftir die kartesischen Komponen t e n ( x , y , z) in die G1. (13) der Fl~iche zweiter Ordnung. Dabei erweisen sich die Fak to ren

a x 2 a x 2

cy = # y ; c ~ = # , und c ~ # (t7)

Page 6: Beitrag zur elektronischen Steuerung von Robotern

242 Archiv fiir Elektrotechnik 64 (1981)

als die charakteristischen Kenngr6Ben des betrach- teten Systems aus Behfilter und Rohr, die allein mit den Zylinderdaten (%, %, R) das Aussehen der ge- suchten Bahnkurve q(z) best\tureen. Mit diesen werden ngmlich die Funktionen

*~xV'A (g) = (f . COS ~ @ Cy.fy sin ~) sly r~ + c,f~ cos r)

c 2 (~8) N B ( w ) = f~, + c, f~ 4- ff= - - c

mit N -: (cos 2 } + c~ sin ~ ~) sin ~ r~ + c, cos ~ r]

gebildet, durch die man dann die skalare F~nktion u(,) als Lbsung einer quadratischen Gleichung wie folgt ansdriieken kann:

u('c) = --A(z) ~ ~/~(~) - - B(z). (19)

Mit den Aussagen (14) und (16) bis (19) sind die kartesischen Komponenten (x,y, z) des Ortsvek- tors q(,) der Bahnkurve (t 5) bekannt. Das Ergebnis werden zwei Schnit tkurven sein, denn eine F1/~che zweiter Ordnung wird yon einer Geraden in zwei Punkten geschnitten. Mithin \st die Wahl des Vor- zeiehens in dem Ergebnis (t9) problemlos. Der der Bahnkurve q(r,) zugeordnete Parameterbereieh v stellt sich yon selbst aufgrund der Forderung A ~ ~ B ein, denn ffir A = ~ B existiert keine Schnittkurve. Be\ vollem Schneiden des Rohres dutch den Behglter liegt natiirgem/il3 der volle Parameterbereich 0 ~ z

2~ vor.

7 B e s t i m m u n g d e s B a h n v e k t o r s

Der in Bewegungsrichtung weisende tangent\ale Einheitsvektor s = s(,) der Bahnkurve q = q(*) \st entsprechend seiner allgemeinen Definition durch die Beziehung

s('c) -- dq/dT dq [ df(z) du] Idq/drl mit ~ = R k ~ 7 - ~ + e o ~-rJ

gegeben. Die Komponenten des Differentials dr/d, = g(~), also der vektoriellen Funktion g = e,g, + T eygy + %g, werden durch Differentiation der Ausdriieke (16) zu

g~(~) = sin ~ cos ~ + cos ~7 cos ~e sin

gy(T) . . . . c o s ~ cos ~ + c o s ~ cos ~ s in ~ (20)

g.(r) = sin r] sin ~r

gefunden und zur Bildung der zu (t8) analogen Funktionen

NC(T) = (gx COS ~ -7 Cygy sin ~) sin r l @ c,g~ cos ~7 (2~)

ND(r) =.gg, + cyf~gy 4- cff, g,~

herangezogen. Mit diesen kann dann das ben6tigte Differential (du/dr) be\ Verwendung der nunmehr nach (19) bekannten L6sung u(~) und der Funk- tion A(~) wie folgt berechnet werden: du u('r) C('r) + D(z) d~:= - - u(r) + .4(4) (22)

Die Verkniipfungsfunktion (t) nimmt wegen g2 __ t und e0g =- 0 die einfache Form

V(T) = N I 4 - \ d T / j < g (23)

an, so dab die Berechnung des gesuchten Bahn- vektors s(T) bei Verwendung der Ausdrficke (14) und (20) bis (22) nach der folgenden resultierenden Be- ziehung erfolgen kann:

(d~t~211/2 [ g ( T ) ~ - e 0 2 j (24) s(~) = [t + \ a ~ / j

8 B e s t i m m u n g d e s N o r m a l e n v e k t o r s

Be\ der Auffindung der Fl~tchennormaIen n I der Beh~dteroberfl~tche wird die G1. (13) der v0rliegenden Fliiehe zweiter Ordnung als F(x , y , z) == 0 geschrie- ben und die gesuchte F1/ichennormale n 1 wird dann nach der Beziehung

n I 8F 8F 8F ex + + %

mit % =- \ O , / + \5y] + \ S z ]

berechnet. Damit gelangt re.an zu dem folgenden Aus- druck, in den die nach (t5) bekannten Koordinaten (x, y, z) der Bahnkurve q(~) einzufiihren sind:

'h(r)

mit u~(z) = x 2 + c~y 2 + c2z 2 .

Die F1/ichennormale n 2 des Rohres wird durch die zum EJnheitsvektor e 0 der Zylinderachse senkrechte Komponente des Vektors (q -- %) bestimmt und \st daher durch die Beziehung n2(z ) == f(z) -- qo/R gege- ben. Mithin \st der ftir den Schweil3vorgang mal3- gebende Normalenvektor n durch die folgende Be- ziehung gegeben:

111 @ 112 Vy Vy Pz n - - in I -b nd - - ex ~ q- ey --v + ez v -

. xo y yo (25) ~ , . = - - + f . - ~ y = 4- - .

x z 0

9 B e i s p i e l z w e i e r z y l i n d r i s c h e r R o h r e

Die Bestimmung der Eingabedaten q(z), s@) und n(~) sol1 an der praktisch besonders interessierenden Anordnung des Bildes 7 veranschaulicht werden, be\ dem zwei Rohre der Durchmesser 2R an ein Rohr des

Page 7: Beitrag zur elektronischen Steuerung von Robotern

L. H a n n a k a m und G. Duelen: Beitrag zur elektronischen Steuerung von Robotern. Teil I 243

fez

~2#~ - - ~ ~ r ~ X n = ~

n

fll

Bi ld 7. Festlegung der Bczeichnungen ffir die bet rachte ten t(ohre verschJedener Durchlnesser, deren Achsen sich unter dem Winkel 0 -~ Z % n schneiden

Durchmessers 2kR mit k _>_ I angeschweil3t werden sollen, wobei sich die Rohrachsen unter dem Winkel 0 =< Z ~ ~ schneiden.

I m Sinne der vorl iegenden Abhand lung wird das grSl3ere Rohr als ein Beh~lter mit den Da ten cy = t, c, = 0, c = k ~ und q0 = 0 angesehen. Die Bet rach- tung kann weiterhin aus Symmetriegri~nden auf das rechte Rohr beschr~inkt werden, dem die Wer te

= ~/2 und ~ = Z zugeordnet sind. Nach deren Einsetzen in die Beziehungen (t4), (16), (t8) und (t9) erh~ilt man ftir den 0 r t s v e k t o r (15) der Bahnkurve mit dem Parameterbere ich 0 <~ T _< 2~ den Ausdruck

q(~) R - - % s i n 7: + ey ] / ~ - - s i n 2 "c +

~o~ ~ + co~ z 1/k~ s i , ~ ; + e, sin Z (26)

Die Beziehungeu (20), (21) und (22) liefern weiterhin die Verknt ipfungsfunkt ion (23) zu

v ( k2 -- sin2T l I P

V('c) == ~ \ h2 c o ~ 2 ~ u2 sin~-- ]

cos Z cosz + ]/k 2 -- sine z mit u(z) : (27)

sin Z

und somit erh~ilt man aufgrund der allgemeinen Be- ziehung (24) ftir den Bahnvek to r s = e,s, + eyse -F + e~s~ das Ergebnis

e~ cos v ~/k ~ -- sin z -- ey sin v cos r -- ezu(z) sin z

(28) Hingewiesen sei anf den Grenzfall k = ~ gleicher Rohre, bei dem die Komponen ten sy und s~ gem/i[3 Bild 8, das Iiir Z =-= az/4 gezeichnet wurde, an der Stelle z == az/2 einen Sprung erfahren, wghrend die Komponen te s~ an dieser Stelle in ihrem Verlauf einen Knick erffihrt. Sprunghaf tes Verhal ten f/Jr den

Grenzfall k = I weist an der Stelle ~ -- ~/2 auch die Verknt ipfungsfunkt ion (27) auf, wie man dem eben- falls ftir Z = ~/4 gezeichneten Bild 9 en tnehmen kann, das den Verlauf der fiir die Robote rs teuerung wichtigen Verknt ipfungsfunkt ion (27) wS.hrend des Schweibprozesses mit dem reziproken Radienverhs nis (t/k) als Pa ramete r zeigt. Ftir den Grenzfall k = 1 muB in der allgemeinen Beziehung (27) der Grenz- t ibergang

limt~_~l V(~) = ~ cos T tan 2 ] - F I Itir T X 2-

1,0 ~ cos~,~

- t~ 025 0,50 0,75 ~,oo

T/= ---,,,,,--

Bild 8. Verlau{ der Komponenten des Bahnvektors beim Ver- schweigen zweier Rohre gleicher Durchmesser, deren Achsen sich unter dem Winkel yon 45 ~ schneiden

' ~ ii,0 COS w ~,2 .

Sin~- 1,0=1/k

J 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0

i"/7/"

Bild 9. Verlauf der Verknt ipfungsfunkt ion beim AnschweiBen eines Rohres des Durchmessers 2R an ein l~ohr des Durch- messers 2R mit dem reziproken Radienverh~ltnis 0 ~ (t/ k) ~ I als Parameter

Page 8: Beitrag zur elektronischen Steuerung von Robotern

244 Archiv far Elektrotechnik 64 (t 98t)

vollzogen werden, aus dem das sprunghafte Verhalten der Verkniipfungsfunktion an der Stelle z = n/2 klar ersichtlich ist.

Fiir die Flgchennormalen n 1 des gr6Beren und n2 des kleineren Rohres erh~tlt man die Beziehungen

knl(z ) -- % sin z q- ey ]/k 2 - - sin ~ (29)

n~(,) -- % sin z -- ey cos Z c o s , -}- % sin Z cos ~,

so dab der Normalenvektor n des SchweiBvorganges nach (25) mit den folgenden v-Werten bes t immt ist:

+ k 2 2_ sin2~ _ cos Z cosz; v , - - k sinT; Vy=-

r~ = sin g cos z . (30)

10 Zusammenfassung

Betrachte t wird ein Gelenkroboter mit sechs Frei- heitsgraden, der ein Werkzeug mit konstanter Ge- schwindigkeit entlang einer vorgegebenen Bahnkurve auf der Oberfl~iche eines Werkstiickes zu ftihren hat. Aus diesen Vorgaben und aus den Forderungen, die der jeweilige Arbeitsvorgang bei Verwendung von Sensoren an die relative Lage des Werkzeuges zur Werkstiickoberflgche stellt, werden die sechs Roboter- winkel und die Bahnkurven der Robotergelenke be- rechnet. Der vollst~tndige Formelplan des aufgestell- ten Echtzei tprogrammes wird angegeben und an einem Beispiel vorgefiihrt. Die charakteristischen kinematischen KenngrSgen werden in Universal- diagrammen dargestellt, die den effektiven Wirkungs- bereich des Roboters erkennen lassen.

Nach Angabe des Formelplanes besteht die ei- gentliche Programmierung des Gelenkroboters in der Bes t immung der Eingabedaten, die durch die zu befahrende Bahnkurve und durch die Werkstiick-

oberfl/iche definiert sind. Der dabei einzuschlagende prinzipielle Weg wird an dem Beispiel des An- schweiBens eines zylindrischen Rohres an einen Be- h/ilter gezeigt, dessen Oberfl/iche eine F1/iche zweiter Ordnung darstellt. Dabei werden allgemeine pro- grammfert ige Beziehungen fiir die Bahnkurven und fiir die Normalenvektoren des optimalen Schweif3- prozesses angegeben. Die aufgestellten allgemeinen Beziehungen zur Best immung der Eingabewerfe werden fiir das VerschweiBen zweier Rohre ver- schiedener Durchmesser ausgewertet. Der bei einer allgemeinen Raumkurve auftretende nichtlineare Zusammenhang zwischen den Zeitschritten der Steuerung und den Parameterschri t ten der Raum- kurve wird ebenfalls behandelt.

L i t e r a t u r

I. Paul, P.: Manipulator Path Controll, Stanford Research Institute, Copyright by IEEE, Annals No. 75 CHO 997-- 7 SMC

2. Birk, I. R.: A Computation for Robots to Orient and Position Hand-Held Workpieces. IEEE, Vol. SMC, October 1976

3. Ejiri, M.; Uno, T.; Yoda, H.; Goto, T.; Takeyasu, K.: A prototyp intelligent robot that assembles objekt from plan drawings. IEEE, VoI. C-21, t972

4. Duffy, J.: Analysis of Mechanisms and Robot-Manipula- tors. Edward Arnold Ltd, 1980

5. Duelen, G.: Bahnsteuerung fiir Handhabungsgergte, Industrieroboter, Mfinchen: Hanser t979

]s am 16. M & z 1981

Prof. Dr.-Ing. habil. L. Hannakam Tullaweg-1 D-1000 Berlin 48

Prof. Dr.-Ing. G. Duelen Gritznerstr. 60 a D-1000 Berlin 41