Vous êtes sur la page 1sur 27

ECOLE DINGENIEUR EICNAM

Identification par
squences binaires
pseudo-alatoires
De la thorie la pratique
Adil El Missouri
16/06/2015

Remerciement Alain Caffard, Franois Malburet et Frdric Villecroze

Identification des systmes linaires par S.B.P.A

Contenu
I.

Introduction ................................................................................................................................... 2

II.

Thorie ........................................................................................................................................... 2
Identification par signaux alatoires .................................................................................................. 2
a)

Fonction de corrlation .......................................................................................................... 2

b)

Produit de convolution ........................................................................................................... 3

c)

Bruit Blanc .............................................................................................................................. 4

d)

Squence Binaire Pseudo-Alatoire ....................................................................................... 4

e)

Identification par S.B.P.A ........................................................................................................ 6

III.

Intrt du signal S.B.P.A ..................................................................................................... 7

Conditions .......................................................................................................................... 7

Pratique ...................................................................................................................................... 8

1.

Identification de systme simul ................................................................................................ 8


f)

Systme simul....................................................................................................................... 8

g)

Rponse impulsionnelle et indicielle relles ........................................................................... 9

h)

Injection de S.B.P.A en entre .............................................................................................. 11

i)

Traitement des donnes ....................................................................................................... 12

Trac des donnes ............................................................................................................ 12

Vrification des donnes de lentre ................................................................................ 12

j)

Identification par corrlation................................................................................................ 13

k)

Identification paramtrique ................................................................................................. 14

2.

Modles ARX et ARMAX : ................................................................................................. 14

Identification de systme rel .................................................................................................. 15

IV.

Outils: ............................................................................................................................... 15

Exploitation ...................................................................................................................... 17

Comparaison ............................................................................................................................ 20

1.

Rcapitulatif des rsultats ........................................................................................................ 20


l)

Rponses impulsionnelles .................................................................................................... 20

2. Comparaison entre les estimations simules sous Matlab et lestimation sur systme rel
avec Labview .................................................................................................................................... 23
3.

A d i l

E l

Comparaison des rponses estimes sur Procd rel ............................................................ 24

V.

Conclusion .................................................................................................................................... 25

VI.

Bibliographie ............................................................................................................................ 26

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 1

Identification des systmes linaires par S.B.P.A

I.

Introduction

Il est souvent demand dans ce type de documents de respecter la proprit intellectuelle des
informations introduites et de citer la source, donc lintrt du document crit est dapporter
quelque chose de nouveau.
Si on applique ceci au sujet des identifications par signaux alatoires une remarque simpose, le fait
que sur la toile on trouve une infinit de publications partant des cours des traitements des signaux
aux thses spcialises, MAIS, de la thorie et que de la thorie, on trouve des exemples thoriques
ou incomplets, par contre je ne suis pas arriv trouver un document crit dcrivant une mthode
complte avec un systme rel identifi par les mthodes thoriques pour voir quel point la thorie
corrle avec la pratique.
Do le but de cette tude, de mettre en uvre les fonctions thoriques, les appliquer un procd
simul et un autre rel et les comparer.
Lobjectif est dextraire de la thorie les fonctions dont nous avons besoin, de dcrire des
procdures et mthodes pratiques pour identifier un systme soumis une squence binaire pseudo
alatoire son entre, dcrire lintrt de ce signal justifier ce choix et exploiter les mesures.
En autres mots une personne avec un minimum de connaissances en notions de traitement du signal
puisse identifier un systme avec succs.

II.

Thorie

Dans ce chapitre nous allons citer les fonctions utiles pour la partie pratique en expliquant le plus
simplement possible.

Identification par signaux alatoires


a) Fonction de corrlation
La fonction corrlation ou inter corrlation permet de dterminer le degr de ressemblance entre
deux signaux

x et y

Deux signaux qui se ressemblent ont une corrlation proche de 1, deux signaux compltements
diffrents (c'est--dire il nya aucune loi qui peut les relier) ont une corrlation gal 0.
Elle est dfinie par la relation suivante :

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 2

Identification des systmes linaires par S.B.P.A

Avec :
est le conjugu complexe de
Cas particulier, la fonction dautocorrlation :
La fonction dautocorrlation est la fonction de corrlation dun signal

x avec lui-mme, c'est--dire

une fonction qui dtermine quel point ou combien de temps le signal peut tre dterministe, ou la
possibilit de prdire une loi dvolution de ce signal.
Elle est dfinie par la relation suivante :

Puisquen pratique on utilise des systmes chantillonns, nous serons amens utiliser des
algorithmes discrets de corrlation :
Formule dinter corrlation entre deux signaux :

b) Produit de convolution

Le produit de convolution de deux fonctions f et g est dfinit par la relation :

Ou en signaux discrets:

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 3

Identification des systmes linaires par S.B.P.A

c) Bruit Blanc

Le bruit blanc, est un signal compos de toutes les frquences, chaque frquence ayant la mme
nergie, pour mieux comprendre on peut le comparer la lumire blanche qui est un mlange de
toutes les couleurs.
Proprit :

La fonction dautocorrlation dun bruit Blanc est gale une impulsion de Dirac :

Cette proprit peut tre utilise comme Dfinition mme du bruit Blanc.
d) Squence Binaire Pseudo-Alatoire

Une squence binaire pseudo alatoire quon va noter dans la suite du document S.B.P.A est un
signal binaire alatoire, mais sur une longue dure de temps il est priodique.
La gnration dun tel signal se fait laide de registres dcalages (bascules), boucles avec un ou
exclusif (voir figures 1 et 2).

Figure 1 :Gnration dune S.B.P.A

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 4

Identification des systmes linaires par S.B.P.A

Figure2 :Exemple de S.B.P.A 3 registres

Lallure du signal est une suite dtats binaires alatoires avec ltat haute la plus longue est gal au
nombre de registres (voir figure 3)

Figure3 : Allure dune SBPA 3 registres

Te temps de lhorloge.
N=
longueur de la squence en nombre dimpulsions (tats hauts et bas
confondues).
NTe longueur de la squence en units de temps.
3Te est la longueur de ltat haute la plus longue.
La longueur de squence et la longueur de ltat haute la plus longue dpendent du nombre
de registres, ces derniers doivent tre boucls avec un ou exclusif, voici un tableau qui
rsume la relation entre le nombre des registres la longueur de la squence et les bits des
registres qui doivent tre additionns exclusivement :

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 5

Identification des systmes linaires par S.B.P.A

Lavantage majeur des S.B.P.A est quelle est une valeur moyenne nulle sur une longueur de
squence, ainsi quelle est approximatif (en prenant une frquence dchantillonnage
adquate) un bruit Blanc, c'est--dire elle a une fonction dautocorrlation proche dun
Dirac (figure 4), dans la suite on tudiera lintrt de ce signal.

Figure 4 : Autocorrlation dune S.B.P.A

e) Identification par S.B.P.A

Considrons un systme linaire invariant dans le temps, de rponse temporelle h(k) et de fonction
de transfert H(n). La relation temporelle qui relie la sortie y(k) lentre x(k) est la suivante :

y(k) = x(k) h(k)


La relation entre la corrlation de la sortie et lentre:

Cyx(k) = Cxx(k) h(k)


A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 6

Identification des systmes linaires par S.B.P.A

O Cyx(k) est linter corrlation entre la sortie et lentre du filtre.


Si le signal x(k) est un bruit blanc,
Alors sa fonction dautocorrlation est une impulsion de Dirac Cxx(k) = (k), do :

Cyx(k) = (k) h(k) = h(k) (quation (1))

Linter corrlation entre la sortie et lentre du systme correspond la rponse impulsionnelle du


systme.
Intrt du signal S.B.P.A

Puisque la S.B.P.A sur une longueur de squence une autocorrlation proche dun Dirac, le fait de
lutiliser en entre du systme identifier, en application de lquation (1) on pourra retrouver la
rponse impulsionnelle du systme en calculant linter corrlation entre la sortie est lentre.
Conditions:

Condition ncessaire
Soit N le nombre de registres.
Te le temps de lhorloge.
Tm le temps de monte du systme.

La dure maximale dune impulsion tant NTe, pour identifier le gain statique
convenablement il faut que NTe soit plus grand ou gal tm (voir figure 5).

Figure 5 : temps de monte par rapport limpulsion maximale

A d i l

E l

M i s s o u r i

Condition pratique
Pour respecter la condition prcdente, dans certains cas, nous sommes amen
prendre N assez grand, ce qui peut mener des nombres de valeurs chantillonnes
assez important est donc lourd manipuler.
1 6 / 0 6 / 2 0 1 5

Page 7

Identification des systmes linaires par S.B.P.A

Pour pallier ceci il faut choisir Fh (frquence de lhorloge) de faon quil soit un
sous multiple de la frquence dchantillonnage Fe :
=

Avec a {1, 2,3}

Remarque :
Lamplitude du signal S.B.P.A peut tre assez faible (en pratique aux alentours de 5%
de la valeur de fonctionnement du systme), il faut seulement quelle soit plus
grande que la valeur du bruit rsiduel.

III.

Pratique

1. Identification de systme simul


Dans cette partie on utilisera les logiciels Matlab et Simulink pour identifier un systme simple.
f) Systme simul

le systme simul sera comme sur la figure 6, avec une entre E et une sortie S pour toute la suite
du document.

Systme

Figure 6 : Systme

Un circuit RC (figure 7) peut satisfaire aux conditions de linarit et invariance dans le temps pour
tre identifiable par SBPA.
On appliquera une tension dentre E et mesurera la tension de sortie S.
Avec R= 20
Et C= 10F

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 8

Identification des systmes linaires par S.B.P.A

Figure 7 : Circuit identifier Avec E tension dentre et S tension de sortie

g) Rponse impulsionnelle et indicielle relles

Puisque tout systme linaire invariant dans le temps peut tre caractris par sa rponse
impulsionnelle nous allons mesurer celle-ci ainsi que la rponse indicielle (cette dernire est plus
parlante pour nos sens humains)
Pour cela on construit un diagramme sous Simulink (voir figure 8), simulant un circuit RC, une
alimentation, et un bloc de mesure de tension.

Figure 8 : Diagramme Pour obtenir les rponses indicielle et impulsionnelle

En gnrant une impulsion damplitude 1 et de longueur 0.01 seconde (pour tre proche
dune impulsion de Dirac) on obtient la rponse sur la figure 9.

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 9

Identification des systmes linaires par S.B.P.A

Figure 9 : rponse impulsionnelle

De mme pour la rponse un chelon (voir figure 10).

Figure 10 : rponse indicielle.

Lobjectif est de comparer ces rsultats aux rponses estimes que nous allons obtenir par
identification du mme systme.

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 10

Identification des systmes linaires par S.B.P.A

h) Injection de S.B.P.A en entre

Pour identifier le systme nous allons injecter une S.B.P.A en entre et enregistrer les donnes
dentre-sortie dans lespace de travail de Matlab afin de les analyser par la suite, pour ceci on
construit le diagramme Simulink (voir figure 11).
Pour respecter les rgles didentification par SBPA on choisit les valeurs suivantes :
Frquence dchantillonnage = 100Hz
Longueur de la squence binaire= 1023s
Temps de lhorloge de la squence = 1s
S.B.P.A en Entre du
Systme

Enregistrement des
valeurs de lentre

Enregistrement des
valeurs de la sortie

Figure 11 : Systme soumis une S.B.P.A en entre

Aprs excution du modle les donnes dentre et sortie sont enregistrs respectivement
dans les variables Tableaux de dimension 1 : entree_sbpa et reponse , elles seront
transfres via la fonction To Workspace vers lespace de travail Matlab (figure 12).

Figure 12 : espace de travail Matlab

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 11

Identification des systmes linaires par S.B.P.A

i) Traitement des donnes

A partir de l nous allons dcrire le traitement faire squentiellement avant toute analyse.
Trac des donnes

Une premire vrification visuelle prvient des ventuelles erreurs commises par imprudence et
pour cela nous allons crer une variable data qui regroupe lentre et la sortie en une seule, ensuite
la tracer avec la fonction plot (voir figure 13) :
Code Matlab :
data = iddata(reponse,entree_sbpa) ;
plot(data) ;

Figure 13 : allure de lentre et sortie du systme

Vrification des donnes de lentre

Une condition sine qua non pour le bon fonctionnement de la mthode est que le signal dentre
doit tre considr comme un bruit blanc, pour cela il faut vrifier la fonction autocorrlation qui
doit se rapprocher dune impulsion de Dirac (proprit caractristique)
Sous Matlab on applique la fonction xcorr sur entree_sbpa qui retourne la fonction dautocorrlation
de cette dernire on enregistre dans une variable Xc et on trace laide de la fonction plot :

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 12

Identification des systmes linaires par S.B.P.A

Code Matlab :
Xc = xcorr(entree_sbpa) ;
plot(Xc) ;
Nous avons un rsultat satisfaisant (voir figure 14).

Figure 14 : Autocorrlation de lentre semblable une impulsion de Dirac

j) Identification par corrlation

La rponse impulsionnelle caractristique du systme peut tre obtenue par application de la


fonction inter corrlation entre la sortie et lentre pour cela on applique la fonction Matlab
didentification par corrlation :
A=impulseest(data,);
impulse(A,50);
step(A,80);

Estimation rponse impulsionnelle par corrlation


Trac des rponses impulsionnelle et indicielle

Ce qui produit le rsultat (figure 15).

Figure 15 : rponse impulsionnelle et indicielle estimes par corrlation

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 13

Identification des systmes linaires par S.B.P.A

k) Identification paramtrique
Modles ARX et ARMAX :

De la mme faon lapplication de la fonction arx pour dterminer le modle ARX comme ceci :
B = arx(data,[1 2 0])

C = armax(data,[2 2 2 1]) ;

Le deuxime argument est respectivement


[ordre, nombre de ples, nombres de zros)

fonction qui estime le modle ARMAX

De mme on trace les rponses indicielles et impulsionnelles de chacun des modles avec le code
suivant :
Impulseplot (C) ;
Hold on;
Impulseplot(B) ;
Figure;
Stepplot (C);
Hold on;
Stepplot(B);
Le rsultat :
Nous obtenons respectivement une estimation des rponses impulsionnelles et indicielles (voir
figures 16 et17).

Figure 16 : rponses impulsionnelles estime

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 14

Identification des systmes linaires par S.B.P.A

Remarque : les deux rponses des


deux modles sont superposes
sur chacun des deux graphes.

Figure 17 : rponse indicielles estimes

2. Identification de systme rel


Outils:

Pour une identification russie nous aurons besoins de quatre outils indispensables : un systme rel,
une carte dentre sorties, un logiciel de traitement et une liaison de communication compos dun
support ( la nature de la ligne) et un protocole (la faon de communiquer)
Systme
Pour rester en harmonie avec le modle simul, le choix du systme sera le mme cbl rellement
sur une platine lectronique, lide est de gnrer une S.B.P.A sur une sortie TOR dune carte
traverser le systme puis mesurer la sortie du systme sur une entre analogique dune seconde
carte.
Principe (figure 18)

Figure 18 : circuit RC (filtre)

Ralisation (figure 19)

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 15

Identification des systmes linaires par S.B.P.A

Figure 19 : circuit rel

Carte dacquisition :

Figure 20 : carte Arduino Uno

La carte Arduino (figure 20) est une carte microcontrleur avec 14 entre/sorties TOR, et 6 entres
ANA.
Logiciel de traitement
Nous allons utiliser Labview qui a lavantage dtre un logiciel de programmation visuel, il permet
aussi lacquisition partir de diffrentes interfaces dont la carte Arduino.
Communication
La carte est dot dune interface USB qui peut contenir une liaison srie avec une vitesse qui peut
aller jusqu 115200 bauds, cest cette valeur qui a t retenue.
De lautre ct de linterface Labview est capable dinterprter cette communication.

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 16

Identification des systmes linaires par S.B.P.A

Exploitation

Par analogie au systme simul, le cblage est de manire gnrer une S.B.P.A sur une sortie 5V qui
lentre du systme puis mesurer la rponse du systme sur une entre analogique (voir figure 21)

SORTIE 5V

Carte (E)

Figure 21 : Schma de cblage

Avec R= 20 Et C= 10F
Remarque: pour avoir un systme pratique identifier, ces valeurs doivent tre relativement petites,
car dans le cas contraire non seulement le systme aura un temps de mont trs long, le
condensateur ne se dchargera pas facilement car lentre de mesure de la carte a une petite
impdance.
Programme dacquisition
La face avant
La face avant du VI (programme) ou linterface utilisateur (voir figure 22) est compos simplement de
trois graphes, pour laffichage de lentre, la sortie et la rponse impulsionnelle estime.

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 17

Identification des systmes linaires par S.B.P.A

Figure 22 : Face avant (ou interface Homme machine)

La face arrire
La face arrire (voir figures 23 et 24) ou ce quon appelle le digramme (le code dexcution) est
compose de deux parties, une premire pour la lecture sur lentre de la carte (A) et lidentification,
lautre pour la gnration du signal S.B.P.A et lcriture sur la sortie de la carte (E), les deux,
excutes simultanment.
Premire partie :
Gnrateur de signal SBPA

Ecriture sur sortie Numro 10

Fermeture de la communication

Traitement des erreurs

Ouverture de la communication avec


la carte sur le COM1

Configuration de la sortie

Figure 23 : programme injection S.B.P.A

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 18

Identification des systmes linaires par S.B.P.A

Seconde partie :
Fonction didentification par corrlation

Acquisition du signal de lentre


du systme

Acquisition du signal de sortie


du systme

Figure 24 : programme acquisition de lentre de la sortie et estimation du systme

Rsultats
Aprs excution du VI, on obtient les graphes (figures 25, 26 et 27) :
Entre du systme gnre puis mesure sur une entre analogique :

Figure 25 : Entre S.B.P.A

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 19

Identification des systmes linaires par S.B.P.A

Sortie du systme, qui corrspond la mesure de la rponse une S.B.P.A injecte en entre.

Figure 26 : rponse du systme.

Rponse impulsionnelle estime par corrlation:

Figure 27 : Estimation de la rponse impulsionnelle

IV.

Comparaison
1. Rcapitulatif des rsultats
l) Rponses impulsionnelles

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 20

Identification des systmes linaires par S.B.P.A

Rponse une impulsion sous Simulink (figure 9 page 9) :

Rponse estime par corrlation : (figure 15 page 12)

Rponse estime avec les modles arx et armax (figure 16 page 13) :

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 21

Identification des systmes linaires par S.B.P.A

Rponse estime sous Labview sur procd rel (figure 27 page 19) :

Pour pouvoir faire une comparaison avec ce rsultat il faut le transmettre dans lespace de travail
de Matlab, et pour ceci on peut (entre autres) procder comme sur la figure 28:

Insrer dans le programme


un bloc criture dans un
fichier Tableau sur disque.

Figure 28 : criture des donnes sur disque

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 22

Identification des systmes linaires par S.B.P.A

Ensuite aprs excution, ouvrir le fichier avec Excel puis copier dans une variable dans lespace
de travail Matlab, et partir de l nous pourrons traiter ces donnes (voir figure 29).

Figure 29 : rponse impulsionelle transfere dans Matlab

2. Comparaison entre les estimations simules sous Matlab et


lestimation sur systme rel avec Labview
Trac des diffrentes rponses :

Figure 30 : comparaison des rponses impulsionnelles

Daprs la figure 30 nous remarquons que lestimation par Labview, mme si elle se rapproche
de la thorie, elle reste loin du modle simul.
Les modles ARX et ARMAX sont les plus proche des donnes, la fonction Compare donne le
rsultat du degr dadaptation suivant :
Modle ARX =100%, Modle ARMAX= 100%, identification par corrlation= 95,83%

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 23

Identification des systmes linaires par S.B.P.A

3. Comparaison des rponses estimes sur Procd rel


Pour pouvoir avoir un modle plus pertinent au procd rel, il est plus judicieux de traiter les
donnes relles sous Matlab, et dans ce cas-l, de la mme faon on enregistre les valeurs dentre
et sortie du systme sous Labview sur le disque et ensuite les rcuprer dans lespace de travail de
Matlab.
On applique les mmes fonctions quon a appliqu au systme simul :
>> data = iddata(reponse, entree_sbpa);
>> A=impulseest(data);
>> B= arx (data, [1 2 0]);
>> C=armax(data,[2 2 2 1]);

On obtient en dessinant les rponses impulsionnelles du systme la figure 31 :

Figure 31 : reprsentation des rponses estimes

Nous pouvons comparer la faon dont les diffrents modles estims sont capables de prdire la
sortie (voir figure 32)

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 24

Identification des systmes linaires par S.B.P.A

Figure 32 : Comparaison temporelle des diffrents modles

On constate que le modle destimation par corrlation est le plus adapt au procd rel.

V.

Conclusion

Lidentification des systmes par squences binaires pseudo alatoires, est une des voies
didentification les plus prcises.
On constate que pour atteindre lobjectif de ce sujet nous navions pas besoins dtre des experts en
matire de traitement de signal ou de statistique, il suffit dappliquer les fonctions adquates et bien
savoir les interprter.
Nous nous sommes limit la rponse impulsionnelle, puisquelle est plus parlante (domaine
temporelle) et surtout quelle est caractristique un systme, nous pouvons galement partir des
donnes de rponse un signal S.B.P.A dduire lestimation dans le domaine frquentiel tel que
estimer la fonction de transfert, les diagrammes correspondants, et ouvrir la porte des ventuelles
tudes de stabilit et de correction.

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 25

Identification des systmes linaires par S.B.P.A

VI.

Bibliographie

http://fr.mathworks.com/ site officiel de Mathworks (Matlab et Simulink)

HENRI BOURLES, 2006, Systmes linaires de la modlisation la commande, HERMES.

P. BORNE J.P. RICHARD et al. 1992, Modlisation et identification des processus, Vol2, Edition
Technip.

http://fr.wikipedia.org/wiki/Bruit_blanc

https://www.u-picardie.fr/gagou/TraitSignal/Master2/Cours_Master2_08-09.pdf

[01/06/2015]

Cours de traitement de signal Universit II de Picardie Jules Verne Master-II de Physique


[26/05/2015]

http://dobigeon.perso.enseeiht.fr/teaching/TNS/TP_TNS_1TR.pdf
TP de traitement de signaux l'INP-ENSEEIHT. [26/05/2015]

A d i l

E l

M i s s o u r i

1 6 / 0 6 / 2 0 1 5

Page 26