Ait Benali Mhand
Ait Benali Mhand
Ait Benali Mhand
SCIENTIFIQUE
UNIVERSITE MOULOUD MAMMERI DE TIZI-OUZOU
FACULTE DE GENIE ELECTRIQUE ET DE L’INFORMATIQUE
DEPARTEMENT D’ELECTRONIQUE
Thème
Promotion : 2010-2011.
Remerciements
Arrivé au terme de ce travail nous tenant à exprimer nos plus sincères remerciements à
nos promoteurs Mr M. Mountassar, Mr M. Laghrouche, Mr N. Derguini pour leur
conseilles et orientations.
Introduction générale……………............................................................................... 1
I.1.Introduction………………………………………………………………………... 2
I.2.Les capteurs………………………………………………………………………... 2
I.2.1. définition………………………………………………………………………... 2
I.2.2.1.Capteurs actif………………………………………………………………....... 3
I.2.2.2.Capteurs passif……………………………………………………………….... 3
I.2.3.Capteurs intégrés………………………………………………………………..5
I.2.4.1.fidelité-justesse –précision……………………………………………………... 6
I.2.3.2.Resolution……………………………………………………………….……... 6
I.2.4.3.Sensibilité……………………………………………………………………… 6
I.2.4.4.Finesse………………………………………………………………………… 7
I.1.4.5.Linearité……………………………………………………………………….. 7
I.3.Conditionneur associe……………………………………………………… 7
I.3.2.1.Montage potentiométrique…………………………………………………… 10
I.3.2.2.Montage en pont……………………………………………………………... 11
I.3.2.3.Montage oscillant……………………………………………………………. 12
I.4.Le multiplexage………………………………………………………………….. 13
I.5.1.Définition………………………………………………………………………. 13
I.5.2.Echantillonnage…………………………………………………………………14
I.5.2.1.Théorie de Shannon………………………………………………………….. 14
I.5.2.2.Echantillonnage et maintient………………………………………………….14
I.5.2.3.Repeliement du spectre………………………………………………………. 15
I.5.2.4.Filtre anti-repliement………………………………………………………….15
I.5.3.La quantification……………………………………………………………….. 16
I.6.Conclusion……………………………………………………………………….. 19
II.1.Introduction…………………………………………………………………………. 20
II.2.Les ASICs…………………………………………………………………………… 20
II.2.1.Classification des ASICs………………………………………………………….. 21
II.2.1.1. Les circuits personnalisés…………………………………………………….... 21
II.2.1.1.1. Les circuits à la demande…………………………………………………….. 21
II.2.1.1.2. Les circuits à base de cellules………………………………………………... 21
II.2.1.1.2.1. Les cellules précaractérisées……………………………………………….. 21
II.2.1.1.2.2. Les circuits à base de cellules compilées…………………………………... 22
II.2.2. Les circuits semi-personnalisés…………………………………………………... 22
II.2.2.1. Les circuits prédiffusés…………………………………………………………. 22
II.2.2.1.1. Les circuits prédiffusés classiques…………………………………………… 22
II.2.2.1.2 Les ASICs structurés………………………………………………………….. 22
II.3. Les circuits programmables PLD…………………………………………………... 23
II.3.1. La PROM…………………………………………………………………………. 23
II.3.2. Les PLA…………………………………………………………………………… 24
II.3.3. Les PAL…………………………………………………………………………… 24
II.3.4 .Les EPLD…………………………………………………………………………. 25
II.3.5 Les FPGA (LCA)………………………………………………………………….. 25
II.3.5.1.Architecture générale des FPGAs………………………………………………. 26
II.3.5.1.1.Les éléments Logiques CLB………………………………………………..... 27
II.3.5.1.2.Les éléments d’entrée /sortie (IOB)…………………………………………… 27
II.3.5.1.3.Les éléments de mémorisation………………………………………………… 27
II.3.5.1.4.Les éléments de routage………………………………………………………. 28
II.3.5.1.5.Les éléments de contrôle et d’acheminement des horloges………………….. 29
II.3.5.2. Les familles des FPGAs de XILINX…………………………………………… 29
II.3.5.2.1. La famille VIRTEX-II………………………………………………………… 29
II.3.6.1.1.Architecture interne d’un circuit VIRTEX-II………………………………… 30
II.4.Conclusion…………………………………………………………………………… 31
III.1. Introduction………………………………………………………………………… 32
III.2.La partie analogique………………………………………………………………… 32
III.2.1.Carte de multiplexage et conversion analogique numérique…………………….. 32
III.2.1.1.Présentation de l’ADC0809……………………………………………………. 33
35
III.2.2.Carte de conditionnement du capteur de température LM335………………………
III.2.4.1.4.Amplification et filtrage……………………………………………………… 38
38
III.2.4.1.5.Détecteur d'amplitude……………………………………………………………
III.2.4.1.6.Le suiveur………………………………………………………………………….
39
III.2.5.Carte d’alimentation………………………………………………………………..39
40
III.3.La partie numérique……………………………………………………………………
III.3.1.Principe de fonctionnement d’une liaison série RS232………………………………
41
III.3.2.Module de liaison série UART……………………………………………………..41
III.3.2.1.Le module de réception……………………………………………………………….
42
III.3.2.2.Le module de transmission………………………………………………………42
III.3.2.3.La description VHDL de l’UART……………………………………………….43
III.3.2.4.Simulation du fonctionnement de l’UART……………………………………. 50
III.3.2.5.Schéma de l’UART………………………………………………………………..
51
III.3.2.6.Vu interne de l’UART………………………………………………………………
51
III.4.Application de visualisation sur PC……………………………………………………..
52
III.5.Conclusion ……………………………………………………………………………53
Conclusion générale…………………………………………………………………….... 54
Bibliographie.................................................................................................................. 55
56
Annexe 1 : le Language VHDL………………………………………………………………
Annexe 1 : le navigateur de projet ISE8.1.i…………………………………………….. 60
Annexe 1 : acquisition de données avec Labview……………………………………….. 67
Annexe 1 : Datasheet…………………………………………………………………….. 73
Liste des figures
b) amplificateur opérationnel.
c) amplificateur d’instrumentation
Figure I.9:…………………………………………………………………………………... 9
a) Modèle du capteur type source de courant
b) Convertisseur courant-tension
Figure I.10 : Modèle du capteur type source de charge………………………………….... 9
Figure I.11: Amplificateur de charge………………………………………………………..9
Figure I.12: Modèle du montage potentiométrique………………………………………... 10
Figure I.13: Modèle du montage potentiométrique……………………………………….... 10
Figure I.14 : Montages en pont dans le cas d’impédances complexes…………………….. 11
Figure I.15 : montage en pont……………………………………………………………….11
Figure I.16 : Montage astable à circuit R-C………………………………………………... 13
Figure I.17 : Principe d’échantillonnage d’un signal analogique………………………….. 14
Figure I.18: Principe de fonctionnement d’un échantillonneur bloqueur………………….. 15
Figure I.19: Echantillonnage provocant le repliement du spectre………………………….. 15
Figure I.20: Utilisation d’un filtre en amont de l’échantillonneur………………………… 16
Figure I.21: Gabarit idéal du filtre anti-repliement……………………………………….. 16
Figure I.22: Quantification d’un signal analogique………………………………………. 17
Figure I.23: Principe de l’approximation successive…………………………………….. 18
Figure II.1 : classification des circuits logiques programmables…………………………….20
Figure II.2 : classification des PLDs……………………………………………………….. 23
Figure II.3 : architecture d’une PROM……………………………………………………. 23
Figure II.4 : architecture d’un PLA……………………………………………………….... 24
Figure II.5 : architecture d’un PAL………………………………………………………... 24
Figure II.6 : cellule de base de circuit……………………………………………………… 25
Figure II.7 : architecture générale d’un FPGA…………………………………………….. 26
Figure II.8 : architecture d’un CLB de circuit xc2000…………………………………….. 27
Figure II.9 : schéma des interconnexions………………………………………………….. 28
Figure II.10 : Architecture d’un circuit VIRTEX-II……………………………………….. 29
52
Figure III.18: Diagramme de VI de visualisation…………………………………………….
Introduction générale :
Une chaine d’acquisition permet d’extraire des informations qui caractérisent les
grandeurs physiques qui sont les paramètres agissant sur processus (température, pression,
humidité…etc.).
Dans le premier chapitre, des rappelles sur les capteurs sont données, à savoir les
déférents types de capteurs, principe de détection, conditionneurs…etc.
Dans le deuxième chapitre on donne un aperçu général sur les différentes familles des
circuits logiques ASICs et PLDs, ensuite une description générale des circuits FPGAs.
1
Chapitre I
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
I.1.Introduction :
Dans sa structure, une chaine d’acquisition doit pouvoir assurer au moyen des
différents dispositifs des fonctions tels que l’extraction de l’information concernant chaque
une des grandeurs physiques à connaitre et sa traduction en signal électrique au moyen de
capteurs et conditionneurs, Traitement analogique du signal qui consiste en l’amplification et
filtrage ,Sélection parmi des signaux disponibles du seul signal requis à l’aide de multiplexeur
et la conversion du signal sous forme numérique au moyen de l’échantillonneur bloqueur et
convertisseur analogique numérique .Le schéma synoptique suivant montre les déférentes
parties constitutives de la chaine d’acquisition.
I.2.Les Capteurs :
I.2.1. Définition :
Le capteur est le premier élément d’une chaine de mesure, qui permet de convertir une
grandeur physique (m) dite « mesurande » en une grandeur électrique s(m), fonction connue
du mesurande, telle que chaque valeur s de cette grandeur électrique puisse être liée de façon
à la valeur m du mesurande.
La grandeur électrique s (m) est à l’origine de ce signal électrique que traite le système
de mesure.
2
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
Comme son nom l’indique, ce capteur fonctionne en générateur. Son principe repose
sur un effet physique qui assure la conversion en énergie électrique de l’énergie propre au
mesurande : énergie thermique, mécanique ou de rayonnement. Les plus importants parmi ces
effets sont récapitulés dans le tableau I.1.
Le principe des capteurs de ce type est de mesurer leurs impédances dont l’un des
paramètres déterminants est sensible au mesurande (géométrie et dimensions, propriétés
électriques des matériaux : résistivité ρ, perméabilité magnétique µ, constante diélectrique ε).
3
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
Les propriétés électriques des matériaux, selon la nature de ces derniers, peuvent être
sensibles à des grandeurs physiques variées : température, éclairement, pression,
humidité,...etc. Si une seule de ces grandeurs est susceptible d’évolution, toutes les autres
étant maintenues constantes il s’établit une correspondance univoque entre la valeur de cette
grandeur et celle de l’impédance du capteur. La courbe d’étalonnage traduit cette
correspondance et permet, à partir de la mesure de l’impédance de déduire la valeur de la
grandeur physique agissante (mesurande).
Le tableau I.2 donne un aperçu des divers mesurande susceptibles de modifier les propriétés
électriques des matériaux utilisés dans la réalisation des capteurs.
L’impédance d’un capteur passif et ses variations ne sont mesurables qu’en intégrant
le capteur dans un circuit électrique, par ailleurs alimenté et qui est son conditionneur. Les
conditionneurs les plus utilisés sont : le montage potentiométrique, le pont d’impédances, les
circuits oscillant et l’amplificateur opérationnel.
Pour des raisons de cout ou de facilité d’exploitation, on peut être amené à utiliser un
capteur, non pas sensible au mesurande mais à l’un de ses effets. Le corps d’épreuve est le
dispositif qui, soumis au mesurande étudié en assure une première traduction en une autre
grandeur physique non électrique, dit mesurande secondaire, qu’un capteur adéquat traduit
alors en grandeur électrique (figure I.3).L’ensemble formé par le corps d’épreuve et un
capteur actif ou passif constitue un Capteur composite.
4
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
Les corps d’épreuve sont très utilisés pour la mesure de grandeurs mécaniques
(traction, pression,...etc.): celles-ci imposent au corps d’épreuve des déformations ou des
déplacements auxquels un capteur approprié est sensible.
Supposons que l'on fasse n mesures m1….. mi…... mn d'un même mesurande m.
∑భ
సభ ୫
ഥൌ (I.1)
୬
> Variance :
∑ܖ ഥ)
ܑస(ܕିܑ ܕ
(I.2)
܄ൌ
ܖ
5
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
> Ecart-type :
∑ܖ ഥ)
ܖస(ܕିܑ ܕ
(I.3)
ો = √ = ܄ට
ܖ
> Fidélité :
Elle définit la qualité d’un capteur à délivrer une mesure répétitive sans erreurs.
L’erreur de fidélité correspond à l’écart type obtenu sur une série de mesures correspondant à
un mesurande constant.
> Justesse :
C’est l’aptitude d’un capteur à délivrer une réponse proche de la valeur vraie et ceci
indépendamment de la notion de fidélité. Elle est liée à la valeur moyenne obtenue sur un
grand nombre de mesures par rapport à la valeur réelle.
> Précision :
Elle définit l’écart en pourcentage que l’on peut obtenir entre la valeur réelle et la
valeur obtenue en sortie du capteur. Ainsi un capteur précis aura à la fois une bonne fidélité et
une bonne justesse.
Ces trois propriétés caractérisent le capteur et son étalonnage. On dit qu’un capteur est
fidèle si l’écart-type qu’il fournit est faible, qu’il est juste s’il est dépourvu d’erreur
systématique et qu’il est précis s’il est à la fois juste et fidèle.
I.2.4.2.Résolution :
Elle correspond à la plus petite variation du mesurande que le capteur est susceptible de
déceler.
I.2.4.3. Sensibilité :
ୢୗ
S=ቀ ቁ (I.4)
ୢ୫ ୫ ୀ୫
Il faut noter que la sensibilité d’un capteur peut être fonction du conditionneur auquel
il est associé.
I.2.4.4. Finesse :
C’est la qualité d’un capteur à ne pas venir modifier par sa présence la grandeur à
mesurer. Cela permet d’évaluer l’influence du capteur sur la mesure. On la définit non
seulement vis à vis du capteur mais aussi vis à vis de l’environnement d’utilisation du capteur.
I.2.4.5. Linéarité :
7
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
On peut adopter le modèle suivant pour la sortie du capteur auquel on vient connecter
une impédance (Zi) correspondant à l’impédance d’entrée du conditionneur (ZC).
On utilisera des dispositifs à forte impédance d’entrée de manière à obtenir une tension
en sortie du conditionneur aussi proche que la tension en sortie du capteur (Vm≈ ec).
a) b) c)
Dans ce cas, le capteur peut se modéliser par une source de courant avec une impédance en
parallèle.
8
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
a) b)
Dans ce cas, il est préférable d’utiliser un amplificateur de charge dont le principe est présenté
ci-dessous.
9
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
On utilise un simple pont diviseur alimenté par une source de tension continue Ve.
L’impédance interne de la source (Rs) et l’impédance de l’appareil de mesure (Rd) doivent
être prises en compte. Le capteur est modélisé par la résistance Rc.
10
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
V୫ = R ୡIୱ (I.7)
Après avoir calculé les potentiels aux points A et B, on obtient une tension de mesure
encore appelée tension de déséquilibre du pont :
ୖి ୖయିୖభୖర
V୫ = V − V = (ୖ eୱ (I.10)
భାୖ ౙ)(ୖ రାୖ య)
R େR ଷ = RଵR ସ (I.11)
ࢋ࢙ οࡾൗ
ࡾ
ࢂ = (I.12)
൫ା οࡾൗࡾ ൯
ୣ౩ οୖ
V୫ = (I.13)
ସ ୖ
1 (I.14)
L =
2π√LC
∆F ∆L ∆F ∆C (I.15)
=− ou =
F 2L F 2C
La période des oscillations est directement reliée à la valeur de la capacité par la relation :
2Rଵ (I.16)
T = 2. RC. ln ൬1 + ൰
Rଶ
I.4. Le multiplexage :
Le multiplexage analogique est une opération qui permet dans le cas d’acquisition de
plusieurs signaux analogique la sélection d’un canal bien déterminé afin d’aiguiller son signal
vers les dispositifs de traitement (filtre anti repliement, convertisseur analogique –numérique)
situés en aval . Dans notre système cette opération est assurée par un multiplexeur à huit
voies analogiques.
I.4.1.Description du multiplexeur analogique :
Un multiplexeur analogique est constitué:
D’un réseau d’interrupteurs (N) à base des transistors à effet de champ relient au
même point qui est la sortie, chaque interrupteur contrôle une voie.
D’un décodeur, sur N bits avec N=2 n, qui permet la sélection de la voie analogique
à échantillonner.
I.5.1.Définition :
13
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
Cette conversion est assurée par un convertisseur analogique numérique recevant à son
entrée une tension analogique Ve, délivre en sortie un mot de n bits correspondant, selon un
code binaire déterminé à valeur numérique N associée à cette tension analogique.
I.5.2.Echantillonnage :
e(t) e^(t)
I.5.2.1.Théoréme de Shannon :
Pour que le signal échantillonné soit sans perte d’information il faut prendre la
fréquence d’échantillonnage Fe supérieur ou égale à deux fois la fréquence maximale du
signal a échantillonner.
Fe ≥ 2Fmax (I.17)
I.5.2.2.Echantillonnage et maintient :
14
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
V
V Ve^
S’il y’a repliement de spectre, il n’est plus possible de retrouver le spectre du signal
d’origine .Dans ce cas, l’opération d’échantillonnage modifie les caractéristiques du signal
d’entrée. Donc pour éviter ce phénomène il faut toujours respecter le théorème de Shannon.
I.5.2.4.Filtre anti-repliement :
Dans la réalité le spectre d’un signal analogique est généralement de largeur infinie (à
cause du bruit, ou de signaux interférents non désirés), il y’a donc toujours un phénomène de
repliement spectral susceptible de ramener dans la bande utile, du bruit ou un signal
d’interférence. D’où la nécessité d’inclure un filtre passe bas anti-repliement ayant pour
fréquence de coupure :
(I.19)
ൌ ݁ܨȀʹ
15
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
e(t) e^(t)
Dans le cadre d’un filtre anti-repliement, en générale on fait appel à un filtre passe bas
du type Butterworth dont le gain est donné par la relation :
1 (I.20)
= )݂( ܪ
݂ଶ
ට ൬1 + ൰
݂
-Fe /2 0 Fe/2
I.5.3.La quantification :
ο
ݍൌ ൌ ܤܵܮ (I.21)
ଶಿ ିଵ
16
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
C’est la quantité élémentaire dont sont multiple toutes les tensions de sortie .Pour une
tension analogique d’entrée Vanalog, le CAN fait correspondre une tension Vnum telle que :
Signal échantillonné-bloqué
111
Signal quantifié
110
101
100
Amplitude
Vanalog
011
010 Vnum
001
000
Tech Temps
a)-La résolution :
Elle traduit le nombre de bits sur lesquels est donné le résultat de la conversion.
b)-La précision :
C’est l’écart entre la caractéristique de transfert de CAN idéal et celle d’un CAN réel.
Cet écart est exprimé en nombre de LSB (bit de poids faible).
On détermine les valeurs des différents bits l’un après l’autre en commençant par le
MSB (bit de poids fort).
Le signal d’entrée d’amplitude Vin est comparé à une tension de référence: Vo/2. S’il
est supérieur, on lui retranche cette valeur et on met le bit de comparaison à ‘1’, sinon on met
le bit de comparaison à ‘0’ et on le compare à la tension suivante.
Il compare :
Vref Vref
Vin = b୬ିଵ + b +⋯
2 4 ୬ିଶ
Ce convertisseur est plus lent que le convertisseur Flash. Ainsi pour 16 bits, il lui faut
en moyenne un temps de conversion (Tc) de 10µs.Il est très adapté à des signaux audio.
18
Chapitre I : les éléments de traitement analogiques de la chaine d’acquisition
D’un multiplexeur analogique a huit voies dont la sélection se fait via un bus à trois
bits.
D’un comparateur pour fixer la dynamique d’entrée du convertisseur.
D’un bloc de contrôle de timing qui contient trois entrées, l’une pour le signal
d’horloge (clk) et l’autre pour enclencher le début de la conversion, et la troisième
pour la fin de conversion.
D’un convertisseur analogique –numérique a sortie parallèles, dont la résolution est
sur huit bits, et le temps de conversion Tc = 100 µs d’où Fc=10khz.
La fréquence d’échantillonnage est Fe = Fc /8
I.6.Conclusion :
19
Chapitre II
Chapitre II : les circuits logiques programmables
II.1.Introduction :
Dans ce chapitre, nous allons évoquer les différents types des circuits intégrés
programmables et reprogrammables, allant d’une simple mémoire programmable au circuit
FPGA (Field Programmable Gate Array) de plus de 10 millions de portes logiques
reprogrammables, en passant par les circuits spécifiques à une application. Nous allons tout
d’abord présenter les différents types de circuits ASICs. Ensuite nous présentons les circuits
programmables PLD (Programmable Logic Device), en suivant l’ordre chronologiques,
jusqu’aux FPGAs, et on termine ce chapitre par la présentation des différentes caractéristiques
d’un circuit FPGA de famille VIRTEX-II.
II.2.Les ASICs :
Un ASIC (application Specific Integrated Circuit) est un circuit spécialisé .En générale
il regroupe un grand nombre de fonctionnalités uniques et sur mesure.
20
Chapitre II : les circuits logiques programmables
Les circuits intégrés appelés full-custom ont comme particularité de posséder une
architecture dédiée à chaque application et sont donc complètement définis par les
concepteurs. La fabrication nécessite la création de l'ensemble des masques pour la réalisation
(6 pour les transistors plus 2 par couche métal). Les temps de fabrication de ces masques et de
production des circuits sont de ce fait assez longs. Ces circuits sont ainsi appropriés pour de
grandes séries. L'avantage du circuit full-custom réside dans la possibilité d'avoir un circuit
ayant les fonctionnalités strictement nécessaires à la réalisation des objectifs de l'application,
et donc un nombre minimal de transistors (donc la surface de puce la plus petite et le coût le
plus faible). Parmi les circuits full-custom, on distingue :
Ces circuits sont directement conçus et fabriqués par les fondeurs. Ils sont spécifiques
car ils répondent à l'expression d'un besoin pour une application particulière. Le demandeur
utilise le fondeur comme un sous-traitant pour la conception et la réalisation et n'intervient
que pour exprimer le besoin. Ces circuits spécifiques utilisent au mieux la puce de silicium.
Chaque circuit conçu et fabriqué de cette manière doit être produit en très grande quantité
pour amortir les coûts de conception.
Les circuits à base de cellules (CBIC : Cell Based Integrated Circuit) permettent des
complexités d'intégration allant jusqu'à plusieurs dizaines de millions de portes. Dans cette
catégorie de circuits, on distingue les circuits à base de cellules précaractérisées et les
circuits à base de cellules compilées.
Les cellules précaractérisées sont des entités logiques plus ou moins complexes. Il
peut s'agir de cellules de base (portes, bascules, etc.) mais aussi de cellules mémoires (ROM,
RAM) ou encore de sous-systèmes numériques complexes (UART, cœur de microprocesseur,
21
Chapitre II : les circuits logiques programmables
PLA, ...). Toutes ces cellules ont été implantées et caractérisées au niveau physique (d'où la
notion de cellules précaractérisées) par le fondeur. La fonctionnalité globale de l'application à
réaliser s'obtient en choisissant les cellules appropriées dans une bibliothèque fournie par le
fondeur.
Les circuits à base de cellules compilées sont en fait basés sur l'utilisation de cellules
précaractérisées. A la différence des circuits précaractérisés, les cellules ne sont pas utilisables
directement mais au travers de modules paramétrables ou modules génériques. Chaque
module est créé par la juxtaposition de n cellules de même type. La différence entre circuits
précaractérisés et circuits compilés provient essentiellement de l'outil utilisé pour générer les
dessins des masques de fabrication. Ces outils sont appelés des compilateurs de silicium.
Parmi les circuits prédiffusés, on distingue les prédiffusés classiques ("Gate Array"), et
les ASICs structurés.
Les circuits prédiffusés classiques possèdent une architecture interne fixe qui consiste,
dans la plupart des cas, en des rangées de portes séparées par des canaux d'interconnexion.
L'implantation de l'application se fait en définissant les masques d'interconnexion pour la
phase finale de fabrication. Ces masques d'interconnexion permettent d'établir des liaisons
entre les portes et les plots d'entrées/sorties.
L’idée de base de l’ASIC structuré, c’est d’offrir une offre logicielle simplifiée au
client (faible coût par rapport aux précaractérisés) mais avec la bibliothèque d’IPs (blocs de
propriété intellectuelle tels que les microprocesseurs, contrôleurs Ethernet, …) des
22
Chapitre II : les circuits logiques programmables
Les PLDs (Programmable Logic Device) sont des circuits logiques programmables par
l’utilisateur, ils se décomposent en deux familles :
II.3.1. La PROM :
23
Chapitre II : les circuits logiques programmables
24
Chapitre II : les circuits logiques programmables
Les EPLDs (Erasable Programmable logic Device) sont des circuits programmables
électriquement et effaçables, soit par exposition aux UV pour les plus anciens, soit
électriquement. Ces circuits, développés en premier par la firme ALTERA, sont arrivés sur le
marché en 1985. Les EPLDs sont une évolution importante des PALs CMOS. Ils sont basés
sur le même principe pour la réalisation des fonctions logiques de base.
Les EPLDs font appel à la notion de macro-cellule qui permet, par programmation, de
réaliser de nombreuses fonctions logiques combinatoires ou séquentielles.
Le circuit FPGA (Field Programmable Logic Device) ou LCA (Logic Cell Array) est
un circuit prédiffusé programmable. Le concept du FPGA est basé sur l'utilisation d'une LUT
(Look Up Table) comme élément combinatoire de la cellule de base. En première
approximation, cette LUT peut être vue comme une mémoire (16 bits en général) qui permet
de créer n’importe quelle fonction logique combinatoire de 4 variables d’entrées. Chez Xilinx,
on appelle cela un générateur de fonction ou Function Generator. La figure suivante
représente la cellule type de base d'un FPGA.
25
Chapitre II : les circuits logiques programmables
Les cellules de base d'un FPGA sont disposées en lignes et en colonnes. Des lignes
d'interconnexions programmables traversent le circuit, horizontalement et verticalement, entre
les diverses cellules. Ces lignes d'interconnexions permettent de relier les cellules entre elles,
et avec les plots d'entrées/sorties. Les connexions programmables sur ces lignes sont réalisées
par des transistors MOS dont l'état est contrôlé par des cellules mémoires SRAM. Ainsi, toute
la configuration d'un FPGA est contenue dans des cellules SRAM.
26
Chapitre II : les circuits logiques programmables
Ce sont les éléments de base de circuit FPGA, leur configuration permis de réaliser
n’importe quelle fonction combinatoire et séquentielle. Ils sont généralement constitués d’une
ou plusieurs LUTs (Look Up Table) qui contienne après configuration la table de vérité de la
fonction logique à réaliser ou alors un ensemble de valeurs qui sont mémorisées.
Les Blocs d'entrées-sorties (IOBs) permettent de contrôler l’échange des données entre
les pins d'entrée-sortie et les blocs logiques internes. Chaque IOB supporte un échange de
données bidirectionnelles et la logique 3 états.
Le périmètre du FPGA, représente l’interface entre l’ FPGA et le milieu extérieur, il
permet de configurer les broches du circuit selon les options suivantes :
o Input / Output
o TBUF (tampon à trois états logiques : ON, OFF, haute impédance)
o Inverseur
o Bascule flip-flop.
II.3.5.1.3.Les éléments de mémorisation :
L’intégration des blocs mémoires dans l’architecture des FPGA est devenue
irréfutable, avec l’apparition des applications qui demandent de grandes capacités de stockage
(comme le traitement de signal). De cette façon les temps d’accès à la mémoire sont diminués
puisqu’il n’est pas nécessaire de communiquer avec des éléments extérieurs au circuit. Du fait
27
Chapitre II : les circuits logiques programmables
de l’intégration de ces blocs, dans des architectures déjà exécutantes, un point crucial apparait
qui est le routage entre les parties mémoires et les ressources logiques. La caractéristique la
plus importante de ce routage est sa flexibilité .Si le routage il n’est pas assez flexible alors le
circuit est difficilement routable, s’il est trop flexible il y a surconsommation de surface de
silicium.
II.3.5.1.4.Les éléments de routage :
Les ressources de routage représentent la plus grosse partie de silicium consommé sur
la puce réalisant le circuit. Ces ressources sont composées de sagement qui permettent de
relier les différents éléments entre eux via des matrices PSM (Programmable Switch
Manager) d’interconnections.
Les interconnexions à usage générale sont composées des segments verticaux et
horizontaux qui encadrent chaque CLB et qui peuvent être reliés entre eux par une matrice de
commutation. Chaque segment peut être connecté à des segments qui lui sont adjacents ou
perpendiculaire en utilisant des points de connexion. Les lignes directes fournissent des
chemins entre les CLB adjacents et entre les CLBs et les cellules d’entrée / sortie.
Les lignes longues sont des lignes verticales et horizontales qui n’utilisent pas les
matrices de communication .Elles parcourent toutes les zones d’interconnexion. Elles sont
utilisées pour véhiculer les signaux qui doivent parcourir un long trajet. Elles égalisent les
délais entre les signaux de façon à permettre un décalage minimum entre deux points distants
de la ligne .Ces lignes conviennent pour véhiculer les signaux d’horloge. L’ensemble des
signaux de connexion est appelé PIP (Programmable Interconnecte points).
28
Chapitre II : les circuits logiques programmables
Les circuits FPGA sont prévus pour recevoir une ou plusieurs horloges. Des entrées
peuvent être spécialement réservées à ce type de signaux, ainsi que des ressources de routage
spécialement adaptées au transport d’horloges dans tout le circuit sur de longues distances
(bufférisassions des lignes). Ainsi, pour être sûre d’avoir la même horloge dans tout le circuit
(Synchronisation des signaux) les signaux doivent recevoir des éléments d’asservissement des
horloges (PLL : Phase Locked Loop ou DLL : dalay Locked Loop ou DCM : Digital Clock
Manager) qui permettent souvent de créer à partir d’une horloge d’autres horloges à des
fréquences multiples de la fréquence de l’horloge incidente.
La première génération de LCA est le XC2000 en 1985, elle comprend des produits
d’une complexité allant de 600 à 1500 portes logiques utilisables, suivi par XC3000,XC4000,
XC5000,XC6000, SPARTAN ,VIRTEX : la septième génération des FPGAs (1999) .Cette
famille vise de très grandes capacités ( 4 millions de portes logique ) et les hautes vitesses
(supérieure à 100MHZ) . Pour notre application nous allons travailler sur un FPGA de la
famille VIRTEX-II.
Figure
29
Chapitre II : les circuits logiques programmables
Chaque CLB est constitué de quatre cellules logiques réparties en deux tranches
identiques de deux Slices chacune avec deux retenues indépendantes et une chaine de
décalage commun .Chaque slice contient essentiellement :
30
Chapitre II : les circuits logiques programmables
Le multiplieur 18bits x 18bits est un multiplieur à chiffre signé. Chaque entrée est sur
18bits et la sortie est sur 36bits .Ce multiplieur est généré par le core générateur de circuit
VIRTEX-II.
Dans ce chapitre nous avons donné un aperçu générale sur les différents familles des
circuits intégrés numérique ASICs et PLDs, ensuite nous avons fait la description générale
des circuits FPGAs qui suscitent le plus d’intérêts car, d’une part ils présentent une meilleure
flexibilité et fournissent le plus de fonctionnalités au concepteur et d’autre part les outils
nécessaires à leurs développement sont de plus en plus disponibles et performants. Comme
nous allons effectuer l’implémentation de l’architecture de notre circuit sur un FPGA de
famille VIRTEX-II de Xilinx, nous avons fait une description détaillée de ce dernier.
31
Chapitre III
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.1.Introduction :
Le signal numérique est acheminé vers l’ordinateur via une carte numérique à base
d’un FPGA de famille Virtex –II assurant deux fonctions, la première est la commande d’un
multiplexeur analogique dont la fonction est la sélection de la voie analogique a
échantillonner, la deuxième est la liaison série (RS232) avec l’ordinateur. Le signal reçu par
l’ordinateur est traité et visualisé par une application de de visualisation sous environnement
Labview.
Cette carte comporte huit supporte SIL08 pour l’insertion des cartes de
conditionnement de chaque capteurs et un circuit intégré ADC0809 pour le multiplexage et
conversion analogique numérique.
La première broche de chaque supporte est reliée à l’une des voies analogique de
circuit intégré ADC0809, les quatre suivantes servent d’alimentation pour les déférentes
cartes. La figure II.1 représente le schéma électrique de la carte.
32
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.2.1.1.Présentation de l’ADC0809 :
Le composant ADC0809 est un circuit d'acquisition de données, comprenant un
Convertisseur Analogique Numérique de 8 bits, un Multiplexeur de 8 voies et un circuit
logique de contrôle compatible multiprocesseurs. La figure III.2 montre les déférents blocs de
l’ADC0809.
33
Chapitre III : réalisation pratique de la plateforme d’acquisition
Valeurs limites :
Tension d'alimentation VCCmax = 6,5V.
Tension sur chaque broche, exceptées celles de contrôle: de - 0,3V à VCC + 0,3V.
Tension des entrées de contrôle (START; 0E; CLOCK; ALE; ADDA; ADDB; ADDC) : de -
3V à +15V.
Puissance dissipée: 875 mW.
Fréquence d’horloge: 10 Khz < FCLK <1280 Khz.
Caractéristiques:
1) Tension d'alimentation VCCmax = 5V.
2) Résolution: 8bits.
34
Chapitre III : réalisation pratique de la plateforme d’acquisition
Principe de fonctionnement :
0 V à 0 °C
2 V à 20 °C
5 V à 50 °C
Le capteur LM335 est alimenté avec une tension +5v et l’amplificateur avec des
tensions symétriques +15v, 0,-15v.La figure III.3 montre les schémas électrique de la carte de
conditionnement du capteur.
35
Chapitre III : réalisation pratique de la plateforme d’acquisition
Le MPX5100AP est capteur résistif qui fournit, entre ses broches 2 et 3, une tension
flottante proportionnelle à la pression ambiante. La figure III.4 montre la courbe
caractéristique du capteur.
A = 1 + (49400 / Rv1)
36
Chapitre III : réalisation pratique de la plateforme d’acquisition
Il s’agit d’un dispositif électronique qui mesure en temps réel le niveau sonore en
décibels .La plage de mesure varie de 20 dB à 100dB. Le capteur utilisé pour ce dispositif est
un microphone Electric. La figure III.6 montre le schéma électrique de circuit de
conditionnement du capteur sonore (microphone).
37
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.2.4.1.Principe de fonctionnement :
III.2.4.1.4.Amplification et filtrage :
|A| = Rv/R3
III.2.4.1.5.Détecteur d'amplitude :
38
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.2.4.1.6.Le suiveur :
5 V <=> 100 dB
500 mV <=> 80 dB
50 mV <=> 60 dB
5 mV <=> 40 dB
0,5 mV <=> 20 dB
III.2.5.Carte d’alimentation :
Cette carte délivre deux une tension (+5V) pour alimenter le convertisseur analogique
numérique, et une tension symétrique (-15v, 0, +15v) pour alimenter les capteurs et les
amplificateurs opérationnels.
39
Chapitre III : réalisation pratique de la plateforme d’acquisition
Cette partie est construite au tour d’une carte de développement FPGA de famille
VIRTEX –II xc2v1000 utilisée pour l’implémentation d’un module UART dont la fonction
est d’assurer la liaison série (rs232) avec l’ordinateur. La carte est dotée :
40
Chapitre III : réalisation pratique de la plateforme d’acquisition
La liaison série RS232 est une liaison sérié asynchrone qui assure la transmission de
données entre deux dispositifs. Son principal avantage réside dans le fait que le nombre de fils
nécessaire à la transmission est réduit. Elle peut être effectuée en utilisant uniquement trois
fils (TxD, RxD et la masse).l’octet à transmettre est envoyé bit par bit par l’émetteur sur la
ligne TxD, vers le récepteur RxD qui le reconstitue. L’émission d’une donnée de 8 bits est
effectuée à travers la transmission d’une trame de 11 bits, Le premier bit est le bit start en
suite Les huit bits de données après le bit de parité et le dernier est le bit stop.
La transmission peut se faire dans les deux sens, émission et réception simultanées. Le
niveau logique bas du bit Start indique au récepteur qu’une nouvelle séquence de données
arrive. ceci a pour effet que le récepteur va considérer les huit bits suivant comme étant des
bits de données et le bit suivant les huit bits de données comme bit de parité .le bit stop de
niveau logique haut est utilisé pour indiquer la fin de la trame. Le bit de parité peut être utilisé
comme étant un bit paire ou impaire pour indiquer qu’il n’y a pas d’erreur dans l’octet de
données.
Le protocole de communication sérié sur FPGA est assuré par une interface UART
(Universal Asynchronous Receiver Transmitter).l’interface UART implanté sur la carte
FPGA est constitué de deux modules : un module de réception et un module de transmission.
41
Chapitre III : réalisation pratique de la plateforme d’acquisition
Ce module de l’UART reçoit une donnée sérié disponible sur le port RxD et la
convertie en une donnée parallèle placée sur le port DBOUT. Le module de réception
comprend un contrôleur de donnée sérié, deux compteurs utilisés pour la synchronisation, un
registre à décalage et un contrôleur de bits d’erreur.
Le registre à décalage est utilisé pour la sauvegarde des données qui arrive à travers
RxD.
Le contrôleur de données sérié est utilisé pour la synchronisation de la phase
d’acquisition de données au moyen d’un compteur pour la temporisation entre deux
bits ressues et un compteur de bits pour garder la trace de nombre de bits ressues.
Le contrôler de bit d’erreur analyse la donnée ressue pour trois type d’erreur : l’erreur
de parité, erreur de format et l’erreur de débordement.
42
Chapitre III : réalisation pratique de la plateforme d’acquisition
Pour transmettre l’octet disponible sur DBIN, le module de transfert dispos d’un
contrôleur de transfert, deux compteurs de synchronisation et un registre a décalage.
Les deux modules composant l’UART sont décrits par deux machines d’états comme
le montre la figure III.3, une machine d’état de transmission et une machine d’état de
réception.
43
Chapitre III : réalisation pratique de la plateforme d’acquisition
a) b)
-----------------------------------------------------------------------
-- Auteur : Ait Benali Abdelghali
-- Ait Benali M'hand
--Projet de fin d'étude: conception d’une carte d’acquisition universel
-----------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity UART is
Port ( TXD :out std_logic := '1';
RXD :in std_logic;
CLK :in std_logic; --horloge principal
DBIN :in std_logic_vector (7 downto 0); --Data Bus in
DBOUT :out std_logic_vector (7 downto 0); --Data Bus out
WR :in std_logic; --Write Strobe
RST :in std_logic := '0'); --Reset
end UART;
44
Chapitre III : réalisation pratique de la plateforme d’acquisition
-----------------------------------------------------------------------
-- Déclaration des machines d'états
-----------------------------------------------------------------------
type rstate is (
strIdle, -- état idle
strEightDelay, --temporisation de 8cycles d'horloge
strGetData, --sauvegarde des 8 bits de données
strCheckStop --retour à l'état de repos
);
type tstate is (
sttIdle, --état idle
sttTransfer --chargement de la donnée dans
--le registre a décalage
sttShift --décalage a droit de registre
);
-----------------------------------------------------------------------
-- Déclaration des signaux
--Registre de réception
signal rdReg : std_logic_vector(7 downto 0) := "00000000";
--Register de transmission
--Horloge de réception
signal rClk : std_logic := '0';
--Horloge de transmission
45
Chapitre III : réalisation pratique de la plateforme d’acquisition
-----------------------------------------------------------------------
-- Fonction du module
-----------------------------------------------------------------------
begin
DBOUT <= rdReg;
tfReg <= DBIN;
begin
if (Clk = '1' and Clk'event) then
if (clkDiv = baudDivide) then
clkDiv <= "00000000";
else
clkDiv <= clkDiv +1;
end if;
end if;
end process;
--Definition de rclk
begin
if CLK = '1' and CLK'Event then
46
Chapitre III : réalisation pratique de la plateforme d’acquisition
process (rClk)
begin
if (rClk = '1' and rClk'event) then
rClkDiv <= rClkDiv +1;
end if;
end process;
--Definition de tclk
process (rClk,CE)
begin
47
Chapitre III : réalisation pratique de la plateforme d’acquisition
CE <= '0';
if RXD = '0' then
ctRst <= '1';
strNext <= strEightDelay;
else
ctRst <= '0';
strNext <= strIdle;
end if;
48
Chapitre III : réalisation pratique de la plateforme d’acquisition
end case;
end process;
49
Chapitre III : réalisation pratique de la plateforme d’acquisition
case sttCur is
end case;
end process;
End Behavioral;
50
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.2.5.Schéma de l’UART :
51
Chapitre III : réalisation pratique de la plateforme d’acquisition
La transmission série utilise un émetteur pour envoyer les données les unes après les
autres, bits par bit, sur une ligne de communication unique, à destination d’un récepteur.
Etant donné la simplicité de la liaison série, la bibliothèque pour le port série se résume à cinq
instruments virtuels (VI) : Serial Port Init, Serial Port Write, Serial port Read, Bytes at Serial
Port et Serial Port Close. Un programme de gestion de port série, réalisé en langage G dans
l’environnement LabView consiste à mettre en séquence les déférents VI de base.
52
Chapitre III : réalisation pratique de la plateforme d’acquisition
III.6.Conclusion :
53
Conclusion général :
On espère que cette thèse servira de base d’étude pour des systèmes plus performants
d’une part et servir de moyen didactique pour les promotions à venir.
53
Bibiographie
Références bibliographiques :
Livres
Site internet :
http://www.XILINX.com
http://www.digilent.com
http://www.xavier cotton.com
55
Annexe
ANNEXE 1 : Le langage VHDL
Introduction :
La syntaxe de langage VHDL est tirée du langage Ada, dont les mots clés ont été
adaptés à la conception matérielle. L’une des particularités du VHDL provient de fait qu’il est
possible d’exprimer facilement le parallélisme présent d’une structure d’un circuit.
56
3.2. Déclaration de l’entité et des entrées/sorties :
Elle permet de définir le Nom de la description VHDL ainsi que les entrées et sorties
utilisées, l’instruction qui les défini est Port.
Il est composé de caractères, le premier caractère doit être une lettre, sa longueur est
quelconque, mais elle ne doit pas dépasser une ligne de code.
3.2.3. Le type :
57
L’architecture établit à travers les instructions les relations entre les entrées et les
sorties. On peut avoir un fonctionnement purement combinatoire, séquentiel voire les deux
séquentiel et combinatoire.
Dans ce type de description, il faut d’une part, spécifier les composants utilisés dans le
circuit, et d’autre part, la manière dont ces composants sont connectés.
Partie déclarative
-la déclaration des signaux internes : ces signaux permettent de réaliser la connexion entre les
différents composants. La déclaration ce fait par le mot clé SIGNAL, suivi du nom et le type
du signal utilisé.
-la déclaration des composants utilisés : elle permet de lister les composant utiles pour la
construction de l’entité et elle ce fait comme suite :
Component nom_du_composant
Port (…) ;
End component ;
Partie descriptive
58
Le VHDL permet deux types de représentations comportementales :
a) Type DATAFLOW
b) Type Algorithmique
la structure alternative
IF condition THEN
déclarations séquentielles ;
déclarations séquentielles ;
END IF;
la structure d’aiguillage
59
ANNEXE 2 : Le navigateur de projet ISE 8.1.i :
Lors de la phase de synthèse de description VHDL chaque bloc sera matérialisés par
des portes et /ou des bascules, suivi de la phase d’implémentation des portes et bascules dans
le circuit logique.
Schéma.
Diagramme d’états.
ISE intègre donc différant outils permettant de passer à travers tout le flot de
conception d’un système numérique :
1- le lancement ISE 8.1.i ce fait on cliquant deux fois sur l’icône sur le bureau ou
en choisissons Start programme Xilinx ISE 8.1.i project navigator.
60
4- On donne un nom au projet dans la fenêtre apparue, puis on choisit HDL comme
Top_Level_source Type
7- On appuie sur Next deux autre fois pour les deux autres fenêtres et sur finish.
61
Figure 3 : choix de source de données.
5-On déclare les ports d’entrée / sortie du design comme définit ci –dessous.
7- on clique sur Next en suite sur finish .une ébauche de fichier apparait avec la description de
l’entité et de l’architecture.
62
2.3. Compilation :
Une fois que le fichier VHDL édité, il est impératif de vérifier la syntaxe du design
afin de corriger des erreurs éventuelles :
b- on sélectionne le fichier VHDL pour afficher les processus liés dans la fenêtre sources.
d- on Double –cliquez sur le process check syntax.si une erreur est détecter une croix rouge
apparait à côté de l’onglet check syntax et un message en bas de l’écran indique la source de
l’erreur si non, c’est un crochet vert qui apparait.
La simulation du design permet de savoir s’il fonctionne de la façon prévue par les
spécifications. La simulation à faire dans cette étape est la simulation comportementale .pour
simuler le design il faut créer un banc d’essai contenant les stimuli d’entrée.
5- La page suivante montre quel fichier source est associe au banc d’essai ; il s’agit de notre
fichier à simuler.
63
Figure 6 : initialisation temporelle.
8- on Modifie ensuite la durée de la simulation .puis on clique sur finish pour terminer
l’initialisation temporelle.
9- Avec le bouton droit, on clique sur le début de la courbe (à coter de la zone grise)
correspondant au signal ; et on sélectionne Set Value.
64
15- on s’assure que le banc d’essai est bien sélectionné dans la fenêtre sources.
1-dans la fenêtre process, on déroule le menu User Contraints, on double clique ensuite
sur Assign Package Pins.
2-une fenêtre d’attribution de pins va suivre, dans la section Loc. saisir le numéro des
broches du FPGA qu’on souhaite connecter aux E/S du désigne
1- on sélectionne le fichier VHDL dans la fenêtre sources et on clique sur Impliment Design.
C’est dans cette phase que le design est routé
3-dans la fenêtre processes on clique sur Generat Programing File, un symbole vert indique
que les étapes de la synthèse sont bien déroulées.
65
3-on sélectionne le fichier de programmation (nom_du_fichier.bit)
66
ANNEXE 3 : Acquisition de données avec LabView
Les programmes LabView comportent des instruments virtuels dans l’abréviation (VI)
signifie (Virtual instruments).leurs apparences et leur fonctionnement sont semblables à ceux
d’instruments réels.
2. L’environnement de LabView :
67
Pour créer un nouveau VI on clique sur l’icône nouveau VI, deux fenêtre vierge
apparaissent à l’écran : une face avent ou panel (de fond gris) et un diagramme ou
Diagramme (de fond blanc).
Lorsque on construit la face avant, on intègre des commandes et des indicateurs, qui
sont respectivement les terminaux interactifs d’entrées et de sortie du VI .Les commandes
simulent les dispositifs d’entrées de l’instrument et fournissent des données au diagramme du
VI .Les indicateurs simulent les dispositifs de sortie de l’instrument et affiche les données
acquises ou générées par le diagramme.
68
2.2. Le diagramme :
Elle est disponible sur la face avant et sur le diagramme .elle contient les outils
nécessaires pour faire fonctionner et modifier la face avant et les objets du diagramme.
69
2.4. Palette de commandes :
Elle est disponible uniquement sur la face avant, elle contient les commandes et les
indicateurs de la face avant nécessaire pour créer l’interface utilisateur.
Elle est disponible uniquement sur le diagramme .Elle contient les objets nécessaires
pour la programmation graphique comme les opérations d’arithmétique, d’E/S d’instrument,
d’E/S de fichier et d’acquisition de données.
70
Figure 8 : structure de données.
Comme tous les langages de programmation, la présence de notion de tableau est obligatoire,
puisqu’elle définit un outille de base pour le stockage et le traitement des informations. La
bibliothèque tableau dans LabView est riche en fonctions prédéfinit, tel que, l’initialisation,
l’indexation, l’inversement d’un tableau, et plusieurs autres fonctions .La notion de tableau
peut être élargie pour contenir les matrices.
4. Traitement numérique :
Les fonctions prédéfinies : LabView possède les instructions de base d’un langage de
programmation permettant de traiter les différents types de données .Ainsi, on a des fonctions
liées aux variables numériques (entiers, réels, et complexes), aux variables booléennes, aux
chaines de caractères, et aux tableaux. On trouve aussi les opérateurs de tests et de
comparaisons liées à ces différents types de données. A partir des structures de contrôle, des
fonctions et des opérateurs, de base, il est alors possible de traduire un algorithme quelconque
et d’enrichir la bibliothèque des fonctions en utilisant le mécanisme d’encapsulation. Un
diagramme complet est alors réduit à un nœud qui peut être ensuite réutilisé.
71
Boites à outils mathématique : LabView contient aussi des boites de calcul
mathématiques qui servent à introduire des commandes complexes telles que (sin, cos, etc…).
5. structure de programme :
LabView dispose d’un programme qui est enrichi de quatre types de structures : la
séquence, deux structures d’itération (la boucle « pour » avec un nombre d’itérations fixe et la
boucle « Tant Que »avec un nombre d’itérations soumis à une condition) et la structure de
choix.
La transmission série utilise un émetteur pour envoyer les données les unes après les
autres, bits par bit, sur une ligne de communication unique, à destination d’un récepteur.
Etant donné la simplicité de la liaison série, la bibliothèque pour le port série se résume à cinq
instruments virtuels (VI) : Serial Port Init, Serial Port Write, Serial port Read, Bytes at Serial
Port et Serial Port Close. Un programme de gestion de port série, réalisé en langage G dans
l’environnement LabView consiste à mettre en séquence les déférents VI de base.
72
ANNEXE3 : Datasheet
73
CAPTEUR DE PRESSION MPX5100DP
74
AMPLIFICATEUR D’INSTRUMENTATION AD620
75
MULTIPLEXEUR CAN ADC0809
76