TP2 - MIS - Université de Picardie Jules Verne

publicité
Promeo - Université de Picardie Jules Verne
LPro Automatisme et Robotique
2015-2016
Initiation à la Robotique
TP2 - Robotics Toolbox
Durée: 3h + 1h pour le compte rendu
Le but de ce deuxième TP est de découvrir la boîte à outils Robotics Toolbox, créée par
Peter Corke (Queensland University of Technology, Australia), pour l'analyse de robots
industriels et mobiles: www.petercorke.com/Robotics_Toolbox.html
Un compte rendu avec les méthodes proposées ainsi que les résultats intermédiaires est à
rendre à la fin de la séance par chaque étudiant. Il est à noter que du simple code n’est pas un
compte rendu: commentez vos fonctions et motivez vos choix dans votre rapport final.
Attention: Sélectionner la version à 64 bits au démarrage de Windows.
Introduction
Le Robotics Toolbox (RT) est une boîte à outils Matlab qui fournit de nombreuses
fonctions utiles à l'étude et à la simulation de robots industriels (modélisation géométrique,
cinématique et dynamique, génération de trajectoires, etc.) avec une méthode de
représentation très générale. Le RT supporte aussi les robots mobiles (modèle de type
unicycle, véhicule, etc.) avec plusieurs algorithmes disponibles pour la planification de
chemin, la localisation, la création de cartes, la localisation et la cartographie simultanées.
La liste des fonctions du RT est disponible dans le fichier « robot.pdf »
(rvctools/robot/robot.pdf) et sur le web: www.petercorke.com/RTB/r9/html/index_alpha.html
Pour utiliser le RT, téléchargez le dossier « robot-9.9.zip » sur le site web, copiez le
répertoire « rvctools» dans votre espace de travail et lancez le fichier de démarrage
« startup_rvc.m » qui placera les bons répertoires dans votre chemin Matlab. La démo
« rtbdemo » montre les fonctionnalités principales du RT.
Exercice 1 : Définition de matrices de rotation et de transformation rigide [7 pts]
•
Déterminer les fonctions du RT qui permettent de définir le matrices de rotations
élémentaires 3 × 3 autour des axes x, y et z.
•
Déterminer les fonctions du RT qui permettent de visualiser le repère associé à une
matrice de rotation tridimensionnelle R générique donnée et de créer une animation du
mouvement rotationnel. Décrire les différentes options disponibles pour ces fonctions.
•
Décrire toutes les fonctions du RT qui permettent de définir une matrice de
transformation homogène T (de taille 4 × 4). Montrer l'utilisation de ses fonctions
pour la définition de la matrice de transformation homogène suivante:
Fabio Morbidi
Page 1/3
Promeo - Université de Picardie Jules Verne
LPro Automatisme et Robotique
⎡
⎢ Rx ( π4 )Ry (− π3 )
T=⎢
⎣
0 0 0
2015-2016
Initiation à la Robotique
⎤
1
0 ⎥
⎥
1 ⎦
1
Exercice 2 : Création d'un robot manipulateur [9 pts]
•
Décrire la fonction du RT qui permet de représenter le segment d'un robot à chaîne
cinématique ouverte simple, grâce aux quatre paramètres de Denavit-Hartenber.
Une fois le segment défini, montrer comme récupérer les différents paramètres et
méthodes qui lui ont été associés.
•
Considérez le robot planaire à 2 DDL (RR) montré dans la Fig. 1 ci-dessous. Définir
ce robot à travers un constructeur « SerialLink » avec a1 = 0.8 m et a2 = 1 m.
Préciser les différentes informations qui sont retournéespar ce constructeur.
•
Calculer le modèle géométrique direct du robot avec la fonction « fkine » pour
[θ1, θ2]T = [0, 0]T et [θ1, θ2]T = [π/4, −π/4]T et visualiser dans les deux cas la posture
3D du robot.
•
Répéter les points précédents pour un robot planaire à 3 DDL (RRP) avec a1 = 0.8 m
et a2 = 1 m et [θ1, θ2, d3]T = [π/6, π/4, 0.3]T.
•
Lancer maintenant le script « mdl_puma560 ». De quel robot s'agit-t-il ? Quelles
sont ces caractéristiques principales ? Visualiser la posture du robot dans les cas
suivants:
a) [0, 0, 0, 0, 0, 0]T "angle zéro", b) [0, π/2, −π/2, 0, 0, 0]T "prêt",
c) [0, 0, −π/2, 0, 0, 0]T "étendu", d) [0, π/4, −π, 0, π/4, 0]T "nominal".
Figure 1 : Robot planaire à 2 DDL.
Fabio Morbidi
Page 2/3
Promeo - Université de Picardie Jules Verne
LPro Automatisme et Robotique
2015-2016
Initiation à la Robotique
Exercice 3 : Création et déplacement d'un robot mobile [4 pts]
Utiliser la classe « Vehicle », qui simule un robot mobile de type véhicule (ou "car-like"
en anglais), pour créer un robot, le déplacer suivant une trajectoire aléatoire et récupérer sa
position instantanée (voir la Fig. 2 ci-dessous).
•
Créer un robot appelé "veh" avec une matrice de covariance odométrique
P=
0.1
0
0
0.1
et afficher son état initial. La matrice P représente l'incertitude associée à
l'estimation de la position du robot.
•
Utiliser la fonction « update » pour appliquer une vitesse linéaire de 0.2 m/s
avec une orientation de 0.1 rad pour un pas de temps. Afficher la nouvelle position
du robot.
•
Attacher un pilote (« driver ») au robot pour le faire déplacer suivant une
trajectoire aléatoire dans une région -10 < x < 10 mètres, -10 < y < 10 mètres.
•
Visualiser le mouvement du robot pour 1000 instants, en utilisant l’option
« run », et récupérer la position et orientation [x, y, θ]T du robot (voir la Fig. 2).
Figure 2 : Robot mobile de type véhicule.
Fabio Morbidi
Page 3/3
Téléchargement