Lion
Lion
i
Remerciements
Ce travail a été effectué au sein du laboratoire d’Energie et des Systèmes Electriques et Elec-
troniques du Département de Physique de l’Université de Yaoundé I.
Je tiens à exprimer mes plus profonds remerciements :
I Au Dieu Tout Puissant qui m’a accordé jusqu’ici le souffle de vie et la force nécessaire pour
franchir les obstacles.
I Au Pr. BODO Bertrand pour la confiance qu’il m’a accordé en acceptant de diriger ce travail.
Merci pour ses conseils, ses encouragements et ses remarques constructives.
I Aux Membres du jury, pour m’avoir honoré à travers leur présence et aussi pour avoir accepté
d’évaluer ce travail.
I Au corps enseignant du Département de Physique de la Faculté de Sciences, particulièrement
au Pr. NDJAKA Jean-Marie, chef du Département de Physique à l’Université de Yaoundé 1; au
Pr. ESSIMBI ZOBO Bernard, responsable du laboratoire des systèmes électriques et électroniques
ainsi qu’aux autres enseignants du laboratoire : le Pr. EYEBE FOUDA Jean-sire, le Pr. BIYA
MOTTO Frédéric, le Pr MBINACK Clement, et le Dr AYISSI EYEBE Guy pour leurs disponi-
bilités, leurs conseils et encouragements tout au long des années d’enseignements.
I À tous les aı̂nés académiques particulièrement à TAGNE Samuel. Qu’ils trouvent ici ma sincère
reconnaissance pour leurs amitiés et échanges très souvent instructifs.
I À tous mes camarades de promotion pour la sincère collaboration, la solidarité, l’esprit d’équipe
et les débats passionnants qui nous ont beaucoup appris.
I À tous mes frères et sœurs et à toute ma famille pour leur soutien.
ii
Table des matières
Dédicace i
Remerciements ii
Résumé xii
Abstract xiii
Introduction Générale 1
iii
[Link] Intégration fractionnaire de Riemann-Liouville . . . . . . . . . . 5
[Link] Attracteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
iv
[Link] Dissipativité et existence des attracteurs . . . . . . . . . . . . . 27
[Link] MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3 Résultats et Discussion 53
v
[Link] Influence de l’ordre de la dérivée : route vers le chaos . . . . . . 56
3.2 Synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Références 87
vi
Liste des Figures
3.1 Séries temporelles des variables d’état du modèle de base : (a) état x ; (b) état
y ; (c) état z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
vii
3.2 Portraits de phase du modèle de base : (a) plan(x,y) ; (b) plan(y,z) ; (c)
plan(x,z) ; (d) plan(x,y,z) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.6 Évolution des portraits de phase dans le plan (x, y) : r=3 et q ∈ [0.1, 0.2, 0.25, 0.6,
0.75, 0.85, 0.95, 1] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.7 Évolution sous MATLAB des portraits de phase dans le plan (x, y) : q=0.95 et
r ∈ [0, 3, 10, 20, 35, 37.5, 55, 75] . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.10 Évolution temporelle sous MATLAB (à gauche) et sous Proteus (à droite) des états
(x,y,z) avec (x0 , y0 , z0 ) = (0, 0, 0.2), r = 0 et q = 1 . . . . . . . . . . . . . . . . . . 65
3.11 Évolution sous Proteus des portraits de phase dans le plan (x, y) : q = 0.95 et r ∈
[0, 3, 10, 20, 35, 37.5, 55, 75] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.12 Synchronisation non adaptative dans le cas idéal : (a) états (x1 , x2 ), (b) états (y1 , y2 ),
(c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ) et (e) Loi de commande . . . . . . . . 68
3.13 Synchronisation non adaptative dans le cas perturbé : (a) états (x1 , x2 ), (b) états
(y1 , y2 ), (c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ) et (e) Loi de commande. . . . . 70
3.14 Synchronisation adaptative dans le cas idéal : (a) états (x1 , x2 ), (b) états (y1 , y2 ), (c)
états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ), (e) Loi de commande , (f) Loi d’adaptation
des paramètres estimés (â, b̂, r̂). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
viii
3.15 Synchronisation adaptative dans le cas perturbé : (a) états (x1 , x2 ), (b) états (y1 , y2 ),
(c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ), (e) Loi de commande , (f) Loi d’adap-
tation des paramètres estimés (â, b̂, r̂). . . . . . . . . . . . . . . . . . . . . . . . . 74
3.17 Synchronisation non adaptative sur Proteus : (a) états (x1 , x2 ), (b) états (y1 , y2 ), (c)
états (z1 , z2 ), (d) état erreur e1 = x2 − x1 ,(e) état erreur e2 = y2 − y1 ,(f) état erreur
e3 = z2 − z1 , et (g) Loi de commande . . . . . . . . . . . . . . . . . . . . . . . . . 77
ix
Liste des tableaux
x
Liste des Abbréviations
µC Microcontrôleur
ALU Arithmetic Logic Unit
CAN Convertisseur Analogique Numérique
CAO Conception Assistée par Ordinateur
CISC Complex Instruction Set Computer
CMOS Complementary Metal Oxyde Semiconductor
CNA Convertisseur Numérique Analogique
CPU Central Processing Unit
EEPROM Erasable Electrically Programmable Read Only Memory
EPROM Electrically Programmable Read Only Memory
GL Grünwald-Letnikov
MATLAB MATrix LABoratory
MLI Modulation en Largeur d’Impulsion
PDIP Plastic Dual In Line
PIC Peripheral Interface Controller
PID Proportionnel, Intégral, Dérivé
PROM Programmable Read Only Memory
RAM Random Acess Memory
RISC Reduced Instruction Set Computer
RL Riemann-Liouville
ROM Read Only Memory
xi
Résumé
Ce travail porte sur la synthèse et l’implémentation sur microcontrôleur des lois de com-
mandes pour la synchronisation de deux systèmes de jerk à dérivée fractionnaire. Nous intro-
duisons dans ce mémoire un nouveau système fractionnaire de jerk possédant une double non
linéarité dont l’une sinusoı̈dale. Nous avons présenté des outils de caractérisation et des méthodes
de résolution numérique des systèmes chaotiques fractionnaires notamment une méthode algorith-
mique reposant sur le modèle prédicteur-correcteur. L’étude du nouveau système par des approches
fractionnaires a permis de révéler le répertoire dynamique riche et varié du nouveau système. Par
ailleurs nous avons conçu deux lois de commande, dont l’une adaptative, pour la synchronisation
de deux systèmes de jerk à dérivées fractionnaires. Les résultats de simulation sur MATLAB ont
permis de montrer que les lois de commande conçues sont toutes deux stables et robustes bien
que celle adaptative présente de meilleures performances. Par la suite, nous avons implémenté le
nouveau système et les lois de commandes conçues sur PIC via Proteus. Les résultats obtenus sont
en accords avec les résultats de simulations MATLAB.
Mots clés : chaos, jerk, synchronisation, ordre fractionnaire, implémentation sur micro-
contrôleur.
xii
Abstract
This work deals with the design and implementation of control laws for the synchronization of
two fractional derivative jerk systems on a microcontroller. We introduce therein a new fractional
jerk system with a double non-linearity of which one is sinusoıdal. We have presented charac-
terization tools and numerical resolution methods for fractional chaotic systems, in particular an
algorithmic method based on the predictor-corrector model. The study of the new system by frac-
tional approaches allowed us to reveal the rich and varied dynamic repertoire of the new system.
Moreover, we have designed two control laws, one of which is adaptive, for the synchronization
of two fractional derivative jerk systems. Simulation results on MATLAB have shown that the
designed control laws are both stable and robust although the adaptive one presents better perfor-
mances. Then, we implemented the new system and the designed control laws on PIC via Proteus.
The results obtained are in agreement with the results of MATLAB simulations.
xiii
Introduction Générale
C’est donc sans surprise que le calcul fractionnaire soit un outil très apprécié dans l’étude du
chaos. Le chaos a été découvert par le mathématicien Henri Poincaré en 1900 et mis en évidence
par le physicien Edward Lorenz en 1963 et depuis lors il a été observé dans de nombreux do-
maines [3, 4, 5]. Un système est dit chaotique s’il a un comportement dynamique déterministe,
imprédictible et si pour deux conditions initiales très proches le système présente des évolutions
temporelles totalement différentes. Cette dernière propriété connue sous le nom de sensibilité aux
conditions initiales est cause de nombreux défis et problèmes pour les applications du chaos. Face à
ces défis, les chercheurs ont développé une théorie du contrôle du chaos dont l’objectif est double :
supprimer le chaos lorsque celui-ci est nuisible et l’améliorer ou le maintenir lorsque celui est
bénéfique. Les premiers articles parus sur le contrôle du chaos sont ceux de Ott, Grebogi et Yorke
[6] et de Pecora et Carroll [7] portant respectivement sur la suppression du chaos et sur la synchro-
1
Introduction Générale 2
nisation pour imposer une dynamique chaotique à un système indépendamment des conditions
initiales dans lesquelles il est pris.
Dans ce travail de mémoire, nous étudions avec une approche mathématique fractionnaire,
les systèmes de jerk qui sont une classe de systèmes chaotiques ; nous concevons aussi des com-
mandes afin de synchroniser deux systèmes de jerk à dérivées fractionnaires et nous implémenterons
ces commandes sur microcontrôleur. Pour y arriver, nous avons structurer notre travail en trois cha-
pitres :
• Le premier commence par quelques notions de base sur calcul fractionnaire suivies des
généralités sur les systèmes chaotiques et il se termine par un aperçu général sur la syn-
chronisation des systèmes chaotiques.
• Le second porte sur les méthodes de résolution numérique et de synchronisation des systèmes
chaotiques à dérivées fractionnaires. Les ressources matérielles et logicielles nécessaires
pour la simulation et l’implémentation des systèmes chaotiques sont aussi présentées.
• Le dernier chapitre est consacré aux résultats de simulations et d’implémentations des systèmes
chaotiques et de leur synchronisation. Chaque résultat est accompagné d’une discussion.
CHAOTIQUE
Introduction
d
L’opérateur de différenciation D = dx est un concept familier et élémentaire du calcul
différentiel. En effet, depuis les travaux de Newton et de Leibniz surtout, la nième dérivée d’une
d n f (x)
fonction appropriée f , notée Dn f (x) = dxn est bien définie lorsque n est un entier positif.
L’extension de l’opérateur de différenciation à l’ordre non entier débute à la fin du 17ième siècle
grâce aux divers échanges entre les pionniers tels que Gottfried Leibniz, Guillaume de L’Hôspital
et Johann Bernouilli qui pressentent l’utilité à venir de leurs travaux [1]. Mais ce n’est qu’en
1884 que la théorie des opérateurs généralisés atteint un niveau de développement sérieux, faisant
ainsi du calcul fractionnaire un outil indispensable pour le scientifique moderne [2] . Dès lors, il
s’en suit plusieurs ouvrages, revues et textes consacrés au calcul fractionnaire [8, 9] qui devient
une branche à part entière de l’analyse mathématique en rapport avec la théorie des opérateurs
pseudo-différentiels [3]. Aujourd’hui encore, le succès et l’intérêt pour le calcul fractionnaire ne
cessent de croitre particulièrement du fait qu’il décrit mieux les systèmes complexes modélisant
les phénomènes de physique, biologie ou de l’ingénierie [10, 11, 12]. Dans ce chapitre, nous
débuterons par une présentation générale des outils du calcul fractionnaire ; ensuite nous étudierons
les systèmes non linéaires à dynamique chaotique et enfin nous terminerons par l’étude et la
présentation de quelques méthodes de synchronisation des systèmes chaotiques.
3
1.1 Généralités sur les systèmes d’ordre fractionnaire 4
Il existe des fonctions dites spéciales ou de base pour le calcul fractionnaire qui jouent un
rôle important dans la définition des opérateurs d’ordre non entier [14]. Ces fonctions sont :
1. La fonction Gamma :
La fonction Gamma d’Euler Γ(z) est sans doute la fonction la plus utile pour le calcul frac-
tionnaire. Elle est définie par l’intégrale suivante :
Z+∞
Γ(z) = t z−1 e−t dt, (1.1)
0
avec Γ(1) = 1, Γ(0+) = +∞. Pour 0 < z ≤ 1, Γ(z) est une fonction monotone et strictement
décroissante. Elle est caractérisée par la relation de récurrence suivante : Γ(z + 1) = zΓ(z).
La fonction Gamma d’Euler est surtout célèbre pour le fait qu’elle généralise la factorielle :
Γ(n) = (n − 1)! , comme demontré dans [14].
2. La fonction Bêta :
La fonction Bêta β (x, y) est une fonction à deux variables complexes à partie réelle positive.
Elle est un type d’intégrale d’Euler définie par :
Z1
β (x, y) = t x−1 (1 − t)y−1 dt, (1.2)
0
3. La fonction Mittag-Leffler :
Il s’agit d’une fonction de base pour le calcul fractionnaire introduite par Humbert et Agar-
wal [15] en 1953. C’est une fonction de type Mittag-Leffler à deux paramètres définie par le
développement en série suivant [14, 15, 16, 17] :
∞
zk
Eα,β (z) = ∑ Γ(αk + β ) , α > 0, β > 0. (1.4)
k=0
Diverses définitions sont proposées pour généraliser la différentiation à des ordres non entiers,
parmi elles, les plus connues sont :
• Définition de Riemann-Liouville :
Soit q ∈ R+ et f une fonction localement intégrable et définie sur [t0 ; +∞[ avec t0 ∈ R. La
dérivée d’ordre q de la fonction f de borne inférieure t0 est définie par [20] :
Zt
RL q 1 dn
t0 Dt f (t) = (t − τ)n−q−1 f (τ)dτ, (1.9)
Γ(n − q) dt n
t0
avec t > t0 , Γ la fonction définie en (1.1) et n un entier positif pris tel que (n − 1) < q < n.
• Définition de Caputo :
Dans le cadre de ses travaux sur la dissipation dans un matériau viscoélastique, Caputo
a introduit en 1960, une autre définition de la dérivation fractionnaire [13]. L’expression
mathématique donnée par celui-ci est :
Zt
C q 1 f n (τ)
t0 Dt f (t) = dτ, (1.10)
Γ(n − q) (t − τ)q−n+1
t0
avec n un entier positif pris tel que (n − 1) < q < n. Cette dernière définition a l’avantage
d’incoporer les conditions initiales de la fonction à traiter et par conséquent décrit mieux les
problèmes de conditions aux limites couramment rencontrés en physique.
• Définition de Grunwald-Leitnikov :
q
avec = ω (q) = 1, sont les coefficients du binôme de Newton suivant :
0
0
∞ q ∞
(q) j
(1 − z)q = ∑ (−1) j zj = ∑ ωj z (1.13)
j=0 j j=0
Les principales propriétés des opérateurs différentiels fractionnaires sont les suivantes :
q
1. Si f (t) est une fonction analytique en t alors sa dérivée fractionnaire Dt f (t) est une fonction
analytique en t et en q.
q
2. Si q = n est un entier positif alors l’opérateur Dt f (t) donne le même résultat que la différenciation
classique d’ordre entier n.
q
3. Pour q = 0, l’opération Dt f (t) est l’opération identité :
q
Dt f (t) = f (t) (1.14)
q q q
Dt [γ f (t) + δ g(t)] = γDt f (t) + δ Dt g(t) (1.15)
q q q q q +q2
Dt 1 Dt 2 f (t) = Dt 2 Dt 2 f (t) = Dt 1 f (t) (1.16)
La stabilité des systèmes fractionnaires non linéaires est un domaine de recherche qui intéresse
beaucoup de chercheurs et qui, malgré les nombreuses méthodes développées, reste un sujet de re-
cherche ouvert. Nous rappelons ici un résultat important pour la stabilité des systèmes d’ordre
fractionnaire démontré dans [24] :
avec 0 < q 6 1 et f (t, x(t)) satisfait à la condition de Lipschitz avec la constante de Lipschitz
positive.
En général, un système non linéaire est un système dont les équations ne satisfont pas le
principe de superposition. Si au moins une des équations d’un système possède un terme ou une
fonction non linéaire, alors le système entier est dit non linéaire. Pour la plupart des modèles
mathématiques inspirés des systèmes physiques, la non-linéarité vient du fait que le système
possède une caractéristique de transfert non linéaire comme, par exemple, la caractéristique courant-
tension d’une diode ou un autre élément non linéraire comme le memristor [10, 25]. Si la non-
linéarité des systèmes est connue depuis longtemps, ce n’est que récemment (vers 1900) que Henri
Poincaré, en travaillant sur la mécanique céleste et la mécanique statistique, découvre la dynamique
chaotique de certains systèmes non linéaires [26]. Mais ce n’est qu’en 1963 que le météorologue
Edward Lorenz met en évidence le caractère chaotique des mouvements turbulents d’un fluide
comme l’atmosphère [27]. Depuis lors, la dynamique chaotique est observée dans de nombreux
domaines comme la biologie, la robotique, la cryptographie [4], les circuits électriques [28, 29] et
bien d’autres.
Le terme système dynamique fait référence à toute entité physique ou abstraite dont la
configuration à tout instant peut être caractérisée par un ensemble de variables dont l’état futur est
déterminé de façon unique en fonction de l’état présent et des états antérieurs du système par une
loi de transformation des variables d’état du système. Un système dynamique est donc :
• causal, l’état futur des variables d’état ne dépend que des états passés ;
• déterministe, l’évolution des variables est gouvernée par des lois non probabilistes.
L’évolution déterministe d’un système dynamique peut être continue ou discrète dans le
temps.
• Dans le cas d’une évolution continue, la dynamique du système est représentée par une
équation différentielle de la forme :
dX(t)
= f (X(t),t, p) (1.19)
dt
où X = (x1 , x2 , ..., xn ) représente le vecteur d’état du système de dimension n, p le vecteur
paramètre et f une fonction continue.
Sinon, la dynamique reste dans la forme de l’équation (1.19), la fonction f dépend alors
explicitement de la variable libre t et le système est dit non autonome.
Tout système non autonome peut être transformé en système autonome. Il suffit pour cela
d’effectuer un changement de variable adéquat. Considérons le système non autonome défini
par (1.19). En posant xn+1 = t, la dynamique du système devient :
xn+1 = t
(1.21)
dX = f (X, p)
dt
• Dans le cas d’une évolution discrète dans le temps, le système dynamique est présenté par
une fonction itérative :
Xk+1 = f (Xk , k, p) (1.22)
Si f dépend explicitement de k, le système discret est dit non autonome. Autrement il est
autonome. Comme dans le cas continue la transformation d’un système discret non autonome
en système discret autonome s’accompagne par l’augmentation d’une unité de la dimension
du système.
• il est topologiquement transitif ; la transitivité signifiant que si l’on considère deux voisinages
quelconques de deux états distincts d’un système dynamique, il existe une trajectoire qui
passe de l’un à l’autre.
• il présente le phénomène de sensibilité aux conditions initiales c’est à dire qu’une modifi-
cation même minime des conditions initiales change de manière significative l’évolution du
système.
Houmor [14] nous fait remarquer que les deux premières hypothèses impliquent la troisième
sans que la réciproque soit vraie.
[Link] Attracteurs
Les trajectoires associées à des régimes dynamiques dessinent des objets géométriques parti-
culiers dans l’espace des phases (section [Link]). Ces objets sont de morphologies et de natures
différentes et constituent différentes familles d’attracteurs. On distingue :
• Le point fixe, lorsque les trajectoires convergent vers un point de l’espace des phases. Ce
point est une solution stationnaire constante du système dynamique considéré.
• Le cycle limite, lorsque les trajectoires tendent vers une courbe fermée dans l’espace des
phases. Ce cycle limite est une solution périodique du système étudié.
• Le tore, lorsque les trajectoires convergent dans l’espace des phases vers un attracteur en
forme d’un tore. Cet objet résulte très souvent des mouvements quasi-périodiques.
• L’attracteur étrange, c’est un objet d’une complexité plus grande que ceux cités. Il se forme
après une période transitoire bien déterminée et est caractéristique des systèmes chaotiques.
On parle aussi d’attracteur chaotique.
Les propriétés d’un attracteur étrange sont celles du système de cet attracteur. Ces propriétés sont
les suivantes :
• La sensibilité aux conditions initiales déjà mentionnée dans la définition du chaos selon
Devaney (section [Link]) et illustrée par la figure (1.2) où pour deux trajectoires initialement
très voisines, on observe une divergence exponentielle au cours du temps.
• La dimension fractale qui est celle de l’attracteur étrange et doit être positive et non entière.
• L’auto-similarité qui est le fait que le motif géométrique d’un attracteur étrange se répète
sur des échelles de plus en plus petites. Cette propriété est caractéristique des structures à
géométrie fractale à laquelle appartient un attracteur étrange.
F IGURE 1.1 : Attracteur de Chen F IGURE 1.2 : Sensibilité aux conditions initiales
Il s’agit des quantités calculées par des méthodes mathématiques capable de rendre intelli-
gible l’évolution temporelle des phénomènes à dynamique complexe. Elles permettent donc de se
prononcer sur l’imprédictibilité à long terme de la dynamique non linéaire d’un système. Dans la
littérature, les outils les plus cités permettant de mesurer quantitativement le chaos sont :
Introduite en 1983 par Grassberger et Procaccia [32], elle témoigne du nombre de degré de
liberté que possède un système purement non linéaire. Pour la déterminer on peut utiliser la
méthode décrite dans [33]. A chaque point v d’un attracteur, on associe une sphère de centre
v de rayon r, et l’on compte la proportion de points de l’attracteur contenus dans cette sphère.
Cette proportion est donc dépendante de r et de l’espace dans lequel l’attracteur est plongé.
On note la proportion c(r, m). Lorsque r est suffisamment petit, c(r, m) suit une loi de puis-
sance : c(r, m) = rvm ce qui s’écrit également comme
log(c(r, m))
vm = lim (1.23)
i→0+ log r
C’est cette dernière quantité (1.23) qui est la dimension de corrélation ou dimension de
Grassberger-Procaccia. Elle définit la dimension de l’attracteur du système et est encore
appelée dimension fractale par certains auteurs.
Issue de la théorie de l’information de Shannon, cet outil a été développé en 1958 par le
mathématicien russe Kolmogorov [34]. C’est un invariant fondamental des systèmes dyna-
miques mesurés qui permet une définition du chaos : une transformation chaotique peut être
vue comme une transformation d’entropie non nulle.
C’est en 1892, dans ses travaux de thèse sur la stabilité des systèmes dynamiques, que Lya-
punov introduit l’idée de mesurer la divergence entre deux orbites issues de conditions ini-
tiales voisines afin de quantifier le dégré de sensibilité aux conditions initiales d’un système
dynamique. Ce sont les exposants de Lyapunov qui rendent compte de cette mesure.
Pour les déterminer, on considère un système dynamique quelconque dont la condition ini-
tiale x0 est affectée d’une perturbation infinitésimale ε0 . Après n itérations, la perturbation
εn
initiale sera amplifiée d’un facteur ε0 et la perturbation augmentera ou diminuera selon que
ce facteur soit supérieur ou inférieur à 1.
Pour déterminer la façon dont la perturbation initiale se propage, il suffit de calculer le pro-
duit
εn εn εn−1 εn−2 ε2 ε1
= . . ... . (1.24)
ε0 εn−1 εn−2 εn−3 ε1 ε0
En faisant tendre vers l’infini la moyenne de la dernière quantité obtenue, on obtient l’expo-
sant de Lyapunov noté λ :
1 n εk
λ = lim ∑ ln εk−1 (1.26)
n→+∞ n
k=1
εk et εk−1 étant de très petites valeurs, et en considérant la fonction f associée à la dynamique
du système telle que définie en (1.20), on peut écrire :
1 n
λ = lim
n→+∞ n
∑ ln f 0(xk−1) (1.29)
k=1
εn
Une valeur positive de ce dernier conduit à ε0 > 1, la perturbation initiale se propage alors
en s’amplifiant : le système est donc sensible aux variations, même moindres, de ses condi-
tions initiales. Il peut donc être chaotique. Dans le cas où l’exposant est négatif, la perturba-
tion initiale progresse en s’atténuant et le système n’est pas chaotique.
• La dimension de Lyapunov
Cette dimension est introduite en 1983 par Kaplan et Yorke [36]. Elle découle des exposants
de Lyapunov et est définie par :
m
∑ λk
k=1
dl = m + , (1.30)
|λm+1 |
où dl est la dimension de Lyapunov, λk , k = 1, 2, ..., m les exposants de Lyapunov du système
dynamique et m le plus grand entier positif tel que :
m m+1
∑ λk > 0 et ∑ λk 6 0 (1.31)
k=1 k=1
Une valeur positive et non entière de cette dimension indique que le système possède au
moins un attracteur étrange.
• Le test 0-1
Introduit en 2004 par Georg A. Gottwald et Ian Melbourne [37] ce nouveau test pour le
chaos intéresse beaucoup de chercheurs qui en proposent déjà d’autres versions [38]. Ce
nouveau test s’applique directement sur les séries temporelles issues d’une récurrence ou
d’une équation différentielle ordinaire, retardée ou même partielle. Son principale avantage
est qu’il s’applique aussi aux données issues de l’expérimentation et ne nécessite pas de
reconstruction d’espace des phases contrairement aux méthodes standards de calcul de l’ex-
posant de Lyapunov.
Pour une application standard de ce test, on considère une série unidimensionnelle chronolo-
gique φ (n) pour n = 1, 2, ... Ces données permettent de construire le système bidimensionnel
suivant :
p(n + 1) = p(n) + φ (n) cos cn
(1.32)
q(n + 1) = q(n) + φ (n) sin cn
1 N 2 2
M(n) = lim ∑ [p(k + n) − p(k)] + [q(k + n) − q(k)] , n = 1, 2, 3, ...
N→+∞ N
k=1
log M(n)
K = lim (1.33)
n→+∞ log n
C’est cette dernière quantité (1.33) qui permet de se prononcer sur la dynamique du système :
si K = 0 alors la dynamique est régulière (périodique ou quasi-périodique), si K = 1 alors la
dynamique du système est chaotique.
Dans la pratique K n’est pas binaire mais se rapproche tantôt de 0 tantôt de 1 selon que la
dynamique du système est régulière ou chaotique. Les méthodes améliorées [38] de test 0-1
permettent de se rapprocher de ce comportement binaire désiré.
Il s’agit des outils permettant de caractériser qualitativement les systèmes dynamiques chao-
tiques. Ces outils ont l’avantage d’être exclusivement graphiques et de permettre une étude qua-
litative et rapide d’un système dynamique sans avoir à faire des calculs complexes. Les outils les
plus mentionnés dans la littérature sont :
• Le diagramme de bifurcation
– Le dédoublement de période
– La quasi-périodicité
Le diagramme de bifurcation est l’outil graphique qui rend compte des scénarios ci-haut
mentionnés. C’est donc un tracé permettant d’identifier les différents régimes dynamiques
d’un système suivant l’évolution d’un de ses paramètres. Le diagramme de bifurcation dresse
une véritable route vers le chaos.
• La section de Poincaré
La section de Poincaré est un outil graphique qui facilite l’étude des systèmes dynamiques en
ramenant l’analyse d’un système différentiel à temps continu de dimension m à celle d’une
application à temps discret de dimension m − 1.
Dans le cas d’un système dynamique de dimension 3, la section de Poincaré se dessine sur
une surface (∑) appartenant au plan (qi , q j )i6= j , i, j = 1, 2, 3 avec qi , i = 1, 2, 3 les coordonnées
généralisées du système.
F IGURE 1.4 : Section de Poincaré : la trajectoire de phase coupe le plan (∑) [39]
La section de Poincaré est représentée à la figure (1.4) par l’ensemble des points d’intersec-
tions P(x) de la trajectoire de phase avec la surface ∑. Pour une meilleure analyse qualitative,
la surface ∑ doit être choisie de manière à avoir le plus grand nombre de points d’intersec-
tions comme celle choisie à la figure (1.5) pour l’oscillateur de Duffing.
Lorsque la dimension n d’un système dynamique croit (n > 2), il devient difficile de s’ima-
giner comment le système évolue dans le temps surtout lorsque ce dernier est sensible aux
conditions initiales. Dans ce cas, pour éliminer la dépendance temporelle et mieux apprécier
la sensibilité du système aux conditions initiales, il convient de représenter le système dans
un espace mathématique dont les axes de coordonnées sont les variables d’états xi , i = 1, 2, ..n
du système. Ainsi l’état du système est entièrement représenté à chaque instant.
La solution x0 à un instant initial t0 décrit dans l’espace des phases une courbe appelée
trajectoire de phase. L’ensemble des trajectoires de phase décrites par le système à partir
de toutes les conditions initiales réalisables définit le portrait de phase. Ce dernier permet
d’apercevoir plus facilement l’attracteur du système.
L’espace des phases est sans doute la façon la plus intuitive de vérifier qu’un système non
linéaire possède un attracteur étrange et donc une dynamique chaotique.
La littérature situe les origines de la synchronisation au dix-septième siècle avec les travaux
du physicien Christian Huygens. Ce dernier aurait remarqué que deux horloges à balancier, placées
l’une à côté de l’autre, convergeaient rapidement vers un mouvement identique en fréquence et en
phase. Plus encore, si les horloges étaient perturbées dans leurs mouvements par Huygens, elles
adoptaient à nouveau un mouvement identique en fréquence et phase, elles finissaient toujours par
être synchrones. Avec ses travaux il posait ainsi les bases de la théorie du contrôle des systèmes.
Bien de temps après les travaux pionniers de Huygens, la théorie classique du contrôle s’est
enrichie de nombreuses techniques de commande, particulièrement efficace pour la synchronisa-
tion des systèmes linéaires. Ces techniques étaient malheureusement médiocres lorsqu’elles étaient
appliquées aux processus réels qui sont généralement modélisés par des systèmes non linéaires.
• La synchronisation unidirectionnelle :
Ce type de synchronisation concerne généralement deux systèmes chaotiques dont l’un est
le système maitre ou système émetteur et l’autre le système esclave ou système récepteur. La
• La synchronisation bidirectionnelle
La particularité ici est que la loi de commande est appliquée aux deux systèmes à la fois.
Ainsi chacun des systèmes à synchroniser peut se comporter comme un système maitre
(émetteur) ou esclave (récepteur).
Notons que pour réaliser ces différents types de synchronisation, plusieurs techniques de
conception de commande sont présentes dans la littérature notamment la technique de commande
par backstepping dans sa version classique et adaptative que nous utiliserons dans la suite de nos
travaux pour ses qualités de robustesse. En plus de cette technique, on peut citer la technique
de synchronisation par régulateur PID (Proportionnel, Intégral, Dérivé) qui est la technique la
plus utilisée dans la commande des processus industriels. Elle est reconnue pour sa simplicité
d’implémentation et peut dans sa forme généralisée assurer la synchronisation des systèmes dyna-
miques fractionnaires [40].
Conclusion
Dans ce chapitre, nous avons présenté, en premier lieu, les définitions et notions de base se
rapportant au calcul fractionnaire ; puis nous avons fait état des propriétés et des outils permet-
tant la compréhension et la caractérisation des phénomènes chaotiques pour enfin terminer par un
aperçu général de la synchronisation des systèmes chaotiques à dérivée fractionnaire. Il en ressort
que le calcul fractionnaire a ceci de particulier que ses opérateurs constituent l’outil par excellence
d’investigation et de description des processus à mémoire comme les processus chaotiques. Nous
retenons aussi que ces processus chaotiques sont sensibles aux conditions initiales et bien qu’ils
soient caractérisés par des lois déterministes, il est impossible de prédire leur comportement à long
terme. Néanmoins nous avons présenté, en dernière partie, des méthodes permettant de synchro-
niser l’évolution des systèmes chaotiques et avons mis en exergue les deux grandes catégories de
synchronisation ainsi que leurs principes de fonctionnement respectifs.
M ÉTHODOLOGIE ET PR ÉSENTATION DU
MICROCONTROLEUR
Introduction
Hans Goettlieb [41] a établi qu’un système 3D chaotique peut se mettre sous la forme
d’une seule équation différentielle ordinaire, connue sous l’appelation d’ équation différentielle
de jerk. Cette classe particulière de système chaotique est populaire et fait l’objet de nombreuses
études [5, 42, 43] pour son expression algébrique simple et pour le fait qu’elle modélise nombreux
phénomèmes dans les sciences comme certaines réactions biologiques ou certaines oscillations
mécaniques [3, 5, 10]. Dans ce chapitre, nous ferons tout d’abord une description générale suivie
d’une analyse des systèmes chaotiques de jerk, puis nous présenterons les méthodes de résolution
et de synchronisation des systèmes de jerk à dérivée fractionnaire et enfin nous implémenterons les
méthodes présentées grâce aux ressources logicielles et matérielles que nous aurons au préalable
présentées.
La forme générale des équations de jerk est donnée par l’expression suivante :
...
x = J(x, ẋ, ẍ), (2.1)
22
2.1 Description et analyse d’un système chaotique de Jerk 23
où J est une fonction non linéaire arbitraire. D’un point de vue mathématique, l’équation (2.1)
représente une équation différentielle d’ordre trois décrivant l’évolution temporelle d’une unique
variable d’état. Pour le physicien, si x représente la position instantanée d’un objet, ẋ sa vitesse
et ẍ son accélération, alors le jerk est la dérivée temporelle de l’accélération ou encore la dérivée
temporelle d’ordre 3 de la position.
Généralement on représente (2.1) sous forme de système en définissant deux nouvelles va-
riables d’état y = ẋ et z = ẏ = ẍ s’interprétant respectivement comme la vitesse et l’accélération
d’un point de vue mécanique. Ainsi l’équation différentielle (2.1) peut se mettre sous la forme
système :
ẋ = y
ẏ = z (2.2)
ż = J(x, y, z)
Il existe plusieurs systèmes chaotiques pouvant se mettre sous la forme (2.2). Ils appar-
tiennent tous à la classe des systèmes de Jerk. Les plus rencontrés dans la littérature sont les sys-
temes de Kengne [44], Sprott [42], Coullet [45] et de Elsonbaty [46].
Le modèle proposé par J.C. Sprott dans son livre [43] et dénommé MO5 par ce dernier, est
défini par l’équation différentielle suivante :
...
x + 0.7ẍ + ẋ = x(1 − x2 ) (2.3)
Ce système est dissipatif et présente une dynamique chaotique comme l’atteste l’étude bien détaillée
faite dans [43].
Dans ce travail, nous proposons un nouveau système de Jerk en ajoutant un terme non linéaire
de la forme A(x)sin(2π f t) dans la fonction jerk du modèle (2.3). A(x) est un monôme en x de la
forme
A(x) = rx, (2.4)
Le terme ajouté agit donc comme un forçage sinusoı̈dale d’amplitude variable, de fréquence
f et l’équation différentielle du nouveau système obtenu est donnée par :
...
x = −aẍ − bẋ + x(1 − x2 ) + rxsin(2π f t), (2.5)
L’équation (2.5) montre que le système proposé appartient bel et bien à la classe des systèmes
”jerks élégants” décrit par Sprott dans [43]. Il peut se mettre sous la forme système suivante :
ẋ = y
ẏ = z (2.6)
ż = −az − by + x(1 − x2 ) + rxsin(2π f t)
Les équations différentielles décrivant la dynamique de notre système telles que données en
(2.6) sont aux ordres entiers. Pour la suite, nous étendons la définition du système (2.6) aux ordres
non entiers qui révèlent bien souvent des dynamiques inconnues des ordres entiers. La nouvelle
forme de notre système est alors donnée par :
Dq1 x = y
Dq2 y = z (2.7)
Dq3 z = −az − by + x(1 − x2 ) + rxsin(2π f t),
Notre système présente une dynamique chaotique pour les valeurs des paramètres, des condi-
tions initiales et ordres de dérivation suivants :
(a, b, r) = (0.7, 1, 0)
(x0 , y0 , z0 ) = (0, 0, 0.2) (2.8)
q1 = q2 = q3 = 0.95
Définition :
où x(t) = (x1 , x2 , x3 . . . , xn )T représente la variable d’état du système ; q ∈ [0, 1] et f(t,x) une fonction
différentielle non linéaire.
f (t, x p ) = 0 (2.10)
En appliquant la condition (2.10), les points d’équilibre du système de Jerk proposé (2.7)
s’obtiennent en résolvant le système d’équation :
y=0
z=0 (2.11)
−az − by + x(1 − x2 ) + rxsin(2π f t) = 0,
p T
Les solutions du système (2.11) sont données par : E0 = (0, 0, 0)T , et E± = ± 1 + rsin(2π f t), 0, 0
h i
k 2k+1
pour r > 0 et t ∈ ∪k=0,1,2,3,··· f , 2 f . Ces solutions sont donc les points d’équilibre ou station-
naires de notre système.
On dispose de nombreux outils pour l’étude de la stabilité des points d’équilibre de notre
système. Nous utiliserons les critères de stabilité de Routh-Hurwitz pour les systèmes fraction-
naires établis dans [47]. Pour cela, on détermine d’abord la matrice jacobienne du système. Elle
est donnée par :
0 1 0
(2.12)
0 0 1
1 + rsin(2π f t) − 3x2 −b −a
Ensuite, on détermine la stabilité des points d’équilibre.
0 1 0
T
• La jacobienne au point E0 = (0, 0, 0) , est donnée par J0 = 1 .
0 0
1 + rsin(2π f t) −b −a
On en déduit que l’équation aux valeurs propres au point E0 est donné par le polynôme
caractéristique :
Les résultats établis dans [47] permettent d’établir que le point E0 est :
h i
k 2k+1
– stable, si q < 2/3 et t ∈ ∪k=0,1,2,3,··· f , 2f ,
– instable, ailleurs.
0 1 0
• Pour les points E± , la jacobienne est donnée par J± = 1 .
0 0
−2(1 + rsin(2π f t)) −b −a
Ici l’équation aux valeurs propres conduit au polynôme suivant :
et au determinant :
Les résultats établies dans [47] permettent d’établir que le point E± est :
h i
k 2k+1
/ ∪k=0,1,2,3,···
– stable, si q < 2/3 et t ∈ f , 2f ,
h i
– stable, si q ≥ 2/3 et t ∈ / ∪k=0,1,2,3,··· kf , 2k+1
2f et si toutes les racines de l’équation
(2.15) satisfont à la condition | arg(λ ) |< q π2 ,
h i
k 2k+1
– instable si t ∈ ∪k=0,1,2,3,··· f , 2f .
Soit (x1 (τ), y1 (τ), z1 (τ)) la solution du système (2.7) avec les conditions initiales données
par (2.8). Il est facile de vérifier que (−x1 (τ), −y1 (τ), −z1 (τ)) est aussi solution de cette équation
dans les mêmes conditions initiales. Alors notre système est invariant par la transformation :
On peut donc conclure que notre système est symétrique et admet pour point de réflexion
symétrique le point d’équilibre de coordonnées (0, 0, 0).
La condition de dissipation d’un système dynamique est donnée dans [48] qui peut être
démontrée en calculant la compression ou l’extension du volume du système. Soit un système
dynamique à temps continu décrit par Ẋ = ϕ(X) où X = (x, y, z)T sont les coordonnées du vecteur
d’état X et ϕ(X) = (ϕ1 (x), ϕ2 (y), ϕ3 (z)). Le taux de compression ou d’extension est donné par :
l’espace d’état de phase. On dit alors que le système converge asymptotiquement vers un
attracteur.
• Si Λ > 0, il y’a accroissement du volume dans l’espace de phase (dans ce cas nous pouvons
avoir un système chaotique, un point fixe ou un cycle limite instable).Ce qui signifie aussi
que le système dynamique diverge lorsque t est grand (t → +∞) pour des conditions initiales
légèrement différentes de l’état stationnaire.
Λ = −a (2.19)
Comme a > 0, on conclut que notre système est dissipatif et peut par conséquent présenter des
attracteurs chaotiques
Dans cette section, il est donc question pour nous de présenter une méthode de résolution
moins gourmande en mémoire et permettant néanmoins d’approximer les solutions des systèmes
fractionnaires avec une bonne précision.
Soit [0, T ] l’intervalle sur lequel on veut trouver les solutions au problème (2.9). Rappelons
que le but n’est pas de trouver une expression analytique y(t) satisfaisant l’équation (2.9) mais
plutôt un ensemble discret et fini de points {(tk , y(tk ))} qui approximent la solution analytique
dans l’intervalle [0, T ].
T
Pour cela, on divise l’intervalle [0, T ] en N sous-intervalles [tk ,tk+1 ] de largeur h = N, la
relation entre tk et le pas temporel h étant évidemment tk = kh, k = 0, 1, · · · , N.
On suppose y(t), Dq y(t) et D2q y(t) continues dans l’intervalle [0, T ]. En utilisant la formule
généralisée de Taylor [49], on effectue un développement en série de y(t) autour de t = t0 = 0. En
considérant de plus que pour toute valeur de t, il existe une valeur c1 telle que :
q tq 2q
t 2q
y(t) = y(t0 ) + (D y(t)) (t0 ) + D y(t) (c1 ) (2.20)
Γ(q + 1) Γ(2q + 1)
On a (Dq y(t)) (t0 ) = f (t0 , y(t0 )) et h = t1 − t0 = h. En substituant ces deux dernières relations
dans (2.20), on obtient :
hq h2q
+ D2q y(t) (c1 )
y(t1 ) = y(t0 ) + f (t0 , y(t0 )) . (2.21)
Γ(q + 1) Γ(2q + 1)
En prenant h suffisamment petit, on peut négliger dans (2.21) les termes évoluant en h2q et on
trouve l’expression simplifiée :
hq
y(t1 ) = y(t0 ) + f (t0 , y(t0 )). (2.22)
Γ(q + 1)
En faisant plusieurs itérations de cette procédure, on obtient une séquence de points {(tk , y(tk ))}
qui approximent la solution réelle y(t). Le schéma itératif de la méthode est alors donné par :
tk+1 = tk + 1,
q
, avec k = 0, 1, · · · , N − 1. (2.23)
h
y(tk+1 ) = y(tk ) + Γ(q+1) f (tk , y(tk ))
Cette méthode est la méthode généralisée d’Euler introduite par Odibat et al. [50]. Il est
évident que pour q = 1, la méthode fractionnaire de résolution numérique d’Euler se confond à la
méthode classique d’Euler.
La méthode d’Euler même si elle est efficace et moins gourmande en mémoire, elle est connue
pour son manque de précision. Afin de pallier à cela, nous proposons dans cette partie un al-
gorithme de type prédiction-correction basé sur la méthode fractionnaire d’Euler et la méthode
modifiée d’interpolation des trapèzes [50].
Considérons le problème aux valeurs initiales (2.9) qui peut être réécrit sous la forme :
On cherche toujours les solutions approchées dans l’intervalle [0, T ] subdivisé en N inter-
T
valles [tk ,tk+1 ] d’égale largeur h = N avec tk = kh, k = 0, 1, · · · , N. Pour trouver la solution au point
(t1 , y(t1 )), on substitue t = t1 dans (2.24) et on obtient
Ensuite, on utilise la méthode des trapèzes modifiés [50] pour approximer Dq f (t, y(t))(t1 )
avec un pas temporel h = t1 − t0 , on trouve :
hq f (t0 , y(t0 )) hq f (t1 , y(t1 ))
y(t1 ) = q + + y(0) (2.26)
Γ(q + 2) Γ(q + 2)
On constate que la solution y(t1 ) est fonction de f (t1 , y(t1 )), il faut donc estimer y(t1 ) dans
f (t1 , y(t1 )) avec la méthode fractionnaire d’Euler, on obtient :
h q
q
hq f (t0 , y(t0 )) h f (t1 , y(t0 ) + Γ(q+1) f (t0 , y(t0 )))
y(t1 ) = q + + y(0) (2.27)
Γ(q + 2) Γ(q + 2)
Cette procédure est répétée (N − 1) fois pour générer N sequences de points qui approximent
la solution analytique y(t) sur l’intervalle [0, T ] . A chaque itération k, la méthode fractionnaire
d’Euler est utilisée pour prédire la valeur yP (tk ) :
hq
yP (tk ) = y(tk−1 ) + f (tk−1 , y(tk−1 ))
Γ(q + 1)
et la méthode modifiée des trapèzes pour corriger la valeur yC (tk ) :
hq f (tk−1 , y(tk−1 )) hq f (tk , yP (tk ))
yC (tk ) = q + + y(tk )
Γ(q + 2) Γ(q + 2)
On obtient ainsi le schéma itératif suivant :
yP (tk ) = y(tk−1 ) + hq f (tk−1 , y(tk−1 ))
Γ(q+1)
(2.28)
y(tk ) = q hq f (tk−1 ,y(tk−1 )) + hq f (tk ,yP (tk )) + y(tk )
Γ(q+2) Γ(q+2)
La solution telle que donnée par le système (2.28) convient parfaitement pour une implémentation
numérique à l’aide de logiciels qu’on présentera dans la suite.
La dynamique chaotique est observée dans une grande variété de systèmes parmi lesquels
les systèmes biologiques, les modèles climatiques, les systèmes mécaniques et autres. Il apparait
nécessaire non seulement de comprendre cette dynamique mais aussi de la contrôler. L’un des ob-
jectifs fondamentaux du contrôle de la dynamique chaotique est la synchronisation qui consiste à
imposer à deux systèmes chaotiques un comportement identique [51, 52, 11]. Ceci peut paraı̂tre
impossible si on s’en tient à la grande sensibilité des systèmes chaotiques fractionnaires aux condi-
tions initiales et aux perturbations liées à l’environnement d’exploitation de ces systèmes. Cepen-
dant, ces préjugés n’ont pas découragé les chercheurs qui, compte tenu des applications poten-
tielles des systèmes chaotiques fractionnaires, conçoivent des techniques de synchronisation afin
d’exploiter et de contrôler mieux les processus chaotiques.
où x(t) = (x0 , x1 , x2 , · · · , xn−1 )T , y(t) = (y0 , y1 , y2 , · · · , yn−1 )T représentent les variables d’état
des deux systèmes respectivement avec x0 6= y0 , 0 < q 6 1, u(t) ∈ ℜ et f (t, x), g(t, y) des fonctions
différentielles non linéaires.
Donc synchroniser les signaux chaotiques x(t) et y(t) signifie construire une commande ou loi de
synchronisation u(t) pour que les deux signaux soient asymptotiquement identiques.
Nous utiliserons la méthode dite backstepping. Il s’agit d’une méthode systématique et récursive
de synthèse de lois de commande non linéaires utilisant le principe de stabilité de Lyapunov. L’idée
de base de cette méthode repose sur la transformation des systèmes bouclés équivalents à des sous-
systèmes d’ordre un (01) en cascade stables au sens de Lyapounov. Cette stabilité au sens de
Lyapunov confère à la loi de commande ou de synchronisation des qualités de robustesse et une
stabilité globale asymptotique. De plus, cette dernière a l’avantage d’être applicable à une large
gamme de systèmes chaotiques forcés ou autonomes et de s’écrire juste en une seule composante
pour réaliser la synchronisation entre deux systèmes chaotiques.
On considère comme système maitre ou système émetteur le nouveau système chaotique de jerk
suivant :
Dq x1 = y1
Dq y1 = z1 (2.34)
Dq z1 = −az1 − by1 + x1 (1 − x2 ) + rx1 sin(2π f t),
1
où u est la loi de synchronisation à déterminer par la méthode backstepping. Pour chaque variable
d’état, on définit un état erreur. On obtient ainsi le système d’erreur :
ex = x2 − x1
ey = y2 − y1 (2.36)
ez = z2 − z1
Notre problème se change donc en problème de stabilisation du système d’erreur autour de zéro.
En substituant (2.34) et (2.35) dans (2.36), et en différentiant ce dernier à l’ordre non entier q par
rapport au temps, on obtient :
Dq ex = ey
Dq ey = ez (2.37)
Dq ez = −aez − bey + ex (1 + r sin(2π f t)) + (x3 − x3 ) + u
1 2
qui, en l’absence du contrôleur u, le système (2.37) admet le point (0, 0, 0) comme point d’équilibre.
La méthode de conception sera récursive à trois (03) étapes car le système a trois (03) variables
d’état, on traitera le système en trois (03) sous-systèmes en cascade chacun avec une seule entrée
et une seule sortie. On commence la conception avec le premier sous-système, puis le deuxième et
on termine avec le dernier et à chaque étape i un changement de coordonnées wi comme variable
virtuelle ou variable du backstepping est effectué.
1. Première étape :
La première étape consiste à déterminer une loi de commande virtuelle afin de stabiliser le
premier sous-système. La dynamique de la stabilité de ce sous-système est donnée par :
Dq ex = ey (2.38)
DqV1 (w1 ) = 2q w1 Dq w1 = 2q w1 ey
= 2q α1 w1 + 2q w1 w2 (2.42)
Pour rendre V1 (w1 ) négative définie, on choisit la fonction stabilisante α1 = −w1 , le second
terme dans DqV1 (w1 ) sera éliminé dans la prochaine étape. On a finalement :
DqV1 (w1 ) = −2q w2 + 2q w1 w2
1
(2.43)
w2 = ex + ey
2. Deuxième étape :
Dq ey = ez (2.44)
Dq w2 = ey + ez (2.45)
w3 = ez − α2 (2.46)
Pour déterminer la fonction stabilisante α2 , il faut faire un choix judicieux d’une fonction de
Lyapunov. Nous choisissons :
V2 (w1 , w2 ) = w21 + w22 (2.48)
α2 = −w1 − w2 + ey = −2(ex + ey )
et finalement on trouve :
DqV2 (w1 , w2 ) = −2q w2 − 2q w2 + 2q w2 w3
1 2
(2.50)
w3 = 2ex + 2ey + ez
3. Troisième étape :
C’est à cette étape que la commande finale u du système est déterminée. On considère
l’équation de stabilité du troisième sous-système :
Dq w3 = Dq 2ex + Dq 2ey + Dq ez
avec k > 0.
D’après la théorie de stabilité au sens de Lyapunov [24], comme la fonction V3 est continûment
différentiable ayant la propriété positive définie et sa dérivée négative définie grâce à la
contribution du terme u, on est en droit de dire que le point d’équilibre (ex , ey , ez ) = (0, 0, 0)
est asymptotiquement stable, ce qui signifie que les signaux chaotiques caractérisés par les
systèmes (2.30) et (2.31) sont asymptotiquement identiques au cours du temps : la com-
mande u assure bien la synchronisation des systèmes (2.34) et (2.35) et elle est stable au
sens de Lyapunov.
La limite bien connue des méthodes de synchronisation non adaptatives comme celle présentée
précédemment est qu’elles ne prennent pas en compte l’adaptation ou la modification dans le temps
des paramètres des systèmes à synchroniser. Cela nous amène dans cette section à aborder une
nouvelle méthode de synchronisation beaucoup plus fiable en ceci qu’elle repose sur un principe
d’estimation récursive ou de mise à jour des paramètres du modèle estimé à partir de la comparai-
son au modèle de référence et d’adaptation du calcul de la commande en se basant sur le modèle
estimé courant.
La méthode que nous utiliserons ici est la version adaptative de celle présentée à la sec-
tion précédente. Il s’agit donc du backstepping adaptatif. Comme la méthode classique, c’est une
méthode récursive de synthèse de lois de commande basée sur le principe de stabilité au sens
de Lyapunov. La principale différence étant la prise en compte des erreurs d’estimation des pa-
ramètres.
Comme précédemment, on définit respectivement les systèmes maitre (2.57) et esclave (2.58) par :
q
D x1 = y1
Dq x2 = y2
q
D y1 = z1 Dq y2 = z2
Dq z1 = −az1 − by1 + x1 (1 − x2 ) + rx1 sin(2π f t), D z2 = −az2 − by2 + x2 (1 − x2 ) + rx2 sin(2π f t) + u,
q
1 2
(2.57) (2.58)
où a, b, r sont les paramètres du système à synchroniser et u la loi de synchronisation à déterminer
par la méthode backstepping adaptative.
Pour chaque variable d’état, on définit un état erreur. On obtient ainsi le système d’erreur :
ex = x2 − x1
ey = y2 − y1 (2.59)
ez = z2 − z1
où â(t), b̂(t) et r̂(t) sont les estimations respectives des paramètres a, b et r. C’est cette matrice
qui fait la particularité du backstepping adaptatif par rapport au backstepping classique. En la
différentiant, on obtient :
Dq ea (t) = −Dq â(t)
Dq eb (t) = −Dq b̂(t) (2.62)
Dq er (t) = −Dq r̂(t)
1. Première étape :
DqV1 (w1 ) = 2q w1 Dq w1 = 2q ex ey
2. Deuxième étape :
On pose w3 = 2ex + 2ey + ez qui sera utilisée prochainement comme troisième variable vir-
tuelle de backstepping. Elle permet de mettre le deuxième sous-système et le troisième en
cascade. Pour la deuxième étape on obtient finalement :
DqV2 (w1 , w2 ) = −2q w2 − 2q w2 + 2q w2 w3
1 2
(2.68)
w3 = 2ex + 2ey + ez
3. Troisième étape :
A cette dernière étape, le choix d’une fonction de Lyapunov adéquate est capital. Nous choi-
sissons la fonction suivante :
où ea , eb , et er sont les erreurs d’estimation des paramètres telles que définies en (2.61).
DqV3 (w1 , w2 , w3 , ea , eb , er ) = −2q w21 −2q w22 +2q w2 w3 +2q w3 Dq w3 +2q (ea Dq ea +eb Dq eb +er Dq er )
(2.70)
En remplaçant dans l’équation (2.70), les expressions données par les équations (2.68),
(2.61) et (2.62), on obtient :
Pour rendre DqV3 négative définie, on choisit la commande de synchronisation u telle que :
avec k > 0.
V3 est une fonction continûment différentiable ayant la propriété positive définie et sa dérivée
négative définie grâce à la contribution du terme u et des lois d’adaptation des paramètres es-
timés donnés respectivement en (2.72) et (2.73). Les états erreurs convergent donc vers zéro.
La synchronisation adaptative des systèmes fractionnaires (2.57) et (2.58) est bien effective
et assurée par la commande u et les lois de mise à jour des paramètres estimés.
[Link] MATLAB
courbes et des données, de mettre en œuvre des algorithmes et de créer des interfaces utilisateurs.
Il est aussi un langage de script émulé dans l’environnement de développement du même nom. De-
puis sa première version parue en 1984, son développement est poursuivit sous licence propriétaire
par la société The MathWorks qui, grâce au développement de nombreuses bibliothèques de fonc-
tions (ou, comme MATLAB les nomme, toolboxes pour boites à outils en français) dédiées à des
domaines particuliers, a fait de MATLAB un outil de référence pour la modélisation des systèmes
physiques, la simulation des modèles mathématiques, la conception et la validation d’applications.
Bien que la version la plus récente de MATLAB soit la R2021a parue le 17 Mars 2021, nous uti-
liserons dans notre mémoire, pour sa disponibilité et sa convivialité, la version MATLAB R2016b
parue le 07 Septembre 2016.
L’interface principale par défaut de MATLAB R2016b (figure 2.1) présente un éditeur de
texte (editor en anglais) où les instructions peuvent être écrites en langage MATLAB, enregistrées
dans un fichier au format .m pour ensuite être exécutées ou modifiées. L’éditeur assure donc le
mode exécutif de MATLAB. On distingue aussi la fenêtre de commande (command window en
anglais) permettant le mode interactif du logiciel ; les instructions étant exécutées au fur et à me-
sure qu’elles sont entrées. Enfin on retrouve les fenêtres répertoire courant et espace de travail
(respectivement current folder et workspace en anglais) qui renseignent respectivement sur la liste
des fichiers du répertoire courant, sur les noms et valeurs des variables utilisées dans la session
courante.
En tant que EDI très complet, MPLAB X IDE, qu’on nommera tout simplement MPLAB
par la suite, propose les fonctionnalités suivantes :
• L’édition : MPLAB dispose d’un éditeur de code par défaut qu’il est recommandé d’utiliser
même s’il est possible d’utiliser un éditeur de code externe à MPLAB. Cet éditeur constitue
la zone principale de l’interface du logiciel (figure 2.2). Le code à saisir dans cette zone peut
être écrit en langage assembleur, dans ce cas le fichier aura le format .asm. Il peut être aussi
écrit en langage C produisant des fichiers au format .c, c’est cette dernière option que nous
choisirons due au fait que le langage C est de plus haut niveau que le langage assembleur
– SDCC (Small Device C Compiler, qui se traduit en français par Compilateur C pour
les Petits Dispositifs ) : c’est un compilateur C complètement gratuit et par conséquent
populaire auprès de certaines communautés de développeurs.
• Le débogage et/ou programmation : c’est une opération d’analyse d’un code pour détecter
d’éventuelles erreurs afin de les corriger. Il peut être réalisé de façon logicielle par le simula-
teur de MPLAB ou il peut être externe et dans ce cas il est réaliser par un débogueur externe.
Ces débogueurs externes sont généralement des programmateurs, ils servent donc aussi à
écrire le programme compilé dans la mémoire des micro-contrôleurs. Microchip fournit une
grande variété de pragrammateurs parmi lesquels PICkit 3, PICkit 4, SoftLog et Real-Ice.
Proteus Design Suite est une suite logicielle proposant un ensemble d’outils de développement
pour schématiser, tester et simuler des circuits et cartes électroniques. Elle est développée depuis
plus de trente années par la société Labcenter Electronic Ltd. et bien que la version la plus récente
soit la 8.12, nous utiliserons la version 8.6 publiée depuis le 11 Septembre 2017 pour sa disponi-
bilité et sa convivialité.
Des logiciels incluent dans la suite Proteus, les plus utilisés et connus pour la CAO Concep-
tion Assistée par Ordinateur) sont :
• Le logiciel ISIS : Il est principalement utilisé pour l’édition et la simulation des schémas
électroniques. La saisie schématique avec ISIS est intuitive et simple mais permet cepen-
dant de réaliser des circuits complexes en peu de temps grâce aux nombreuses bibliothèques
disponibles. Par ailleurs, la simulation permet de déceler d’éventuelles erreurs pour les cor-
riger. Il est aussi important de noter que grâce à des modules additionnels, ISIS permet de
simuler le comportement d’un micro-contrôleur et son interaction avec les composantes qui
l’entourent. C’est ce dernier atout qui motive principalement le choix de Proteus dans ce
travail.
• Le logiciel ARES : C’est un outil d’édition et de routage de Proteus qui fonctionne de paire
avec ISIS. En effet, lorsque sur ISIS, le comportement simulé du schéma électronique réalisé
convient au concepteur, il peut alors importer le schéma sur ARES afin d’en réaliser le circuit
imprimé ou, en terminologie électronique, le PCB (Printed Circuit Board).
– Des registres auxiliaires et des régistres d’index servant respectivement à relayer les
accumulateurs et au le mode d’adressage indirect ;
– Une unité arithmétique et logique (Arithmetic Logic Unit ou ALU en anglais) per-
mettant d’effectuer des opérations entre l’accumulateur et une opérande ;
– Un registre code condition pour gérer certaines particularités (retenu, zéro, interrup-
tion, ...) du résultat de la dernière opération.
• Des mémoires programmes : Ce sont des composants qui contiennent les instructions que
doit exécuter le µC. Ils sont uniquement accessible en lecture, on parle de mémoire morte.
Selon le mode de programmation, on distingue plusieurs types de mémoires mortes à savoir :
– La ROM (en anglais Read Only Memory ou en français mémoire à lecture seule). Son
contenu est programmé lors de sa fabrication.
– La EPROM (Electrically Programmable Read Only Memory). C’est une ROM pro-
grammable électriquement et effaçable aux ultra-violets.
– La EEPROM (Erasable Electrically Programmable Read Only Memory), elle est pro-
grammable et effaçable électriquement.
– Le type mémoire morte ou EEPROM non volatile avec un temps d’écriture assez élevé
par rapport au temps de lecture qui est assez faible.
• Des interfaces séries (synchrones ou asynchrones) pour le dialogue avec d’autres unités.
• Des timers pour générer ou mesurer des signaux avec une grande précision,
A la section [Link], nous avons choisi MPLAB X IDE de Microchip Technology comme
outil logiciel de développement de programmes à embarquer sur microcontrôleur. Ce logiciel n’est
bien compatible qu’avec les produits de marque Microchip. Cela nous conduit donc à choisir un
µC dans la gamme proposée par la société Microchip. Cette dernière classe ses microcontrôleurs
en trois groupes selon la taille de leurs instructions, on distingue :
• Le groupe dit ”Base-Line”, les instructions sont codées sur 12 bits et la famille la plus
connue appartenant à cette catégorie est la famille 12C5X.
• Le groupe dit ”Mid-Range”, les instructions sont codées sur 14 bits. Ce groupe est semblable
au précédent mais disposent de ressources internes plus nombreuses comme un CAN ou des
ports plus variés. Le µC représentatif de ce groupe est sans doute le PIC16F877.
• Le dernier groupe est qualifié par Microchip de ”High-End”, ses instructions sont codées
sur 16 bits et il concerne les familles 18CXX.
• Les deux (02) premiers chiffres indiquent le groupe du PIC : 16 indique le groupe ”Mid-
Range”.
• La lettre F renseigne que la mémoire programme est de type flash, elle a donc les ca-
ractéristiques d’une mémoire vive sans que ses données disparaissent lors d’une mise hors
tension.
• Les indications 877A renseigne sur le modèle du PIC. Ce modèle peut fonctionner avec une
fréquence d’horloge réglable de 0 à 20MHz.
• La lettre P renseigne sur le type de boı̂tier, ici il s’agit d’un boı̂tier quarante (40) broches
PDIP (Plastic Dual In Line)
La forme manufacturée du PIC16F877A-I/P est donnée par la figure (2.5) et la figure (2.6)
en donne une représentation symbolique mettant en évidence ses broches.
Les caractéristiques du PIC16F877A sont nombreuses, certaines ont déjà été mentionnées.
Le tableau (tableau 2.1) suivant présente les plus intéressantes :
Un CNA est un dispositif qui prend en entrée une série numérique (une suite de 0 et 1) et four-
nit en sortie une valeur analogique de tension électrique. Pour réaliser un CNA, deux stratégies sont
généralement disponibles, la première consiste à utiliser le module MLI (Modulation en Largeur
d’Impulsion) du microcontrôleur lorsque celui-ci en dispose. Nous emploierons plutôt la deuxième
stratégie qui consiste en la mise en œuvre d’un ensemble externe de résistance.
Cette dernière stratégie permet la mise sur pied des CNA à réseau R-2R. Le réseau R-2R
consiste à faire un montage électrique de branches parallèles de résistances de valeurs R et 2R
comme illustré à la figure (2.8). Pour une valeur numérique Vin , le CNA N bits à réseau R-2R
donne une tension de sortie Vout définie par :
Vin
Vout = Vre f × , (2.75)
2N
avec Vre f la tension de référence pour le niveau logique 1. En technologie CMOS (Complementary
Metal Oxyde Semiconductor), Vre f vaut généralement 3.3V .
La figure (2.8) représente un CNA huit (08) bits à réseau R-2R. Ainsi, si en sortie du PORTB
du PIC16F877A, on a la valeur (B0 B1 B2 B3 B4 B5 B6 B7 ) = (11001001)2 = (201)10 , en connectant
le CNA de la figure (2.8) à ce PORT, on aura en sortie la tension analogique équivalente Vout telle
que : Vout = 3.3V × 201
28
= 2.6V si on opère en technologie CMOS.
Conclusion
Tout au long de ce chapitre où il était question de présenter les méthodes et les matériels
nécessaires pour la synchronisation de systèmes chaotiques, nous avons présenté puis étudié un
nouveau modèle de système chaotique de type jerk à dérivées fractionnaires, un algorithme pour
la résolution numérique des systèmes fractionnaires et deux méthodes de conception de loi de
commande, dont une classique et l’autre adaptative, pour la synchronisation de différents systèmes
fractionnaires à dynamique chaotique. Nous avons également présenté les logiciels de CAO per-
mettant la simulation et l’implémentation sur microcontrôleur des systèmes chaotiques et des tech-
niques de synchronisation de ces derniers. Dans la suite, nous présenterons les différents résultats
obtenus des simulations et des implémentations.
R ÉSULTATS ET D ISCUSSION
Introduction
Dans les chapitres précédents, nous avons présenté divers outils d’analyse du chaos, proposé
un nouveau système fractionnaire de jerk, décrit et appliqué des méthodes de résolution numérique
des systèmes fractionnaires. Nous avons également conçu des commandes de synchronisation des
systèmes chaotiques et présenté les logiciels et matériels permettant la simulation numérique et
l’implémentation sur PIC. Dans ce chapitre, il sera tout d’abord question d’étudier et de caractériser
la dynamique du nouveau système de jerk à travers les résultats de simulations des méthodes
d’investigations numériques des systèmes fractionnaires, ensuite nous simulerons dans différentes
conditions les commandes de synchronisation et nous terminerons par des implémentations sur
PIC.
Dans cette section, nous présentons les résultats en rapport avec la dynamique du système de
jerk proposé. On va en premier lieu considérer le modèle de base (modèle MO5 de Sprott) et en
second lieu, le modèle modifié pour lequel on fera une étude plus approfondie. Rappelons que le
modèle mathématique de notre système est donné par la relation (2.7) :
Dq x = y
Dq y = z
Dq z = −az − by + x(1 − x2 ) + rxsin(2π f t),
53
3.1 Étude de la dynamique du nouveau système de jerk 54
Le modèle de base (modèle MO5 proposé par J.C. Sprott) s’obtient pour les valeurs des pa-
ramètres et les conditions initiales données en (2.8) à savoir (a, b, r) = (0.7, 1, 0) et (x0 , y0 , z0 ) =
(0, 0, 0.2). On choisit le pas de discrétisation h = 0.003 et l’ordre de dérivation q = 1. On opère
donc à l’ordre entier.
0
x
-2
0 20 40 60 80 100 120 140 160 180 200
(a)
2
0
y
-2
0 20 40 60 80 100 120 140 160 180 200
(b)
2
0
z
-2
0 20 40 60 80 100 120 140 160 180 200
(c)
F IGURE 3.1 : Séries temporelles des variables d’état du modèle de base : (a) état x ; (b) état y ;
(c) état z
2 2
0 0
-2 -2
-2 0 2 -2 0 2
(a) (b)
2
2
0 0
-2
2 2
-2 0 0
-2 0 2 -2 -2
(c) (d)
F IGURE 3.2 : Portraits de phase du modèle de base : (a) plan(x,y) ; (b) plan(y,z) ; (c) plan(x,z) ;
(d) plan(x,y,z)
Les figures (3.1) et (3.2) représentent respectivement les évolutions temporelles et les
portraits de phase du modèle MO5 de Sprott. La présence de plusieurs périodes sur les séries
temporelles et d’attracteurs étranges dans l’espace des phases indiquent clairement que le système
est chaotique.
1
Exposants de Lyapunov
0.5 2
-0.5
-1
0 200 400 600 800 1000
temps (s)
F IGURE 3.3 : Evolution des exposants de Lyapunov du modèle de base dans le temps
λ1 0.1379660994
λ2 0.0000218818
λ3 −0.8375226862
(b)
0.1
-0.1
-0.2
-0.3
-0.4
0 0.2 0.4 0.6 0.8 1
q
F IGURE 3.4 : Diagramme de bifurcation (a) et évolution de l’exposant maximal de Lyapunov (b)
lorsque l’ordre de dérivation q est pris comme paramètre de contrôle et les conditions initiales
(x0 , y0 , z0 ) = (0, 0, 0.2)
• Pour q ∈ [0, 0.18], le système présente des dynamiques périodiques respectivement de période
1 et de période 2 à partir de q = 0.16.
Par la suite, nous prendrons l’ordre de dérivation q = 0.95 pour lequel notre système présente
bien une dynamique chaotique comme vu précédemment.
(a)
(b)
0.05
-0.05
-0.1
-0.15
-0.2
0 20 40 60 80
r
F IGURE 3.5 : Diagramme de bifurcation (a) et évolution de l’exposant maximal de Lyapunov (b)
lorsque le paramètre r est pris comme paramètre de contrôle et les conditions initiales (x0 , y0 , z0 ) =
(0, 0, 0.2)
• Pour r ∈ [0, 69], le système possède une dynamique chaotique. Dans cette région, on dis-
tingue des zones où la dynamique est plus chaotique notamment les zones délimitées par les
intervalles 0 ≤ r ≤ 13 et 19 ≤ r ≤ 40. Ailleurs le chaos reste présent mais il est moins im-
portant comme le montre les exposants de Lyapunov calculés et répertoriés dans le tableau
(3.2). On remarquera que pour certaines valeurs de r notamment pour r = 37.5, on obtient
jusqu’à deux exposants de Lyapunov positifs, preuve que le nouveau système présente une
dynamique bien plus riche et complexe que le modèle de base.
• Pour r ∈ ]69, 80], le système présente une dynamique périodique de période 1. En calculant
le spectre de Lyapunov pour une valeur de r dans cette région, on voit bien qu’il n’y a pas
d’exposants positifs comme le montre le tableau (3.2) et que la dimension de Lyapunov
ou de Kaplan-Yorke associée est bien évidement un nombre entier positif, preuve que la
dynamique n’est pas chaotique.
Nous allons présenter deux séries de portraits de phases afin de vérifier les régimes dyna-
miques des différentes régions identifiées précédemment. Pour la première série, on fixe la valeur
du paramètre r à 3 et on considère différentes valeurs de q telles que q ∈ [0.1, 0.2, 0.25, 0.6, 0.75, 0.85, 0.95, 1] ;
pour la seconde, on fixe la valeur q à 0.95 et on prend différentes valeurs de r telles que r ∈
[0, 3, 10, 20, 35, 37.5, 55, 75].
Dans les deux cas, les conditions initiales sont telles que (x0 , y0 , z0 ) = (0, 0, 0.2) et les
paramètres de contrôle (a, b, f ) = (0.7, 1, 2).
. La première série de portraits de phase est donnée par la figure (3.6) suivante :
F IGURE 3.6 : Évolution des portraits de phase dans le plan (x, y) : r=3 et q ∈ [0.1, 0.2, 0.25, 0.6,
0.75, 0.85, 0.95, 1]
La figure (3.6) présente des attracteurs de natures différentes suivant les valeurs de q. On peut
y voir que le système passe tout d’abord par une dynamique périodique (q = 0.1) puis une dyna-
mique chaotique (q = 0.25) pour ensuite épouser à nouveau une dynamique périodique (q = 0.256)
avant de finir sur une dynamique chaotique (q = 0.95). Ces différents régimes dynamiques par les-
quels passe notre système respectent la route du chaos déduite suite à l’analyse des diagrammes de
bifurcation et exposant maximal de Lyapunov de la figure (3.4). L’évolution des portraits de phase
de la figure (3.6) confirme donc l’analyse faite précédemment.
F IGURE 3.7 : Évolution sous MATLAB des portraits de phase dans le plan (x, y) : q=0.95 et r ∈
[0, 3, 10, 20, 35, 37.5, 55, 75]
On voit bien à travers cette figure la route vers le chaos empruntée par le système suivant les
valeurs du paramètre de contrôle r. Sur une large région la dynamique du système est essentielle-
ment chaotique ; on note cependant que l’attracteur étrange change de forme, en effet il passe d’une
forme double scroll (pour une valeur de r = 20 par exemple) à une forme mono scroll (pour une
valeur de r = 35 par exemple). On observe aussi que le système prend une dynamique périodique
pour les grandes valeurs du paramètre r comme à r = 75. Cette évolution confirme l’analyse faite
à partir du diagramme de bifurcation et de l’évolution de l’exposant maximal de Lyapunov suivant
les valeurs de r de la figure (3.5).
La figure (3.8) est celle du montage pour l’implémentation de notre système dynamique sur
microcontrôleur. Elle a été réalisée à l’aide du logiciel ISIS de la suite Proteus. Le composant
électronique délimité par la région (a) est le microcontrôleur PIC16F877A ; il est programmé pour
envoyer les résultats de calcul sous forme numérique à deux de ses ports comme celui délimité
par la région (b). Ces signaux numériques arrivent ensuite à notre réseau CNA, délimité par la
région (c), pour être transformés en signaux analogiques qui sont ensuite visualisés à l’aide d’un
oscilloscope délimité par la région (d). Le composant de la région (e) est un bouton-poussoir qui
nous permet de faire varier les valeurs du paramètre de contrôle afin d’apprécier l’influence de ce
dernier sur la dynamique du système.
Début
Oui
Modification du
Fin
paramètre ( r )
Arrêt de l’interruption
( INT F=0 )
L’organigramme représenté à la figure (3.9) est celui du programme exécuté par le micro-
contrôleur pour l’implémentation du nouveau système de jerk. Ce programme est écrit en langage
C à l’aide du logiciel MPLAB. Au début du programme, les variables à utiliser sont initialisées,
les ports sont configurés en sortie et le registre INTCON qui est registre principal de contrôle et
de gestion des interruptions du PIC16F877A, est configuré de façon à autoriser et à écouter les
interruptions uniquement sur la broche RB0 du PIC. Lorsque une interruption est enclenchée ( par
appui sur le bouton-poussoir de la figure (3.8) ), un bit témoin ou drapeau (INT F) du registre
INTCON passe à 1 et le programme exécute une routine permettant de modifier la valeur du pa-
ramètre de contrôle et de mettre fin à l’interruption en faisant passer le bit témoin à [Link] la suite
les paramètres et conditions initiales sont définis et le programme entre dans une phase itérative
où à chaque itération les variables d’état de la prochaine itération sont calculées, converties sous
huit (08) bits avant d’être envoyées aux ports du microcontrôleur. La simulation cesse lorsque la
condition d’itération n’est plus respectée.
La conversion sous 08 bits des variables d’état (x, y, z) est une étape capitale afin obser-
ver aux ports du microcontrôleur des données correspondantes aux variables calculées. En effet,
les deux ports du microcontrôleur configurés en sortie ne possèdent que huit broches. Chaque
broche représentant un bit, on ne peut donc que y représenter un ensemble discret et fini de va-
leurs F = {0, 1, 2, · · · , 255} . Or les variables d’état appartiennent à un ensemble de valeurs réelles
dont le nombre d’éléments n’est limité que pas la durée de simulation ; pour une variable d’état
φ par exemple, on peut représenter le spectre des valeurs qu’elle peut prendre par l’ensemble
E = {φmin , · · · , φmax }. La conversion sous huit bits consiste à faire correspondre chaque élément de
E à un élément de F. Pour cela, on choisit l’application :
255(φ − φmin )
f (φ ) = E (3.1)
φmax − φmin
Ainsi à une itération i les variables (xi , yi , zi ) seront calculées et les valeurs qui seront attribuées aux
i −xmin ) 255(yi −ymin )
ports du microcontrôleur seront respectivement les parties entières de 255(x xmax −xmin , ymax −ymin
255(zi −zmin )
et zmax −zmin .
1.5
0.5
0
x
-0.5
-1
-1.5
0 50 100 150
temps (s)
1.5
0.5
y
-0.5
-1
0 50 100 150
temps (s)
1.5
0.5
0
z
-0.5
-1
-1.5
0 50 100 150
temps (s)
F IGURE 3.10 : Évolution temporelle sous MATLAB (à gauche) et sous Proteus (à droite) des états
(x,y,z) avec (x0 , y0 , z0 ) = (0, 0, 0.2), r = 0 et q = 1
La figure (3.10) présente les évolutions temporelles des variables d’état (x, y, z) obtenues sous
MATLAB (à gauche) et sous Proteus (à droite) en considérant (q, r) = (1, 0). La légère différence
observée entre les résultats s’explique par le fait que l’implémentation retourne les variables d’état
sur huit bits qui passent ensuite à travers un réseau CNA. Ceci a pour conséquence de nuire à la
précision des valeurs des variables d’état visualisées par l’oscilloscope.
a) r = 0 b) r = 3 c) r = 10
d) r = 20 e) r = 35 f) r = 37.5
g) r = 55 h) r = 75
F IGURE 3.11 : Évolution sous Proteus des portraits de phase dans le plan (x, y) : q = 0.95 et
r ∈ [0, 3, 10, 20, 35, 37.5, 55, 75]
La figure (3.11) présente différents attracteurs du nouveau système de jerk suivant les valeurs
du paramètre de contrôle r. Ces graphes sont l’implémentation sur PIC de ceux présentés à la
figure (3.7). Malgré le défaut de précision dû à l’implémentation, les résultats obtenus dans Proteus
sont assez proches de ceux obtenus dans MATLAB à la figure (3.7) et permettent clairement de
distinguer les différents régimes dynamiques du système selon la valeur du paramètre de contrôle
r. En effet, la figure (3.11) révèle que la dynamique chaotique est présente pour une large plage
de valeur de r avec des formes d’attracteurs étranges tantôt double scroll (par exemple à r=0, r=3
ou r=20) tantôt mono scroll (par exemple r=35 ou r=55) et que la dynamique dévient périodique
pour d’autres valeurs de r comme lorsque r = 75.
3.2 Synchronisation
Rappelons tout d’abord qu’au chapitre 2 nous avons respectivement conçu par la méthode
backstepping classique et par la méthode backstepping adaptative des commandes de synchroni-
sation des systèmes de jerk (2.57) et (2.58). Dans cette partie, nous présentons les résultats de
simulation sur MATLAB et de l’implémentation sur le µC PIC16F877A via le logiciel Proteus de
ces synchronisations. Ces synchronisations seront effectuées dans des conditions idéales et dans
des conditions perturbées afin de tester la robustesse des commandes conçues.
On considère les systèmes de jerk (2.57) et (2.58) avec pour conditions initiales respectives
(x10 , y10 , z10 ) = (0, 0, 0.2) et x20 , y20 , z20 ) = (0, −0.7, −0.2), pour valeurs des paramètres (a, b, r, f ) =
(0.7, 1, 3, 2) et l’ordre de dérivation est q = 0.95.
La commande de synchronisation de ces deux systèmes est donnée par l’expression (2.55).
En prenant pour gain k = 8 et en appliquant la commande cinq secondes (05s) après le début de
simulations, on obtient les courbes suivantes :
(a) (b)
(c) (d)
(e)
F IGURE 3.12 : Synchronisation non adaptative dans le cas idéal : (a) états (x1 , x2 ), (b) états (y1 , y2 ),
(c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ) et (e) Loi de commande
Les signaux chaotiques maitres (x1 , y1 , z1 ) et esclaves (x2 , y2 , z2 ) évoluent librement pendant
les cinq premières secondes de la simulation, puis on applique la commande de synchronisation à
l’instant t = 5s pour forcer le système esclave à suivre le système maitre. Cet instant d’activation
s’observe par le pic présent sur la courbe d’évolution de la commande présentée sur le graphe (e).
L’effort de synchronisation n’est que de quelques secondes (environ 2.896 secondes) : les signaux
(x1 , x2 ) et (y1 , y2 ) (graphes (a) et (b)) se synchronisent en premier en 1.714 secondes et les signaux
(z1 , z2 ) (graphes (c)) en deuxième en 2.49 secondes. Le graphe (d) des erreurs de synchronisation
montre bien que la commande est stable. Après une simulation de quelques dizaines de secondes,
la précision des erreurs (ou de la méthode) de synchronisation est de 10−32 . On conclut donc que
la méthode de synchronisation choisie accomplit sa mission pendant un temps relativement court
et est très précise.
où ξ (t) est un signal pseudo-aléatoire d’amplitude 5 × 10−3 . Les valeurs des paramètres et condi-
tions initiales restant inchangées, on obtient les graphes suivants :
(a) (b)
(c) (d)
(f)
F IGURE 3.13 : Synchronisation non adaptative dans le cas perturbé : (a) états (x1 , x2 ), (b) états
(y1 , y2 ), (c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ) et (e) Loi de commande.
Comme le montre les résultats de simulations ci-haut, le suivi est atteint malgré la per-
turbation pseudo-aléatoire. La commande rejette donc efficacement la perturbation ; d’ailleurs on
voit bien sur le graphe (f) que l’effort de synchronisation est permanent dès que la commande
est activée. Ceci prouve que la méthode de synchronisation est robuste. La perturbation pseudo-
aléatoire entraine cependant une baisse de la précision. En effet avec la perturbation, la précision
de la méthode devient de 10−8 .
On considère les systèmes fractionnaires de jerk donnés par les expressions (2.57) et (2.58).
La commande de synchronisation (2.72) et les lois de mise à jour des paramètres estimés (2.73)
conçues au chapitre précédent ont pour but d’amener le système esclave aux paramètres incertains
(2.58) à suivre le système maitre (2.57). Pour nos simulations, on considérera deux cas d’exploita-
tion : le cas idéal et le cas perturbé.
Le paramétrage et les conditions initiales des états maitres et esclaves sont tels que donnés dans
le cas de la synchronisation non adaptative. L’estimation initiale des paramètres incertains est de :
â(0) = 8, b̂(0) = 2 et r̂(0) = −2. Les résultats de simulation sont donnés par les graphes suivant :
(a) (b)
(c) (d)
(e) (f)
F IGURE 3.14 : Synchronisation adaptative dans le cas idéal : (a) états (x1 , x2 ), (b) états (y1 , y2 ), (c)
états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ), (e) Loi de commande , (f) Loi d’adaptation des paramètres
estimés (â, b̂, r̂).
où ζ (t) est un signal pseudo-aléatoire d’amplitude 5 × 10−3 . Les valeurs des paramètres et condi-
tions initiales restent les mêmes qu’au cas idéal. on obtient les résultats suivants :
(a) (b)
(c) (d)
(e) (f)
F IGURE 3.15 : Synchronisation adaptative dans le cas perturbé : (a) états (x1 , x2 ), (b) états (y1 , y2 ),
(c) états (z1 , z2 ), (d) états erreurs (e1 , e2 , e3 ), (e) Loi de commande , (f) Loi d’adaptation des pa-
ramètres estimés (â, b̂, r̂).
Cette fois-ci, l’effort de commande est permanent depuis l’activation de la commande jus-
qu’à la fin de la simulation (graphe (e)). Ceci s’explique par le fait que la commande tente malgré
la perturbation de synchroniser les systèmes maitre et esclave. Les états esclaves (x2 , y2 , z2 ) vont
sous l’action de la commande se synchroniser avec les états maitres (x1 , y1 , z1 ) montrant ainsi la
robustesse de la commande conçue par backstepping adaptatif. Le graphe (d) des états-erreurs nous
renseigne cependant que avec la perturbation la méthode perd en précision qui désormais est de
l’ordre de 10−3 . On conclut donc que la méthode backstepping adaptative est robuste et précise
même si les perturbations tendent à réduire cette précision. Cette méthode est plus fiable que la
première en ceci qu’en plus de présenter les mêmes caractéristiques de robustesse et de précision,
elle prend en compte la variation des paramètres au cours du temps.
Dans cette partie, nous utilisons les logiciels Proteus et MPLAB présentés au chapitre précédent
pour implémenter la synchronisation du système esclave (2.58) au système maitre (2.57). Par la
suite nous ferons une interprétation des résultats obtenus ainsi qu’une comparaison de ces derniers
avec ceux obtenus avec le logiciel MATLAB.
Le montage sur ISIS, l’éditeur schématique de la suite logicielle Proteus est identique au
montage de la figure (3.8), la différence ne réside qu’au niveau du programme écrit en langage C
et compilé avec MPLAB qui retourne les états (x1 , x2 ), (y1 , y2 ) et (z1 , z2 ) aux ports du µC émulé
sous Proteus.
Les programmes pour la synchronisation écrits en C sous MPLAB respectent la méthode al-
gorithmique représentée sous forme d’organigramme à la figure (Fig 3.16). Notons que dans le cas
de la synchronisation non adaptative, les calculs encadrés par des crochets ne sont pas nécessaires.
Début
Oui
t ≤ tmax
Fin
t < 4s
Non Oui
Calcul de : â(t), b̂(t) et r̂(t) . u=0
Calcul de : u(t)
(g)
F IGURE 3.17 : Synchronisation non adaptative sur Proteus : (a) états (x1 , x2 ), (b) états (y1 , y2 ), (c)
états (z1 , z2 ), (d) état erreur e1 = x2 − x1 ,(e) état erreur e2 = y2 − y1 ,(f) état erreur e3 = z2 − z1 , et
(g) Loi de commande
La figure précédente (3.17) présente les résultats obtenus suite à l’implémentation de la syn-
chronisation par backstepping. Sur les graphes (a), (b) et (c), on voit clairement les états es-
claves (en jaune sur la figure) évolués librement jusqu’à l’application de la commande à l’instant
t = 05 secondes. A partir de cet instant, les états esclaves x2 , y2 , z2 suivent respectivement les états
maitres x1 , y1 , z1 (en bleu sur la figure) et la synchronisation est atteinte après quelques secondes.
Les états-erreurs (e1 , e2 , e3 ) représentés par les graphes (d), (e) et (f) évoluent librement puis se
stabilisent autour de zéro suite à l’activation de la commande de synchronisation. Leur évolution
confirme que la synchronisation entre les états maitres et esclaves et la stabilité de cette dernière.
Le graphe (g) est celui de l’évolution de la commande ; le pic observé sur le graphe correspond à
l’instant de l’activation de la commande et au commencement de l’effort de commande qui ne dure
que quelques secondes.
Synchronisation adaptative
F IGURE 3.18 : Synchronisation adaptative : Évolution des états (a) x1 , x2 , (b) y1 , y2 , (c) z1 , z2
La figure (3.18) montre l’évolution temporelle des états maitres et esclaves. On y voit que
suite à l’activation de la commande conçue par backstepping les états esclaves x2 , y2 , z2 cessent
d’évoluer librement et suivent respectivement les états maitres x1 , y1 , z1 . L’analyse des graphes
des erreurs de synchronisation, nous donnera plus d’informations sur la précision et la stabilité de
la commande.
(a) (b) (c)
(g)
La stabilisation des erreurs de synchronisation (e1 , e2 , e3 ) autour de zéro (graphes (a), (b)
et (c)) observée à la figure (3.19) montre l’effectivité de la synchronisation adaptative et la stabilité
de la commande de synchronisation. L’estimation des paramètres incertains â(t), b̂(t), r̂(t) se fait
à chaque instant comme observée sur les graphes (d), (e) et (f). Cette dernière opération rend la
commande insensible aux incertitudes ainsi qu’aux légères variations des paramètres de contrôle.
On remarque aussi que l’effort de commande débute avec un pic moins important que dans le cas
de la synchronisation non adaptative mais dure plus longtemps. Tout comme précédemment et pour
la même raison, ces résultats sont légèrement différents de ceux obtenus sous MATLAB.
Conclusion
L’objectif principal de ce travail était de synchroniser deux systèmes de jerk à dérivée frac-
tionnaire et d’implémenter cette synchronisation sur microcontrôleur. Pour ce faire, nous avons
subdivisés notre travail en trois chapitres. Nous avons, dans le premier chapitre, fait état des prin-
cipales notions se rapportant au calcul fractionnaire, des méthodes et des outils pour l’analyse, la
caractérisation et la synchronisation des systèmes chaotiques à dérivées fractionnaires. Par la suite,
nous avons réalisé un deuxième chapitre sur les méthodes et matériels nécessaires pour la concep-
tion et l’implémentation des commandes de synchronisation des systèmes chaotiques de type jerk
à dérivées fractionnaires ; nous y avons aussi proposé et analysé un nouveau système chaotique
de type jerk. Et nous avons enfin réalisé un troisième et dernier chapitre consacré aux résultats
accompagnés de discussions.
Il en ressort que le nouveau modèle de jerk à dérivée fractionnaire proposé est symétrique
et dissipatif et de plus, comparé au modèle de Sprott [43] dont il s’inspire, ce modèle possède une
dynamique bien plus riche et complexe prouvée par le calcul des exposants de Lyapunov et l’ana-
lyse qualitative des diagrammes de bifurcation et de l’exposant principal de Lyapunov obtenus sur
MATLAB. Nous retenons aussi que les deux techniques de synchronisation employées ont permis
la conception des lois de commande pour la synchronisation des systèmes chaotiques de jerk à
dérivées fractionnaires. Les simulations de ces commandes faites dans les conditions idéales et
perturbées sur MATLAB ainsi que leur implémentation sur le microcontrôleur PIC16F877A via
Proteus ont permis de vérifier et d’attester des qualités de robustesse et de stabilité des lois de com-
mande conçues. Ces résultats révèlent aussi que la commande conçue par la méthode adaptative
est plus fiable et plus appropriée pour la synchronisation des systèmes fractionnaires à dynamique
chaotique.
81
3.2 Synchronisation 82
Au vu de l’ensemble des études menées et des résultats obtenus nous pouvons affirmer sans
ambigüité que notre objectif principal a été atteint. On peut cependant envisager un certain nombre
de perspectives. Pour de futurs travaux, nous recommandons ainsi les principaux axes de recherche
suivants :
• la conception des lois de commande pour la synchronisation de plus de deux systèmes chao-
tiques.
[3] Bertrand B ODO, Alain M VOGO et Saverio M ORFU : Fractional dynamical behavior of elec-
trical activity in a model of pancreatic β -cells. Chaos, Solitons & Fractals, 102:426–432,
septembre 2017.
[4] J. S. Armand Eyebe F OUDA, J. Yves E FFA, Bertrand B ODO et Maaruf A LI : Diophantine
solutions based permutation for image encryption. Journal of Algorithms & Computational
Technology, 7:65–86, mars 2013.
[5] Samuel TAGNE, Bertrand B ODO, Jean Sire Armand Eyebe F OUDA et Guy Valery Ayissi
E YEBE : Circuit implementation of the jerk chaotic system in integer and fractional order
domains. juin 2021.
[6] Edward OTT, Celso G REBOGI et James A YORKE : Paper 1 controlling chaos. Controlling
Chaos : Theoretical and Practical Methods in Non-Linear Dynamics, page 77, 1996.
[8] Ivo P ETR Á Š : Fractional-Order Nonlinear Systems. Springer Berlin Heidelberg, 2011.
83
Références 84
[11] CHOUAMENI DOUANOU C LAIRE : Implémentation sur modelsim d’un oscillateur chao-
tique fractionnaire : oscillateur fractionnaire de lorenz. Mémoire de master, Université de
Yaoundé 1, 2021.
[12] Romaric K ENGNE, Robert T CHITNGA, Anaclet F OMETHE et Zakia H AMMOUCH : Genera-
lized finite-time function projective synchronisation of two fractional-order chaotic systems
via a modified fractional nonsingular sliding mode surface. Communications in Numerical
Analysis, 2017:233–248, 2017.
[18] Miller K.S. et ROSS B : An introduction to the fractional calculus and fractional differential
equations. Wiley, New York, 1993.
[19] Keith O LDHAM et Jerome S PANIER : The fractional calculus theory and applications of
differentiation and integration to arbitrary order, volume 111. Elsevier, 1974.
[20] Igor P ODLUBNY : Fractional-order systems and fractional-order controllers, volume 12.
1994.
[21] Adda F.B : Geometric interpretation of the fractional derivative. Fractional Calculus and
Applied Analysis, 11:21–52, 1997.
[23] Nigmatullin R. : A fractional integral and its physical interpretation. Theoret. and Math.
Phys, 90(3):242–251, 1992.
[24] Yan L I, YangQuan C HEN et Igor P ODLUBNY : Stability of fractional-order nonlinear dyna-
mic systems : Lyapunov direct method and generalized mittag-leffler stability. Computers &
Mathematics with Applications, 59:1810–1821, mars 2010.
[25] KONGNE SIMO Arsène E MMANUELLE : Implémentation d’un circuit chaotique memristif
par microcontrôleur. Mémoire de master, Université de Yaoundé 1, 2021.
[27] Edward N. L ORENZ : Deterministic nonperiodic flow. Journal of the Atmospheric Sciences,
20(2):130–141, mars 1963.
[28] Bertrand B ODO, J.S Armand Eyebe F OUDA, A. M VOGO et S. TAGNE : Experimental hyste-
resis in memristor based duffing oscillator. Chaos, Solitons & Fractals, 115:190–195, octobre
2018.
[29] KANA NGUIMEYA Elvis C HRISTIAN : Modélisation par des dérivées fractionnaires de
l’oscillateur de chua à memristor. Mémoire de master, Université de Yaoundé 1, 2016.
[30] Robert L. D EVANEY : An Introduction to Chaotic Dynamical Systems. CRC Press, mars
2018.
[31] Tien-Yien L I et James A. YORKE : Period three implies chaos. In The Theory of Chaotic
Attractors, pages 77–84. Springer New York, 2004.
[32] Grassberger P et Procaccia I : Measuring the strangeness of strange attractors. Physica 9D,
1983.
[33] Jacques VOJAK, Robert et Levy Vehel : Higher order multifractal analysis. 01 1996.
[34] A N KOLMOGOROV : A new metric invariant of transient dynamical systems and automor-
phisms in lebesgue spaces. Dolk. Akad. Nauk SSSR, 119(5), 1958.
[35] Alan W OLF, Jack B S WIFT, Harry L S WINNEY et John A VASTANO : Determining lyapunov
exponents from a time series. Physica D : Nonlinear Phenomena, 16(3):285–317, juillet
1985.
[36] James L K APLAN, Ellen D YORKE, James A YORKE et Paul F REDERICKSON : The liapunov
dimension of strange attractors. Journal of Differential Equations, 49(2):185–207, août 1983.
[37] Georg A G OTTWALD et Ian M ELBOURNE : A new test for chaos in deterministic systems.
Proceedings of the Royal Society of London. Series A : Mathematical, Physical and Enginee-
ring Sciences, 460(2042):603–611, février 2004.
[38] Armand F OUDA, Bertrand B ODO, Samrat S ABAT et [Link] E FFA : A modified 0-1 test for
chaos detection in oversampled time series observations. International Journal of Bifurcation
and Chaos in Applied Sciences and Engineering, 24, 05 2014.
[39] Hans Georg B RACHTENDORF, Robert M ELVILLE, Peter F ELDMANN, Siegmar L AMPE et
Rainer L AUR : Homotopy method for finding the steady states of oscillators. IEEE Tran-
sactions on Computer-Aided Design of Integrated Circuits and Systems, 33(6):867–878, juin
2014.
[40] Igor P ODLUBNY : Fractional-order systems and PIλ Dµ controllers, volume 44. Institute of
Electrical and Electronics Engineers (IEEE), janvier 1999.
[41] H.P.W. G OTTLIEB : “what is the simplest jerk function that gives chaos ?”. American Journal
of Physics, 64:525, 1996.
[42] J.C. S PROTT : “some simple chaotic jerk functions”. American Journal of Physics, 65(2):
537–543, 1997.
[43] Julien Clinton S PROTT : Elegant Chaos. WORLD SCIENTIFIC, mars 2010.
[44] S.M. Njikam et V.R.F. Signing J. K ENGNE : “a plethora of coexisting strange attractors
in a simple jerk system with hyperbolic tangent nonlinearity”. Chaos, Solitons & Fractals,
106:201–213, 2018.
[47] E. A HMED, A.M.A. E L -S AYED et Hala A.A. E L -S AKA : On some routh-hurwitz conditions
for fractional order differential equations and their applications in lorenz, rössler, chua and
chen systems. Physics Letters A, 358:1–4, octobre 2006.
[49] Zaid O DIBAT et N S HAWAGFEH : Generalized taylor’s formula. Journal of Applied Mathe-
matics and Informatics, 186(1):286–293, 2007.
[50] Zaid O DIBAT et Shaher Mohammad M OMANI : An algorithm for the numerical solution of
differential equations of fractional order. Journal of Applied Mathematics and Informatics,
26(2):15–27, janvier 2008.
[51] Tchawoua C L ÉMENT : Contribution à l’étude de la dynamique des excitations non linéaires
dans les réseaux diatomiques, au contrôle et à la synchronisation des systèmes chaotiques.
Thèse de doctorat, Université de Yaoundé 1, Cameroun, 2005.
[52] J.S Armand Eyebe F OUDA, Bertrand B ODO, Guy M.D. D JEUFA et Samrat L. S ABAT : Ex-
perimental chaos detection in the duffing oscillator. Communications in Nonlinear Science
and Numerical Simulation, 33:259–269, avril 2016.
[53] Microchip Technology I NC . : Pic16f87xa data sheet 28/40/44-pin enhanced flash microcon-
trollers, 2003.