sk调制与解调.docx
《sk调制与解调.docx》由会员分享,可在线阅读,更多相关《sk调制与解调.docx(23页珍藏版)》请在冰豆网上搜索。
![sk调制与解调.docx](https://file1.bdocx.com/fileroot1/2023-1/7/f378a55f-d4c8-4b8c-96c0-f895a53f2845/f378a55f-d4c8-4b8c-96c0-f895a53f28451.gif)
sk调制与解调
课程设计任务书
学生姓名:
王成刚专业班级:
通信0906班
指导教师:
许建霞工作单位:
信息工程学院
题目:
设计一个4PSK调制解调系统
初始条件:
本设计基于数字信号处理技术基础实验,通过自行设计程序并在电脑上利用MATLAB软件进行仿真。
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1)4PSK信号波形的载频和相位参数应随机置或者可有几组参数组合供选择
2)系统中要求加入高斯白噪声
3)4PSK解调方框图采用相干接收形式
4)分析误码率
参考书目:
[1]谢自美.电子线路设计·实验·测试(第三版).武汉:
华中科技大学出版社
[2]康华光.电子技术基础模拟部分.高等教育出版社,2005
[3]康华光.电子技术基础数字部分.高等教育出版社,2005
[4]樊昌信.通信原理(第五版).北京:
国防工业出版社,2005
时间安排:
第1周,安排任务(鉴主15楼实验室)
第1-17周,仿真设计(鉴主13楼计算机实验室)
第18周,完成(答辩,提交报告,演示)
指导教师签名:
年月日
系主任签名:
年月日
摘要
在数字信号的调制方式中4PSK是目前最常用的一种数字信号调制方式,它具有较高的频谱利用率、较强的抗干扰性、在电路上实现也较为简单。
调制技术是通信领域里非常重要的环节,一种好的调制技术不仅可以节约频谱资源而且可以提供良好的通信性能。
4PSK调制是一种具有较高频带利用率和良好的抗噪声性能的调制方式,在数字移动通信中已经得到了广泛的应用。
本次设计在理解4PSK调制解调原理的基础上应用MATLAB语言来完成仿真,仿真出了4PSK的调制以及解调的仿真图,包括已调信号的波形,解调后的信号波形,眼图和误码率。
在仿真的基础上分析比较了各种调制方法的性能,并通过比较仿真模型与理论计算的性能,证明了仿真模型的可行性。
关键字:
4PSK调制解调MATLAB分析与仿真
Abstract
Indigitalsignalmodulationmethodof4PSKisthemostcommonlyusedadigitalsignalmodulationmode,ithashighfrequencyspectrumuseefficiency,stronganti-jamming,incircuitimplementationarerelativelysimple.Modulationtechniqueiscommunicationfieldveryimportantlink,agoodmodulationtechnologycannotonlysavespectrumresourcesandcanprovidegoodcommunicationperformance.4PSKmodulationisakindofhighefficiencyandgoodresistancetobandnoiseperformanceofthemodulationmode,indigitalmobilecommunicationhasbeenwidelyused.Thisdesigninunderstanding4PSKdemodulationbasedontheprincipleofMATLABlanguagetocompletethesimulation,thesimulationout4PSKmodulationanddemodulationofthesimulationdiagram,includingthesignalwaveformhas,afterthedemodulationsignalwaveform,theeyechartandthebiterrorrate.Onthebasisofsimulationanalysesandcomparestheperformanceofvariousmodulationmethod,andbycomparingthesimulationmodelandtheoreticalcalculationofperformance,provedthefeasibilityofthesimulationmodel.
Keyword:
4PSKdemodulationMATLABanalysisandsimulation
1引言
1.1背景介绍
随着现代电子技术的发展,通信技术正向着数字化、网络化、智能化和宽带化的方向发展。
随着科学技术的进步,人们对通信的要求越来越高,各种技术会不断地应用于通信领域,各种新的通信业务将不断地被开发出来。
到那时人们的生活将越来越离不开通信。
本文中提到的调制方式大都是可以实用的,已经采用多年,并且至今仍然被采用着。
但是,这些调制方法还不是很完善,有许多值得改进之处。
因此,在这些基本的数字调制方法基础上,多年来不断研究出新的或改进的调制方法。
实际上,在基本的和先进的调制方法之间并没有明确的界限。
这些方法都是不间断地发展出来的,后来者自然比原有者更先进。
此外,随着技术的进步,特别是超大规模集成电路和数字信号处理技术的发展,使得复杂的电路设计得以用少量的几块即成电路模块实现,有些硬件电路的功能还可以用软件代替实现。
因此使得一些较复杂的调制技术能够容易地实现并投入使用。
这方面的条件使得新的更复杂的调制体制迅速地不断涌现。
目前,改进的数字调制方式主要有偏置正交相移键控,π/4正交差分相移键控,最小频移键控,高斯最小频移键控,正交频分复用,网格编码调制等,这里对最小频移键控作一介绍。
1.2设计要求
1)4PSK信号波形的载频和相位参数应随机置或者可有几组参数组合供选择
2)系统中要求加入高斯白噪声
3)4PSK解调方框图采用相干接收形式
4)分析误码率
24PSK调制解调的基本原理
2.12PSK数字调制原理
2PSK信号用载波相位的变化来表征被传输信息的状态,通常规定0相位载波和π相位载波分别表示传“1”和传“0”。
2PSK码元序列的波形与载频和码元持续时间之间的关系有关。
当一个码元中包含有整数个载波周期时,在相邻码元的边界处波形是不连续的,或者说相位是不连续的。
当一个码元中包含的载波周期数比整数个周期多半个周期时,则相位连续。
当载波的初始相位差90度时,即余弦波改为正弦波时,结果类似。
以上说明,相邻码元的相位是否连续与相邻码元的初始相位是否相同不可混为一谈。
只有当一个码元中包含有整数个载波周期时,相邻码元边界处的相位跳变才是由调制引起的相位变化。
2PSK信号的产生方法主要有两种。
第一种叫相乘法,是用二进制基带不归零矩形脉冲信号与载波相乘,得到相位反相的两种码元。
第二种方法叫选择法,是用此基带信号控制一个开关电路,以选择输入信号,开关电路的输入信号是相位相差
的同频载波。
这两种方法的复杂程度差不多,并且都可以用数字信号处理器实现如图1所示。
码变换
相
乘
S(t)
载波
eo(t)
双极性
不归零
图12PSK及2DPSK的调制方框
2.24PSK的调制和解调
四进制绝对相移键控(4PSK)直接利用载波的四种不同相位来表示数字信息。
如图2所示
参考相位
00
0o
11180o
01
270o
1090o
45o11
135o01
00
225o
10
315o
参考相位
图24PSK信号相位φn矢量图
由于每一种相位代表两个比特信息,因此每个四进制码元可以用两个二进制码元的组合来表示。
两个二进制码元中的前一比特用a来表示,后一比特用b表示,则双比特ab与载波相位的关系入下表1:
表1双比特ab与载波相位的关系
双比特码元
载波相位(φn)
a
b
A方式
B方式
0
0
0o
225o
1
0
90o
315o
1
1
180o
45o
0
1
270o
135o
四进制信号可等效为两个正交载波进行双边带调制所得信号之和。
这样,就把数字调相和线性调制联系起来,为四相波形的产生提供依据。
4PSK信号调制和解调
(1)4PSK调制原理:
4PSK的调制方法有正交调制方式(双路二相调制合成法或直接调相法)、相位选择法、插入脉冲法等。
这里我们采用正交调制方式。
4PSK的正交调制原理如图3:
串/并变换
单/双极性换
单/双极性换
×
移相π/2
载波震荡
+
a
cosωct
sinωct
-
+
输入
4PSK输出
b
×
图34PSK正交调制原理方框图
它可以看成是由两个载波正交的2PSK调制器构成的。
图中串/并变换器将输入的二进制序列分为速度减半的两个并行双极性序列a和b(a,b码元在事件上是对齐的),再分别进行极性变换,把极性码变为双极性码(0→-1,1→+1)然后分别调制到cosωct和sinωct两个载波上,两路相乘器输出的信号是相互正交的抑制载波的双边带调制(DSB)信号,其相位与各路码元的极性有关,分别由a和b码元决定。
经相加电路后输出两路的合成波形,即是4PSK信号。
图中两个乘法器,其中一个用于产生0o与180o两种相位状态,另一个用于产生90o与270o两种相位状态,相加后就可以得到45o,135o,225o,和315o四种相位
(2)4PSK解调原理
4PSK信号是两个载波正交的2PSK信号的合成。
所以,可以仿照2PSK相干检测法,用两个正交的相干载波分别检测两个分量a和b,然后还原成二进制双比特串行数字信号。
此法称作极性比较法(相干解调加码反变换器方式或相干正交解调发)如图4
图44PSK信号解调器原理方图
在不考虑噪声及传输畸变时,接收机输入的4PSK信号码元可表示为
(2.2.1)
表2抽样判决器的判决准则
输入相位
的极性
的极性
判决器输出
+
+
1
1
-
+
0
1
-
-
0
0
+
-
1
0
判决器是按极性来判决的。
即正抽样值判为1,负抽样值判为0.两路抽样判决器输出a、b,经并/串变换器就可将并行数据恢复成串行数据如表2所示。
34PSK调制解调系统仿真
3.1MATLAB软件介绍
MATLAB软件是美国Mathworks公司的产品,MATLAB是英文MATrixLABoratory(矩阵实验室)的缩写。
MATLAB软件系列产品是一套高效强大的工程技术数值运算和系统仿真软件,广泛应用于当今的航空航天、汽车制造、半导体制造、电子通信、医学研究、财经研究和高等教育等领域,被誉为“巨人肩膀上的工具”。
研发人员借助MATLAB软件能迅速测试设想构想,综合评测系统性能,快速设计更好方案来确保更高技术要求。
同时MATLAB也是国家教委重点提倡的一种计算工具。
MATLAB主要由C语言编写而成,采用LAPACK为底层支持软件包。
MATLAB的编程非常简单,它有着比其他任何计算机高级语言更高的编程效率、更好的代码可读性和移植性,以致被誉为“第四代”计算机语言,MATLAB是所有MathWorks公司产品的数值分析和图形基础环境。
此外MATLAB还拥有强大的2D和3D甚至动态图形的绘制功能,这样用户可以更直观、更迅速的进行多种算法的比较,从中找出最好的方案。
从通信系统分析与设计、滤波器设计、信号处理、小波分析、神经网络到控制系统、模糊控制等方面来看,MATLAB提供了大量的面向专业领域的工具箱。
通过工具箱,以往需要复杂编程的算法开发任务往往只需一个函数就能实现,而且工具箱是开放的可扩展集,用户可以查看或修改其中的算法,甚至开发自己的算法。
目前,MATLAB已经广泛地应用于工程设计的各个领域,如电子、通信等领域;它已成为国际上最流行的计算机仿真软件设计工具。
现在的MATLAB不再仅仅是一个矩阵实验室,而是一种实用的、功能强大的、不断更新的高级计算机编程语言。
现在从电子通信、自动控制图形分析处理到航天工业、汽车工业,甚至是财务工程。
MATLAB都凭借其强大的功能获得了极大的用武之地。
广大学生可以使用MATLAB来帮助进行信号处理、通信原理、线性系统、自动控制等课程的学习;科研工作者可以使用MATLAB进行理论研究和算法开发;工程师可以使用MATLAB进行系统级的设计与仿真。
3.22PSK调制解调系统仿真
系统方框图如图5所示
图5系统方框图
运行结果如下图6所示:
图6运行结果
3.34PSK调制解调系统仿真
系统框图如图7所示
图7系统框图
运行结果如下图8所示:
图8运行结果
效果图如图9所示
图9解调效果图
解调序列图如图10所示
图10解调序列图
加入高斯白噪声后效果图如图11所示
图11假如噪声效果图
44PSK误码率分析
4.14PSK误码率的计算
对于4PSK其有以下图12表示两种形式
图124PSK信号相位矢量图
对于第二种4PSK的表达式为:
(4.1.1)
即:
(4.1.2)
已知PSK信号数字表达式为:
(4.1.3)
计算可得2PSK误码率为:
(4.1.4)
故4PSK系统误码率为:
(4.1.5)
4.24PSK误码率的仿真
4PSK误码率仿真图如图13所示
图13误码率仿真图
5总结
在通信和信息传输系统、工业自动化或电子工程技术中,调制和解调应用最为广泛。
本设计研究了2PSK和4PSK的调制和解调原理,以及利用MATLAB对其调制和解调进行了编程和编译仿真,得到的结论和理论上是一致的。
简单而且快捷。
同时利用MATLAB中的SIMYULINK对2PSK和4PSK的通信系统进行了仿真研究了其传输的特性,及传输中噪声对系统的影响。
而调制和解调的基本原理是利用信号与系统的频域分析和傅里叶变换的基本性质,将信号的频谱进行搬移,使之满足一定需要,从而完成信号的传输或处理。
调制与解调又分模拟和数字两种,在现代通信中,调制器的载波信号几乎都是正弦信号,数字基带信号通过调制器改变正弦载波信号的幅度、频率或相位,产生幅度键控(ASK)、相位键控(PSK)、频率键控(FSK)信号,或同时改变正弦载波信号的几个参数,产生复合调制信号。
本课程设计主要介绍基于Matlab对2PSK和4PSK进制的调制仿真实现.
本研究具有可对比性,对比2PSK和4PSK的通信原理和星座图可发现其中的不同点,但是频谱图近似相同。
通信中信道的信噪比设置越大信噪传输越理想,与理论上是相符合的。
2PSK和4PSK的传输系统也具有对比性,本研究在文中列出了仿真过程中每个元件的仿真参数的设置。
比较其中不同点我们发现其中参数基本相似。
也说明了他们的传输原理基本相同,都利用了相位的不同表示了不同的码元传输
参考文献
[1]VinayK.Ingle,数字信号处理及其MATLAB实现.电子工业出版社,1998
[2]SanjitK.Miltra,DigitalSignalProcessingLaboratoryUsingMatlab.McGraw-Hill,2000
[3]王紫婷.电子技术试验教程.成都:
西南交大出版社,2001
[4]樊昌信.通信原理(第五版).北京:
国防工业出版社,2005
[5]孙屹,吴磊.Simulink通信仿真开发手册通信仿真开发手册.北京:
国防工业出版社,2004
[6]钟麟,王峰.MATLAB仿真技术与应用教程.北京:
国防工业出版社,2003
附录:
%调相法
clearall
closeall
t=[-1:
0.01:
7-0.01];
tt=length(t);
x1=ones(1,800);
fori=1:
tt
if(t(i)>=-1&t(i)<=1)|(t(i)>=5&t(i)<=7);
x1(i)=1;
elsex1(i)=-1;
end
end
t1=[0:
0.01:
8-0.01];
t2=0:
0.01:
7-0.01;
t3=-1:
0.01:
7.1-0.01;
t4=0:
0.01:
8.1-0.01;
tt1=length(t1);
x2=ones(1,800);
fori=1:
tt1
if(t1(i)>=0&t1(i)<=2)|(t1(i)>=4&t1(i)<=8);
x2(i)=1;
elsex2(i)=-1;
end
end
f=0:
0.1:
1;
xrc=0.5+0.5*cos(pi*f);
y1=conv(x1,xrc)/5.5;
y2=conv(x2,xrc)/5.5;
n0=randn(size(t2));
f1=1;
i=x1.*cos(2*pi*f1*t);
q=x2.*sin(2*pi*f1*t1);
I=i(101:
800);
Q=q(1:
700);
QPSK=sqrt(1/2).*I+sqrt(1/2).*Q;
QPSK_n=(sqrt(1/2).*I+sqrt(1/2).*Q)+n0;
n1=randn(size(t2));
i_rc=y1.*cos(2*pi*f1*t3);
q_rc=y2.*sin(2*pi*f1*t4);
I_rc=i_rc(101:
800);
Q_rc=q_rc(1:
700);
QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);
QPSK_rc_n1=QPSK_rc+n1;
figure
(1)
subplot(4,1,1);plot(t3,i_rc);axis([-18-11]);ylabel('a序列');
subplot(4,1,2);plot(t4,q_rc);axis([-18-11]);ylabel('b序列');
subplot(4,1,3);plot(t2,QPSK_rc);axis([-18-11]);ylabel('合成序列');
subplot(4,1,4);plot(t2,QPSK_rc_n1);axis([-18-11]);ylabel('加入噪声');
%设定T=1,加入高斯噪声
clearall
closeall
%调制
bit_in=randint(1e3,1,[01]);
bit_I=bit_in(1:
2:
1e3);
bit_Q=bit_in(2:
2:
1e3);
data_I=-2*bit_I+1;
data_Q=-2*bit_Q+1;
data_I1=repmat(data_I',20,1);
data_Q1=repmat(data_Q',20,1);
fori=1:
1e4
data_I2(i)=data_I1(i);
data_Q2(i)=data_Q1(i);
end;
f=0:
0.1:
1;
xrc=0.5+0.5*cos(pi*f);
data_I2_rc=conv(data_I2,xrc)/5.5;
data_Q2_rc=conv(data_Q2,xrc)/5.5;
f1=1;
t1=0:
0.1:
1e3+0.9;
n0=rand(size(t1));
I_rc=data_I2_rc.*cos(2*pi*f1*t1);
Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);
QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);
QPSK_rc_n0=QPSK_rc+n0;
%解调
I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1);
Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);
%低通滤波
I_recover=conv(I_demo,xrc);
Q_recover=conv(Q_demo,xrc);
I=I_recover(11:
10010);
Q=Q_recover(11:
10010);
t2=0:
0.05:
1e3-0.05;
t3=0:
0.1:
1e3-0.1;
%抽样判决
data_recover=[];
fori=1:
20:
10000
data_recover=[data_recoverI(i:
1:
i+19)Q(i:
1:
i+19)];
end;
bit_recover=[];
fori=1:
20:
20000
ifsum(data_recover(i:
i+19))>0
data_recover_a(i:
i+19)=1;
bit_recover=[bit_recover1];
else
data_recover_a(i:
i+19)=-1;
bit_recover=[bit_recover-1];
end
end
error=0;
dd=-2*bit_in+1;
ddd=[dd'];
ddd1=repmat(ddd,20,1);
fori=1:
2e4
ddd2(i)=ddd1(i);
end
fori=1:
1e3
ifbit_recover(i)~=ddd(i)
error=error+1;
end
end
p=error/1000;
figure
(1)
subplot(2,1,1);plot(t2,ddd2);axis([0100-22]);title('原序列');
subplot(2,1,2);plot(t2,data_recover_a);axis([0100-22]);title('解调后序列');
%设定T=1,不加噪声
clearall
closeall
%调制
bit_in=randint(1e3,1,[01]);
bit_I=bit_in(1:
2:
1e3);
bit_Q=bit_in(2:
2:
1e3);
data_I=-2*bit_I+1;
data_Q=-2*bit_Q+1;
data_I1=repmat(data_I',20,1);
data_Q1=repmat(data_Q',20,1);
fori=1:
1e4
data_I2(i)=data_I1(i);
data_Q2(i)=data_Q1(i);
end;
t=0:
0.1:
1e3-0.1;
f=0:
0.1:
1;
xrc=0.5+0.5*cos(pi*f);
data_I2_rc=conv(data_I2,xrc)/5.5;
data_Q2_rc=conv(data_Q2,xrc)/5.5;
f1=1;
t1=0:
0.1:
1e3+0.9;
I_rc=data_I2_rc.*cos(2*pi*f1*t1);
Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);
QPSK_rc=(sqrt(1/2).*