MISURE ANALOGICHE E DIGITALI - miro.ing.unitn.it del... · CAMPIONAMENTO e consiste nel registrare...

15
Pag. 1 MISURE ANALOGICHE E DIGITALI Prof. Mariolino De Cecco Appunti delle lezioni di Misure Meccaniche e Termiche I Università di Ingegneria di Trento

Transcript of MISURE ANALOGICHE E DIGITALI - miro.ing.unitn.it del... · CAMPIONAMENTO e consiste nel registrare...

Pag. 1

MISURE ANALOGICHE E DIGITALI

Prof. Mariolino De Cecco

Appunti delle lezioni di Misure Meccaniche e Termiche I Università di Ingegneria di Trento

Pag. 2

INDICE

1. SEGNALI ANALOGICI 3

2. LA CONVERSIONE ANALOGICO-DIGITALE 4

2.1 Il campionamento 4 2.1.1 Teorema del campionamento ( o “di Shannon” ) 5 2.1.2 Aliasing 5

2.2 La quantizzazione 8 2.2.1 Sovracampionamento (oversampling) 9 2.2.2 Esempi dell'effetto di conversione A/D per un segnale sinusoidale 11

2.3 La codifica 11 2.3.1 Codifica di Grey 12

3. SEGNALI DIGITALI 14

3.1 Pregi del segnale digitale ( altrimenti detto "numerico" ) 14

Pag. 3

1. SEGNALI ANALOGICI

Un segnale analogico può essere rappresentato mediante una funzione del tempo che gode delle seguenti caratteristiche: 1) la funzione è definita per ogni valore del tempo (è cioè continua nel dominio del tempo) 2) la funzione è continua nel dominio della grandezza rappresentata. Volendo "volgarizzare" le proprietà del segnale analogico conseguenti alle due caratteristiche sopra citate si potrebbe affermare che "è possibile disegnare l'andamento temporale di un segnale analogico senza mai staccare la penna dal foglio..."

a = f ( t ) ; dove: 1. t appartiene all'insieme R , 2. a appartiene all'insieme R

I segnali analogici possono essere considerati rispondenti ai due requisiti sopra ricordati in quanto: 1. prodotti da generatori che operano nel mondo reale, in un ambito cioè in cui il tempo

risulta essere "denso"; nel mondo reale il tempo è una grandezza continua ed è sempre possibile immaginare che, fra due istanti comunque vicini fra loro si trovi un istante intermedio in cui il generatore di cui si tratta produca un segnale di valore finito;

2. non esistono, nel mondo reale, generatori di potenza infinita; questa considerazione porta a concludere che non è possibile generare un segnale che presenti una variazione finita in tempo nullo: anche il più rapido transitorio reale presenta una evoluzione del segnale che risulta continua.

Dunque, se volessimo registrare un segnale analogico, sarebbe necessario avere una infinità del secondo ordine di locazioni di memoria. Questo anche se il segnale analogico in questione avesse durata limitata nel tempo e fosse limitato nel suo campo di escursione. È infatti noto che anche in un intervallo limitato esistono una infinità di numeri reali. Se poi si volesse elaborare il segnale analogico registrato occorrerebbero di conseguenza una infinità di operazioni. Allo scopo di superare tali vincoli imposti dalla infinita complessità del reale, si è reso necessario lavorare con segnali equivalenti tradotti nel mondo digitale ovvero lasciando il dominio dei numeri reali per passare a quello dei numeri naturali. Nel prossimo paragrafo verrà mostrato come avviene tale passaggio.

Pag. 4

2. LA CONVERSIONE ANALOGICO-DIGITALE

Per ridurre la complessità dei segnali reali è necessario discretizzare sia nel dominio del tempo che in quello della grandezza rappresentata. La prima operazione si chiama CAMPIONAMENTO e consiste nel registrare un serie di valori della grandezza di interesse in istanti temporali equispaziati da un tempo caratteristico detto TEMPO DI CAMPIONAMENTO (il cui inverso è la FREQUENZA DI CAMPIONAMENTO). La seconda operazione si chiama QUANTIZZAZIONE e consiste nel dividere il campo di variabilità (che deve essere finito) della grandezza in un numero finito di intervalli al più vicino dei quali il segnale campionato (che assume ancora un valore rappresentabile da un numero reale) viene assegnato; per tale rappresentazione possono essere impiegati dei numeri naturali per codificare i livelli, oppure, poiché i sistemi attuali di elaborazione basati su PC impiegano solamente due livelli di tensione, mediante numeri binari. La conversione A/D richiede dunque tre fasi successive: 1. campionamento - discretizzazione del tempo 2. quantizzazione - discretizzazione della ampiezza 3. codifica - uso di “parole” binarie per esprimere il valore del segnale

2.1 IL CAMPIONAMENTO

Campionare un segnale analogico significa prelevare da questo una successione temporale di valori costituita dalla successione dei valori istantanei assunti dal segnale in corrispondenza di particolari istanti, detti "istanti di campionamento". L'intervallo che separa due successivi istanti di campionamento viene chiamato TEMPO DI CAMPIONAMENTO Tc (dall’inglese sampling time) ed il suo reciproco, indicato come fc , prende il nome di FREQUENZA DI CAMPIONAMENTO.

y = f ( nTc ) ; n appartiene all'insieme Z y appartiene all'insieme R

Pag. 5

Quando il segnale analogico presenta delle variazioni sufficientemente lente da poterlo considerare costante entro un breve intervallo di tempo ( la cui durata indicheremo con d ) è possibile effettuare il campionamento prelevando NON il valore istantaneo assunto dal segnale negli istanti di campionamento, ma piuttosto il valore medio calcolato in intervalli di durata d che si succedono ad intervalli Tc. Si potrebbe essere indotti a pensare che il campionamento provochi una riduzione del contenuto informativo del segnale analogico in quanto si perde l'informazione sul valore assunto dal segnale in tutti gli istanti diversi da quelli di campionamento. Il teorema del campionamento ci dice invece che, nelle condizioni ideali enunciate nel prossimo sotto-paragrafo, la esecuzione del campionamento non provoca perdita di informazione. 2.1.1 TEOREMA DEL CAMPIONAMENTO ( O “DI SHANNON” )

Se la trasformata di Fourier (o lo sviluppo in serie di Fourier per segnali periodici) di un segnale a(t) è nulla per tutte le frequenze maggiori di una data frequenza fmax , allora il segnale continuo a(t) può essere univocamente ricavato dalla conoscenza dei suoi valori campionati:

( ) ( ) ( ) ( ) ( ){ }TcNaTcaTcaaty !!= ,...,2,,0

Dove:

max

max

22

1ff

fTc c >!<

Come si può vedere, affinché la ricostruzione sia possibile è indispensabile che il campionamento permetta la acquisizione di campioni separati l'un l'altro da intervalli che devono avere durata inferiore al valore 1/2 fmax. In altre parole la frequenza di campionamento deve essere maggiore del doppio della massima frequenza presente nel segnale: 1/Tc > 2 fmax. Dunque la massima frequenza che è possibile rappresentare mediante un campionamento a frequenza 1/Tc è pari a 1/2Tc (f max < 1/2Tc). Tale frequenza massima rappresentabile viene anche detta FREQUENZA DI NYQUIST. 2.1.2 ALIASING

Per illustrare il fenomeno dell’aliasing consideriamo i seguenti esempi. Primo esempio: Frequenza di campionamento = 20,000 Hz, Frequenza di Nyquist = 10,000 Hz frequenza segnale = 12,500 Hz, alias f' = 7,500

Pag. 6

Effettuando una operazione di Fitting basata sulla sinusoide più semplice che interpola i punti trovati (linea tratteggiata), si trova la sinusoide alias avente periodo 1/7,500 maggiore della sinusoide originaria avente periodo 1/12,500 (linea continua), si veda la figura seguente: Secondo esempio: Nella figura sottostante è mostrato il risultato del campionamento a 1000 Hz su due segnali: uno a 50 Hz (figura in alto) ed uno a 950 Hz (figura in basso). Frequenza di campionamento = 1000 Hz, Frequenza di Nyquist = 500 Hz Frequenza Segnale Frequenza dell’alias 50 Hz 50 Hz (ovvero alias non esistente in quanto

la condizione del teorema di campionamento è rispettata)

950 Hz 50 Hz

Pag. 7

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1-1

-0.5

0

0.5

1

Risultato del Campionamento

[s]

Segnale Analogico a 50 Hz

Segnale Campionato a 1000 Hz

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1-1

-0.5

0

0.5

1

[s]

Segnale Analogico a 950 Hz

Segnale Campionato a 1000 Hz

Altri casi: Frequenza di campionamento = 20,000 Hz Nyquist Frequency = 10,000 Hz f = 12,000 Hz --> f' = 8,000 Hz f = 18,000 Hz --> f' = 2,000 Hz f = 20,000 Hz --> f' = 0 Hz

Figura che rappresenta la costruzione delle frequenze di ALIAS in base alla frequenza di campionamento

Pag. 8

2.2 LA QUANTIZZAZIONE

Da un punto di vista di principio, per quantizzare il segnale si deve innanzitutto definire il campo di valori entro cui il segnale deve mantenersi per permettere una corretta quantizzazione. Per il campo sopra citato, chiamato "campo di misura", vengono usualmente considerate due alternative: - campo unipolare con estremo inferiore nullo ed estremo superiore Ec : campo di

misura = [ 0, +Ec ] - campo bipolare con estremo inferiore -Ec ed estremo superiore +Ec : campo di misura

= [ -Ec, +Ec ].

Definito il campo di misura lo si deve suddividere in un numero arbitrario (ma finito) di intervalli contigui. Anche in questo caso si possono avere due alternative principali: - suddivisione in intervalli di ampiezza costante: quantizzazione uniforme - suddivisione in intervalli di ampiezze diverse: quantizzazione NON uniforme.

Si individua poi il valore centrale di ciascun intervallo in cui è stato suddiviso il campo di misura. Si sostituisce infine al valore di ciascun campione del segnale campionato il valore centrale dell'intervallo in cui esso si trova. La alterazione che al massimo può essere apportata al valore di ciascun campione è pari alla semi-ampiezza dell'intervallo entro cui il valore del campione (analogico) si trova. Se si indica con il simbolo q la ampiezza dell'intervallo la incertezza introdotta dalla fase di quantizzazione (chiamata "incertezza di quantizzazione") risulta di ± q /2.

Esempio di quantizzazione uniforme

Esempio di quantizzazione non uniforme

Quantizzazione uniforme: Facendo riferimento ad una quantizzazione uniforme in N intervalli di uguale ampiezza operata in un campo di misura bipolare [ -Ec, +Ec ] si ha:

q = 2 Ec / N pertanto la incertezza di quantizzazione, che indichiamo con il simbolo e , vale:

Pag. 9

e = ± Ec / N E' evidente che la incertezza di quantizzazione può essere ridotta agendo sia sull'ampiezza del campo di misura, sia sul numero degli intervalli in cui questo viene suddiviso con quantizzazione uniforme. E' poi altrettanto evidente che uno stesso valore della incertezza (assoluta) di quantizzazione ha un peso più o meno rilevante a seconda del valore del campione a cui si riferisce: quanto più il valore del campione è piccolo, tanto maggiore è il valore della incertezza relativa di quantizzazione. Proprio per cercare di contenere a valori "accettabili" la incertezza relativa di quantizzazione sono state introdotte le quantizzazioni non uniformi. Quantizzazione non uniforme: contenimento della massima incertezza relativa di quantizzazione Nella quantizzazione non uniforme gli intervalli in cui viene suddiviso il campo di misura possono avere ampiezza che decresce mano a mano che il livello centrale dell'intervallo diminuisce: sono state sviluppate diverse quantizzazioni non uniformi, ciascuna delle quali caratterizzata per la legge con la quale varia l'ampiezza degli intervalli (leggi lineari, logaritmiche, ecc.). Lo scopo è quello di ridurre la incertezza assoluta per i campioni di minore valore lasciando invece incertezze assolute maggiori per i campioni di maggior valore. In tale maniera l’incertezza relativa risulta essere circa costante.

Figura 2 -La quantizzazione dei livelli genera un errore che, sotto opportune ipotesi, ha tutte le caratteristiche

di un rumore (detto appunto "rumore di quantizzazione")

2.2.1 SOVRACAMPIONAMENTO (OVERSAMPLING)

Se è presente del rumore sovrapposto al segnale analogico, nelle operazioni di campionamento e quantizzazione si possono avere le seguenti situazioni: 1. nel caso in cui il rumore abbia componenti in frequenza maggiori della metà della

frequenza di campionamento (anche detta frequenza di Nyquist) avremmo degli alias che modificano lo spettro ovvero il segnale acquisito. Un rimedio comunemente impiegato è quello di convertire il segnale analogico dopo averlo filtrato con un filtro passa-basso (anche detto Filtro Anti-Aliasing). Rimane comunque il rumore di quantizzazione;

Pag. 10

2. se si ha a disposizione un sistema di campionamento più veloce della frequenza necessaria a campionare il segnale di interesse (comunemente la frequenza necessaria a rappresentare un segnale di interesse è, come regola pratica, almeno 20 volte maggiore della massima armonica presente nel segnale) è possibile sfruttare la presenza di rumore (comunemente presente in numerose applicazioni) a proprio vantaggio: si campiona ad esempio con frequenza 10 volte maggiore e poi ogni dieci campioni si estrae la media. In tale maniera si riduce sia l’effetto del rumore analogico sovrapposto al segnale (ovvero di natura interferente) sia del rumore di quantizzazione in quanto si aumenta la risoluzione di quantizzazione.

Vediamo un esempio di conversione da segnale analogico a segnale digitale nel caso in cui il segnale sia costante e pari a 3.75 (consideriamolo adimensionale visto che il principio si applica a grandezze di qualunque natura), il tempo di campionamento sia pari a 100 (sempre adimensionale) e l’intervallo di quantizzazione sia pari a 1. Nel caso in cui il segnale sia esente da rumore in figura seguente è mostrato il risultato della operazione di conversione analogico-digitale. Nella figura successiva è mostrato il risultato della operazione di conversione analogico-digitale nel caso in cui al segnale sia sovrapposto del rumore dovuto ad un effetto interferente ed il tempo di campionamento sia pari ad 1. Nella figura ancora successiva è mostrata l’operazione di sottocampionamento riportando il tempo di campionamento Tc a 100. Nell’effettuare l’operazione di sottocampionamento i 100 campioni digitali vengono mediati. È evidente la riduzione dell’errore di conversione e l’aumento di risoluzione. Nello zoom successivo è anche evidente il motivo per il quale dopo sovracampionamento e l’operazione di media sui campioni digitali l’accuratezza nella conversione sia aumentata.

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Esempio di conversione di un segnale costante

Tc = 100

Segnale analogico

Segnale digitale

0 100 200 300 400 500 600 700 800 900 1000

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Conversione di un segnale costante con Rumore Interferente

Tc = 100

Segnale analogico

Segnale digitale

Conversione analogico-digitale di un segnale

costante esente da rumore Segnale corrotto da rumore ed operazione di

sovracampionamento e conversione analogico-digitale

Pag. 11

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Risultato del sottocampionamento e della operazione di media

Tc = 100

Segnale digitale senza rumore

Segnale digitale con rumore e sovracampionato

segnale di partenza

200 220 240 260 280 300 320 340 360 380 400

3.2

3.4

3.6

3.8

4

4.2

4.4

ZOOM su Conversione di un segnale costante con Rumore Interferente

Tc = 100

Segnale analogico

Segnale digitale

Segnale risultante dopo l’operazione di

sottocampionamento e media ZOOM su segnale risultante dopo l’operazione di

sovracampionamento e conversione analogico-digitale

2.2.2 ESEMPI DELL'EFFETTO DI CONVERSIONE A/D PER UN SEGNALE SINUSOIDALE

2.3 LA CODIFICA

La fase di codifica consiste nell'associare ad ogni intervallo in cui è stato suddiviso il campo di misura un simbolo numerico (di solito espresso in codice binario) che lo identifica in modo univoco. Dal punto di vista misuristico non vi sono particolarità degne di nota, salvo che il ricordare che il numero di bit usati per la codifica determina il numero massimo

Pag. 12

di intervalli 2n in cui è possibile suddividere il campo pertanto influisce sul valore della incertezza di quantizzazione che può essere ottenuto. Sono in uso diverse codifiche binarie fra le quali le più diffuse sono le seguenti: binario puro: usata per campi unipolari [ 0, +Ec ] con la corrispondenza 0 = 000...000 - +Ec - 1 LSB = 111...111 binario con offset - "OB Code": usata per campi bipolari [ -Ec , +Ec ] con la corrispondenza -Ec = 000...000 - +Ec - 1 LSB = 111...111 La figura sotto riportata mostra un esempio di codifica di tipo "binario con offset":

Si noti come sia il bit più significativo a dare il segno (1 > 0; e viceversa)

I 6 valori del segnale numerico rappresentati sono, nell'ordine con cui sono stati convertiti: 100, 101, 110, 111, 101, 101. Immaginiamo che la conversione, affidata ad un dispositivo elettronico ‘reale’, si trovi nell’istante precedente alla transizione dal quanto 101 al quanto 110. Poiché i circuiti corrispondenti al secondo ed al terzo bit saranno analoghi ma non identici (come del resto in natura non esiste nulla di identico), è ragionevole pensare che commuti uno prima dell’altro. Supponendo che commuti prima il secondo bit, la sequenza di quantizzazione sarà: 101, 111, 110 in cui un valore aggiunto per difetto di sincronizzazione farà registrare un salto il crescita e poi un ridimensionamento del valore assunto dal segnale. 2.3.1 CODIFICA DI GREY

Per evitare errori di lettura invece del codice binario puro vengono utilizzati altri codici, tra i quali il più importante e il codice Gray. Nel codice Gray il passaggio da un numero al successivo avviene sempre variando un'unica cifra binaria, evitando così che nel passaggio tra la lettura di un numero e del successivo possano aversi letture casuali.

Pag. 13

Per illustrare l’utilità del codice di Gray prendiamo l’esempio di un encoder ottico assoluto. Il principio di funzionamento è molto semplice: si ha un disco solidale ad un albero rotante su cui all’interno di una serie di corone circolari sono ricavati settori angolari trasparenti accanto a settori opachi; la risoluzione è raddoppiata nel passaggio da un settore al successivo. A cavallo del disco sono disposti degli emettitori e dei ricevitori di energia luminosa. L’uscita dei sensori di energia luminosa viene ritenuta alta (ovvero corrispondente al numero binario 1) se supera una certa soglia, bassa altrimenti (ovvero corrispondente al numero binario 0). La posizione angolare dell’albero è dunque ricavabile dall’insieme degli stati (alto: 1 oppure basso:0) dei fotoricevitori disposti in corrispondenza delle corone circolari. Esso è dunque uno strumento di misura dell’angolo con uscita direttamente digitale, ovvero la quantizzazione e la codifica sono inerenti alla sua costruzione (il campionamento lo si può far corrispondere all’istante di transizione di un segnale di una corona circolare e non risulta per moti generici equispaziato: maggiore è la velocità di rotazione angolare e maggiore sarà la frequenza di campionamento).

La codifica delle posizioni angolari può essere fatta ad esempio mediante il codice binario naturale (seconda colonna della tabella in figura) oppure mediante il codice di Gray (terza colonna della tabella in figura). Per mostrare l’utilità dell’impiego del codice di Gray rispetto a quello binario consideriamo la transizione dalla posizione angolare 3 alla 4 sia nel caso di codifica binaria che nel caso di codifica di Gray. Nelle due tabelle seguenti è evidente che nel caso di codifica binaria si hanno problemi di salti apparenti a stati impossibili (il moto dell’albero passa repentinamente da uno stato 3 al 7 pur essendo non contigui in quanto i circuiti elettronici a valle dei diversi canali non avranno tutti la stessa velocità sia come tempo di risposta nella transizione di stato che come tempo di sogliatura), mentre nel caso della codifica di Gray ciò non si verifica semplicemente perché la commutazione dei bit avviene uno alla volta.

Posizione angolare decimale:

Posizione angolare binaria:

Commutazione BIT

3 011 7 111 Commutazione bit più

significativo

5 101 Commutazione secondo bit più significativo

4 100 Commutazione bit

Pag. 14

meno significativo

Posizione angolare decimale:

Posizione angolare di Gray:

Commutazione BIT

3 010 4 110 Commutazione bit più

significativo

3. SEGNALI DIGITALI

Dunque, a differenza del segnale analogico, quello digitale è costituito da una funzione "tempo discreta" e "quantizzata". Tale funzione risulta pertanto: 1) definita solamente in un insieme numerabile di istanti "equispaziati" 2) dotata di un codominio costituito da un insieme discreto di valori. d = f ( nTc ) ; n appartiene all'insieme Z , d (a meno di un fattore di scala) appartiene all'insieme Z I segnali numerici, quindi, presentano due fondamentali differenze se confrontati con quelli analogici: sono definiti solamente in corrispondenza di prestabiliti istanti e fra un istante ed il successivo essi risultano "non definiti", possono assumere solamente un prestabilito numero di valori e passano, senza continuità, da un valore all'altro "saltando" gli eventuali valori concessi che si dovessero trovare compresi fra questi. 3.1 PREGI DEL SEGNALE DIGITALE ( ALTRIMENTI DETTO "NUMERICO" )

I segnali digitali godono di alcuni importanti pregi nei confronti di quelli analogici:

Pag. 15

I segnali digitali hanno una maggiore reiezione ai disturbi rispetto ai segnali analogici: I segnali analogici sono costituiti da funzioni continue pertanto possono assumere infiniti valori: il rumore che inevitabilmente si sovrappone al segnale ha pertanto la possibilità di determinare una variazione del valore del segnale composto (segnale utile + rumore) qualunque sia la ampiezza e la potenza del rumore. I segnali digitali, invece, presentano solamente un numero finito di valori separati da una fascia "proibita". Se il rumore non ha ampiezza (e potenza) tale da determinare un superamento della fascia proibita che separa due valori contigui non si riscontra alcuna alterazione del valore. I segnali digitali possono essere elaborati più facilmente dei segnali analogici: Per elaborare matematicamente i segnali analogici si deve ricorrere agli amplificatori operazionali mediante i quale è possibile realizzare (in modo a volte molto approssimato) semplici operazioni (somma, sottrazione, logaritmo ed esponenziale, integrale e derivata rispetto al tempo, ecc.). La realizzazione di funzioni più "elaborate" può richiedere una complessità circuitale eccessiva e tale da introdurre una incertezza non accettabile per gli scopi prefissati. I segnali numerici possono invece essere elaborati mediante microprocessori e microcalcolatori i quali possono permettere la esecuzione di operazioni ed elaborazioni senza richiedere appesantimenti dell'hardware circuitale. Anche in questo caso, però, le operazioni non sono esenti da incertezza: i troncamenti e le approssimazioni introdotte dalla codifica utilizzata dal microprocessore per il trattamento dei dati sono infatti fonte di incertezza, ma si può ricorrere a codifiche (intero, reale a singola o doppia precisione, ecc.) tali da ridurre le incertezze introdotte in modo da renderle compatibili con gli scopi prefissati. I segnali digitali possono essere registrati in maniera più fedele e stabile dei segnali analogici: Per registrare un segnale analogico si può fare uso di nastri magnetici entro cui il segnale viene registrato: le prestazioni delle tecniche di registrazione meno sofisticate vengono penalizzate dal fenomeno della smagnetizzazione del nastro registrato. Risultati migliori si possono ottenere mediante l'uso di tecniche di registrazione basate sulla modulazione di frequenza: la stabilità della velocità di riproduzione del nastro diviene però un vincolo stringente per garantire la fedeltà delle riproduzioni. Ricorrendo all'uso di memorie RAM oppure di dispositivi di memoria di massa a supporto magnetico (hard e floppy-disk) è possibile invece registrare i segnali digitali con estrema facilità. In questo caso, poi, la codifica usata è quella binaria e la presenza di una ampia fascia di separazione fra il livello considerato 0 e quello considerato 1 permette di garantire una stabilità del dato nel tempo e la sua reiezione pressoché totale ai disturbi.