基于Simulink的BPSK通信系统仿真(相干解调)
基于Simulink的BPSK通信系统仿真(相干解调)
系统整体视图:

信号源(Bernoulli Binary Generator):
Probability of zero是“0”产生的概率:0.5
Sample time是抽样时间也就是码元宽度。

抽样时间为啥是1/8000/8因为后续还有PCM等其他的模块所以是1/8000/8,合理。
BPSK调制器:

Unipolar to Bipolar Converter:将[0,M-1]范围内的单极信号(其中M是M进制数)转换为双极信号,“01”是二进制,转为双极性码。

然后是乘法器(Product),上面是载波Sine Wave
上面的信号源的抽样时间1/8000/8,所以TB = 1/64000,fB = 64kHz,所以载波取了8000*8*10*2*pi ,采样时间取0就是连续取样。

调制就完成了,波形如下,明显看到在基带信号跳变的位置,调制后的信号发生跳变。

接下来添加滤波器,在发送端发出前应通过带通滤波器,因为理论上信号的带宽是无限的,但是实际通信带宽是有限的所以需要加入带通滤波器(我的理解)。
下面计算带通滤波器(Analog Filter Design)的相关数值:
载波频率:
码元宽度:,即第一零点带宽:
根据BPSK调制相关知识,调制后的带宽是
所以带通滤波器的范围是,如下图:

然后进入信道(AWGN):
其中的SNR是信噪比

然后进入解调部分,解调前先进行带通滤波滤除带外噪声配置参数和前面的滤波器相同。
BPSK解调部分:

载波相同,首先是乘法器进行相干解调,然后低通滤波,低通滤波器参数如下:
理论上应该是 = 8000*8,但是改成了8000*9后感觉对的更多了。

低通滤波后,此时的值比较小,所以乘一个5(Constant):

然后是零阶保持器(Zero-Order Hold):
抽样时间是码元宽度1/8000/8
这就相当于抽样

然后就是判决(Relay):
输出是1与-1,开启点与关闭点设置为eps就可以这就相当于0,所以0就是判决门限。

最后一步,从双极性码变回单极性码(Bipolar to Unipolar Converter):

如图,示波器我加入了一个延时(Delay),所以结果对齐了,但其实是有时延差的。
Delay:
测量后是三个码元延迟。

然后观测对比,仿真时间不能太长!

结果(不知道为啥开始有一个错码?):

下面的是误码率测试模块(Error Rate Calculation):
注意需要考虑发送和接收的时延差!

最后通过dispaly模块展示信息。
-结束-
更多推荐



所有评论(0)