• Aucun résultat trouvé

I C S L C A B Thème Mémoire

N/A
N/A
Protected

Academic year: 2021

Partager "I C S L C A B Thème Mémoire"

Copied!
66
0
0

Texte intégral

(1)

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique UNIVERSITÉ DE JIJEL

Faculté des Sciences et de la Technologie Département d’Automatique

Mémoire

Présenté par Yassine SOUKKOU

Pour l’obtention du diplôme de Magister en Automatique Option : AUTOMATIQUE ET TRAITEMENT DU SIGNAL

Thème

C OMMANDE A DAPTATIVE PAR B ACKSTEPPING D’UNE C LASSE DES S YSTÈMES NON L INEAIRES

I NCERTAINS

Soutenu le : 23/02/2014 devant le jury

Hamid Boubertakh MCA à l’Université de Jijel Président

Salim Labiod Prof. à l’Université de Jijel Rapporteur

Abdesselem Boulkroune MCA à l’Université de Jijel Examinateur

Sofiane Doudou MCB à l’Université de Jijel Invité

(2)

Dédicaces

Je dédie ce modeste travail A ma mère

A mon père A mes frères A mes sœurs A toute ma famille

A mes amis : H. Khebbache, F. Yacef, M. Nasri,…

A tous mes amis d’études en Magister d’Automatique et Traitement du Signal.

(3)

Remerciements

Avant tout, je remercie mon DIEU (ALLAH) le Tout Puissant pour sa générosité de ma donner la santé, la volonté et la patience tout au long de ma vie universitaire.

J’adresse mes sincères remerciements à tous mes enseignants, notamment à mon encadreur le Prof. Salim Labiod pour ses conseils permanents, ses orientations et sa grande patience.

Je tiens à exprimer ma profonde gratitude aux membres de jury.

Je remercie avec sincérité toutes les personnes qui ont contribué de près ou de loin à la réussite de ce travail.

(4)

Liste des figures

Figure 1.1 Interprétation géométrique du théorème de Lyapunov. 7 Figure 1.2 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 13 Figure 1.3 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

13

Figure 1.4 Erreur de poursuite e1. 13

Figure 1.5 Erreur de poursuite e2. 13

Figure 1.6 Signal de commande u. 13

Figure 1.7 Robot manipulateur à une seule jonction flexible. 14 Figure 1.8 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 18 Figure 1.9 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 18 Figure 1.10 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

18 Figure 1.11 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

18

Figure 1.12 Erreur de poursuite e1. 18

Figure 1.13 Erreur de poursuite e2. 18

Figure 1.14 Erreur de poursuite e3. 19

Figure 1.15 Erreur de poursuite e4. 19

Figure 1.16 Signal de commande u. 19

Figure 2.1 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 37 Figure 2.2 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

37

Figure 2.3 Erreur de poursuite e1. 37

Figure 2.4 Erreur de poursuite e2. 37

Figure 2.5 Signal de commande u. 37

Figure 2.6 Paramètres estimés

θ

ˆ11,

θ

ˆ12 et

θ

ˆ21. 37 Figure 2.7 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 38 Figure 2.8 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

38

Figure 2.9 Erreur de poursuite e1. 38

Figure 2.10 Erreur de poursuite e2. 38

Figure 2.11 Signal de commande u. 38

Figure 2.12 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 38

(5)

Figure 2.14 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée x2d (″--″).

39

Figure 2.15 Surface S1. 40

Figure 2.16 Surface S2. 40

Figure 2.17 Signal de commande u. 40

Figure 2.18 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 40

Figure 2.19 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 41 Figure 2.20 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 41 Figure 2.21 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

42 Figure 2.22 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

42

Figure 2.23 Erreur de poursuite e1. 42

Figure 2.24 Erreur de poursuite e2. 42

Figure 2.25 Erreur de poursuite e3. 42

Figure 2.26 Erreur de poursuite e4. 42

Figure 2.27 Signal de commande u. 42

Figure 2.28 Paramètres estimés

θ

ˆ11,

θ

ˆ12 et

θ

ˆ13. 42

Figure 2.29 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 44 Figure 2.30 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 44 Figure 2.31 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

44 Figure 2.32 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

44

Figure 2.33 Erreur de poursuite e1. 44

Figure 2.34 Erreur de poursuite e2. 44

Figure 2.35 Erreur de poursuite e3. 44

Figure 2.36 Erreur de poursuite e4. 44

Figure 2.37 Signal de commande u. 45

Figure 2.38 Paramètre estimé

θ

ˆ1. 45

Figure 2.39 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 46 Figure 2.40 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 46 Figure 2.41 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

46 Figure 2.42 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

46

Figure 2.43 Surface S1. 47

Figure 2.44 Surface S2. 47

Figure 2.45 Surface S3. 47

Figure 2.46 Surface S4. 47

Figure 2.47 Signal de commande u. 47

Figure 2.48 Paramètre estimé

θ

ˆ1. 47

Figure 3.1 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 57 Figure 3.2 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

57

Figure 3.3 Surface S1. 57

(6)

Figure 3.4 Surface S2. 57

Figure 3.5 Signal de commande u. 57

Figure 3.6 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 57

Figure 3.7 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 58 Figure 3.8 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

58

Figure 3.9 Surface S1. 59

Figure 3.10 Surface S2. 59

Figure 3.11 Signal de commande u. 59

Figure 3.12 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 59

Figure 3.13 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 60 Figure 3.14 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 60 Figure 3.15 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

60 Figure 3.16 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

60

Figure 3.17 Surface S1. 60

Figure 3.18 Surface S2. 60

Figure 3.19 Surface S3. 61

Figure 3.20 Surface S4. 61

Figure 3.21 Signal de commande u. 61

Figure 3.22 Paramètre estimé

θ

ˆ1. 61

Figure 3.23 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 62 Figure 3.24 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 62 Figure 3.25 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

62 Figure 3.26 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

62

Figure 3.27 Surface S1. 62

Figure 3.28 Surface S2. 62

Figure 3.29 Surface S3. 62

Figure 3.30 Surface S4. 62

Figure 3.31 Signal de commande u. 63

Figure 3.32 Paramètre estimé

θ

ˆ1. 63

Figure 4.1 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 71 Figure 4.2 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

71

Figure 4.3 Surface S1. 71

Figure 4.4 Surface S2. 71

Figure 4.5 Signal de commande u. 71

Figure 4.6 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 71

Figure 4.7 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 72 Figure 4.8 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

72

Figure 4.9 Surface S1. 73

(7)

Figure 4.11 Signal de commande u. 73

Figure 4.12 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 73

Figure 4.13 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 74 Figure 4.14 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

74

Figure 4.15 Surface S1. 74

Figure 4.16 Surface S2. 74

Figure 4.17 Signal de commande u. 74

Figure 4.18 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 74

Figure 4.19 Sortie du système non linéaire : réelle x1 (″-″) et désirée x1d (″--″). 75 Figure 4.20 Evolution de la deuxième variable d’état : réelle x2 (″-″) et désirée

x2d (″--″).

75

Figure 4.21 Surface S1. 76

Figure 4.22 Surface S2. 76

Figure 4.23 Signal de commande u. 76

Figure 4.24 Paramètres estimés

θ

ˆ1 et

θ

ˆ2. 76

Figure 4.25 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 77 Figure 4.26 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 77 Figure 4.27 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

77 Figure 4.28 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

77

Figure 4.29 Surface S1. 77

Figure 4.30 Surface S2. 77

Figure 4.31 Surface S3. 77

Figure 4.32 Surface S4. 77

Figure 4.33 Signal de commande u. 78

Figure 4.34 Paramètre estimé

θ

ˆ1. 78

Figure 4.35 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 79 Figure 4.36 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 79 Figure 4.37 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

79 Figure 4.38 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

79

Figure 4.39 Surface S1. 79

Figure 4.40 Surface S2. 79

Figure 4.41 Surface S3. 79

Figure 4.42 Surface S4. 79

Figure 4.43 Signal de commande u. 80

Figure 4.44 Paramètre estimé

θ

ˆ1. 80

Figure 4.45 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 81 Figure 4.46 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 81 Figure 4.47 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

81 Figure 4.48 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

81

Figure 4.49 Surface S1. 81

Figure 4.50 Surface S2. 81

(8)

Figure 4.51 Surface S3. 81

Figure 4.52 Surface S4. 81

Figure 4.53 Signal de commande u. 82

Figure 4.54 Paramètre estimé

θ

ˆ1. 82

Figure 4.55 Position angulaire de la liaison : réelle x1 (″-″) et désirée x1d (″--″). 83 Figure 4.56 Vitesse angulaire de la liaison : réelle x2 (″-″) et désirée x2d (″--″). 83 Figure 4.57 Position angulaire de l’axe de moteur : réelle x3 (″-″) et désirée

x3d (″--″).

83 Figure 4.58 Vitesse angulaire de l’axe de moteur : réelle x4 (″-″) et désirée

x4d (″--″).

83

Figure 4.59 Surface S1. 83

Figure 4.60 Surface S2. 83

Figure 4.61 Surface S3. 83

Figure 4.62 Surface S4. 83

Figure 4.63 Signal de commande u. 84

Figure 4.64 Paramètre estimé

θ

ˆ1. 84

(9)

Table des matières

Dédicaces

i

Remerciements

ii

Liste des figures

iii

Table des matières

viii

Introduction générale

1

Chapitre 1 : Introduction à la commande par backstepping

1.1 Introduction 4

1.2 Technique de commande par backstepping 5

1.2.1 Définitions 5

1.2.2 Méthodes d’analyse de la stabilité des systèmes non linéaires 6

1.2.2.1 Méthode directe de Lyapunov 6

1.2.2.2 Synthèse de la commande par la méthode directe de Lyapunov 7

1.3 Commande par backstepping 8

1.3.1 Algorithme de base 8

1.3.2 Système d’ordre supérieur 11

1.4 Exemples de simulation 11

1.4.1 Exemple 1 : Système non linéaire de deuxième ordre 12 1.4.2 Exemple 2 : Robot manipulateur à une seule jonction flexible 13

1.5 Conclusion 19

Chapitre 2 : Commande adaptative directe par backstepping

2.1 Introduction 20

2.2 Commande adaptative directe par backstepping 21

2.3 Commande adaptative directe par backstepping avec fonctions de réglage 26 2.4 Commande adaptative directe par backstepping avec filtrage des commandes

virtuelles

31

2.4.1 Analyse de stabilité 33

2.5 Exemple de simulation 1 : Système non linéaire de deuxième ordre 36

2.5.1 Commande adaptative directe par backstepping 36

2.5.2 Commande adaptative directe par backstepping avec fonctions de réglage

37 2.5.3 Commande adaptative directe par backstepping avec filtrage des

commandes virtuelles

39 2.6 Exemple de simulation 2 : Robot manipulateur à une seule jonction flexible 40

2.6.1 Commande adaptative directe par backstepping 40

2.6.2 Commande adaptative directe par backstepping avec fonctions de réglage

43

(10)

2.6.3 Commande adaptative directe par backstepping avec filtrage des commandes virtuelles

45

2.7 Conclusion 47

Chapitre 3 : Commande adaptative indirecte par backstepping

3.1 Introduction 49

3.2 Identification par filtre

x

-swapping 50

3.3 Choix des lois d’adaptation 51

3.3.1 Propriétés de l’identificateur 51

3.3.2 Preuve de la stabilité 51

3.3.2.1 Loi de mise à jour basée sur le gradient 51

3.3.2.2 Loi de mise à jour basée sur les moindres carrés 52 3.4 Commande adaptative par backstepping avec DSC et identification par filtre

x

-swapping

53

3.4.1 Analyse de la stabilité 54

3.5 Exemples d’application 56

3.5.1 Système non linéaire de deuxième ordre avec loi de mise à jour basée sur le gradient

56 3.5.2 Système non linéaire de deuxième ordre avec loi de mise à jour basée

sur les moindres carrés

58 3.5.3 Robot manipulateur à une seule jonction flexible avec loi de mise à jour

basée sur le gradient

59 3.5.4 Robot manipulateur à une seule jonction flexible avec loi de mise à jour

basée sur les moindres carrés

61

3.6 Conclusion 63

Chapitre 4 : Commande adaptative directe/indirecte par backstepping

4.1 Introduction 64

4.2 Commande adaptative directe/indirecte par backstepping 65

4.3 Loi d’adaptation de type somme 65

4.4 Analyse de la stabilité 65

4.4.1 Loi de mise à jour basée sur le gradient 65

4.4.2 Loi de mise à jour basée sur les moindres carrés 67

4.5 Adaptation de type

σ

-modification 68

4.5.1 Preuve de la stabilité 69

4.6 Exemples d’application 70

4.6.1 Système non linéaire de deuxième ordre avec loi de mise à jour basée sur le gradient

70 4.6.2 Système non linéaire de deuxième ordre avec loi de mise à jour basée

sur les moindres carrés

72 4.6.3 Système non linéaire de deuxième ordre avec

σ

-modification basée sur

le gradient

73 4.6.4 Système non linéaire de deuxième ordre avec

σ

-modification basée sur

les moindres carrés

75 4.6.5 Robot manipulateur à une seule jonction flexible avec loi de mise à jour

basée sur le gradient

76 4.6.6 Robot manipulateur à une seule jonction flexible avec loi de mise à jour 78

(11)

basée sur les moindres carrés

4.6.7 Robot manipulateur à une seule jonction flexible avec

σ

-modification basée sur le gradient

80 4.6.8 Robot manipulateur à une seule jonction flexible avec

σ

-Modification

basée sur les moindres carrés

82

4.7 Conclusion 84

Conclusion générale

85

Références bibliographiques

88

(12)

Introduction générale

La commande par backstepping est une méthode systématique basée sur la théorie de stabilité de Lyapunov pour la conception de la commande non linéaire, qui s'applique aux systèmes non linéaires sous la forme triangulaire inférieure. La commande par backstepping [KRS95a] est développée pour commander les systèmes non linéaires, en particulier, les systèmes non linéaires dans lesquels les incertitudes ne satisfont pas la

« matching condition ».

Le problème principal avec l’approche de backstepping [BAN10, YIM01] est

« l'explosion de complexité » causée par la dérivation des commandes virtuelles. C'est-à- dire, la complexité de la conception de la commande augmente lorsque l'ordre du système augmente. Pour pallier à ce problème, Dans [WAN05, LI12], les auteurs ont proposé la technique de la commande DSC (Dynamic Surface Control) basée sur l'introduction d'un filtre de premier ordre à l'entrée de chaque étape de l'approche de backstepping traditionnelle. Dans [DON10, DON12], les auteurs ont proposé une solution similaire basée sur la technique de la commande filtrée (Command Filter).

Pour les systèmes non linéaires avec des paramètres inconnus, la version adaptative du backstepping est utilisée où la loi de commande et la loi de mise à jour des paramètres sont conçues à partir d’une fonction de Lyapunov pour garantir la stabilité globale du système.

Le problème de cette méthode est le sur-paramétrage. Pour éviter ce problème l’approche par les fonctions de réglage est introduite. Les techniques de commande adaptatives basées sur la DSC ou la commande filtrée peuvent être utilisées pour simplifier la synthèse de la

(13)

L’intérêt de ces deux commandes adaptatives est d’éviter la complexité de la loi de commande.

Ce mémoire présente quelques stratégies de la commande adaptative par backstepping d’une classe des systèmes non linéaires incertains. Le mémoire est décomposé en quatre chapitres :

Dans le premier chapitre, on présente la commande par backstepping. Dans un premier temps, on s’attache à donner les techniques et les étapes de la commande par backstepping.

Dans un deuxième temps, pour illustrer cette approche, nous appliquons cette approche pour la commande d’un système non linéaire de deuxième ordre et d’un robot manipulateur à une seule jonction flexible.

Le deuxième chapitre est consacré à la commande adaptative directe par backstepping.

Nous présentons trois types de cette dernière, la première approche s’appelle la commande adaptative directe par backstepping, la deuxième approche est la commande adaptative directe par backstepping avec fonctions de réglage (tuning functions) et la troisième approche est la commande adaptative directe par backstepping avec filtrage des commandes virtuelles par la DSC pour éviter le problème d’explosion de la complexité de la synthèse de la commande. Pour valider ces approches, on utilise un système non linéaire de deuxième ordre et le modèle d’un robot manipulateur à une seule jonction flexible.

Dans le troisième chapitre, nous présentons la commande adaptative indirecte par backstepping basée sur l’identification par un filtre

x

-swapping avec la DSC. Les lois de mise à jour des paramètres sont basées soit sur la méthode du gradient ou sur la méthode des moindres carrés. Cette approche de commande adaptative indirecte a été validée sur un système non linéaire de deuxième ordre et sur le modèle d’un robot manipulateur à une seule jonction flexible.

Au quatrième chapitre nous développons un nouveau mécanisme combiné des lois de mise à jour des paramètres pour la commande adaptative par backstepping directe et indirecte, ce mécanisme appelé la commande adaptative directe/indirecte par backstepping.

Un système non linéaire de deuxième ordre et le modèle d’un robot manipulateur à une seule jonction flexible sont utilisés pour illustrer cette approche.

(14)

Enfin, nous terminons ce travail par une conclusion reprenant les principaux résultats présentés et des perspectives.

(15)

Chapitre 1

Introduction à la Commande par Backstepping

D

ans ce chapitre, nous présentons l’approche de la commande par backstepping qui s’applique aux systèmes non linéaires triangulaires (strict-feedback systems). Pour illustrer cette approche, des résultats de simulations sont présentés pour un système non linéaire de deuxième ordre et le modèle d’un robot manipulateur à une seule jonction flexible.

1.1 Introduction

La commande non linéaire a fait son apparition dans les années 1980 avec les travaux d'Isidori [ISI89]. Plus récemment, la technique du backstepping (commande stabilisante non linéaire) a fait son apparition dans les années 1990. L'historique du backstepping est résumé dans [KRS95a] et l'approche y est largement approfondie. Le backstepping est moins restrictif et n'oblige pas le système à devenir linéaire. L'idée fondamentale du backstepping est de synthétiser la loi de commande d'une manière récursive. Certaines composantes du vecteur d'état sont considérées comme des «commandes virtuelles» et des lois de commande intermédiaires sont élaborées. Le backstepping s’applique aux systèmes non linéaires triangulaires. Le lecteur se référera à [KRS95a] pour mieux comprendre l’utilité de cette classe de systèmes.

(16)

1.2 Technique de commande par backstepping

La technique de la commande par backstepping a été développée par Kanellakopoulos en 1991 [KAN91]. Cette technique offre une méthode systématique pour effectuer la conception d’un contrôleur pour les systèmes non linéaires. L’idée de base consiste à calculer une loi de commande afin de garantir pour une certaine fonction de Lyapunov, définie positive et que sa dérivée soit toujours négative [BEN00]. L’objectif de cette technique est de calculer, en plusieurs étapes, une commande qui garantit la stabilité globale du système. Par la suite, on présente quelques définitions conduisant à la compréhension de la méthode de backstepping.

1.2.1 Définitions

Point d’équilibre : Physiquement, un système est en équilibre quand il conserve son état en absence de forces externes. Mathématiquement, cela équivaut à dire que la dérivée xɺ de son état est nulle.

xɺ= f x

( )

=0 (1.1) Stabilité : On dit qu’un système est stable lorsque il revient à son état d’équilibre si l’on excite par une impulsion, il est instable lorsque il s’éloigne.

Stabilité de Lyapunov [ESH05] : Considérons le système invariable décrit par l’équation suivante :

xɺ= f x

( )

(1.2) Commençons à l’état initial x

( )

0 . Supposons que x est un point d’équilibre du système, e

( )

e 0

f x = . Nous disons que le point d’équilibre est :

• Stable, si pour chaque, ε >0, existe,

δ ε ( )

>0, tel que :

x

( )

0 xe <δ x t

( )

xe <ε , pour tout, t ≥0.

• Asymptotiquement stable, s’il est stable et en plus il existe, r >0, tels que, x

( )

0 xe <rx t

( )

xe, lorsque, t → ∞.

• Globalement asymptotiquement stable, s’il est asymptotiquement stable pour tous les états initiaux.

(17)

1.2.2 Méthodes d’analyse de la stabilité des systèmes non linéaires

L’étude de la stabilité des systèmes non linéaires est très complexe. L’approche de Lyapunov est l’approche la plus utilisée pour étudier ce problème. Cette approche a été introduite au 19iéme siècle par le mathématicien russe Alexandre Mikhailovich Lyapunov dans son travail intitulé, « The général problem of the motion stability ».

On distingue deux méthodes de Lyapunov pour l’analyse de la stabilité : La méthode de linéarisation et la méthode directe. La première concerne la stabilité locale autour d’un point d’équilibre. Par contre, la deuxième détermine la stabilité des systèmes en construisant une fonction scalaire des états du système dont on examinera la variation temporelle. Par la suite on s’intéressera par la méthode directe de Lyapunov, car le backstepping est basé sur cette méthode.

1.2.2.1 Méthode directe de Lyapunov

Son objectif, est de définir une méthode permettant d’analyser la stabilité d’un système non linéaire sans connaître explicitement les solutions des équations différentielles qui le décrivent. La philosophie de cette méthode n’est que l’extension mathématique d’un phénomène physique observé, car les systèmes mécaniques et électriques perdent de l’énergie pour se stabiliser au point d’équilibre.

Théorème de Lyapunov

La méthode directe de Lyapunov (ou la méthode des fonctions de Lyapunov) est dérivée du critère énergétique de stabilité. En appliquant ce critère indépendamment du concept d'énergie, on remplace alors l'énergie du système par une fonction de Lyapunov qui est définie positive (comme l'énergie).

Soit le système autonome :

xɺ= f x

( )

,xe =0 (1.3) Ce système aura un point d’équilibre xe =0, globalement asymptotiquement stable, s’il

existe une fonction scalaire ( )V x continue avec une dérivée partielle par rapport au temps ( )

V xɺ

continue ayant les propriétés suivantes : 1. V(0)=0,

2. V x( )> ∀ ≠0, x 0, 3. lim ( ) ,

x V x

→∞ = ∞ (radialement non bornée), 4. Vɺ < ∀ ≠0, x 0.

(18)

x2

Figure 1.1: Interprétation géométrique du théorème de Lyapunov.

1.2.2.2 Synthèse de la commande par la méthode directe de Lyapunov

Dans les paragraphes précédents, nous avons étudié la stabilité des systèmes où on a supposé implicitement que la loi de commande a été choisie et notre but était de vérifier la stabilité du système avec cette loi de commande, mais le problème dans cette synthèse est comment trouver cette commande qui stabilisera le système. Nous allons présenter une méthodologie qui combine entre la recherche de la fonction de Lyapunov et la loi stabilisante. En général, il existe deux concepts pour l'application de la méthode directe de Lyapunov pour la synthèse d'une commande stable :

1ère concept : On suppose que la loi de commande existe et on cherche la fonction de Lyapunov.

2éme concept : Cette fois si on fait un choix sur la fonction de Lyapunov candidate ( )V x , et on cherche la loi de commande qui satisfait les conditions de la stabilité au sens de Lyapunov.

Dans la plupart des théorèmes et lemmes de la stabilité au sens de Lyapunov, l’existence de la fonction de Lyapunov était assumée et l’objectif était de déterminer la stabilité de ces systèmes. Mais dans la plupart des cas, la recherche de cette fonction est très difficile. Dans le paragraphe suivant, nous présenterons la notion du backstepping qui nous offre une solution à ce problème.

Instable

x 1

Stable Asymptotiquement stable

2 1 0

t > >t t ( ) 3 2 1

V x =k >k >k

( ) 2

V x =k

( ) 1

V x =k

( )

0 0 X t

( )

1 X t

( )

2 X t

(19)

1.3 Commande par backstepping

Le principe de la commande par backstepping consiste à calculer, d’une façon systématique, une loi de commande afin de garantir qu’une certaine fonction de Lyapunov soit définie positive et sa dérivée soit toujours négative. Celle-ci permet de garantir la stabilité globale du système compensé tout en travaillant en poursuite et en régulation [BEN00].

1.3.1 Algorithme de base

Soit le cas du système non linéaire du troisième ordre suivant [BEN00] :

1 1( )1 1( )1 2

xɺ = f x +g x x (1.4)

2 2( ,1 2) 2( ,1 2) 3

xɺ = f x x +g x x x (1.5)

3 3( ,1 2, 3) 3( ,1 2, 3)

xɺ = f x x x +g x x x u (1.6) où, g et i f (i i=1, 2, 3) sont des fonctions non linéaires continues et connues telle que (0) 0

fi = et g xi( )≠ ∀0, ( ,x x x1 2, 3)∈R3. On désire faire suivre à la sortie, y=x1, le signal de référence y , où, r y y yɺr,ɺɺ ɺɺɺr, r sont supposées connues et uniformément bornées. Le système étant du troisième ordre, la conception s’effectue en trois étapes.

Etape 1 :

On considère d’abord le premier sous-système (1.4). La variable d’état x est traitée 2 comme une commande virtuelle et l’on définit la première valeur désirée :

x1d =

α

0 = yr (1.7) La première variable d’erreur est définie par :

e1= −x1

α

0 (1.8) Sa dérivée est :

1 1 0 1 1 2 0

eɺ = −xɺ

α

ɺ = +f g x

α

ɺ (1.9) On choisit la fonction de Lyapunov :

2

1 1 1

( ) 1

V e =2e (1.10) Sa dérivée le long de la solution de (1.9) est donnée par :

Vɺ1=e e1 1ɺ =e f1

[

1+g x1 2

α

ɺ0

]

(1.11) Afin d’assurer la stabilité du premier sous-système décrit par (1.4), on prend comme valeur de x la fonction 2

α

1, telle que :

(20)

1 2

[

1 1 1 0

]

1

1

xd k e f

α = = g − − +αɺ (1.12) où, k1 >0 est une constante de conception.

La dérivée de la fonction de Lyapunov s’écrit :

Vɺ1= −k e1 12 ≤0 (1.13) D’où la stabilité asymptotique de e . 1

Etape 2 :

Dans cette étape on considère les sous-systèmes (1.4) et (1.5) et l’on définit la nouvelle variable d’erreur :

e2 = −x2

α

1 (1.14) à cause du fait que x ne peut être forcée à prendre instantanément une valeur désirée, en 2 l’occurrence

α

1, l’erreur e n’est pas instantanément nulle. 2

La conception dans cette étape consiste alors, à forcer cette erreur à s’annuler avec une certaine dynamique choisie au préalable. Les équations du système à commander, dans l’espace ( ,e e , s’écrivent : 1 2)

eɺ1 = −f1

α

ɺ0+g e1( 2+

α

1) (1.15)

2 2 1 2 3

eɺ = f − +

α

ɺ g x (1.16)

pour lesquelles on choisit la fonction de Lyapunov :

2

2 1 2 1 2

( , ) 1

V e e = +V 2e (1.17) qui a pour dérivée avec remplacement les équations (1.15) et (1.16) on obtient :

[ ] [ ]

[ ] [ ]

[ ]

2 1 2 1 2 2

1 1 1 2 1 0 2 2 2 3 1

1 1 1 1 0 2 2 1 1 2 3 1

2

1 1 2 2 1 1 2 3 1

( , )

( )

V e e V e e

e f g e e f g x

e f g e f g e g x

k e e f g e g x

α α α

α α α

α

= +

= + + − + + −

= + − + + + −

= − + + + −

ɺ ɺ ɺ

ɺ ɺ

ɺ ɺ

ɺ

(1.18)

Le choix de la valeur désirée de x est donnée par : 3

[ ]

3 2 1 1 1 2 2 2

2

1

xd g e f k e

α

g

α

= = ɺ − − − (1.19)

où, k2 >0 et

α

ɺ1 se calcule analytiquement,

1 1 x1 1 yr 1 yr

x y y

α α α

α

= + +

∂ ∂ ∂

ɺ ɺ ɺ ɺɺ

ɺ (1.20)

(21)

Un tel choix permet de réduire Vɺ2 à :

Vɺ2 = −k e1 12k e2 22 ≤0 (1.21) Vɺ2 étant une fonction définie négative, ce qui assure la stabilité asymptotique de e et 1 e . 2 Etape 3 :

Considérons maintenant le système global (1.4)-(1.6). La troisième variable d’erreur est :

e3 = −x3

α

2 (1.22)

Les équations du système dans l’espace des erreurs ( ,e e e sont données par : 1 2, 3)

eɺ1 = −f1

α

ɺ0+g e1( 2+

α

1) (1.23)

2 2 1 2( 3 2)

eɺ = − +f

α

ɺ g e +

α

(1.24)

3 3 2 3

eɺ = −f

α

ɺ +g u (1.25) On choisit la fonction de Lyapunov :

3 1 2 3 2 1 32 ( , , )

V e e e = +V 2e (1.26) Sa dérivée le long de la solution de (1.23)-(1.25) devient :

[ ]

3 1 2 3 2 3 3

2 2

1 1 2 2 3 3 2 2 3 2

( , , )

V e e e V e e

k e k e e f g e g u

α

= +

= − − + + + −

ɺ ɺ ɺ

ɺ (1.27) Le choix approprié de la commande se donne par :

[

2 3 2 2 3 3

]

3

u 1 f g e k e

g α

= ɺ − − − (1.28)

où, k3 >0 et αɺ2 se calcule analytiquement,

2 2 1 2 2 2 2 2

1 2

r r r

r r r

x x y y y

x x y y y

α α α α α

α = + + + +

∂ ∂ ∂ ∂ ∂

ɺ ɺ ɺ ɺ ɺɺ ɺɺɺ

ɺ ɺɺ (1.29)

Il en résulte que :

Vɺ3 = −k e1 12k e2 22k e3 32 <0 (1.30) D’où la stabilité asymptotique en boucle fermée du système original e , 1 e , 2 e et la 3 régulation à zéro de l’erreur de poursuite (yyr).

(22)

1.3.2 Système d’ordre supérieur

L’application récursive de la commande par backstepping permet l’extension de la procédure de conception aux systèmes triangulaires de la forme [BEN00] :

1 1 1 1 1 2

2 2 1 2 2 1 2 3

1 1 1 2 1 1 1 2 1

1 2 1 1 2 1

( ) ( )

( , ) ( , )

( , ,..., ) ( , ,..., )

( , ,..., , ) ( , ,..., , )

n n n n n n

n n n n n n n

x f x g x x

x f x x g x x x

x f x x x g x x x x

x f x x x x g x x x x u

= +

= +

= +

= +

ɺ ɺ

⋮ ɺ ɺ

(1.31)

où, fi

( )

0 =0 et gi 0, 1

(

≤ ≤i n

)

. La procédure de conception commence avec la première équation. Le changement de variable adéquat à chaque étape i permet d’appliquer le backstepping récursivement, en rajoutant l’équation i+1. Partant de

α

0, on construit les différents

α

i et Vi. Ce qui résulte en :

[ ]

[ ]

1 0

1 1 1

1 1 1

1 1

d r

i d i i i i i i i

i

n n n n n n

n

x y

x g e k e

g

u g e k e

g

α

α ϕ ω

ϕ ω

+

= =

= = − − −

= − − −

(1.32)

où,

1

1 1 ( )

1 ( 1)

1

1 1

( ) , 1, ,

i i i

i

i i k

i k k k r i

k k r

i i

i i k

k k

e x

g x y i n

x y

f f

x

α

α α

ϕ ω

ω α

+

=

=

= −

∂ ∂

= + − =

∂ ∂

= − ∂

(1.33)

Les différentes fonctions de Lyapunov sont données par : 2

1

1 2

n

i i

i

V e

=

=

(1.34)

La commande u, qui permet d’atteindre les objectifs de conception pour le système global est donnée par la dernière commande virtuelle

α

n.

1.4 Exemples de simulation

Afin de montrer la validité de la commande par backstepping étudiée dans ce chapitre, nous effectuons une simulation numérique en se servant du logiciel MATLAB sous

(23)

différentielles a été faite par la méthode de Runge-Kutta d’ordre 4 avec un pas fixé à 0.01 sec.

Nous appliquons la commande par backstepping pour deux exemples : Le premier est un système non linéaire de deuxième ordre et le deuxième est un robot manipulateur à une seule jonction flexible.

1.4.1 Exemple 1 : Système non linéaire de deuxième ordre

Dans cet exemple, on considère un système non linéaire de deuxième ordre donné par [KRS95a] :

1 2 1 1 1

2 2 1 2 2

( ) ( , )

T T

x x x

x u x x

ϕ θ

ϕ θ

= +

= + ɺ

ɺ (1.35) Les paramètres

θ

1 et

θ

2 sont connus, supposés égales à 3,

ϕ

1( )x1 =x12 et

( )

2( ,x x1 2) cos x1

ϕ

= . Le système donc est de la forme suivante :

( )

2

1 2 1

2 1

3 3cos

x x x

x u x

= +

= + ɺ

ɺ (1.36) où, x , 1 x et 2 u sont, respectivement, les états et la commande du système. L'objectif de la commande est de forcer la sortie du système à suivre la trajectoire désirée :

( )

2 sin yd =π t

 

  . Etant donné que le modèle (1.36) du système non linéaire est de deuxième ordre, la fonction stabilisante α1 et la commande u sont données par :

2

2d 1 3 1 1 1 0

x =α = − xk e +αɺ (1.37)

( )

1 1 1

1 1 1 0 0 2 2

1 0 0

3cos

u e x x k e

x

α α α α α

α α

∂ ∂ ∂

= − − + + + −

∂ ɺ ∂ ɺ ∂ ɺɺ

ɺ (1.38)

où, k1>0 et k2 >0.

Les conditions initiales choisies sont : x

( )

0 =

[

0.4 0

]

T. Les constantes positives k et 1 k2 sont choisies comme suit : k1 =2.5 et k2 =70. Les résultats de simulation des variables d’états y=x1 et x sont donnés, respectivement, par les figures 1.2 et 1.3. Les 2 erreurs de poursuite e et 1 e sont données, respectivement, par les figures 1.4 et 1.5. Le 2 signal de commande u est donné par la figure 1.6. On remarque que les trajectoires réelles convergent vers les trajectoires désirées et que les erreurs de poursuite e et 1 e2 tendent vers zéro.

(24)

Figure 1.2: Sortie du système non linéaire : réelle x1 (-) et désirée x1d (--).

Figure 1.3: Evolution de la deuxième variable d’état : réelle x2 (-) et désirée x2d (--).

Figure 1.4: Erreur de poursuite e1. Figure 1.5: Erreur de poursuite e2.

Figure 1.6: Signal de commande u.

1.4.2 Exemple 2 : Robot manipulateur à une seule jonction flexible

Le robot manipulateur à une seule jonction flexible est représenté schématiquement par la figure. 1.7. q et 1 q sont, respectivement, la position angulaire de la liaison et de l'axe de 2 moteur. Ce robot peut être exprimé par les équations différentielles non linéaires suivantes [CHA12, FAR06, GHO89, HUA04, LI12, NIC95, SAH11, SCH09, SLO91, WAN11, YIM01] :

( ) ( )

( )

1 1 1 1 2

2 2 1 2

sin 0

J q MgL q K q q

J q K q q u

+ + − =

− − =

ɺɺ

ɺɺ (1.39)

où, J et 1 J sont les inerties de la liaison et du moteur. K est la constante de ressort de la 2 rigidité commune, M est la masse de la liaison, L est la demi-longueur de la liaison et g

(25)

est l’accélération de gravité. L’entrée de la commande u est le couple d'entrée du système.

Pour la simulation, les paramètres [NIC95] du système sont choisis comme suit : 9.81 / 2

g= m s , M =1

[ ]

kg , L=1

[ ]

m , J1=0.4kg m. 2, J2 =0.02kg m. 2 et

[ ]

100 . /

K = N m rad . Nous choisissons les variables d'état comme suit : x1 =q1, x 2=qɺ1,

3 2

x =q et x 4=qɺ2, et son modèle dynamique devient :

( )

( )

1 2

2 1 1 3 1 3

3 4

4 2 1 3 2

, ,

x x

x f x x g x

x x

x f x x g u

=

= +

=

= +

ɺ ɺ ɺ ɺ

(1.40)

Les différentes fonctions dans (1.40) sont données comme :

( ) ( )

1 1 3 1 1

1 1

, MgLsin K

f x x x x

J J

= − − , 2

(

1 3

) (

1 3

)

2

, K

f x x x x

= J − et 1 2

1 2

, 1

g K g

J J

= = . L'objectif de la commande est de forcer la sortie du système à suivre la trajectoire

désirée : yd =0.1sin

( )

t .

L

M, J1 J2

u q1 q2

K

Figure 1.7: Robot manipulateur à une seule jonction flexible.

Etant donné que le modèle (1.40) du manipulateur est d’ordre quatre, la synthèse de la loi de commande par backstepping se déroulera en quatre étapes.

Etape1 :

On considère le premier sous-système :

xɺ1=x2 (1.41) La variable d’état x est traitée comme une commande et l’on définit la première valeur 2 désirée :

1d 0 r

x =

α

=y (1.42)

La première variable d’erreur se définit par :

1 1 0

e = −x

α

(1.43)

Références

Documents relatifs

Chacune des intégrales intermédiaires qui ont été rencontrées, considérée comme une équation différentielle ordinaire du second ordre, peut être intégrée par

- de cotes (p 4- iiy^^ safJ^Jaùan.1, a la double co/î- dllion suivante : i, 0 Si l'on considère les nouvelles fonctions inconnues dérivées d'une même ancienne quelconque, leurs

Aussi, cette étude se propose de calculer la dynamique non-linéaire d’un système bi- rotor en s’appuyant sur une interpolation polylinéaire des efforts non-linéaires au niveau

Ces signaux sont brefs et de faible amplitude, donc difflciles à amplifier dans toute l’étendue de leur spectre sans les mélanger au bruit de fond, qui est

zone active, contraint l’affixe à traverser cette courbe avec une certaine accélération, peu marquée, qui le rejette dans les zones d’excitation Pour le deuxième

Les points sur le bord forment un polygône régulier mais la trajectoire ne décrit pas forcément les côtés... On doit donc classer 0, 1, h(m) suivant m en étudiant le graphe de h

R.A.I.R.O. Recherche opérationnelle/Opérations Research, vol.. tion d'une famille importante des modèles macroéconomiques et d'autre part : nous indiquons que certains résultats

k. D’après l’allure de la courbe, on remarque qu’à partir de la position x c = 0.15 vers le bord de fuite, la couche limite est soumise à un gradient de pression défavorable.. La