Sunteți pe pagina 1din 12

Cap3.

Conversia Analog-Numerică şi
Conversia Numeric-Analogică

Cele mai multe semnale întâlnite în sistemele tehnice sunt continue: intensitatea luminii care
se modifică odata cu distanţa, tensiunea variabilă în timp, viteza unei reacţii chimice care
depinde de temperatură, etc. Conversia Analog-Numerică (CAN) şi Conversia Numeric-
Analogica (CNA) sunt procedee care permit calculatoarelor numerice să interacţioneze cu
aceste semnale. Informaţia numerică este diferită de corespondenţa ei continuă prin două
aspecte importante: este eşantionată și cuantizată. Ambele procedee restricţionează
informaţia continuă conţinută într-un semnal numeric.
Acest capitol este destinat prezentării managementului informaţiei şi anume:
• Aprecierea informaţie ce trebuie să fie reţinută;
• Aprecierea informaţie ce poate să fie pierdută.
Acest lucru implică selecţia frecvenţei de eşantionare a unui semnal continuu, a numărului de
biţi de reprezentare și a tipului filtrului analog necesar pentru a face legatura între lumea
analogică şi cea digitală.

Conversia analog - numerică


3.1.Cuantizarea

Figura 3.1 arată formele unei conversii analog-numerice tipice. Figura a) reprezintă semnalul
analogic care trebuie digitizat. Acest semnal este o tensiune care variază în timp. Pentru a
reprezenta numerele mai uşor, se presupune că tensiunea poate varia între 0 şi 4.095 V,
corespunzând numerelor între 0 şi 4095 care vor fi produse de un digitizor de 12 biţi.
Diagrama bloc este împărţită în două secţiuni, S/H (sample-and-hold adică eşationare şi
reţinere – ZOH din simulink), şi CAN (conversie analog-numerică). Eşantionarea şi reţinerea
sunt necesare pentru a menţine tensiunea care intră în CAN la o valoare constantă pe durata
coversiei, adică o perioadă de eșantionare.

După cum se observă prin compararea figurilor a) şi b), ieşirii blocului de eșantionare și
reținere (S/H) îi este permis să se modifice doar la intervale periodice, la momente la care ia
valoarea semnalului de intrare este eșantionat. Modificările semnalului de intrare care au loc
între aceste momente de eşantionare sunt complet ignorate. Ca o concluzie, prin eşantionare
variabila independentă timpul din acest exemplu este convertită de la continuu la discret.

1
Deasemenea, CAN generează un număr întreg între 0 şi 4095 pentru fiecare regiune plată din
b). Prin aceasta se introduce o eroare, deoarece fiecare nivel poate sa aiba orice valoare a
tensiunii intre 0 şi 4.095 V. De exemplu, ambele valori 2.56000 V si 2.56001 V vor fi
convertite într-un numar 2560. Cu alte cuvinte, prin cuantizare, variabila dependentă
tensiunea din acest exemplu este convertită de la continuu la discret.

Fig.3.1. Formele de undă ilustrează procesul de digitizare (conversie analog –numerică).


Conversia este separată în două etape pentru a permite ca efectele eşantionării să fie
separate de efectele cuantizării. În prima etapă se face eşantionarea şi reţinerea (S/H) în care
informaţia reţinută este valoarea instantanee a semnalului analogic original la momentul de
eşantionare. În a doua etapă, CAN converteşte tensiunea la valoarea întreagă cea mai
apropiată. Aceasta face ca fiecare eşantion în semnalul digitizat să aibe o eroare de maxim
½ LSB, după cum este prezentat în d). În consecinţă, cuantizarea poate fi modelată ca o
adunare simplă a unui zgomot la semnal.

2
În figura c) sunt prezentate eşantionarea şi cuantizarea împreună. Este important ca acestea să
fie analizate separat pentru că ele modifică semnalul într-un mod specific, de la caz la caz.
Există de asemenea cazuri în care o procedură este folosită fără cealaltă. De exemplu,
eşantionarea fără cuantizare este folosită în filtre cu capacităţi comutate.

3.2.Efectele cuantizării

Orice eşantion din semnalul digitizat poate avea o eroare maximă de 1/2 LSB (cel mai
nesemnificativ bit - denumire ce se foloseşte pentru distanţa dintre nivelele adiacente ale
cuantizării).
Figura d) arată eroarea cuantizării pentru acest exemplu particular, obţinută prin scăderea
graficului din b) din cel din c), printr-o conversie potrivită. Cu alte cuvinte, ieşirea numerică
c), este echivalentă cu intrarea continuă b), plus eroarea de cuantizare d). O observaţie
importantă referitoare la această analiză este că eroarea de cuantizare are aspectul unui
zgomot de fond.

Acesta pune baza unui model de eroare de cuantizare. În cele mai multe cazuri cuantizarea
rezultă din adăugarea unei cantităţi specifice de zgomot aleator la semnal. Zgomotul aditiv
este distribuit uniform între 1/2 LSB, având o medie 0. De exemplu, trecând un semnal
analogic printr-un convertizor de 8 biţi se adaugă un zgomot de fond de: 0,29/256, adică în jur
de 1/900 din întregul domeniu. O conversie pe 12 biţi adaugă 0.29/4096 adică 1/14000, în
timp ce o conversie pe 16 biti adaugă 0.29/65536, adică 1/227000. Deoarece eroarea de
cuantizare este un zgomot aleator, numărul de biţi determină precizia datei. De exemplu, se
poate face afirmaţia: „S-a crescut precizia de la 8 la 12 biţi.”
Acest model este extrem de puternic pentru că zgomotul aleator generat de cuantizare se
adaugă oricărui alt zgomot ce este deja prezent în semnalul analogic.

Conversia este despărţită în două etape care permit eşantionării să fie separată de efectele
cuantizării. Prima etapă este S/H, unde singura informaţie obţinută este valoarea instantanee a
semnalului când are loc eşantionarea periodică. În a doua etapă, CAN converteste tensiunea la
cel mai apropiat număr întreg.

3.3. Dithering
Dithering - oscilaţie corectoare de mică amplitudine, este o tehnică obişnuită pentru a
îmbunătăţi digitizarea semnale continue lent variabile. Cum este prezentat în figura 2.2b un
zgomot aleator de amplitudine mică este adunat la semnalul analogic. În acest exemplu,
3
zgomotul este normal distribuit, având o deviaţie standard de 2/3 LSB, rezultând o
amplitudine vîrf la vârf de aproximativ 3 LSB. Figura c) arată cum adăugarea acestui zgomot
dithering a afectat semnalul digitizat. Chiar dacă semnalul analogic original se modifică cu
mai puţin de 1/2 LSB, zgomotul adăugat determină ca ieşirea digitală să comute aleator între
nivelele adiacente.
Pentru a inţelege cum aceasta îmbunătăţeşte procesul de discretizare, se presupune că
semnalul de intrare este o tensiune constantă de 3.0001 V, adică o zecime din distanţa dintre
nivelele numerice 3000 si 3001. Fără dithering, luând 10000 de eşantioane din acest semnal s-
ar obţine de 10000 de ori acelaşi rezultat, adică valoarea 3000. Repetând experimentul
adaugând o mică cantitate de zgomot de dithering, cele 10000 de valori rezultate vor oscila
între două, sau mai multe nivele, aproximativ 90% dintre ele având o valoare de 3000, iar
10% având o valoare de 3001. Considerând media celor 10000 valori rezultă ceva apropiat de
3000.1. Chiar dacă o singură măsurare are o limită de 1/2 LSB, utilizând statistica unui
număr mare de eşantionari, se poate îmbunătăţi rezultatul. Această situaţie poate fi
concluzionată ca: adunarea unui zgomot conduce la mai multă informaţie.

Circuitele pentru dithering sunt destul de sofisticate, de exemplu un calculator generează


numere aleatoare, pe care le trece prin CNA pentru producerea de zgomot de adunat la
semnalul analogic original.

Figura 3.2. Graficele conversiilor cu dithering. Figura a) arată cum un semnal analogic care
variază mai puţin decât 1/2 LSB poate să ajungă în timpul digitizării la acelaşi nivel.
4
Dithering-ul îmbunătăţeşte această situaţie prin adăugarea unei mici cantităţi de zgomot
aleator la semnalul analogic, cum este arătat în figura b). În acest exemplu, zgomotul
adăugat este normal distribuit. În figura c), zgomotul adăugat face ca semnalul digitizat să
comute între nivele de cuantizare adiacente, aducând mai multe informaţii despre semnalul
original.

După digitizare calculatorul poate scădea numerele aleatoare din semnalul numeric folosind
operaţii aritmetice. Acestă tehnica elegantă este numită subtractive dither, dar este folosită
în cele mai elaborate sisteme. Cea mai simpla metodă, deşi nu totdeauna posibil de realizat
este utilizarea pentru dithering a zgomotului deja prezent în semnalul analogic.

3.4.Teorema eşantionării

Definiţia eşantionării corecte este foarte simplă. Se presupune eşantionarea unui semnal
continuu într-un anumit mod. Dacă se poate reconstitui exact semnalul analogic iniţial din
eşantioane, înseamnă că eşantionarea s-a realizat corect. Chiar dacă datele eşantionarii
apar confuze sau incomplete, dacă se poate executa procedeul invers, informaţia cheie a fost
capturată.

Fig.3.3. Ilustrarea unei conversii corecte şi incorecte. Un semnal continuu este eşantionat
corect dacă eşantioanele conţin toate informaţiile necesare pentru a recrea forma originală a
undei. Figurile a), b) şi c) arată eşantionarea corectă a trei unde sinusiodale. Acest lucru este
neevident întrucât eşantioanele din c) nici nu par să ia forma undei analogice originale. Cu
5
certitudine toate semnale continue din cazurile a), b) şi c) formează o pereche unu la unu
unică cu modelul ei de eşantioane. Aceasta garanteză că reconstrucţia poate avea loc. În d)
frecvenţa undei sinusoidale analogice este mai mare decât frecvenţa Nyquist (o jumătate din
frecvenţa de eşantionare). Rezultatul este un aliasing unde frecvenţa datelor eşantionate este
diferită de frecvenţa semnalului continuu. Din moment ce aliasing-ul a corupt informaţiile,
semnalul original nu poate fi reconstruit din eşantioane.

În figura 3.3 se prezintă câteva sinusoide înainte şi după digitizare. Linia continuă reprezintă
semnalul analogic ce intră în CAN, în timp ce semnele pătrate sunt semnale numerice ce se
obţin la ieşirea CAN. În a) semnalul analogic este o tensiune continuă, ce poate fi considerată
ca un o undă cosinus de frecvenţă zero. Întrucât semnalul analogic este o serie de linii drepte
între eşantioane, toata informaţia necesară pentru reconstrucţia semnalului analogic este
conţinută în datele numerice. În concordanţă cu definiţia, aceasta este eşantionarea corectă.
Unda sinudoidală prezentată în b) are o frecvenţă de 0.09 din frecvenţa de eşantionare.
Aceasta poate să reprezinte, de exemplu o undă sinusoidală de 90 cicli/secunda (Hz), care este
eşantionată la 1000 eşantioane/secundă. Exprimat sub o altă formă, se obţin 11.1 eşantioane
luate de-a lungul fiecarui ciclu al sinusoidei (adică al unei perioade). Această situaţie este mai
complicată decât cazul anterior deoarece semnalul analogic nu poate fi reconstruit prin simpla
desenare a unor linii drepte între punctele datelor. Aceste eşantioane reprezintă intr-adevăr
semnalul analogic iniţial? Răspunsul este da, deoarece nici o altă sinusoidă sau combinaţie de
sinusoide nu ar produce acest model de eşantioane (cu constrângerile arătate mai jos). Aceste
eşantioane corespund unui singur semnal analogic şi în concluzie semnalul analogic poate fi
reconstruit exact. Din nou, un exemplu de eşantionare corectă.
În c) situaţia este mai dificilă prin creşterea frecvenţei undelor sinusoidale la 0.31 din
frecvenţa de eşantionare. Ca urmare, rezultă doar 3.2 eşantioane/ciclu al undei sinusoidale. În
acest caz eşantioanele sunt atât de dispersate încât nici măcar nu par a urmări forma
semnalului analogic. Se pune înrebarea dacă aceste eşantioane reprezintă exact forma undelor
analogice. Din nou, răspunsul este da, şi din exact acelasi motiv. Eşantioanele sunt o
reprezentare unică a semnalului analogic. Toate aceste informaţii necesare pentru
reconstructia formelor continue sunt conţinute în datele numerice. Cum va trebui să se facă
acestea va fi discutat mai târziu în acest capitol. Normal, ar trebui să fie mai sofisticat decât
desenarea de linii drepte între punctele datelor. Oricât de ciudat ar părea, şi acesta este o
eşantionare corectă în concordanţă cu definiţia.

În d) frecvenţa semnalului analogic este mai mare decât 0.95 din frecvenţa de eşantionare,
obţinându-se aproximativ 1.05 eşantioane/ciclu de undă sinusoidală. Aceste eşantioane nu mai
reprezintă datele. Eşantioanele reprezintă o undă sinusoidală diferită de cea conţinută în
semnalul analogic. În particular, unda sinusoidală originală de frecvenţă 0.95 se reprezintă

6
eronat ca o undă sinusoidală de frecvenţă 0.05 în semnalul numeric. Acest fenomen al
sinusoidelor care îşi schimbă frecvenţa în timpul eşantionării este numit aliasing. Sinusoida
îşi asumă altă frecvenţă care nu îi este proprie. Din moment ce datele numerice nu mai sunt
legate în mod unic de un anumit semnal analogic, o reconstruire neambiguă nu este posibilă.
Nu există nimic în datele eşantionate care să sugereze că semnalul analogic original ar fi avut
o frecvenţă de 0.95 şi nu de 0.05. Unda sinusoidală originală şi-a ascuns complet identitatea
adevarată. În concordanţă cu definiţia, acesta este un exemplu de eşantioanare incorectă.

Această inşiruire de cazuri ne duce la teorema eşantionării care mai este numită teorema lui
Shannon sau teorema lui Nyquist după autorii lucrărilor din 1940 pe această temă. Teorema
eşantionării indică faptul că un semnal continuu poate fi eşantionat corect, numai dacă nu
conţine componente ale frecvenţei deasupra jumătatii frecvenţei de eşantionare. De exemplu,
o rată de eşantionare de 2000 eşantioane/secundă necesită ca semnalul analogic să fie compus
din frecvenţe sub 1000 cicluri/secundă. Dacă semnalul are frecvenţe deasupra acestei limite,
acestea vor fi aliate cu frecvenţe intre 0-1000 cicluri/secundă.

Se consideră un semnal analogic compus din frecvenţe între 0 (tensiune continuă) si 3 kHz.
Pentru a digitiza corect acest semnal trebuie să fie eşantionat la 6000 eşantioane/secundă (6
kHz) sau mai mult. Presupunând că este aleasă o frecvenţă de eşantionare 8000
eşantioane/secundă (8 kHz), aceasta permite ca frecvenţele între 0 (tensiune continuă) si 4
kHz să fie reprezentate corect. În această situaţie există patru frecvenţe importante :
1) cea mai inaltă frecvenţă în semnal 3 kHz ;
2) dublul acestei frecvenţe 6 kHz ;
3) frecvenţa de eşantionare 8 kHz ;
4) jumătate din frecvenţa de eşantionare 4 kHz.

Frecvenţa Nyquist sau rata Nyquist reprezintă o jumătate din frecvenţa de eşantionare.
În figura 2.4 este prezentat modul de schimbare al frecvenţelor în timpul fenomenului
aliasing. Punctul cheie îl constituie faptul că un semnal digital nu poate să conţină frecvenţe
mai mari de o jumătate din frecvenţa de eşantionare (frecvenţa Nyquist). Când frecvenţa
undei continue este sub frecvenţa Nyquist, ea este identică cu frecvenţa datelor rezultate prin
eşantionare. Când frecvenţa semnalului continuu este peste frecvenţa Nyquist, fenomenul de
alias schimbă frecvenţa în ceva care poate fi reprezentat din datele eşantionate. Prezentat ca o
linie în zig-zag în figura 2.4, fiecărei frecvenţe continue de deasupra frecvenţei Nyquist îi
corespunde o frecvenţă numerică între 0 şi jumătate din rata eşantionării. Dacă se întâmplă să
fie deja o sinusoidă la această frecvenţă joasă, semnalul alias se va adăuga la el, rezultând o

7
pierdere de informaţii. Fenomenul de alias este o cursă dublă: atât semnalele de joasă
frecvenţă cât şi cele de înaltă frecvenţă îşi pot pierde identitatea. Presupunem că se dă un
semnal numeric conţinând o frecvenţă de 0.2 din rata eşantionării. Dacă semnalul ar fi obtinut
prin eşantionare corectă, semnalul analogic original ar fi trebuit să aibă o frecvenţă de 0.2.
Dacă a avut loc fenomenul de aliasing în timpul eşantionării, frecvenţa numerică de 0.2 ar fi
putut proveni de la un număr infinit al frecvenţelor semnalului analogic: 0.2, 0.8, 1.2, 1.8, 2.2,
etc. Întocmai cum fenomenul de aliasing poate schimba frecvenţa în timpul eşantionării, el
poate de asemenea să schimbe şi faza. De exemplu, la semnalul alias din figura 2.3.d.
Semnalul digital alias este inversat faţă de semnalul analogic original, unul este o undă
sinusoidală, în timp ce celălalt este o undă sinusoidală negativă. Cu alte cuvinte fenomenul de
aliasing a schimbat frecvenţa şi a introdus o schimbare de fază de 18Oº. Doar două schimbări
de fază sunt posibile: Oº (fără schimbarea fazei) şi 18Oº (inversare de fază). Aceste tipuri de
schimbări de fază sunt prezentate în fig.2.4.b.

Figura 3.4 Coversia frecvenţei analogice în frecvenţă numerică în timpul eşantionării.


Semnalele continue cu o frecvenţă mai mică decât o jumătate din frecvenţa de eşantionare
sunt direct convertite în frecvenţe numerice corespondente. În cazul frecvenţelor analogice
mai mari decât jumătate din frecvenţa de eşantionare, apare fenomenul de alias, facând ca
frecvenţa originală să nu mai fie bine reprezentată în datele numerice. În plus, fenomenul de
aliasing poate să schimbe faza semnalului cu 180o .

Conversia numeric analogică

Cea mai simplă metodă pentru conversia numeric-analogică este de a extrage din memorie
eşantioane şi de a le converti într-un tren de impulsuri după cum este prezentat în graficul din

8
figura 2.5.a cu spectrul de frecvenţă corespunzător în fig.2.5.b. După cum a fost enunţat,
semnalul analogic original poate fi reconstruit perfect prin trecerea acestui tren de impulsuri
printr-un filtru trece-jos, cu frecvenţa de tăiere egală cu jumătate din frecvenţa de eşantionare.
Cu alte cuvinte, semnalul original şi trenul de impulsuri au acelaşi spectru de frecvenţă sub
frecvenţa Nyquist (o jumatate din frecvenţa de eşantionare). La frecvenţe mai înalte, trenul de
impulsuri conţine o multplicare a acestei informaţii, în timp ce semnalul analogic original nu
conţine nimic (presupunând că nu apare fenomenul de alias).

Deoarece această metodă este pur matematică, este dificilă generarea impulsurilor înguste în
electronică. Pentru a rezolva această problemă, aproape toate CNA menţin constantă ultima
valoare până când este primit un alt eşantion. Această metodă este numita metoda
elementului de reţinere de ordin zero, echivalentul elementului de eşantionare şi reţinere
folosit în CAN. Elementul de reţinere de ordin zero produce semnalul scară prezentat în figura
2.5.c. Ieşirea unui element de reţinere de ordin unu este formată din drepte ce unesc punctele,
iar ieşirea unui element de de reţinere de ordin doi este formată din arce de parabolă ce unesc
punctele.

Filtrul analogic folosit pentru a converti semnalul de la ieşirea elementului de reţinere de


ordin zero (din fig.2.5.c.), în semnalul reconstruit, din fig.2.5.f., are două sarcini:
1) să îndepărteze toate frecvenţelor de peste o jumatate din frecvenţa de
eşantionare,
2) să amplifice componentele spectrului afectate de elementul de reţinere de ordin
zero (de spectru sinc(x)), adică 1/sinc(x). Aceasta duce la amplificare de aproape
36 % la o jumătate din frecvenţa de eşantionare. Figura 2.5.e. arată caracteristica
de frecvenţă a acestui filtru analogic ideal.

9
Fig.2.5.

La încheirea acestei teme, rezultă următoarea afirmaţie: cantitatea de informaţie conţinută în


semnalul numeric este limitată în două moduri:
1) numărul de biţi/eşantion limitează rezoluţia variabilei dependente, adică,
schimbările mici în amplitudinea semnalului analogic pot fi pierdute în zgomotul
cuantizării.
2) Frecvenţa de eşantionare limitează rezoluţia variabilei independente, adică
evenimente apropiate în semnalul analogic pot fi pierdute între eşantioane. Acesta
este un alt mod de a spune că frecvenţele de peste o jumatate din frecvenţa de
eşantionare sunt pierdute.
10
În concluzie, se poate enunţa un principiu aparent corect referitor la
competiţia dintre semnalele analogice şi cele numerice şi anume : „întrucât
semnalele analogice utilizează parametri continui, ele au o rezoluţie infinit mai bună pentru
variabilele independente cât şi pentru cele dependente”. În realitate nu este deloc adevărat!
Semnalele analogice sunt limitate de aceleaşi două probleme ca şi semnalele numerice:
zgomot si lărgimea benzii (cea mai înaltă frecvenţă permisă în semnal). Zgomotul într-un
semnal analogic limitează măsurarea amplitudinii undei, întocmai cum zgomotul cuantizării o
limitează într-un semnal numeric. De asemenea, posibilitatea de a sesiza evenimente dintr-un
semnal analogic depinde de cea mai înaltă frecvenţă permisă în undă.

Filtre analogice utilizate în conversia datelor

Fig.2.6
Figura 2.6 prezintă, o diagramă a unui sistem DSP cu o structură conformă cu teoria
eşantionării. Înaintea convertorului analog-numeric, semnalul de intrare este procesat de un
filtru trece-jos pentru a îndepărta toate frecvenţele de peste frecvenţa Nyquist (o jumătate din
frecvenţa de eşantionare). Filtrarea este realizată pentru a preveni fenomenul de aliasing din
timpul eşantionării, şi este denumit în mod corespunzător filtru antialias. La cealaltă
extremitate, semnalul digitizat este trecut printr-un convertor numeric-analogic şi printr-un alt
filtru trece-jos care e stabilit la frecvenţa Nyquist. Acest filtru de ieşire se numeşte fitru de
reconstrucţie şi poate include aşa-zisa frecvenţă elementului de reţinere de ordinul zero. Din
păcate acest model simplu este greu de realizat deoarece filtrele electronice au limite de
acelaşi ordin ca şi problema pe care încearcă să o prevină.

De aceste probleme trebuie să fie interesaţi şi cei ce se ocupă doar de partea de prelucrare
numerică a semnalului, deoarece înţelegerea proprietăţilor filtrelor analogice este importantă
pentru un DSP corect.

11
- Caracteristicile fiecărui semnal digitizat vor depinde de tipul filtrului antialias
care a fost folosit.
- Viitorul DSP este de a înlocui hardware cu software. De exemplu, tehnicile
prezentate în acest curs, reduc necesitatea utilizării filtrelor antialias si a celor
pentru reconstruirea semnalului.
- Majoritatea DSP sunt în corelaţie cu proiectarea filtrului digital. O strategie
obişnuită este începerea proiectării cu un filtru analogic echivalent şi apoi
convertirea acestuia în unul digital prin software.

În mod uzual sunt utilizate trei tipuri de filtre: Chebîshev, Butterworth şi


Bessel (numit si filtru Thompson). Fiecare dintre acestea este proiectat pentru
a optimiza un parametru diferit de performanţă. Complexitatea fiecărui filtru
poate fi ajustată prin selecţ ia numărului de poli şi zerouri. Cu câ t mai mulţi
poli are un filtru, cu atât mai complexă este schema electronică şi cu atât are
performanţe mai bune.

12

S-ar putea să vă placă și