Tải bản đầy đủ (.pdf) (18 trang)

BÀI tập lớn mô PHỎNG hệ THỐNG TRUYỀN THÔNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.89 MB, 18 trang )

Học Viện Cơng Nghệ Bưu Chính Viễn Thơng

MƠ PHỎNG HỆ THỐNG TRUYỀN THƠNG

BÀI TẬP LỚN
Giảng viên : Ngơ Thị Thu Trang
Sinh viên
Lớp
Mã SV

: Dương Văn Hải
: D14CQVT3
: B14DCVT077
November 2017


MỤC LỤC
I. MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ ......1
I.1. Mô tả hệ thống mô phỏng và các tham số được sử dụng trong mô phỏng ........................1
I.2. Kết quả mô phỏng và nhận xét đánh giá................................................................................1
I.3. Mã chương trình ....................................................................................................................6

II. MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ .........................................9
II.1. Mô tả hệ thống mô phỏng và các tham số được sử dụng trong mô phỏng.......................9
II.2. Kết quả mô phỏng và nhận xét đánh giá ..............................................................................9
II.3. Mã chương trình .................................................................................................................14

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ



I. MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU
TƯƠNG TỰ
I.1. Mơ tả hệ thống mô phỏng và các tham số được sử dụng trong
mơ phỏng
a, Sơ đồ hệ thống
Tín hiệu
tương tự

Bộ lượng tử
hóa đều

Bộ nén
biê độ

Bộ mã hóa

b, Các tham số mơ phỏng
 Tín hiệu tương tự: s(t ) 

3

 A cos(2 f (t  (1)
k1

k

k1 2

k


t ))

 Mã SV B14DCVT077, vậy theo đề bài có f1  0Hz, f2  7Hz, f3  7Hz
 Đề bài cho: Ai lần lượt là [1, 2, 1]
 Điều biến mã xung PCM:
 Sử dụng kỹ thuật nén – dãn theo luật  = 255
 Tần số lấy mẫu f s  4* f k max = 4*7 =28 Hz

I.2. Kết quả mô phỏng và nhận xét đánh giá
a, Kết quả mô phỏng

Chuỗi bit

1


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

2

 Tín hiệu gốc:
Bieu dien tin hieu goc
4

3

Amplitude

2


1

0

-1

-2

0

0.5

1

1.5
2
time (s)

2.5

3

3.5

 Tín hiệu lượng tử hóa:

Bieu dien tin hieu goc va tin hieu luong tu hoa
4
Tin hieu goc

Tin hieu luong tu hoa
3

Amplitude

2

1

0

-1

-2

0

0.5

1

1.5
2
time (s)

2.5

3

3.5


BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

3

 Tín hiệu sau khơi phục

Bieu dien tin sau khoi phuc
4

3

Amplitude

2

1

0

-1

-2

0

0.5


1

1.5
2
time (s)

2.5

3

3.5

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

4

 Tín hiệu trước và sau khơi phục
Bieu dien tin hieu goc va sau khoi phuc
4
Tin hieu sau khoi phuc
Tin hieu goc

3

Amplitude


2

1

0

-1

-2

0

0.5

1

1.5

2

2.5

3

3.5

time (s)

 Phổ tín hiệu
Pho tin hieu goc


0

10

-5

10

-15

-10

-5

0

5

10

15

5

10

15

5


10

15

Pho tin hieu luong tu hoa

0

10

-5

10

-10

10

-15

-10

-5

0
Pho tin hieu khoi phuc

0


10

-5

10

-10

10

-15

-10

-5

0

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

5

 Sai số
Sai so
0.14

0.12


0.1

error

0.08

0.06

0.04

0.02

0

0

0.5

1

1.5
2
time (s)

2.5

3

3.5


b, Nhận xét đánh giá
 Thực hiện mơ phỏng ta thấy mã hóa PCM có tổn thất
 Sai số lớn khi biên độ tín hiệu thay đổi lớn, sai số nhỏ khi biên độ tín hiệu ít
có sự thay đổi
 Tín hiệu khơi phục có dạng tương tự tín hiệu gốc.

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

6

I.3. Mã chương trình
Assgnmt1.m
%=========================================================================%
%
Sinh vien: Duong Van Hai, Lop D14VT3
%
%
Ma sv: B14DCVT077, f1=0, f2=7, f3=7
%
%
Tan so lay mau Fs= 28 Hz
%=========================================================================%
close all; clear; clc;
f = [0 7 7] % Tan so cua cac thanh phan
% Thuc hien lay mau trong 3 giay (3 chu ki tin hieu); toc do 28 mau/s
Fs = 28;

% Tan so lay mau
t = 0:1/Fs:(3*Fs+1)/Fs;
% Vecto thoi gian
% Tao tin hieu tuong tu theo de bai
s = cos(2*pi*f(1)*(t+ ((-1).^2)*t.^2)) + 2*cos(2*pi*f(2)*(t+((-1).^3)*t.^2))+...
cos(2*pi*f(3)*(t+ ((-1).^4)*t.^2));
%=============================== Cau b ====================================%
mu = 255; % He so nen
M = 32; % so muc luong tu
[y,amax] = mulaw(s,mu); % nen bien do
[code,yq,sqnr] = uniform_pcm(y,M); % luong tu hoa PCM
xq = invmulaw(yq,mu); % giai nen tin hieu
xq = xq*amax; % giai nen bien do
%=============================== Cau c ====================================%
figure(1)
plot(t,s,'r--','linewidth',2);
% Tin hieu goc
title ('Bieu dien tin hieu goc','fontsize',15);
xlabel('time (s)'); ylabel('Amplitude');
figure(2)
hold on
plot(t,s,'r--','linewidth',2); % tin hieu goc
stairs(t,yq); % tin hieu luong tu hoa
title ('Bieu dien tin hieu goc va tin hieu luong tu hoa','fontsize',15);
xlabel('time (s)'); ylabel('Amplitude');
legend('Tin hieu goc','Tin hieu luong tu hoa');
figure(3)
plot(t,xq,'g');
% Tin sau khoi phuc
title ('Bieu dien tin sau khoi phuc','fontsize',15);

xlabel('time (s)'); ylabel('Amplitude');
figure(4)
plot(t,xq,'g'); hold on;
% Tin hieu sau khoi phuc
plot(t,s,'r--','linewidth',2);
% Tin hieu goc
title ('Bieu dien tin hieu goc va sau khoi phuc','fontsize',15);
xlabel('time (s)'); ylabel('Amplitude');
legend('Tin hieu sau khoi phuc','Tin hieu goc');
% Bieu dien pho tin hieu
figure(5)
subplot(3,1,1);
[f,Xf] = spectrocal(t,s); semilogy(f,Xf);grid; % Pho tin hieu goc
title('Pho tin hieu goc');
subplot(3,1,2);
[f,Yf] = spectrocal(t,yq); semilogy(f,Yf);grid; % Pho tin hieu luong tu hoa
title('Pho tin hieu luong tu hoa');
subplot(3,1,3);
[f,Zf] = spectrocal(t,xq); semilogy(f,Zf);grid; % Pho tin hieu khoi phuc
title('Pho tin hieu khoi phuc');

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

7

%=============================== Cau d ===================================%
% Xac dinh va bieu dien sai so tai SNR tuong ung

error = (s-xq).^2;
% Xac dinh sai so
figure(6)
plot(t,error); % Bieu dien sai so
title('Sai so','fontsize',13);
xlabel('time (s)'); ylabel('error');

mulaw.m
function [y,a] = mulaw(x,mu)
% Mu-law nonlinearity for nonuniform PCM
% x - input sequence
% mu - mu constant
% y - compressed output
% a - maximum amplitute
% Written by Nguyen Duc Nhan - 2012
a = max(abs(x)); % tinh bien do max
y = sign(x).*log(1+mu*abs(x/a))/log(1+mu); % tin hieu sau nen bien do

uniform_pcm.m
function [code,xq,sqnr] = uniform_pcm(x,M)
% Uniform PCM encoding of a sequence
% x = input sequence
% M = number of quantization levels
% code = the encoded output
% xq = quantized sequence before encoding
% sqnr = signal to quantization noise ratio in dB
% Written by Nguyen Duc Nhan - 2012
Nb = log2(M);
Amax = max(abs(x));
delta = 2*Amax/(M-1);

Mq = -Amax:delta:Amax;
Ml = 0:M-1;
xq = zeros(size(x));
xcode = xq;
for k = 1:M
ind = find(x > Mq(k)-delta/2 & x <= Mq(k)+delta/2);
xq(ind) = Mq(k);
xcode(ind) = Ml(k);
end
sqnr = 20*log10(.mnorm(x)/norm(x-xq));
code = de2bi(xcode,Nb,'left-msb');

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN TÍN HIỆU TƯƠNG TỰ

8

invmulaw.m
function x = invmulaw(y,mu)
% The inverse of mu-law nonlinearity
% mu - mu constant
% y - compressed input
% x - expanded output
% Written by Nguyen Duc Nhan - 2012
x = sign(y).*((1+mu).^abs(y)-1)/mu;

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT



MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

9

II. MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ
II.1. Mô tả hệ thống mô phỏng và các tham số được sử dụng trong
mô phỏng
a, Sơ đồ hệ thống
Tín hiệu
mã hóa
PCM

Mã đường
CMI

Bộ lọc phát

Kênh
AWGN

Tín hiệu
sau giải mã

b, Các tham số mơ phỏng
 Tín hiệu số:
 Thu được từ nhiệm vụ 1 sau bộ mã hóa PCM
 Mã đường:
 Mã sinh viên B14DCVT077, số cuối cùng là số lẻ nên sử dụng mã đường CMI
 Bộ lọc phát

1
 Có đáp ứng |𝐻(𝑤)|2 =
𝑊 4
1+ (

𝑊𝑐

)

 Thực hiện phương pháp Monte-Carlo để đánh giá hiệu năng với các tham số:
 Độ tin cậy mong muốn pc = 95% (zc = 1,96)
 Khoảng tin cậy sc = 10-6
 Tốc độ lỗi Pe = 10-5
 N  Pe.(1 Pe).(zc / sc )2  40.106 symbols
Hay thực hiện Monte-Carlo với số lỗi tối thiểu 400 lỗi, số kí hiệu tối đa 4.107
symbol.
 Es 
 Cơng thức tính xác suất lỗi lí thuyết: SERtheory _ 4 PSK  2  Q 

N
0



II.2. Kết quả mô phỏng và nhận xét đánh giá
a, Kết quả mơ phỏng
 Câu b và d:
Màn hình MATLAB:
Sinh vien Le Cong Duc – 1021010259 – BTL MPHTTT – Bai 2
Nhap 2 cho y b va d; 3 cho y c: 2

Vector loi ki hieu mo phong ung voi snr tu 0 toi 13dB la

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

10

(Theo cac tham so: Pe = 10^(-5), Sc = 10^(-6), Pc = 95%
==> N = 40*10^6, minerr = 400)
ser =
Columns 1 through 7
0.2917000
0.0448000

0.2472000

0.1968000

0.1551000

0.1124000

0.0765000

0.0051111

0.0015074


0.0004060

0.0000681

Columns 8 through 14
0.0239500
0.0000082

0.0119500

So sánh kết quả mô phỏng đường cong xác suất lỗi với kết quả lý thuyết đối với kiểu
điều chế mà hệ thống sử dụng:

 Câu c:
Tín hiệu sau điều chế và qua kênh AWGN:

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

11

Tín hiệu ban đầu và tín hiệu khơi phục:

Biểu đồ chịm sao:

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT



MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

12

Mẫu mắt tín hiệu:

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MƠ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

13

Phổ tín hiệu:

b, Nhận xét đánh giá

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

14

 Thực hiện điều chế 4-PSK tín hiệu số với kết quả cho thấy tín hiệu bị ảnh
hưởng khá ít bởi nhiễu AWGN khi so với tín hiệu tương tự. Qua đó thấy được
một ưu điểm của truyền dẫn số bới truyền dẫn tương tự là hạn chế lỗi.
 Sai số kí hiệu nhỏ, tại SNR = 13 dB thì SER < 10-5.
 Xác suất lỗi ước tính thu được rất gần với giá trị lí thuyết.


II.3. Mã chương trình
Assgnmt2.m
%=========================================================================%
%
Le Cong Duc, D10VT6, Ma sv: 1021010259
%
%=========================================================================%
close all;clear;clc;
N = 9; M = 4; R = N*10^6; %
Nsym = 40;
%
Es = 2*10^-6; phi = pi/4; %
disp('Sinh vien Le Cong Duc
bt=input('Nhap 2 cho y b va
switch bt

Tham so ban dau
So ki hieu mo phong
Nang luong ki hieu va goc quay pha
– 1021010259 – BTL MPHTTT – Bai 2 ');
d; 3 cho y c: ');

%============================= Cau b va d ===============================%
case 2
%====== Dat gia tri ban dau va gia tri cho vong lap====%
Ns_sym = 1; snrmax = 13; fltsw = 0; Nsym = 10^4;
minerr = 400; maxsym=4*10^7; err=zeros(1,snrmax+1); nsym=err;
snr=0:snrmax; snr_lin = 10.^(snr/10); ser = zeros(1,snrmax);
%=======Vong lap ngoai=================================%
for k = 1:snrmax+1

Done = false;
%=======Vong lap trong=============================%
while ( ~Done )
[t, d, dr, s, s_flt,s_noisy] = Assgnmt2_run(R,M,Nsym,...
Ns_sym,snr(1,k),fltsw,Es,phi); % Thuc hien mo phong
ind = d ~= dr; err(1,k) = err(1,k)+ sum(ind);
nsym(1,k)=nsym(1,k)+ Nsym;
Done = err(1,k)>minerr || nsym(1,k)>maxsym; % Dieu kien dung
end
ser(1,k) = err(1,k)/nsym(1,k);
% Tinh ti le loi ki hieu
end
%=======Xac suat loi uoc tinh (CAU B) =================%
disp('Vector loi ki hieu mo phong ung voi snr tu 0 toi 13dB la')
disp('(Theo cac tham so: Pe = 10^(-5), Sc = 10^(-6), Pc = 95%');
disp('==> N = 40*10^6, minerr = 400)');
format long; ser = single(ser)
%========Bieu dien so sanh voi li thuyet (CAU D) ======%
ser_theory = 2*qfunc(sqrt(snr_lin)); % SER li thuyet
semilogy(snr,ser,'ro-.','linewidth',2),hold on;
semilogy(snr,ser_theory,'b','linewidth',2);
grid on; legend('SER mo phong','SER ly thuyet');
title('Bieu dien xac suat loi ki hieu mo phong va ly thuyet');

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

15


xlabel('snr (dB)'); ylabel('Ps');

%================================ Cau c ================================%
case 3
snr = 8; Tsym = 1/R; fltsw = 0; Ns_sym = 100; Ns=Ns_sym*Nsym;
[t, d, d_demod, s, s_flt,s_noisy] = Assgnmt2_run(R,M,Nsym,...
Ns_sym,snr,fltsw,Es,phi);
[t1, d_demod1, dr1, s1, s_flt1,s_noisy1] = Assgnmt2_run(R,M,...
Nsym,Ns_sym,snr,1,Es,phi);
% fltsw = 1
% Lay mau khoi phuc tin hieu:(tai diem Tsym/2 (giua ki hieu)
dr = d_demod(fix(Ns_sym/2):Ns_sym:end);
%===== Ve bieu do chom sao========%
k = scatterplot(s_noisy,1,0,'bx'); hold on;
scatterplot(s,1,0,'ro',k); legend('Tin hieu thu','Tin hieu phat');
%===== Ve bieu do mat=============%
eyediagram(s,Ns_sym,Ns,Ns_sym/2);
% Tin hieu phat khong loc
eyediagram(s_flt1,Ns_sym);
% Tin hieu phat co loc
eyediagram(s_noisy,Ns_sym,Ns,Ns_sym/2);%Tin hieu thu khong loc
eyediagram(s_noisy1,Ns_sym);
% Tin hieu thu co loc
%===== Ve dang song tin hieu =====%
figure;subplot(2,1,1); plot(t,real(s_noisy),'color','b'); grid on;
hold on; plot(t,real(s),'r','linewidth',3);
subplot(2,1,2); plot(t,imag(s_noisy),'color','c');
hold on; plot(t,imag(s),'g','linewidth',3); grid on;figure;
stem(d,'-.','MarkerFaceColor','b'); %Tin hieu ban dau

hold on; stem(dr,'r-.'); grid on;
%Tin hieu khoi phuc
%===== Ve pho tin hieu ===========%
[f,Sf] = spectrocal(t,s); [fn,Snf] = spectrocal(t,s_noisy);
figure; subplot(2,1,1);semilogy(f,Sf,'r');
title('Pho tin hieu sau dieu che');xlabel('Hz');
subplot(2,1,2);semilogy(fn,Snf,'g');
title('Pho tin hieu qua kenh AWGN');xlabel('Hz');
end

Assgnmt2_run.m
function [t, d, dr, s, s_flt,s_noisy] = Assgnmt2_run(R,M,Nsym,...
Ns_sym,SNR,fltsw,Es,phi)
% R: toc do ki hieu, M: kich thuoc tap ki hieu
% Nsym: so ki hieu, Ns_sym: so mau tren moi ki hieu
% SNR: SNR chua tin hieu thu (Es/No), fltsw: chon thuc hien loc hay khong
Tsym= 1/R;
% Chu ki ki hieu
d
= randint(1,Nsym,M);
% Tao tin hieu ngau nhien
h
= modem.pskmod('M', M, 'SymbolOrder', 'Gray');
dk = modulate(h,d);
% Dieu che 4-PSK (chuyen sang mien phuc)
Tw = Nsym*Tsym;
% Cua so mien tin hieu
Ts = Tsym/Ns_sym;
% Chu ki lay mau
t

= 0:Ts:Tw-Ts;
% Vector thoi gian
Ns = Tw/Ts;
% Tong so mau
%====== Tao tin hieu phat s theo cong thuc de bai cho ============%
if Ns_sym > 1

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT


MÔ PHỎNG HỆ THỐNG TRUYỀN DẪN SỐ

16

for k = 1:Ns
i = fix(t(k)/Tsym+1);
s(1,k) = (sqrt(2*Es/Tsym)*exp(1i*phi))*dk(i);
end;
else
s = dk*(sqrt(2*Es/Tsym)*exp(1i*phi));
end;
s_flt=0;
%====== Thuc hien loc neu fltsw = 1 va truyen qua kenh AWGN =======%
if fltsw == 1
[BTx,ATx] = butter(5,2/Ns_sym);
% Tao tham so bo loc tin hieu phat
[s_flt]
= filter(BTx,ATx,s);
s_noisy = awgn(s_flt,SNR,'measured');
else

s_noisy = awgn(s,SNR,'measured');
end
%====== Giai dieu che tin hieu thu duoc ===========================%
h1 = modem.pskdemod('M', M, 'SymbolOrder', 'Gray','phaseoffset',pi/4);
dr = demodulate(h1,s_noisy);

spectrocal.m: Như bài 1

BÀI TẬP LỚN - MPHTTT| Dương Văn Hải – B14DCVT077 - PTIT



×