Modélisation Robotique Non Linéaire
Modélisation Robotique Non Linéaire
Master (LMD)
Spécialité : AUTOMATIQUE ET SYSTEME
Filière : AUTOMATIQUE
Intitulé :
Présenté par :
Soutenu le 04/07/2019
Promotion 2018/2019
REMERCIEMENTS
En premier lieu tout notre parfaite gratitude et remerciement à Allah le plus
puissant qui nous a donné la volonté et la force nécessaires pour élaborer ce
travail.
Nous tenons à exprimer nos vifs remerciements notre encadreur
Monsieur Dr Mostefai LOTFI Maitre de conférence à l’université de saida, de
nous avoir encadré durant notre projet de fin d’études, sa patience et les
nombreux conseils qu’il nous a prodigué.
Ainsi nous exprimons notre reconnaissance à tous les membres de jury d’avoir
accepté de lire ce manuscrit et d’apporter les tenons aussi à remercier à
Monsieur Dr Mostefai Mohamed Maitre conférences à l’université de saida,
d’avoir accepté le président du jury.
Nous adressons toute notre gratitude à Dr Merah Abdelkader et Dr Bourouina
Abdelkader Maitres conférences à l’université de saida d’avoir répondu à
notre invitation afin d’examiner ce travail.
Nous les remercions pour le temps et de l’attention qu’ils ont enfin , à tous ceux
qui nous ont aidés de près ou de loin pour la réalisation de projet de fin d’étude.
[Tapez un texte]
Dédicace
Je dédie ce travail qui n’aura jamais pu voir le jour sans les soutiens
indéfectibles et sans limite de mes chers parents et Ma grand
grand-mère qui
ne cessent de me donner avec amour le nécessaire
nécessaire pour que je puisse
arriver à ce que je suis aujourd’hui. Que dieux vous protège et que la
réussite soit toujours à ma portée pour que je puisse vous combler de
bonheur.
Je dédie aussi ce travail à :
Mon grand-père ‘Allah yarahmah’
Mon frère, mes sœurs.
Mes oncles, mes tantes et leur famille.
Tous mes cousins et cousines.
Tous mes amis, mes collègues et tous ceux qui m’estiment.
Dédicace
Chapitre I
Figure I.1: Les modèles des robots manipulateurs
Figure I.2: structure série
Figure I.3: structure parallèle
Figure I.4: Structure mixte
Figure I.5: Type des liaisons
Figure I.6: Robot à structure ouverte simple
Figure I.7: Manipulateur type parallèle
Figure I.8: Manipulateur type série
Figure I.9: Robot mobile
Figure I.10 :Les robots à roues
Figure I.11: Les robots industriels
Figure I.12: Robots domestiques ou ménagers
Figure I.12: Robots domestiques ou ménagers
Figure I.13: Robots en médecine et chirurgie
Figure I.14: Robot militaire
Figure I.15:Photo de ROB3 avec son alimentation
Chapitre II
Figure II.1: Espace du travail du manipulateur ROB3
Figure II.2: Les axes du robot ROB3.
Figure II.3: Les dimensions du robot ROB3
Figure II.4: Moteur à aiment permanent
Figure II.5: Capteur de position (Potentiomètre)
Figure II.6 : Configuration d'un manipulateur planaire 2R
Figure II.7: ( Figure 1(a))
Figure II.8: ( Figure 2(b))
Figure II.9 : Configuration d'un manipulateur planaire 2R
Figure II.10. Schéma de commande PID pour un moteur de robot
Chapitre III
Figure III.1 : Include Library
Figure III.2: Schéma simplifié de la carte
Figure III.3: la carte Arduino UNO
Liste Des Figures
Chapitre II
Tableau II.1: Limites articulaires des moteurs du ROB3
Chapitre III
Tableau III.1: L293D Commande
Chapitre V
Tableau V.1 : l’algorithme de commande P, PID, NPID
Tableau V.2: Denavit-Hartenberg
Tableau V.3 : les variables des gains proposées pour le theta1
Tableau V.4 : les variables des gains proposées pour le theta2
Introduction Générale
INTRODUCTION GENERALE :
Sans remonter aux premiers concepts de machine remplaçant l’homme dès le XVIIe
siècle, la robotique est née dans les années 1950, du croisement des besoins et des
disponibilités de nouvelles technologies développées durant la seconde guerre mondiale :
l’électronique, l’automatique, l’informatique… Les deux premières orientations de ces
machines étaient de répondre aux besoins de l’industrie manufacturière et aux besoins de
l’industrie en milieux hostiles à l’homme.
La robotique est l'ensemble des techniques concernée par l'étude de systèmes
automatiques capables d'une interaction directe avec le monde physique.
Nous choisis d’explorer le monde de l’électronique et de la robotique en optant pour ce
projet, notre travail consistera Conception et réalisation de la commande d’un bras
Manipulateur ROB3en contrôlant ses 4moteur à courant continu, réalisé sur plaque d’essai un
pré-projet de produire une carte de commande pour piloter l’ensemble des moteur du robot
manipulateur ROB3 permettant ainsi de la rendre disponible pour des manipulateur purement
pédagogique, notamment les travaux pratique.
Le mémoire est structuré en quatre chapitres plus une introduction générale et une
conclusion générale, et il organisé comme suit :
Dans le premier chapitre : Nous exposerons des généralités sur les robots et en
dédiant une introduction sur le ROB3.
deuxième chapitre : On parlera de la description du ROB3, la commande d’un moteur a
courant continu ainsi que modèle cinématique et dynamique du robot , puis la commande du
robot manipulateur .
Dans le troisième chapitre : nous avons présenté les outils de développement, mise
en œuvre de la commande du robot, on donnera une présentation de l’Arduino et la carte de
puissance L293D puis le sheild moteur adafruit.
Le quatrième chapitre et le dernier : Dans ce chapitre on va présenter la commande
non -linéaire (ses avantages, ses inconvénients, et l’algorithme de commande implémenté).
On présente aussi par la suite des simulations sur Matlab du manipulateur 2 Link pour
simplification commandé par un régulateur linéaire PID, ensuite par le régulateur proposé
NPID, après quoi, on effectue une comparaison entre les résultats.
Finalement, une conclusion générale résument notre travail et présentée.
ChapItre I : généralité sur les robots
Et Description du ROB3
ChapitreI généralité sur les robots Et Description du ROB3
I.1. Introduction :
D’après l’association Française de Normalisation (AFNOR)
« Un robot est un manipulateur commandé en position, programmable, polyvalent, à
plusieurs degrés de libertés, capable de manipuler des matériaux, des pièces, des outils et des
dispositifs spécialisés, au cours du mouvement variable et programmés pour l’exécution d’une
variété de taches. Ila souvent l’apparence d’un ou plusieurs bras se terminant par un poignet. Son
unité de commande utilisée, notamment un dispositif de mémoire et éventuellement de perception et
d’adaptation à l’environnement et aux circonstances. Ces machines polyvalentes sont généralement
étudiées pour effectuer la même fonction de façon cyclique et peuvent etre adaptées à d’autres
fonctions sans modification permanente du matériel ».
Dans ce chapitre on présentera une généralité sur les robots et description du Rob3 ,
nous avons décidé de consacrer deux parties pour initier le lecteur au monde de la robotique .La
première exposerait des généralités sur les robots (définition, classes des robots, types, domaines
d’application). Tandis que la deuxième parlerait plus précisément sur le robot qu’on va utiliser dans
le projet : le ROB3 (présentation, espace de travail, description cinématique, propriétés mécanique
et électrique, moteurs et capteurs).
I.2. Historique:
En 1921, Karel Capek, un dramaturge tchèque, a imaginé un personnage créé
artificiellement et doté d’intelligence, auquel il a donné le nom de « robot ». L'origine du mot robot
provient de la langue tchèque dans laquelle sont ancêtre "robota" signifie "travail forcé".
Même si le concept de robot trouve son origine dans une époque très lointaine, il a fallu
attendre les années 1940 et l’arrivée des ordinateurs pour que les robots des temps modernes fassent
leur apparition. Le terme « robotique » se rapporte à l’étude et à l’utilisation des robots. Il remonte à
1941. Il a tout d’abord été utilisé par le chercheur et écrivain Isaac Asimov. [1]
I.3. DEFINITION:
I.3.1 Origine du terme :
Le terme robot apparaît pour la première fois dans la pièce de théâtre (science-fiction)
de l'auteur Karel Čapek .
Il provient du tchèque "robota" qui signifie corvée, travail obligatoire
Le terme robotique a été employé pour la première fois par Asimov en 1941 [1].
1
ChapitreI généralité sur les robots Et Description du ROB3
Les robots peuvent être classés des 2 types différents sont apparus attestant chacun de
nouvelles évolutions : Robots manipulateurs et Robots mobiles.
Première loi: Un robot ne peut porter atteinte à un être humain, ni en restant inactif
laisser cet être
humain exposé au danger.
Deuxième loi: Un robot doit obéir aux ordres donnés par les êtres humains, sauf si de
tels ordres sont en
contradiction avec la Première Loi.
2
ChapitreI généralité sur les robots Et Description du ROB3
Troisième loi : Un robot doit protéger sa propre existence dans la mesure où cette
protection n’est pas en
contradiction avec la Première ou la Deuxième Loi de la robotique.
Les robots manipulateurs viennent sous plusieurs formes. Les formes se répartissent en en
cinq grandes catégories :
3
ChapitreI généralité sur les robots Et Description du ROB3
I.[Link]. Robots sphériques : Le robot sphérique est de grande taille avec un bras
télescopique qui assure un mouvement à l'intérieur ou à l'extérieur. Les mouvements de base du robot
sphérique sont de rotation (à la base) et angulairement en haut ou en bas (sur le bras). (Figure I.1)
I.[Link]. Robots SCARA : Un robot SCARA est une machine d’assemblage qui installe
pièce ou transporte les articles.
Il est conçu pour imité l’action d’un bras humain et peut être utilisé dans les emplois des
usines de construction automobile sous l’eau .Cet outil est souvent utilisé en raison de sa rapidité,
l’efficacité et à faible cout. (Figure I.1)
4
ChapitreI généralité sur les robots Et Description du ROB3
5
ChapitreI généralité sur les robots Et Description du ROB3
ces corps. Deux corps extrêmes ont des rôles particuliers [4] :
La base, qui est fixée au sol ou sur un véhicule.
L’organe terminal qui porte l’outil (ou effecteur).
6
ChapitreI généralité sur les robots Et Description du ROB3
Un robot manipulateur est une cinématique constituée de n+1 corps, possédant deux corps particuliers et
des actionneurs. Le premier corps particulier(C0), appelé base, est le socle du robot, le seconde corps
particulier (Cn), appelée terminal, est le support d’un préhenseur ou d’outil. Les n corps sont li´es entre
eux par des liaisons (articulations), suivant une structure de chaine. Ces liaisons sont de nature prismatique P
7
ChapitreI généralité sur les robots Et Description du ROB3
Caractéristiques :
Très rapide
I.[Link]. Manipulateur type série: caractérisés par le fait qu'une seule chaîne
cinématique relie la base fixe à l'organe terminal. (Figure I.8)
8
ChapitreI généralité sur les robots Et Description du ROB3
Figure I.7: Manipulateur type parallèle Figure I.8: Manipulateur type série
Un robot mobile est celui qui peut se déplacer dans son environnement de façon indépendante.
Pour ce faire, le robot doit pouvoir naviguer, et la portée et la précision de navigation requise varie
en fonction de la taille du robot et du type de sa tâche
tâc [5].
9
Chapitre1 généralité sur les robots Et Description du ROB3
Robot unicycle
Robot tricycle
Robot voiture
Robot omnidirectionnel
10
Chapitre1 généralité sur les robots Et Description du ROB3
I.5. Domaine d'utilisation des robots : Les domaines d’application sont très
variables et ils évoluent avec les années. On peut citer :
11
Chapitre1 généralité sur les robots Et Description du ROB3
12
Chapitre1 généralité sur les robots Et Description du ROB3
I.6. Introduction sur le ROB3: Le ROB3 est un robot de haute qualité de formation,
particulièrement conçu pour l'usage dans toutes les sphères d'éducation et de formation
de robotique. Le bras articulé de ROB3 a cinq axes et une pince, qui sont actionnées par
les servomoteurs à courant continue. La position absolue de tous les axes est déterminée
par les capteurs de position rotatoires potentiométriques.
[Link] :
Dans le cadre de ce chapitre, on a pu présenter des généralités sur les robots (
clasification model structure les type .. des robots) . On a aussi présenté une
introduction sur le ROB3.
13
ChapItre II: Description du ROB3,
modèle cinématique et dynamique
Chapitre II Description du ROB3 , modèle cinématique et dynamique
II.1. Introduction:
Après avoir exposé les généralités sur les robots ainsi que une petit introduction sur le
ROB3 lors du chapitre précédent, on va faire la description du ROB3, modèle cinématique et
dynamique.
D’abord on présentera la description du ROB3 (l’escape de travail et la limite de
commande et la propriété mécanique) et la commande d’un moteur a courant continu , ainsi
que les modèle cinématique et dynamique du robot , on parlera du commande des robots
manipulateur et le régulateur numérique PID.
14
Chapitre II Description du ROB3 , modèle cinématique et dynamique
Limite articulaire
Les Ax MIN MAX Resolution (Volts)
Articulations e
Axe 1 : Base +80° 0 -80° 3.25
Q0 4.6
°
Axe 2 : +50° 0 -50° 2.94
Q1 4.74
Epaule °
Axe 3 : 0 +100° 3.25
Q2 5
Coude
Axe 4 : +10 0 -100° 2.5
Q3 4.56
Poignet 0° °
Axe 5 : +10 0 -100° 0.4
Q4 4.58
Orientation 0° °
Outil (Pince) 0 60 mm 1.85 4.27
Comme il est représenté dans la Figure I.15, le bras manipulateur ROB3 possède
en total 5 axes de rotations. Le tableau II.1 permet de représenter les différentes limites
15
Chapitre II Description du ROB3 , modèle cinématique et dynamique
16
Chapitre II Description du ROB33 , modèle cinématique et dynamique
17
Chapitre II Description du ROB33 , modèle cinématique et dynamique
Les capteurs :
On procède par simplifié notre projet pour se focaliser sur les performances de la loi de
commande NL proposées pour cela, on considère seulement deux links du ROB3.
Etant donné les angles des joints et la géométrie des liens, calculez l'orientation de
l'effecteur final par rapport au cadre de base.[12]
base
18
Chapitre II Description du ROB33 , modèle cinématique et dynamique
être utilisés pour atteindre la position et l’orientation données de l’effecteur final. .[12]
Cinématique direct :
x l1 cos 1 l2 cos(1 2 )
(II.1)
y l1 sin 1 l2 sin(1 2 )
Cinématique inverse :
2 2 2 2
x 2 y 2 l1 cos 2 1 l2 cos 2 (1 2 ) 2l1l2 cos 1 cos(1 2 ) l1 sin 2 1 l2 sin 2 (1 2 ) 2l1l2 sin 1 sin(1 2 )
2 2
l1 l2 2l1l2 [cos 2 1 cos 2 sin 2 2 cos 2 ]
2 2
(II.2)
l1 l2 2l1 l2 cos 2
Ensuite, nous utilisons les égalités suivantes:
( ± )= ± cos x sin y
( ± ) = ± sin
± sin x sin y (II.3)
Donc
2 2 2 2
x 2 y 2 l1 cos 2 1 l2 cos 2 (1 2 ) 2l1l2 cos 1 cos(1 2 ) l1 sin 2 1 l2 sin 2 (1 2 ) 2l1l2 sin 1 sin(1 2 )
2 2
l1 l2 2l1l2 [cos 2 1 cos 2 sin 2 2 cos 2 ]
2 2
(II.4)
l1 l2 2l1 l2 cos 2
Et
2 2
x 2 y 2 l1 l1
cos 2 (II.5)
2l1l2
À partir de là, l'angle pourrait être obtenu directement à l'aide de la fonction arccose, mais
cette fonction est très imprécise.
19
Chapitre II Description du ROB3 , modèle cinématique et dynamique
pour les petits angles. Le moyen typique d'éviter cette imprécision consiste à convertir
davantage jusqu'à ce que nous puissions utiliser la fonction atan2.
cos 2 2 sin 2 2 1
(II.6)
sin 2 1 cos 2 2
Les deux solutions correspondent aux configurations «coude haut» et «coude bas», comme
illustré à la figure 1 (a et b).
= + ( + ) (II.7)
= + ( + )
= −
= +
20
Chapitre II Description du ROB3 , modèle cinématique et dynamique
Où
= + (II.8)
=
Ensuite, nous changeons la manière dont nous écrivons les constantes k1, k2 (voir figure 8)
= + (II.9)
=antan2( , ) (II.10)
= r cos
= r sin
= − (II.11)
= − (II.12)
21
Chapitre II Description du ROB3 , modèle cinématique et dynamique
Ou
= − (II.13)
= − (II.14)
Ou
= ( + )
= ( + )
• Si x = y = 0, la solution devient indéfinie. Dans ce cas, θ 1 est arbitraire. Notez que c'est
possible uniquement si les deux maillons ont la même longueur et peuvent se replier l'un sur
l'autre.
22
Chapitre II Description du ROB3 , modèle cinématique et dynamique
On peut mettre
1 = 1 1 (II.16)
1 = 1 1 (II.17)
2 = 1 1 + 2 ( 1 + 2)
2 = 1 1 + 2 ( 1 + 2)
KE= 1 1 ̇ + 1 1 ̇ + 2 2 ̇ + 2 2 ̇ (II.18)
Par simplification
2 2 2
KE=( M1 + M2 ) 1 1̇ + 2 2 ̇
1 + 2 2 1 2 + 2 2 ̇
2
+ M2L1 L2 cos 2 ( 1 2+ 1̇ )
Et l'énergie potentielle est
PE= M1g 1 1 + M2 g( 1 1 + 2 ( 1 + 2)) (II.19)
Par Lagrange Dynamique
L= KE- PE
2
L= ( M1 + M2 ) 1 1̇ + 2 2 ̇
1 + 2 2
2
1 2 + 2 2 ̇ 2 -
2 1 1 + M2
g( 1 1 + 2 ( 1 + 2)) (II.20)
L’equation dynamique
ƒ 1,2 =
1,2
-
1,2
(II.21)
Après la simplification
2 2
( ( M1 + M2 ) 1 + 2 2 + 2 2 1 2 2 ) 1̈ +( 2 2 +2 2 1 2 2 ) 2̈
- 2 1 2 2 (2 1̇ 2 + 2̇ ) - ( M1 + M2 ) g 1 1 - 2g 2 ( 1 + 2)= ƒ 1 (II.22)
2 2
( 2 2 + 2 1 2 2 ) 1̈ + 2 2 2̈ - 2 1 2 2 1̇ 2̇ - 2g 2 ( 1 + 2) = ƒ 2
23
Chapitre II Description du ROB3 , modèle cinématique et dynamique
24
Chapitre II Description du ROB3 , modèle cinématique et dynamique
l’équation de régulation peut être exprimée en diverses manières, mais une formulation
serait :
Upid = kp*error + ki*cumError + kd*rateError (II.24)
25
Chapitre II Description du ROB3 , modèle cinématique et dynamique
II.8. Conclusion :
Au cours de ce chapitre on a exposé la description du ROB3 et les modèles cinématique et
dynamique simplifié de deux articulations du robot, notamment la commande des robots
manupilateur, on évoqué les points de conception d’un régulateur numérique PID utilisé dans
notre projet et le technique de commande MLI.
27
ChapItre III: Outils de
développement, mise en œuvre de la
commande du robot
Chapitre III Outils de développement, mise en œuvre de la commande du robot
III.1. Introduction :
Dans ce chapitre sera présenté les outils de développement, mise en œuvre de la
commande du robot .
Donc, on donnera une présentation sur L’Arduino ainsi on a parlera de la carte
de puissance (le driver L293D ) avec une explication théorique du principe de
fonctionnement en quatre quadrants du pont H .
III.2. Présentation de l’Arduino:
Comme tout projet dans le domaine ; l’utilisation d’un micro contrôleur est
inévitable, nous utiliserons Arduino Uno.
Arduino Uno est un freeware (matériel libre) qui peut être programmé pour
analyser où produire des signaux électriques et exécuter des commandes, son interface
facile et son langage de programmation simple en font un des microcontrôleurs les
plus utilisés dans le monde, que ce soit par les débutants où par les utilisateurs plus
expérimentés.[7]
Le système Arduino permet à l’utilisateur de réaliser un grand nombre de projets
puisque l'étendue de l'utilisation de l'Arduino est gigantesque. Voici quelques
exemples:
Cette liberté a une condition : le nom « Arduino » ne doit être employé que pour
les cartes «officielles ». En somme, les concepteurs ne pouvant pas fabriquer leurs
propres cartes sur le modèle Arduino et leurs assigner le nom « Arduino ».
28
Chapitre III Outils de développement, mise en œuvre de la commande du robot
III.2. 2. Bibliothèque
ibliothèque arduino proteus (Library Proteus) :
L’environnement Arduino peut être étendu en utilisant des bibliothèques, tout
comme la plupart des plateformes de programmation. Les bibliothèques fournissent
des fonctionnalités supplémentaires pour les esquisses, par exemple. travailler avec du
matériel ou manipuler des données.
données
Robot – this library enables easy access to the functions of the Arduino Robot.
29
Chapitre III Outils de développement, mise en œuvre de la commande du robot
Figure III.2:
I Schéma simplifié de la carte
30
Chapitre III Outils de développement, mise en œuvre de la commande du robot
Vin : Alimentation non stabilisée (= le même voltage que celui à l’entrée de la carte
31
Chapitre III Outils de développement, mise en œuvre de la commande du robot
Gestion bus I2C (TWI Two Wire Interface) = le bus est exploité via les
broches
SDA(PC5)/SCL(PC4).
Port série (USART) = émission/réception série via les broches
TXD(PD1)/RXD(PD0) Comparateur Analogique = broches AIN0(PD6)
et AIN1 (PD7) peut déclencher interruption Watchdog Timer programmable.
Gestion d'interruptions (24 sources possibles (cf interrupt vectors)) : en
résumé
Interruptions liées aux entrées INT0 (PD2) et INT1 (PD3)
Interruptions sur changement d'état des broches PCINT0 à PCINT23
Interruptions liées aux Timers 0, 1 et 2 (plusieurs causes
configurables)
Interruption liée au comparateur analogique
Interruption de fin de conversion ADC
Interruptions du port série USART
Interruption du bus TWI (I2C)
III.2.6. L’alimentation :
III.2.7. Visualisation :
La LED jaune en haut : elle est connecté à une broche du microcontrôleur et va
servir pour tester le matériel.
Les deux LED orange : servent à visualiser l’activité sur la voie série (une pour
l’émission et l’autre la réception). Le téléchargement du programme dans le
32
Chapitre III Outils de développement, mise en œuvre de la commande du robot
microcontrôleur se faisant par cette voie, on peut les voir clignoter lors du
chargement.
33
Chapitre III Outils de développement, mise en œuvre de la commande du robot
Enable1: permet d’envoyer (ou pas) la tension sur les sorties du moteur via
OUTPUT1 et OUTPUT2 et commande l’activation/désactivation du premier Pont-H.
Si ENABLE1 = GND, le pont-H est déconnecté et le moteur ne fonctionne pas. Si
ENABLE1 = VSS, le pont-H est connecté aux sorties et le moteur fonctionne dans un
sens ou l’autre ou pas en fonction des tensions appliquée sur INPUT1 & INPUT2.
34
Chapitre III Outils de développement, mise en œuvre de la commande du robot
Veuillez noter que les pins Enable1 et Enable2 permettent moduler la vitesse du
moteur en utilisant des broches PWM de votre Arduino. Si vous ne souhaitez pas
moduler la vitesse du moteur DC, il vous suffit de brancher Enable1 sur la broche
VSS de votre Arduino.
Nbre de pont-H: 2
Courant Max Régime continu: 600mA (x2)
Courant de pointeMax < 2ms: 1200mA
VS Max Alim moteur: 36v
VSS Max Alim logique: 7v
Nbre de Broches: 16 DIP
Perte de tension: 1.3v
[Link] du L293D :
Le tableau suivant vous permettra de faire fonctionner votre moteur DC en
utilisant le composant L293D :
Enabel 1 Input 1 Input 2 Fonction
High Low High Tourne dans le sens horlogique
High High Low Tourne dans le sens anti-horlogique
High Low Low Stop
High High High Stop
Non Non
Low Stop
applicable applicable
35
Chapitre III Outils de développement, mise en œuvre de la commande du robot
36
Chapitre III Outils de développement, mise en œuvre de la commande du robot
37
Chapitre III Outils de développement, mise en œuvre de la commande du robot
38
Chapitre III Outils de développement, mise en œuvre de la commande du robot
39
Chapitre III Outils de développement, mise en œuvre de la commande du robot
40
ChapItre V: Commande non-linéaire
; synthèse et résultats de simulation
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
V. 1. Introduction :
41
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
42
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
Régions à gains
Erreur élevés
(rad)
Temps (s)
K0 sgn(e) sgn(de)
K p (t ) dt (V.2)
K 0 K1 sgn(e) sgn(de)
dt
K 0 et K1 sont des gains positifs réels.
le gain élevé est appliqué quand l’erreur évolue loin du but, la région en sombre.
Donc, l’action de commande augmente la raideur du système pour un cycle et réduit
ainsi l’effet des nonlinéarités sur les performances en termes d’erreur. Les régulateurs
flous, à structure variable, et neuronaux, partant du même principe sont aptes à donner
de bons résultats.
V.2.3. L’algorithme de commande non-linéaire NPID implémenté sur Arduino :
Sur Arduino C, et pour nous faciliter la tâche, on a implémenter une fonction NPID,
qui génère la commande sous forme d’un « integer » ; qui doit être traiter par un
« mapping » entre 0 et 255, puisqu’il est injecter directement sous forme de PWM au
« motor shield basé sur le L293d ». L’algorithme implémenté calcul l’erreur, et le
gain proportionnel nonlinéaire en utilisant la logique suivante :
43
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
44
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
Initialisation
Lecteur ADC: les valeurs que va nous fournir le capteur de position
(potentiométrique) de chaque moteur.
Clacul de l’erreur : par le régulateur PID linéaire ou le régulateur PID Non linéaire
.
calcul PWM : les impulsions qu’on va envoyer au Driver L293d des moteurs.
Application : résultant du mouvement des articulations du robot ROB3.
V.4. Le modèle 3D du rob3 avec Robotics toolbox:
Dans le but de développer un modèle virtuel du ROB3, on a utilisé un outils qui nous
facilite la tache : Robotics Toolbox, qui sert à produire un modèle 3D virtuel sous
forme d’un objet, du robot ROB3 à partir des paramètres de Denavit-Hartenberg
reportés dans le tableau ci-dessous :
Link a alpha d theta
1 0 90 L1 θ1
2 L2 0 0 θ2
3 L3 0 0 θ3
4 0 90 0 θ4
5 0 0 L2 θ5
Le résultat est dressé sur la figure suivante. On peut exploiter ce modèle et même
l’enrichir en implémentant les dynamiques du robot. On peut aussi le connecter avec
le modèle réel et faire une émulation des taches effectuées par le robot réel.
45
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
On présente dans cette partie les résultats des tests de simulation de la commande
proposée sur Matlab. On note qu’il était très difficile de relevé des résultats
expérimentaux de la commande implémentée sur les 4 articulations du ROB3, et cela
est du à plusieurs paramètres, parmi lesquels on cite : la faible précision/résolution des
capteurs de position du robot, la structure du robot que semble très flexible contenant
des nonlinéarités accentuées comme les jeux de transmission et les mécanismes de
transmission à base de courroies…etc.
Comparaisons entre le régulateur Linéaire et Non Linéaire :
On a fait trois essai de simulation pour différents gains (Kp , kd, ki), pour faire des
comparaisons:
46
Chapitre V Commande non-linéaire
linéaire ; synthèse et résultats de simulation
Figure V.7: Couple theta1 PID l’essai 1 Figure V.8: Couple theta 1 NPID
l’essai 1
47
Chapitre V Commande non-linéaire
linéaire ; synthèse et résultats de simulation
L’essai 2 :
48
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
Theta-1 erreur
3.5 Theta-1 erreur
3.5
3
3
2.5
2 2.5
1.5 2
1 1.5
0.5 1
0 0.5
-0.5
0
-1
0 2 4 6 8 10 12 14 16 18 20 -0.5
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.13: theta1 PID l’essai 2 Figure V.14: theta1 NPID l’essai 2
Torque of theta 1
Torque of theta 1 300
1000 250
800
theta1 torque
200
theta1 torque
600 150
400 100
50
200
0
0
-50
-200 0 5 10 15 20
0 2 4 6 8 10 12 14 16 18 20 temp (sec)
temp (sec)
Figure V.15 : Couple theta1 PID l’essai 2 Figure V.16 : Couple
theta1 NPID l’essai 2
49
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
Theta-2 erreur
1 Theta-2 erreur
0.5
0.5
0
theta2 erreur (rad)
-0.5 -0.5
-1 -1
-1.5 -1.5
-2 -2
-2.5
-2.5
-3
-3
-3.5
0 2 4 6 8 10 12 14 16 18 20 -3.5
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.17 : theta2 PID l’essai 2 Figure V.18: theta2 NPID l’essai 2
100 25
80 20
theta2 torque
15
theta2 torque
60
10
40
5
20
0
0 -5
-20 -10
-40 -15
-60 -20
0 2 4 6 8 10 12 14 16 18 20
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.19 : Couple theta2 PID l’essai 2 Figure V.20 : Couple theta2
NPID l’essai 2
50
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
Essai 3
Theta-1 erreur
3.5 Theta-1 erreur
3.5
3
theta1 erreur (rad)
2 2.5
1.5 2
1 1.5
0.5 1
0
0.5
-0.5
0
-1
0 2 4 6 8 10 12 14 16 18 20 -0.5
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.21 : Couple theta1 PID l’essai 3 Figure V.22 : Couple theta1 NPID
l’essai 2
700
Torque of theta 1 Torque of theta 1
2500
600
2000
theta1 torque
theta1 torque
500
400 1500
300 1000
200
500
100
0 0
-100
0 2 4 6 8 10 12 14 16 18 20
-500
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.23 : Couple theta1 PID l’essai 3 Figure V.24 : Couple theta1
NPID l’essai 3
51
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
0
-0.5
-0.5
-1
-1
-1.5
-1.5
-2
-2
-2.5 -2.5
-3 -3
-3.5 -3.5
0 2 4 6 8 10 12 14 16 18 20
0 2 4 6 8 10 12 14 16 18 20
temp (sec)
temp (sec)
Figure V.25 : Couple theta2 PID l’essai 3 Figure V.26 : Couple
theta2 NPID l’essai 3
20
theta2 torque
60
15
10
40
5 20
0 0
-5
-20
-10
-40
-15 0 2 4 6 8 10 12 14 16 18 20
0 2 4 6 8 10 12 14 16 18 20
temp (sec) temp (sec)
52
Chapitre V Commande non-linéaire ; synthèse et résultats de simulation
53
Conclusion Générale
Conclusion Générale :
54
[1]. ABDELLAOUI, Z., & BENKHELIFA, B. Contrôle d’un robot mobile (Doctoral
dissertation).
[2]. « Robot », dans Dictionnaire de français Larousse.
[3]. « Robotics » , dans English Oxford living Dicionaire .
[4]. Alain Liégeois. Modélisation et commande des robots manipulateurs . Techniques
de l ́ingénieur , page 3, Juin 2000.
[5]. Mechatronics; Auteur: [Link], ISBN9788184314908, Edition 2008.
[6]. Nizar, Chelly. "Support de cours Électricité Générale." Nizar, C. Support de cours
Électricité Générale. NIZAR, Chelly. Support de cours Électricité Générale.
[7]. Barrett, Steven F ; Arduino Microconroller ; Processing for Everyone ; Morgan &
Claypool,325pp, ISBN: [Link] online at UCSD library ; 2010.
[8]. Donatien Nganga-Kouya, Maarouf Saad, Francis A. Okou: A novel adaptive
hybrid force-position control of a robotic manipulator. IJMIC 13(1/2): 97-107 (2011).
[9]. Florent, MOUKO ONGUEDOU Aristide. "MOUEN MOUANGUE Arlette
Joelle."