tp1_sujet.pdf

4

Click here to load reader

Upload: imed-barca

Post on 11-Aug-2015

36 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TP1_sujet.pdf

TP Robotique 1

Travaux Pratiques de RobotiqueMaster 2 - IPST

Robot plan a 3 degres de liberte

Introduction

On dispose du robot plan decrit par la figure 1. Ce robot possede 3 axes rotoıdes paralleles.C’est un robot a 3 degres de liberte : 2 pour le positionnement x, y et un pour l’orientation θ dela pince. Les dimensions utiles sont egalement indiquees sur la figure.

Ce cas est tres similaire a l’exemple traite en cours du robot PRR a 3 degres de

liberte, en particulier pour le calcul du modele geometrique inverse.Ce robot a ete simule sous matlab. Telecharger les sources a l’adresse suivante :

http://eavr.u-strasbg.fr/wiki/index.php/Robotique\_de\_manipulation. Ouvrir le fichiersimulink tp.mdl. En lancant la simulation avec start dans le menu simulation, vous obtenez lafigure 2.

Fig. 1 – Schema filaire du robot.

Inversion du modele geometrique

On desire saisir un objet place dans l’espace de travail du robot. Soit q = [q1 q2 q3]T le vecteur des

coordonnees articulaires et X = [x1 x2 x3]T = [x y θ]T le vecteur des coordonnees operationnelles

avec (x, y) les coordonnees du centre de la pince dans le repere de base et θ l’angle d’orientationde l’organe terminal dans le repere de reference. Pour saisir l’objet, il faut deplacer la pince a laposition X0 = [0.7 0.5 0]T .

Q1 : Calculer le modele geometrique direct (MGD) du robot en utilisant la convention de DHmodifiee pour le parametrer (meme si ce cas simple peut se resoudre directement). Privilegier l’ori-entation “avant, droit et haut” des axes.Completer ainsi le fichier mgd.m avec votre modele.

Q2 : Inverser le modele geometrique pour obtenir le modele geometrique inverse (MGI) etdeterminer les coordonnees articulaires q0 pour deplacer la pince en X0. Pour l’inverser, on pourracalculer la position px et py du point O3 en fonction de x(1), x(2) et q(3). On resout ensuite lesysteme px = f(q1, q2) et py = f(q1, q2) de maniere similaire a celle vue en cours pour le robotPRR.

Page 2: TP1_sujet.pdf

TP Robotique 2

Fig. 2 – Simulateur du robot sous simulink.

Completer alors le fichier mgi.m avec votre modele.

Verifier vos resultats a l’aide du simulateur, en initialisant les 3 blocs constants avec les valeursdes coordonnees articulaires. Si votre resultat est exact, l’objet doit disparaıtre.

Inversion du modele cinematique

Sous simulink, ouvrir le fichier tp2.mdl. Il contient le modele decrit par la figure 3. Un blocintegrateur est rajoute dans le but de pouvoir controler les vitesses articulaires du robot. La positioninitiale du robot peut etre definie en imposant des conditions initiales pour cet integrateur (parex. [0 0 0] dans le champ Initial condition).

Le bloc Jacobien inverse simule le Jacobien inverse du robot (MCI). Ce bloc fait appel a lafonction jacob.m qui se trouve dans le repertoire courant.

Robot

Robot commandé en vitesse en vitesse operationnelle

Fig. 3 – Simulateur d’un robot commande en vitesse operationnelle (cartesienne) : q = MCI(q).Xou q = J−1(q).X

Q3 : Calculer le Jacobien direct de ce robot (MCD) en utilisant la methode systematique ducours (que l’on pourra verifier en derivant par rapport au temps le MGD).

Page 3: TP1_sujet.pdf

TP Robotique 3

Completez le calcul du Jacobien direct laisse blanc dans le fichier jacob.m . Analyser le reste dufichier et commentez.

Pour que les modifications apportees a jacob.m soient prises en compte par matlab,

il est necessaire d’executer la commande help jacob avant de lancer la simulation ou

de reouvrir la simulation.

Verifiez votre Jacobien en simulant un deplacement vertical a la vitesse de -0,01 m/s en partantdu point q0 determine au paragraphe 1.

Q4 : Configurez la valeur de Stop time a 100 dans les parametres de simulation. Initialisezla position initiale a [0 0 0] et la vitesse de deplacement a [−0.01 0 0] (vitesse de 1 cm/s vers lagauche). Lancez la simulation. Commentez. Initialisez la position initiale a [0.001 − 0.001 0] et lavitesse de deplacement a [−0.01 0 0]. Simulez. Commentez.Note : On pourra evaluer le determinant du Jacobien pour q = [0 0 0].

Q4(bis) : Calculer de maniere analytique le determinant du Jacobien direct avec les instructionssuivantes (syms q1 q2 q3;det(J)). Pour quelles valeurs de q, celui-ci est nul ? En deduire lesconsequences sur les vitesses operationnelles du robot, X = J(q)q ? Visualisez ce phenomene endessinant le robot ainsi que les vecteurs vitesses instantanees pour 2 valeurs particulieres de q.Mettre en place une strategie basique d’evitement de la singularite du Jacobien : exemple, si q estsingulier en 0, on modifiera q dans le calcul du jacobien pour passer a une distance minimale (ǫ)de la valeur singuliere (if abs(q) < 0 , q → q + ǫ).

Inversion numerique du modele geometrique

Parfois il n’est pas possible de calculer de maniere analytique le modele geometrique inversed’un robot. On peut alors utiliser le modele geometrique direct et le jacobien inverse pour realiserune boucle d’optimisation afin d’obtenir une solution particuliere (la plus proche). Cet boucled’optimisation est illustree sur la figure 4.

MGD

K−+

Robot commandéen vitesse opérationnelle

X q

J−1

Xdesire ∆X X

Fig. 4 – Principe d’inversion numerique du modele geometrique

Le principe consiste a calculer au cours du temps le vecteur d’erreur ∆X entre la positionactuelle de l’effecteur et la position desiree (celle de l’objet). Ce vecteur d’erreur est assimile a unedirection de deplacement avec une vitesse de norme K ∗ ∆X. Grace au MCI (jacobien inverse),on actionne les axes pour deplacer le robot dans cette direction. On arrete l’algorithme lorsquel’erreur de position ∆X est inferieure a un certain seuil. On peut alors relever la valeur finale duvecteur q solution.

Q5 : Simuler un algorithme d’inversion numerique du modele geometrique en creant un nouveaumodele simulink a partir de tp2.mdl . La position initiale est q = [0 0 0]T et la position finale estX0 = [0.7 0.5 0]T . L’algorithme a converge lorsque la piece disparaıt.

Q6 : Quels inconvenients voyez vous a cette resolution numerique du modele geometrique in-verse ?

Q7 : Definir une trajectoire, fonction du temps, telle que la pince decrive un cercle de centre(0, 0) et de rayon 0.5m et pointe en permanence vers le centre du cercle. On utilisera le schema decommande precedent et une fonction trajectoire.m avec un bloc horloge en entree.

Page 4: TP1_sujet.pdf

TP Robotique 4

Examen

– Documents autorises : notes de cours, TD et TP– Examen sur le theme d’un robot 3 axes– Conseils :

– Travailler les transparents delivres– Maitriser un minimum la composition de rotations et matrices homogenes de pasage :

R0,n = R0,x Rx,n et T0,n = T0,x Tx,n

– Travailler le modele geometrique et cinetique direct (revoir le TD (meme si il ne respectel’orientation avant-droite-haut), le TP et le TD annexe A)

– Apprendre a visualiser ou dessiner la position ou la vitesse instantannee de l’OT pour desvaleurs specifiques de q pour valider vos modeles directs.

– Se tester avec le TD annexe A