2PSK通信系统设计 武汉理工课件设计说明书.docx
《2PSK通信系统设计 武汉理工课件设计说明书.docx》由会员分享,可在线阅读,更多相关《2PSK通信系统设计 武汉理工课件设计说明书.docx(39页珍藏版)》请在冰豆网上搜索。
2PSK通信系统设计武汉理工课件设计说明书
2PSK通信系统设计
1技术指标
设计一个2PSK通信系统,要求:
(1)设计出2PSK通信系统的结构;
(2)根据通信原理,设计出各个模块的参数(例如码速率,滤波器的截止频率等);
(3)用Matlab或SystemView实现该数字通信系统;
(4)观察仿真并进行波形分析;
(5)系统的性能评价。
2基本原理
本次课程设计分别使用SystemView与Matlab两种仿真软件并采用两种不同的方案完成。
2.1方案1
2.1.1系统框图与调制原理
使用Matlab中Simulink仿真模块实现,调制方法为利用键控法实现绝对相移,利用加法器加入高斯白噪声模拟真实传输系统,解调时直接使用原载波信号进行相干解调。
系统框图如图1所示。
图1方案1系统框图
其中,调制部分的调制信号为NRZ数字信号,载波为比NRZ数字信号频率高的正弦载波,载波1与载波2反相,根据调制信号的0与1分别对应输出两个不同的载波实现键控2PSK调制。
使用加法器加入高斯白噪声模拟信道传输过程。
带通滤波器、乘法器、低通滤波器、抽样判决模块共同组成2PSK的相干解调部分。
键控调制法原理图如图2所示。
图22PSK键控调制法原理图
2.1.2仿真电路图与模块参数设置
Simulink仿真电路图如图3所示。
图3方案1Simulink仿真电路图
使用BernoulliBinaryGenerator作为信号源产生随机的2进制NRZ数字信号,之后使用数字码型极性转换模块UnipolartoBipolarConverter将其转换为双极性码,作为之后Switch的键控信号输入。
BernoulliBinaryGenerator的参数设置如图4所示。
图4BernoulliBinaryGenerator参数设置
产生码元宽度为1s,即频率为1Hz的随机数字信号,出现0的概率为0.5。
利用SineWave产生两个频率为10Hz的正弦载波设置其幅度为相反数实现反相,并将两载波和经过极性变换后的双极性数字信号输入Switch开始2PSK键控调制。
Switch参数设置和SineWave参数设置分别如图5、图6所示。
图5Switch参数设置
图6SineWave参数设置
Switch参数中的判决阈值电平设为0,这样当输入的数字信号大于0时,输出正相载波,当输入的数字信号小于0时输出反相载波,从而实现2PSK键控调制。
SineWave参数设置为幅度为2V,频率10Hz,抽样时间1/500s,每帧抽样1次。
两SineWave参数除幅度外设置为完全相同,幅度设置为相反数实现反相。
之后利用加法器Sum将高斯噪声产生模块GaussianNoiseGenerator产生的高斯白噪声加入调制后的2PSK信号模拟在传输信道中的高斯噪声干扰。
GaussianNoiseGenerator模块参数设置如图7所示。
图7GaussianNoiseGenerator参数设置
将高斯噪声初始算数平均值设置为10方差设为1,抽样时间1s。
实验仿真过程中可以通过改变方差和算术平均值来改变信道噪声干扰强度,从而观察系统的抗干扰能力。
以上为2PSK信号调制与传输模块,接下来设计2PSK信号解调模块。
根据通信原理的相关知识,先将接受的信号通过一带通滤波器滤除信道外高斯噪声。
使用Simulink中的AnalogFilterDesign模块并将其设置为BandpassFilter。
其参数设置如图8所示。
图8AnalogFilterDesign参数设置
滤波器设置为Bandpass型,由于载波频率为10Hz,且原NRZ信号的频率为1Hz,即带宽为2Hz。
则带通的频率下限设为9Hz,将其转换为rad/s单位即为18*π,频率上限设为11Hz,转换为rad/s单位即为22*π。
完成对信道外噪声的滤除之后,利用乘法器Product将载波与已调信号相乘开始相干解调,即利用载波将已调信号再次搬移回低频区域。
Product参数设置如图9所示。
图9Product参数设置
之后将所得信号通过低通滤波器滤除搬移产生的两倍载波频率的高频部分,则剩下的就只有低频部分。
低通滤波器同样利用AnalogFilterDesign实现,将其设置为Lowpass,AnalogFilterDesign1的参数设置如图10所示。
图10AnalogFilterDesign1参数设置
经过第二次频率搬移后,信号为1Hz的低频部分和2倍载波频率即20Hz的高频部分,所以将低通滤波器的截止频率设置为中间值10Hz,即rad/s单位下的20*π。
阶数设置为8阶。
将所得低频信号经过抽样判决模块还原NRZ数字信号。
抽样判决模块由触发子系统TriggeredSubsystem、滞环比较器Relay、零阶保持器Zero-OrderHold三个模块组成。
TriggeredSubsystem中的触发模块Trigger参数设置如图11所示。
图11Trigger参数设置
要使TriggeredSubsystem工作需要为其提供合适的触发信号,利用PulseGenerator产生触发信号并将其接入TriggeredSubsystem,PulseGenerator参数设置如图12。
图12PulseGenerator参数设置
产生周期为0.5s,脉冲宽度为周期的5%,幅度为1V的脉冲信号。
利用滞环比较器将触发子系统产生的阶梯状信号转变为固定电平的数字信号。
Relay参数设置如图13所示。
图13Relay参数设置
其判决点设置为eps函数,其无参时默认参数为1,实际上它是一个精度计算的函数,取值为距参数最近的浮点数的距离,即为计算浮点数精度。
由于低通滤波器和带通滤波器都是有一定滚降范围和响应时间的,而且在滤波后的信号刚开始有一个从0升至1或降至-1的过程,这一部分在触发子系统产生的波形中的第一个周期会出现一个0电平,可以利用eps作为判决门限将其抹去。
其输出设置为1或0,这样可以直接输出单极性数字信号,免去极性变换的麻烦。
由于在设置触发子系统时,为了提高精度将其触发信号周期设置为0.5s,为原始NRZ信号的一半,同时由于滤波器有一定滚降范围,可能导致码值变换时滤波后的信号来不及改变出现半个周期的误码,但是每个原始NRZ信号周期的初始值是正确的,所以可以用一个零阶保持器Zero-OrderHold将前半个周期的信号扩展保持到后半个周期,从而进行信号修正。
Zero-OrderHold的参数设置如图14所示。
图14Zero-OrderHold参数设置
抽样时间设置为1s,这样就可以使信号整型为标准的周期为1s的NRZ信号,至此解调完成,接下来介绍误码率计算模块。
Simulink提供了非常方便的误码率计算模块ErrorRateCalculation,将原始数字信号与解调输出信号接入ErrorRateCalculation可以直接计算误码率并在Display模块显示输出。
ErrorRateCalculation参数设置如图15所示。
图15ErrorRateCalculation参数设置
由于解调输出信号相比原数字信号有1s的延迟(详见调试部分),所以将Receivedelay参数设为1。
将Outputdata输出设为Port,这样就可以直接将其接到Display模块上来显示误码率了。
2.2方案2
2.2.1系统框图与调制原理
该方案使用Systemview仿真软件实现,采用模拟调制方法,将原始NRZ变换为双极性码后直接与正弦载波相乘即得到2PSK信号。
同样利用加法器加入高斯白噪声模拟信道传输,并在相干解调模块中不直接引用原载波模块,而是利用科斯塔斯环对2PSK信号进行载波同步提取,再使用提取出的载波与2PSK信号相乘进行相干解调,在解调部分更接近真实的2PSK数字信号传输系统。
系统框图如图16所示。
图16方案2系统框图
模拟调制法的原理为:
将原始NRZ信号变换为双极性数字信号,将其直接与相对较高频率的正弦载波相乘。
当双极性信号为1,即对应原NRZ信号为1时,载波直接输出。
而当双极性信号为-1,即对应原NRZ信号为0时,载波与-1相乘,实现反相输出。
这样最终输出的已调信号即为2PSK信号。
模拟调制法原理图如图17所示。
图172PSK模拟调制法原理图
2.2.2仿真电路图与模块参数设置
Systemview仿真电路图如图18所示。
图18方案2Systemview仿真电路图
使用SourceLibrary中的PNSequence模块产生振幅为2V,频率10Hz的随机二进制数字信号其参数设置如图19所示。
图19PNSequence参数设置
该模块实质上产生的是振幅为1的方波,通过设置直流偏置电压1V从而使其变成振幅为2的NRZ信号。
利用SourceLibrary中的StepFunction模块和加法器使原始NRZ信号加上-1V的直流电压偏置使其变为振幅为1V的双极性非归零数字信号。
StepFunction模块参数设置如图20所示。
图20StepFunction参数设置
将其幅度设置为-1,起始时间设置为0即可产生-1V的恒压偏置。
利用SourceLibrary中的Sinusoid产生幅度1V,频率50Hz的正弦载波。
Sinusoid参数设置如图21所示。
图21Sinusoid参数设置
利用SourceLibrary中的GaussNoise模块产生高斯噪声。
GaussNoise参数设置如图22所示。
图21GaussNoise参数设置
初始标准差设为0.2V,在仿真过程中可以更改,以观察不同标准差下传输系统的误码率以及各点信号波形。
利用CommunicationsLibrary中的Costas模块进行载波的同步提取,其参数设置如图22所示。
图22Costas参数设置
设置科斯塔斯环中压控振荡器(VCO)频率为50Hz,即可完成对50Hz载波的同步提取,从而与已调信号相乘进行相干解调。
将相乘后的信号送入OperatorLibrary中的LinearSystem,将其设置为AnalogFilterLibrary中的Lowpass,完成对信号的低通滤波。
Lowpass参数设置如图23所示。
图23Lowpass参数设置
载波频率为50Hz,原始数字信号频率为10Hz,故将低通滤波截止频率设置为12Hz。
其阶数设置为3阶即可。
之后利用OperatorLibrary中的Simple&Hold模块对得到的低频信号进行采样保持,为下一步比较输出做准备。
Simple&Hold参数设置如图24所示。
图24Simple&Hold参数设置
其阈值电压设置为0.1V。
另外,Simple&Hold模块需要外部输入定时脉冲来确定抽样频率,利用SourceLibrary中的PlusTrain产生定时脉冲,参数设置如图25所示。
图25PlusTrain参数设置
频率设置为10Hz,保持与原信号频率相同即可,幅度1V脉冲宽度0.05s,偏置电压0.06V。
解调的最后一步,使用OperatorLibrary中的Compare模块对信号进行判决比较,输出数字信号。
Compare参数设置如图26所示。
图26Compare参数设置
比较形式设置为判断a>=b是否成立,其两种状态输出分别设置为1和0即可输出数字NRZ码。
此外,Compare在进行判决比较时要有两个输入a、b,使两者进行比较,而不是在内部设置判决电平,所以还需要输入一个0V的直流电压信号作为判决阈值。
利用SourceLibrary中的StepFunction实现,参数设置如图27所示。
图27StepFunction参数设置
所有参数都设置为0,将其作为标准的0电平判决阈值。
3调试过程及分析
3.1方案1调试过程及分析
在Simulink中运行,观察各点波形。
BernoulliBinaryGenerator产生的原始NRZ数字信号波形如图28所示。
图28原始
NRZ数字信号波形
经过UnipolartoBipolarConverter之后变换为双极性非归零数字信号,波形如图29所示。
图29双极性非归零数字信号波形
SineWave产生的正弦载波波形如图30所示。
图30正弦载波波形
通过键控调制模块后,输出已调2PSK信号波形如图31所示。
可以明显看出于原始NRZ信号对应,在0与1跳变时2PSK信号有π的相移。
图31
2PSK调制输出信号波形
将已调信号加入高斯白噪声后就模拟成了在信道中传输的传输信号。
传输信号波形如图32所示。
图322PSK传输信号波形
可以看出,加入模拟的高斯白噪声后,信号产生了一定变形,但由于高斯噪声方差设置较小,所以信号变形不严重。
之后信号输入到带通滤波器中,滤除信道外噪声。
带通滤波器输出波形如图33所示。
图332PSK传输信号波形
由于滤波器存在一定滚降范围,波形包络由矩形变为曲线。
继续将信号与原载波一起输入乘法器相乘,开始相干解调。
乘法器输出波形如图34所示。
图34乘法器输出波形
可以看出波形包络即低频分量近似原NRZ信号,但内部的高频载波更加密集,也就是说经过频率搬移后产生了跟高频率的分量。
通过低通滤波器滤除高频分量后波形如图35所示。
图35低通滤波器输出波形
可以看出高频分量被滤除,只剩下低频分量。
将该低频信号送入触发子系统进行抽样,触发子系统输出波形如图36所示。
图36触发子系统输出波形
其波形存在许多不同的电平阶,将其输入滞环比较器进行判决即可得到电平固定的二进制数字信号。
滞环比较器输出波形如图37所示。
图37滞环比较器输出波形
可以看出信号基本已还原为原NRZ数字信号,但是注意第一个周期,其波形存在跳变,这在频率为1Hz的NRZ数字信号中是不可能出现的。
出现这种现象的原因是:
滤波器的输出信号初始电平是0,而我们的传输信号经过滤波器时,会产生一定滚降区域。
在滤波器输出信号时,第一个电平有从0升高到1或-1的一个过程,再加上我们的触发子系统抽样时间间隔设置为0.5s,正好是原NRZ数字信号周期的一半,所以在抽样时就会出现第一个周期的后半段不为0而为大于0的电平的情况,在通过滞环比较器判决后便将其判决为1。
为了解决这种现象,将这个不应存在的电平跳变消除,将滞环比较器输出信号输入到一个零阶保持器中。
零阶保持器输出波形如图38所示。
图38零阶保持器输出波形
通过零阶保持器的作用,第一个周期信号的前半段被一直保持到第一个周期结束,消除了在第一个周期后半段的电平跳变。
输出解调后信号。
将解调后信号与原NRZ信号相比较,发现解调后信号比原NRZ信号延时了一个周期的时间,所以在误码率比较时,设置ErrorRateCalculation接受延时为1s。
误码率计算结
果如图39所示。
图39误码率计算结果
显示模块的数字从下到上依次为比较码元数、错误码元数、误码率。
可以看出在高斯噪声较低的情况下误码率为0。
将高斯噪声方差增大,在GaussianNoiseGenerator中将其方差参数改为40。
再次观察传输信号的波形如图40所示。
图40大噪声情况下的传输信号波形
可以看出波形变形变得十分严重,最高甚至到达25V。
此时,解调输出波形如图41所示。
图41大噪声情况下的解调输出波形
可以看出与原NRZ信号相比,第四个周期信号出现误码,1错判为0。
此时误码率计算结果如图42所示。
图42大噪声情况下的误码率计算结果
此时比较8个码元,出现1个错误,误码率为0.125。
接下来观察解调过程中,信号功率谱的变化。
调制输出信号的功率谱密度如图43所示。
图43已调信号功率谱
可以看出其功率主要分布于载波频率10Hz处,即rads/sec单位下的10*2π=62.8rad/s。
功率谱与理论计算相符。
在经过相干解调的第一步,与原载波信号相乘后,信号的频率被搬移到更高频率和原NRZ信号的低频率区域。
乘法器输出信号功率谱如图44所示。
图44乘法器输出信号功率谱
可以看出,信号频率被搬移到1Hz和20Hz,即rads/sec单位下的1*2π=6.28rad/s和20*2π=125.63Hz附近。
频谱图与理论计算结果相符。
再将信号通过低通滤波器滤除频率搬移后产生的高频分量,只留下低频分量。
低通滤波器输出信号频谱图如图45所示。
图45低通滤波器输出信号功率谱
观察低通滤波器输出信号频谱并与乘法器输出信号频谱图对比,可以看出信号频谱只剩下了低频分量,高频分量被滤除。
至此,完成了对方案1的调试和各点信号的波形、频谱的观察与分析,并计算了信道不同噪声情况下的误码率。
需要注意的是,使用滤波器时,由于滤波器输出信号初始值为0,所以第一个周期内信号的初始值必定被触发子系统抽样为0,这就导致了在数字信号第一位为1的情况下必定出现错误,这也是这个系统的缺陷所在。
我所设想的解决方案是规定第一个数字信号必为0或者规定第一个数字信号为无效信号,发送端从第二个数字信号开始传送信息,在接收端舍弃掉第一个数字信号。
3.2方案2调试过程及分析
运行Systemview仿真,观察系统各点波形。
PNSequence产生的原始NRZ数字信号振幅为2V,频率10Hz,波形如图46所示。
图46原始NRZ数字信号波形
加入-1V偏置后,变为双极性非归零数字信号,波形如图47所示。
图47双极性非归零数字信号波形
将得到的双极性非归零数字信号直接与载波一起输入到乘法器,完成2PSK模拟调制法调制,载波波形如图48所示,调制输出波形如图49所示。
图48正弦载波信号波形
图492PSK模拟调制法调制输出信号波形
可以看出,对应原NRZ数字信号的0与1,2PSK信号相位也发生π的变化,调制成功。
将调制输出加上高斯白噪声,模拟信道传输中的噪声影响,波形如图50所示。
图50传输信号波形
可以看出信号受噪声干扰明显出现了一定程度的变形。
在接受端,模拟真实的信号传输系统,利用科斯塔斯环进行了对信号的同步载波提取,提取出的载波信号波形如图51所示。
图51载波同步提取波形
对比原载波波形,两者完全相同,载波同步提取效果较好。
将同步提取所得载波直接与传输信号相乘进行相干解调,乘法器输出信号波形如图52所示。
图52相干解调乘法器输出波形
与方案1对比,该方案未加带通滤波器滤除信道外噪声,可以看出在解调时波形明显不稳定,乘法器输出受噪声影响不易分辨信号的正负,若噪声增大可能出现较严重误码。
与方案1相同,将所得信号通过低通滤波器滤除高频分量,低通滤波器输出波形如图53所示。
图53低通滤波器输出波形
将信号继续输入抽样保持器Simple&Hold模块,输出波形如图54所示。
图54抽样保持器输出波形
信号经过抽样保持后,送入比较器Compare模块去标准电压0比较,输出解调信号,解调信号波形如图55所示。
图55解调输出波形
将解调输出信号与原NRZ数字信号比较,两信号波形完全相同,解调输出大约有0.25s的延时。
Systemview提供了非常方便的信号波形处理功能,接下来利用信号波形显示窗口的SinkCalculator观察信号解调过程各点信号的频谱特性。
SinkCalculator的界面如图56所示。
图56SinkCalculator界面
选择想要进行运算的信号,选择Spectrum选项卡中的快速傅里叶变换(FFT)选项,点击Apply即可显示选中信号的频谱。
调制输出信号的频谱如图57所示。
图57调制输出信号频谱
其幅度主要集中在50Hz频段附近,对应载波频率50Hz。
经过与同步提取的载波相乘,频率搬移后,信号频谱如图58所示。
图58相干解调信号频谱
可以看出原来50Hz的信号被搬移到2倍载波频率100Hz附近的高频区域和原NRZ数字信号频率10Hz附近的低频区域。
经过低通滤波后的信号频谱如图59所示。
图59低通滤波信号频谱
可以看出高频分量被滤除,只剩下低频分量,频率与原始NRZ信号十分接近。
利用CommunicationLibrary中的BERRate模块可以方便的进行误码率的计算,只需将原NRZ数字信号与解调输出信号接入BERRate模块再将BERRate模块接到SinkLibrary的FinalValue模块中显示误码率计算结果即可。
注意在BERRate参数设置时设置好接受延时0.25s。
误码率计算结果如图60所示。
图60误码率计算结果
系统运行1次,比较1023个码元,误码率为0。
可以看出系统较为稳定,误码率较低。
与方案1同样,随着高斯噪声加强,误码率也逐渐增加,这里不再赘述。
4心得体会
这次通信原理课程设计与之前的课程设计不同,老师鼓励大家使用多种方法完成设计任务。
这也是我第一次在课程设计中尝试使用两种方法进行设计,其中使用Systemview软件进行设计仿真并分析波形更是第一次。
在一开始的设计过程中,头脑里只有一个系统的简单模型,功能也十分简陋。
在使用仿真软件做完系统图之后,无论是现象还是功能都差强人意。
于是我明白了只用书上的典型例子和简单介绍是无法做出符合要求的仿真系统的。
再加上我已经经过了好几次课程设计的锻炼,在设计过程中会尽可能的追求系统各方面的完善和功能的加强。
在这些想法与动力的基础上,我查阅了很多资料,在最简单的系统框架上不断尝试、添加、改进、完善各种各样的系统功能,最终完成了两种我自己较为满意的设计方案。
但我也明白这两种方案都有各自的缺陷,都有非常大的可提升空间,可惜的是课程设计时间有限,对系统的改进和完善也只能到此为止。
不过在以后的学习中,当遇到相关知识时我可以回过头来再看自己设计的2PSK数字信号传输系统,进行更深层次的改进。
在添加各项功能的过程中,我查阅了很多资料,在对各项功能的改进和完善过程中,更加巩固和实践了新学到的知识。
尤其是Systemview软件的使用,完全是从零开始掌握了一个软件的大部分功能。
同时我利用Simulink设计一个数字系统也是第一次尝试,这更加加强了我对Simulink的了解和掌握。
通信原理的理论知识在设计的过程中得到了充分的利用和验证,让我不止限于在课本上、课堂上学到的2PSK数字信号传输系统的相关知识,而是自己主动学习,更加深入了解这种数字信号传输系统的各种特性。
这次历时两周的通信原理课程设计,丰富了我在仿真软件使用方面和通信原理方面的知识,带给了我非常多的可贵的设计经验,锻炼了我自学、设计与研究的能力,着实获益匪浅。
5参考文献
[1]樊昌信,曹丽娜.通信原理(第七版).国防工业出版社,2012
[2]周建兴,岂兴明,矫津毅,常春藤等.MATLAB从入门到精通.人民邮电出版社,2008
[3]尚耀波,郭英等.一种软件科斯塔斯环的模型建立与仿真.[J].空间电子技术,2009,6(4):
35-38
[4]席在芳,邬书跃,唐志军等.基于SIMULINK的现代通信系统仿真分析.[J].系统仿真学报,2006.18(10):
2966-2968
[5]陈星,刘斌.SystemView通信原理实验