REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON
Paix – Travail – Patrie Peace – Word - Fatherland
****** ******
MINISTERE DE L’ENSEIGNEMENT MINISTRY OF HIGHER EDUCATION
SUPERIEURE ******
****** THE UNIVERSITY OF DOUALA
UNIVERSITE DE DOUALA
LABORATOIRE DES TECHNOLOGIES ET SCIENCES APPLIQUEES
OPTION : EEAT
COMMANDE (OPTIMALE STOCHASTIQUE,
SYSTEMES ROBOTIQUES ET PAR ORDINATEUR)
Enseignant :
Pr BOUM ALEXANDRE
MODELING, SIMULATION AND CONTROL
OF 2-R ROBOT
Rédigé par:
EKELLE CATHERINE MARIER NOEL
Année académique
2020/2021
Modeling, Simulation and Control of 2 – R Robot
1. Formulation du problème
a. Spécification du Robot
Soit le schéma ci-dessous tel que :
Figure 1.1 – Robot 2-R à deux articulations
x 1=L1 sin ( θ 1 ) ; y 1= L1 cos (θ1 ) (1)
x 2=L1 sin ( θ 1 ) + L2 sin ( θ 1+θ 2 ) ; y 2=L1 cos ( θ 1 )+ L2 cos ( θ 1+ θ2 ) (2)
Avec L1 = 1m ; L2 = 1m ; m1 = 1kg ; m2 = 1kg ; θ1 est l’angle de rotation du joint 1 ; θ2 est
l’angle de rotation du joint 2 ;
b. Cinématique du Robot
A l’état initial (t = 0s), le robot se trouve à l’état horizontal c’est-à-dire à la position x 0. La
représentation de Denavit Hartenberg permet de visualiser la position du robot en 3D (figure
1.2). Les paramètres (D-H) pour le robot 2-R sont les suivants :
Tableau 1.1 – Paramètres (D-H) du robot 2-R
1 sur 13
Modeling, Simulation and Control of 2 – R Robot
Figure 1.3 – Position initiale du robot 2-R
2. Equations dynamiques
L’énergie cinétique (KE) et l’énergie potentielle (PE) du système sont les suivantes :
1 1 1 1
KE= m 1 ẋ1 + m1 ẋ 2 + j 1 ω1 + j 2 ω2
2 2 2 2
1 2 1
KE= m 1 l1 θ̇1 + m2 ¿ ¿ (3)
2 2
PE=m1 g l 1 sin θ1 +m2 g ¿ (4)
Nous pouvons donc définir le Lagrangien dynamique du système comme :
L = KE – PE
1 2 1
L= m1 l 1 θ̇1+ m2 ¿ ¿
2 2
L’équation d’Euler – Lagrange nous permet de déterminer l’équation du mouvement et elle
se définit comme suite :
( )
d ∂L
−
∂L
dt ∂ θ̇i ∂ θi
=M i (5)
Où Mi est la force généralisé.
2 sur 13
Modeling, Simulation and Control of 2 – R Robot
Appliquons l’équation (5) à l’équation (4), on a :
[ ][ ] []
2 2
m 1 l 1+ m 2 l 1 + j 1 m2 l 1 l 2 cos (θ 1−θ2 ) θ̈1 θ̇
2
−m1 gl 1 l 2 sin (θ ¿ ¿ 1−θ 2) 1 + [ (m ¿ ¿ 1l 1 +m2 l 1 )gcos θ1 ¿ m2 g l 2 cos
m1 l 1 l 2 cos (θ1−θ 2) m2 l2 + j1 θ̈2 θ̇2
(6)
La forme générale est :
H ( q̈ )+C ( q̇ , q )+ g ( q )=M
3. Contrôleur PID basé sur un modèle non linéaire
Le modèle non linéaire du système passe par son modèle d’état. Il est donc important de
connaître le modèle d’état du système.
M 2 M 2 c2 c3 c6
θ̈2= − cos ( θ 1−θ2 ) + sin ( θ1−θ 2) θ̇ 2− cos θ2 (7)
c2 c5 c5 c5
[ c 1−
M2
c5
2
1
]
cos ( θ1−θ2 ) θ̈ =M 1−
M 2 c2
c5
cos ( θ 1−θ2 )−
c 2 c3
c5
cos ( θ1−θ2 ) sin ( θ1−θ2 ) θ̇2 +
c2 c6
c5
cos ( θ1−θ 2 ) cos θ̇1−c 4 c
(8)
Nous pouvons écrire le model d’état en utilisant la linéarisation autour du point d’équilibre :
−π −π
θ1= ; θ̇ 1=0 ; θ2= ; θ̇2=0 ; M 1=0; M 2=0
2 2
Nous obtenons le modèle linéarisé suivant en effectuant u développement en série de Taylor
des fonctions non linéaires en négligeant les termes d’ordre élevé :
[ ][ ]
0 0 1 0 0 0
0 0 0 1 0 0
A= B=
−0.4568 −0.6196 0 0 −0.4568 −0.6196
0.2485 −6.6174 0 0 0.2485 −6.6174
C=
[ 1 0 0 0
0 1 0 0
D=
] [ ]
0 0
0 0
3 sur 13
Modeling, Simulation and Control of 2 – R Robot
Figure 1.4 – Modèle Simulink du modèle linéarisé
Figure 1.5 – Réponse dynamique du lien 1 (model linéarisé)
Figure 1.6 – Réponse dynamique du lien 2 (model linéarisé)
4 sur 13
Modeling, Simulation and Control of 2 – R Robot
Observation :
A partir du model linéarisé, on observe que le lien 1 met plus de temps pour atteindre la
précision.
Cela s’explique par le fait que pendant le mouvement du lien 1, le lien 2 se met aussi en
mouvement ce qui perturbe la rotation du lien 1. Il faut aussi noter que le lien 1 constitue la
base de rotation des deux liens et doit être contrôlé de façon à ce qu’il soit moins rapide que
le lien 2.
4. Contrôleur PID basé sur le modèle d’inventeur d’Autodesk
Le système robot 2 – R est conçu et développé à l’aide du programme Autodesk Inventor et
de Matlab/Simulink. Les spécifications du Robot sont prises en compte lors de la
modélisation. Le modèle conçu est directement transformé en modèle Simulink et représenté
ci-dessous :
Figure 1.7 – Diagramme Simulink pour le modèle Autodesk Inventor
5 sur 13
Modeling, Simulation and Control of 2 – R Robot
Le calcul a été faite à l’aide d’un algorithme d’optimisation PSO pour le calcul en temps réel
des paramètres des deux contrôleurs PID. Nous avons 6 variables à déterminer, on notre
k 1 , k 2 , k 3pour le deuxième contrôleur PID et k 4 , k 5 , k 6pour le premier contrôleur PID. Les
résultats à 10 itérations des paramètres des deux régulateurs PID sont les suivants :
Iteration# 1 Swarm.GBEST.O = 26.8075
Iteration# 1 Swarm.GBEST.X = 2.9275 9.8122 9.347 6.1197
9.8596 7.202
Iteration# 2 Swarm.GBEST.O = 26.8075
Iteration# 2 Swarm.GBEST.X = 2.9275 9.8122 9.347 6.1197
9.8596 7.202
Iteration# 3 Swarm.GBEST.O = 25.6848
Iteration# 3 Swarm.GBEST.X = 2.9203 10 9.70882 6.86006
9.42151 8.38766
Iteration# 4 Swarm.GBEST.O = 23.5464
Iteration# 4 Swarm.GBEST.X = 2.69681 6.81036 10 8.51596
10 8.03734
Iteration# 5 Swarm.GBEST.O = 23.4821
Iteration# 5 Swarm.GBEST.X = 1.44015 10 10 9.04146
10 7.34248
Iteration# 6 Swarm.GBEST.O = 23.0039
Iteration# 6 Swarm.GBEST.X = 1.58319 10 10 10
10 8.15698
Iteration# 7 Swarm.GBEST.O = 23.0039
Iteration# 7 Swarm.GBEST.X = 1.58319 10 10 10
10 8.15698
Iteration# 8 Swarm.GBEST.O = 22.786
Iteration# 8 Swarm.GBEST.X = 1.90232 10 10 10
10 8.10338
Iteration# 9 Swarm.GBEST.O = 22.7807
6 sur 13
Modeling, Simulation and Control of 2 – R Robot
Iteration# 9 Swarm.GBEST.X = 1.9501 9.73412 10 10
10 8.08754
Iteration# 10 Swarm.GBEST.O = 22.7807
Iteration# 10 Swarm.GBEST.X = 1.9501 9.73412 10 10
10 8.08754
Nous observons alors les graphes suivants :
Figure 1.9 – Réponse dynamique de la liaison 1
7 sur 13
Modeling, Simulation and Control of 2 – R Robot
Figure 1.10 – Réponse dynamique de la liaison 2
1. Contrôleur PID basé sur la linéarisation de rétroaction
Soit l’équation du système :
H ( q̈ )+C ( q̇ , q )+ g ( q )=M
q̈=H
−1
[−C ( q̇ , q )−g ( q ) ] + M
Pour concevoir le régulateur PID de retour, les signaux d’erreur sont supposés être :
e θ =θ1 f −θ1 et e θ =θ2 f −θ2
1 2
La structure générale du contrôleur PID pour toute entrée serait :
M = k p e +k D ė+ k i∫ e dt
On obtient les résultats suivant :
a)
8 sur 13
Modeling, Simulation and Control of 2 – R Robot
b)
Figure 1.11 – Réponse dynamique du model non linéaire : a) liaison 1, b) liaison 2
a)
9 sur 13
b)
Figure 1.12 – Erreur du model non linéaire : a) theta 1, b) theta 2
1 sur 13