Sunteți pe pagina 1din 6

Universitatea POLITEHNICA din Timişoara

Facultatea de Electronică şi Telecomunicaţii


Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

CONVERTOARE ANALOG - NUMERICE

Convertoarele sunt circuite folosite în sistemele de achiziţii de date şi au rolul


de a face conversia unui anumit tip de semnal într-un alt tip de semnal. După tipul
conversiei se disting două tipuri de convertoare:
- convertoare analog - numerice (CAN), care realizează transformarea unui
semnal analogic într-un semnal digital (numeric);
- convertoare numeric - analogice (CNA), care relizează transformarea unui
semnal digital întrun semnal analogic.

Convertor analog - numeric cu aproximaţii succesive

Convertorul cu aproximaţii succesive este unul dintre cele mai utilizate


convertoare datorită timpului scăzut de conversie şi a preciziei ridicate. Schema bloc este
prezentată în fig. 1.

Fig.1

Blocurile prezente în această schemă au următoarea semnificaţie:


C - comparator;
BLCT - blocul logicii de comandă şi transfer;
GT - generator de tact;
CNA - convertor numeric analogic.

La intrarea CAN avem tensiunea continuă Ux, ce urmează a fi convertită, iar la


Universitatea POLITEHNICA din Timişoara
Facultatea de Electronică şi Telecomunicaţii
Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

ieşire avem secvenţa numerică Nx = a1a2...an.


Pentru CNA, relaţia de legătură între secvenţa numerică prezentă la intrarea
acestuia şi tensiunea de la ieşirea sa este:


U CNA  U REF  a1  2 1  a 2  2 2  ...  a n  2  n 
unde ai SUNT biţii furnizaţi de BLCT.
Comparatorul C prezent în schemă, compară tensiunile prezente la cele două intrări
ale sale şi în funcţie de rezultatul comparării furnizează la ieşirea sa o tensiune echivalentă
nivelului de „0” logic respectiv „1” logic. Pentru acest comparartor se pot scrie relaţiile:

Ux > UCNA => Uo = „1”


Ux < UCNA => Uo = „0”

Conversia CAN cu aproximaţii succesive se realizează pe durata a n paşi, unde n


este numărul de biţi al cuvântului binar de ieşire al CAN, respectiv numărul de biţi prezent
la intrarea CNA.
In primul pas, BLCT pune iniţial bitul a1=1, ceilalţi biţi fiind pe 0 logic. La intrarea
CNA vom avea cuvântul binar: 100...0 => U CNA  U REF 2 . Apoi se compară prin
intermediul comparatorului C tensiunea de intrare a CAN, Ux, cu tensiunea UCNA. Nivelul
logic prezent la ieşirea comparatorului se memorează în bitul a1 şi rămâne memorat până
la finalul conversiei => a1= „0” dacă Ux < UCNA. respectiv a1= „1” dacă Ux > UCNA .
In pasul 2, BLCT pune bitul a2 =1, bitul a1 fiind setat din pasul 1. Se repetă procedura
descrisă în pasul 1, cu observaţia că la intrarea CNA avem secvenţa numerică a1100...0. La
terminarea acestui pas se setează bitul a2. In acelaşi mod se setează pe rând biţii ai, la
finalul celui de-al n-lea pas fiind terminată conversia şi determinată secvenţa numerică
corespunzătoare tensiunii Ux şi anume Nx = a1a2...an.
Programul MATLAB prezentat mai jos realizează simularea funcţionării unui
CAN cu aporximaţii succesive:

%convertor cu aproximatii succesive


%tensiunea de referinta > tensiunea necunoscuta

%OBIECTIVE:

%-Explicarea functionarii convertorului, conform schemei din lucrare

%-Ce se observa daca modificam numarul de biti ai convertorului

%-Calculati valorile primilor 4 biti ai secventei Nx, corespund cu cei afisati de program?

%-Explicarea programului

clear all;

Uref=16; %tensiunea de referinta

Ux=4.2; %tensiunea necunoscuta


Universitatea POLITEHNICA din Timişoara
Facultatea de Electronică şi Telecomunicaţii
Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

nr_biti=10;

Ucna=0;
for i= 1:nr_biti

Ucna_intermediar=0;

Ucna_intermediar = Uref * (2^(-i)); %calcul valoare de adaugat sau de scazut din Ucna,

Ucna= Ucna + Ucna_intermediar; %crestem pe Ucna cu valoarea de adaugat

if Ucna > Ux %daca am depasit tensiunea necunoscuta, scadem valoarea pe care am adaugat-o anterior

Ucna_afisare(i)=Ucna;

Nx(i) = 0; %bitul a[i] este 0, dupa algoritm

Ucna = Ucna - Ucna_intermediar;

else %daca nu am depasit, este ok si mai putem creste Ucna la pasul urmator
Nx(i) = 1;

Ucna_afisare(i)=Ucna;

end

end

%creare figura
for j= 1:nr_biti

Ux_afisare(j)=Ux;

end

plot(Ux_afisare,'r'); axis tight;

hold on; grid on;

stairs(Ucna_afisare,'b','LineWidth',1.5);

xlabel('Pasi');

Ylabel('Volti');

title('CAN cu aproximatii succesive');

Nx_afisare=num2str(Nx);

Aproximarea=num2str(Ucna);

text(1.5,Ux-0.5,['Nx = ',num2str(Nx)],'EdgeColor','red','FontWeight','bold');

text(1.5,Ux-0.7,['Ucna = ',num2str(Aproximarea)],'EdgeColor','red','FontWeight','bold');

Convertor analog - numeric cu urmărire


Universitatea POLITEHNICA din Timişoara
Facultatea de Electronică şi Telecomunicaţii
Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

Fig.2

Schema bloc a CAN cu urmărire este prezentată în fig. 2


Semnificaţia blocurilor prezente în schemă este următoarea:
C - comparator;
OP - oscilator pilot;
P1,2 - porţi logice ŞI;
I - inversor;
CNA - convertor numeric - analogic;
N. R - numărător reversibil.

Comparatorul C are funcţionarea similară cu cea prezentată în paragraful anterior,


dată de relaţia (2). Un element important al schemei îl prezintă numărătorul reversibil
NR. Acesta are două intrări notate prin Ns - „numără sus” şi Nj -„numără jos”. Acest
numărător numără crescător impulsurile prezente la intrarea Ns, şi descrescător
impulsurile prezente la intrarea Nj, conţinutul numărătorului fiind dat de Nx. Cele două
porţi SI şi inversorul I au rolul de a selecta una din cele două intrări ale
numărătorului. Astfel, dacă la ieşirea comparatorului avem Uo =”1”, la ieşirea porţii P1 avem
„1” logic, iar la ieşirea inversorului I respectiv a porţii P2 avem „0” logic, caz în care este
selectată intrarea Ns a numărătorului, deci acesta numără crescător (conţinutul său creşte).
In cazul Uo= ”0”, este selectată intrarea Nj a numărătorului, conţinutul acestuia scăzând.
Cu alte cuvinte numărătorul îşi creşte conţinutul atâta timp cât Ux > UCNA şi scade
conţinutul dacă Ux < UCNA.
Universitatea POLITEHNICA din Timişoara
Facultatea de Electronică şi Telecomunicaţii
Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

%convertor cu urmărire
%OBIECTIVE:
%-Explicarea functionarii convertorului, conform schemei din lucrare
%-Explicarea programului
%-Modificati programul, astfel incat, tensiunea de urmarit sa fie constanta
%-Comparati performantele celor doua convertoare, in cazul aceleiasi tensiuni constante
%-De cine depinde functionarea corecta a convertorului?
%-Modificati amplitudinea si frecventa semnalului de intrare, astfel incat sa putem evidentia functionarea incorecta
% a convertorului.
%TEMA-implementati 2 programe in matlab, care sa converteasca un semnal rectangular.

%-Se pot utiliza functiile square si repmat.

clear
n=8; %numarul de biti ai convertorului
N=500; %capacitatea numaratorului
Uref=10;
delta=Uref/2^n; %pasul cu care convertorul urmareste tensiunea Ux
Ucna=0;%initializari
Uc=0;
Ucna1=0;
for k=1:N %bucla care realizeaza conversia
Ux(k)=1.1+.2*sin(.05*pi*k); %tensiunea aplicata CAN
if(Ux(k)>Ucna) %instructiune de conditionare ce simuleaza comparatorul
Ucna=Ucna+delta;
Uc=1;
Ucna1(k)=Ucna;
else
Ucna=Ucna-delta;
Uc=0;
Ucna1(k)=Ucna;
end

end
stairs(Ucna1,'r','LineWidth',1.5);
hold on;grid on;
Universitatea POLITEHNICA din Timişoara
Facultatea de Electronică şi Telecomunicaţii
Departamentul Măsurări şi Electronică Optică
www.meo.etc.upt.ro

plot(Ux);
xlabel('Capacitate numarator');
ylabel('Volti');
title('CAN cu urmarire');

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