【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析

一、实验目的

在这里插入图片描述

二、实验内容

【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第1张图片

三、实验程序

function q1()
%---------参数定义
M = 15; % 码元数量
L = 100; % 每码元复制L次
Ts = 1; % 码元持续时间
Rb = 1 / Ts; % 码元速率
dt = Ts / L; % 采样间隔
fs = 1 / dt; % 采样频率
df = 0.001; % 频率分辨率
TotalT = M * Ts; % 总时间
t = 0 : dt : TotalT - dt; % 时间向量
a = randi([0, 1], M); % 长度为M的随机二进制序列
f = 2; % 载波频率
m1 = [];
c1 = [];
b1 = [];
 
for i = 1 : M
    t1 = (i - 1)* Ts : dt : i * Ts - dt;
    if a(i) == 0;
        m = ones(1, L);
        b = zeros(1, L);
    else a(i) == 1;
        m = -ones(1, L);
        b = ones(1, L);
    end
    c = sin(2 * pi * f * t1);
    m1 = [m1 m];
    c1 = [c1 c];
    b1 = [b1 b];
end
 
psk = c1 .*  m1; % 原始信号与载波相乘
 
figure;
plot(t, b1);
title('调制信号');
axis([0 M -0.2 1.1]);
xlabel('t');
ylabel('s(t)');
grid on;
 
figure;
plot(t, psk);
title('BPSK已调信号');
axis([0 M -1.2 1.2]);
xlabel('t');
ylabel('e_{BPSK}(t)');
grid on;
 
%------送入信道
[f, B1] = F(t, b1);
[Bw_eq] = signalband(B1, df);
snr = 0; %解调器输入信噪比(dB)
snr_lin = 10 ^ (snr / 10); %换算dB
signal_power = power_x(psk(1 : length(t)));
noise_power = (signal_power * fs) / (snr_lin * (2 * Bw_eq));
noise_std = sqrt(noise_power);
noise = noise_std * randn(1, length(t)) / 600; % 信道中的噪声
 
psk_n = psk + noise; % 叠加噪声后的信号
 
dpsk1 = psk_n .* c1 * 2; %经过相乘器后的信号
 
%-------经过滤波器
wp = 2 * pi * 2;
ws = 2 * pi * (2 + 1);
Ap = 2;
As = 60;
[N, wc] = buttord(wp, ws, Ap, As, 's');
[num, den] = butter(N, wc, 's');
de2psk = lsim(tf(num, den), dpsk1, t); % 经过滤波器后的信号
 
figure;
plot(t, de2psk);
title('低通滤波器输出信号');
xlabel('t');
ylabel('lpf(t)');
grid on;
 
% 抽样判决,判决门限为0
depsk = zeros(1, L * M);
thres = 0; % 判决门限
for m = 1 : L : L * M
    if de2psk(m) < thres;
        for i = 1 : L
            depsk((m - 1) + i) = 1;
        end
    else de2psk(m) >= thres;
        for i = 1 : L
            depsk((m - 1) + i) = 0;
        end
    end
end
 
figure;
plot(t, depsk);
axis([0 M -0.1 1.1]);
title('解调信号');
xlabel('t');
ylabel('P_e(t)');
grid on;
 
%------误码率性能分析
rmin = 10 ^ (-15 / 10);
rmax = 10 ^ (5 / 10);
r = rmin : 0.001 : rmax;
Pe = 1 / 2 * erfc(sqrt(r));
figure;
plot(10 * log10(r), Pe);
title('接收机误码率曲线');
grid on;
xlabel('r/dB');
ylabel('P_e');

四、实验结果

(1)、调制信号时域波形:
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第2张图片

(2)、BPSK已调信号:
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第3张图片

(3)、低通滤波器输出信号:
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第4张图片

(4)、解调信号时域波形:
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第5张图片

(5)、接收机误码率曲线(横坐标单位为dB):
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第6张图片

五、实验分析

1、2PSK调制:
【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第7张图片

2、2PSK解调:

【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第8张图片

3、2PSK相干解调系统总误码率:

【本科生通信原理】【实验报告】【北京航空航天大学】实验三:AWGN信道中BPSK调制解调及误码率性能分析_第9张图片

你可能感兴趣的:(通信原理,matlab,信息与通信)