Conversione A/D e D/A Per convertire un segnale analogico (continuo nel tempo e nelle ampiezze) in uno digitale occorrono due operazioni di discretizzazione: Campionamento: discretizzazione nel dominio del tempo Quantizzazione: nel dominio delle ampiezze Ogni operazione di discretizzazione comporta una certa perdita di informazione, occorre operare in modo che la perdita di informazione (esprimibile come errore nei confronti dell informazione originaria) sia sufficientemente piccola adeguatamente agli scopi che ci si prefigge 1
Campionamento (discretizzazione nel tempo) A t Per non perdere informazione T c 1 fc = 2B Tc Dove B = banda di frequenza del segnale A Il campionamento consiste nel prendere in considerazione il valore della funzione analogica solo in istanti di tempo prefissati, generalmente tra loro distanziati di un tempo fisso Tc, trascurando completamente quello che accade tra un campione e il successivo L operazione di campionamento può essere modellizzata matematicamente come il prodotto tra la funzione A(t) e una serie infinita di funzioni δ di Dirac: A () t δ ( t nt ) + n c 2
Aliasing Spettro del segnale f B B f c 2f c Passando dal dominio del tempo a quello delle trasformate, la trasformata del prodotto precedente è data dal prodotto di convoluzione tra le trasformate dei due fattori: ed essendo la trasformata della serie di δ anche lei, nel dominio di ω, una serie di δ(ω nω c ), risulta che lo spettro del segnale campionato è costituito dalla replica di quello del segnale analogico originario, duplicato infinite volte intorno alle frequenze multiple di f c = 2π/T c Se lo spettro del segnale analogico è limitato in una banda B è possibile ricostuire il segnale originale mediante un semplice filtro passabasso che elimini le repliche a frequenza superiore, purché la frequenza fc di campionamento sia superiore a 2B In questo modo si evita la sovrapposizione delle code degli spettri vicini e l impossibilità di isolarli In altre parole, se in un operazione di campionamento si vuole conservare inalterata l informazione originale, occorre che il segnale campionato abbia spettro limitato (banda B)e che la frequenza di campionamento sia maggiore di 2B Poiché non esistono segnali a spettro limitato, ma comunque per ogni segnale analogico è definibile una banda B oltre la quale il contenuto di informazione non è più significativo, è bene far precedere al circuito che opera il campionamento un filtro passabasso che limiti la banda a quella strettamente necessaria (filtro antialiasing) 3
Quantizzazione (discretizzazione del valore delle ampiezze) S A D Con N cifre (bit) in codice binario si ottengono 2 N numeri Si divide la dinamica analogica S in altrettanti intervalli (LSB) e a ciascun intervallo si associa in modo biunivoco un numero: tutti gli infiniti valori in quell intervallo vengono rappresentati con questo solo numero L operazione di quantizzazione consiste nel far corrispondere a ciascun campione un numero che rappresenti il suo valore Il numero può essere espresso sotto forma di un qualunque codice, ma d ora in poi noi assumeremo di rappresentarlo in codice binario purosi voglia rappresentare i valori sotto forma digitale con numeri di n cifre (n bit): si avrà così a disposizione un numero N=2 n limitato di numeri Si chiami S la dinamica del segnale analogico che si desidera convertire:questa dinamica, seppure limitata, contiene infinite valori del segnale, che saranno rappresentabili con soli N valori numericioccorre quindi fare una discretizzazione, cioè una suddivisione della dinamica in tanti segmenti elementari quanti sono i numeri disponibili, e far corrispondere biunivocamente agli infiniti valori di ciascun segmento un unico valore numerico Poiché l operazione di discretizzazione fa perdere informazione, la suddivisione della dinamica in N porzioni può essere fatta in molti modi, al fine di rendere più fitte le suddivisioni dove interessa maggior precisione; ma d ora in poi, per semplicità, penseremo ad una quantizzazione uniforme, cioè ad una suddivisione della dinamica in N segmenti di ampiezza uguale 4
Errore di quantizzazione LSB Valore da convertire 1/2 LSB D ε Poiché un solo punto dell intervallo LSB e convertito correttamente, se si sceglie come valore esattamente convertito il punto centrale dell intervallo, l errore massimo di quantizzazione risulta comunque ε ±1/2 LSB Poiché LSB = S /2 N, dove S dinamica analogica, l errore di quantizzazione ε diminuisce esponenzialmente al crescere del numero N dei Bit Si è soliti definire LSB (List Significant Bit) l ampiezza del singolo intervallo analogico che sarà rappresentato da un unico valore numerico Se S è la dinamica analogica, e si usano n bit, risulta ovviamente LSB=S/2 n Poiché un solo punto tra gli infiniti dell intervallo LSB sarà convertito esattamente dal numero che rappresenterà l intero intervallo, tutti gli altri valori saranno convertiti con un certo errore, definito come differenza tra il valore vero del segnale analogico e l unico numero che rappresenta l intero intervallo Tale errore viene detto errore di quantizzazione Se si sceglie come valore esattamete convertito il valore centrale del LSB, l errore di quantizzazione viene ad essere statisticamente minimizzato, in quanto risulta al massimo pari ad 1/2 LSB Quindi l errore di quantizzazione sarà al massimo ε 1 LSB 2 1 S 2 2 = = = n n+ 1 Dato un convertitore A/D, con una dinamica d ingresso S, l errore di quantizzazione si riduce esponenzialmente aumentando il numero n dei bit con cui opera il convertitore S 2 5
Sistema di acquisizione ed elaborazione dati MUX e 1 A1 FPB e 2 A2 FPB S/H A/D µp D/A FPB e 3 A3 FPB Cont rollo e n An FPB Un sistema di acquisizione dati normalmente riceve più segnali da convertire da altrettanti trasduttori esterni, e, per risparmiare, condivide tutte le risorse necessarie alla conversione per quanto questo è possibile Il MUX è detto multiplexer analogico e permette di colleagare alla sua uscita un solo canale per volta, selezionato da una parola digitale che ne dá l indirizzo, per cui il sistema preleva in sequenza un campione per canale, e lo presenta alla successiva conversione Si torna a prelevare un nuovo campione da ciascun canale solo dopo aver esplorato in sequenza tutti i canali Il circuito S/H viene descritto nella figura seguente Ogni segnale d ingresso viene trattato da un amplificatore, detto amplificatore di condizionamento, il cui scopo è quello di adattare la dinamica del segnale a quella del convertitore A/D, in modo da minimizzare il peso relativo dell errore di quantizzazione Infatti poichè l errore di quantizzazione è pari ad ½ LSB, il suo peso relativo è tanto minore quanto maggiore é l ampiezza del segnale, e quindi quanto più il segnale riempie tutta la dinamica del convertitore Il filtro passa basso limita la banda del segnale alla minima indispensabile, in modo da evitare i problemi di aliasing dovuti al campionamento Il controllo scandisce tutti I tempi per il funzionamento: indirizza il primo canale dal quale prelevare il campione, comanda il S/H per campionar, informa il µp che all ingresso è presente un campione del canale 1 Terminata la conversione indirizza il secondo canale e così via 6
Sample and Hold (S/H) segnale Segnale dopo S/H t Poiché il segnale analogico d ingresso varia nel tempo, e poiché il convertitore A/D impiega un tempo non nullo ad effettuare la conversione, se durante il tempo di conversione il segnale d ingresso variasse in modo significativo il convertitore si troverebbe ad aver iniziazo la conversione con un valore del segnale e terminarla con un altro, con possibile errore sul risultato della conversione Il S/H (circuito di Sample and Hold) ha la funzione di prelevare un campione del segnale analogico all ingresso, e di mantenerlo costante sull uscita per tutto il tempo necessario a permettere al convertitore A/D di effettuare la conversione 7
Conversione D/A V u = K D K ha le dimensioni di una tensione: N 1 u K = b i i= 0 V 2 i D occorre una tensione di riferimento V r D/A V u V r Se V r è esterno al D/A, questo è detto Convertitore moltiplicativo: può essere a 2 o a quattro quadranti, a seconda se può accettare V r solo di un segno o di entrambi Un convertitore D/A moltiplicativo può essere usato come amplificatore a guadagno programmabile, utilizzando come ingresso V r, essendo l amplificazione specificata con la parola digitale D: infatti si ha Vu = D V r 8
Transcaratteristica di un convertitore D/A ideale S V u D E un insieme finito e discreto di 2 N punti allineati su una retta L asse digitale è costituito da un numero discreto e finito di punti, convenzionalmente equispaziati sull asse delle x, che rappresentano i 2 n valori digitali di cui si dispone; mentre l asse che rappresenta le tensioni di uscita è un asse continuo A ciascun valore digitale d ingresso corrisponde un preciso valore di tensione all uscita, per cui la transacaratteristica è rappresentata da un insieme discreto e finito di 2 n punti idealmente tutti allineati su una retta Nella realtà, poiché il convertitore non sarà perfettamente ideale, a ciascun incremento di un bit del numero espresso in forma binaria non corrisponderà un incremento uguale sull asse delle tensioni, e quindi i punti non saranno perfettamente allineati 9
Principali prestazioni di un convertitore D/A Numero di Bit: Definisce l errore di quantizzazione, e quindi la sensibilità del convertitore intesa come minor incremento dell uscita ottenibile Tempo di conversione: E il tempo necessario, dopo una variazione della parola digitale di ingresso, perché l uscita raggiunga il nuovo valore entro una precisione di ±1/2 LSB 10
Convertitori A/D V e D V r D D = HV e dove H è l inverso di una tensione: occorre ancora una V r Transcaratteristica statica ideale V e LSB LSB LSB LSB La transcaratteristica statica vede l asse analogico (asse x) continuo, mentre l asse relativo all uscita digitale é costituito da un insieme finito e discreto di punti, convenzionalmente equispaziati, ciascuno dei quali rappresenta uno dei 2 n valori disponibili La dinamica analogica S viene divisa in 2 n parti eguali, ciascuna ampia un LSB Al fine di minimizzare l errore di quantizzazione, rendendolo al massimo uguale a ½ LSB,si convertono tutti i valori analogici sino a 0,5 LSB assegnando loro il numero 0, quelli tra 0,5 LSB e 1,5 LSB con il numero 1, e così via La transcaratteristica ideale diviene così una gradinata con gradini tutti identici, salvo il primo e l ultimo che hanno ampiezza orizzontale metà degli altri, e tutti i punti centrali dei gradini stanno su una retta che passa per l origine In un A/D reale purtroppo l ampiezza dei singoli gradini sull asse che rappresenta il segnale analogico non è perfettamente identica, per cui i punti centrali di ciascuno di essi non saranno più perfettamente allineati 11
Principali caratteristiche di un convertitore A/D Numero di Bit: Definisce l errore di quantizzazione e quindi la sensibilitá Tempo di Conversione: E il tempo che intercorre tra un comando di conversione e la disponibilità dei dati sulle uscite digitali 12