Sunteți pe pagina 1din 5

Laborator Comunicaii digitale

COMUNICAII DIGITALE N BANDA DE BAZ I TRECE-BAND


OBIECTIVE
n acest lucrare de laborator se vor reuni diferite blocuri, reprezentnd elementele unui sistem de comunicaii, pentru a
se obine modelul unui sistem de comunicaii digitale. Se va acorda atenie:
structurii blocurilor componente ale sistemelor de comunicaii n banda de baz i trece-band;
relaiilor funcionale inverse corespunztoare conversiilor A/D i D/A i elementelor emitorului i receptorului;
codrii difereniale;
stabilirii parametrilor emitorului, pe baza caracteristicilor canalului de comunicaii.
PARTEA PRACTIC (MATLAB)
>>cd d:\cd\com_func
>>start
7
A.
Introducere
A.1
Se vor prezenta transformrile efectuate asupra formei de und analogice, pn la codarea de canal. Schema
bloc din Figura 1 prezint modalitatea n care semnalul analogic este trasformat, pentru nceput n form binar i apoi
ntr-o form compatibil caracteristicilor canalului de comunicaii. Blocurile utilizate sunt: convertorul A/D i emitorul,
simulate de funciile a2d i tx.
A.2
Se vor prezenta transformrile efectuate asupra ieirii canalului de comunicaii, pn la recuperarea formei de
und analogice transmise. Schema bloc din Figura 2 prezint modul de prelucrare a ieirii canalului de comunicaii de
ctre receptor, n vederea recuperrii secvenei binare transmise. Secvena binar estimat este apoi convertit ntr-un
format analogic. Blocurile utilizate sunt: receptorul i convertorul D/A, simulate de funciile rx i d2a.
Observaii:
Funciile a2d, d2a, tx i rx au fost proiectate cu scopul simplificrii i automatizrii sarcinilor corespunztoare
fiecarui bloc component. Pentru a obine mai multe informaii despre fiecare funcie, utilizati comanda help ;
Ieirea emitorului este aplicat canalului de comunicaii, simulat de funcia channel i este apoi utilizat ca
intrare pentru receptor ;
In funcie de caracteristicile canalului, vor trebui modificate momentele de eantionare a formei de und de la ieirea
filtrului de recepie. n acest scop, se poate utiliza diagrama n form de ochi, corespunztoare semnalului de la ieirea
filtrului de recepie. Una din opiunile funciei rx este de a se afia diagrama n form de ochi i de a se solicita
utilizatorului stabilirea momentelor optime de eantionare i valorii optime a tensiunii de comparare. Pentru mai multe
detalii, utilizai comanda help.
B.
Conversia A/D si D/A
Considerm cazul transmiterii unui mesaj pe un canal de comunicaii. Dac semnalul corespunztor mesajului este
analogic, el trebuie convertit ntr-o form digital, echivalent. Forma de unda analogic este trasformat ntr-o secven
eantionat de date. Funciile de filtrare i eantionare ilustrate n Figura 1 nu sunt incluse. Reamintim c procesul de
conversie a semnalului analogic n unul de date binare este realizat de urmtoarele funcii:
compresie cu lege "": mu_law (opional);
cuantizare uniform: quantize;
codare binar natural a sursei de date binare: bin_enc;
codare Gray a sursei de date binare: bin2gray (opional);
conversie P/S: par2ser.
Funcia a2d include toate funciile de mai sus i direcioneaz semnalele analogice de intrare spre funciile
corespunztoare, n concordan cu parametrii specificai de utilizator.
Corespunztor, datele binare de la ieirea receptorului trebuie convertite n form analogic. Funcia d2a realizeaz
conversia D/A i implic urmtoarele funcii:
conversie S/P: ser2par;
decodare Gray a sursei de date: gray2bin (opional);
decodare binar natural a datelor binare: bin_dec;
expandare cu lege "": mu_inv (opional).

Forma de und analogic

Filtru anti-aliasing

Eantionare

Compresie
cu lege

Funcii MATLAB utilizate:

mu_law

Cuantizare
uniform

quantize

Codarea
sursei de date

bin_enc
bin2gray

Conversie P/S

par2ser

A2D

Codare
diferenial

TX

diff_enc

Codare
de canal

wave_gen
modulate

Spre canalul de comunicaii


Figura 1
Pentru a verifica faptul c funciile a2d i d2a sunt inverse una celeilalte, generai 100 de eantioane dintr-un semnal
vocal:
>>s=speech(100);
>>s_binary=a2d(s,6);
>>s_analog=d2a(s_binary,6);
Verificai c semnalul s_binary este ntr-adevar o secven binar, afindu-i primele 10 valori:
>>s_binary(1:10)
Comparai semnalul vocal original s cu ieirea procesului de conversie A/D - D/A, reprezentat de semnalul
s_analog:
>>subplot(311), waveplot(s)
>>subplot(312), waveplot(s_binary)
>>subplot(313), waveplot(s_analog)
Procesul de conversie a semnalelor analogice n unele digitale i apoi invers, napoi n form analogic, introduce erori?
Dac rspunsul este afirmativ, definii diferitele tipuri de distorsiuni ce apar n procesele de conversie A/D D/A i
definii care parametru are un efect direct asupra minimizrii distorsiunilor.

Ieirea canalului
de comunicaii

mult_car

Demodulare

RX

Funcii MATLAB utilizate:

Filtru de
recepie

match
lpf

Detecie

detect

Decodare
diferenial

diff_dec

Conversie S/P

ser2par

D2A
Decodarea sursei
de date

Expandare cu
lege ""

gray2bin
bin_dec

mu_inv

FTJ de ieire

Form de und analogic


Figura 2
C.
Codarea diferenial
C.1
Generai 100 de eantioane ale unei sinusoide, convertii-le n form digital i obinei o secven de date
binare, n vederea transmiterii ei pe un canal de comunicaii, n banda de baz, utiliznd codul de linie Manchester:
>>x=sin(2*pi*400*[1:100]/SAMPLING_FREQ);
>>x_pcm=a2d(x,6,'uniform','gray');
>>xw=tx(x_pcm,'manchester','no_diff',1000);
Funcia tx simuleaz funcionarea blocul de emisie (vezi Figura 1). Ultimii doi parametri ai acestei funcii specific
faptul c nu se realizeaz o codare diferenial i c rata datelor binare are valoarea de 1 kbps. Transmitei semnalul xw
pe un canal de comunicaii inversor, avnd banda de 19000 Hz i o putere a zgomotului de 0.01 W:
>>y=-channel(xw,1,0.01,19000);
Decodai ieirea canalului cu un filtru adaptat, urmat de detecie i conversie D/A. Comparai formele de und x i
x_analog:
>>x_digital=rx(y,'manchester');
>>x_analog=d2a(x_digital,6,'uniform','gray');
>>clf, subplot(311), waveplot(x)
>>subplot(312), waveplot(x_analog)

C.2
Reluai secvenele de operaii de mai sus, utiliznd acum i codarea diferenial. Modificai parametrii de intrare
ai funciilor tx i rx, ca mai jos:
>>u=tx(x_pcm,'manchester','diff',1000);
>>z=-channel(u,1,0.01,19000);
>>u_digital=rx(z,'manchester','diff');
>>u_analog=d2a(u_digital,6,'uniform','gray');
>>subplot(313), waveplot(u_analog)
Comparai formele de und x, x_analog i u_analog.
Care tip de semnal: analogic sau digital este mai important s fie protejat la inversiunea fazei cu 180o ?
D.
Comunicaii n banda de baz
D.1
Generai 1000 de eantioane binare, n vederea evalurii ratei de eronare a biilor (BER), a unor date semnalizate
n formatul NRZ unipolar i, respectiv NRZ polar, avnd rata de bit Rb=1 kbps i transmise pe un canal de comunicaii, n
banda de baz:
>>b=binary(1000);
>>Rb=1000;
>>u=tx(b,'unipolar_nrz',Rb);
>>p=tx(b,'polar_nrz',Rb);
Considerai un canal de comunicaii, de tip filtru trece jos ideal, avnd parametrii:
ctigul canalului=0 dB;
puterea zgomotului de pe canal n2=1 W;
banda canalului=19 kHz.
Generai ieirea canalului i estimai secvena binar transmis, utiliznd funcia rx:
>>ch_out=channel(A*ch_in,1,1,19000);
>>clf
>>rx(ch_out,'line_code_name',-1,b);
unde ch_input este forma de und u, respectiv p, reprezentnd secvena binar b, semnalizat NRZ unipolar,
respectiv NRZ polar. Valoarea parametrului A din linia de comand de mai sus va modifica amplitudinea formei de und
i, consecutiv, puterea semnalului transmis. Calculai valoarea BER pentru valorile lui A din Tabelul 1:
Tabelul 1
A
[V]

NRZ unipolar
Pe empiric
Q( E b / N 0 )

NRZ polar

Q( 2 E b / N 0 )

Pe empiric

0.3
0.4
0.5
0.6
0.7
Comparai valorile Pe determinate empiric cu valorile teoretice i reprezentai-le grafic.
D.2

Considerai urmtorul canal de comunicaii n banda de baz:


>>ch_out=channel(ch_in,1,2,19000);
Determinai valoarea parametrului N0, corespunztoare parametrilor n2 =2 i Rb=1 kbps. Dac intrarea canalului este u,
determinai energia medie pe bit de la emisie Eb, necesar obinerii unei valori a ratei de eronare a biilor Pe= 10-2. Pentru
valoarea astfel calculat, determinai empiric valoarea BER, n cazul utilizrii intrrii u i comparai rezultatele. Repetai
procedura i pentru intrarea p, semnalizat NRZ polar.
E.
E.1

Comunicaii trece-band
Generai 100 de eantioane dintr-un semnal vocal:
>>s=speech(100);
n continuare, vom genera o reprezentare binar pentru forma de und s, n vederea transmisiei ei pe un canal treceband, de tip filtru trece band ideal. Parametrii emitorului i canalului de comunicaii sunt:

Conversia A/D (a2d):


cuantizare neuniform, cu lege de compresie "", pe 8 bii;

Emitorul (tx):
codare diferenial a secvenei binare;
tipul de modulaie digital: PSK;
rata datelor binare: Rb=100 kbps;
frecvena purttoare: fC=1 MHz;
Canalul de comunicaii (channel):
ctigul canalului: 0 dB;
puterea zgomotului de pe canal: 1 W;
banda utilizabil: [600 kHz, 1400 kHz];
Rata de eronare a biilor impus: Pe=10-2.

Determinai valoarea amplitudinea formei de und de la emisie A, necesar obinerii ratei de eronare a biilor impuse.
Relaia teoretic de calcul este: Pe= Q( 2E b / N 0 ) .
>>BINARY_DATA_RATE=1e5;
>>SAMPLING_FREQ=4e6;
>>sbe=a2d(s,8,'mu_law','gray');
>>ch_in=tx(sbe,'psk',1e6,'diff');
>>ch_out=channel(A*ch_in,1,1,[6e5,1.4e6]);
>>sbr=rx(ch_out,'psk',-1,'diff',sbe);
>>sr=d2a(sbr,8,'mu_law','gray');
>>clf, subplot(211), waveplot(s), subplot(212), waveplot(sr)

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