当前位置:文档之家› 统计调制方式

统计调制方式

调制方式按照调制信号的性质分为模拟调制和数字调制两类;按照载波的形式分为连续波调制和脉冲调制两类。

模拟调制有调幅(AM)、调频(FM)和调相(PM)。

数字调制有振幅键控(ASK)、移频键控(FSK)、移相键控(PSK)和差分移相键控(DPSK)等。

脉冲调制有脉幅调制(PAM)、脉宽调制(PDM)、脉频调制(PFM)、脉位调制(PPM)、脉码调制(PCM)和增量调制(ΔM)。

按照传输特性,调制方式又可分为线性调制和非线性调制。

广义的线性调制,是指已调波中被调参数随调制信号成线性变化的调制过程。

狭义的线性调制,是指把调制信号的频谱搬移到载波频率两侧而成为上、下边带的调制过程。

此时只改变频谱中各分量的频率,但不改变各分量振幅的相对比例,使上边带的频谱结构与调制信号的频谱相同,下边带的频谱结构则是调制信号频谱的镜像。

狭义的线性调制有调幅(AM)、抑制载波的双边带调制(DSB-SC)和单边带调制(SSB)。

1、模拟调制一般指调制信号和载波都是连续波的调制方式。

它有调幅、调频和调相三种基本形式。

(1)调幅(AM):用调制信号控制载波的振幅,使载波的振幅随着调制信号变化。

已调波称为调幅波。

调幅波的频率仍是载波频率,调幅波包络的形状反映调制信号的波形。

调幅系统实现简单,但抗干扰性差,传输时信号容易失真。

(2)调频(FM):用调制信号控制载波的振荡频率,使载波的频率随着调制信号变化。

已调波称为调频波。

调频波的振幅保持不变,调频波的瞬时频率偏离载波频率的量与调制信号的瞬时值成比例。

调频系统实现稍复杂,占用的频带远较调幅波为宽,因此必须工作在超短波波段。

抗干扰性能好,传输时信号失真小,设备利用率也较高。

(3)调相(PM):用调制信号控制载波的相位,使载波的相位随着调制信号变化。

已调波称为调相波。

调相波的振幅保持不变,调相波的瞬时相角偏离载波相角的量与调制信号的瞬时值成比例。

在调频时相角也有相应的变化,但这种相角变化并不与调制信号成比例。

在调相时频率也有相应的变化,但这种频率变化并不与调制信号成比例。

在模拟调制过程中已调波的频谱中除了载波分量外在载波频率两旁还各有一个频带,因调制而产生的各频率分量就落在这两个频带之内。

这两个频带统称为边频带或边带。

位于比载波频率高的一侧的边频带,称为上边带。

位于比载波频率低的一侧的边频带,称为下边带。

在单边带通信中可用滤波法、相移法或相移滤波法取得调幅波中一个边带,这种调制方法称为单边带调制(SSB)。

单边带调制常用于有线载波电话和短波无线电多路通信。

在同步通信中可用平衡调制器实现抑制载波的双边带调制(DSB-SC)。

在数字通信中为了提高频带利用率而采用残留边带调制(VSB),即传输一个边带(在邻近载波的部分也受到一些衰减)和另一个边带的残留部分。

在解调时可以互相补偿而得到完整的基带。

2、数字调制一般指调制信号是离散的,而载波是连续波的调制方式。

它有四种基本形式:振幅键控、移频键控、移相键控和差分移相键控。

①振幅键控(ASK):用数字调制信号控制载波的通断。

如在二进制中,发0时不发送载波,发1时发送载波。

有时也把代表多个符号的多电平振幅调制称为振幅键控。

振幅键控实现简单,但抗干扰能力差。

②移频键控(FSK):用数字调制信号的正负控制载波的频率。

当数字信号的振幅为正时载波频率为f1,当数字信号的振幅为负时载波频率为f2。

有时也把代表两个以上符号的多进制频率调制称为移频键控。

移频键控能区分通路,但抗干扰能力不如移相键控和差分移相键控。

③移相键控(PSK):用数字调制信号的正负控制载波的相位。

当数字信号的振幅为正时,载波起始相位取0;当数字信号的振幅为负时,载波起始相位取180°。

有时也把代表两个以上符号的多相制相位调制称为移相键控。

移相键控抗干扰能力强,但在解调时需要有一个正确的参考相位,即需要相干解调。

④差分移相键控(DPSK):利用调制信号前后码元之间载波相对相位的变化来传递信息。

在二进制中通常规定:传送1时后一码元相对于前一码元的载波相位变化180°,而传送0时前后码元之间的载波相位不发生变化。

因此,解调时只看载波相位的相对变化。

而不看它的绝对相位。

只要相位发生180°跃变,就表示传输1。

若相位无变化,则传输的是0。

差分移相键控抗干扰能力强,且不要求传送参考相位,因此实现较简单。

3、脉冲调制脉冲调制有两种含义:第一种是指用调制信号控制脉冲本身的参数(幅度、宽度、相位等),使这些参数随调制信号变化。

此时,调制信号是连续波,载波是重复的脉冲序列。

第二种是指用脉冲信号控制高频振荡的参数。

此时,调制信号是脉冲序列,载波是高频振荡的连续波。

通常所说的脉冲调制都是指上述第一种情况。

脉冲调制可分为模拟式和数字式两类。

模拟式脉冲调制是指用模拟信号对脉冲序列参数进行调制,有脉幅调制、脉宽调制、脉位调制和脉频调制等。

数字式脉冲调制是指用数字信号对脉冲序列参数进行调制,有脉码调制和增量调制等。

由于脉冲序列占空系数很小,即一个周期的绝大部分时间内信号为0值,因而可以插入多路其他已调脉冲序列,实现时分多路传输。

已调脉冲序列还可以用各种方法去调制高频振荡载波。

常用的脉冲调制有以下几种。

(1)脉幅调制(PAM):用调制信号控制脉冲序列的幅度,使脉冲幅度在其平均值上下随调制信号的瞬时值变化。

这是脉冲调制中最简单的一种。

脉幅调制是A.H.里夫在20世纪30年代发明的,在第二次世界大战中期已付之实用。

但后来发现,脉幅调制的已调波在传输途径中衰减,抗干扰能力差,所以现在很少直接用于通信,往往只用作连续信号采样的中间步骤。

(2)脉宽调制(PDM):用调制信号控制脉冲序列中各脉冲的宽度,使每个脉冲的持续时间与该瞬时的调制信号值成比例。

此时脉冲序列的幅度保持不变,被调制的是脉冲的前沿或后沿,或同时是前后两沿,使脉冲持续时间发生变化。

脉宽调制也是20世纪30年代里夫发明的。

但在无线电通信中一般不用脉宽调制,因为此时发射机的平均功率要不断地变化。

(3)脉位调制(PPM):用调制信号控制脉冲序列中各脉冲的相对位置(即相位),使各脉冲的相对位置随调制信号变化。

此时脉冲序列中脉冲的幅度和宽度均保持不变。

脉位调制在第二次世界大战中期已付之实用。

脉位调制的传输性能较好,常用于视距微波中继通信系统。

(4)脉频调制(PFM):用调制信号控制脉冲的重复频率,即单位时间内脉冲的个数,使脉冲的重复频率随调制信号变化。

此时脉冲序列中脉冲的幅度和宽度均保持不变。

主要用于仪表测量等方面,很少直接用于无线电通信。

(5)脉码调制(PCM):1937年脉幅调制和脉宽调制的发明者A.H.里夫提出用脉冲的有无的组合来传递声音,后来把这种方法称为脉码调制。

但脉码调制到20世纪50年代才开始实用化。

脉码调制有三个过程:采样、量化和编码。

即先对信号进行采样,并对采样值进行量化(整量化),再对经过采样和量化后的信号幅度进行编码,因此脉码调制的本质不是调制,而是数字编码,所以能充分保证传输质量。

由编码得到的数字信号可根据需要再对高频振荡载波进行调制。

脉码调制不是用改变脉冲序列的参数来传输信息,而是用参数固定的脉冲的不同组合来传递信息,因此抗干扰能力强,失真很小,是现代通信技术的发展方向。

(6)增量调制(ΔM):增量调制是一种特殊的脉码调制,它不是对信号本身进行采样、量化和编码,而是对信号相隔一定重复周期的瞬时值的增量进行采样、量化和编码。

现在已有多种增量调制方法,其中最简单的一种,是在每一采样瞬间当增量值超过某一规定值时发正脉冲,小于规定值时发负脉冲。

这样每个码组只有一个脉冲,故为二进制一位编码,每个码组不是表示信号的幅度,而是表示幅度的增量。

这种增量调制信号的解调也很简单,只要将收到的脉冲序列进行积分和滤波即可复原,因此编码和解码设备都比较简单。

1.AM调制解调A o cos(ѡc t)仿真:ts=1.e-4;t=-0.04:ts:0.04 ;fc=500;sigma=0.3 ;% 生成调制信号m_sig=tripuls(t+0.01,0.02)-tripuls(t-0.01,0.02);%调整信号m_sig由两个三角脉冲波形左右平移后叠加生成% 调制过程s_am=(1+m_sig).*cos(2*pi*fc*t)+sigma*randn(size(t));%AM信号由调制信号m_sig叠加直流分量后乘以载波并混以噪声形成。

cos(2*pi*fc*t);% 载波信号,fc为载波频率。

randn(size(t));%代表服从正态分布的噪声。

% 产生本地接收载波s_carr =cos(2*pi*fc*t);% 同步解调s_dem=s_am.*s_carr;% 定义lfft变量Lfft=length(t);%取时间区间的长度并赋值给Lfft。

Lfft=2^ceil(log2(Lfft)+1);%将Lfft 重新转化成为更大的偶数Lfft 。

ceil ;%向正无穷大的方向取整% 绘制解调后信号频谱S_dem=fftshift(fft(s_dem,Lfft)/(length(t)));% 生成低通滤波器h=fir1(60,[B_m*ts]);%设计低通滤波器频域相应,其中滤波器阶数60,截至频率75Hz 。

% 低通滤波s_rec=filter(h,1,s_dem);%理想低通滤波器filter 滤除s_dem 中的高频分量得恢复信号s_rec 。

% 绘制恢复信号频谱S_rec=fftshift(fft(s_rec,Lfft)/(length(t)));生成的图形:(1)发送信号波形和图谱波形 频谱(2)载波信号机波形波形 频谱t(sec)m (t)f(Hz)M (f)x 10-3t(sec)s c a r r ( t)f(Hz)S c a r r ( f )(3)AM 信号和频谱波形 频谱(4)相干解调波形和频谱波形频谱(5)恢复信号的波形和频谱波形 频谱2.FM 仿真t(sec)s A M ( t)f(Hz)S A M ( f )t(sec)s r e c t ( t )f(Hz)S r e c t ( f)f(Hz)Sr e c ( f )t(sec) s r e c ( t )代码:%FM调制解调系统.m%频率调制与解调的Matlab演示源程序%可以任意改原调制信号函数m(t)%信息工程陈丽丹07323202 %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%*****************初始化******************echo offclose allclear allclc%***************************************** %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%****************FM调制*******************dt=0.001; %设定时间步长t=0:dt:1.5; %产生时间向量am=5; %设定调制信号幅度fm=5; %设定调制信号频率mt=am*cos(2*pi*fm*t); %生成调制信号fc=50; %设定载波频率ct=cos(2*pi*fc*t); %生成载波kf=10; %设定调频指数int_mt(1)=0;for i=1:length(t)-1int_mt(i+1)=int_mt(i)+mt(i)*dt; %求信号m(t)的积分end %调制,产生已调信号sfm=am*cos(2*pi*fc*t+2*pi*kf*int_mt); %调制信号%***************************************** %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%*************添加高斯白噪声**************sn1=10; %设定信躁比(小信噪比)sn2=30; %设定信躁比(大信噪比)sn=0; %设定信躁比(无信噪比)db=am^2/(2*(10^(sn/10))); %计算对应的高斯白躁声的方差n=sqrt(db)*randn(size(t)); %生成高斯白躁声nsfm=n+sfm; %生成含高斯白躁声的已调信号(信号通%过信道传输)%***************************************** %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%****************FM解调*******************for i=1:length(t)-1 %接受信号通过微分器处理diff_nsfm(i)=(nsfm(i+1)-nsfm(i))./dt;enddiff_nsfmn = abs(hilbert(diff_nsfm)); %hilbert变换,求绝对值得到瞬时幅度(包络检波)zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;diff_nsfmn1=diff_nsfmn-zero;%***************************************** %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%**************时域到频域转换**************ts=0.001; %抽样间隔fs=1/ts; %抽样频率df=0.25; %所需的频率分辨率,用在求傅里叶变换%时,它表示FFT的最小频率间隔%*****对调制信号m(t)求傅里叶变换*****m=am*cos(2*pi*fm*t); %原调信号fs=1/ts;if nargin==2n1=0;elsen1=fs/df;endn2=length(m);n=2^(max(nextpow2(n1),nextpow2(n2)));M=fft(m,n);m=[m,zeros(1,n-n2)];df1=fs/n; %以上程序是对调制后的信号u求傅里变换M=M/fs; %缩放,便于在频铺图上整体观察f=[0:df1:df1*(length(m)-1)]-fs/2; %时间向量对应的频率向量%************对已调信号u求傅里变换**********fs=1/ts;if nargin==2n1=0;elsen1=fs/df;endn2=length(sfm);n=2^(max(nextpow2(n1),nextpow2(n2)));U=fft(sfm,n);u=[sfm,zeros(1,n-n2)];df1=fs/n; %以上是对已调信号u求傅里变换U=U/fs; %缩放%******************************************%***************************************** %·*·*·*·*·*·*·*·*·*·*·*·*·*·*·*·%***************显示程序******************disp('按任意键可以看到原调制信号、载波信号和已调信号的曲线')pause%**************figure(1)******************figure(1)subplot(3,1,1);plot(t,mt); %绘制调制信号的时域图xlabel('时间t');title('调制信号的时域图');subplot(3,1,2);plot(t,ct); %绘制载波的时域图xlabel('时间t');title('载波的时域图');subplot(3,1,3);plot(t,sfm); %绘制已调信号的时域图xlabel('时间t');title('已调信号的时域图');%******************************************disp('按任意键可以看到原调制信号和已调信号在频域内的图形')pause%************figure(2)*********************figure(2)subplot(2,1,1)plot(f,abs(fftshift(M))) %fftshift:将FFT中的DC分量移到频谱中心xlabel('频率f')title('原调制信号的频谱图')subplot(2,1,2)plot(f,abs(fftshift(U)))xlabel('频率f')title('已调信号的频谱图')%******************************************disp('按任意键可以看到原调制信号、无噪声条件下已调信号和解调信号的曲线')pause%**************figure(3)******************figure(3)subplot(3,1,1);plot(t,mt); %绘制调制信号的时域图xlabel('时间t');title('调制信号的时域图');subplot(3,1,2);plot(t,sfm); %绘制已调信号的时域图xlabel('时间t');title('无噪声条件下已调信号的时域图');nsfm=sfm;for i=1:length(t)-1 %接受信号通过微分器处理diff_nsfm(i)=(nsfm(i+1)-nsfm(i))./dt;enddiff_nsfmn = abs(hilbert(diff_nsfm)); %hilbert变换,求绝对值得到瞬时幅度(包络检波)zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;diff_nsfmn1=diff_nsfmn-zero;subplot(3,1,3); %绘制无噪声条件下解调信号的时域图plot((1:length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');xlabel('时间t');title('无噪声条件下解调信号的时域图');%*****************************************disp('按任意键可以看到原调制信号、小信噪比高斯白噪声条件下已调信号和解调信号已调信号的曲线')pause%**************figure(4)******************figure(4)subplot(3,1,1);plot(t,mt); %绘制调制信号的时域图xlabel('时间t');title('调制信号的时域图');db1=am^2/(2*(10^(sn1/10))); %计算对应的小信噪比高斯白躁声的方差n1=sqrt(db1)*randn(size(t)); %生成高斯白躁声nsfm1=n1+sfm; %生成含高斯白躁声的已调信号(信号通%过信道传输)for i=1:length(t)-1 %接受信号通过微分器处理diff_nsfm1(i)=(nsfm1(i+1)-nsfm1(i))./dt;enddiff_nsfmn1 = abs(hilbert(diff_nsfm1)); %hilbert变换,求绝对值得到瞬时幅度(包络检波)zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;diff_nsfmn1=diff_nsfmn1-zero;subplot(3,1,2);plot(1:length(diff_nsfm),diff_nsfm); %绘制含小信噪比高斯白噪声已调信号的时域图xlabel('时间t');title('含小信噪比高斯白噪声已调信号的时域图');subplot(3,1,3); %绘制含小信噪比高斯白噪声解调信号的时域图plot((1:length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');xlabel('时间t');title('含小信噪比高斯白噪声解调信号的时域图');%*****************************************disp('按任意键可以看到原调制信号、大信噪比高斯白噪声条件下已调信号和解调信号已调信号的曲线')pause%**************figure(5)******************figure(5)subplot(3,1,1);plot(t,mt); %绘制调制信号的时域图xlabel('时间t');title('调制信号的时域图');db1=am^2/(2*(10^(sn2/10))); %计算对应的大信噪比高斯白躁声的方差n1=sqrt(db1)*randn(size(t)); %生成高斯白躁声nsfm1=n1+sfm; %生成含高斯白躁声的已调信号(信号通过信道传输)for i=1:length(t)-1 %接受信号通过微分器处理diff_nsfm1(i)=(nsfm1(i+1)-nsfm1(i))./dt;enddiff_nsfmn1 = abs(hilbert(diff_nsfm1)); %hilbert变换,求绝对值得到瞬时幅度(包%络检波)zero=(max(diff_nsfmn)-min(diff_nsfmn))/2;diff_nsfmn1=diff_nsfmn1-zero;subplot(3,1,2);plot(1:length(diff_nsfm1),diff_nsfm1); %绘制含大信噪比高斯白噪声已调信号%的时域图xlabel('时间t');title('含大信噪比高斯白噪声已调信号的时域图');subplot(3,1,3); %绘制含大信噪比高斯白噪声解调信号%的时域图plot((1:length(diff_nsfmn1))./1000,diff_nsfmn1./400,'r');xlabel('时间t');title('含大信噪比高斯白噪声解调信号的时域图');%*****************************************%******************结束*******************仿真图:3.2FSK代码:a=randint(1,16);t=0.0001:0.001:1;inisig=a(ceil(t./(1/15)));subplot(5,1,1)plot(t,inisig)axis([0,1,-1.5,1.5])title('原信号');%调制f1=200;f2=100;carrier1=cos(2*pi*f1*t);carrier2=cos(2*pi*f2*t);modulation_wave=zeros(1,length(t));for i=1:length(t)if(inisig(i)==0)modulation_wave(i)=carrier1(i);elsemodulation_wave(i)=carrier2(i);endendsubplot(5,1,2)plot(t,modulation_wave)axis([0,1,-1.5,1.5])title('调制信号');%2fsk 信号加噪noise_wave=awgn(modulation_wave,100);%设计带通滤波器[num1 den1]=butter(10,[2*0.9*f1*pi,2*1.1*f1*pi],'s');[num2 den2]=butter(10,[2*0.9*f2*pi,2*1.1*f2*pi],'s');daiout1_h=tf(num1,den1);daiout2_h=tf(num2,den2);unmodulation_wave1=lsim(daiout1_h,noise_wave,t); unmodulation_wave2=lsim(daiout2_h,noise_wave,t);%2fsk信号相干解调unmodulation_wave1_g=unmodulation_wave1'.*(carrier1); unmodulation_wave2_g=unmodulation_wave2'.*(carrier2);%设计低通滤波器wp=2*pi*90;ws=2*pi*120;rp=1;rs=100;[N Wn]=buttord(wp,ws,rp,rs,'s');[B A]=butter(N,Wn,'s');h=tf(B,A);dsy1=lsim(h,unmodulation_wave1_g,t);dsy2=lsim(h,unmodulation_wave2_g,t);subplot(5,1,3);plot(t,dsy1);title('经过一路低通滤波器后的信号');subplot(5,1,4);plot(t,dsy2);title('经过二路低通滤波器后的信号');for i=1:length(dsy1)if dsy1(i)>dsy2(i)dsy(i)=0;else dsy(i)=1;endendsubplot(5,1,5);plot(t,dsy);axis([0 1.2 -1.2 1.2])title('解调信号');%观察原信号频谱inisig_spectrum=fftshift(fft(inisig));maxf=1/0.001;f=-maxf/2:maxf/2-1;figuresubplot(5,1,1);plot(f,inisig_spectrum)title('观察原信号频谱');%观察调制信号频谱modulation_spectrum=fftshift(fft(modulation_wave));maxf=1/0.001;f=-maxf/2:maxf/2-1;subplot(5,1,2);plot(f,modulation_spectrum)title('观察调制信号频谱');%观察带通信号频谱unmodulation1_spectrum=fftshift(fft(unmodulation_wave1)); maxf=1/0.001;f=-maxf/2:maxf/2-1;subplot(5,1,4);plot(f,unmodulation1_spectrum)title('观察带通信号150频谱');unmodulation2_spectrum=fftshift(fft(unmodulation_wave2)); maxf=1/0.001;f=-maxf/2:maxf/2-1;subplot(5,1,3);plot(f,unmodulation2_spectrum)title('观察带通信号100频谱');length(unmodulation_wave1)%观察低通滤波器频谱dsy_spectrum=fftshift(fft(dsy));maxf=1/0.001;f=-maxf/2:maxf/2-1;subplot(5,1,5);plot(f,dsy_spectrum)title('观察低通信号100频谱')仿真图:4.2ASK观察原信号频谱-500-400-300-200-1000100200300400500观察调制信号频谱-500-400-300-200-1000100200300400500观察带通信号150频谱-500-400-300-200-1000100200300400500观察带通信号100频谱-500-400-300-200-1000100200300400500观察低通信号100频谱代码:a=[1,0,1,1,0,1];subplot(3,1,1);stem(a);title('随机信号');for i=1:length(a)t=i-1:0.001:i;if (a(i)==1)s=sin(2*pi*t);endif (a(i)==0)s=0;endhold on;subplot(3,1,2);plot(t,s);title('2ASK调制后的信号') endfor i=1:length(a)t=i-1:0.001:i;if (a(i)==1)s=sin(2*pi*t);endif (a(i)==0)s=sin(4*pi*t);endhold on;subplot(3,1,3);plot(t,s);title('2FSK调制后的信号') end仿真图:5.PSK代码:clear all;close all;fs=8e5;%抽样频率fm=20e3;%基带频率n=2*(6*fs/fm);final=(1/fs)*(n-1);fc=2e5; % 载波频率t=0:1/fs:(final);Fn=fs/2;%耐奎斯特频率%用正弦波产生方波%==========================================twopi_fc_t=2*pi*fm*t;A=1;phi=0;x = A * cos(twopi_fc_t + phi);% 方波am=1;x(x>0)=am;x(x<0)=-1;figure(1)subplot(321);plot(t,x);axis([0 2e-4 -2 2]);title('基带信号');grid oncar=sin(2*pi*fc*t);%载波ask=x.*car;%载波调制subplot(322);plot(t,ask);axis([0 200e-6 -2 2]);title('PSK信号');grid on;%===================================================== vn=0.1;noise=vn*(randn(size(t)));%产生噪音plot(t,noise);grid on;title('噪音信号');axis([0 .2e-3 -1 1]);askn=(ask+noise);%调制后加噪subplot(324);plot(t,askn);axis([0 200e-6 -2 2]);title('加噪后信号');grid on;%带通滤波%==================================================================== ==fBW=40e3;f=[0:3e3:4e5];w=2*pi*f/fs;z=exp(w*j);BW=2*pi*fBW/fs;a=.8547;%BW=2(1-a)/sqrt(a)p=(j^2*a^2);gain=.135;Hz=gain*(z+1).*(z-1)./(z.^2-(p));subplot(325);plot(f,abs(Hz));title('带通滤波器');grid on;Hz(Hz==0)=10^(8);%avoid log(0)subplot(326);plot(f,20*log10(abs(Hz)));grid on;title('Receiver -3dB Filter Response');axis([1e5 3e5 -3 1]);%滤波器系数a=[1 0 0.7305];%[1 0 p]b=[0.135 0 -0.135];%gain*[1 0 -1]faskn=filter(b,a,askn);figure(2)subplot(321);axis([0 100e-6 -2 2]);title('通过带通滤波后输出');grid on;cm=faskn.*car;%解调subplot(322);plot(t,cm);axis([0 100e-6 -2 2]);grid on;title('通过相乘器后输出');%低通滤波器%================================================================== p=0.72;gain1=0.14;%gain=(1-p)/2Hz1=gain1*(z+1)./(z-(p));subplot(323);Hz1(Hz1==0)=10^(-8);%avoid log(0)plot(f,20*log10(abs(Hz1)));grid on;title('LPF -3dB response');axis([0 5e4 -3 1]);%滤波器系数a1=[1 -0.72];%(z-(p))b1=[0.14 0.14];%gain*[1 1]so=filter(b1,a1,cm);so=so*10;%add gainso=so-mean(so);%removes DC componentsubplot(324);plot(t,so);axis([0 8e-4 -3.5 3.5]);title('通过低通滤波器后输出');grid on;%Comparator%======================================================High=2.5;Low=-2.5;vt=0;%设立比较标准error=0;len1=length(so);for ii=1:len1if so(ii) >= vtVs(ii)=High;elseVs(ii)=Low;endendVo=Vs;subplot(325);plot (t,Vo), title('解调后输出信号'), axis([0 2e-4 -5 5])grid on;xlabel('时间 (s)'), ylabel('幅度(V)'), 仿真图:6.2DPSK差分相干解调原理图相干解调原理代码:clear allclose alli=10;j=5000;fc=4.6; %载波频率fm=i/5; %码元速率B=2*fm;t=linspace(0,5,j);a=round(rand(1,i));figure(4);stem(a);st1=t;for n=1:10if a(n)<1;for m=j/i*(n-1)+1:j/i*nst1(m)=0;endelsefor m=j/i*(n-1)+1:j/i*nst1(m)=1;endendendfigure(1);subplot(321);plot(t,st1);title('绝对码');axis([0,5,-1,2]);b=zeros(1,i); %全零矩阵b(1)=a(1);for n=2:10if a(n)>=1;if b(n-1)>=1b(n)=0;elseb(n)=1;endelseb(n)=b(n-1);endendst1=t;for n=1:10if b(n)<1;for m=j/i*(n-1)+1:j/i*nst1(m)=0;endelsefor m=j/i*(n-1)+1:j/i*nst1(m)=1;endendendsubplot(323);plot(t,st1);title('相对码st1');axis([0,5,-1,2]);st2=t;for k=1:j;if st1(k)>=1;st2(k)=0;elsest2(k)=1;endend;subplot(324);plot(t,st2);title('相对码反码st2');axis([0,5,-1,2]);s1=sin(2*pi*fc*t);subplot(325);plot(s1);title('载波信号s1');s2=sin(2*pi*fc*t+pi);subplot(326);plot(s2);title('载波信号s2');d1=st1.*s1;d2=st2.*s2;figure(2);subplot(411);plot(t,d1);title('st1*s1');subplot(412);plot(t,d2);title('st2*s2');e_dpsk=d1+d2;subplot(413);plot(t,e_dpsk);title('调制后波形');noise=rand(1,j);dpsk=e_dpsk+noise; %加入噪声subplot(414);plot(t,dpsk);title('加噪声后信号');dpsk=dpsk.*s1; %与载波s1相乘figure(3);subplot(411);plot(t,dpsk);title('与载波相乘后波形');[f,af]=T2F(t,dpsk); %通过低通滤波器[t,dpsk]=lpf(f,af,B);subplot(412);plot(t,dpsk);title('低通滤波后波形');st=zeros(1,i); %全零矩阵for m=0:i-1;if dpsk(1,m*500+250)<0;st(m+1)=0;for j=m*500+1:(m+1)*500;dpsk(1,j)=0;endelsefor j=m*500+1:(m+1)*500;st(m+1)=1;dpsk(1,j)=1;endendendsubplot(413);plot(t,dpsk);axis([0,5,-1,2]);title('抽样判决后波形')dt=zeros(1,i); %全零矩阵dt(1)=st(1);for n=2:10;if (st(n)-st(n-1))<=0&&(st(n)-st(n-1))>-1;dt(n)=0;elsedt(n)=1;endendst=t;for n=1:10if dt(n)<1;for m=j/i*(n-1)+1:j/i*nst(m)=0;endelsefor m=j/i*(n-1)+1:j/i*nst(m)=1;endendendsubplot(414);plot(t,st);axis([0,5,-1,2]);title('码反变换后波形');仿真图:。

相关主题