Chủ Nhật, 12 tháng 7, 2020

5.8 Mô phỏng kênh thông tin - Kênh fading Rayleigh

Đề bài: Hãy tạo kênh truyền fading Rayleigh theo 3 cách như trên và kiểm chứng với lý thuyết.

Giải: Tùy thuộc vào tham số hiệu năng hay đặc tính hệ thống mà chúng ta cần nghiên cứu cho hệ thống truyền thông, chúng ta sẽ tạo ra hệ số kênh truyền h hay chỉ cần tạo ra độ lợi kênh truyền tức thời 

Cụ thể, ngoại trừ khi cần mô phỏng tỷ lệ lỗi bit hay tỷ lệ lỗi symbol, chúng ta cần phải tạo hệ số kênh truyền h , các tham số hiệu năng khác, ví dụ như xác suất dừng hay dung lượng kênh truyền, chúng ta chỉ cần .
Trong bài 5.8, chúng ta sẽ tạo ra h trong cả ba trường hợp. Điểm cần chú ý khi tạo ra biến ngẫu nhiên là cần chú ý các tham số đầu vào cho các hàm tạo biến ngẫu nhiên cho phù hợp.
Nhắc lại là độ lợi kênh truyền trung bình, ta sẽ có các lưu ý sau: 
  • Cách 1: thành phần thực và thành phần ảo của h trong cách này sẽ có biên độ là  ,
  • Cách 2: |h| có tham số điều chỉnh (scale parameter) là  
  • Cách 3:  có tham số trung bình là vì nếu X là biến ngẫu nhiên hàm mũ có
tham số (rate parameter)  thì  có phân bố Rayleigh với tham số (scale
parameter)  


==================== CODE MATLAB ====================

clear all
clc
SNRdB = (0:3:30)';
SNR = 10.^(SNRdB/10);
lambda_h = 2;
gth = 1;

% Mo phong
N = 10^6;

% Tao he so kenh truyen
% Cach 1
h = sqrt(lambda_h/2).*(randn(1,N) + 1i*randn(1,N));
% Ty so tin hieu tren nhieu
g = SNR.*abs(h).^2;
% Xac suat dung
OP_1 = sum(g < gth,2)/N;

% Cach 2
h_a = raylrnd(sqrt(lambda_h/2),1,N);
phi = 2*pi*rand(1,N);
h = h_a.*(cos(phi) + 1i*sin(phi));
% Ty so tin hieu tren nhieu
g = SNR.*abs(h).^2;
% Xac suat dung
OP_2 = sum(g < gth,2)/N;

% Cach 3
h_a = sqrt(exprnd(sqrt(2*lambda_h),1,N));
phi = 2*pi*rand(1,N);
h = h_a.*(cos(phi) + 1i*sin(phi));
% Ty so tin hieu tren nhieu
g = SNR.*abs(h).^2;
% Xac suat dung
OP_3 = sum(g < gth,2)/N;

% OP ly thuyet
% Ty so tin hieu trên nhieu trung binh
g_ =  SNR.*lambda_h;
OP_t = 1 - exp(-gth./g_);
% Ve do thi BER
semilogy(SNRdB,OP_1,'o',SNRdB,OP_2,'s',SNRdB,OP_3,'+',SNRdB,OP_t);
legend('Cach 1','Cach 2','Cach 3','Ly thuyet');
xlabel('Ty so tin hieu tren nhieu theo dB');
ylabel('Xac suat dung');
set(gcf,'color','white');

Hình 5.4: Tạo kênh truyền fading Rayleigh theo ba cách.  


Không có nhận xét nào:

Đăng nhận xét

2.16 Tìm giá trị nhỏ nhất và lớn nhất trong ma trận

Cho ma trận X = [1 2 3; 4 5 6; 7 8 9]. Hãy a. Tìm giá trị lớn nhất và giá trị nhỏ nhất theo hàng. b. Tìm giá trị lớn nhất và nhỏ nhất theo...