You are on page 1of 43

P Breuil 2012

Axe Instrumentation 2013


Travaux pratiques dInstrumentation Numrique

1. GENERALITES ....................................................................................................................................... 3
1.a Droulement des TPs ....................................................................................................................... 3
1.b Contenu de ce document : ................................................................................................................ 4
2. INTRODUCTION A LABVIEW............................................................................................................ 5
2.a Introduction ...................................................................................................................................... 5
2.b Aide .................................................................................................................................................. 6
2.c Construction dun premier instrument virtuel : ................................................................................. 6
2.d Principes de Labview ....................................................................................................................... 8
2.e Techniques de dbogage : ................................................................................................................ 9
2.f Les structures (Palette Structures): ................................................................................................... 9
2.g Sous VIs ......................................................................................................................................... 16
2.h Conclusion :.................................................................................................................................... 17
3. LECHANTILLONNAGE .................................................................................................................... 19
3.a La discrtisation dans le temps : ..................................................................................................... 20
3.b La discrtisation de la grandeur mesure : ..................................................................................... 20
3.c Le thorme de la moyenne : .......................................................................................................... 21
4. TP N1 REGULATION NUMERIQUE DE TEMPERATURE ........................................................ 23
4.a Principe gnral: ............................................................................................................................. 23
4.b Dispositif, action et mesure : .......................................................................................................... 24
4.c Identification du processus : ........................................................................................................... 25
4.d La rgulation PID : ......................................................................................................................... 27
4.e Mesure de la temprature de llment chauffant: ( faire si la partie PID est termine) ........... 30
5. TP N2: DETECTION SYNCHRONE ................................................................................................ 33
5.a But: ................................................................................................................................................. 33
5.b Prambule : Analyse frquentielle & signaux priodiques ........................................................... 33
5.c Quelques outils disponibles : .......................................................................................................... 35
5.d VIs raliser : ................................................................................................................................ 36
6. TP N3 : CORRELATION D'IMAGES NUMERIQUES .................................................................. 40
6.a Objectif : ....................................................................................................................................... 40
6.b Matriel .......................................................................................................................................... 40
6.c Acquisition d'une image sur le port de la camra USB .................................................................. 40
6.d Corrlation d'images ....................................................................................................................... 41
6.e Corrlation locale ........................................................................................................................... 42

INST
R
U
M
E
N
T
A
T
ION
A
X
E
2
3
1. Gnralits
1.a Droulement des TPs
Ces travaux pratiques ont une dure de 7 sances de 3 heures. La premire sance,
dinitiation lenvironnement Labview, ne sera pas value.
Les 6 autres seront partages en 3 TPs tournants, chaque TP de 2 sances faisant lobjet
dune valuation spare.
Planning des TPs en fonction des groupes de binmes :
Sances TP1 : Rgul. temprature TP2 : dtection synchrone TP3 : Corrlation images
2 et 3 A1, A2 A3, A4, A5 A6, A7, A8
4 et 5 A6, A7, A8 A1, A2 A3, A4, A5
6 et 7 A3, A4, A5 A6, A7, A8 A1, A2
Au cours de ces 3 TPs, les lves construiront un ou des programmes (Ou V.I. = Virtual
Instrument) qui seront sauvs localement sur le bureau dans un rpertoire xx o xx est
le nom du binme (ex : A2). Si plusieurs VIs sont demands, chacun pourra tre construit
partir du prcdent mais sera sauvegard sparment sous un nom explicite et non fantaisiste.
Le travail demand est dans les zones de texte encadres et grises de
ce document.
Les VIs seront abondamment comments, et les rsultats complmentaires (rponses aux
questions, calculs hors labview etc) seront fournis sous forme de fichier Word ou Excel
(notamment pour les TPs 1 : courbes de rponse et 3 : calculs et donnes dtalonnage)
Remarque : il est impossible, pour des raisons pratiques et de licence de travailler
sur les VIs en dehors des sances de TPs.
Il sera tenu compte lors de lvaluation, de la dmarche et de lautonomie des lves, du
travail dquipe, et il nest pas forcment ncessaire de tout raliser pour obtenir une bonne
note.
Ces sances doivent tre considres comme du contrle continu, cest dire que le
travail ne doit tre fait que pendant le temps imparti. Il sera aussi tenu compte, lors de
l'valuation, des retards et absences non justifis.
Enfin, du matriel informatique et lectronique parfois onreux ou pouvant prsenter des
dangers (rares !) est mis disposition : il est vivement recommand aux lves de toujours
agir en connaissance de cause (une documentation complte peut tre mise leur disposition).
4
1.b Contenu de ce document :

Le chapitre 1 contient un tutorial Labview qui sera excut pendant la premire sance,
non value.
Le chapitre 2 lchantillonnage , contient les principales rgles et proprits de
lchantillonnage, il est ncessaire de lavoir assimil avant daborder le premier vrai
TP (donc avant la deuxime sance).
Les 3 autres chapitres sont relatifs aux 3 TPs et ne seront donc pas forcment vu dans
lordre. Il est trs fortement conseill de les avoir lu, et den avoir assimil les gnralits,
avant daborder le TP correspondant.
En tout tat de cause, ne pas se lancer dans la programmation des instruments avant
davoir lu et compris le document correspondant.
5
2. Introduction Labview



2.a Introduction
LabVIEW (Laboratory Virtual Instrument Engineering Workbench) est un environnement
de dveloppement graphique qui permet de crer des applications modulaires (notion de sous
VI) et extensibles pour la conception dapplications, le contrle et le test. Labview est un logi-
ciel dvelopp par National Instruments pour linstrumentation. Il se caractrise par une pro-
grammation entirement graphique.
De trs nombreuses fonctions sont disponibles, notamment pour la gnration,
lacquisition et le traitement du signal, pour les traitements mathmatiques et aussi pour une
prsentation trs efficace des donnes . Pensez toujours explorer les diffrents menus (outils
de recherche) avant de rcrire les fonctions qui existent peut-tre dj.
Les programmes LabVIEWappels Instruments Virtuels ou Virtual Instruments (VI). On
parle dinstruments virtuels car leur apparence et leur fonctionnement sont semblables ceux
dinstruments rels, tels que les oscilloscopes et les multimtres.

Les VI se composent de 2 lments principaux :
- Face avant : Interface utilisateur
o Contrles = entres
o Indicateurs = sorties

-




6
- Diagramme
o Fentre de programmation
et daffichage du code
source


Interaction entre face avant et
diagramme (Ctrl+E)

2.b Aide
2 possibilits daide en ligne:
La fentre daide contextuelle : menu Aide
Afficher laide contextuelle ou Ctrl-H : si
cette aide est active, il suffit de placer le cur-
seur sur un lment pour avoir une aide sim-
plifie.

Pour une aide plus complte : menu Aide rfrence en ligne (et notamment Labview
Rfrence - Functions & VIs), ou cliquer sur aide dtaille dans la fentre daide
contextuelle.

2.c Construction dun premier instrument virtuel :
A partir de lcran daccueil de labview, cliquer sur VI vide . 2 fentres composant un
instrument virtuel sont alors cres :
Une face avant (initialement grise) reproduisant les diffrents contrles (action de
lutilisateur vers linstrument, donc entre dune variable) et les diffrents indicateurs (visuali-
sation dune variable).
Un diagramme fonctionnel (initialement blanc) o lon retrouve les contrles, les indica-
teurs ainsi que des oprateurs. Ce diagramme est le programme.
On peut passer de lun lautre par Ctrl-E ou par le menu Fentres.

7
On va raliser un instrument qui affiche une valeur saisie laide dun bouton et bruite.
Ouvrir un nouveau VI (Fichier - Nouveau). Cliquez-droit dans la fentre face
avant (fond gris) pour ouvrir un menu popup Commandes . Choisissez
un indicateur de type Vumtre dans la palette Indicateurs n. et bapti-
sez le Signal , soit immdiatement aprs sa cration soit aprs en double-
cliquant sur le texte modifier. Faire apparatre lafficheur numrique en cli-
quant avec le bouton droit sur le Vu-mtre et en choisissant lments vi-
sibles / afficheur numrique

Graduez le Vumtre de 0 100 en double-cliquant sur le 10 initial.
Faire la mme chose avec une commande bouton rotatif .
Basculez sur la fentre diagramme fonctionnel (Ctrl-E) ( diagramme , la blanche).
Les 2 lments cres apparaissent. Le premier est un indicateur , servant visualiser
une variable, le deuxime une commande , servant saisir une variable.
cliquez-droit dans la fentre et dans le menu Arithmetique / Express-
Numrique. , placer les 3 oprateurs (multiplieur, additionneur et alatoire) et
la constante ( ), comme ci-dessous. Remarquez quen promenant le cur-
seur de la souris, celui-ci change de forme ( ) lorsquil passe sur des zones
sensibles des lments dits terminaux . En cliquant, placez les cables
comme ci-dessous.

Il est pratique douvrir la fentre Help (Ctrl-H) pendant cette tape pour voir plus prcis-
ment les connecteurs des objets que lon soude : en effet, ils clignotent dans cette fentre lors-
que lon passe dessus avec loutil cblage.
Raccourci : Pour crer et cbler plus rapidement une constante sur une entre dun sous-
VI ou dun oprateur, il est possible de faire un click droit avec loutil puis utiliser le
sous menu Crer / Constante , on peut alors saisir la valeur de la constante si la valeur par
dfaut nest pas la bonne. Il est possible, de la mme manire, de crer et cbler un contrle
constante






indicateur











oprateurs










Commande






8
sur une entre dun sous-VI ou un indicateur sur une sortie dun sous-VI. Il sont alors
cres sur la face avant (mais nimporte o !).
Excuter avec lun ou lautre des boutons ou .
(Attention, il ne sagit que dune simulation,
pour le moment)
Notez, partir de la palette fonctions de la
fentre diagramme fonctionnel et de ses sous-
palettes, la trs grande quantit de fonctions dispo-
nibles (plusieurs centaines).
Un certain nombre, les plus utiliss, sont dans la
palette express .
Mais beaucoup plus se trouvent notamment dans
les palettes programmation , Mathma-
tiques , Traitement du signal etc
2.d Principes de Labview
Les objets placs sur la face avant sont les variables du programme (A part bien sur les
dcorations). Ils peuvent tre soit des contrles, ou variables dentre, qui permettent
loprateur de rentrer des donnes, soit des indicateurs, ou variables de sorties, qui per-
mettent de visualiser des donnes.
Le diagramme contient, outre les reprsentations des contrles et indicateurs, des opra-
teurs ou sous-VIs que lon peut considrer comme les procdures du programme. Ces l-
ments sont relis par des connexions qui reprsentent les flux de donnes : ces flux sont
sortant pour les contrles, rentrants pour les indicateurs et rentrant et/ou sortant pour les op-
rateurs et sous-VI.



La condition ncessaire pour quun oprateur soit excut (et donc que ses sorties soient
ensuite disponibles) est que toutes ses entres soient disponibles. Il en est de mme pour les
indicateurs. Ainsi, dans le schma ci-dessus, le sous-VI 2 sera forcemment excut aprs le 1 .

Contrle 1
Contrle 2
Sous-VI 1
Indicateur 1
Sous-VI 2
Indicateur 2
9
Pour ce schma, on ne peut pas savoir, de sous-VI 1 et sous-VI 2, lequel sera excut en
premier, en fait ils seront peut-tre excuts simultanment.
En effet, Labview est multitches , ce qui signifie que plusieurs groupes dlments
sans relation de dpendance entre eux pourront tre excuts simultanment .
On verra plus loin comment grer, quand ncessaire, la chronologie d excution (struc-
tures squences ).
2.e Techniques de dbogage :
Sondes
Afficher le diagramme pendant lexcution dun VI. Faites surgir un menu popup dun fil
du programme que vous avez ralis et choisissez "Sonde". La sonde affiche en permanence
les donnes correspondant la liaison o elle est attache.
Observation des flux de donnes
Revenir au diagramme. Cliquer sur le bouton ampoule pour qu'elle s'allume. Lancer
l'excution. Des points mobiles indiquent le flux des donnes le long des connections. Egale-
ment, des indications sur les valeurs sortantes apparaissent sur les noeuds actifs.
Une exprience de ce type montre bien la logique de la squencialit dans Labview.
Chaque noeud peut sexcuter ds que toutes les donnes sont arrives aux bornes dentre.
La disposition gomtrique des noeuds dans le diagramme na aucune influence.
Il existe aussi des possibilits de point darrt et de pas. pas

2.f Les structures (Palette Structures):
Boucle While (tant que)
Compltons le VI prcdent. Un slecteur en face avant permettra dajuster
la priode daffichage entre 0 et 2 s et un interrupteur permettra darrter.
Disposer les lments en face avant suivant le schma ci-dessous. Lafficheur est du type
graphe droulant (menu popup Indicateurs graphiques). Cest donc un affichage point par
point, contrairement graphe qui affiche tout un tableau dun seul coup.

10

Le diagramme sinscrit dans une boucle While : (en fait, while not)
(Express contrle dexcution, boucle while), cliquer puis glisser autour des
lments) Il se cre alors un bouton stop en face avant (contrle boolen)
Il y a une borne lecture dindex et une borne criture de condition de fin de boucle ,
cabl un boolen, ici par dfaut le bouton stop . La boucle sexcute tant que le boolen
branch sur est false (soit bouton non actif) .
Le diagramme raliser est le suivant :

Lensemble plac dans une structure fait en sorte que la dure totale
dune itration de cette structure soit au minimum de 500 ms.
Il peut arriver quil soit ncessaire de changer un contrle en indicateur ou rciproque-
ment, cela se fait par le menu popup. Remarquer que les contrles sont reprsents par un trait
Commentaire (double
click)
Graphe droulant
Contrle
Numrique
Contrle
Boolen
Palette programma-
tion / Informations
temporelles
Commentaire (Dble
click)
11
plus gras. Remarquer aussi, dans le premier cas ci-dessous, le trait pointill indiquant un pro-
blme, ainsi que la flche brise , en haut gauche de la fentre.


Cliquer alors sur pour avoir des explications sur les causes du problme. Les fils
mauvais (en pointill) superflus (et parfois bien cachs) peuvent tous tre effacs avec
Edition / Supprimer les fils incorrects ou Ctrl B.
Remarquez que les couleurs correspondent aux types : bleu = entier, orange = rel, violet =
string, vert = boolen.
Nous allons maintenant chercher afficher, en plus, la valeur moyenne de toutes les va-
leurs depuis le dbut :
Il faut donc que dans chaque itration de la boucle on ait accs la valeur de
la somme lors de litration prcdente. Cela se fait en utilisant un registre
dcalage que lon fait apparatre partir dun popup ( clic droit) sur un des
bords verticaux de la boucle : Slectionner Ajouter un registre dcalage .

Il apparat les symboles et sur ces bords. La borne de droite est
lentre o lon va brancher la valeur de somme actuelle, celle de gauche
est la sortie o la rcupre la mme valeur mais de litration prcdente.
Ce registre doit tre initialis par la gauche lextrieur de la boucle.
Le diagramme obtenir est le suivant :

Lafficheur peut accepter plusieurs entres si elles sont regroupes en cluster (ensemble
de variables pouvant tre de types diffrents, struct du C).
Le diagramme ci-dessus contient une petite erreur
Valeur initiale
Index de
boucle
Cluster / Programma-
tion / Cluster / As-
sembler
12
De retour sur la face avant, vous pouvez personnaliser votre afficheur en lui rajoutant dif-
frentes options afin dobtenir quelques chose ressemblant :

On a affich ici la lgende et la palette de lafficheur (menu popup). La lgende est
redimensionnable la souris, noubliez pas son menu popup.

Boucle N fois (Programmation / Structures))
Cette boucle effectue un certain nombre de fois ce quelle contient :
est la borne dentre o lon cble le nombre ditrations dsir,
est la borne de sortie indiquant lindice de litration en cours.
Cette structure accepte aussi la temporisation ainsi que les registres dcalage.
On peut traiter facilement les lments dun tableau que lon cble directement travers la
structure :
(ne pas raliser)
Ce VI calcule et affiche la racine carre des lments dun tableau
Analyse/Traitement du
signal / gnration de
signaux / motif de
rampe
13
gauche, un tableau rentre dans la boucle par un tunnel . Le trait pais reprsentatif
d'un tableau unidimensionnel s'est transform en trait fin correspondant la i-ime valeur du
tableau. La borne N de la structure n'est pas connecte. Le nombre d'itrations est dtermin
automatiquement d'aprs la taille du tableau. Inversement, quand on connecte un scalaire
l'intrieur de la boucle vers l'extrieur, on rcupre automatiquement un tableau de dimension
N; dans la figure ci-dessus, cela correspond la sortie d'une connexion droite vers un affi-
cheur graphique.
Ce processus (auto-indexing) peut tre dsactiv par l'option "Dsactiver lindexation" du
menu popup du tunnel (petit rectangle noir sur le bord de la structure, o les connexions pn-
trent).
Ne pas raliser cet exemple pdagogique lefficacit douteuse : En effet, on au-
rait pu faire lconomie :
- Soit du gnrateur de rampe en connectant lindice de boucle la racine carre,

- Soit de la boucle en connectant directement loprateur racine carre sur le
tableau. Ainsi, beaucoup de traitements de tableaux peuvent tre faits sans pas-
ser par des oprations lment par lment ; par exemple, additionner 2 ta-
bleaux de mme taille se fait simplement avec un oprateur addition. On peut
aussi faire des oprations mixtes scalaire/tableau (par exemple multiplier tous
les lments dun tableau par une mme constante).


Raliser un VI affichant ( laide dun grapheXY ) sous forme de courbe pa-
ramtre 100 points, un cercle. On devra alors construire 2 tableaux (X et
Y) et les assembler (cf aide Ctrl H ).
Structure Condition (contrle dxcution / Structure condition)
Cest une fentre multifaces laquelle doit tre reli un boolen (issu souvent dun op-
rateur comparaison, la fentre a alors 2 faces : true et false ), soit un entier (autant de
faces que lon veut, quivalent du Case du Pascal).
14
(ne pas raliser)
Application : Raliser laide de cette structure le bornage suprieur, ou cr-
tage (limitation une valeur maxi) puis laffichage dun signal sinusodal
Remarque 1 : Cette structure peut, pour les cas
les plus simples, tre avantageusement remplace
par :
(arithmtique / comparaison / slectionner)

Remarque 2 : lcrteur ralis plus haut
existe tout prt :
(Programmation / comparaison / Dans la gamme)

Structure Squence, gestion de la chronologie
Le diagramme suivant contient 3 lments totalement indpendants (et bidons..., ne pas le
raliser). Rien ne permet de savoir dans quel ordre ces 3 lments seront excuts, ils seront
mme probablement excuts simultanment :
(ne pas raliser)
Si cet ordre est important pour le bon droulement du programme, on doit alors utiliser
une structure squence (Contrle dxcution / Structure squence):
(ne pas raliser)
On peut rajouter, supprimer ou dplacer des tapes avec un click droit sur un bord de la
squence.
15
Un faon plus lgante de grer la chronologie consiste utiliser des connexions, pas for-
cement utiles priori, mais qui imposent des dpendances :

Pas dexemple raliser !
Saisie de code
Il peut tre parfois fastidieux de cbler une formule complexe. Aussi les concepteurs
de Labview ont prvus 2 exceptions la programmation graphique :
1 La formule express
(arithmtique / formule) :
Permet de saisir des formules
mathmatiques plusieurs en-
tres et 1 sortie.

2 la structure formule :(Programmation / Structure / Boite de calcul)
Permet de siair des formules, ou ensembles de formules plus complexes, voire dcrire du
code trs proche du C (cf aide)
Le menu popup sur le bord de la structure permet de crer les lments entre et sor-
tie . Les textes identificateurs que lon doit mettre dans ces bornes doivent tre repris
lintrieur pour taper la formule.
Chaque formule doit se terminer par ; , voir laide Ctrl H pour connatre les opra-
teurs et fonctions disponibles.
Vous pouvez raliser le VI suivant, qui contient une erreur de syntaxe que
vous essaierez de rsoudre avec laide en ligne :
16

dont le diagramme est :

Remarquer que les 2 tableaux unidimensionnels (vecteurs) sont runis en un tableau bidi-
mensionnel (matrice) grce Construire un tableau ( dans Tableaux redimen-
sionn la souris).
2.g Sous VIs
Il est possible de transformer facilement tout ou une partie dun VI en un sous-VI
(fonction avec passage de variables par valeur) utilisable dans un autre VI appelant.
Dans ce cas, tout ou une partie des contrles seront les variables dentre du sous-VI, et les
indicateurs deviendront les variables de sortie.
Pour cela, Slectionner la partie du diagramme transformer en sous-VI, menu Edition /
Crer un sous-VI . Le sous VI est cr, vous pouvez, en cliquant-droit sur licne en haut
droite de la face avant modifier les connecteurs ou redessiner licne. Il est alors ncessaire
denregistrer le sous-VI.
Le sous-VI peut tre utilis partir de la fentre diagramme du VI appelant grace au sous-
menu Slectionner un VI qui permet de charger tout fichier VI.
Important : par dfaut, Labview ne sauve pas les valeurs des controles, mme si
elles ont t modifies. Pour conserver de nouvelles valeurs (qui deviendront celles par
Tableau unidi-
mensionnel
Tableau bidimen-
sionnel
17
dfaut), cliquer sur le menu Execution / Dsigner les valeurs actuelles par dfaut puis
enregistrer le VI.
2.h Conclusion :
Vous connaissez maintenant environ 10% des possibilits de Labview, alors explorez, d-
roulez les menus, surgissez les popup !
18
19
3. lchantillonnage
Ces lments constituent un minimum vital pour effectuer correctement les TPs. Ils ont
t ou seront prochainement dvelopp en cours. Nhsitez pas demander des explications
ou des complments dinformation.

Lchantillonnage est lopration qui consiste faire lacquisition dun signal laide
dun systme numrique.
Soit un signal continu rel (tension par exemple) V(t) : lchantillonnage va consister
numriser priodiquement la valeur de ce signal. On effectue alors une double discrtisa-
tion de ce signal :
Discrtisation dans le temps : le signal ne sera connu que toutes les T secondes, T
tant la priode dchantillonnage, et le nombre de points acquis sera fini (pour une
dure dacquisition finie),
Discrtisation de la grandeur mesure : Apres numrisation, une valeur correspond
toujours un nombre fini de bits (ou doctets), dautre part la plage de mesure
dun dispositif dchantillonnage est finie, par consquent, le nombre de valeurs mesu-
rables diffrentes est aussi fini. Le plus petit cart mesurable est la rsolution du
dispositif.
p
l
a
g
e

d
e

m
e
s
u
r
e

V
0
grandeur mesure (ex: tension)
temps
priode d'acquisition T
dure de l'acquisition t
rsolution d
Discrtisation dans
le temps
Discrtisation de la
grandeur mesure

20
Ces discrtisations sont donc des sources derreurs :
3.a La discrtisation dans le temps :
Lutilisateur peut gnralement choisir la frquence dchantillonnage (inverse de la p-
riode), jusqu une limite suprieure, fonction du matriel utilis (TPs 1 et 2 : carte
dacquisition, 200 kHz, TP3 : module dacquisition , une acquisition toutes les 60 ms).
Si le signal chantillonn est rapidement variable, son chantillonnage peut alors poser
quelques problmes. Un chantillonnage sera dit correct si lon peut, partir des seuls points
chantillonns, reconstituer le signal (par exemple par interpolation entre les points) . Sup-
posons que ce soit un signal sinusodal de frquence f : Le thorme fondamental de
lchantillonnage, dit thorme de Shannon , nous dit que :
Lchantillonnage dun signal de frquence f doit se faire avec une frquence
dchantillonnage Fs suprieure 2f.
Le non suivi de cette rgle essentielle entrane pratiquement coup sur des rsultats aber-
rants.

Lillustration et la justification pratique de ce thorme seront vus durant le TP2, la d-
monstration sera vue pendant le cours dUP1
3.b La discrtisation de la grandeur mesure :
La discrtisation intervient lorsque les valeurs finales constituent un ensemble discret. On
peut alors dfinir un pas de mesure o (ou parfois digit, ou LSB, Least Significant Byte) qui est
le plus petit cart mesurable.
Cest la rsolution du systme dacquisition, ne pas confondre avec lincertitude, ou la
sensibilit.
On introduit alors une erreur alatoire,
dite erreur de discrtisation.
21
On montre que son cart-type est :
3 2
o
o =
d



3.c Le thorme de la moyenne :
De plus en plus souvent, le systme dacquisition est utilis a des performances permettant
davoir une frquence dacquisition grande par rapport la cadence dacquisition ncessaire
pour une application donne. Ainsi, pour le TP1 (rgulation de temprature), 10 mesures par
seconde suffisent alors que le systme est capable dchantillonner 200 kHz !
On peut mettre profit ces capacits en moyennant un grand nombre de mesures, en ef-
fet, le thorme de la moyenne nous indique que :
Si lon prend comme nouvelle mesure la moyenne de n mesures lmentaires conscu-
tives :

=
n
i
x
n
x
1

1

Si ces n mesures ont une composante derreur alatoire et indpendante dcart-type o,
Alors lcart-type de la contribution de cette erreur sur la moyenne scrit :


Ceci permet de rduire considrablement la composante alatoire et indpendante de
lerreur (appele parfois bruit ), mais est bien sur sans effet sur les autres sources derreur
(erreur dtalonnage, drives lentes etc). De plus, lacquisition dure n fois plus longtemps.
4.7
4.75
4.8
4.85
4.9
4.95
5
5.05
5.1
5.15
5.2
0 10 20 30 40 50 60 70
V brut
moyenne sur 5 points

n
x
x
) (
) (
o
o =
22
23
4. TP N1 Rgulation numrique de temprature

4.a Principe gnral:

Le but de la rgulation de temprature est de maintenir la temprature T(t) d'un systme la
plus proche possible d'une temprature Tc(t) dite de consigne (choisie par l'utilisateur et pou-
vant tre variable), et dans de bonnes conditions de stabilit. La rgulation se fait en 3 tapes:
Mesure de la temprature T(t) laide dun Convertisseur Analogique Numrique
(CAN).
Calcul de l'action P(t) appliquer au processus (= puissance de chauffage) par un algo-
rithme appropri .
Application de cette action laide dun Convertisseur Numrique Analogique
(CNA).
Ce cycle est appliqu priodiquement avec une priode dite priode de rgulation, inf-
rieure la seconde dans ce cas.
Les notions vue au cours de ce TP seront acquises plus en dtail lors du cours dUP3, on
pourra voir aussi : http://www.emse.fr/~pbreuil/auto/index.htm
24
4.b Dispositif, action et mesure :

On dispose dune micro-plaquette chauffante (partie mesure : maxi environ 200C, atten-
tion, llment chauffant peut atteindre 800C !) dont on peut mesurer la temprature laide
dun thermocouple.
La plaquette est chauffe par une source de tension issue de la voie 0, amplifie en cou-
rant, du convertisseur numrique analogique 0 10 V. Il est donc possible de piloter la
puissance de chauffage laide de Labview.
On utilise pour la mesure de temprature un thermocouple de type K (Chromel Alumel)
coll prs de la source de chaleur. Un thermocouple est un capteur fournissant une tension
sensiblement proportionnelle la diffrence de temprature entre le point chaud ( soudure
chaude ) et la soudure avec le reste du circuit ( soudure froide ). Lintrt du thermocouple
est quil permet de mesurer jusqu plus de 1200 C.
Mais il ne mesure quune diffrence de temprature, il est donc ncessaire de connatre
la temprature T0 de la soudure froide, proche de lambiante, laide dun autre capteur
(dit CSF Compensation de Soudure Froide ), de type LM35 fournissant une tension pro-
portionnelle la temprature T0, mais ne fonctionnant quen dessous de 100 C.
T T0
"soudure chaude"
"soudure froide"
Chromel
Alumel
Cuivre
Cuivre
voie 0: T-T0
voie 1: T0
capteur CSF

Le signal du thermocouple (type K , soit environ 40V/C) est envoy sur la voie 0 du
convertisseur analogique numrique (carte 6024 de National Instruments).
Carte dacquisition
Plaquette
chauffante
Thermocouple



PC
CNA
CAN
Ampli cou-
rant
Capteur temp.
ambiante
soudure
froide
25
De mme, la voie 1 reoit le signal de soudure froide issu dun capteur semi-
conducteur (dit de type IC , il sagit ici dun LM35 dlivrant 10 mV/C).

Raliser un VI permettant dmettre une action provenant dun contrle et de
visualiser lvolution de la temprature. On essaiera damliorer le rapport Si-
gnal/Bruit de la mesure tout en veillant ce que celle-ci reste de courte dure
(< 100 ms). Pour cela, on exploitera le thorme de la moyenne (p 21).
Vrifier et ventuellement corriger loffset du thermocouple (valeur de ten-
sion froid qui doit tre nulle)
On veillera aussi, et ceci est valable pour les exercices suivant, ce que
larrt du programme par un bouton adquat provoque larrt du chauffage.
Les outils ncessaires lacquisition et laction sont dans les palettes Acquisition de
donnes / Entres analogiques, Sorties analogiques, Conditionnement de signaux :
Outils dacquisition avec carte National Instruments : La carte
dacquisition est du type NI-PCI 6024E (caractristiques en annexe 2)
Pour toute opration dacquisition ou de gnration, on utilisera plutt
loutil de Ente / assistant DAQ . Cet outil est massivement multifonction (gestion de
TOUT le matriel National Instruments) Il est alors ncessaire de choisir Entre analo-
gique (mesure de tension) ou Sortie analogique (gnration de tension), puis Tension ,
puis de slectionner la ou les voie(s) utilises, dans le bon ordre (slection multiple avec
touche Ctrl). Modifier alors ventuellement la ou les gammes dentres, le nombre de points
( chantillons lire et la frquence dchantillonnage (maxi 200000 Hz) . Ces paramtres
sont modifiables par la suite laide dun double-click.
Les 2 mesures de tension seront alors converties en temprature laide de loutil Pro-
grammation / Numrique / Mise lchelle / Convertir une mesure thermocouple :
Calcul temprature partir des signaux
du thermocouple et du CSF. Cliquer avec le
bouton droit sur les connecteurs de type de
capteur et slectionner crer une cons-
tante afin de pouvoir choisir le type.


4.c Identification du processus :

La fonction de transfert dun processus permet de calculer la mesure Y(t) en fonction de
laction X(t). Son tude thorique fait appel la transforme de Laplace pour les systmes
Processus Action X(t) Mesure Y(t)
26
continus et la transforme en Z pour les systmes chantillonns (qui seront vu dans le cadre
de lUP2).
Lidentification est une modlisation de comportement du processus qui permet dcrire
la fonction de transfert et de rgler facilement les algorithmes de rgulation. Elle se fait en
2 tapes :
1 : Dtermination du type de loi physique laquelle obit le processus : Dans notre
cas, un processus de type Ordre 1 plus retard (systme obissant une quation diffren-
tielle dordre 1, suivi dun retard pur, cas le plus courant) est une bonne approximation :



dt T T
G
dt t P CdT
s
) (
1
) (
0
= , avec un temps de retard t
r

(C = capacit calorifique, P=puissance, T
0
=T ambiante)
Le retard t
r
est fonction de la conductivit thermique, de la capacit calorifique et de la
gomtrie.
La rponse une action chelon (P(t)=0 si t<0 et P(t)=P si t>0) est dans ce cas:
|
.
|

\
|
+ =
t
tr t
P G T P G t T
s s
exp ) ( ) (
0
(1) avec
S
G C = t

2 : Dtermination des constantes du modle partir de la rponse un chelon
daction. Par soucis de simplification, on considrera par la suite que laction est la tension
applique V (au lieu de la puissance P).
Les 3 paramtres valuer sont donc :
P(t)
T(t)
27
G
s
, gain statique car T=G
s
V lorsque le rgime permanent est atteint (On suppose que
la loi T=f(V) est linaire, ce qui est gnralement une grossire approximation, et quil
ny a pas de perturbations, en fait, le gain statique dpendra un peu de la temprature).
t, constante de temps du systme : Si C est la capacit calorifique, alors t=CG
s
. t
peut tre dtermine partir de la tangente au point de dpart, si lon connat le gain
statique, ce qui nest pas toujours vident.
t
r
, retard pur du systme (not parfois t
d
, delay ) : il dpend de la conductivit
thermique des matriaux et de la gomtrie du systme, notamment de la distance
entre la source de chauffage et le capteur. De plus, on peut considrer, en premire ap-
proximation, que la priode de rgulation, At, sajoute au retard.
Travail effectuer :
On considrera que la plaquette est un ordre 1 avec retard : Dterminer
graphiquement
*
les 3 paramtres G
s
, t
r
et t laide dun VI permettant de vi-
sualiser la rponse un chelon denviron 50% de la puissance maxi. On soi-
gnera tout particulirement le retard qui, bien que faible, a une influence
capitale sur la stabilit de la rgulation. Ces paramtres seront utiliss plus
loin.
Il est possible denregistrer les couples (temps, temprature) dans un fichier lisible par Ex-
cel (relativement facile avec E/S fichiers / crire dans un fichier tableur , encore plus
simple avec un click droit sur un graphe et Exporter / exporter vers Excel ).
4.d La rgulation PID :
Afin de simplifier, on prendra comme action la tension de chauffage V(t) au lieu de la
puissance. On pourra discuter de la pertinence de cette approximation.
La rgulation PID est lalgorithme de
rgulation le plus utilis. Laction PID est
en fait la somme de 3 actions :
Laction Proportionnelle ("P"):
L'action P est proportionnelle l'cart
e(t) entre la consigne et le signal:
V(t)=Kp(Tc(t)-T(t))=K*e(t)
Si le coefficient proportionnel Kp
(paramtre rglable) est suffisamment

*
Il est possible de dterminer ces paramtres plus rigoureusement par une mthode de moindres carrs qui
sera (re)vue en TDs de rgulation & mesure

c(t)
Rponse un chelon de consigne
y(t)
P
PI
A
T

28
faible, le systme est stable, mais la temprature ne peut alors pas atteindre la consigne
(sinon, on aurait V(t)=0 !): On a alors un cart, dit cart de statisme:
AT=e(t)=V(t)/Kp
Si Kp est grand et si il existe un retard, le systme se met osciller d'o un choix drama-
tique entre la stabilit et la prcision...
Remarque : Ici, laction est borne (entre 0 et +10V), il sagit dune non-linarit par rap-
port la thorie du PID. Dans le cas plus gnral, Kp grand peut entraner une divergence
dramatique.
On montre que celle-ci a lieu si
R R
S
t t
KG
t t t
57 . 1
2
~ >
Pour avoir en mme temps une bonne prcision et une bonne stabilit, on doit ajouter:
Laction Intgrale ("I")
Pour compenser petit petit l'cart de statisme, on ajoute l'action un terme d'intgration
de l'cart consigne - signal .
On a alors:
(

+ =
}
dt t e
t
t e Kp t V
i
) (
1
) ( ) (
L'action I est caractrise par le paramtre rglable t
i
, homogne un temps, est sera d'au-
tant plus forte que t
i
sera faible.

c(t)
Rponse un chelon de consigne
y(t)
P
PI
29
Pour corriger les variations brusques de temprature (ou de consigne), on peut ajouter en-
core:
Laction Drive ("D")
On ajoute l'action un terme de drive de l'cart consigne - signal . L'action D est caract-
rise par le paramtre rglable t
d
, homogne un temps, est sera d'autant plus forte que t
d
sera
fort.
On a alors lalgorithme PID complet :
|
|
.
|

\
|
+ + =
}
dt
t e d
t dt t e
t
t e Kp t V
d
i
) ( (
* ) ( *
1
) ( * ) (
Soit, en termes discrets :
( )
|
|
.
|

\
|
A
+
A
+ =

=

k
j
j
i
k k
d
k k E
t
t
E E
t
t
E
Kp
V
0
1
, o At est la priode de rgulation.
(Par convention, le terme proportionnel K
p
agit sur les 2 autres termes).
Il existe de nombreuses recettes permettant de dterminer les bonnes valeurs des para-
mtres PID, les principales tant :
Daprs les paramtres didentification du processus: (ncessit de faire une identifica-
tion, pas toujours vidente) qui sont, pour un ordre 1 avec retard :
- La constante de temps t (ou inertie ),
- Le retard pur t
r
,
- Le gain statique Gs(rapport temprature / action en rgime permanent ).
On peut alors estimer les valeurs permettant de rguler en respectant les critres dits de
Ziegler & Nichols : Systme oscillant amorti dun facteur 4 entre les 2 premires oscil-
lations
tr G
Kp
s
t 2 . 1
= t
i
=2t
r
t
d
=0.4 t
r
On pourra aussi essayer les critres dits CHR0 :
tr G
Kp
s
t 6 . 0
= t
i
=t t
d
=0.5 t
r

30
Daprs la mthode dites des oscillations entretenues (moins efficace que la prc-
dente mais souvent plus facile mettre en uvre, car ne ncessite pas didentification):
Rgler le PID en proportionnel pur, puis augmenter progressivement Kp jusqu ce que le
signal commence osciller, on notera alors Kp
l
la valeur de Kp et t
0
la priode des oscilla-
tions : Les paramtres selon les critres de Ziegler et Nichols seront alors :
Kp=0.62 Kp
l
t
i
=0.5*t
0
t
d
=t
i
/5
Ces 2 mthodes, plus ou moins empiriques, (qui donnent dailleurs parfois des rsultats
diffrents) sont trs approximatives et doivent tre affines au cas par cas.
Raliser un VI de rgulation PID. On pourra rgler, partir de la face avant :
la consigne, les 3 paramtres de rgulation PID ainsi que la priode de rgu-
lation. Pendant le fonctionnement, on rglera les paramtres de rgulation
partir dune des 2 mthodes, puis on affinera empiriquement afin davoir
une rgulation :
1 : prcise
2 : rapide (consigne atteinte rapidement)
3 : rpondant efficacement aux changements de consignes ou aux pertur-
bations (on pourra utiliser le ventilateur).

4.e Mesure de la temprature de llment chauffant: ( faire si la
partie PID est termine)
LM35
+12
capteur
soudure froide
Voie 1
Voie 0
thermocouple
+
-
sortie analogique 0
+12
1 ohm
Voie 2
lment chauffant
en platine
+12

Une rsistance de 1 ohm est insre dans le circuit de chauffage, la mesure de la tension
ces bornes (connectes la voie 2 de la carte dacquisition) permet alors de mesurer le courant
de chauffage. Il est alors possible de calculer en temps rel :
31
- la tension de chauffage et le courant de chauffage, et donc,
- la puissance relle de chauffage et la rsistance de chauffage
- Cette dernire tant en platine pur, il est possible de connatre la temp-
rature de llment chauffant car la rsistance varie linairement avec la
temprature (R=R
0
(1+o(T-T
0
)) avec o= 0.00385 C
-1
pour le platine)
Afficher ces informations en temps rel, mme quand la puissance mise est nulle

IMPORTANT : Penser, avant denregistrer votre travail, faire Edition / Dsigner
les valeurs actuelles comme dfaut , faute de quoi vos valeurs de contrles seraient per-
dues lors de la prochaine rouverture du VI.
32
33
5. TP N2: DETECTION SYNCHRONE
5.a But:
A : Utilisation d'une carte d'acquisition pour lacquisition dun signal (oscilloscope) +
analyse frquentielle.
B : Application la dtection et la mesure d'un signal priodique de rfrence connue, ce
signal pouvant tre noy dans un bruit (= signaux de frquences diffrentes) qui lui est sup-
rieur de plusieurs ordres de grandeur. Cette dtection peut se faire de diffrentes faons.
Ici, il s'agira de dtecter, l'aide d'une photodiode, l'clairage d'une diode lectrolumines-
cente alimente par un courant sinusodal.
On utilise une carte dacquisition National Instruments 6221 pouvant effectuer jusqu'
200000 mesures par seconde.

5.b Prambule : Analyse frquentielle & signaux priodiques
(Ces notions, dj connues par certains, seront prcises lors du cours dUP1)
Pour la suite, nous nommerons signal toute srie F
i
, ou tableau unidimensionnel, de
mesures acquises avec un intervalle de mesure T dont linverse est la frquence dacquisition
f
s
(ou dchantillonnage).
Linformation contenue dans un signal F peut tre visualise de 2 faons diff-
rentes :
Dans le domaine temporel : mthode classique, fonction F
k
=F(kT)
Dans le domaine frquentiel : permet de reprsenter la rpartition de lintensit (ou
de la puissance) du signal dans les diffrentes frquences du spectre :

1
2
3
34
1 : composante continue (= valeur moyenne)
2 : Signal triangulaire (1 fondamental + des harmoniques)
3 : bruit Gaussien haute frquence
Le passage du domaine temporel vers le frquentiel se fait par la transforme de Fourier.
Comme le signal est chantillonn (on ne connat sa valeur que f
s
fois par seconde), on utilise
la transforme de Fourier discrte.
La transforme de Fourier discrte ou DFT permet de dcomposer une fonction quel-
conque, priodique ou non, en sinus et cosinus, et donc de connatre ses composantes de fr-
quence:
Soit le signal chantillonn F
k
=F(kT) o T est la priode d'chantillonnage (et f
s
=1/T est la
frquence dchantillonnage). N est le nombre de points, trouver les a
j
et b
j
tels que:

+ =
1
0
) / 2 sin( ) / 2 cos(
N
j j k
N jk b N jk a F t t

Solution: a
j
=2/N*Rel(f
j
) b
j
=-2/N*Imaginaire(f
j
) avec

=
1
0
/ 2
) (
N
k
N ijnk
j
e
f
kT F
, j
ime
composant de la DFT
Proprits:
- f
0
= composante continue du signal
- f
j
= composante correspondant une frquence de s
f
N
j
NT
j
=

-
0) (j , = =
j j N
f f
et donc fj n'est utile que si j N s / 2 qui correspond la fr-
quence dite de Nyquist (moiti de la frquence d'chantillonnage), d'o le thorme de Shan-
non, thorme fondamental de lchantillonnage, (cf p 20) :
Un signal de frquence f chantillonn avec une frquence dchantillonnage f
s
ne peut tre
reconstitu (= linformation du signal a t correctement acquise) que si :
f
s
>2f
Si la fonction F est priodique de frquence s, alors la TFD se limite une srie de pics
aux frquences multiples entiers de s (plus ventuellement f
0
). Le pic de frquence s est ap-
pel fondamental, les pics de frquence j.s (j entier >1) les harmoniques.
Pour un signal non sinusodal, le thorme de Shannon sapplique toutes les com-
posantes frquentielles du signal. (Comme le nombre dharmoniques est gnrale-
35
ment infini, on ne garde que celles ncessaires pour reconstituer le signal avec une
certaine prcision.
Par consquent, il est normalement ncessaire, avant dchantillonner un signal,
de sassurer que toutes les composantes de frquence suprieure f
s
/2 ont t
limines (par filtrage dit antialiasing ).
Le nombre de multiplications ncessaires pour effectuer une DFT, proportionnel N
2
, de-
vient vite colossal. Heureusement, il existe un algorithme dichotomique ramenant ce nombre
NLog
2
(N), c'est la "Fast Fourier Transform" ou FFT. Seule contrainte de la FFT, N doit tre
une puissance de 2. Labview utilise lun ou lautre, suivant le nombre de points.
On utilise en fait plus souvent le spectre en puissance du signal:
N
f
j N
f
j
Pj
2
2 2
|
.
|

\
|

+
= ,
N
f
P
2
2
0
0
|
.
|

\
|
=
qui, en vertu du thorme de Shannon, n'a de signification que jusqu' j=N/2.
5.c Quelques outils disponibles :
Outils dacquisition avec carte National Instruments : La carte
dacquisition est du type NI-PCI 6221E ou quivalent (caractristiques
en annexe 2)
Pour toute opration dacquisition (ou de gnration), on utilisera plutt
loutil de Ente / assistant DAQ . Cet outil est massivement multifonction (gestion de
TOUT le matriel National Instruments) Il est alors ncessaire de choisir Entre analo-
gique (mesure de tension) ou Sortie analogique (gnration de tension), puis Tension ,
puis de slectionner la ou les voie(s) utilises, dans le bon ordre (slection multiple avec
touche Ctrl). Modifier alors ventuellement la ou les gammes dentres, le nombre de points
( chantillons lire et la frquence dchantillonnage (maxi 250000 Hz) . Ces paramtres
sont modifiables par la suite laide dun double-click.
Le signal dynamique obtenu peut alors tre envoy directement sur un graphe ou sur
certains outils de traitement du signal. Pour ventuellement en extraire un ou des signaux
( waveform ), voire directement des tableaux de valeurs, on utilisera loutil de conversion
(Express / Manipulation / Convertir des donnes dynamiques ) que lon configurera pour
obtenir waveform, tableau de waveform ou tableau 1d ou 2d de scalaires, en choisissant ven-
tuellement la voie.
Une alternative plus simple mais moins souple est : Manipulation / Dsassembler des signaux
, redimensionnable la souris.
36
5.d VIs raliser :
VI 1: Acquisition et analyse dun signal:
Lentre analogique 7 de la carte (Priphrique 1) est connecte un gnrateur de si-
gnaux, dans un premier temps, on nexploitera que cette voie :
Transformer le PC en oscilloscope une voie qui affichera aussi le spectre de
puissance gradu en Hz. On pourra afficher enfin : la frquence fondamentale
du signal, sa valeur moyenne, sa valeur efficace et tout autre information utile
sur le signal.
On mettra en vidence diffrentes formes du thorme de Shannon :
- Avec un signal sinus
- Avec un signal plus complexe : le signal carr, que se passe-t-il si
le fondamental respecte le thorme de Shannon et pas les
harmoniques ?
Les principaux outils de traitement et de mesure sont dans :
Analyse / mesures sur Waveform
Analyse / Traitement du Signal
Analyse / Mathmatiques /
Ne pas hsiter demander
VI 2: Dtection de lallumage dune LED :
Problme :
Le signal alimentant la source lumineuse (LED : diode electro-luminescente) est celui uti-
lis prcdemment (voie 0) .
On utilisera comme signal de rfrence le signal prcdent (issu du gnrateur BF), mais
attnu dun facteur 100 (pont diviseur 10 kohms / 100 ohms dj install) afin dviter les
problmes de diaphonie. Ce signal est prsent sur la voie 0.
La LED ne laisse passer le courant que dans un sens : Rgler lamplitude et loffset du g-
nrateur afin que le signal soit compris entre 1 et 8V.

37

Le courant de la photodiode est transform en courant et amplifi (le gain est ngatif).
Llectronique effectue aussi un filtrage analogique passe haut, sa frquence de coupure
est de lordre de 2 kHz. Un filtrage passe bas antirepliement coupe au del de environ 15
kHz.

Si vous avez le temps la fin de la premire sance, essayez de raliser la
dtection de la LED (indicateur boolen indiquant si la LED est visible ou non)
en utilisant le filtrage numrique.
Dtection synchrone (sance 2)
La dtection synchrone, ou mthode du produit scalaire, est une mthode utilise depuis long-
temps car elle peut tre traite de faon entirement analogique (cest dire alors sans calcul).
Nous lutiliserons de faon numrique:
Principe de la dtection synchrone :
Soient S le signal de la photodiode (voie 1) et R le signal de rfrence en (voie 0) : Si
tous deux sont de valeur moyenne nulle (pas de composante continue). On a alors:
R=Asin(et)
S=Bsin(et+u)+f(t) (B = grandeur mesurer)
f(t) est le bruit (lectronique ou optique), on peut le dcomposer en son spectre de fr-
quence (TFD):
f t f t
i
i
i
( ) *sin( ) =

e
Effectuons le produit : R S AB t t A f t t
i i
i
* sin *sin( ) sin sin = + +

e e | e e
Si lon moyenne ce signal sur un nombre suffisamment grand de points, on obtient :
1/100
38
M R Sdt =

}
*
0

Or on peut montrer facilement que :
sin( ) sin( ) cos e e | |
1 2
0
1
2
t t dt + =

}
si e e
1 2
=
= 0 sinon
Donc M # ABcosu si f(t) a peu dharmoniques de pulsation e.
Il sagit ici dun produit scalaire entre les 2 signaux, on obtient alors la composante X de
S en phase avec R
La valeur moyenne de RS est donc proportionnelle l'intensit du signal dtecter si les
2 signaux ne sont pas en quadrature et si le dphasage est constant. Nous lappellerons si-
gnal de dtection .
En supposant dans un premier temps que le dphasage est constant et diff-
rent de t/2, raliser le VI permettant de montrer lvolution du signal de dtec-
tion en fonction du temps.
On vrifiera limmunit du signal aux lumires parasites, en particulier les 50
Hz redresss des nons.

Dans un deuxime temps, on imaginera un dispositif permettant de mesurer
aussi le dphasage. Indication : ce type de dispositif sappelle alors double
dtection synchrone , il consiste effectuer, outre la dtermination de la
composante X, le calcul de la composante Y grce un produit scalaire
avec un signal calcul dphas de t/2 avec R et de mme module.
Afin de tester ce systme, on pourra modifier le dphasage en se rapprochant
de la frquence de coupure du filtre passe-bas de llectronique (15 kHz),
pourquoi ?
A partir dune estimation grossire de la moyenne et de lcart type du signal
de dtection mesur lorsque la LED est invisible, on dterminera un seuil de
dtection au-del duquel un indicateur indiquera la visibilit de la LED.

IMPORTANT : Penser, avant denregistrer votre travail, faire Edition / Dsigner
les valeurs actuelles comme dfaut , faute de quoi vos valeurs de contrles seraient per-
dues lors de la prochaine rouverture du VI.
39
40
6. TP N3 : Corrlation d'Images Numriques

6.a Objectif :

Lobjectif du TP est la mise en uvre de la corrlation d'images au plan de l'acquisition
puis d'un traitement ponctuel simple. Ce genre de travail est courant dans le monde de la vi-
sion industrielle pour le suivi d'objet, par exemple sur une chane de fabrication, ou pour le
contrle de la vitesse de vhicules.

6.b Matriel
Le matriel disposition se compose de :
Camra USB, 1280 par 960 pixels, 8 bits
Logiciel d'acquisition et de traitement Labview

6.c Acquisition d'une image sur le port de la camra USB
La premire tape du projet consiste dans l'acquisition d'une image sur la camra USB.
La bibliothque d'outils correspondante sour Labview est <Vision and Motion>, en particu-
lier ici <Imaqdx> et <Image Management>.
6.c.1 Dcouverte des fonctions Labview d'acquisition et traitement d'images

Figure 1. Acquisition video sous Labview
41

Reproduire et tester le programme donn figure 1.
A quoi servent les commandes et ? Connaissez-vous un couple de
fonctions quivalent en C ?

6.c.2 Dveloppement
Etablir un programme permettant :
Dans une premire tape, d'acqurir, stocker (dans la RAM) et afficher une
image de rfrence
Dans un second temps, d'acqurir, stocker (dans la RAM) et afficher une
image courante.

6.d Corrlation d'images
L'objectif de cette partie est l'criture encore trs guide d'une fonction d'intercorrla-
tion par Transforme de Fourier Rapide sous Labview.
6.d.1 Dveloppement thorique
On souhaite obtenir le produit d'intercorrlation entre deux images par trans-
forme de Fourier
Quelle est la relation entre produit de corrlation et produit de convolution ?
Pourquoi travailler dans l'espace de Fourier ?

6.d.2 Dveloppement logiciel
Dveloppements logiciel (1) : intercorrlation
Identifier dans Vision & Motion Image Processing les fonctions permet-
tant d'effectuer la transforme de Fourier d'une image.
A quoi sert la fonction ?
Identifier les fonctions permettant le changement de coordonnes de l'image
42
Proposer un codage avec en entre les 2 images corrler, 1 container
d'image et en sortie 1 image contenant le produit d'intercorrlation
Intgrer le rsultat au programme prcdent. Quel rsultat obtenez-vous ?

Dveloppement logiciel (2) : dtection du pic de corrlation
Reproduire le programme donn Figure 2. Les fonctions sont dans les me-
nus :
<Vision &Motion><Vision Utilities><Image Management>,
<Vision &Motion><Image processing><Processing>,
<Vision &Motion><Image processing><Analysis>.

Quel est le principe utilis ici ?
Intgrer cette procdure au programme principal. Vrifier la cohrence du r-
sultat obtenu.


Figure 2. Dtection du pic de corrlation

6.e Corrlation locale
L'criture de la corrlation locale est plus proche de la ralit industrielle et/ou universi-
taire. Cette dernire partie propose d'aller vers un logiciel d'intercorrlation d'imagette, avec
une seule imagette encore, mais avec beaucoup moins d'indications, dans des conditions
proches de celles de l'ingnieur dveloppeur.
43

On propose de dfinition une imagette par le biais d'une rgion d'intrt rectangulaire sur
une image. Pour cela, il est ncessaire de rajouter les fonctionnalits suivantes :
reprage d'une zone d'intrt
(cliquer droit sur l'image contenant la ROI, puis slectionner <Crer><Nud de propri-
ts><ROI>)
dfinition d'une imagette dans l'tat de rfrence et dans l'tat courant
(dans le menu <Vision&Motion><Vision Utilities><Image Manipulation>, voir
en particulier la fonction <Imaq Extract>)

You might also like