You are on page 1of 2

BÀI TẬP VỀ NHÀ 1

Họ tên: Hoàng Thị Thu Trang


Mã sinh viên: 21013356

Đề bài: Sử dụng MATLAB tạo 1 tín hiệu hình sin với tần số 0.2 Hz, biên độ 10 V. Cho
tín hiệu này đi qua kênh AWGN với SNR 0.5 dB bằng 2 cách:
Cách 1: sử dụng hàm awgn
Cách 2: sử dụng hàm tạo số ngẫu nhiên theo phân phối chuẩn randn
Hãy vẽ lại tín hiệu gốc ban đầu và tín hiệu đã bị nhiễu trong khoảng từ [0, 2 ] để ở 2
trường hợp trên cùng 1 hình để so sánh.
➔Mã code:
tanso = 0.2;
chuki=1/tanso;
bien_do = 10;
t = 0:0.01:100;
SNR=0.5;
% Tạo tín hiệu hinh sin
tin_hieu_goc = bien_do * sin(2 * pi * tanso * t);
% Cách 1: Sử dụng hàm awgn
tin_hieu_nhiem_awgn = awgn(tin_hieu_goc, SNR);
subplot(2,1,1);
plot(t, tin_hieu_goc,'b', t, tin_hieu_nhiem_awgn, 'r');
grid on;
legend('original', 'awgn');
xlabel('Thoi gian');
ylabel('Bien do');
title('Tin hieu goc va tin hieu bi nhieu (AWGN)');
xlim([0, chuki]);
%Cách 2: sử dụng hàm tạo số ngẫu nhiên theo phân phối chuẩn
randn
noise = sqrt(10^(-SNR/10)) * randn(size(tin_hieu_goc));
tin_hieu_nhieu_randn = tin_hieu_goc + noise;
subplot(2,1,2);
plot(t, tin_hieu_goc,'b', t, tin_hieu_nhieu_randn, 'g');
grid on;
legend('original', 'awgn');
xlabel('Thoi gian');
ylabel('Bien do');
title('Tin hieu goc va tin hieu bi nhieu (RANDN)');
xlim([0, chuki]);

➔Kết quả:

You might also like