2DPSK信号调制解调的matlab设计和仿真
- 格式:doc
- 大小:909.50 KB
- 文档页数:11
摘要MATLAB集成环境下的Simulink仿真平台,设计一个2DPSK调制与解调系统.用示波器观察调制前后的信号波形;用频谱分析模块观察调制前后信号频谱的变化;加上噪声源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统性能。
关键词:Simulink;2DPSK;相干解调目录摘要 (I)关键词 (I)1 引言 (1)1.1 课程设计目的 (1)1.2 课程设计内容 (1)2基本原理 (1)2.1 2DPSK调制与解调原理 (1)2.1.1调制原理 (1)2.1.2解调原理 (2)3系统设计 (4)3.1 2DPSK调制与解调分析 (4)3.1.1 2DPSK调制与解调电路 (4)3.1.2 2DPSK调制部分参数设置 (4)3.1.3 2DPSK解调部分参数设置 (7)3.2 2DPSK调制电路频谱分析 (10)3.3 2DPSK解调电路频谱分析 (12)3.4加有噪声源的调制解调电路分析 (14)4 仿真电路分析与总结 (17)4.1 出现的问题 (17)4.2 解决方法 (17)结束语 (18)参考文献 (18)1 引言2DPSK信号中,相位变化变化是以未调载波的相位作为参考基准的。
由于载波恢复中相位有0、π模糊性,导致解调过程中出现“反相工作”现象,会付出的数字信号“1”和“0”的位置倒置,从而使2psk难以实际应用。
为了克服此缺点,提出了二进制差分相移键控(2dpsk)方式。
1.1 课程设计目的通过课程设计,巩固已经学过的有关数字调制系统的知识,加深对知识的理解和应用,学会应用Matlab Simulink工具对通信系统进行仿真。
1.2 课程设计内容利用MATLAB集成环境下的Simulink仿真平台,设计一个2DPSK调制与解调系统.用示波器观察调制前后的信号波形;用频谱分析模块观察调制前后信号频谱的变化;加上噪声源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统性能。
基于MATLAB 的2DPSK信号的调制与解调仿真西安电子科技大学张**目录题目要求关于2DPSK1基础知识_________________________________________________________________________________ 2 22DPSK 的调制原理_________________________________________________________________________ 2 32DPSK 的解调原理_________________________________________________________________________ 3调制系统仿真1调制系统设计 41)产生基带信号 42)产生相对码______________________________________________________________________ 53)产生载波信号______________________________________________________________________ 64)调制________________________________________________________________________________ 6 2传输系统设计7 3解调系统设计____________________________________________________________________________ 71)带通滤波器72)乘法器______________________________________________________________________________ 83)低通滤波器84)抽样判决器95)延迟单元96)码(反)变换器9 4极性比较法结果105差分相干法结果11四完整程序源码1极性比较法程序DPSK.m 122差分相干法DPSK1.m 15一题目要求产生2DPSK信号,画出时域波形和频谱,分别用极性比较法和差分相干法解调。
2DPSK信号处理仿真(含代码)按照2DPSK产生模型和解调模型分别产生2DPSK信号和高斯白噪声,经过信道传输后进行解调。
对调制解调过程中的波形进行时域和频域观察,并且对解调结果进行误码率测量。
2DPSK信号的解调可以选用非相干解调或者相干解调法。
仿真流程首先通过随机函数产生一列随机的基带信号,这里设定一共有10个码元。
然后对这10个码元进行差分变换,设定起始参考电平为0电平。
则差分序列可以由如下的公式产生:在完成差分序列的产生之后要产生对应的载波,载波采用正弦波,相位设定如下:使用载波与对应的差分序列相乘,首先生成两个ASK波形,叠加这两个ASK波形就得到DPSK调制的已调波形。
完成波形调制之后,直接在波形上叠加高斯白噪声,完成信道传输的模拟。
同时在接收端,首先进行带通滤波,滤除信道中叠加上的噪声,然后通过相干解调的方式进行解调。
让解调后的波形通过低通滤波器,对波形进行平滑处理,最后通过抽样判决判断出接收到的序列码。
对序列码采用公式进行码反变化就可以得到解调后的绝对码序列,对比发送的绝对码序列和接收到的绝对码序列就可以得到误码率。
仿真结果1)码序列:首先可以通过该仿真程序产生输入的绝对码序列和输入的相对码序列。
2)载波信号:产生两个正弦信号作为载波,一个初相为0 ,另一个初相为π。
3)调制后的波形与频谱:为了实现DPSK调制,在完成绝对码向相对码的转换之后,根据这些相对码分别生成对应的ASK调制波形,将两个ASK波形叠加就得到了DPSK的调制波形。
4)通过信道:模拟通过信道,在输入信号上增加均值为0,方差为2的高斯白噪声,得到对应的信号和频谱。
5)通过带通滤波:将接受到的通过信道的波形进行带通滤波,得到滤波后的波形和对应的频谱。
6)相干解调:对经过带通滤波之后的信号再进行相干解调,得到解调后的波形和频谱。
7)通过低通滤波:将上面解调后的信号通过低通滤波可以得到滤波后对应的波形及频谱。
8)得到解调波形及误码率:通过抽样判决得到解调出来的相对码的码序列,然后利用码反变换得到输入的绝对码序列。
摘要MATLAB集成环境下的Simulink仿真平台,设计一个2DPSK调制与解调系统.用示波器观察调制前后的信号波形;用频谱分析模块观察调制前后信号频谱的变化;加上噪声源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统性能。
关键词:Simulink;2DPSK;相干解调目录摘要 (I)关键词 (I)1 引言 (1)1.1 课程设计目的 (1)1.2 课程设计内容 (1)2基本原理 (1)2.1 2DPSK调制与解调原理 (1)2.1.1调制原理 (1)2.1.2解调原理 (2)3系统设计 (4)3.1 2DPSK调制与解调分析 (4)3.1.1 2DPSK调制与解调电路 (4)3.1.2 2DPSK调制部分参数设置 (4)3.1.3 2DPSK解调部分参数设置 (7)3.2 2DPSK调制电路频谱分析 (10)3.3 2DPSK解调电路频谱分析 (12)3.4加有噪声源的调制解调电路分析 (14)4 仿真电路分析与总结 (17)4.1 出现的问题 (17)4.2 解决方法 (17)结束语 (18)参考文献 (18)1 引言2DPSK信号中,相位变化变化是以未调载波的相位作为参考基准的。
由于载波恢复中相位有0、π模糊性,导致解调过程中出现“反相工作”现象,会付出的数字信号“1”和“0”的位置倒置,从而使2psk难以实际应用。
为了克服此缺点,提出了二进制差分相移键控(2dpsk)方式。
1.1 课程设计目的通过课程设计,巩固已经学过的有关数字调制系统的知识,加深对知识的理解和应用,学会应用Matlab Simulink工具对通信系统进行仿真。
1.2 课程设计内容利用MATLAB集成环境下的Simulink仿真平台,设计一个2DPSK调制与解调系统.用示波器观察调制前后的信号波形;用频谱分析模块观察调制前后信号频谱的变化;加上噪声源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统性能。
(完整版)2DPSK调制与解调matlab%- 2DPSK 调制与解调%---------------------------------------------------%>>>>>>>>>>>>>>>>>>参数初始化>>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------fs = 3600000;%采样频率为36000赫兹Time_Hold_On = 1/1200;%一个时钟周期为1200分之1,对应比特率为1200bpsNum_Unit = fs * Time_Hold_On;%一个时钟周期内的采样点个数High_Level = ones ( 1, Num_Unit );%高电平(全1序列)Low_Level = zeros ( 1, Num_Unit );%低电平(全0序列)w = 1800;%载波角频率1800HzA = 1;%载波幅值%---------------------------------------------------%>>>>>>>>>>>>>>>>>>信号初始化>>>>>>>>>>>>>>>%---------------------------------------------------Sign_Set = [0,1,1,0,1,0,0,1];%原始序列Lenth_Of_Sign = length ( Sign_Set );%原始序列长度Sign_Sett = ones(1,Lenth_Of_Sign+1);%差分变换后的序列,初始化为长度为原始序列长度+1的全1序列(第一个码元为1)sign_orign = zeros ( 1, Num_Unit * (Lenth_Of_Sign+1) );%初始化基带信号为全0序列sign_result = zeros ( 1, Num_Unit * (Lenth_Of_Sign+1) );%初始化接收到的基带信号为全0序列st = zeros ( 1, Num_Unit *( Lenth_Of_Sign+1) );%初始化调制后的信号为全0序列t = 0 : 1/fs : Time_Hold_On * (Lenth_Of_Sign +1)- 1/fs;%信号采样时间点result=zeros(1,Lenth_Of_Sign+1);%初始化接收到的序列resultt=zeros(1,Lenth_Of_Sign);%初始化差分解调后的序列%---------------------------------------------------%>>>>>>>>>>>求差分编码>>>>>>>>>>>>%---------------------------------------------------for I = 2 : Lenth_Of_Sign+1 %差分变换后的序列第一个值为1,从第2个开始计算Sign_Sett(I)= xor(Sign_Sett(I-1),Sign_Set(I-1));%用异或运算求差分码end%---------------------------------------------------%>>>>>>>>>>>产生基带信号>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1 %考虑差分变换后序列中每一个值if Sign_Sett(I) == 1sign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level; %序列值为1,基带信号为高电平elsesign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level; %序列值为0,基带信号为低电平endend%---------------------------------------------------%>>>>>>>>>>>>>>>>>>调制部分>>>>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1 %考虑差分变换后序列中每一个值if Sign_Sett(I) == 1st( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) + ( pi / 2 ) );%序列值为1,相位调制为π/2elsest( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) );%序列值为0,相位调制为0 endendfiguresubplot ( 2,1,1 )plot(t, sign_orign);axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - (A / 2), A + (A / 2) ] );title ( '原始信号' );grid %画出基带信号subplot ( 2, 1, 2 );plot ( t, st );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '调制后的信号' );grid %画出相位调制后的信号%---------------------------------------------------%>>>>>>>>>>>>>>>>>>相干解调>>>>>>>>>>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------dt = st .* cos ( 2 * pi * w * t ); %相干相乘figureplot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2),3*(A / 2) ] );title ( '相干相乘后的波形' );grid%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>>低通滤波部分>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------[N,Wn] = buttord( 2*pi*1500, 2*pi*3400,3,25,'s'); %临界频率采用角频率表示,计算低通滤波器参数[b,a]=butter(N,Wn,'s'); %产生N阶低通巴特沃斯滤波器[bz,az]=impinvar(b,a,fs); %映射为数字的dt = filter(bz,az,dt); %将相干相乘后的信号进行滤波figureplot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '低通滤波后的波形' );grid%---------------------------------------------------%>>>>>>>>>>>>>抽样判决& 逆码变换部分>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1if dt((2*I-1)*Num_Unit/2) < 0.25 %在时钟周期中间采样,由于相干相乘后信号幅值变为1/2,所以判决门限为0.25sign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level;elsesign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level;end%由于相干相乘后得到的信号变为原来的负数,所以进行逆码变换endfigureplot ( t, sign_result );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '逆码变换后的波形' );grid%---------------------------------------------------%>>>>>>>>>>>序列生成与差分还原>>>>>>>>>>>>%---------------------------------------------------for I=1: Lenth_Of_Sign+1result(I)=sign_result(I* Num_Unit)%将接收到的信号生成(差分)序列endfor I = 1 : Lenth_Of_Signresultt(I)= xor(result(I),result(I+1)) %将接收到的差分序列还原为原序列endwindow=boxcar(length(st)); %矩形窗nfft=1024;[Pxx,f]=periodogram(st,window,nfft,fs); %求功率谱密度plot(f,10*log10(Pxx));。
%- 2DPSK 调制与解调%---------------------------------------------------%>>>>>>>>>>>>>>>>>>参数初始化>>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------fs = 3600000;%采样频率为36000赫兹Time_Hold_On = 1/1200;%一个时钟周期为1200分之1,对应比特率为1200bpsNum_Unit = fs * Time_Hold_On;%一个时钟周期内的采样点个数High_Level = ones ( 1, Num_Unit );%高电平(全1序列)Low_Level = zeros ( 1, Num_Unit );%低电平(全0序列)w = 1800;%载波角频率1800HzA = 1;%载波幅值%---------------------------------------------------%>>>>>>>>>>>>>>>>>>信号初始化>>>>>>>>>>>>>>>%---------------------------------------------------Sign_Set = [0,1,1,0,1,0,0,1];%原始序列Lenth_Of_Sign = length ( Sign_Set );%原始序列长度Sign_Sett = ones(1,Lenth_Of_Sign+1);%差分变换后的序列,初始化为长度为原始序列长度+1的全1序列(第一个码元为1)sign_orign = zeros ( 1, Num_Unit * (Lenth_Of_Sign+1) );%初始化基带信号为全0序列sign_result = zeros ( 1, Num_Unit * (Lenth_Of_Sign+1) );%初始化接收到的基带信号为全0序列st = zeros ( 1, Num_Unit *( Lenth_Of_Sign+1) );%初始化调制后的信号为全0序列t = 0 : 1/fs : Time_Hold_On * (Lenth_Of_Sign +1)- 1/fs;%信号采样时间点result=zeros(1,Lenth_Of_Sign+1);%初始化接收到的序列resultt=zeros(1,Lenth_Of_Sign);%初始化差分解调后的序列%---------------------------------------------------%>>>>>>>>>>>求差分编码>>>>>>>>>>>>%---------------------------------------------------for I = 2 : Lenth_Of_Sign+1 %差分变换后的序列第一个值为1,从第2个开始计算Sign_Sett(I)= xor(Sign_Sett(I-1),Sign_Set(I-1));%用异或运算求差分码end%---------------------------------------------------%>>>>>>>>>>>产生基带信号>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1 %考虑差分变换后序列中每一个值if Sign_Sett(I) == 1sign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level; %序列值为1,基带信号为高电平elsesign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level; %序列值为0,基带信号为低电平endend%---------------------------------------------------%>>>>>>>>>>>>>>>>>>调制部分>>>>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1 %考虑差分变换后序列中每一个值if Sign_Sett(I) == 1st( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) + ( pi / 2 ) );%序列值为1,相位调制为π/2elsest( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) );%序列值为0,相位调制为0endendfiguresubplot ( 2,1,1 )plot(t, sign_orign);axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - (A / 2), A + (A / 2) ] );title ( '原始信号' );grid %画出基带信号subplot ( 2, 1, 2 );plot ( t, st );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '调制后的信号' );grid %画出相位调制后的信号%---------------------------------------------------%>>>>>>>>>>>>>>>>>>相干解调>>>>>>>>>>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------dt = st .* cos ( 2 * pi * w * t ); %相干相乘figureplot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '相干相乘后的波形' );grid%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>>低通滤波部分>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------[N,Wn] = buttord( 2*pi*1500, 2*pi*3400,3,25,'s'); %临界频率采用角频率表示,计算低通滤波器参数[b,a]=butter(N,Wn,'s'); %产生N阶低通巴特沃斯滤波器[bz,az]=impinvar(b,a,fs); %映射为数字的dt = filter(bz,az,dt); %将相干相乘后的信号进行滤波figureplot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '低通滤波后的波形' );grid%---------------------------------------------------%>>>>>>>>>>>>>抽样判决& 逆码变换部分>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Sign+1if dt((2*I-1)*Num_Unit/2) < 0.25 %在时钟周期中间采样,由于相干相乘后信号幅值变为1/2,所以判决门限为0.25sign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level;elsesign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level;end%由于相干相乘后得到的信号变为原来的负数,所以进行逆码变换endfigureplot ( t, sign_result );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 2), - 3*(A / 2), 3*(A / 2) ] );title ( '逆码变换后的波形' );grid%---------------------------------------------------%>>>>>>>>>>>序列生成与差分还原>>>>>>>>>>>>%---------------------------------------------------for I=1: Lenth_Of_Sign+1result(I)=sign_result(I* Num_Unit)%将接收到的信号生成(差分)序列endfor I = 1 : Lenth_Of_Signresultt(I)= xor(result(I),result(I+1)) %将接收到的差分序列还原为原序列endwindow=boxcar(length(st)); %矩形窗nfft=1024;[Pxx,f]=periodogram(st,window,nfft,fs); %求功率谱密度plot(f,10*log10(Pxx));。
通信原理matlab课程设计--2ASK、2FSK、2PSK、2DPSK调制解调matlab仿真南昌大学通信原理课程设计报告题目: 2ASK、2FSK、2PSK、2DPSK调制解调matlab仿真姓名:学院:信工学院专业:指导教师:完成日期:2013 年5 月5日一、设计要求课程设计需要运用MATLAB 编程实现2ASK,2FSK,2PSK ,2DPSK 调制解调过程,并且输出其源码,调制后码元以及解调后码元的波形。
二、基本原理二进制数字调制技术原理数字信号的传输方式分为基带传输和带通传输,在实际应用中,大多数信道具有带通特性而不能直接传输基带信号。
为了使数字信号在带通信道中传输,必须使用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。
这种用数字基带信号控制载波,把数字基带信号变换为数字带通信号的过程称为数字调制。
通常使用键控法来实现数字调制,比如对载波的振幅、频率和相位进行键控。
(1)振幅键控是利用载波的幅度变化来传递数字信息,而其频率和相位保持不变,在2ASK 中,载波的幅度只有两种变化状态,分别对应二进制信息‘0’和‘1’。
OOK (通-断键控)是一种常用的二进制振幅键控式模拟调制器法 键控法包络检波法)开关电路2e2e同步检测法(2) 一个2FSK 信号可以看成是两个不同载波的2ASK 信号的叠加。
其解调和解调方法和ASK 差不多。
2FSK 信号的频谱可以看成是f1和f2的两个2ASK 频谱的组合。
2FSK 信号的产生方法采用模拟调频电路来实现:信号在相邻码元之间的相位是连续变化的。
采用键控法来实现:相邻码元之间的相位不一定连续。
2FSK 信号的解调方法相干解调2e FSK2e FSK非相干解调(3) 2PSK 以载波的相位变化作为参考基准的,当基带信号为0时相位相对于初始相位为0, 当基带信号为1时相对于初始相位为180°。
调制器原理方框图如下:检控法2PSK 信号的解调器原理方框图(4) 2DPSK 是利用前后相邻码元的载波相对相位变化传递数字信息,所以又称相对相移键控。
2DPSK系统设计和仿真2DPSK(2-Differential Phase Shift Keying)是一种数字调制技术,通过在相邻的两个符号间比较相位差来传输数字信息。
在2DPSK系统中,每个符号都对应着2个相位状态,即+180°和-180°,通过在相邻符号间相位差的改变来表示二进制数据。
1.2DPSK调制器设计:2DPSK调制器是将数字数据转换为相位信号的关键组件。
常用的方法是采用相移键控(PSK)调制器。
相移键控调制器通过改变每个符号间的相位差来进行调制。
在2DPSK系统中,相位差的变化为180°,即+180°和-180°。
2.2DPSK解调器设计:3.信道设计:在2DPSK系统设计中,信道是一个重要的考虑因素。
信道可以引入噪声和失真,对系统性能产生影响。
设计合适的信道模型,可以更好地评估系统的性能。
4.误码率性能评估:误码率(BER)是衡量2DPSK系统性能的重要指标。
通过使用理论模型或进行仿真,可以评估不同调制参数和信道条件下系统的BER性能。
5.系统参数优化:对于设计的2DPSK系统,可以通过仿真来优化系统参数。
这包括调制索引、信道带宽、功率衰减等。
通过调整这些参数,系统的性能可以得到改善。
在进行2DPSK系统的仿真时,可以使用MATLAB等工具来实现。
利用MATLAB中提供的相关函数,可以方便地进行信号的生成、调制、解调和误码率性能评估等。
通过设置合适的参数,模拟实际场景下的信号传输过程,进而优化系统设计。
总结起来,2DPSK系统设计和仿真的关键步骤包括调制器和解调器的设计、信道建模、误码率性能评估以及系统参数优化。
通过合理的设计和仿真,可以有效地评估系统的性能,并进行参数调整以满足要求。
利用MATLAB实现DPSK调制及解调
DPSK(Differential Phase Shift Keying)调制是一种数字信息传输调制方式。
它采用相位差的改变来表示数字信息,具有抗噪声和波动的能力,因此在数字通信领域得到了广泛的应用。
MATLAB是一种适合数字信号处理的工具,可以有效地实现DPSK调制及解调。
以下是具体的实现步骤:
DPSK调制
1. 生成数字信息比特流,转换为1和-1形式。
2. 将比特流进行差分编码得到差分比特流。
3. 将差分比特流分组,每组2个比特。
4. 根据相邻两个比特的差异,确定相位差。
差分比特流为00或11时,相位差为0;差分比特流为01或10时,相位差为π。
5. 根据相位差,生成相位进行调制得到调制信号。
可以使用sinc函数或高斯函数对信号进行脉冲整形。
DPSK解调
1. 将DPSK调制后的信号送入相干解调器。
2. 使用带通滤波器去除高频噪声。
3. 再次进行相干解调,得到调制信号。
4. 对调制信号进行差分解码还原差分比特流。
5. 对差分比特流进行译码得到数字信息比特流。
利用MATLAB实现DPSK调制及解调的代码可在Matlab官网上找到并学习使用。
2DPSK调制解调系统的设计和仿真第一部分:调制器设计调制器是将输入比特流转换为相位差,从而进行调制的部分。
2DPSK 调制器的设计可以采用查表法。
首先,将输入比特流分为两个并行流,分别表示实部和虚部。
然后,通过比较当前比特和上一个比特的差异,确定下一个相位的差别。
假设当前比特为0,上一个比特为1,则相位差为π/2;假设当前比特为1,上一个比特为1,则相位差为0。
最后,根据相位差确定相位(0、π/2、π、3π/2)。
设计调制器时,可以使用Matlab或Simulink等工具进行仿真。
根据输入比特流,通过调制器可以得到相应的相位差输出。
第二部分:信道建模信道建模是模拟实际传输环境中的信道特性。
在信道建模过程中,需要考虑到信道带宽、噪声等因素。
可以采用高斯信道模型或瑞利信道模型进行仿真。
其中,高斯信道模型适用于室内或受干扰较少的环境,瑞利信道模型适用于室外或有多径衰落的环境。
第三部分:解调器设计解调器是将接收到的信号恢复为原始比特流的部分。
2DPSK解调器的设计可以采用软判决法。
首先,检测接收到的相位与已知相位差之间的关系。
根据相位差的不同,确定当前接收到的比特是0还是1、然后,根据比特的变化进行恢复,即将当前比特与上一个比特进行异或运算,得到输出比特流。
设计解调器时,可以使用Matlab或Simulink等工具进行仿真。
根据接收到的相位差,通过解调器可以得到恢复后的比特流输出。
总结:通过以上三个步骤,可以设计并仿真一个完整的2DPSK调制解调系统。
首先,设计调制器将输入比特流转换为相位差;然后,建立信道模型进行仿真;最后,设计解调器将接收到的信号恢复为原始比特流。
通过仿真,可以评估系统的性能指标,如误比特率(BER)等,并进行调试和优化。
2PSK和2DPSK调制解调仿真系统设计在设计2PSK和2DPSK调制解调仿真系统之前,我们首先需要了解什么是PSK和DPSK调制方式。
PSK(Phase Shift Keying)是一种利用相位来表达数字信息的调制方式。
在2PSK调制中,发送的数字信息被编码为两个相位状态,一般是0度和180度。
接收端通过检测相位的变化来解调数字信息。
DPSK(Differential Phase Shift Keying)也是一种相位调制方式,但与PSK不同的是,DPSK调制是基于相邻比特之间的相对相位差。
在2DPSK调制中,一个比特对应两个相位状态之一,但这两个相位状态的确定是基于前一个比特的相对相位差。
接收端同样通过检测相位差的变化来解调数字信息。
接下来,我们将详细介绍设计2PSK和2DPSK调制解调仿真系统的步骤。
1.确定系统的基本参数和需求:-选择合适的载波频率和带宽-确定符号周期和比特周期-确定基带信号的采样率和采样时间-确定传输信道的信噪比和衰落模型2.生成发送端的数字信息序列:-设计一个随机或固定的比特序列作为发送端的数字信息-确定比特序列的长度和采样率-将比特序列映射为相应的相位状态,得到发送信号3.进行2PSK调制:-根据2PSK调制的原理和公式,将发送信号转换为相位调制信号-可以使用复数来表示相位调制信号,实部和虚部分别对应相位为0度和180度-进行幅度归一化处理,使信号的平均功率为14.模拟信道传输:-在发送信号上加入高斯白噪声,模拟信道的干扰和噪声-考虑信道的衰落效应,可以使用加性高斯白噪声信道或其他信道模型5.进行2PSK解调:-接收端接收到经过信道传输的调制信号-经过采样和判决处理,将接收信号恢复为数字信息-利用解调的相位差来确定数字信息的比特值6.生成2DPSK发送信号:-根据2DPSK调制的原理和公式,将发送信号转换为相位调制信号-相对于2PSK调制,2DPSK调制相邻比特之间的相对相位差决定了相位状态的切换7.进行2DPSK调制和传输:-类似于2PSK调制和信道传输的步骤,将2DPSK发送信号调制和传输到接收端8.进行2DPSK解调:-接收端接收到经过信道传输的2DPSK调制信号-经过采样和判决处理,将接收信号恢复为数字信息9.分析和评估系统性能:- 计算误码率(Bit Error Rate, BER)和符号误码率(Symbol Error Rate, SER)等性能指标-绘制BER和SER随信噪比的变化曲线,评估系统的可靠性和性能10.优化和改进系统设计:-根据系统性能评估的结果,对系统参数进行调整和优化-可以尝试使用不同的调制方式、码型或编码技术来改进系统性能设计2PSK和2DPSK调制解调仿真系统需要考虑到数字信号的生成和调制、信道传输和解调等各个环节,同时还需要注意选择适当的参数和模型来实现系统的设计和仿真。
论文题目:2DPSK调制解调仿真系统设计专业:通信技术学号: 0807040211学生:苏瑜签名:_____指导教师:张鸣签名:_____摘要二进制差分相移键控简称二相相对调相,记作2DPSK。
它是数据通信中最常用的一种调制方式,这种方式的优点是简单,易于实现。
与2PSK的波形不同,2DPSK 波形的同一相位并不对应相同的数字信息符号,而前后码元的相对相位才唯一确定信息符号。
为了使数字信号在带通信道中传输,必须用数字基带信号对载波进行调制,以使信号与信道特性相匹配。
调制解调技术是实现现代通信的重要手段,研究数字通信调制解调理论,提供有效的调制方式,有着重要意义。
Matlab中的通信工具箱可以用来进行通信领域的研究、开发、系统设计和仿真。
本文主要研究了利用Matlab Simulink软件对2DPSK调制解调系统的设计。
首先介绍了2DPSK调制解调的基本原理和Matlab Simulink仿真软件。
然后根据2DPSK的调制原理及解调原理进行了仿真模型搭建,并分析了仿真结果。
最后利用Matlab Simulink 中的DBPSK Modulator Baseband和DBPSK Demodulator Baseband模块实现了2DPSK调制解调系统设计。
【关键词】Matlab Simulink 2DPSK 调制解调【论文类型】设计型Title: 2DPSK of Modulation and Demodulation Simulation System Design Major: Communication Technology Number: 0807040211 Name:Su Yu Signature:Supervisor:Zhang Ming Signature:ABSTRACTBinary differential phase shift keying modulation is relatively short two-phase, denoted by 2DPSK. It is one of the most commonly used modulation in data communications, this approach has the advantage of simple, easy to implement. 2DPSK waveform is different from 2PSK waveform. 2DPSK waveform does not correspond to the same phase of the same number of information symbols, and the relative phase of the before and after symbol determine the only information symbols. In order to make the digital signal transmitted in a communication channel,we must use digital baseband signal to modulate the carriert, which can make the signal match the channel characteristics. Modulation and demodulation technology is an important means to achieve modern communications, modulation and demodulation of digital communications theory,and it can provide an effective way of great significance. Matlab toolbox of communication in the field of communications can be used for research, development, system design and simulationThis paper studies the use of Matlab Simulink software to design 2DPSK modem system. First it introduces the basic principles of 2DPSK modulation and demodulation and Matlab Simulink simulation software. Then according to the principle of 2DPSK modulation and demodulation, it builds the simulation model and analysis of simulation results. Finally, in the 2DPSK modulator and 2DPSK demodulator module of Matlab Simulink,it implements the design of 2DPSK modem system.【Key words】Matlab Simulink 2DPSK Modulate Demodulate 【Type of Thesis】Design前言本文主要是熟悉Matlab的运用,了解2DPSK的原理及其原理图,利用Matlab/Simulink仿真软件,设计一个2DPSK调制与解调系统,并得出调制后的信号,用示波器对调制前与解调后的波形进行比较,最后进行性能分析。
基于MATLAB的2DPSK低频感应通信系统仿真设
计
0 引言
感应通信是将待传输的数据通过低频载波调制、信号放大、功率放大后,在发射线圈产生一定的交变电流,利用交变的电流产生交变的磁场,交变的磁场产生的电场,从而在接收线圈中产生感应电动势,经滤波、解调、解码等信号处理环节后,就可在接收端准确接收发送的信息。
本文研究与设计的低频感应通信系统是一个无线的数字通信系统,结合DPSK 数字通信原理,提出基于DSP技术的软件无线电低频感应通信系统的设计方法,并利用MATLAB 软件对该DPSK 通信系统进行仿真设计。
1 低频感应通信的基本原理及工作特性
1.1 感应通信的基本原理
感应通信是利用发射线圈中的交变电流,产生变化磁场使在接收线圈中感应出电动势,再经过一系列的信号处理过程得到发射信号,从而实现了通信的目的。
当类似巷道的场合中存在着金属导体(称为感应线),附近的发射机
发射无线电信号时,发射机天线上可以产生感应电流。
该电流在感应线周围产生信号场强,沿途的无线接收机天线可因感应而接收信号,经放大和处理,获得发射机发出的信息,完成通信过程,这就是感应通信的基本原理。
1.2 感应通信的工作特性
严格的感应通信理论是建立在麦克斯韦方程组的基础上。
麦克斯韦方程组是在对宏观电磁现象的实验规律进行分析总结的基础上,经过扩充和推广而得到的。
它揭示了电场与磁场之间、以及电磁场与电荷、电流之间的相互关系,是一切宏观电磁现象所遵循的普遍规律。
课程设计班级:通信09—2班*名:**学号:**********指导教师:***成绩:电子与信息工程学院通信工程系目录(contents)摘要-----------------------------------------------------------02 第一章:绪论---------------------------------------------------02 第二章:2DPSK信号调制原理--------------------- ----------------02 第三章:2DPSK调制和解调原理------------------------------------03 3.1 2DPSK信号调制原理------------------------------------------04 3.2 2DPSK信号解调原理------------------------------------------04 第四章:Simulink模型建立---------------------------------------05 4.1 2DPSK调制模块-----------------------------------------------05 4.2 相干解调----------------------------------------------------07 4.3差分相干解调-------------------------------------------------09 第五章:心得体会-------------------------------------------------11 参考文献--------------------------------------------------------11基于simulink的2DPSK差分相干解调器设计Abstract:using communication principle in the knowledge and understanding of matlab simulink, use simulin function design 2 DPSK difference coherent modem and simulation.摘要:利用在通信原理中所学知识和对matlab中simulink的了解,利用simulin功能设计2DPSK差分相干解调器和进行仿真。
设计(论文)题目:2DPSK的调制与解调姓名学号班级学院指导教师目录摘要 (2)第1章2DPSK原理介绍 (3)1.1 2DPSK的基本原理: (3)1.2 2DPSK的调制原理: (4)1.3 2DPSK的解调原理: (5)1.3.1 极性比较法: (7)1.3.2 相位比较法: (7)第2章系统仿真 (8)2.1.1 2DPSK调制解调系统的总体设计 (8)2.1.2 具体设计 (9)第3章结论 (14)参考文献 (15)2DPSK调制与解调摘要在现代通信技术中,因为基于数字信号的数据传输优于模拟信号的传输,所以数字信号的传输显得越来越重要。
虽然近距离时我们可以利用数字基带信号直接传输,但是进行远距离传输时必须将基带信号调制到高频处。
为了使数字信号能够在信道中传输,要求信道应具有高通形式的传输特性。
然而,在实际信道中,大多数信道具有带通传输特性,数字信号不能直接在这种带通传输特特性的信道中传输,因此,必须用数字信号对载波进行调制,产生各种已调信号。
我们通常采用数字键控的方法来实现数字调制信号,所以又将其称为键控法。
当调制信号采用二进制数字信号时,这种调制就被称为二进制数字调制。
最常用的二进制数字调制方式有二进制振幅键控、二进制移频键控和二进制移相键控。
其中二进制移相键控又包括两种方式:绝对移相键控(2PSK)和相对(差分)移相方式(2DPSK )。
在二进制数字调制中,当正弦载波的相位随二进制数字基带信号离散变化时,就产生了二进制移相键控,即所谓的绝对移相键控(2PSK)。
虽然绝对移相键控的实现方法较为简单,但是却存在一个缺点,即我们所说的倒“ ”现象。
因此,在实际中一般不采用2PSK 方式,而采用2DPSK方式对数字信号进行调制解调。
本文主要讨论关于2DPSK 的调制解调。
并将其与MATLAB结合进行研究和仿真。
第1章 2DPSK 原理介绍1.1 2DPSK 的基本原理:说到2DPSK ,就不得不说一下二进制移相键控(2PSK )。
基于MATLAB的2DPSK调制和解调仿真1. MATLAB/SIMULINK简介美国Mathworks公司于1967年推出了矩阵实验室“Matrix Laboratory”(缩写为Matlab)这就是Matlab最早的雏形。
开发的最早的目的是帮助学校的老师和学生更好的授课和学习。
从Matlab诞生开始,由于其高度的集成性及应用的方便性,在高校中受到了极大的欢迎。
由于它使用方便,能非常快的实现科研人员的设想,极大的节约了科研人员的时间,受到了大多数科研人员的支持,经过一代代人的努力,目前已发展到了7.X版本。
Simulink是MATLAB中的一种可视化仿真工具,也是目前在动态系统的建模和仿真等方面应用最广泛的工具之一。
确切的说,Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,连续、离散时间模型,或者是两者的混合。
系统还可以使多种采样频率的系统,而且系统可以是多进程的。
在Simulink环境中,它为用户提供了方框图进行建模的图形接口,采用这种结构画模型图就如同用手在纸上画模型一样自如、方便,故用户只需进行简单的点击和拖动就能完成建模,并可直接进行系统的仿真,快速的得到仿真结果。
2.二进制差分相位键控(2DPSK)在2PSK信号中,信号相位的变化是以未调正弦载波的相位作为参考,用载波相位的绝对数值表示数字信息的,所以称为绝对移相.由图 2 - 14 所示2PSK 信号的解调波形可以看出, 由于相干载波恢复中载波相位的180°相位模糊,导致解调出的二进制基带信号出现反向现象,从而难以实际应用. 为了解决2PSK信号解调过程的反向工作问题, 提出了二进制差分相位键控(2DPSK). 2DPSK方式是用前后相邻码元的载波相对相位变化来表示数字信息.假设前后相邻码元的载波相位差为Δφ,可定义一种数字信息与Δφ之间的关系为则一组二进制数字信息与其对应的 2DPSK 信号的载波相位关系如下所示:二进制数字信息: 1 1 0 1 0 0 1 1 1 02DPSK信号相位: 0 π 0 0 πππ 0 π 0 0或π 0 ππ 0 0 0 π 0 ππ数字信息与Δφ之间的关系也可以定义为可以看出,2DPSK信号的实现方法可以采用:首先对二进制数字基带信号进行差分编码,将绝对码表示二进制信息变换为用相对码表示二进制信息,然后再进行绝对调相,从而产生二进制差分相位键控信号。
2DPSK调制与解调系统的仿真摘要设计了差分编码移相键控(2DPSK)调制解调系统的工作流程图,并利用Matlab 软件对该系统的动态进行了模拟仿真。
利用仿真的结果,从基带信号的波形图可以衡量数字信号的传输质量;由系统的输入和输出波形图可以看出,仿真实验良好。
2DPSK调制解调系统的仿真设计,为以后进一步研究基于Matlab的通信实验仿真系统奠定了坚实的基础。
关键词调制解调; 差分移相编码; 仿真设计1、 2DPSK基本原理1.1 2DPSK信号原理2DPSK方式即是利用前后相邻码元的相对相位值去表示数字信息的一种方式。
现假设用Φ表示本码元初相与前一码元初相之差,并规定:Φ=0表示0码,Φ=π表示1码。
则数字信息序列与2DPSK信号的码元相位关系可举例表示如2PSK信号是用载波的不同相位直接去表示相应的数字信号而得出的,在接收端只能采用相干解调,它的时域波形图如图2.1所示。
图1.1 2DPSK信号在这种绝对移相方式中,发送端是采用某一个相位作为基准,所以在系统接收端也必须采用相同的基准相位。
如果基准相位发生变化,则在接收端回复的信号将与发送的数字信息完全相反。
所以在实际过程中一般不采用绝对移相方式,而采用相对移相方式。
定义∆Φ为本码元初相与前一码元初相之差,假设:∆Φ=0→数字信息“0”;∆Φ=π→数字信息“1”。
则数字信息序列与2DPSK 信号的码元相位关系可举例表示如下: 数字信息: 1 0 1 1 0 1 1 1 0 1 DPSK 信号相位:0 π π 0 π π 0 π 0 0 π或:π 0 0 π 0 0 π 0 π π 01.2 2DPSK 信号的调制原理一般来说,2DPSK 信号有两种调试方法,即模拟调制法和键控法。
2DPSK 信号的的模拟调制法框图如图1.2.1所示,其中码变换的过程为将输入的单极性不归零码转换为双极性不归零码。
图1.2.1 模拟调制法2DPSK 信号的的键控调制法框图如图1.2.2所示,其中码变换的过程为将输入的基带信号差分,即变为它的相对码。
选相开关作用为当输入为数字信息“0” 时接相位0,当输入数字信息为“1”时接pi 。
图1.2.2 键控法调制原理图1.3 2DPSK 信号的解调原理2DPSK 信号最常用的解调方法有两种,一种是极性比较和码变换法,另一种是差分相干解调法。
1.3.1 2DPSK 信号解调的极性比较法它的原理是2DPSK 信号先经过带通滤波器,去除调制信号频带以外的在信道中混入的噪声,再与本地载波相乘,去掉调制信号中的载波成分,再经过低通滤波器去除高频成分,得到包含基带信号的低频信号,将其送入抽样判决器中进行抽样判决的到基带信号的差分码,再经过逆差分器,就码变换相乘载波s(t)e o (t)得到了基带信号。
它的原理框图如图1.3.1所示。
图 1.3.1 极性比较解调原理图1.3.2 2DPSK信号解调的差分相干解调法差分相干解调的原理是2DPSK信号先经过带通滤波器,去除调制信号频带以外的在信道中混入的噪声,此后该信号分为两路,一路延时一个码元的时间后与另一路的信号相乘,再经过低通滤波器去除高频成分,得到包含基带信号的低频信号,将其送入抽样判决器中进行抽样判决,抽样判决器的输出即为原基带信号。
它的原理框图如图1.3.2所示。
图 1.3.2 差分相干解调原理图2、建立模型2.1 差分和逆差分变换模型差分变换模型的功能是将输入的基带信号变为它的差分码。
逆码变换器原理图如下:逆码变换器(a)原理方框图2.2 带通滤波器和低通滤波器的模型带通滤波器模型的作用是只允许通过(fl,fh)范围内的频率分量、但将其他范围的频率分量衰减到极低水平。
低通滤波器模型的作用是只允许通过(0,fh)范围内的频率分量,并且将其他范围的频率分量衰减到极低水平。
在Matlab中带通滤波器和低通滤波器的模型可以用编写程序来模拟。
2.3 抽样判决器模型抽样判决器的功能是根据位同步信号和设置的判决电平来还原基带信号。
在Matlab中抽样判决器可以用simulink中的模块来模拟。
它的模型框图如图所示,它的内部结构图如图2.3所示。
图 3.3 抽样判决器2.4 系统结构图图2.4.1 系统结构图2.4.2 2DPSK调制与解调总原理框图图2.4.2 2DPSK调制与解调总原理框图3、仿真3.1 仿真程序%- 2DPSK 调制与解调%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>Initial_Part>>>>>>>>>>>>>>>>>>>>> %---------------------------------------------------function y=dpsk2()fs = 30000;Time_Hold_On = 0.1;Num_Unit = fs * Time_Hold_On;High_Level = ones ( 1, Num_Unit );Low_Level = zeros ( 1, Num_Unit );w = 300;A = 1;%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>Initial_The_Signal>>>>>>>>>>>>>>> %---------------------------------------------------Sign_Set = [0,1,1,0,1,0,0,1]Lenth_Of_Sign = length ( Sign_Set );st = zeros ( 1, Num_Unit * Lenth_Of_Sign );sign_orign = zeros ( 1, Num_Unit * Lenth_Of_Sign );sign_result = zeros ( 1, Num_Unit * Lenth_Of_Sign );t = 0 : 1/fs : Time_Hold_On * Lenth_Of_Sign - 1/fs;%--------------------------------------------------- %>>>>>>>>>>>Generate_The_Original_Signal>>>>>>>>>>>> %---------------------------------------------------for I = 1 : Lenth_Of_Signif Sign_Set(I) == 1sign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level;elsesign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level;endend%---------------------------------------------------%>>>>>>>>>>>>>>>>>>Modulation_Part>>>>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Signif Sign_Set(I) == 1st( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) + ( pi / 2 ) );elsest( (I-1)*Num_Unit + 1 : I*Num_Unit) = A * cos ( 2 * pi * w * t( (I-1)*Num_Unit + 1 : I*Num_Unit ) );endendfiguresubplot ( 2, 1, 1 )plot(t, sign_orign);axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 1), - (A / 2), A + (A / 2) ] );title ( '原始信号' );gridsubplot ( 2, 1, 2 );plot ( t, st );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 1), - 3*(A / 2), 3*(A / 2) ] );title ( '调制后的信号' );grid%---------------------------------------------------%>>>>>>>>>>>>>>>>>>相乘>>>>>>>>>>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------dt = st .* cos ( 2 * pi * w * t );figuresubplot(2,1,1)plot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 1), - 3*(A / 2), 3*(A / 2) ] );title ( '相乘后的波形' );grid%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>>低通滤波部分>>>>>>>>>>>>>>>>>>>>%---------------------------------------------------[N,Wn] = buttord( 2*pi*50, 2*pi*150,3,25,'s'); %临界频率采用角频率表示[b,a]=butter(N,Wn,'s');[bz,az]=impinvar(b,a,fs); %映射为数字的dt = filter(bz,az,dt);subplot(2,1,2)plot ( t, dt );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 1), - 3*(A / 2), 3*(A / 2) ] ); title ( '低通滤波后的波形' );grid%--------------------------------------------------- %>>>>>>>>>>>>>抽样判决& 逆码变换部分>>>>>>>>>>>>>>>%---------------------------------------------------for I = 1 : Lenth_Of_Signif dt((2*I-1)*Num_Unit/2) < 0.25sign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level;elsesign_result( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level;endendfigureplot ( t, sign_result );axis( [ 0 , Time_Hold_On *( Lenth_Of_Sign + 1), - 3*(A / 2), 3*(A / 2) ] ); title ( '逆码变换后的波形' );grid3.2.1 2DPSK模拟调制和差分相干解调法仿真图图3.4.2 2DPSK模拟调制和差分相干解调法仿真图4、调试过程及结论4.1 差分相干法2DPSK信号经相关模块调试后的波形图如下:调制过后加入高斯白噪声,连接到带通滤波器,去除调制信号以外的在信道中混入的噪声,再连接到相乘器。