目录
项 目四阶段一报告 1
一 、调制-解调系统的基本原理 1
1.1 BASK 1
1.1.1 调制原理 1
1.1.2 解调原理 1
1.2 BFSK 2
1.2.1 调制原理 2
1.2.2 解调原理 2
1.3 BPSK 3
1.3.1 调制原理 3
1.3.2 解调原理 3
二 、基于Simulink对调制-解调系统的仿真 3
2.1 BASK 3
2.2 BFSK 5
2.3 BPSK 6
三 、信道环境对信号的影响 8
四 、附录 8
4.1 SNR-BER绘图源码 9
上图为BASK仿真系统的结构,可分为调制、信道、解调、输出、检测五大模块。
调制
【伯努利二进制数生成器】1秒设10k个采样点,即基带信号频率为10kHz。
【正弦波】根据采样定理,采样点不能少于20k个;由于是模拟仿真,我们直接设100k个采样 点。又因载波频率应远大于基带信号频率,所以我们取正弦波频率为100kHz。
信道
【加性高斯白噪声】模拟真实信道的噪声,这里设SNR=2。
解调
【带通滤波器】下通带截止频率为90kHz(载波频率-信号频率),上通带截止频率为110kHz
(载波频率+信号频率)。
【正弦波】由BASK原理可知,参数与调制载波严格一致。
【低通滤波器】截止频率为10kHz(信号频率),因为要把200kHz左右的成分滤掉。
【滞回比较器】阈值需要根据示波器输出进行调试,最终确定在0.25。
输出
【示波器】各端口代表意义见实验结果分析。
检测
【延时模块】接收端信号相比起发送端有一定延迟,所以要将原始信号延时一定时间再进行对 比。
【误码率计算器&显示器】显示总传输码元数、误码码元数、误码率。
其余参数均为软件默认值。
import matplotlib.pyplot as plt import numpy as np
plt.style.use(['ggplot', 'fast'])
EbNo = np.arange(1, 15.5, 0.5) BER = np.array([
1.064e-1, # 1.0
9.929e-2, # 1.5
9.329e-2, # 2.0
8.939e-2, # 2.5
8.139e-2, # 3.0
7.579e-2, # 3.5
6.279e-2, # 4.0
6.019e-2, # 4.5
5.399e-2, # 5.0
4.790e-2, # 5.5
4.210e-2, # 6.0
3.560e-2, # 6.5
3.140e-2, # 7.0
2.510e-2, # 7.5
1.970e-2, # 8.0
1.780e-2, # 8.5
1.460e-2, # 9.0
1.160e-2, # 9.5
9.099e-3, # 10.0
7.399e-3, # 10.5
5.399e-3, # 11.0
4.100e-3, # 11.5
3.300e-3, # 12.0
1.800e-3, # 12.5
9.999e-4, # 13.0
6.999e-4, # 13.5
4.000e-4, # 14.0
2.000e-4, # 14.5
1.000e-4, # 15.0
])
BERlg = np.log10(BER)
plt.title("AWGN's impact on BER") plt.xlabel('SNR(dB)') plt.ylabel('$\lgBER$') plt.yticks(np.arange(-4, 0, 0.5))
plt.plot(EbNo, BERlg) plt.show()