39 0 265KB
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l’Enseignement Supérieur et de la Recherche Scientifique UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D'ORAN MOHAMED BOUDIAF FACULTE DE GENIE ELCTRIQUE DEPARTEMENT D’AUTOMATIQUE
2ère année Master AII Module : TP n°2 de Robotique
Année : 2021 - 2022 M-R - BENACHENHOU
TP n°2 Modèle géométrique d’un robot manipulateur Modèle géométrique direct : 1. Décrire la fonction de la Toolbox Robotics and control qui permet de représenter le segment d'un robot à chaîne cinématique ouverte simple, grâce aux quatre paramètres de Denavit-Hartenberg. 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. 2. Considérez le robot planaire à 2 DDL (RR) montré dans la Figure 1 ci-dessous. Définir ce robot à travers un constructeur « SerialLink » avec 𝑎1 = 0.8 𝑚 et 𝑎2 = 1 𝑚. Préciser les différentes informations qui sont retournées par ce constructeur (donner un nom à votre robot aussi tout cela dans un fichier script).
Figure 1 : Robot planaire à 2 DDL. •
Calculer le modèle géométrique direct du robot avec la fonction « fkine » (c’est une méthode appartenant à la classe d’objets SerialLink) pour [𝜃1 , 𝜃2 ]𝑇 = [0, 0] 𝑇 et [𝜃1 , 𝜃2 ]𝑇 = [𝜋/4, −𝜋/4]𝑇 et visualiser dans les deux cas la posture 3D du robot.
3. Répéter les points précédents pour un robot planaire à 3 DDL (RRP) avec 𝑎1 = 0.8 𝑚 et 𝑎2 = 1 𝑚 et [𝜃1 , 𝜃2 , 𝑑3 ] 𝑇 𝑇 = [𝜋/6, 𝜋/4, 0.3] 𝑇 .
1
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l’Enseignement Supérieur et de la Recherche Scientifique UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D'ORAN MOHAMED BOUDIAF FACULTE DE GENIE ELCTRIQUE DEPARTEMENT D’AUTOMATIQUE
2ère année Master AII Module : TP n°2 de Robotique
Année : 2021 - 2022 M-R - BENACHENHOU
4. Lancer maintenant le script « mdl_cobra600 ». De quel robot s'agit-t-il ? Quelles sont ces caractéristiques principales ? Visualiser la posture du robot dans le cas suivant : [0, 0, 0, 0] 𝑇 "angle zéro", 5. 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]𝑇 "angle zéro", b) [0, 𝜋/2, −𝜋/2, 0, 0, 0] 𝑇 "prêt", c) [0, 0, −𝜋/2, 0, 0, 0] 𝑇 "étendu", d) [0, 𝜋/4, −𝜋, 0, 𝜋/4, 0]𝑇 "nominal".
Remarque : • •
Aidez-vous des fonctions de la toolbox : Link, SerialLink, PrismaticMDH, RevoluteMDH, fkine. Par défaut les paramètres de Denavit-Hartenberg ne sont pas ceux étudiés dans le cours. Pour pouvoir utilisés ces derniers vous devez utiliser les paramètres de DenavitHartenberg modifiés dans la toolbox. (MDH).
2
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l’Enseignement Supérieur et de la Recherche Scientifique UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D'ORAN MOHAMED BOUDIAF FACULTE DE GENIE ELCTRIQUE DEPARTEMENT D’AUTOMATIQUE
2ère année Master AII Module : TP n°2 de Robotique
Année : 2021 - 2022 M-R - BENACHENHOU
Modèle géométrique Inverse: La fonction fkine permettait de calculer la pose de l’effecteur en fonction des angles articulaires. Un problème d’intérêt pratique réel est le problème inverse : étant donné la pose souhaitée de l’organe terminal, quelles sont les coordonnées articulaires requises ? Nous allons commencer par le modèle géométrique inverse de façon symbolique pour le robot planaire de 2 DLL avec la Toolbox : import ETS2.* a1 = 0; a2 = 0.8; E = Rz('q1') * Tx(a1) * Rz('q2') * Tx(a2) syms q1 q2 real TE = E.fkine( [q1, q2] ) syms x y real e1 = x == TE.t(1) e2 = y == TE.t(2) [s1,s2] = solve( [e1 e2], [q1 q2] ) •
Expliquez en détail ce que fait le script au-dessus.
1. Calculer le modèle géométrique inverse du robot à 2DDL vu précédemment (première partie du TP) pour une pose de (x =0.6, y =0.7). 2. Calculer le modèle géométrique inverse du robot Cobra 600 pour une posture de (𝑥 = 0.4, 𝑦 = −0.3, 𝑧 = 0.2, 𝜃𝑥 = 30°, 𝜃𝑦 = 40° 𝜃𝑧 = 160° 3. Calculer le modèle géométrique inverse du robot Puma 560 pour la position dite « nominale » (vue dans la première partie du TP).
Remarque : Les méthodes utilisées sont ikine et ikine6s. La pose pour le modèle géométrique inverse dois être donnée sous forme de matrice de transformation homogène. Exemple : T = SE3(x, y, z) * SE3.rpy(𝜃𝑥 , 𝜃𝑦 , 𝜃𝑧 , 'deg').
3