实验三 数字调制
本实验的目的是通过MATLAB的Simulink工具实现对基带信号的数字调制,其中输入的基带信号是第一次实验“数字信源仿真”中产生的NRZ波形,需要产生的调制信号包括2ASK(二进制振幅键控)、2FSK(二进制频率键控)、2PSK(二进制相移键控)和2DPSK(二进制差分相移键控)。
需要说明的是,本次教程中不会再对Simulink的使用和工程中元件的构造和连线进行细致的讲解,因为这些我已经在第一次软件实验教程中进行了详细的说明,如果读者在看的过程中发现有的操作不会,建议回顾一下第一次软件实验教程:数字信源仿真。
下面直接切入主题。
1.ASK、FSK、PSK仿真框图的搭建
直接在Simulink中按照实验指导书上的图或下图进行电路的搭建:
这里有两点需要注意,第一是图中两个正弦波信号产生器的频率需要分别设置为8pi和4pi:
选中上方的正弦波信号产生器:
将Frequency一栏中输入8*pi,随后点击Apply和OK按键。
选中下方的正弦波信号产生器:
将Frequency一栏中输入4*pi,随后点击Apply和OK按键。
第二是此时图中的输入信号,即In1模块,只是一个摆设,并没有真正的信号输入,而是需要用第一次软件实验中产生的NRZ波形来将其替代。因此此时点击运行并不能在示波器中观察到有效的信号,关于如何用NRZ波形来替代In模块,会在后文进行讲解。
2.DPSK仿真框图的搭建
同样按照实验指导书上的图或下图在Simulink中进行电路搭建:
这里有三点需要注意,第一是图中正弦波信号产生器的频率需要设置为16*pi:
将Frequency一栏中输入16*pi,随后点击Apply和OK按键。
第二是图中的In2模块和之前一样,需要用第一次软件实验中产生的NRZ波形来替代。
第三是图中的In3模块需要用对应NRZ波形的位同步码进行替代。
下面将讲解如何构造In1、In2和In3模块。
3.输入信号的构造
(1) 基带NRZ波形的构造
由于需要用到第一次软件实验产生的NRZ波形,一个较为简单的方式就是将第一次实验搭建的框图复制过来,然后将其封装成一个子模块,对外只显示NRZ一个输出端口。
首先打开第一次软件实验的.slx文件,该文件即是MATLAB中Simulink保存的文件,打开后选中整个框图,用Ctrl + c和Ctrl + v复制到本次实验的.slx文件中,将框图中多余的电路删除掉,只保留NRZ波形产生的电路:
图中用红框标注的Out1输出口即是我们需要的NRZ输出波形,但此时如果直接将整个模块进行封装,对外会显示4个Input口和6个Output口,这是因为我们在之前电路搭建的过程中,有一些模块的输入输出口没有用到,系统会将所有悬空的端口默认为输入输出口,如上图中用蓝框标出的端口所示。
如果想要封装后的子模块简洁美观一点,则需要删除多余的输入输出端口。方法就是双击图中的Counter控件进行设置:
将Output一项选中Hit,将Reset input一项取消勾选,修改完成后点击Apply和OK按键,多余的输入输出口就消失了,此时可能会呈现如下状态:
图中红线的部分是修改前和修改后Hit端口的位置不同造成的,只需要将红线的端口接到Hit修改后的位置即可。
由于D Flip-Flop模块笔者没有找到让它的!Q输出端口消失的方法,因此只能将就一下了,选中整个模块,点击菜单栏中的Diagram->Subsystem & Model Reference->Create Subsystem from Selection将它封装成一个子模块:
封装后应该有两个Out端口,一个是我们需要的NRZ输出,另一个就是刚才所说的D Flip-Flop的!Q输出端,此时如果不确定哪个端口是NRZ输出,可以双击该子模块进去看。
将封装好的子模块代替In1和In2模块,如此一来NRZ输入信号就构造好了,读者如果不放心的话,可以将该子模块的输出端口接一个示波器,看看是否是NRZ波形。
(2) DPSK中位同步码的构造
想要构造DPSK中的位同步码,就需要知道基带NRZ输入信号的码元宽度以及相位的延迟,用示波器测量NRZ输入信号:
从第一次软件实验可知,NRZ输入信号的前4个码分别为“0111”,与上图相对照,发现3个“1”码的持续时间是6s,因此1个码元的宽度是2s,再有第一个“0”码的结束时间是3s,可得该码相位的延迟是1s,通过这些数据来构造DPSK中的位同步码:
用Pulse Generator模块来代替In3模块,并将其周期Period设置为2s,占空比Pulse Width设置为50%,相位延迟Phase delay设置为1s,修改完成后点击Apply和OK按键。
上述步骤完成后,全部的电路框图就搭建好了:
上面部分是ASK、FSK和PSK的产生电路,下面部分是DPSK的产生电路。
4.运行并测试波形
设置运行时间为50,点击运行按键,便可从示波器中测得波形,关于如何调整Simulink中的示波器让它显示指定通道的波形,笔者也在第一次软件实验教程中进行了阐述,以下分别展示两张两个示波器中测得的波形:
第一个示波器中测得的输入信号和ASK调制信号波形:
其中黄色为基带信号,蓝色为ASK调制信号。
第二个示波器中测得的DPSK相对码和绝对码波形:
其中蓝色为绝对码,棕色为相对码。
总结
本次实验到这里就结束了,想要了解后续或之前的通信原理软件实验,可以继续关注本专栏,另实验过程中如有什么不对之处,欢迎留言指正。