33
Universiteti i Prishtines Fakulteti i Inxhinierise Elektrike dhe Kompjuterike Departamentit i Telekommunikacionit Studime Master PUNIM SEMINARIK Lënda: Softueri për Telekomunikime Tema: Detyra seminarike Mentori: Studenti: Dipl.-Ing. Dr. Driton Statovci Gazmend Jakupi Korrik, 2013, Prishtinë

Analiza e sistemeve telekomunikuese me matlab seminar

Embed Size (px)

Citation preview

Page 1: Analiza e sistemeve telekomunikuese me matlab seminar

Universiteti i Prishtines

Fakulteti i Inxhinierise Elektrike dhe Kompjuterike

Departamentit i Telekommunikacionit

Studime Master

PUNIM SEMINARIK

Lënda: Softueri për Telekomunikime

Tema: Detyra seminarike

Mentori: Studenti:

Dipl.-Ing. Dr. Driton Statovci Gazmend Jakupi

Korrik, 2013, Prishtinë

Page 2: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

2

Detyra nr.1(1.9)

Numerically detrminic and plot the magnitude and the phase spectra of a signal x(t) with a

period equal to seconds and definde as

In interval

Zgjidhje.

Analiza e detyrës me lart është bere duke shfrytëzuar veglën Matlab. Fillimisht ne po

shënojmë sinjalin ne domenin kohore për te pare se si duket edhe ne aspektin e shkuarjes se

kodit ne Matlab por edhe si do duket grafikisht. Me poshtë kemi paraqitur kodin ne Matlab. % Më poshtë po shënojmë sinjalin në domenin kohor për detyrën 1.9 t1=[-2*(10^(-7)):0.0000001:0]; t2=[0:0.0000001:5*(10^(-7))]; t3=[5*(10^(-7)):0.0000001:7*(10^(-7))]; x1=zeros(size(t1)); x2=(-10^6)*t2+0.5; x3=zeros(size(t3)); t=[t1 t2 t3]; x=[x1 x2 x3]; plot(t,x)

Pas ekzekutimit te këtij kodi ne Matlab fitojmë figurën e mëposhtme e cila paraqet sinjalin e

dhen ne domenin kohore.

Sipas kërkese ne detyre ne tash do bëjmë analizën ne domenin frekuencor ku do paraqesim

spektrin amplitudor dhe fazor.

Fillimisht do paraqesim spektrin amplitudor . Me poshtë është kodi ne matlab I cili pas

ekzekutimit na jep figurën e me poshtme e cila paraqet spektrin amplitudor te sinjalit ne

domenin e frekuencës.

t1=[-2*(10^(-7)):0.0000001:0];

t2=[0:0.0000001:5*(10^(-7))];

t3=[5*(10^(-7)):0.0000001:7*(10^(-7))];

Page 3: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

3

x1=zeros(size(t1));

x2=(-10^6)*t2+0.5;

x3=zeros(size(t3));

t=[t1 t2 t3];

x=[x1 x2 x3];

plot(t,x)

% Më poshtë po shënojmë transformimin nga domeni kohor në domenin

% frekuencor përmes funksionit fftseq (në fajllin fftseq.m) dhe pastaj

% pllotimin e magnitudës së spektrit frekuencor

echo on

ts = 0.25; % Kohëzgjatja e sinjalit shihet se është 4, andaj edhe BW mirret si 10x1/T=10x1/4=2.5.

fs =1/ts; % Frekuenca e mostrimit sipas Niquistit mirret si fs>=2fm, andaj në këtë rast mirret si 5 Hz.

df =0.01;

[X, x, df] = Fftseq(x, ts, df); % fitimi i FFT

X1 =X/fs; % shkallëzimi

f =[0:df:df*(length(x)-1)]-fs/2; % vektori frekuencor për FFT

plot(f,fftshift(abs(X1)));

xlabel('Frekuenca')

title('Spektri magnitudor i x(t)')

Pas ekzekutimit te këtij kodi ne matlab fitojmë figurën e mëposhtme.

Ndërsa figura për spektrin fazor gjenerohet përmes kodit:

t1=[-2*(10^(-7)):0.0000001:0];

t2=[0:0.0000001:5*(10^(-7))];

t3=[5*(10^(-7)):0.0000001:7*(10^(-7))];

x1=zeros(size(t1));

x2=(-10^6)*t2+0.5;

x3=zeros(size(t3));

t=[t1 t2 t3];

x=[x1 x2 x3];

plot(t,x)

Me poshtë po e shkruajmë skripten nga domeni kohor ne domeni frekuencor

% Më poshtë po shënojmë transformimin nga domeni kohor në domenin

% frekuencor përmes funksionit fftseq (në fajllin fftseq.m) dhe pastaj

% pllotimin e magnitudës së spektrit frekuencor

echo on

Page 4: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

4

ts = 0.25; % Kohëzgjatja e sinjalit shihet se është 4, andaj edhe BW mirret si 10x1/T=10x1/4=2.5.

fs =1/ts; % Frekuenca e mostrimit sipas Niquistit mirret si fs>=2fm, andaj në këtë rast mirret si 5 Hz.

df =0.01;

[X, x, df] = Fftseq(x, ts, df); % fitimi i FFT

X1 =X/fs; % shkallëzimi

f =[0:df:df*(length(x)-1)]-fs/2; % vektori frekuencor për FFT

plot(f,fftshift(abs(X1)));

xlabel('Frekuenca')

title('Spektri magnitudor i x(t)')

plot(f,fftshift(angle(X1)));

Ku si rezultat kemi figurën.

Detyra. 2.

Page 5: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

5

Generate samples of a multivariate Gaussian rëndom process X(t) havinë a specified mean

value and a covariance

Zgjedhje

=

Tash vazhdojmë me kodin ne Matlab i cili duket si me poshtë:

% MATLAB skripta per detyren nr.2

echo on

mx=[0 0]';

Cx=[1 1/2;1/2 1];

x=multi_gp(mx,Cx);

% Computation of the pdf of (x1,x2) follows.

delta=0.3;

x1=-3:delta:3;

x2=-3:delta:3;

for i=1:length(x1),

for j=1:length(x2),

f(i,j)=(1/((2*pi)*det(Cx)^1/2))*exp((-1/2)*(([x1(i) x2(j)]-mx')*inv(Cx)*([x1(i);x2(j)]-mx)));

echo off ;

end;

end;

echo on ;

% Plotting command for pdf follows.

mesh(x1,x2,f);

Ku pas ekzekutimit kemi:

Page 6: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

6

Page 7: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

7

Detyra. 3.

Signal m(t) is defined as:

This message DSB-AM modulates the carriers and the resulting

modulated signal is denoted by . It is assumed that

a. Obtain the expression for

b. Derive the spektra of m(t) and u(t)

c. Assuming that the mesage signal is periodik with period T=0.15 ,determine the

power in the modulatedsignal.

d. If a nise is a added to the modulated signal in part(3) such that the resulting SNR

is 10 dB , find the noise power.

e. If Is used to modulate a carrier with frequency of 250Hz using a DSB scheme.

Demodulate the modulate signal and recover m(t). Plot the results in the time and

frequency domains.

Zgjidhje:

a.

b.

Ndersa

Me poshtë po e shkruajmë skripten ne MATLAB e cila është si me poshtë:

Page 8: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

8

% MATLAB Skripta, per detyren.3.

% Demonstrimin e skriptes per DSB-AM. Sinjali eshte i percaktuar si:

% +1 for 0 < t < t0/3, -2 for t0/3 < t < 2t0/3, zero tjera .

echo on

t0=.15; % kohezgjatja

ts=0.001; % Intervali i mostrimit

fc=250; % frekuenca e bartesit

snr=20; % SNR in dB

fs=1/ts; % Frekuenca e mostrimit

df=0.3; % desired freq. resolution

t=[0:ts:t0]; % vektor ne kohe

snr_lin=10^(snr/10); % SNR lineare

% message signal

m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];

c=cos(2*pi*fc.*t); % sinjal bartes

u=m.*c; % sinjal i moduluar

[M,m,df1]=fftseq(m,ts,df); % transformim furie

M=M/fs; % shkallzim

[U,u,df1]=fftseq(u,ts,df); % transfomimi furie

U=U/fs; % shkallzim

[C,c,df1]=fftseq(c,ts,df); % Transformimi furie

f=[0:df1:df1*(length(m)-1)]-fs/2; % freq. vector

signal_power=spower(u(1:length(t))); % Fuqia ne sijnalin e mmoduluar

noise_power=signal_power/snr_lin; % Compute noise power.

noise_std=sqrt(noise_power); % Compute noise standard deviation.

noise=noise_std*randn(1,length(u)); % Gjenerimi i zhurmes.

r=u+noise; % Futja e zhurmes tek sinlai i moduluar.

[R,r,df1]=fftseq(r,ts,df); % spectrum of the signal+noise

R=R/fs; % scaling

pause % shtyp nje tast qfardo per te pare fuqin e sinjalit te moduluar.

signal_power

pause % Shtyp nje taste te qfardo per rezultat.

clf

subplot(2,2,1)

plot(t,m(1:length(t)))

xlabel('koha')

title('Sinjali')

pause % Shtyp nje taste te qfardo per rezultat.

subplot(2,2,2)

plot(t,c(1:length(t)))

xlabel('Koha')

title('Bartesi')

pause % Shtyp nje taste te qfardo per sinjalin bartes.

subplot(2,2,3)

plot(t,u(1:length(t)))

xlabel('koha')

title('Sinjali i moduluar')

pause % Shtyp nje taste te qfardo per rezulta

% Shtyp nje taste te qfardo per rezulta.

subplot(2,1,1)

plot(f,abs(fftshift(M)))

xlabel('frekuenca')

title('spektri i sinjalit ')

subplot(2,1,2)

plot(f,abs(fftshift(U)))

title('spektri i sinjalit te moduluar ')

xlabel('frekuaenca ')

pause % shtyp qfardo tasti per noise.

subplot(2,1,1)

plot(t,noise(1:length(t)))

title('zhurma')

xlabel('koha')

pause % shtyp qfardo tasti per ta pare noise sample modulated signal and noise.

subplot(2,1,2)

plot(t,r(1:length(t)))

title('sinjali dhe zhurma')

xlabel('koha')

Page 9: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

9

pause % shtyp qfardo tasti per ta pare the modulated signal and noise in freq. domain.

subplot(2,1,1)

plot(f,abs(fftshift(U)))

title('Spektri i sinjalit ')

xlabel('Frequency')

subplot(2,1,2)

plot(f,abs(fftshift(R)))

title('spektri i sinjalit dhe zhurmes')

xlabel('Frekuenca')

Me poshtë pas ekzekutimit te këtij kodi fitojmë figurat e mëposhtme . Ne figurën e

mëposhtme është paraqitur sinjali ne domenin kohor.

Ne figurën e mëposhtme është paraqitur sinjali bartës ne domenin kohore

Ne figurën e mëposhtme është paraqitur sinjali e moduluar ne domeni kohore

Page 10: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

10

Ne figurën e mëposhtme është paraqitur spektrin e sinjalit dhe spektrin e sinjalit te

moduluar.

Page 11: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

11

Ne figurën e mëposhtme është paraqitur spektri i sinjalit dhe spektri sinjalit se bashku

me zhurmën.

Page 12: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

12

Tash do tentojmë te kthehemi ne piken zero aty edhe ku kemi filluar. Do mundohemi ta

rikonstruktojme sinjalin m(t) nga sinjali y(t). Ne aspektin matematik do duket si me

poshtë:

Si rezultat ne domenin frekuencore do te kemi:

Tash do shkruajmë kodin ne Matlab i cili duket:

% Kodi per demodulimin DSB-AM

% Skripta ne matlab per DSB-AM demodulation.

% is +1 for 0 < t < 0.05, -2 for 0.05 < t < 0.1 dhe zero per tjera .

echo on

t0=.15; % Kohzgjatja e sinjalit

ts=1/1500; % Intervali i mostrimti

fc=250; %Frekuenca e bartesit

fs=1/ts; %Frekuenca e mostrimit

t=[0:ts:t0]; % Vektor kohor

df=0.3; % frekuenca e rezulucionit

% message signal

m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];

c=cos(2*pi*fc.*t); % sinjali bartes

u=m.*c; % sinjali i moduluar

y=u.*c; % miksing

[M,m,df1]=fftseq(m,ts,df); % Transformimi furie

M=M/fs; % shkallzimi

[U,u,df1]=fftseq(u,ts,df); % Transformimi furie

U=U/fs; % shkallzimi

[Y,y,df1]=fftseq(y,ts,df); % Transformimi furie

Y=Y/fs; % shkallzimi

Page 13: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

13

f_cutoff=150; % prerja freq. e filtrit

n_cutoff=floor(150/df1); % dizajni i filtrit

f=[0:df1:df1*(length(y)-1)]-fs/2;

H=zeros(size(f));

H(1:n_cutoff)=2*ones(1,n_cutoff);

H(length(f)-n_cutoff+1:length(f))=2*ones(1,n_cutoff);

DEM=H.*Y; % Spektri i filtrit dales

dem=real(ifft(DEM))*fs; % Filteri dales

pause % Shtype nje tast per ta pare efektin

clf

subplot(3,1,1)

plot(f,fftshift(abs(M)))

title('Spektri i sinjalit ')

xlabel('Frekuenca')

subplot(3,1,2)

plot(f,fftshift(abs(U)))

title('Spektri i sinjalit te moduluar')

xlabel('Frekuenca')

subplot(3,1,3)

plot(f,fftshift(abs(Y)))

title('Spektri i daljes Mixer')

xlabel('Frekuenca')

pause % Shtype nje tast per ta pare efektin

clf

subplot(3,1,1)

plot(f,fftshift(abs(Y)))

title('Spektri i daljes Mixer')

xlabel('Frekuenca')

subplot(3,1,2)

plot(f,fftshift(abs(H)))

title('Karakteristikat e filtrit Lowpass ')

xlabel('Frekuenca')

subplot(3,1,3)

plot(f,fftshift(abs(DEM)))

title('Spektri ne dalje te demodulatorit')

xlabel('Frekuenca')

pause % Shtype nje tast per ta pare efektin

clf

subplot(2,1,1)

plot(f,fftshift(abs(M)))

title('Spektri i sinjalit ')

xlabel('Frekuenca')

subplot(2,1,2)

plot(f,fftshift(abs(DEM)))

title('Spektri ne dalje te demodulatorit')

xlabel('Frekuenca')

pause % Shtype nje tast per ta pare efektin

subplot(2,1,1)

plot(t,m(1:length(t)))

title('Sinjali')

xlabel('KOha')

subplot(2,1,2)

plot(t,dem(1:length(t)))

title('Dalja e demodulatorit')

xlabel('Koha')

Pas ekzekutimit te këtij kodi do fitojmë:

Page 14: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

14

Page 15: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

15

----------------------------------------------------------------

Page 16: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

16

Detyra.4.3.

The probabilities of te letters of the alphabet occurring in the printed English are given

in Table.4.1.

a. Determine the entropy of printed Engish.

b. Design a Huffman code for printed English

c. Determine the average codeword length and the efficiency of the Huffman code.

Zgjidhje:

Për fillimi do marrim një shembull me me pak simbole dhe me probabilitet përkatëse te

paraqitura ne tabelën e mëposhtme.

Nëse kemi simbolet dhe probabilitetin e paraqitjes si me poshtë:

Letter Probabaility

A 0.2

B 0.15

C 0.13

D 0.12

F 0.1

G 0.09

I 0.08

J 0.07

K 0.06

a. Tash llogaritim entropinë e cila llogaritet si me poshtë :

b. Atëherë e formojmë kodin e Hufmanit, i cili është si ne figurën e mëposhtme:

Average codeword length is:

Page 17: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

17

Efficincly of Huffman code is:

Tani perms MATLABIT po e bëjmë simulimin e e zgjedhjeve te mësipërme.

Per nen a) po e shkruajmë kodin përmes se cilit e llogarisim entropinë. Kodi duket kështu:

>> %Skripta ne matlab per llogaritjen e Entropis

p=[0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];

h=entropy(p)

%Ku si rezultat fitojm:

h =

3.0731

Tash shkruajmë skripte për llogaritje te L e cila është: >> %Skripta ne matlab per llogaritjen L

p=[0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];

[dict,length]=huffmandict([1:9],p) %Dizajnimi i kodit HUffman.

% si rezultat do te kemi:

dict =

[1] [1x2 double]

[2] [1x3 double]

[3] [1x3 double]

[4] [1x3 double]

[5] [1x3 double]

[6] [1x4 double]

[7] [1x4 double]

[8] [1x4 double]

[9] [1x4 double]

length =

3.1000

>>

>>

Skripta për llogaritjen e entropisë është:

>> %Skripta ne matlab per llogaritjen e Entropis

p=[0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];

H=entropy(p)

%Si rezultat do te kemi:

H =

3.0731

>>

Ndërsa eficienca llogaritet përmes skriptes:

>> %Skripta ne matlab per llogaritjen Eficiences

Page 18: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

18

p=[0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];

[dict,length]=huffmandict([1:9],p); %Dizajnimi i kodit HUffman.

H=entropy(p);

E=H/length

% si rezultat do te kemi:

E =

0.9913

Tash po e zgjerojmë shembullin për komplet alfabetin si dhe hapësirës se lire.

a. Tani llogarisim entropinë e cila llogaritet si me poshtë :

Gjatësia mesatare e “codeword” është:

Eficienca e kodit te Hufmanit është:

Po e kalkulojmë L përmes skriptes se me poshtme:

Page 19: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

19

>> %Skripta ne MATLAB per detyren 4.3

% ne kete detyr do percaktojm entropin e alfabetit se bashku me wordspace

%Dizajnimin e kodit te hufmanit

%percaktimin e mesatares se gajtesis se fjaleve dhe eficiences se kodit te

%huffmanit

% do bejm nje Barazim mes shkornjave dhe numrave ( psh A=1, B=2,.....Z=26,Word space=27)

symbols = [1:27] % Vektrori i alfabetit

prob=[.0642 .0127 .0218 .0317 .1031 .0208 .0152 .0467 .0575 .0008 .0049 .0321 .0198 .0574 .0632 .0152 .0008 .048

4 .0514 .0796 .0228 .0083 .0175 .0013 .0164 .0005 .1859]; % vektori i probabilitetit te simboleve

[dict,length]=huffmandict([1:27],prob) %Dizajnimi i kodit HUffman.

%ku si rezultat do te kemi:

symbols =

Columns 1 through 24

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

24

Columns 25 through 27

25 26 27

dict =

[ 1] [1x4 double]

[ 2] [1x6 double]

[ 3] [1x5 double]

[ 4] [1x5 double]

[ 5] [1x3 double]

[ 6] [1x6 double]

[ 7] [1x6 double]

[ 8] [1x4 double]

[ 9] [1x4 double]

[10] [1x11 double]

[11] [1x8 double]

[12] [1x5 double]

[13] [1x6 double]

[14] [1x4 double]

[15] [1x4 double]

[16] [1x6 double]

[17] [1x10 double]

[18] [1x4 double]

[19] [1x4 double]

[20] [1x4 double]

[21] [1x5 double]

[22] [1x7 double]

[23] [1x6 double]

[24] [1x9 double]

[25] [1x6 double]

[26] [1x11 double]

[27] [1x3 double]

length =

4.1195

Tani përmes kodit te mëposhtëm llogarisim entropinë:

>> %Skripta ne MATLAB per detyren 4.3

% ne kete detyr do percaktojm entropin e alfabetit se bashku me wordspace

Page 20: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

20

%Dizajnimin e kodit te hufmanit

%percaktimin e mesatares se gajtesis se fjaleve dhe eficiences se kodit te

%huffmanit

% do bejm nje Barazim mes shkornjave dhe numrave ( psh A=1, B=2,.....Z=26,Word space=27)

symbols = [1:27]; % Vektrori i alfabetit

prob=[.0642 .0127 .0218 .0317 .1031 .0208 .0152 .0467 .0575 .0008 .0049 .0321 .0198 .0574 .0632 .0152 .0008 .048

4 .0514 .0796 .0228 .0083 .0175 .0013 .0164 .0005 .1859]; % Symbol probability vector

H=entropy(prob) %Dizajnimi i kodit HUffman.

%ku si rezultat do te kemi:

H =

4.0799

>>

Tani është e nevojshme te kalkulojmë eficiencen e kodit Huffman:

>> %Skripta ne MATLAB per detyren 4.3

% ne kete detyr do percaktojm entropin e alfabetit se bashku me wordspace

%Dizajnimin e kodit te hufmanit

%percaktimin e mesatares se gajtesis se fjaleve dhe eficiences se kodit te

%huffmanit

% do bejm nje Barazim mes shkornjave dhe numrave ( psh A=1, B=2,.....Z=26,Word space=27)

symbols = [1:27]; % Vektrori i alfabetit

prob=[.0642 .0127 .0218 .0317 .1031 .0208 .0152 .0467 .0575 .0008 .0049 .0321 .0198 .0574 .0632 .0152 .0008 .048

4 .0514 .0796 .0228 .0083 .0175 .0013 .0164 .0005 .1859]; % Symbol probability vector

[dict,length]=huffmandict([1:27],prob);

H=entropy(prob); %Dizajnimi i kodit HUffman.

E=H/length

%ku si rezultat do te kemi:

E =

0.9904

>>

Me poshtë po paraqesim skripten për dy shembujt te kodimit te simboleve te me

sipërme .

Për shembullin e pare kemi:

>> % Skripta per shembulin e pare

sig=[1 2 3 4 5 6 7 8 9];

Symbols=[1 2 3 4 5 6 7 8 9];

P=[0.2 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];

dict = huffmandict(Symbols,P);

temp=dict;

for i=1: length(temp)

temp {i,2}= num2str(temp{i,2});

end

disp(temp);

hcode= huffmanenco(sig,dict);% Kodimi

dhsig= huffmandeco(hcode, dict)%dekodimi

%si rezultat do te kemi:

[1] '1 1'

[2] '0 0 1'

[3] '0 1 0'

[4] '1 0 0'

Page 21: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

21

[5] '1 0 1'

[6] '0 0 0 0'

[7] '0 0 0 1'

[8] '0 1 1 0'

[9] '0 1 1 1'

dhsig =

1 2 3 4 5 6 7 8 9

>>

Për shembullin e dyte kemi:

>> %Skripta ne MATLAB per detyren 4.3

% ne kete detyr do percaktojm entropin e alfabetit se bashku me wordspace

%Dizajnimin e kodit te hufmanit

%percaktimin e mesatares se gajtesis se fjaleve dhe eficiences se kodit te

%huffmanit

% do bejm nje Barazim mes shkornjave dhe numrave ( psh A=1, B=2,.....Z=26,Word space=27)

sig=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27];

Symbols=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27];

P=[.0642 .0127 .0218 .0317 .1031 .0208 .0152 .0467 .0575 .0008 .0049 .0321 .0198 .0574 .0632 .0152 .0008 .0484 .

0514 .0796 .0228 .0083 .0175 .0013 .0164 .0005 .1859]; % vektori i probabilitetit te simboleve

dict = huffmandict(Symbols,P);

temp=dict;

for i=1: length(temp)

temp {i,2}= num2str(temp{i,2});

end

disp(temp);

hcode= huffmanenco(sig,dict);% Kodimi

dhsig= huffmandeco(hcode, dict)%dekodimi

%si rezultat do te kemi:

[ 1] '0 1 0 0'

[ 2] '0 1 1 1 1 1'

[ 3] '1 1 1 1 1'

[ 4] '0 1 0 1 1'

[ 5] '1 0 1'

[ 6] '0 0 1 1 0 0'

[ 7] '0 1 1 1 1 0'

[ 8] '1 1 1 0'

[ 9] '1 0 0 0'

[10] [1x31 char]

[11] [1x22 char]

[12] '0 1 0 1 0'

[13] '0 0 1 1 0 1'

[14] '1 0 0 1'

[15] '0 1 1 0'

[16] '0 1 1 1 0 1'

[17] [1x28 char]

[18] '1 1 0 1'

[19] '1 1 0 0'

[20] '0 0 1 0'

[21] '1 1 1 1 0'

[22] '0 0 1 1 1 1 0'

[23] '0 0 1 1 1 0'

[24] [1x25 char]

[25] '0 1 1 1 0 0'

[26] [1x31 char]

[27] '0 0 0'

dhsig =

Page 22: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

22

Columns 1 through 18

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Columns 19 through 27

19 20 21 22 23 24 25 26 27

Page 23: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

23

Det 5.3

Let us consider the detector for the signals shown fig. 5.2 , which are equally probable and

have equal energies. The optimum detector for these signals compares and and decides

that a 0 was transmited and that a 1 was transmitted when . Determine the

probability of error.

Zgjidhej:

Page 24: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

24

për shkak se janë ortogonal ne mes veti

),

)- quhet signal to noise ratio(SNR)

Tani krejt ketë çka thamë me larte do ta simulojmë ne MATLAB.

Skripta duket si me poshtë:

% Skripta ne MATLAB per detyren 4

echo on

SNRindB1=0:1:12;

SNRindB2=0:0.1:12;

for i=1:length(SNRindB1),

% Simulimi i shkalles se gabimti

smld_err_prb(i)=smldPe54(SNRindB1(i));

echo off ;

end;

echo on ;

for i=1:length(SNRindB2),

SNR=exp(SNRindB2(i)*log(10)/10);

theo_err_prb(i)=Qfunct(sqrt(SNR));

echo off ;

end;

echo on;

% Pllotimi

semilogy(SNRindB1,smld_err_prb,'*');

hold

semilogy(SNRindB2,theo_err_prb);

Si rezultat do te kemi figurën e mëposhtme:

Page 25: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

25

Page 26: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

26

Detyra 10.

Ketë shembull e kam trajtuar me simulink. Ideja ishte te shohim se si po behet modulimi

DBM-AM. Ku sinjal i masazhit është i njejt me sinjalin bartës për veçse ndryshon ne

frekuencë dhe amplitude. Ne figurën e mëposhtme kemi paraqitur ndërtimin e sistemit për

kryerjen e veprimit te modulimit.

Ku pas ekzekutimit te këtij blloku do fitojmë diagramet përkatëse neper pika te ndryshme te

sistemit te cilat janë:

Forma e sinjalit te mesazhit është paraqitur ne figurën e mëposhtme:

Forma e sinjalit bartës është paraqitur ne figurën e mëposhtme:

Page 27: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

27

Forma e sinjalit ne dalje te modulatorit 1 është paraqitur ne figurën e mëposhtme:

Forma e sinjalit ne dalje te modulatorit 2 është paraqitur ne figurën e mëposhtme:

Spektrat frekuencore te sinjaleve neper kika te ndryshme janë paraqitur ne figurën e mëposhtme:

Page 28: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

28

Detyra 10.3

In section 7.3.2 differential phase-shift keying was introduced as a method to enable detection without

carrier-phase estimation. Build a Simulink model for binary differential phase shift keying with NRZ

rectangular pulses basen on the BPSK model in Figure 10.2.

Observe if error-free detection is possible in the case of carrier-phase offset.

Page 29: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

29

Pas simulimit te këtij sistemi do fitojm rezultatete e mëposhtmete cilat jane marre ne

momente te caktuara kohore:

Page 30: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

30

Page 31: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

31

Page 32: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

32

Page 33: Analiza e sistemeve telekomunikuese me matlab seminar

Detyra seminariek Softueri për Telekomunikime

33