Vous êtes sur la page 1sur 19

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique


Université des Frères Mentouri Constantine 1,
Faculté des Sciences de la Technologie,
Département d’Electronique

Modélisation et commande des Robots de


manipulation
Introduction et fondement mathématique

Company
LOGO Master 2 AII
Automatique et Informatique Industrielle
1. Introduction

1.1 degré de liberté

• Degré de liberté: C’est le nombre des coordonnées


indépendantes nécessaires pour une description complète de la
position de la masse.
Exemple: DDL d’une masse

1DDL
1DDL 1DDL

3DDL 2DDL

3DDL

27/12/2020 2
1. Introduction

1.1 degré de liberté

En robotique on s’intéresse pas à la masse mais à des corps rigides . Si on


associe à un solide S le repère R(X,Y,Z), les trois translations selon les axes
X, Y et Z représentent trois 3 DDL et les trois rotations selon les mêmes axes
représentent 3 autres DDL. Donc un corps rigide dans l’espace possède 6
DDL; 3 translations et 3 rotations

𝑅3 𝑍

𝑇3
𝑇2 𝑅2
𝑌

𝑅1
27/12/2020 𝑋 3
1. Introduction

1.1 degré de liberté


Un robot est composé de véhicule (base mobile) , bras et organe terminal.

Véhicule Bras Organe terminal


Déplacement Positionnement Orientation effecteur :3DLL
sphérique : 6DLL effecteur: 3DLL

Un robot manipulateur universel à poste fixe (pas de véhicule) possède 6DDL


qui le permettent de positionner et orienter l’organe terminal

27/12/2020 4
1. Introduction

1.2 positionnement d’un corps solide

Un corps solide est représenté dans l’espace par une position et une orientation par
rapport à un repère de référence. 𝑍′
𝑍 𝑌′
𝑦′
𝑧′
Repère de 𝑂′ 𝑅′
𝑅
référence 𝑥′ Repère attaché
𝑧
au corps
𝑥 𝑂 𝑦 𝑌
𝑋′

𝑥𝑅′ = 𝑥 ′ . 𝑥 + 𝑥 ′ . 𝑦 + 𝑥 ′ . 𝑧
Cosinus
𝑦𝑅′ = 𝑦 ′ . 𝑥 + 𝑦 ′ . 𝑦 + 𝑦 ′ . 𝑧 directeurs
𝑧𝑅′ = 𝑧 ′ . 𝑥 + 𝑧 ′ . 𝑦 + 𝑧 ′ . 𝑧
Produit scalaire:
𝑎. 𝑏 = 𝑎 𝑏 𝑐𝑜𝑠𝜃

27/12/2020 5
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation dans un plan
𝑦0
On représente 𝑥1 et 𝑦1 dans le 𝑦1
plan 𝑂𝑥0 𝑦0 comme suit: 𝑥1

𝑥 𝑐𝑜𝑠𝜃 −𝑦1 𝑠𝑖𝑛𝜃


𝑥10 = 1 𝑦10 =
𝑥1 𝑠𝑖𝑛𝜃 𝑦1 𝑐𝑜𝑠𝜃
𝜃
𝑥0
𝑂
𝑥1 𝑐𝑜𝑠𝜃 −𝑦1 𝑠𝑖𝑛𝜃
𝑅10 = 𝑥10 ⋮ 𝑦10 ⇒ 𝑅10 =
𝑥1 𝑠𝑖𝑛𝜃 𝑦1 𝑐𝑜𝑠𝜃

𝑐𝑜𝑠𝜃 −𝑠𝑖𝑛𝜃
Comme 𝑥1 et 𝑦1 vecteurs unitaires: 𝑅10 =
𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃

27/12/2020 6
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation dans un plan
𝑦0
On écrit aussi 𝑦1
𝑥1 . 𝑥0 𝑦1 . 𝑥0
0
𝑥1 = 𝑥 . 𝑦 et 𝑦10 = 𝑦 .𝑦 𝑥1
1 0 1 0

𝑥1 . 𝑥0 𝑦1 . 𝑥0 Cosinus
𝑅10 = 𝑥10 ⋮ 𝑦10 ⇒ 𝑅10 = 𝑥 .𝑦 𝑦1 . 𝑦0 directeurs 𝜃
1 0
𝑥0
𝑂
Pour représenter 𝑅0 par rapport à 𝑅1
𝑥0 . 𝑥1 𝑦0 . 𝑥1 𝑥1 . 𝑥0 𝑥1 . 𝑦0
𝑅01 = 𝑥01 ⋮ 𝑦01 ⇒ 𝑅01 = 𝑥 . 𝑦 𝑦 . 𝑦 = 𝑦 . 𝑥 𝑦1 . 𝑦0
0 1 0 1 1 0

⇒ 𝑅01 = 𝑅10 𝑇
𝐴
En général: 𝑅0 𝑅1 𝑅10 𝑇
= 𝑅01 −1

𝐴−1

27/12/2020 7
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation en 3 dimension
𝑧0 , 𝑧1
𝑥1 𝑥0 𝑦1 𝑥0 𝑧1 𝑥0
𝑅10 = 𝑥1 𝑦0 𝑦1 𝑦0 𝑧1 𝑦0
𝑥1 𝑧0 𝑦1 𝑧0 𝑧1 𝑧0

Exemple 𝑦1
𝑂 𝜃
𝑦1 . 𝑥0 = −𝑠𝑖𝑛𝜃 𝜃
𝑥1 . 𝑥0 = 𝑐𝑜𝑠𝜃 𝑥0 𝑦0
𝑥1 . 𝑦0 = 𝑠𝑖𝑛𝜃 𝑦1 . 𝑦0 = 𝑐𝑜𝑠𝜃
𝑧1 . 𝑧0 = 1 𝑥1
𝑐𝑜𝑠𝜃 −𝑠𝑖𝑛𝜃 0 Matrice de rotation sur
𝑅10 = 𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃 0 l’axe Z avec un angle 𝜃
0 0 1 𝑅𝑍,𝜃

27/12/2020 8
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation en 3 dimension
𝑥1 𝑥0 𝑦1 𝑥0 𝑧1 𝑥0 𝑧0 , 𝑧1
𝑅10 = 𝑥1 𝑦0 𝑦1 𝑦0 𝑧1 𝑦0
𝑥1 𝑧0 𝑦1 𝑧0 𝑧1 𝑧0

De la même façon on obtient


1 0 0 Matrice de rotation 𝑦1
𝑅𝑋,𝜃 = 0 𝑐𝑜𝑠𝜃 −𝑠𝑖𝑛𝜃 sur l’axe X avec un 𝑂 𝜃
0 𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃 angle 𝜃
𝜃
𝑥0 𝑦0
𝑐𝑜𝑠𝜃 0 𝑠𝑖𝑛𝜃 Matrice de rotation
𝑅𝑌,𝜃 = 0 1 0 sur l’axe Y avec un 𝑥1
−𝑠𝑖𝑛𝜃 0 𝑐𝑜𝑠𝜃 angle 𝜃

Propriétés 1 0 0 −1
𝑅𝑋,0 = 𝑅𝑌,0 = 𝑅𝑍,0 =𝐼= 0 1 0 , 𝑅𝑍,𝜃 = 𝑅𝑍,−𝜃
0 0 1
27/12/2020 9
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation en 3 dimension
Activité:
Les repères 𝑅0 et 𝑅1 sont orientés comme il est indiqué dans la figure.
1. Donner la matrice de transformation qui représente 𝑅1 dans 𝑅0 .
2. Définir les rotations effectuées pour passer de 𝑅0 à 𝑅1 𝑧0
𝑥1 𝑥0 𝑦1 𝑥0 𝑧1 𝑥0 𝑥1
𝑅10 = 𝑥1 𝑦0 𝑦1 𝑦0 𝑧1 𝑦0
𝑥1 𝑧0 𝑦1 𝑧0 𝑧1 𝑧0

2 2 𝑥0 45°
0
2 2 𝑂
= 0 0 1 𝑧1
2 2 𝑦0
− 0
2 2 𝑦1
Rotation sur 𝑥0 d’un angle de −𝜋/2 suivie d’une rotation sur 𝑧0 ′ de − 𝜋/4
27/12/2020 10
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: transformation des rotations
Soit un corps solide et 𝑅1 un repère attaché à ce corps avec 𝑃1 les coordonnées de
𝑃 dans 𝑅1 tel que 𝑃1 = 𝑎; 𝑏; 𝑐 𝑧0 𝑦1
Donc: 𝑃 = 𝑎. 𝑥1 +𝑏. 𝑦1 + 𝑐. 𝑧1 𝑧1
Pour exprimer 𝑃 dans 𝑅0 on peut écrire: 𝑃 𝑥1
𝑃. 𝑥0
0
𝑃 = 𝑃. 𝑦0 , projection de 𝑃 dans 𝑅0
𝑃. 𝑧0
(𝑎. 𝑥1 +𝑏. 𝑦1 + 𝑐. 𝑧1 ). 𝑥0
𝑃0 = (𝑎. 𝑥1 +𝑏. 𝑦1 + 𝑐. 𝑧1 ). 𝑦0
𝑦0
𝑂
(𝑎. 𝑥1 +𝑏. 𝑦1 + 𝑐. 𝑧1 ). 𝑧0 𝑥0

𝑎. 𝑥1 . 𝑥0 +𝑏. 𝑦1 . 𝑥0 +𝑐. 𝑧1 . 𝑥0 𝑥1 . 𝑥0 𝑦1 . 𝑥0 𝑧1 . 𝑥0 𝑎
𝑃0 = 𝑎. 𝑥1 . 𝑦0 +𝑏. 𝑦1 . 𝑦0 +𝑐. 𝑧1 . 𝑦0 = 𝑥1 . 𝑦0 𝑦1 . 𝑦0 𝑧1 . 𝑦0 . 𝑏
𝑎. 𝑥1 . 𝑧0 +𝑏. 𝑦1 . 𝑧0 +𝑐. 𝑧1 . 𝑧0 𝑥1 . 𝑧0 𝑦1 . 𝑧0 𝑧1 . 𝑧0 𝑐

Matrice de transformation de Coordonnées


𝑅1 𝑝𝑎𝑟 𝑟𝑎𝑝𝑝𝑜𝑟𝑡 à 𝑅0 𝑃0 = 𝑅10 . 𝑃1 de 𝑃 dans 𝑅1

27/12/2020 11
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Rotation en 3 dimension
Activité:
Soit 𝜔0 un vecteur dont les coordonnées dans 𝑅0 sont 𝜔0 = 0; 1; 1 . Ce vecteur fait
une rotation de 𝜋/2 selon l’axe 𝑦0 . Donner les nouvelles coordonnées de ce vecteur.
𝑧0
cos 𝜋/2 0 sin 𝜋/2
𝑅𝑦0 ,𝜋/2 = 0 1 0 𝜔0
− sin 𝜋/2 0 cos 𝜋/2

𝜔0 ′ = 𝑅𝑦0,𝜋/2 . 𝜔0 90° 𝑦0
𝑂
0 0 1 0 1
𝜔0′ = 0 1 0 . 1 = 1
−1 0 0 1 0 𝑥0
𝜔′0
Coordonnée nulle sur 𝑧0

27/12/2020 12
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Composition des rotations
Soit P un point dans l’espace. 𝑃0 , 𝑃1 , 𝑃2 les coordonnées de P dans les repères
𝑅 0 , 𝑅1 , 𝑅 2 respectivement.
Donc:
𝑃0 = 𝑅10 . 𝑃1 (1) Remplaçant (2) dans (1)
1 2
1
𝑃 = 𝑅2 . 𝑃 (2) 𝑃0 = 𝑅10 . 𝑅21 . 𝑃2
𝑃0 = 𝑅20 . 𝑃2 (3) Donc:
𝑅20 = 𝑅10 . 𝑅21
Exemple: un repère R fait une rotation d’un angle 𝛼 sur son axe Y puis une autre
rotation d’un angle 𝛽 sur l’axe Z du repère obtenu. Donner la matrice de transformation
qui représente le dernier repère obtenu par rapport au repère initial.
𝑐𝑜𝑠𝛼 0 𝑠𝑖𝑛𝛼 𝑐𝑜𝑠𝜃 −𝑠𝑖𝑛𝜃 0
𝑅02
= 𝑅𝛼,𝑌 . 𝑅𝛽,𝑍 = 0 1 0 . 𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃 0
−𝑠𝑖𝑛𝛼 0 𝑐𝑜𝑠𝛼 0 0 1
𝐶𝛼 𝐶𝛽 −𝑆𝛼 𝑆𝛽 𝑆𝛼
𝑅02 = 𝑆𝛽 𝐶𝛽 0 Remarque: Il faut représenter les transformations selon
−𝑆𝛼 𝐶𝛽 −𝑆𝛼 𝑆𝛽 𝐶𝛼 la séquence de rotation ( respecter l’ordre)

27/12/2020 13
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: Composition des rotations
Soit P un point dans l’espace. 𝑃0 , 𝑃1 , 𝑃2 les coordonnées de P dans les repères
𝑅 0 , 𝑅1 , 𝑅 2 respectivement.
Donc:
𝑃0 = 𝑅10 . 𝑃1 (1) Remplaçant (2) dans (1)
1 2
1
𝑃 = 𝑅2 . 𝑃 (2) 𝑃0 = 𝑅10 . 𝑅21 . 𝑃2
𝑃0 = 𝑅20 . 𝑃2 (3) Donc:
𝑅20 = 𝑅10 . 𝑅21
Exemple: un repère R fait une rotation d’un angle 𝛼 sur son axe Y puis une autre
rotation d’un angle 𝛽 sur l’axe Z du repère obtenu. Donner la matrice de transformation
qui représente le dernier repère obtenu par rapport au repère initial.
𝑧1 𝛼 𝑧0 𝑧2 𝑧1 𝑧2 𝑧0

𝑥0 𝑦2 𝑥0
𝛼 𝑦2
𝛽 𝛽
𝑥1 𝑦0 𝑥1
𝑦1 𝑦1 𝑥2 𝑦0
𝑥2
27/12/2020 14
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: les angles d’Euler
On considère deux repères 𝑅0 (𝑂0 , 𝑥0 , 𝑦0 , 𝑧0 ) et 𝑅1 (𝑂1 , 𝑥1 , 𝑦1 , 𝑧1 ). L’orientation de 𝑅1 par
rapport à 𝑅0 peut être représentée par trois angles (𝜙, 𝜃, 𝜓) appelés angles d’Euler.
La représentation de l’orientation d’un repère par rapport à un autre, par les angles
d’Euler, est le résultat de trois transformations successives.

a. rotation d’un angle 𝜙 sur l’axe 𝑧0


b. rotation d’un angle 𝜃 sur l’axe 𝑦0 ′ (repère courant)
c. rotation d’un angle 𝜓 sur l’axe 𝑧0 ′′ (repère courant)

Donc: 𝑅01 = 𝑅𝑧,𝜙 × 𝑅𝑦,𝜃 × 𝑅𝑧,𝜓 = 𝑅𝑍𝑌𝑍

1 0 0 𝑐𝑜𝑠𝜃 0 𝑠𝑖𝑛𝜃 1 0 0
𝑅𝑍𝑌𝑍 = 0 𝑐𝑜𝑠𝜙 −𝑠𝑖𝑛𝜙 . 0 1 0 . 0 𝑐𝑜𝑠𝜓 −𝑠𝑖𝑛𝜓
0 𝑠𝑖𝑛𝜙 𝑐𝑜𝑠𝜙 −𝑠𝑖𝑛𝜃 0 𝑐𝑜𝑠𝜃 0 𝑠𝑖𝑛𝜓 𝑐𝑜𝑠𝜓

27/12/2020 15
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: les angles d’Euler
On considère deux repères 𝑅0 (𝑂0 , 𝑥0 , 𝑦0 , 𝑧0 ) et 𝑅1 (𝑂1 , 𝑥1 , 𝑦1 , 𝑧1 ). L’orientation de 𝑅1 par
rapport à 𝑅0 peut être représentée par trois angles (𝜙, 𝜃, 𝜓) appelés angles d’Euler.
La représentation de l’orientation d’un repère par rapport à un autre, par les angles
d’Euler, est le résultat de trois transformations successives.

a. rotation d’un angle 𝜙 sur l’axe 𝑧0


b. rotation d’un angle 𝜃 sur l’axe 𝑦0 ′ (repère courant)
c. rotation d’un angle 𝜓 sur l’axe 𝑧0 ′′ (repère courant)

Donc: 𝑅01 = 𝑅𝑧,𝜙 × 𝑅𝑦,𝜃 × 𝑅𝑧,𝜓 = 𝑅𝑍𝑌𝑍


𝑧0 ′ 𝑧0 𝑧0 ′′ 𝑧0 ′ 𝑧1
𝜃 𝑧0 ′′
𝑦1
𝑥0 𝑦0 ′ 𝑦0 ′
𝜙 𝜓
𝜙 𝑥0 ′
𝑥0 ′ 𝑦0 ′′ 𝑦0 ′′
𝑦0 𝜃 𝑥0 ′′
𝑥0 ′′ 𝜓𝑥
1
27/12/2020 16
1. Introduction

1.2 positionnement d’un corps solide


Représentation d’une rotation: les angles Roll, Pitch, Yaw
Une matrice de rotation R est décrit par une succession de rotation sur les trois axes
𝑥0 , 𝑦0 , 𝑧0 , respectivement, du repère initial 𝑧0
a. Yaw avec angle 𝜓 sur l’axe 𝑥0 Roll (Roulis)
b. Pitch avec angle 𝜃 sur l’axe 𝑦0
c. Roll avec angle 𝜙 sur l’axe 𝑧0
Yaw (Lacet)
𝑥0
Donc: Pitch (Tangage)
𝑅01 = 𝑅𝑧,𝜙 × 𝑅𝑦,𝜃 × 𝑅𝑥,𝜓 = 𝑅𝑋𝑌𝑍

𝑐𝑜𝑠𝜙 −𝑠𝑖𝑛𝜙 0 𝑐𝑜𝑠𝜃 0 𝑠𝑖𝑛𝜃 1 0 0


𝑦0
𝑅𝑋𝑌𝑍 = 𝑠𝑖𝑛𝜙 𝑐𝑜𝑠𝜙 0 . 0 1 0 . 0 𝑐𝑜𝑠𝜓 −𝑠𝑖𝑛𝜓
0 0 1 −𝑠𝑖𝑛𝜃 0 𝑐𝑜𝑠𝜃 0 𝑠𝑖𝑛𝜓 𝑐𝑜𝑠𝜓

NB: On inverse l’ordre lors de la multiplication des matrice car les transformation sont faites par
rapport à un repère fixe (non par rapport au repère courant)

27/12/2020 17
1. Introduction

1.3 le mouvement rigide

Un mouvement rigide est une association d’une translation pure et une rotation pure

𝑃0 = 𝑅10 . 𝑃1 + 𝑑10
Coordonnées de 𝑃 Dans 𝑅0 Translation de 𝑅1 par rapport à 𝑅0
Coordonnées de 𝑃 Dans 𝑅1
Rotation de 𝑅1 Par rapport 𝑅0

On considère les deux mouvements rigides suivants :


Remarque: Si le nombre des
𝑃 = 𝑅10 . 𝑃1 + 𝑑10
0
(4) mouvements est important la
représentation devient de plus en
𝑃1 = 𝑅21 . 𝑃2 + 𝑑21 (5)
plus complexe. Pour cela
Le mouvement équivalent est: l’utilisation des transformation
𝑃0 = 𝑅10 𝑅21 . 𝑃2 + 𝑑21 + 𝑑10 homogène est devenue
indispensable.
𝑃0 = 𝑅10 . 𝑅21 . 𝑃2 + 𝑅10 . 𝑑21 + 𝑑10
Comme le mouvement résultant est rigide, on peut donc écrire:
𝑃0 = 𝑅20 . 𝑃2 + 𝑑20 avec: 𝑅20 = 𝑅10 . 𝑅21 et 𝑑20 = 𝑅10 . 𝑑21 + 𝑑10
27/12/2020 18
1. Introduction

1.4 Les transformations Homogènes

La transformation homogène permet de représenter les rotations et les translation


avec une seule matrice 4 × 4.
𝑅 ⋮ 𝑃
𝐻= ⋯ ⋮ ⋯
0 ⋮ 1
𝑃𝑥 Déplacement selon x
𝑅: Matrice de rotation 3 × 3 𝑑 = 𝑃𝑦 Déplacement selon y
𝑃: Vecteur de translation 3 × 1
𝑃𝑧 Déplacement selon z
Exemple:
1 0 0 𝑎 1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 𝑏 , 0 1 0 0 ,
𝑇𝑟𝑎𝑛𝑠𝑥,𝑎 = , 𝑇𝑟𝑎𝑛𝑠𝑦,𝑏 = 𝑇𝑟𝑎𝑛𝑠𝑧,𝑐 =
0 0 1 0 0 0 1 0 0 0 1 𝑐
0 0 0 1 0 0 0 1 0 0 0 1
1 0 0 0 𝐶𝛽 0 𝑆𝛽 0 1 0 0 0
0 𝐶𝜃 −𝑆𝜃 0 0 𝐶𝜑 −𝑆𝜑 0
𝑅𝑜𝑡𝑥,𝜃 = , 𝑅𝑜𝑡𝑦,𝛽 = 0 1 0 0 , 𝑅𝑜𝑡𝑧,𝜑 = ,
0 𝑆𝜃 𝐶𝜃 0 −𝑆𝛽 0 𝐶𝛽 0 0 𝑆𝜑 𝐶𝜑 0
0 0 0 1 0 0 0 1 0 0 0 1
27/12/2020 19

Vous aimerez peut-être aussi