27
FALLET Laurent PERRIN Guillaume GRISONI Florian Institut National des Sciences Appliquées de Rouen -1- UV P10-2 Convertisseurs Analogique/Numérique et Numérique/Analogique Juin 2002

Convertisseurs Analogique/Numérique et …laurent.fallet.free.fr/docs/annee2/FALLET-GRISONI-PERRIN_CAN.pdf · - les Convertisseurs Numérique Analogique (CNA, DAC en anglais, pour

Embed Size (px)

Citation preview

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -1-

UV P10-2

Convertisseurs Analogique/Numérique et Numérique/Analogique

Juin 2002

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -2-

Sommaire

UV P10-2 ................................................................................................... 1

Convertisseurs Analogique/Numérique et Numérique/Analogique ... 1

Sommaire ................................................................................................. 2

Introduction.............................................................................................. 3

I Présentation CAN et CNA ..................................................................... 5

a) Architecture ........................................................................................... 5 b) L’interface du port imprimante .................................................................. 13 c) Le programme en Pascal.......................................................................... 14

II Réseau R/2R........................................................................................ 15

a) Etude théorique................................................................................... 15 b) Etude expérimentale ........................................................................... 17

III Echantillonneur Bloqueur................................................................. 18

a) Etude théorique................................................................................... 18 b) Etude expérimentale ........................................................................... 19

IV VCO..................................................................................................... 21

a) Présentation ............................................................................................. 21 b) Etude expérimentale................................................................................. 22

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

Annexes.................................................................................................. 26

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -3-

Introduction On peut dire que le monde entier est « analogique ». La conversion A-N permet le

traitement par des machines de données digitales. Les techniques actuelles font de plus en plus appel au traitement numérique, très performant. Le domaine des télécommunications est sans doute celui dans lequel l’application des techniques numériques est la plus développée (numérisation de la voix pour la téléphonie, généralisation du FAX et du courrier électronique, enregistrement numérique des disques…). Sans oublier le domaine musical qui utilise grandement les convertisseurs dans la transmission des signaux audio.

L'électronique est en effet divisée en deux domaines distincts : - le domaine analogique, où les variables peuvent prendre une infinité de valeurs

différentes ; les signaux varient continûment. Tous les signaux issus des capteurs sont analogiques, et traduisent des phénomènes physiques qui varient continûment.

- le domaine numérique, où les variables prennent uniquement deux états, un état haut et un état bas.

Beaucoup de signaux était avant traités de façon analogiques et le sont aujourd'hui par

programmation de microprocesseurs. Mais, à la base, les signaux ont toujours une nature analogique ! Il faut donc les

amplifier et éventuellement les extraire de signaux parasites. Le domaine analogique va donc toujours exister au moins en amont de toute chaîne de traitement. Parfois, on a aussi besoin d'un signal analogique en sortie de cette chaîne de traitement : il faudra alors reconvertir les données numériques en signal analogique.

Il existe deux catégories de convertisseurs : - les Convertisseurs Analogique Numérique (CAN, ADC en anglais, pour analog to

digital converter), qui vont transformer les tensions analogiques en signaux logiques aptes à être traités par microprocesseur (numérisation des signaux).

- les Convertisseurs Numérique Analogique (CNA, DAC en anglais, pour digital to

analog converter) qui vont convertir les signaux logiques en tension analogique.

Applications des CAN

Les applications dans lesquelles des données analogiques doivent être numérisées et

transférées dans une mémoire d’ordinateur sont nombreuses. Le processus de saisie par l’ordinateur des données analogiques numérisées s’appelle l’acquisition de données. Selon l’application, l’ordinateur peut manipuler les données de différentes façons. Quand on utilise un ordinateur pour mémoriser une donnée analogique (c’est le cas d’un oscilloscope numérique), ce dernier stocke les données puis les transfère à un CNA à un moment ultérieur pour qu’il reproduise les données analogiques. On trouve donc des CAN dans les multimètres numérique, les systèmes d'acquisition, l’élaboration de la matrice d’un disque compact...

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -4-

Applications des CNA

Des CNA sont utilisés à chaque fois qu'il faut transformer la sortie numérique d'un

circuit en une tension ou un courant analogique pour entraîner un dispositif analogique. Voici certaines des applications les plus courantes :

Régulation : la sortie numérique d'un ordinateur est convertie en un signal de

régulation analogique afin de régler la vitesse d'un moteur, la température d'un four ou de commander une variable physique quelconque. La commande des machines est également un secteur où les techniques numériques connaissent un vif succès (commande de moteurs, régulation de chauffage…).

Essai automatique : il est possible de programmer les ordinateurs pour qu'ils

produisent les signaux analogiques nécessaires à l'essai des circuits analogiques. La réponse analogique du circuit testé est normalement convertie en en une valeur numérique par un CAN et réintroduire dans l'ordinateur pour être mémorisée, affichée et parfois analysée.

Réglage numérique de l'amplitude : il est possible d'utiliser un CNA multiplicateur

pour régler numériquement l'amplitude d'un signal analogique. (Un CNA multiplicateur dérive une sortie égale au produit d'une tension de référence par une entrée binaire). Si la tension de référence est un signal qui varie dans le temps, la sortie du CNA suit ce signal mais son amplitude est conditionnée par le code d'entrée binaire. Une application typique de ceci est le "réglage de volume" numérique, dans laquelle la sortie d'un circuit numérique ou d'un ordinateur sert à régler l'amplitude d'un signal audio.

On retrouve donc des CNA dans les lecteurs CD, les systèmes d'acquisition (par ex. cartes vidéos pour PC), et les modems.

Exemple de chaîne de traitement.

Un exemple très répandu de conversion et traitement de données est la chaîne de

transformation du son, de l'enregistrement de la musique à sa restitution par les enceintes acoustiques.

Le son est capté par des micros, dont la très faible tension de sortie est amplifiée. Le signal peut être numérisé directement à ce niveau, et sera alors traité de façon entièrement numérique (mixage...). Il peut aussi être stocké de façon analogique sur bande magnétique, mixé, et ensuite numérisé. L'avantage du traitement numérique réside dans le fait que les données sont inaltérables, contrairement aux données analogiques stockées sur bande magnétique : celle-ci se dégrade lors des passages répétés sur les têtes de lecture.

Le stockage est maintenant presque toujours numérique. Le lecteur de CD contient

des convertisseurs numériques analogiques qui vont retransformer les informations numériques en signal analogique qui sera amplifié avant d'être envoyé aux enceintes.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -5-

I Présentation CAN et CNA Il existe principalement deux types de convertisseurs numérique / analogique : les

convertisseurs à résistances pondérées, et les convertisseurs à réseau R/2R.

a) Architecture Pour chaque convertisseur, on retrouve toujours la même structure; seul les blocs de

base change d'un convertisseur à l'autre et en fait sa spécificité. Il est donc intéressant d'étudier l'architecture mettant en évidence les points communs

à tous les convertisseurs.

Architecture des CNA. Sur la figure, on voit 5 blocs : - un buffer numérique d'entrée : celui-ci est chargé de garder en mémoire la donnée

numérique pendant le temps de conversion ; il sert aussi d'interface entre les parties numérique et analogique du convertisseur.

- une référence de tension : son importance est capitale pour la précision de

l'ensemble ; c'est elle qui donne le signal de référence servant à la détermination des tensions de sortie.

- l'arbre de commutation (switching tree en anglais) : il est commandé par le buffer

d'entrée et va déterminer les résistances qui seront alimentées par la référence de tension. - le réseau de résistances : c'est un ensemble de résistances, qui, alimentées par la

référence de tension via l'arbre de commutation vont générer des courants très précis fonction du code binaire d'entrée.

- le convertisseur courant/tension est un ampli servant à transformer les courants

générés par le réseau de résistances en tension de sortie. Il est optionnel, certains CNA ne l'incluent pas, d'autres l'incluent, mais laissent le choix de l'utiliser ou non.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -6-

On retrouve donc toujours ces éléments de base, la distinction entre les convertisseurs

se fait généralement dans le réseau de résistances.

Convertisseurs analogiques numériques Un convertisseur analogique numérique est chargé de transformer une variation

continue de tension en une série de valeurs mathématiques (sans énergie) codées.

Codage des valeurs: Les codages sont: le binaire naturel, pour les nombres non signés. le complément à deux pour les nombres signés. le code binaire signé.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -7-

Quantification: C'est l'opération qui consiste à associer une valeur analogique à la plus petite variation

mesurable entre deux valeurs codées distinctes en sortie. Cette valeur est appelée quantum. Code non signé:

neVq

2max∆

=

q: quantum (V), aussi appelé résolution.

maxeV∆ : C’est l'écart entre la valeur mini et la valeur maxi de Ve à numériser (V). n: nombre de bits en sortie du convertisseur. Principe des différents convertisseurs: Convertisseurs parallèles: Ils sont aussi appelés convertisseurs "Flash". Une chaîne de 12 +n résistances

détermine un échelonnement de valeurs distantes de q et comprises entre maxV et minV (sauf pour la première, qui est distante de q/2).

Chaque valeur est appliquée à l'une des entrées des n2 comparateurs. Le potentiel

eV est appliqué sur la deuxième entrée de chaque comparateur et tous les comparateurs correspondant à des niveaux inférieurs ou égaux à eV basculent simultanément.

Le codage est ensuite effectué instantanément par un décodeur.

Inconvénient: il faut 256 comparateurs pour 8 bits. Avantage: très grande vitesse de conversion.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -8-

Convertisseurs série: Ce convertisseur vient élaborer une suite de valeurs successives grâce aux

commutateurs WnW SS ,...,1 et aux résistances R. Il compare ensuite les différentes valeurs obtenues à eV , au moment où une des valeurs appliquées est supérieure à eV , le comparateur PC bascule et impose un niveau bas à l'entrée "horloge" du compteur, ce qui le bloque. La sortie S indique la dernière valeur numérique 1N bloquée lors de la mise en arrêt du compteur ( 1N est donné sur N bits).

Convertisseurs à pesées successives :

Le convertisseur, par l'unité des prépositions, impose une valeur égale à 2

2 qn à une

entrée du comparateur, si la réponse de celui-ci est positive, on vient rajouter 2

2 1qn−

à la

valeur précédente. Nous réalisons encore le test, si la réponse est négative, nous venons

soustraire 2

2 2 qn−

à la valeur précédente. Cette opération est réitérée jusqu'à ce que les N

bits de sortie soient tous affectés par un état logique.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -9-

Convertisseurs double rampe: La tension E analogique à convertir est appliquée à l'entrée du générateur de rampe.

Ce circuit intègre (première rampe) cette tension durant un temps prédéterminé. Un compteur mesure ce temps, soit 1N impulsions.

Ensuite la logique de commande commute l'entrée du générateur de rampe sur une

tension de référence refE de polarité opposée à la tension E. La tension de sortie décroît linéairement (deuxième rampe) jusqu'à s'annuler. Un

compteur mesure la durée de cette décroissance, soit 2N impulsions. La valeur de la tension E à convertir est donnée par la relation:

2

1

NN

EE ref= soit EE

NN ref12 =

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -10-

Convertisseurs triple rampe: Le principe de fonctionnement est identique au convertisseur double rampe, sauf que

lors du démarrage de la phase de croissance de CMV , le comptage s'effectue en deux temps. Dans un premier temps, nous avons un comptage large avec 2WS fermé et une tension de référence 1λV , lorsque GCM VV = , 2WS s'ouvre et 3WS se ferme. Nous avons un comptage plus long et plus précis des faibles valeurs avec 2rV .

21100)( nnbinaireS +=

n1, n2: nombres binaires.

Caractéristiques: Temps de conversion cT : C'est le temps minimum nécessaire au convertisseur pour stabiliser une donnée

numérique en sortie après qu'une tension analogique stable ait été appliquée à l'entrée du CAN.

Erreur de linéarité: Elle se caractérise par l'écart maximal entre la courbe réelle et la droite idéale. Elle est

exprimée en % de maxeV∆ . Erreur de quantification: Elle est inévitable dans la conversion analogique/numérique (et inverse), même si les

convertisseurs sont considérés comme parfaits. Elle est souvent exprimée par la valeur

efficace du signal qE qui représente cette erreur. 32qeffEq =

Si on numérise une rampe de tension, l'erreur entre la tension d'entrée et la tension de sortie " reconstituée " (reconvertie en analogique par passage dans un CNA) aura la forme suivante :

Vitesse maximale de variation de )(tVe admise par le convertisseur au cours d'une

phase de conversion. Pendant cette phase, le signal ne doit pas varier de plus de q.

cnee

TV

dtVd

2( max

max

∆=

Tc: temps de conversion. n: nombre de bits du convertisseur.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -11-

Convertisseurs numériques analogiques Un CNA traduit une entrée numérique N codée sur n bits en une grandeur de sortie

analogique telle que: DNqVS += .

q: quantum ou LSB (V). N: grandeur numérique.

D: décalage en tension, offset (V). Caractéristiques des CNA: Temps de conversion (Tc) C'est le temps minimum nécessaire à la stabilisation de Vs après une transition. Résolution Elle est donnée par la valeur du quantum q(V). La sortie Vs va augmenter de q lorsque

N augmentera de "1". Si D=0, alors Vs=q.N Excursion L'excursion E est la différence entre Vs donné pour Nmin et Vs donné pour Nmax si N est

codé sur n bits: Nmax=2n-1 E=q(2n-1) Précision (accuracy) εM est l'écart maximal entre la sortie théorique et la sortie réelle.

%Pr enExcursionErreurMax

Eécision M ==

ε

Erreur de décalage (offset error) La courbe moyenne réelle est décalée d'une grandeur (Ved) constante par rapport à la

courbe de réponse théorique. (Cette erreur est essentiellement due aux tensions de décalage et courants de fuite de partie analogique du CNA).

Erreur de gain La réponse théorique Vs et la réponse réelle n'ont pas la même pente. Vréelle=K.q.N K=1+∆G ∆G est l'erreur de gain. Erreur de linéarité C'est la variation autour de la sortie théorique de la sortie réelle. Cette erreur est

donnée en LSB ou en %.

100)(

)(% max ×=

VEVqεε

εq max: c'est l'erreur maximale entre la valeur théorique et la valeur réelle de N. Equation d'un CNA réel Vs=q(1+∆G)[a0(1+∆P0)+2a1(1+∆P1)+...+2n-1an-1(1+∆Pn-1)]

ai: état du bit i. ∆Pi: erreur de linéarité rapporté au bit i.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -12-

Structure des CNA directs: Convertisseur à résistances pondérées Pour un convertisseur 4 bits, nous avons: Vs = - RI

)81

41

21(

21. 0123 aaaaVV refS +++−=

Les réseaux R-2R que nous avons étudié et détaillé plus loin. On a:

),(2 00112233 iaiaiaiaRVS ++−=

RV

V ref

43 = , RV

i ref

82 = , R

Vi ref

163 = , R

Vi ref

324 = .

)248(16 01235 aaaaV

V ref +++−=

I débité par Vref est constant. Convertisseur à échelle et miroirs de courant Il s'agit ici d'une "échelle inversée". La résistance R'=4/3R

)248(16 01235 aaaaV

V ref +++−=

Convertisseur à miroirs de courants Dans les résistances, suivant la position des interrupteurs, sur Vref ou sur Vcc, nous

avons des miroirs de courants qui absorbent: I/2, I, 2I, 4I.

)248(16 01235 aaaaV

V ref +++−=

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -13-

b) L’interface du port imprimante Le but de notre manipulation avec les CAN et CNA est de vérifier et comprendre leur

fonctionnement. Pour cela, nous avons besoin d’une interface qui nous permette de contrôler le nombre de bits émis. Ainsi, si nous entrons une valeur, la tension broches commute, passant de 0 à 5V environ, c'est-à-dire que la ligne passe à 1. On contrôle de cette manière chaque bit, en pouvant le lire ou l’écrire.

Le port parallèle des PC se présente sous la forme d’une prise DB25 femelle, qui

comporte 25 broches. 8 de ces broches sont reliées à la masse, les 17 autres ayant des fonctions se

rapportant principalement aux fonctionnalités d’une imprimante. Par exemple, une broche indique si l’imprimante est occupée, une autre si il y a une erreur… toutes les informations nécessaires à une impression.

Certaines ne fonctionnent qu’en entrée dans le PC, d’autres (telles que les broches de

données) sont à double sens. Cette possibilité de communiquer en double sens est réservée aux ports de type EPP (Enhanced Parallel Port). On peut donc se servir de ces broches pour envoyer ou recevoir des impulsions. Ce port est alimenté par du 5 volts continu, lorsque la ligne est active.

La vitesse de transmission maximale est de l’ordre de 150 Ko/s pour les ports les plus

anciens, et de 2Mo/s pour les ports de type EPP. On relie donc ce port à notre montage par un boîtier qui regroupe le bus de données,

ainsi que quelques autres broches (ACK, BUSY, PE, la masse…). Il existe trois registres de contrôle des signaux, qui sont :

• Les lignes de données (378h) ; • L’état de l’imprimante (379h) ; • Les commandes de l’imprimante (37Ah) ;

Seules les lignes de données nous intéresseront. Il est possible d’écrire un octet dans

le registre de données, ce qui met les lignes D0 jusqu’à D7 au niveau binaire demandé.

7 6 5 4 3 2 1 0 X . . . . . . . D7. X . . . . . . D6. . X . . . . . D5. . . X . . . . D4. . . . X . . . D3. . . . . X . . D2. . . . . . X . D1. . . . . . . X D0

Le boîtier sert donc de lien entre les lignes de données et nos montages, notamment

pour le réseau R / 2R.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -14-

c) Le programme en Pascal Un programme, rédigé en Pascal, permet de diriger le port imprimante. Il est composé

d’un programme principal qui donne le choix de faire plusieurs actions :

• Ecrire une sortie ; • Lire les entrées ; • Envoyer une rampe.

Des fonctionnalités seront ajoutées au fur et à mesure de l’avancement du projet. Au début du programme, on déclare des constantes globales : Const reg_out=$378;

reg_in=$379; Ainsi que je l’ai expliqué précédemment, le port du registre de sortie est 378h et celui d’entrée est 379h. Donc pour envoyer des données en sortie on utilisera reg_out et pour récupérer les valeurs des lignes du bus de données, on se servira de reg_in. On se sert d’un tableau de bits pour stocker l’octet envoyé ou reçu :

type tab=array[0..7] of byte; Deux méthodes, lecture et ecriture, permettent de lire ou d’écrire un « byte » sur le port imprimante, grâce à la commande :

port[reg_out]:=valeur; ou port[reg_in]:=valeur; Deux procédures conv_bin et conv_oct se chargent des conversions d’un octet en binaire ou de l’inverse. Une procédure test_sorties récupère la valeur entrée par l’utilisateur, l’envoie sur le port imprimante, puis affiche le tableau de la valeur entrée en binaire. Une autre procédure test_entrees appelle la procédure de lecture, et affiche la valeur récupérée en la convertissant en binaire. Pour tester un envoi de valeurs qui s’incrémentent, une procédure rampe a été créée. On écrit sur le port les valeurs de 0 jusqu'à 255. On sort de cette fonction en appuyant sur une touche.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -15-

II Réseau R/2R a) Etude théorique

Nous avons étudié un réseau de résistances composé de seulement deux valeurs, R

et 2R.

Schéma de principe d'un CNA à réseau R/2R (4 bits). Il est constitué de la manière suivante : - un amplificateur opérationnel. - une référence de tension qui va définir la pleine échelle du convertisseur. - un réseau de résistances R/2R. - une série de registres numériques contenant le code binaire d'entrée. - des commutateurs analogiques (interrupteurs commandés électriquement par les

signaux logiques) reliant les résistances soit à la masse, soit à l'entrée - de l'ampli. L'amplificateur fonctionne ici en convertisseur courant/tension : en fonction du

positionnement des commutateurs, le courant total IT sera plus ou moins élevé, et sera transformé en tension par l'ampli et la résistance de contre-réaction.

Voici certaines propriétés du réseau : L'entrée + de l'ampli est à la masse ; si on considère que cet ampli est parfait, l'entrée -

est au même potentiel, soit 0. La position du commutateur n'influe donc pas sur le fonctionnement du réseau : les courants I0 à I3 sont dirigés soit vers le convertisseur courant/tension, soit dérivés à la masse, mais le potentiel à la borne commune des commutateurs reste le même, à savoir 0.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -16-

Nous avons donc étudié le réseau suivant :

Les courants I3 et ID sont égaux. On a donc :

22C

DI

II ==

Le circuit devient :

On en déduit :

22B

CI

II ==22A

BI

II ==21

0 == AII

On a donc :

On en déduit la valeur des courants :

RR

I ref

40 = RE

I ref

81 = RE

I ref

162 = RE

I ref

323 =

La tension de sortie Vs du convertisseur vaut :

)842

(4

3210

aaaa

EV refS +++

−=

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -17-

b) Etude expérimentale Pour des valeurs de résistance Ω= KR 10 Si on envoie une rampe de tension codée sur 8 bits prenant les valeurs de 0 à 255, on

obtient la tension de sortie du réseau R-2R en fonction du temps :

On remarque qu’au bit 0 la tension est nulle et au bit 255 la tension vaut 5V. Nous

couvrons donc correctement la plage de tension grâce aux 256 bits. Nous pouvons grâce au réseau R-2R obtenir un convertisseur numérique analogique.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -18-

III Echantillonneur Bloqueur

a) Etude théorique Une conversion A/N se passe en deux parties : il faut en effet quantifier le signal en

amplitude et en temps. La quantification en temps n’est pas indispensable ; si le signal analogique d’entrée est

continu ou à évolution lente en fonction du temps, la durée de la conversion est négligeable. On n’a en outre nul besoin de conserver d’informations temporelles.

Si par contre, le signal d’entrée évolue en fonction du temps (par exemple, une tension

sinusoïdale) et que son information est contenue également dans la fréquence de ce signal, il importe de quantifier également en temps le signal avant de le convertir. On appelle cette fonction l’échantillonnage.

Pour échantillonner un signal, on définit une durée, appelée période d’échantillonnage,

qui est l’intervalle de temps entre deux valeurs converties. Le signal d’entrée n’est pas examiné entre ces deux valeurs, et n’est donc pas converti.

Cette période doit être choisie suffisamment courte pour que l’échantillonnage soit

significatif. Elle ne doit pas non plus être exagérément petite, afin que la quantité d’informations ne soit pas trop importante.

Le circuit assurant cette fonction est généralement extérieur au CAN, et est appelé

échantillonneur bloqueur, puisqu’il doit conserver (bloquer) pendant la période d’échantillonnage la valeur du signal d’entrée. Il réalise donc une quantification du temps.

A la sortie de l’échantillonneur bloqueur, le signal est encore analogique, et continu en

amplitude. Il s’agit encore d’une tension (en volts) qui peut prendre des valeurs quelconques. Il est ensuite numérisé par le CAN. A sa sortie, le signal est quantifié en temps et en amplitude. Il n’est défini qu’aux instants d’échantillonnage.

Le choix de la période d’échantillonnage est crucial : un sous-échantillonnage

détériorera trop le signal d’entrée, alors qu’un sur-échantillonnage va augmenter le volume de données à traiter.

Le théorème de Shannon fixe la limite inférieure absolue de la fréquence

d’échantillonnage. Il montre que la fréquence d’échantillonnage doit être supérieure au double de la plus haute fréquence contenue dans le signal d’entrée afin de pouvoir reconstituer fidèlement le signal. En général, pour s’assurer de cette condition, on applique un filtre passe-bas avant d’échantillonner le signal.

Par exemple, si l’on décide d’échantillonner de la musique pour faire un CD audio, on

considère que l’oreille humaine n’entend pas les sons de fréquence supérieure à 22kHz. On filtre donc le signal à 22 kHz pour se débarrasser des fréquences inaudibles (mais présentes à priori dans le signal) et on échantillonne à 44kHz minimum.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -19-

b) Etude expérimentale Pour de modéliser une tension variable par une série de tensions continues qui

changent à intervalle régulier afin de numériser un signal, nous avons utilisé un échantillonneur bloqueur.

Nous avons réalisé le montage de l’échantillonneur bloqueur suivant :

Ce montage comprend deux amplificateurs opérationnels en suiveur, un commutateur

analogique et un condensateur de maintient. Le commutateur analogique est commandé par une horloge. En réalité, nous avons

utilisé un Générateur Basse Fréquence branché sur la sortie pulse, qui délivre une impulsion de 5 volts à intervalle régulier. Cette horloge permet de fermer le commutateur analogique pour réaliser l‘échantillonnage.

Lorsque le commutateur est fermé, le condensateur se charge puis, lorsque l’on ré

ouvre le commutateur, le condensateur se décharge, maintenant ainsi la tension capturée jusqu’à la prochaine mesure.

Nous avons réalisé l’échantillonnage d’une tension sinusoïdale pour tester notre

montage.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -20-

Cette courbe montre en rouge la tension sinusoïdale Ve et en bleu la série de tensions

continues qui correspondent à la tension échantillonnée Vs.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -21-

IV VCO a) Présentation

VCO signifie Voltage Control Oscillator. Un VCO idéal est un oscillateur dont la fréquence est une fonction linéaire de la tension de commande :

F=Fo+aV… La fréquence Fo est appelée fréquence du VCO libre. Oscillateur dont la fréquence est commandée par tension. Le VCO est le module qui

crée le son (l'onde sonore) : le timbre est choisi par l'utilisateur et la hauteur du son est fonction de la tension en entrée (généralement issue du clavier). Ce système est utilisé en musique.

Notre VCO est constitué d’amplificateurs opérationnels, mais il faut savoir qu’il existe

beaucoup d’autres méthodes pour concevoir un VCO. En voici un exemple :

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -22-

b) Etude expérimentale Nous avons réalisé le montage du VCO suivant.

Ω= kR 10 nFC 10=

Puis, nous avons étudié la réponse en fréquence en fonction de la tension d’entrée Ux

pour différentes valeurs de la résistance R1 : Ω= kR 51

Sur ce graphique, on observe que la réponse en fréquence du système est

proportionnelle à l’entrée en tension.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -23-

Ω= kR 101 :

Ici, la réponse en fréquence est proportionnelle à l’entrée en volts jusqu’à un certain

point. En effet, nous observons ici une limite du VCO qui n’est plus fiable lorsque l’on utilise

mal le montage intégrateur réalisé avec l’amplificateur opérationnel A2 : Il faut essayer de ne pas utiliser les hautes fréquences pour la modélisation de la tension d’entrée.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -24-

Nous nous sommes penchés enfin sur l’acquisition d’un signal en fréquence sur le port

imprimante. La première étape consiste à choisir une entrée précise sur le port imprimante. Nous

disposons de 5 entrées. Afin de compter le nombre de commutations, nous utilisons un masque : lorsque l’entrée du port imprimante a une certaine valeur, nous lançons le programme d’acquisition de la fréquence.

Il faut ensuite choisir la méthode d’acquisition du signal. Puisqu’il s’agit d’une fréquence, nous disposons de deux méthodes de programmation

différentes : La première consiste à relever le nombre de commutations sur durée donnée, par

exemple, on compte le nombre de commutations pendant une seconde. On obtient ainsi un nombre de période par secondes, soit directement la réponse en fréquence.

L’autre méthode consiste à relever la durée entre deux commutations, nous permettant

ainsi de récupérer la période. Un calcul simple donne la fréquence du signal étudié. C’est cette deuxième méthode qu’il est plus facile à mettre en œuvre au niveau de la

programmation : il suffit d’appeler l’heure du système au début du programme, d’attendre la commutation, et de rappeler l’heure du système lorsque l’on observe un changement.

Ainsi, on obtient par a différence des deux heures, la durée d’une commutation, puis la

période et enfin la fréquence par calcul. Ayant réalisé auparavant une étude du VCO au niveau de la proportionnalité entre la

tension d’entrée et la fréquence en sortie, nous appliquons la fonction trouvée expérimentalement pour notre VCO à la fréquence acquise par l’ordinateur.

Nous avons donc enfin retrouvé sur l’ordinateur la tension d’entrée appliquée.

L’acquisition numérique du signal a été faite. Cette partie de l’expérience n’a pu être menée à bien faute de temps, mais elle aurait

mérité que nous nous y attardions plus que sur l’échantillonneur bloqueur par exemple, car nous voyons ici une technique d’acquisition d’une tension sur un ordinateur.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -25-

Conclusion Ce projet d’automatique nous a permis de mieux appréhender les problèmes qui se

posent lors de la numérisation d’un signal. Nous avons abordé les différents points d’une conversion analogique numérique et

numérique analogique. L’étude du réseau R/2R pour convertir en tension analogique des tensions numériques

représentant chacune un bit, l’étude de l’échantillonneur bloqueur nécessaire pour numériser un signal à l’aide d’un convertisseur à rampe, et l’étude d’un autre système de numérisation : le VCO, qui renvoie une sortie en fréquence proportionnelle à la tension d’entrée. Ce dernier système nous a permis de numériser complètement une tension d’entrée : la réponse en fréquence du système est capturée par le port imprimante et traitée par un programme.

Le but de la conversion numérique est d’automatiser les systèmes, en réalisant un

traitement des données par ordinateur, puis en provoquant une réponse du numérique vers l’analogique, créant ainsi une boucle de contrôle.

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -26-

Annexes test du port imprimante MARS 2001 F Guillotin quelques exemples de procedures d'entr‚e et de sortie par le port imprimante du PC fichier lptp102.pas uses dos,crt; const reg_out=$378; reg_in=$379; type tab=array[0..7] of byte; var val_e,val_s:byte; tab_e,tab_s:tab; procedure conv_bin(valeur:byte;var

tabbin:tab); var dividende,i:integer; begin dividende:=valeur; for i:=0 to 7 do begin tabbin[i]:= dividende mod 2; dividende:=dividende div 2; end; end; procedure conv_oct(tabbin:tab;var

valeur:byte); var i:byte; begin valeur:=0; for i:=0 to 7 do

valeur:=valeur+tabbin[i]*(1 shl i); end; procedure lecture(var valeur:byte); begin valeur:=( (port[reg_in] and $f8) shr 3 )

xor $10; end; procedure ecriture(valeur:byte); begin port[reg_out]:=valeur; end; procedure test_sorties;

var i,octet:byte; begin clrscr; gotoxy(1,12);write('tu as perdu, entre

une valeur : '); readln(val_s); ecriture(val_s); conv_bin(val_s,tab_s); gotoxy(1,20); for i:=7 downto 0 do

write(tab_s[i]:3);readln; end; procedure test_entrees; var i,octet:byte; fin:boolean; touche:string; begin clrscr; gotoxy(1,12);write('lecture des entr‚es:'); if keypressed then touche:=readkey; fin:=false; repeat lecture(val_e); gotoxy(1,18);write('valeur en

entr‚e:',port[$379]:4,' avant conversion'); conv_bin(val_e,tab_e); gotoxy(1,19);write('valeur en

entr‚e:',val_e:3); gotoxy(1,20); for i:=7 downto 0 do write(tab_e[i]:3); if keypressed then begin

touche:=readkey;fin:=true end; until fin; end; procedure rampe; var i,octet:byte; fin:boolean; touche:string; begin clrscr; gotoxy(1,12); write('rampe lanc‚e '); write('pour arrˆter, appuyer sur une

touche'); if keypressed then touche:=readkey; fin:=false; i:=0; repeat

FALLET Laurent PERRIN Guillaume GRISONI Florian

Institut National des Sciences Appliquées de Rouen -27-

ecriture(i); i:=i+1; if i=255 then i:=0; if keypressed then begin

touche:=readkey;fin:=true end; until fin ; end; procedure periodemetre; var compte:integer;

h,m,s,h1,m1,s1,stringue,stringue1:Word; bol,ok_fin:boolean; touche:char; begin clrscr; GetTime(h,m,s,stringue); write(h,m,s); compte:=1; bol:=false; repeat repeat bol:=((port[reg_in] and 64)=64); if bol then compte:=compte+1; GetTime(h1,m1,s1,stringue1); until s1=s+1; gotoxy(1,12);write(compte); if keypressed then begin touche:=readkey; ok_fin:=true; end; gotoxy(1,12);write('frequence :

');write(1/compte); compte:=0; until ok_fin; end; procedure vco; var tabbin:tab; ack,i:integer; okfin,ok_ack:boolean; touche:char; begin okfin:=false; clrscr; repeat ack:=port[reg_in] and $40; conv_bin(ack,tabbin); gotoxy(1,12);clreol; for i:=7 downto 0 do

write(tabbin[i]:3); ok_ack:=(ack=64); gotoxy(1,13);clreol; write(ok_ack); if keypressed then begin touche:=readkey;

okfin:=true; delay(50); end; until okfin; end; ******************programme************* var fin:boolean; touche:char; choix:integer; begin if keypressed then touche:=readkey; fin:=false; ecriture(0); clrscr; repeat choix:=0; clrscr; gotoxy(2,3);write('Programme de

test des entr‚es Sortie sur le port imprimante'); gotoxy(2,5);write('1 :Ecrire une

sortie'); gotoxy(2,7);write('2 : lire les entr‚es'); gotoxy(2,9);write('3 : envoyer une

rampe'); gotoxy(2,11);write('4 : mesure

frequence VCO'); gotoxy(2,13);write('5 : quitter '); gotoxy(2,15);write('que voulez vous

faire : '); readln(choix); case choix of 1:test_sorties; 2:test_entrees; 3:rampe; 4: periodemetre; 5:fin:=true; end; until fin; end.