FR2761292A1 - Procede de commande de guidage interactif, sur trajectoire, d'un manipulateur a redondance cinematique - Google Patents

Procede de commande de guidage interactif, sur trajectoire, d'un manipulateur a redondance cinematique Download PDF

Info

Publication number
FR2761292A1
FR2761292A1 FR9801067A FR9801067A FR2761292A1 FR 2761292 A1 FR2761292 A1 FR 2761292A1 FR 9801067 A FR9801067 A FR 9801067A FR 9801067 A FR9801067 A FR 9801067A FR 2761292 A1 FR2761292 A1 FR 2761292A1
Authority
FR
France
Prior art keywords
case
matrix
definition
articulation
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9801067A
Other languages
English (en)
Other versions
FR2761292B1 (fr
Inventor
Maximilian Schlemmer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deutsches Zentrum fuer Luft und Raumfahrt eV
Original Assignee
Deutsches Zentrum fuer Luft und Raumfahrt eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Deutsches Zentrum fuer Luft und Raumfahrt eV filed Critical Deutsches Zentrum fuer Luft und Raumfahrt eV
Publication of FR2761292A1 publication Critical patent/FR2761292A1/fr
Application granted granted Critical
Publication of FR2761292B1 publication Critical patent/FR2761292B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Complex Calculations (AREA)

Abstract

Selon ce procédé, à partir d'un déplacement ciblé d'un effecteur final commandé, on réalise, à partir d'une boule de commande manuelle (1) la commande d'un manipulateur (4), en utilisant certains paramètres en mettant en oeuvre une phase d'initialisation, puis une phase d'optimisation de critères pondérés (critères d'énergie et critères de position de référence) selon une cadence en temps réel tout en respectant toutes les limitations de trajectoire, en utilisant un algorithme particulier de cinématique inverse et la matrice de Jacobi.Application notamment à une commande de guidage interactif d'un manipulateur à redondance cinématique sur sa trajectoire.

Description

Procédé de commande de guidage interactif, sur trajectoire, d'un
manipulateur à redondance cinématique La présente invention concerne un procédé pour diriger la commande lors d'un guidage interactif, sur trajectoire, d'un manipulateur à redondance cinématique, sur la base de déplacements ciblés d'effecteurs terminaux commandés par un programmateur, en liaison avec un calcul de valeurs de positions d'articulations conformément à un
algorithme de cinématique inverse.
D'après Siciliano, B., Sciavicco, L.: "Modelling and Control of Robot Manipulators", McGraw-Hill Copanies (1996), page 95 à 101 et d'après Vukobratovic, M., Kircanski, N.: "Kinematics and Trajectory Synthesis of Manipulation Robots", Springer-Verlag, Tokyo, 1986, pages à 122, on connaît des procédés de commande pour un guidage, sur trajectoire, d'un manipulateur à redondance cinématique, sur la base de déplacements ciblés de l'effecteur final, commandés par un programmateur, en liaison avec un calcul exécuté en fonction d'un algorithme de cinématique inverse, moyennant l'utilisation de la
matrice de Jacobi.
A cet égard, on connaît un procédé mettant en oeuvre un calcul d'une inverse généralisée de la matrice de Jacobi, qui possède en général quelques caractéristiques avantageuses, mais entraîne également à cet égard une série d'inconvénients. Ainsi on obtient une uniformité de la trajectoire calculée d'une articulation et une faible usure du dispositif d'entraînement du robot, par minimalisation du décalage local de position de l'articulation (critères locaux d'énergie). En outre la distance entre les positions des articulations et les limites physiques des articulations est prise en compte par optimisation de critères globaux dans l'espace zéro de la matrice de Jacobi. Un inconvénient tient au fait que des limitations de trajectoire par des limites physiques des articulations ne peuvent pas être répétées d'une manière garantie, que l'on obtient un comportement instable dans des positions singulières du robot en raison d'une inversion (généralisée) de la matrice de Jacobi et que des configurations inefficaces de la trajectoire du robot sont possibles, lorsque des critères locaux et globaux
antagonistes apparaissent.
Dans un autre procédé connu, dans lequel un calcul de la matrice de Jacobi transposé est réalisé, l'objectif commandé de l'effecteur final est atteint d'une manière itérative, en fonction d'une représentation de la
cinématique inverse en tant que problème d'optimisation.
Comme caractéristique avantageuse on obtient un comportement stable dans des positions singulières du robot étant donné qu'aucune inversion de la matrice de Jacobi n'est réalisée. D'une manière générale on ne prend aucunement en compte des limitations de trajectoire dues à des butées physiques d'articulations et des vitesses maximales d'articulation. Il faut établir des heuristiques d'ordre supérieur pour détecter ces exigences imposées. On obtient des allures inefficaces de trajectoire sous la forme de déplacements parasites de l'effecteur final étant donné que le déplacement linéaire cartésien, commandé par la boule de commande manuelle ne peut pas être transmise de façon précise à l'effecteur final du manipulateur. En outre on obtient une usure élevée du matériau du dispositif d'entraînement du robot en raison du passage brusque du robot par des positions singulières, et en raison d'une trajectoire d'articulation en général suffisamment uniforme
(on ne prend pas en compte des critères locaux d'énergie).
En outre il faut s'accommoder d'une faible vitesse de convergence, c'est-à-dire de réductions de la capacité de travail en temps réel, étant donné qu'aucune stratégie optimale possible pour déterminer la matrice cartésienne de
rigidité, définie de façon positive.
Dans le document allemand DE 33 44 633 C2 on décrit une commande en temps réel, avec laquelle, en vue de calculer la vitesse des articulations redondantes, on peut déterminer celles qui ne sont pas nécessaires pour le déplacement d'un effecteur final. Un tel calcul est exécuté par au moins l'une des combinaisons d'articulations. Les vitesses pour chaque articulation sont alors déterminées par formation de la moyenne des vitesses calculées de l'articulation. Par conséquent, dans l'état de la technique, on exécute une pondération, et ce des vitesses
des articulations.
Dans le document US 5 430 643 on décrit également un procédé en temps réel, lors duquel la matrice de Jacobi inverse est calculée. Egalement dans le cas de ce procédé connu selon ce brevet US, on prend en compte des valeurs de pondération pour les vitesses des articulations ainsi que des limitations de trajectoire au moins pour une simulation
graphique du déplacement du robot.
L'invention a pour but d'indiquer un procédé de commande pour un guidage interactif sur trajectoire d'un manipulateur à redondance cinématique, avec lequel on peut respecter de façon sûre des limitations de trajectoires sur la base de butées physiques d'articulations ainsi que de vitesses maximales autorisées d'articulations et avec lequel aucune heuristique de rang supérieur n'est nécessaire pour contrôler la fiabilité de la solution déterminée, sur la base des limitations de trajectoires et
éventuellement corriger cette solution.
Ce problème est résolu conformément à l'invention à l'aide d'un procédé du type indiqué plus haut, caractérisé en ce que - à partir d'un déplacement ciblé commandé d'un effecteur final et de la valeur réelle actuelle (qi) de La poslt.on d'articulation du manipulateur, compte tenu d'une -fronction de qualité (f(q)), qui est paramétrée par des valeurs non négatives de pondération (aj, j) et compte -enu de limitations de la trajectoire par des butées physiques d'articulation (qmi, qmex), d'une vitesse maxinale d'articulation (q.x) et de la relation cinématique qui est représentée par la matrice de Jacobi, une nouvelle position d'articulation (quel) est calculée, position qui fixe par avance les nouvelles valeurs pour les régulateurs d'articulations, la fonction de qualité étant la somme d'un critère d'énergie et d'un critère de Position de référence, le critère d'énergie étant calculé a partir de (q-q,)tdiag(cj)(q-q,) et le critère de position de référence étant calculé à partir de (q-q=.:)-diag(oj)(q-q,. f) la grandeur q=.f étant une valeur de rosition d'articulation prédéterminée qui est fixée de telle sorte que la succession des valeurs calculées de pcsitions d'articulation (qj) s'étend à proximité et autour de cette position de référence; - a partir d'une valeur de position d'articulation qu) en tant que point de départ, sur la base de la fonc:zon de qualité un vecteur autorisé d'optimisation est déterminé en rapport avec toutes les conditions secondaires actLves qui indiquent quelles limitations de trajectoire sont atteintes, et ce vecteur est étalonné en fonction des conditions secondaires inactives, qui indiquent quelles limitations de la trajectoire ne sont pas atteintes - le vecteur d'optimisation étalonné est ajouté à la valeur de position d'articulation calculée lors du pas d'itération précédent; et - le caractère optimal de ces valeurs de positions d'articulations est évalué sur la base de la fonction de qualité et des conditions secondaires activées dans la
position d'articulation nouvellement calculée.
Selon une variante de réalisation avantageuse du procédé selon l'invention, selon lequel moyennant l'utilisation de la matrice de Jacobi de la cinématique, à partir d'un déplacement ciblé commandé Ax, :=(Axt,tAxr) à un instant Ti, Ax=, C 43 et Axr C 9a désignant respectivement la composante de translation et la composante de rotation du déplacement ciblé commandé de l'effecteur final, et Axtm x et AxmaX définissant respectivement le décalage cartésien maximum (en valeur scalaire) de translation ou de rotation, prédéterminé par un programmateur, de l'effecteur final pendant chaque durée d'échantillonnage AT, les décalages ciblés cartésiens désirés, de l'effecteur final en translation et en rotation Axtd et Ax=d par intervalle d'échantillonnage At sont définis comme suit: C A Xdans le cas o Axti<Axt m
Axtji:= Ax.
X ailleurs { Ax, dans le cas ou Ax= <Ax.mX AXr: = AXr Ax ------..ailleurs X xX (la valeur x d'un vecteur x étant définie ici et plus loin par sa norme euclidienne x:=\(5x le déplace-ment ciblé désiré de l'effecteur final est explicité par Axd:=(Ax=d,Ax=j) et les critères d'énergie et les critères de position de référence peuvent être pondérés de façon appropriée en fonction des exigences présentes, qui sont spécifiques aux problèmes par le fait qu'à chaque axe j sont affectées deux valeurs chiffrées positives cj, j prédéterminées par le programmateur, et parmi lesquelles la valeur cj sert à pondérer un critère d'énergie, qui évalue la différence de deux positions d'articulations voisines calculées de l'axe j, et la valeur Ad sert à pondérer un critère, qui évalue la déviation de la position d'articulation qj par rapport à une valeur de référence q=ef j également prédéterminee par le programmateur, valeur qui est prédéterminée par le programmateur exactement comme les butées physiques d'articulation qmliqmx du manipulateur, qui concernent les limitations de trajectoire, ainsi que les limitations qa de la vitesse de l'articulation, et que, lorsque les grandeurs de sortie du procédé pour un décalage ciblé désiré AXd' de l'effecteur final sont obtenues à l'instant Tl, pendant l'intervalle de temps AT un décalage optimum admissible Aqi de la position d'articulation est calculé avec l'algorithme de la cinématique inverse, qui se déroule pendant une phase d'initialisation et une phase suivante d'optimisation, la valeur de consigne actuelle étant obtenue dans le régulateur de l'articulation à partir de qI+glnoà = q cons gne + Aqi (avec qi=ogn' les positions des articulations sont franchies de façon correspondante par les régulateurs de l'articulation pendant l'intervalle de temps AT) et étant considérée pour un décalage admissible de la position d'articulation, que la valeur de position d'articulation actualisée avec Aq satisfait aux limitations physiques d'articulations qqa conformément à q < q=oStq. + Aq < q.. x et la valeur Aq satisfait aux limitations de vitesse d'articulation q conformément à Aq<q.qA\T, et le type de caractère optimal de Aq peut être fixé par un programmateur au moyen de la pondération E,: du critère de qualité, et l'intervalle de temps d'échantillonnage AT est dimensionné conformément à AT> max(Atq,At=) de telle sorte que la durée de calcul Atq pour le calcul d'un décalage admissible optimum Aq de la position d'articulation et la durée de régulation At,, dont les régulateurs ont besoin pour régler les positions d'axe sur les valeurs de consigne g se situent à
l'intérieur de l'intervalle de temps AT.
D'autres caractéristiques et avantages de la
présente invention ressortiront de la description donnée
ci-après prise en référence aux dessins annexés, sur lesquels: - la figure 1 montre, en association avec les caractéristiques indiquées précédemment de l'invention, une représentation du flux d'entrée/de sortie de la cinématique inverse selon une trame en temps réel; - la figure 2 illustre la mise en oeuvre du procédé selon l'invention en utilisant un algorithme pour la
cinématique inverse.
Le procédé selon l'invention fournit une uniformité de la trajectoire calculée d'articulations et conduit à une faible usure du dispositif d'entraînement du robot, par réduction du décalage local de position des articulations (critères locaux d'énergie). On obtient des trajectoires "élancées" d'articulations autour d'une position de référence (par exemple la position zéro). On évite avantageusement des limites d'articulations dans une très large mesure ou bien ou s'en rapproche en douceur et moyennant la mise en oeuvre d'une faible usure. Ce comportemnt est provoqué par un effet de décélération des axes du robot, qui agit d'une manière proportionnelle à la distance par rapport à la position de référence. En outre on obtient un comportement stable dans des ositions singulières du robot étant donné qu'aucune inversion de la matrice de Jacobi n'est réalisée. En outre on obtient avantageusement des allures efficaces de trajectoire grâce à une transmission précise du déplacement linéaire cartésien, commandé par la boule de commande manuelle, à
l'effecteur final du manipulateur.
On va décrire ci-après, sous la forme d'un
algorithme, le procédé selon l'invention.
J,,i=l,..,ndof désignent les colonnes de la matrice de Jacobi de la cinématique au point qo de la position actuelle du manipulateur, ndof désigne le nombre des articulations et J:=q.x dT désigne le décalage maximum autorisé de la position d'une articulation dans chaque intervalle de temps d'exploration JT. Avec aq'^
y:= --- et Jg:=(JlClJ3ú,-.,JdofSndo.) la relation ciné-
e1 matique incrémentale est (pAxd,qAx=d)=Jy (1) Sur la base des limitations de trajectoire, on obtient les limitations d'encadrement suivantes pour y: _:=max 1
6)
/ qimax-' O ":=min t-1, qo désigne l'ensemble admissible calcule de positions de consigne, sur la base des valeurs desquelles les axes du robot sont déjà réglées, ces valeurs représentant la valeur q r. r q c réelle. On définit en outre: y1 r.:= ----------. Afin que Et. toutes les limitations de trajectoire puissent être satisfaites, conformément à la relation cinématique (1), le déplacement ciblé désiré de l'effecteur final est soumis à une extension centrée, que l'on décrit sous la forme de deux scalaires: O<p<l, O<q01l, Les grandeurs p, q sont maximisées au moyen du procédé selon l'invention de telle sorte que toutes les limitations
de trajectoire sont respectées.
On définit b:=(OOOOOOyOO,-y.-1,-1),x:=(y,p,q) et les grandeurs auxiliaires AJq:=(xdO,OO)6, AJq:=(O,OAxd,)R, ainsi que la matrice AcE92in6 avec n:=ndof+2: Je, -Ax, -axa
A:= I (2)
-In In C E désigne la matrice unité. En outre ai, i=l,...,2,n+6 désigne les lignes de A. Les poids a,o des critères sont représentés par la matrice diagonale AcE"', en tant que facteur de Cholesky de la matricede Hesse à partir de la somme mise sous forme
scalaire du critère d'énergie (q-q=.,f)tdiag(oj)(q-q=.f).
Les éléments de sa diagonale principale sont: Aj:= I2(ti-a' + 11") pour l<i<n-2 et Aij:= V7pour n-2<i<n, avec n n i ndof et
s s ^ p- --------_-- --
ndof(q mmx>-qXmi) La structure de base du procédé particulier, selon l'invention, qui utilise une cinématique inverse, pour la commande est illustré schématique sur la figure 2, sur laquelle on voit que la commande de la boule de commande manuelle 1 au manipulateur 4 inclut une phase
d'initialisation 2 et une phase d'optimisation.
En référence à la figure 2, on va décrire ci-après de façon plus précise un algorithme, qui est utilisé dans
le procédé selon l'invention, pour la cinématique inverse.
Dans le cas de l'algorithme utilisé de la cinématique inverse, on exécute tout d'abord une phase d'initialisation 2, qui est conçue de la manière suivante: indice chiffré:k=0; valeur de départ: xk=(yk,pk, qk)=O;kmax>7; initialisation, avec m,:=8, de la matrice des conditions secondaires actives At 'm i: A J, -AXt, -AX i At:= 0, 1, 0;
0; 0; 1
initialisation de la valeur d'indice kl; 2, '''.,) pour caractériser les conditions secondaires actives, singulières et inactives: n+5 pour i=7 jJ = n+6 pour i=8 i-2 pour i=9,... ,n+6 i ailleurs initialisation de la subdivision orthogonale en triangles de: (rk,Jk,YR,Zk,Lk,Sk):=AO (A,mk,Jk); initialisation de la position orthogonale régulière en triangles de Z:=AZk: (QzRZ):=o(Zr); initialisation du vecteur -2scai c "al sca. lndofkndof scasndof go- R, gk 2( ( Y k ' Ye) +, Yk..Pdf Yndof Yk yref)+c"ndof Yk Pk-,qk-) Pour g. on utilise l'écriture abrégée suivante:
2(c' (yi kY f) '+ y pk--1 q--1).
Dans le cadre de l'algorithme utilisé de la cinématique inverse, on exécute ensuite une phase d'optimisation 3 qui est exécutée de la manière suivante: I. Calcul de la direction d'optimisation dk:
RZkd =-QzkZ.gk.
Calcul, à partir de là, de d,,x par substitution inverse. Rz d =QZkd Calcul, à partir de là, de dz par substitution inverse. Définition de la direction d'optimisation: dx:=ZkdZ. II. Détermination de la largeur de pas maximale sk et de l'indice jok de la condition secondaire limitative: avec atjdk<O et -'l <mlk rbi-a',xk Sk = _ minq. . bc-a.Xk L atdk avecj=j'k =: ------------ avec J k:=jO atod, _ 1 dans le cas o at'dk > O, ?>mk avec j=j'K (En cas d'ambiguïté, choisir le jO possédant le plus
petit indice iO).
III. Contrôle du caractère optimal et mise à jour de toutes
les grandeurs de la matrice et des grandeurs d'indice.
(a) Dans le cas o on a Sk < 1 (la condition secondaire j>1 est devenu active): i. Dans le cas o l'on a m3<n (il existe encore des conditions secondaires inactives): Xk+1= Xk + Skdk, Xk+1 = (Yk+1. pk+1,qk+1)
gk+1 = 2(1"'(yik+., - Y'ref) + aic 'yik+,, Pk.1 - 1,qk+1 - 1).
* Actualisation des factorisations matricielles et de la quantité d'indice: (rk+1,mk+l,Jk+l,Yk+l.Zk+l, Lk+l,.Sk-1):=tA.(io.rk,mkJk.Yk,Zk, Lk,Sk) Contrôle du caractère optimal de x+l: Dans le cas o l'on a Z tl= g,_l=O; et >.+ = LLS(rk_,m fg-_l, Yi+lLk+l) Ä0
alors: passer au pas IV.
Sinon: k=k+l (indice d'itération accru) Dans le cas o l'on a k>kmax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de
Z:=AZ7, -:
(QZ RZ _1):=DZ(Z,rr).
Passer au pas I. ii. Dans le cas o l'on a mk = n (le coin de la zone admissible est atteint, un remplacement de conditions secondaires actives est nécessaire): * Xk+l= Xk+skdk, Xk+l=(yk+ 1,pk+1,qk+1) gk-1=2( "l'(YA-k+I-Y,.f)+(! yk+lY Pk+l=,1qk+1-1 *) i-k = LLS(rk+1,mk+1,gkYk. Lk) * Libération d'une direction avec le potentiel maximum d'optimisation: kj:=mink. J * Actualisation de factorisations matricielles et de la quantité d'indice
(rk,mk,Jk,Yk,Zk,Lk,Sk):=..0,r k,mk,Jk.Yk,Zk,Lk,Sk).
* Activation de la condition secondaire j .
Actualisation des factorisations matricielles et de la quantité d'indice:
A, " '
(rk+,mk+1,Jk+ljYk+1,Zk+l,Lk+1,Sk+1)= (irk, mk, JK,YKZ, L, S).
* Contrôle du caractère optimal de xk-
Dans le cas o l'on a Zt+1g+1=0; et X+1 = LLS(r±,mk.,ga Yx+,L+2)>0
alors: passer au pas IV.
Sinon: k=k+1 (indice d'itération accru) Dans le cas o l'on a k>kmax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de
Z: =AZ):
(Q Z+,R k+l) =Z (Zr,_)-
Passer au pas I. (b) Dans le cas o l'on a s,=l (aucune nouvelle condition secondaire active) * Xk'l =Xk+dk,Xk+l =(Yk-l, Pkl,qk+1) ' gk+l1 = 2(1i(yk+l'yref)+.ayk+,,pp1-1,qk.1-1); * Actualisation de factorisations matricielles et de la quantité d'indice:
(rk+l, mk+,Jk+l,Yk+l,Zk+, Lk.1, Sk+l): =(rk. mk. Jk,Yk,Zk,Lk,Sk).
Contrôle du caractère optimal de x+1: Dans le cas o l'on a Zt+xg+L=.,=; et Xk+ = LLS(rx+,mx+,gk+,YI+,LL +L)>O
alors: passer au pas IV.
Sinon: Libération d'une direction avec le potentiel maximum d'optimisation o= min AJr
- Actualisation de factorisations matriciel-
les et de la quantité d'indice:
(rk+1,mk+l1,Jk+ljYk+,1,Zk+1,Lk+1,Sk+,):=) -_Ork,mk,JL,YK,ZK,LK,SK).
- k=k+l (indice d'itération accru) Dans le cas o l'on a k>kmax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de Z:=AZk+. l (Qzk+,RZ+ ):=cZ(Z,r+i). Passer au pas I. IV. La solution x-_. est déterminée. Stop
Fin de l'algorithme de la cinématique inverse.
Définition de la fonction LLS: k=LLS(r,m,g,Y,L) k:=0,i=r+l,...,m;
XIL:=(+, (.1 * *..,);
Lt=k=Ytg. Détermination, à partir de là, de kXL 'X par substitution inverse. Définition de la valeur de sortie de la fonction: k:=(k=,k=). Avec 1.q:=l+maxl j)l(i)l, positionnement des composantes de X, qui appartiennent aux conditions secondaires (1) de
l'équation, sur la valeur 1.q.
Fin de la fonction LLS.
Définition de la fonction +:
(r,m,J,Y,Z,L,S)=( ±(iO,r,m,J,Y,Z,L,S).
Activation de la condition secondaire j . Avec ajo avec j0:=j' désigne la ligne jo de A. Définition de Q=:=(Y,Z) et formation de a:=Qao. Partition de a:=(ay,a) avec iye'e et a= "-. Détermination de la réflexion de Householder Hi- t..-t de manière que l'on ait là,le,='Hwi, avec e1:=(l,0,...,O)E6n-r. Définition de la transformation unitaire H e IR'" conformément à: I=, O H:= 0, H Définition de la transformation unitaire:
Q:=HQ;
Actualisation d'indices: r dans le cas o Il=0o; _r+l ailleurs m:=m+l Permutation de conditions secondaires: Dans le cas o l'on a r#r, alors o dans le cas o i=r
j: = j" dans le cas o i=iO.
jr dans le cas o i=m j4 ailleurs sinon j1O dans le cas o i=m j' j" dans le cas o i=iO; ailleurs j:=(jX f 2n,) Actualisation des factorisations matricielles: Y est la matrice partielle de Qt, qui contient les colonnes 1 à rde Q. Z est la matrice partielle de Qt, qui contient les colonnes r+1 jusqu'à n de Q.
L, O
r l (S,ay) dans le cas ou r=r
S:= S
S sinon Fin de la fonction,+. Définition de la fonction D_:
(r,m,J, Y,Z,L,S)=A_(jO,r,m,J, ,Z,L,S).
Desactivation de la condition secondaire jo S Dans le cas o on a jO>r: (élimination de la condition secondaire singulière active) Actualisation des indices: r:=r; m:=m-l; Permutation de conditions secondaires: ji dans le cas o i=m+l j':=] jm' dans le cas o i=jO ailleurs 3 j Actualisation des factorisations matricielles
Y:=Y;
Z:=z; L:=L; S=(S., S jo-r_,Sjorl,*.,Smr), Si désignant les colonnes de S * Dans le cas o on a jO<r: (élimination de la condition secondaire active régulière) R est obtenu à partir de R:=L, par suppression de la jO-ème colonne. Les éléments de R, qui apparaissent aux emplacements (jO,jO+l),(jO+l,jO+2),..,(r,r+l) sont annulés par multiplication à gauche par une suite de matrice unitaire y, IV r d'élimination Ejo. jo *.,E=_.J'.,r Définition de transmissions linéaires: R: = E_l. rE=_,._2, -..E jo jo±R; S:= E=_31,2rÀ. 2,--.. jEo oS Ei,10, I_ =
Q:=(Y,Z);
Q:=E=_,=E=_2,=_1À.E o jolQ;Q - Dans le cas o la dernière ligne de S est nulle ou dans le cas ou l'on a r=m: Actualisation des indices r:=r-l; m:= m-l; Changement des conditions secondaires: ]j dans le cas o i=m+l ji dans le cas o i=jO,..,m l:= ji ailleurs
J =( 2
Actualisation de factorisations matricielles: Y est la matrice partielle de Q=, qui contient les colonnes 1 à r de Q. Z est la matrice partielle de t, qui contient les colonnes r+l jusqu'à n de Q=. Dans le cas o l'on a j-.. r<m, on supprime la dernière ligne de S et R. On pose: _
E: =^,
S:=S
- Sinon (conversion de la condition secondaire active sin-
gulière en une condition secondaire active régulière): Détermination de l'élément de la dernière ligne de S possédant l'indice 10 le plus petit de telle sorte que l'on ait:
S=, 10toO.
Permutation de la colonne 10 avec la colonne 1 de S. Définition de la transformation linéaire: R: =( R, Slo) S1o désignant la 10-eme colonne de S. Actualisation des indices: r:=r; m: =m-1 Permutation des conditions secondaires: jio dans le cas ou i=mi+l jl:= j] dans le cas ou i=jO,..,m j ailleurs jr+10-1 dans le cas ou i=r
ji:= j] dans le cas o i=r+10-1.
j ailleurs Actualisation de factorisations matricielles: Y est la matrice partielle de Qt, qui contient les
colonnes 1 à r de Qt.
Z est la matrice partielle de Qt, qui contient les
colonnes r+l jusqu'à n de Qt.
-S=( 2s t **.Slo_11S-l Slo+l - SmrIt).
Les Si désignant les colonnes de S.
Fin de la fonction O_.
Définition de la fonction o,:
(r,J,Y,Z,L,S):=4o( ,m,J).
l. Définition de:
A := , i:=0.
2. Définition de la récursion matricielle suivante:
Al+:=HiAl, i>0.
La transformation unitaire Hi s IR"'' s'explique comme suit: Hi =t 0, Hi La réflexion de Householder Hil-'i'-i est définie de telle sorte que l'on a: la o el = Hjo-a avec ex =(io,..,o) 0)n- - Les vecteurs aàkc9",k=l,..,n-i désigne les colonnes de la matrice
A
F*, A= *,A_ En outre on a l<kO<n-1 le plus petit indice avec a O. Dans le cas o aucun kO de ce type n'existe, passer
alors au pas III, sinon passer au pas IV.
3. Définition des indices: r:=i; Définition des factorisations matricielles: Q:=H=_1H=_*2.Ho; Y est la matrice partielle de Q, qui contient les
colonnes 1 à r de Qt.
Z est la matrice partielle de Q, qui contient les
colonnes r+l jusqu'à n de Q=.
T est la matrice qui est obtenue par suppression des
lignes r+l jusqu'à n dans A '.
Définition de LE)=' et Sce'm- = confornement à:
(L,S) =T.
Arrêt: l'exécution de la fonction b. est terminée 4. Remplacement de la colonne i+kO par la cclonne i+l dans Ai rji' dans le cas o k=i4-l jk:= _. dans le cas o k = i-kD j ailleurs Positionnement de je:=jk k, augmentation de l'indice
chiffré i=i+l et avance au pas II.
Fin de la fonction VO.
Définition de la fonction CVo:
(Qz,RZ):=z o(Z,r).
Détermination de la subdivision en triangles QR de Z: Rz Qzz= [ Q5Z X désigne une matrice unitaire et RZ c %R"'
désigne une matrice triangulaire supérieure.
Fin de la Fonction DZo.
En outre, conformément à l'invention le décalage ciblé cartésien Ax, de l'effecteur final, qui est commandé à un instant TI, est commandé par le programmateur sous la
forme d'un vecteur d'incrémentation à 6 dimensions.
En outre, conformément à l'invention le vecteur d'incrémentation du décalage ciblé cartésien Ax, de l'effecteur final, commandé à un instant Tx est déterminé par le programmateur, par formation de la différence de
coordonnée absolue de l'effecteur final.

Claims (6)

REVENDICATIONS 1. Procédé pour diriger la commande dans le cas d'un guidage interactif, sur trajectoire, d'un manipulateur à redondance cinématique,sur la base de déplacements ciblés d'effecteurs terminaux commandés par un programmateur, en liaison avec un calcul de valeurs de positions d'articulations conformément à un algorithme de cinématique inverse, caractérisé par les caractéristiques suivantes: - à partir d'un déplacement ciblé commandé d'un effecteur final et de la valeur réelle actuelle (qj) de la position d'articulation du manipulateur, compte tenu d'une fonction de qualité (f(q)), qui est paramétrée par des valeurs non négatives de pondération (cj, go) et compte tenu de limitations de la trajectoire par des butées physiques d'articulation (qm1i, qm>x), d'une vitesse maximale d'articulation (qmx) et de la relation cinématique qui est représentée par la matrice de Jacobi, une nouvelle position d'articulation (q,+,) est calculée, position qui fixe par avance les nouvelles valeurs pour les régulateurs d'articulations, la fonction de qualité étant la somme d'un critère d'énergie et d'un critère de position de référence, le critère d'énergie étant calculé à partir de (q-q,)tdiag(cj,)(q-q,) et le critère de position de référence étant calculé à partir de (q-q=.. )=tdiag(dj)(q-q=.er) la grandeur quel étant une valeur de position d'articulation prédéterminée qui est fixée de telle sorte que la succession des valeurs calculées de positions d'articulation (q,) s'étend à proximité et autour de cette position de référence; - à partir d'une valeur de position d'articulation (q,) en tant que point de départ, sur la base de la fonction de qualité un vecteur autorisé d'optimisation est déterminé en rapport avec toutes les conditions secondaires actives qui indiquent quelles limitations de trajectoire sont atteintes, et ce vecteur est étalonné en fonction des conditions secondaires inactives, qui indiquent quelles limitations de la trajectoire ne sont pas atteintes; le vecteur d'optimisation étalonné est ajouté à la valeur de position d'articulation calculée lors du pas d'itération précédent; et - le caractère optimal de ces valeurs de positions d'articulations est évalué sur la base de la fonction de qualité et des conditions secondaires activées dans la position d'articulation nouvellement calculée. 2. Procédé selon la revendication 1, caractérisé en ce que moyennant l'utilisation de la matrice de Jacobi de la cinématique, à partir d'un déplacement ciblé commandé Ax.:=(Axt,Ax=) à un instant T, Axt, E fl3 et Ax I ER3 désignant respectivement la composante de translation et la composante de rotation du déplacement ciblé commandé de l'effecteur final, et Axt' et Axmax définissant respectivement le décalage cartésien maximum (en valeur scalaire) de translation ou de rotation, prédéterminé par un programmateur, de l'effecteur final pendant chaque durée d'échantillonnage AT, les décalages ciblés cartésiens désirés, de l'effecteur final en translation et en rotation Axtdc et Axd par intervalle d'échantillonnage At sont définis comme suit: Axe dans le cas o IAxK<Axt, LAx.tci:{ IAxJI xt -- ailleurs x: Axt Ax, dans le cas o IAxJI<Ax=.7 AX ci: |AXi xr -----ailleurs Ax a valeur xi d'un vecteur x étant définie ici et plus _cir. par sa norme euclidienne i x:= (i xix), le déplace- --nr.t ciblé désiré de l'effecteur final est explicité par Axd:={AxCd, AxCd) et les critères d'énergie et les critères -e position de référence peuvent être pondérés de façon appropriée en fonction des exigences présentes, qui sont spécifiques aux problèmes par le fait qu'à chaque axe j sont affectées deux valeurs chiffrées positives aj, Ij Prédéterminées par le programmateur, et parmi lesquelles la aleur cj sert à pondérer un critère d'énergie, qui évalue ia différence de deux positions d'articulations voisines calcu.ées de l'axe j, et la valeur A, sert à pondérer un critère, qui évalue la déviation de la position 'articulation qj par rapport à une valeur de référence re. j egalement prédéterminée par le programmateur, valeur cui est prédéterminée par le programmateur exactement comme -es butées physiques d'articulation qminqm du manipulateur, qui concernent les limitations de crajectoire, ainsi que les limitations qx de la vitesse ce i'articulation, et que, lorsque les grandeurs de sortie Au procédé pour un décalage ciblé désiré Axd de _'effecteur final sont obtenues à l'instant T^_^^ pendant L'intervalle de temps AT un décalage optimum admissible Aq -e la position d'articulation est calculé avec l'algorithme ce la cinématique inverse, qui se déroule pendant une phase c'initialisation (2) et une phase suivante d'optimisation 3), la valeur de consigne actuelle étant obtenue dans le régulateur de l'articulation à partir de q ig = osige + Aq (avec q con les positions des articulations sont franchies de façon correspondante par -es régulateurs de l'articulation pendant l'intervalle de temps AT) et étant considérée pour un décalage admissible ie la position d'articulation, que la valeur de position D'articulation actualisée avec Aq satisfait aux limitations P hysiques d'articulations q n,qm conformément à q,, < qc.. + Aq < qm.x et la valeur Aq satisfait aux limitations de vitesse d'articulation qx conformément à SAq iqAT, et le type de caractère optimal de Aq peut être fixé par un programmateur au moyen de la pondération cx, du critère de qualité, et l'intervalle de temps d'échantillonnage AT est dimensionné conformément à AT> max(Atq,At=) de telle sorte que la durée de calcul Atq pour le calcul d'un décalage admissible optimum Aq de la position d'articulation et la durée de régulation At=, dont les régulateurs ont besoin pour régler les positions d'axe sur les valeurs de consigne q=oiqoe, se situent à l'intérieur de l'intervalle de temps AT. 3. Procédé selon la revendication 2, caractérisé en ce que dans l'hypothèse o J,,i=l,...,ndof désigne les colonnes de la matrice de Jacobi de la cinématique, ndof dsigne le nombre des articulations et Es:=q mAT représente le décalage maximum obtenu de la position d'articulation pendant l'intervalle de temps Aq d'échantillonnage AT, avec y:= --- et El ji:=(J1g1,J2g2,.**, JrNcOfErdcf) (pAx c,qAx=)=Jy (1) de telle sorte qu'on obtient, sur la base des limitations de trajectoire, les limites d'encadrement mq m,-qO qm- axq o y1,:=max -----------) et y'a.:=min q---- ---) qo étant l'en- E,, semble admissible de positions de consigne, calculé en dernier, sur la base des valeurs desquelles les axes du i i q r.f-q o robot sont déjà réglés, qu'en outre y.e:= ---------- est définie, que, pour que toutes les limitations de trajectoire soient satisfaites, conformément à la relation cinématique (1), le déplacement ciblé désiré de l'effecteur terminal est soumis à une extension centrée, qui peut être décrite sous la forme de deux scalaires O<p<l, O<q<l, les grandeurs p, q étant maximisées de telle sorte que toutes les limitations de trajectoire sont respectées, que b:=(OOOOOOymin,OO,-ymxfx,-l,-1)Cnî, 6 x:=(y,p,q) et les grandeurs auxiliaires Axt:= (Ax t, O, O,O)6, Ax=:=(0,0,0,Ax d=)"'S, ainsi que la matrice A 2n+6' avec n:=ndof+2: J., -Axe, -Ax, A:= In (2) -In I r j In "' désignant la matrice unité et ai,i=l,...,2n+6 désignant les lignes de A, que les poids c,: des critères sont représentés par la matrice diagonale Ac9nU", dont les éléments de la diagonale principale A,j= A 2(asal +,l') pour l<i<n-2 et Aij:= 2 pour n-2<i<n, 1 s avec i = ---- et D - ---:=----à ndof ndof(qlm 1-q minx) 4. Procédé selon la revendication 3, caractérisé en ce que dans le cadre de l'algorithme utilisé de la cinématique inverse, on exécute une phase d'initialisation qui est conçue comme indiqué ci-après: indice chiffré:k=0; valeur de départ: xk=(yk,pk,qk)=Ok max>7; initialisation, avec m,:=8, de la matrice des conditions secondaires actives À s A.: \tJ., -Axt, -Axrl A:= 0, 1, 0 0; 0; 1 initialisation d la valeur d'indice J):=(j,j2x,.f. .,j R) pour caractériser les conditions secondaires actives, singulières et inactives: n+5 pour i=7 j = l n+6 pour i=8 i-2 pour i=9,. ,n+6 Ci ailleurs initialisation de la subdivision orthogonale en triangles de: (rk,Jk,Yk,Z,Lk,Sk):=Ao (,mk,J); initialisation de la position orthogonale régulière en triangles de Z:=AZx: (QzRZ):=Zo(Zr); initialisation du vecteur go E R':g.:=2(' a(yx -y aEtr) + ai= Y Ikp-lqg-) et que dans le cas de l'algorithme utilisé de la cinématique inverse, on exécute ensuite une phase..CLMF: d'optimisation, qui est conçue de la manière indiquée ci- après: I. Calcul de la direction d'optimisation d: R,d x=-Qz.Zkg. Calcul, à partir de là, de deux par substitution inverse. RZCd==Qz ldax Calcul, à partir de là, de dz par substitution inverse. Définition de la direction d'optimisation: dk:=Z kdZ. II. Détermination de la largeur de pas maximale s. et de l'indice j k de la condition secondaire limitative: avec a'jdk<O et Vl<mlk bj-atjxk sk:= minj----- bjo-atjOXk Latjdk avecjik = -avecji k:=jO atjOdk 1 dans le cas o atjdk > O,Vi>mk avecj=jiK (En cas d'ambiguïté, choisir le jO possédant le plus petit indice io). III. Contrôle du caractère optimal et mise à jour de toutes les grandeurs de la matrice et des grandeurs d'indice. (a) Dans le cas o on a Sk < 1 (la condition secondaire jk est devenu active): i. Dans le cas ou l'on a mR<n (il existe encore des conditions secondaires inactives): * Xk+1 = Xk + Skdk, Xk+1 = (yk+. 1 pk+1,qk.1) gk+: = 2(13sca(yik+ - yref') +,ScaIyik+. Pk+1 - 1,qk+1 - 1). * Actualisation des factorisations matricielles et de la quantité d'indice: (rk+1 mk+1 Jk+lYk+l.Zk+1 Lk+l, Sk+): =a) +(io. rk.mk, Jk,Yk,Zk, Lk, Sk) Contrôle du caractère optimal de xk: Dans le cas o l'on a Zt +gk.=0; et i_+ = LLS(r+l,mR gk+,lY+ xLk+1)>0 alors: passer au pas IV. Sinon: k=k+l (indice d'itération accru) Dans le cas o l'on a k>kmnax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de Z:=AZ.- 1: (QZ RZ (Q +,RZk+l):= (Zrk.). Passer au pas I. ii. Dans le cas o l'on a m: = n (le coin de la zone admissible est atteint, un remplacement de conditions secondaires actives est nécessaire): * Xk+1 = Xk+ Skdk, Xk1 =(Yk+1 Pk*1,qk+l) gk+1=2(P1 (yk1-yref)+a, yk+1.,pk+1=l qk+1- 1) kk = LLS(rk+1,mk+1.gk.Yk.Lk). * Libération d'une direction avec le potentiel maximum d'optimisation: k :=minkj j * Actualisation de factorisations matricielles et de la quantité d'indice (rk, mk, Jk,YkZk, Lk, Sk): =( -O, rk, mk, Jk,Yk,Zk, Lk, Sk). * Activation de la condition secondaire j. Actualisation des factorisations matricielles et de la quantité d'indice: A '"' NJV %'U O C lr5 a èp(rk+1,mk+1,Jk+ljYk+1,Zk+, Lk+1, Sk+1): =(I) +(iO, rk, mkJK,YK,ZK,LK,SK). * Contrôle du caractère optimal de x,-, Dans le cas o l'on a Z +1g1=0; et + = LLS(rk+.,m+<,g+4,Y+>,L2 +)>0 alors:passer au pas IV. Sinon: k=k+l (indice d'itération accru) Dans le cas o l'on a k>kmax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de :=Az.+: (QZ +,,RZ +x):= Z(Z,rk+x). Passer au pas I. (b) Dans le cas o l'on a sk=l (aucune nouvelle condition secondaire active) ' Xk.l=xk+dk,Xk+1=(yk-1,Pk-l, qk+1); gk+l = 2(lscaI(Yk+l'yryf)+jisca'yk+l,Pp+l1-1,qk+1-1) * Actualisation de factorisations matricielles et de la quantité d'indice: (rk+1,mk+l,Jk+l,Yk+1,Zk+1 Lk+,Sk+l): =(rk, mk,Jk,Yk,Zk, Lk, Sk). Contrôle du caractère optimal de x+: Dans le cas o l'on a Z +1g+x=O; et k+ = LLS(rk+,m=+,g+,Y+,L+)0 alors: passer au pas IV. Sinon: Libération d'une direction avec le potentiel maximum d'optimisation k = min k>; - Actualisation de factorisations matriciel- les et de la quantité d'indice: (rk+,,mk+l,Jk+ljYk+1,Zk+lLk+,Sk+,):=@ A(Orkmk,JK,YKZKLKSK). - k=k+l (indice d'itération accru) Dans le cas ou l'on a k>kmnax: passer au pas IV. Sinon: détermination de la subdivision orthogonale régulière en triangles de Z:=,\Zk+l: (QZ +,R Z y):= (z,r,+). Passer au pas I. IV. La solution Xko_ est déterminée. Stop Fin de l'algorithme de la cinématique inverse. Définition de la fonction LLS: k=LLS(r,m,g,Y,L) X:=O,i=r+l,...,m; kL:=( + t,*.*.*.t,); Lt =Ytg. Détermination, à partir de la, de k e 9 r par substitution inverse. Définition de la valeur de sortie de la fonction: k:=(k=,kmL). Avec lq:=l+maxl, m k(i)l, positionnement des composantes de k, qui appartiennent aux conditions secondaires (1) de l'équation, sur la valeur 1,. Fin de la fonction LLS. Définition de la fonction): (r,m,J,Y,Z,L,S)=(D+(iO,r,m,J,Y,Z,L,S). Activation de la condition secondaire j. Avec ajo avec jO:=ji désigne la ligne jlo de A. Définition de Qt:=(Y,Z) et formation de a:=Qajo. Partition de:=(ay,) avec ayez 9 et a9c"-. Détermination de la réflexion de Householder Hc9"i ' ' de manière que l'on ait: aà e1=Ha., avec ex:=(l,0,...,0)esK-. Définition de la transformation unitaire H E 'Ji conformément à: I=, 0 H:= qc N H Définition de la transformation unitaire: Q:=HQ; Actualisation d'indices: r dans le cas o u.z=O r:=- r+l ailleurs m:=m+l Permutation de conditions secondaires: Dans le cas o l'on a rtr, alors lO _ ji dans le cas o i=r := m dans le cas o i=iO j dans le cas o i=m ailleurs sinon _ i dans le cas o i=i jodans le cas o i=iO i: = jm dans le cas o i=i0; ji ailleurs J:=(j',. *3,2n+: dn l aso ii Actualisation des factorisations matricielles: Y est la matrice partielle de Q=, qui contient les colonnes 1 à r de Q. Z est la matrice partielle de Q, qui contient les colonnes r+1 jusqu'à n de Qt. L, 0 l L:= La., a. I (S,ay) dans le cas o r=r _ S sinon Fin de la fonction +. Définition de la fonction _: (r,m,J,Y,Z,L,S) =c( jr,m,J, Y,Z,L,S). Désactivation de la condition secondaire jj. * Dans le cas o on a jO>r: (élimination de la condition secondaire singulière active) Actualisation des indices: r:=r; m:=m-1; Permutation de conditions secondaires: jo dans le cas ou i=m+l 7j i3 dans le cas ou i=jo j ailleurs J: (j1. n+ Actualisation des factorisations matricielles Y:=Y; Z:=Z; i:=L; S:=(S1' 1SJ _ o-r--- lSj-+)I Si désignant les colonnes de S * Dans le cas o on a j0o<r: (élimination de la condition secondaire active régulière) est obtenu à partir de R:=L, par suppression de la jO-ème colonne. Les éléments de R, qui apparaissent aux emplacements (jO,jO+l),(jO+l, jO+2),..,(r,r+l) sont annulés par multiplication à gauche par une suite de matrice unitaire d'élimination Eojo+, E_,. Définition de transmissions linéaires: -v -v P R:= Er_x. rEr_ 2.rl..Ejo, jo+lR; Epi, i+, 0 R:Ei + = ElO, I"_ -1 v v0 Qt:=(Y, Z) Q:=E1_,E=_2,_. Eoo+Q; - Dans le cas ou la dernière ligne de S est nulle ou dans le cas o l'on a r=m: Actualisation des indices r:=r-l; m:= m-l; Changement des conditions secondaires: jo dans le cas ou i=m+l j:= dans le cas o i=jO,..,m Lj i ailleurs J:=(3,., i)- r. Actualisation de factorisations matricielles: Y est la matrice partielle de Qt, qui contient les colonnes 1 à E de Q=. Z est la matrice partielle de t, qui contient les colonnes r+l jusqu'à n de t. Dans le cas o l'on a r<m, on supprime la dernière ligne de S et R. On pose: _ 1% L::Rt; S:=S - Sinon (conversion de la condition secondaire active sin- gulière en une condition secondaire active régulière): Détermination de l'élément de la dernière ligne de S possédant l'indice 10 le plus petit de telle sorte que l'on ait: S.=o0. Permutation de la colonne 10 avec la colonne 1 de S. Définition de la transformation linéaire: _ - _ R:=(RSo),w S1o désignant la 10-ème colonne de S. Actualisation des indices: r:=r; m:=m-1 Permutation des conditions secondaires: ^j dans le cas o i=m+l I j:= j dans le cas o i=j0,..,m jî ailleurs jr+10-1 dans le cas o i=r j1= jdans le cas o i=r+10-1. jl ailleurs Actualisation de factorisations matricielles: Y est la matrice partielle de Q, qui contient les colonnes 1 à r de Qt. Z est la matrice partielle de Qt, qui contient les colonnes r+1 jusqu'à n de Qt. S:=( 2 * * Slo_1SSlo 1 Sm- I), Les S, désignant les colonnes de S. Fin de la fonction!_. Définition de la fonction A'o: (r,J,Y,Z,L,S):= o(AmJ).
1. Définition de:
A :=A, i:=0.
2. Définition de la récursion matricielle suivante:
A:=HiAl, i>O.
La transformation unitaire Hi c X' s'explique comme suit: tIi, i Hi =. O, Hi La réflexion de Householder H i est définie de telle sorte que l'on a: -i Iva' a koiel = Hia, avec e1:=(l,0,.., 0)t -i't-i Les vecteurs :a),k=l,..,n-i désigne les colonnes de la matrice
[
Ai =. *Ai
En outre on a l<kO<n-1 le plus petit indice avec a ko=O.
Dans le cas ou aucun kO de ce type n'existe, passer
alors au pas III, sinon passer au pas IV.
3. Définition des indices: r:=i; Définition des factorisations matricielles: Q:=H=_-H=_2.Ho;H Y est la matrice partielle de Q=, qui contient les
colonnes 1 à r de Q=.
Z est la matrice partielle de Q, qui contient les
colonnes rF+1 jusqu'à n de Qt.
T est la matrice qui est obtenue par suppression des
lignes +1 jusqu'à n dans Ai'.
Définition de Le='= et SEST conformément à: (Lt,S):=T. Arrêt: l'exécution de la fonction o' est terminée!
4. Remplacement de la colonne i+kO par la colonne i+l dans A Fjex dans le cas o k=i+l
3:= j+ dans le cas o k = i+kO.
_jk ailleurs Positionnement de j:=j, Vk, augmentation de l'indice
chiffré i=i+l et avance au pas II.
Fin de la fonction to.
Définition de la fonction zo:
(QZ,Rz):= Zo(Z,r).
Détermination de la subdivision en triangles QR de Z: Rz Qzz=[j QZ E l'a W désigne une matrice unitaire et RZ c- 9"E '
désigne une matrice triangulaire supérieure.
Fin de la Fonction zo.
5. Procédé selon la revendication 2, caractérisé en ce que le décalage ciblé cartésien Ax. de l'effecteur final, qui est commandé à un instant T1, est commandé par le programmateur sous la forme d'un vecteur
d'incrémentation à 6 dimensions.
6. Procédé selon la revendication 2, caractérisé en ce que le vecteur d'incrémentation du décalage ciblé cartésien Ax. de l'effecteur final, commandé à un instant Tx est déterminé par le programmateur, par formation de la
différence de coordonnées absolues de l'effecteur final.
FR9801067A 1997-02-03 1998-01-30 Procede de commande de guidage interactif, sur trajectoire, d'un manipulateur a redondance cinematique Expired - Fee Related FR2761292B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19703915A DE19703915C1 (de) 1997-02-03 1997-02-03 Verfahren zur Kommandosteuerung für eine interaktive Bahnführung eines kinematisch redundanten Manipulators

Publications (2)

Publication Number Publication Date
FR2761292A1 true FR2761292A1 (fr) 1998-10-02
FR2761292B1 FR2761292B1 (fr) 2000-06-16

Family

ID=7819116

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9801067A Expired - Fee Related FR2761292B1 (fr) 1997-02-03 1998-01-30 Procede de commande de guidage interactif, sur trajectoire, d'un manipulateur a redondance cinematique

Country Status (3)

Country Link
US (1) US6081754A (fr)
DE (1) DE19703915C1 (fr)
FR (1) FR2761292B1 (fr)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19800552C2 (de) * 1997-06-20 1999-04-22 Deutsch Zentr Luft & Raumfahrt Verfahren zur Kommandosteuerung eines Manipulators
US8417755B1 (en) 2008-05-28 2013-04-09 Michael F. Zimmer Systems and methods for reducing memory traffic and power consumption in a processing environment by solving a system of linear equations
US8060250B2 (en) * 2008-12-15 2011-11-15 GM Global Technology Operations LLC Joint-space impedance control for tendon-driven manipulators
US8170718B2 (en) * 2008-12-18 2012-05-01 GM Global Technology Operations LLC Multiple priority operational space impedance control
US8525460B2 (en) * 2010-02-02 2013-09-03 GM Global Technology Operations LLC Architecture for robust force and impedance control of series elastic actuators
CN109240092B (zh) * 2018-11-30 2021-09-10 长春工业大学 基于多智能体可重构模块化柔性机械臂轨迹跟踪控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3344633A1 (de) * 1982-12-10 1984-06-14 Hitachi, Ltd., Tokio/Tokyo Verfahren und vorrichtung zur steuerung eines roboters
US5430643A (en) * 1992-03-11 1995-07-04 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Configuration control of seven degree of freedom arms

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159249A (en) * 1989-05-16 1992-10-27 Dalila Megherbi Method and apparatus for controlling robot motion at and near singularities and for robot mechanical design
US5550953A (en) * 1994-04-20 1996-08-27 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration On-line method and apparatus for coordinated mobility and manipulation of mobile robots

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3344633A1 (de) * 1982-12-10 1984-06-14 Hitachi, Ltd., Tokio/Tokyo Verfahren und vorrichtung zur steuerung eines roboters
US5430643A (en) * 1992-03-11 1995-07-04 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Configuration control of seven degree of freedom arms

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HU B ET AL: "Relation between global velocity and local torque optimization of redundant manipulators", JOURNAL OF ROBOTIC SYSTEMS, JUNE 1994, USA, vol. 11, no. 4, ISSN 0741-2223, pages 271 - 279, XP002105566 *
NADER SADEGH: "OPTIMAL KINEMATIC CONTROL OF CONSTRAINED AND REDUNDANT MANIPULATORS", PROCEEDINGS OF THE CONFERENCE ON DECISION AND CONTROL, TUCSON, DEC. 16 - 18, 1992, vol. 1, no. CONF. 31, 16 December 1992 (1992-12-16), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 620 - 625, XP000370144 *
SCHLEMMER M: "ON-LINE TRAJECTORY OPTIMIZATION FOR KINEMATICALLY REDUNDANT ROBOT -MANIPULATORS AND AVOIDANCE OF MOVING OBSTACLES", PROCEEDINGS OF THE 1996 INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION, MINNEAPOLIS, APR. 22 - 28, 1996, vol. 1, no. CONF. 13, 22 April 1996 (1996-04-22), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 474 - 479, XP000750250 *

Also Published As

Publication number Publication date
US6081754A (en) 2000-06-27
DE19703915C1 (de) 1998-08-06
FR2761292B1 (fr) 2000-06-16

Similar Documents

Publication Publication Date Title
FR2764838A1 (fr) Procede de commande d&#39;un manipulateur
FR2761292A1 (fr) Procede de commande de guidage interactif, sur trajectoire, d&#39;un manipulateur a redondance cinematique
CN101738721B (zh) 一种消除哈特曼波前传感器系统误差的自适应光学成像系统
Chevallereau et al. A new method for the solution of the inverse kinematics of redundant robots
CN109426147B (zh) 捕获卫星后组合航天器的自适应增益调整控制方法
RU95121445A (ru) Компенсация гравитационного градиента спутника с использованием переориентации солнечных батарей на орбите
EP3257755B1 (fr) Procede de reglage du positionnement d&#39;elements d&#39;une structure d&#39;un aeronef et dispositif pour sa mise en oeuvre
Marey et al. New strategies for avoiding robot joint limits: Application to visual servoing using a large projection operator
CN112405525B (zh) 奇异位置规避方法、系统、设备及计算机可读存储介质
CN116000941A (zh) 一种带有输出约束的机械臂系统的固定时间控制方法
Allotta et al. Kinematic control of robots with joint constraints
Sharkey et al. On the kinematics of robot heads
JPS59220806A (ja) 工業用ロボツトの制御方法
Wang et al. An efficient algorithm for global optimization in redundant manipulations
Yang et al. Research on gravity compensation in motion control of multi-joint robot
JPH10329066A (ja) 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法
CN105372807A (zh) 天文光学望远镜主镜侧支撑的一种H-β复合优化法
Papadopoulos et al. Trajectory planning and control for mobile manipulator systems
Cvetković et al. Contribution to controlling non-redundant manipulators
Bagci Synthesis of Linkages to Generate Specified Histories of Forces and Torques: The Planar 4R Four-Bar Mechanism
Yang et al. An adaptive force control method for 7-dof space manipulator repairing malfunctioning satellite
Nicosia et al. A PD control law for trajectory tracking of flexible joint robots
Khalil et al. An efficient algorithm for the calculation of the filtered dynamic model of robots
Zhang et al. Tractable algorithm for robust time-optimal trajectory planning of robotic manipulators under confined torque
CN107443372B (zh) 一种面向机器人降级使用的运动规划方法

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20060929