Giúp đỡ: BER BPSK cho một tín hiệu đi qua một kênh fading

T

tomatokid

Guest
Kính thưa tất cả,

Tôi cần giúp đỡ về mô phỏng của tôi như là tôi đang sử dụng Jakes mô hình để tạo ra các hệ số mờ dần.Tuy nhiên, kết quả của tôi không phù hợp với một trong những cho bởi forumer ở đây, người sử dụng randn / sqrt (2) để tạo ra và tưởng tượng thành phần thực tế của quá trình mờ dần.mã số của tôi là như sau;

Mô phỏng% BPSK trên một kênh Rayleigh fading phẳng
chức năng Rayleigh
rõ ràng
N = 1000000;
SNR = 0:02:24;
cho m = 1: kích thước (SNR, 2)
efade = 0;% lỗi truy cập cho kênh AWGN fading
egaus = 0;% lỗi truy cập cho kênh AWGN
Không = 10 ^ (-SNR (m) / 10);% PSD của AWGN với bình thường hóa năng lượng tín hiệu cho 1, tức là E = 1
sigma = sqrt (No / 2);% Độ lệch chuẩn
cho n = 1: N
tx_signal = (-1) ^ tròn (rand);% hoặc là có được một hoặc -1 tín hiệu 1

Mô hình kênh%
x = fading (sigma);
y = fading (sigma);
p = x y * j;% điện năng của fading và tưởng tượng thành phần thực tế
một abs (= p);% biên độ fading

rfade = a * tx_signal sigma * randn;% phai mờ tín hiệu AWGN
rgauss = tx_signal sigma * randn;% unfaded tín hiệu AWGN

% Nhận được tín hiệu
if (rfade> 0)
estimate_fade = 1;
khác
estimate_fade = -1;
kết thúc
if (rgauss> 0)
estimate_gauss = 1;
khác
estimate_gauss = -1;
kết thúc

% Kiểm tra lỗi
if (estimate_fade ~ = tx_signal)
efade = efade 1;
kết thúc
if (estimate_gauss ~ = tx_signal)
egaus = egaus 1;
kết thúc
kết thúc

% Tính toán xác suất lỗi
(M pe) = efade / N;% BER Rayleigh fading phẳng
peg (m) = egaus / N;% chỉ AWGN BER

% Kết quả
fprintf ('% f \ t% e \ n', SNR (m), pe (m));
kết thúc
semilogy (SNR, pe ,'-')
giữ
semilogy (SNR, peg ,':')
truyền thuyết ('Rayleigh kênh', 'kênh AWGN');
ylabel ('Bit Error Rate');
xlabel ('trung bình E_b/N_0 (dB)');
Tiêu đề ('Biến động của BPSK trên phẳng Rayleigh và kênh AWGN');
trục ([SNR (1) SNR (kết thúc) 9.5e-6 1])
lưới điện về

% Chức năng này mô phỏng quá trình fading với Jakes phổ
chức năng z = fading (sigma)

fmax = 0,05 / (2 * pi);
N = 50;
y = 0;

Cn = sqrt (sigma * 2 / N);
giai đoạn = rand (1, N) * 2 * pi;

cho n = 1: N

fn = fmax * sin ((pi * n) / (2 * N));
y = y cos * Cn (2 * pi * fn * j giai đoạn (1, n));

cuối cùng kết thúc cho%

z = y;

 
Hi
Tôi nghĩ rằng bạn đang sử dụng Jakes mô hình như một hình thức Rayleigh fading.
mã folowing sản xuất BER của BPSK trong Rayleigh fading phù hợp chính xác với lý thuyết của BER BPSK trong kênh fading.
Nó cũng sử dụng mô phỏng Monte Carlo để có phản ứng chính xác hơn.

CLC;
clf;
rõ ràng tất cả;
cho SNR = 01:50
snrnum = 10 ^ (snr/10);
psk_fading (SNR) = 0,5 * (1-sqrt (snrnum / (1 snrnum)));
kết thúc
SNR = 1:50;
semilogy (SNR, psk_fading);
lưới điện trên;
datanrzpolar = randsrc (1,1000);
cho SNR = 01:50
signal_amp = sqrt (10 ^ (snr/10)) * datanrzpolar;
cho mcr = 1:100
tiếng ồn = randn (1,1000);
noise1 = randn (1,1000);
cnoise = phức tạp (tiếng ồn, noise1);
cnoise = cnoise / (sqrt (var (cnoise)));
p_f = 2 * pi * randn (1,1000);
x1 = randn (1,1000);
x2 = randn (1,1000);
x1 = x1 / (sqrt (var (x1)));
x2 = x2 / (sqrt (var (x2)));
cho i = 1:1000
alpha (i) = sqrt (x1 (i) ^ 2 x2 (i) ^ 2);
kết thúc
chi = alpha. ^ 2;
chi_mean = có nghĩa là (chi);
alpha_normalised = alpha. / sqrt (chi_mean);
cho i = 1:1000
h (i) = alpha_normalised (i) * phức tạp (cos (p_f (i)),-sin (p_f (i)));
r (i) = h (i) * signal_amp (i) cnoise (i);
kết thúc
cho i = 1:1000
mrc (i) = r (i) * conj (h (i));
kết thúc;
cho i = 1:1000
if (thực (mrc (i))> = 0)
quyết định (i) = 1;
khác
quyết định (i) =- 1;
kết thúc
kết thúc
Hamm = 0;
cho i = 1:1000
if (quyết định (i) ~ = datanrzpolar (i))
Hamm Hamm = 1;
kết thúc;
kết thúc
pe (mcr) = hamm/1000;
kết thúc
(SNR pepsk) = có nghĩa là (pe);
kết thúc
SNR = 1:50;
tổ chức trên;
semilogy (SNR, pepsk, 'r *');
lưới điện trên;tôi hy vọng hữu ích của nó cho bạn.Cùng có thể được sử dụng cho simualtion của BER của BFSK trong kênh fading.

 

Welcome to EDABoard.com

Sponsor

Back
Top