traduit et adapté de l’anglaistraduit et adapté de matériel mis sur internet par divers auteurs...
TRANSCRIPT
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
MIC7340
Les convertisseurs A/N et N/A
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Rôle des convertisseurs A/N et N/A
• Assurent la conversion de format entre des données d’e/s analogiques et le CPU du microcontrôleur
• Les blocs de prétraitement et de post-traitement gèrent les problèmes d’interface entre les e/s et les convertisseurs
Pré-traitement CPU
Post-traitement
Te
CAN CNAs(t) y(t)
ks ky )kT(y e)()( ee kTsts
Port
Port
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
3
La conversion de format
Proportionnalité Analogique-numérique Numérique-analogique
Vmax = 7.5V
0V
11111110
0000
0010
0100
0110
1000
1010
1100
0001
0011
0101
0111
1001
1011
1101
0.5V1.0V1.5V2.0V2.5V3.0V
3.5V4.0V4.5V5.0V
5.5V6.0V6.5V7.0V 4
3
2
1
t1 t2 t3 t4
0100 1000 0110 0101
time
anal
og in
put (
V)
Digital output
4
3
2
1
0100 1000 0110 0101
t1 t2 t3 t4time
anal
og o
utpu
t (V
)
Digital input
• Conversion de tensions ou courants en codes binaires équivalents et vice-versa
• Les quantités converties et les résultats suivent des relations de proportionnalité
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Conversion de format : résolution
• Représente la valeur analogique correspondant à 1 bit (pas de quantification)
• Dépend du nombre de bits utilisés et d’un paramètre de référence (souvent une tension)
Vref : Tension de référence
n : Longueur du mot binaire
– On utilise aussi Q/2tension/code
code
/ten
sion
Q
12
n
refVQ
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Convertit un code binaire en une tension ou courant continu d’amplitude équivalente
• En pratique un filtre est requis après la sortie
Convertisseur N/A
bit 0
bit n
CNA n bits011010010101010100101101010101011111100101000010101010111110011010101010101010101010111010101011110011000100101010101010001111
Entrée numérique
Filtre
Sortie analogique par paliers
Sortie analogique
0 1 2 10 1 2 1
out
2 2 2 2
2
nn
n
x x x xV k
Tension de référence k
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Équivalent de Thévenin
0123
0123
0123
24816
16//16//8//4//2
16842
xxxxV
IRV
RRRRRRR
R
Vx
R
Vx
R
Vx
R
Vx
IIIII
refccThTh
Th
refrefrefref
cc
CNA à résistances pondérées
Portes
CMOS
Problème : la valeur de résistance double à chaque bit !
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
CAN à réseau R-2R
• Par superposition, on a aussi :
Mais on utilise seulement des résistances de valeurs R et 2R !
RR
xxxxV
V
Th
refTh
0123 24816
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Convertisseur A/N• Convertit une tension ou courant analogique en un code
binaire équivalent• Opère souvent en échantillonnant d’abord la valeur
analogique à convertir (rôle de l’E-B ou « S&H »)• Plusieurs types
011010010101010100101101010101011111100101000010101010111110011010101010101010101010111010101011110011000100101010101010001111
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Conversion A/N• Comparateur analogique = CAN à 1-bit !
• Boucle d’hystérésis requise pour éviter le bruit
Problème évité si
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Convertisseur A/N à comparateurs en parallèle (« flash »)
• Basé sur un diviseur de tension et des comparateurs
• L’encodeur de priorité convertit le code thermométrique généré en un code binaire équivalent
• Temps de conversion le plus rapide – Utilisé dans les oscilloscopes
numériques, l’échantillonnage vidéo, le traitement de signaux radar, etc.
• Demande un nombre de comparateurs qui croit exponentiellement !– 2n-1 pour n bits de résolution,
d’où nmax 10 en pratique
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Convertisseur A/N à compteur en rampe
• Utilise un convertisseur N/A !• Après l’impulsion Start, le compteur part de zéro et compte en
montant ; il s’arrête quand la tension à la sortie du convertisseur N/A est supérieure à la tension qu’on veut convertir.
• Compte final = code binaire recherché
• Peu compliqué, mais le temps de conversion est fonction de la tension d’entrée
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Convertisseur A/N par approximations successives
BPS est mis à 1 et remis à 0 car le résultat dépasse Vs
Les prochains bits sont mis à 1 en séquence et gardés car le résultat est inférieur à Vs
La conversion cesse lorsque tous les bits ont été testés
Période de test d’un bitSo
rtie
du c
onve
rtiss
eur N
/A
• Fait l’approximation successive des bits du résultat en partant de celui de poids le plus fort
• Bon compromis entre le prix et vitesse de conversion
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
13
• Partant d’un signal analogique qui varie entre 0 et 15 volts, et un code binaire de 8 bits, donner le code correspondant à une tension de 5 v.
5/15 = d/(28-1)d= 85 = 01010101
Illustration de la méthode d’approximations successives
Conversion A/N par approximations successives
0 1 0 0 0 0 0 0
½(Vmax – Vmin) = 7.5 voltsVmax = 7.5 volts.
½(7.5 + 0) = 3.75 voltsVmin = 3.75 volts.
0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0½(7.5 + 3.75) = 5.63 voltsVmax = 5.63 volts
½(5.63 + 3.75) = 4.69 voltsVmin = 4.69 volts.
0 1 0 1 0 0 0 0
½(5.63 + 4.69) = 5.16 voltsVmax = 5.16 volts.
0 1 0 1 0 0 0 0
½(5.16 + 4.69) = 4.93 voltsVmin = 4.93 volts.
0 1 0 1 0 1 0 0
½(5.16 + 4.93) = 5.05 voltsVmax = 5.05 volts.
0 1 0 1 0 1 0 0
½(5.05 + 4.93) = 4.99 volts 0 1 0 1 0 1 0 1
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Analyse comparative
Maxim MX7705
ADI AD7476A
National ADC1175
Type Sigma-Delta Successive Approximation
Flash
Résolution 16-Bit 12-Bit 8-Bit
Fréquence d’échantillonnage
500 EPS 1 MEPS 50 MEPS
Consommation 1 mW 12.5 mW 125 mW
Coût $4.12 @ 1k Units $6.00 @ 1k Units $2.20 @ 1k Units
Application • compteurs de débit et de gaz• Gauges de contraintes
• Multiples • Imagerie médicale• Communications
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Considérations pratiques
• Erreurs intrinsèques• Filtres • Choix d’un convertisseur• Montage dans une chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
LinéaritéCas idéal
Sortie desirée/souhaitée
tension/code
code
/ten
sion
La réalité
Cod
e/te
nsio
ntension/code
Sortie désirée
Sortie réelle
• En pratique, linéaire si l’erreur est inférieure ou égale ½ pas
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Écart en nombre de pas ou tension équivalente par rapport à la sortie précédente (Idéalement 1 pas ou bit le moins significatif)
Non linéarité différentielle
tension/code
Sortie idéale
code
/ten
sion
VLSB
2VLSB Non-Linéarité diff. = 2 pas
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Écart en nombre de pas ou tension equivalente par rapport à la sortie idéale (Idéalement 0)
Non linéarité intégrale
tension/code
Sortie idéale
1VLSB Non-linearité int. = 1 pas
code
/ten
sion
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Écart entre la pente de courbe de réponse idéale et la courbe réelle
Erreur de gain
Erreur de gain élevé : Pente supérieure au cas idéal
Erreur de gain bas : Pente inférieure au cas idéal
En pratique, pas d’erreur si inférieure à ½ pas
tension/code
Sortie idéaleco
de/t
ensi
on
Gain bas
Gain élévé
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Décalage entre la courbe de réponse idéale et la courbe réelle
• Devrait être inférieure à un pas en pratique
Erreur de biais
tension/code
Sortie idéale
code
/ten
sion
Biais positif
Biais négatif
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Un décroissement de la sortie avec un accroissement de l’entrée
• Devrait être inférieur à ½ pas
Erreur de non-Monotonie
code
/ten
sion
tension/code
Sortie idéale
Monotonic
Non-Monotonie
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• Résolution de quantification – Dépend du nombre de bits
Vref : Tension de référence
n : longueur de mot en bits
• Bruit de quantification– Dépend de Q
Bruit de quantification
12 n
refVQ
(a) Conversion de tension continu-à-discret ; (b) Bruit de quantification correspondant
Q
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Bruit de quantification
• On peut le modeler par un signal aléatoire q(t) uniformément réparti entre
– La puissance du bruit est alors
– Et le rapport signal-sur-bruit pour un signal x(t) donné est :
2
Qe
2
Qt
nref
q
VQtqE
2
2222
2312)]([
signalduarianceù v:σo,σ
σ10logSNR 2
x2q
2x
10
Q
Output
Input
)(tq
)(tqe
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Bruit de quantification• Pour un signal sinusoïdal d’amplitude 1, et Vref normalisé à
1, la puissance est ½ et le rapport signal-sur bruit est
• Si on suppose un signal gaussien avec =0 et on a
• Dans les deux cas, l’ajout d’un bit de résolution augmente le rapport de 6dB
• Multiplier le signal par modifie sa variance à – Le rapport signal-sur-bruit devient :
8.16nSNR(dB)
22x
α20logK20log16.86nSNR 1010A/D
K20log16.86n(dB)SNR 10A/D xref KV
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Effet de la longueur de mot sur les calculs
• Signal continu avec représentation discrète de n bits :– Si les valeurs sont tronquées à m bits, m<n, une erreur de
représentation est introduite.– Les n-m bits de poids faible de chaque mot sont perdus.– La gamme d’amplitudes couverte par l’erreur de
troncation, , est donnée par
– L’erreur se répercute sur tous les calculs subséquents
bMt 22||0
t
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Considérations pratiques
• Erreurs intrinsèques– Linéarité, biais, Gain, etc. – Bruit de quantification
• Filtres • Choix d’un convertisseur• Montage dans une chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Étapes de traitement du signal
• Exemple : y(t)=s(t)
Pré-traitement CPU
Post-traitement
Te
CAN CNAs(t) y(t)
ks ky )kT(y e)()( ee kTsts
Port
Port
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• La fréquence d’échantillonnage et le pas de quantification ont tous les deux un effet
Conversion temps continu à discret
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Conversion temps continu à discret : Apparition d’Alias
• Pour éviter :– Utiliser un filtre passe bas qui élimine
les composantes de fréquence fe/2• Doit être analogique• La fréquence de coupure doit
respecter le critère de Nyquist fc fe/2
• Le gain dans la bande d’arrêt doit être 12
1
2 n
Q
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Ordre du filtre anti-alias• Utiliser fe=2fmax peut demander un filtre d’ordre très grand si
on veut rejeter le bruit de quantification dans la bande d’arrêt• Ex. : pour S/B=80 dB, seul un filtre élliptique d’ordre 8 peut
répondre au besoin pour fe=2fmax (avec une réponse en phase non linéaire)
Tiré de EDN, numéro du 23/11/2006
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Conversion temps discret à continu
• En théorie, on peut récupérer le spectre du signal original en multipliant Se() par un rectangle qui isole la première période. On a alors
où
et
)(H)(S)(S e
em
m
me
T
2,2/,0
2/,T)(H
k
me
k
eme
mmee
kee
ktsinckTs
kTtckTs
tsincTkTtkTsthtsts
2)(
2sin)(
22)()()()()(
• La fonction sinc requise est de durée infinie !
bit 0
bit n
CNA011010010101010100101101010101011111100101000010101010111110011010101010101010101010111010101011110011000100101010101010001111
Entrée numérique
Filtre
Sortie en escalier Sortie continue
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Conversion temps discret à continu
• Soltutions possibles :– Utiliser un filtre passe bas– Faire passer les points par un filtre qui va les “étirer” :
y[n] : séquence à convertir en un signal à temps continu proche de y(t)p(t) : typiquement une impulsion de durée finie, et de forme rectangulaire,
triangulaire, parabolique, sinc, etc.
n
e nTtpnyty ) ( ][)(~
• Les impulsions successives se recouvrent si elles durent plus que Te
• Elles sont généralement d’amplitude ou de surface =1
t1
p(t)
-½ Te ½ Te
t
0
1
t1
p(t)
1sinc(x)
-Te Te0
-½ Te ½ Te-Te Te
Par(t)
0-½ Te ½ Te-Te Te
0-½ Te ½ Te-Te Te
)(~ ty
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Considérations pratiques
• Erreurs intrinsèques– Linéarité, biais, Gain, etc. – Bruit de quantification
• Filtres – Filtres anti-alias– Filtres de reconstruction
• Choix d’un convertisseur• Montage dans une chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Paramètres à considérer dans un convertisseur A-N
• Architecture• Résolution• Temps de conversion• Rapport signal/bruit• Type d’entrée
(unipolaire/Différentielle)• Temps d’ouverture « aperture
time» et sa variation (« jitter ») • Temps de maintien (« hold time »)• Nécessité d’un échantillonneur-
bloquer (« sample-and-hold »)• Linéarité et autres erreurs• Type d’interface
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• La résolution • Temps de stabilisation « settling
time » : temps entre le départ de la transition et la nouvelle valeur à la précision requise (0.5 LSB par ex.)
• Le rapport signal/bruit• La linéarité et les autres erreurs• Type d’interface
Paramètres à considérer dans un Convertisseur N-A
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Choix d’un convertisseur :Nombre de bits et résolution
• Gamme de température de 0 K à 300o K à convertir en une tension entre 0 et 2.5 V, numérisée avec des convertisseurs A/N de 8 et 10 bits
8 bits :2.5 / 28 -1= 0.0098 V, ou environ 10 mV par pas En degrés K, cela correspond à 300o K / (28-1)= 1.2o K par pas
10 bits :2.5 / (210 -1)= 0.00244V, ou environ 2.4 mV par pasEn degrés K, cela correspond à 300o K / (210 -1)= 0.29o K par pasOui , mais le niveau de bruit est-il inférieur à 2.4 mV ?
• En général, on parcourt le chemin inverse : on part de considérations de résolution pour trouver le nombre de bits
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Gamme de température de 0 K à 300o K à convertir en une tension entre 0 et 2.5 V, numérisée avec un convertisseur A/N de 10-bit
2.5 / (210 -1)= 0.00244V, ou environ 2.4 mV par pasEn degrés K, cela correpond à300o K / (210 -1)= 0.29o K par pasLe niveau de bruit est-il inférieur à 2.4 mV ?
Détermination de la résolution
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Considérations pratiques
• Erreurs intrinsèques– Linéarité, biais, Gain, etc. – Bruit de quantification
• Filtres – Filtres anti-alias– Filtres de reconstruction
• Choix d’un convertisseur• Montage dans une chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Mesurandes de procédé
Chaîne d’acquisition des données
traitement
affichage
stockage
Contrôlerégulation
alarmes
Recueille l’information nécessaire à la connaissance/contrôle d’un procédé L’état du procédé est spécifié par les valeurs de grandeurs physiques ou
chimiques
Constituants de la chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Demande un multiplexeur introduisant peu de distorsion et un CAN dont la temps de conversion est une fraction de celui par canal : tacq < tmux + tS&H + tCAN / N
Capteur i
conditionneur
amplificateur
filtre
Multiplexeur analogique
Capteur 1 Capteur n
S&Hlogique
Constituants de la chaîne d’acquisition
CAN
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
La partie contrôlée de la chaîne peut prendre plusieurs formes :
CAN
Multiplexeur numérique
CAN. . .
S&H S&H
logique
Avantages : acquisition synchrone possible, S&H peut-être non requis, chaque voie est adaptée au capteur, voies pouvant être déportées près des sources, transmission numérique…
Inconvénient : coût et filage élevés
Constituants de la chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Autre solution :
Multiplexeur analogique
CAN
. . .S&H S&H
logique
Avantages : 1 seul CAN, acquisition synchrone ou échantillonnage d’une voie pendant blocage et conversion d’une autre
tacq tmux + tS&H + tCAN / N
Constituants de la chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Solution courante :
Multiplexeur analogique
CAN
. . .
S&H
logique Avantages : 1 seul CAN, 1 seul S/H, le multiplexeur peut être à mode
séquentiel (compteur) ou programmé : adressage d’une voie i quelconque. Inconvénients : solution la moins performante, pas d’acquisition synchrone
possible
Tacq < tmux + tS&H + tCAN / N
Constituants de la chaîne d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
• La chaîne d’acquisition est formée de la mise en cascade de : capteur et conditionneur, amplificateur, filtre, multiplexeur, échantillonneur bloqueur et convertisseur analogique numérique.Si chacun des dispositifs k suit une relation yk= Gk . xk
alors yn= G . x avec G=G1G2…Gn
• G1 peut correspondre à la sensibilité du capteur, G2, au gain en tension de l’amplificateur, G3 au gain statique de la fonction de transfert du filtre, G4 au facteur de transmission du multiplexeur (=1), G5 au gain en tension du S&H (=1), G6 =2n/Vpe, la relation de quantification du CAN.
Budget des incertitudes – Précision de la chaîne
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
Chaque élément de la chaîne est source d’incertitudes :- erreur de gain nominal eGn
- erreur de linéarité el du gain
- incertitude due aux dérives thermiques, sur le gain eG(T) et de zéro ez(T)
- incertitudes en régime dynamique eG(f) en régime sinusoïdal ou et en régime impulsionnel.
Il faudrait aussi ajouter les erreurs spécifiques comme l’erreur d’hystérésis d’un capteur et l’erreur de quantification due au CAN
L’incertitude maximale (ou dans le pire des cas) correspond à l’addition des valeurs absolues des incertitudes élémentaires
l’incertitude générale sur un dispositif d’acquisition
Traduit et adapté de l’anglaisTraduit et adapté de matériel mis sur Internet par divers auteurs
En Résumé Différents types de convertisseurs A/N et N/A existent Le type à utiliser dépend de l’application Les caractéristiques des convertisseurs réels peuvent
mener à une perte de résolution Un filtre anti-alias est souvent requis à l’entrée d’un
convertisseurs A/N Un filtre de reconstruction est souvent requis à la sortie
d’un convertisseur N/A L’insertion de convertisseurs A/N dans une chaîne de
mesure doit tenir compte de leur nombre et de son impact sur la bande passante du système