MATLAB在通信仿真中的应用1_第1页
MATLAB在通信仿真中的应用1_第2页
MATLAB在通信仿真中的应用1_第3页
MATLAB在通信仿真中的应用1_第4页
MATLAB在通信仿真中的应用1_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB在通信仿真中的应用一、模拟调制:二、模-数转换:PCM三、数字信号的基带传输四、数字信号载波传输(数字调制)2/6/20231一、模拟调制幅度调制:AMDSB-AMSSB-AMAMQAM频率调制:FM相位调制:PM2/6/20232在DSB-AM中,已调信号的时域表示如下式:其中:m(t)是消息信号,

为载波,

fc是载波的频率(单位赫兹Hz),

对u(t)作傅立叶变换,即可得到信号的频域表示:传输带宽BT

是消息信号带宽的两倍,即:

1.双边幅度调制(DSB-AM)与解调2/6/202332/6/20234t0=2;ts=0.001;fs=1/tsFc=250;t=-t0/2:ts:t0/2;m=sin(200*t)./(200*t);m(1001)=1subplot(2,2,1)plot(t,m)c=cos(2*pi*Fc*t);u=m.*c;subplot(2,2,2)plot(t,u,'r')F_m=ts*fft(m);F_u=ts*fft(u);f=linspace(-fs/2,fs/2,length(m))subplot(2,2,3)plot(f,abs(fftshift(F_m)))subplot(2,2,4)plot(f,abs(fftshift(F_u)))调制源代码2/6/20235DSB-AM解调

DSB-AM调制信号的解调过程如下图所示,调制信号与接收机本地振荡器所产生的正弦信号相乘可得混频器输出:然后利用低通滤波器对低通分量进行滤波即可恢复被调信号。2/6/20236调制与解调源代码t0=2;ts=0.001;fs=1/tsFc=250;t=-t0/2:ts:t0/2;m=sin(200*t)./(200*t);m(1001)=1subplot(2,3,1)plot(t,m)c=cos(2*pi*Fc*t);u=m.*c;subplot(2,3,4)plot(t,u,'r')F_m=ts*fft(m);F_u=ts*fft(u);f=linspace(-fs/2,fs/2,length(m))subplot(2,3,2)plot(f,abs(F_m))subplot(2,3,5)plot(f,abs(F_u))2/6/20237y=u.*c;F_y=ts*fft(y);subplot(2,3,3)plot(f,abs(F_y))H=zeros(size(f));f_cutoff=100;l=fs/length(m);n=floor(f_cutoff/l);H(1:n)=2*ones(1,n);l1=length(m)-n;H(length(m)-n+1:length(m))=2*ones(1,n);Z=F_y.*H;y=fs*real(ifft(Z));subplot(2,3,6)plot(t,y)解调源代码2/6/20238去掉DSB-AM的一边就得到SSB-AM。依据所保留的边带是上边,还是下边,可以分为USSA和LSSB两种不同的方式,此时信号的时域表示为:在频域表示为:其中

的希尔特变换,定义为

,在频域中为:

单边SSB幅度调制占有DSB-AM的一半的带宽,即等于信号带宽:

2.单边幅度调(SSB-AM)与解调2/6/202392/6/202310t0=2;ts=0.001;fs=1/tsFc=250;t=-t0/2:ts:t0/2;m=sin(200*t)./(200*t);m(1001)=1;m=m.*m;subplot(2,3,1);plot(t,m);axis([-0.20.2-1.21.2]);c=cos(2*pi*Fc.*t);d=sin(2*pi*Fc.*t);u=(m.*c-imag(hilbert(m)).*d)/2;v=(m.*c+imag(hilbert(m)).*d)/2;subplot(2,3,2);plot(t,u,'r');axis([-0.10.1-1.21.2]);subplot(2,3,3);plot(t,v);axis([-0.10.1-1.21.2]);F_m=ts*fft(m);F_u=ts*fft(u);F_v=ts*fft(v);f=linspace(-fs/2,fs/2,length(m));subplot(2,3,4);plot(f,abs(fftshift(F_m)));subplot(2,3,5);plot(f,abs(fftshift(F_u)));subplot(2,3,6);plot(f,abs(fftshift(F_v)));源代码2/6/202311SSB-AM解调

SSB-AM调制信号的解调过程基本上与DSB-AM调制信号的解调过程是相同的,即调制信号与本地振荡器的输出进行混频得:然后利用低通滤波器对低通分量进行滤波即可恢复被调信号。2/6/202312SSB-AM源程序cleart0=2;ts=0.001;fs=1/tsFc=250;t=-t0/2:ts:t0/2;m=sin(200*t)./(200*t);m(1001)=1;m=m.*m;subplot(2,3,1);plot(t,m);axis([-0.20.2-1.21.2]);c=cos(2*pi*Fc.*t);d=sin(2*pi*Fc.*t);u=(m.*c-imag(hilbert(m)).*d)/2;v=(m.*c+imag(hilbert(m)).*d)/2;subplot(2,3,2);plot(t,u,'r');axis([-0.10.1-1.21.2]);%subplot(2,3,3);%plot(t,v);%axis([-0.10.1-1.21.2]);F_m=ts*fft(m);F_u=ts*fft(u);%F_v=ts*fft(v);f=linspace(-fs/2,fs/2,length(m));subplot(2,3,4);plot(f,abs(fftshift(F_m)));subplot(2,3,5);plot(f,abs(fftshift(F_u)));%subplot(2,3,6);%plot(f,abs(fftshift(F_v)));y=v.*c;F_y=ts*fft(y);subplot(2,3,3);plot(f,abs(F_y));H=zeros(size(f));f_cutoff=100;l=fs/length(m);n=floor(f_cutoff/l);H(1:n)=4*ones(1,n);l1=length(m)-n;H(length(m)-n:length(m)-1)=4*ones(1,n);Z=F_y.*H;z=fs*real(ifft(Z));subplot(2,3,6);plot(t,z);axis([-0.10.1-1.21.2]);2/6/202313这里a是调制指数,

是经过归一化处理的消息信号。

在常规AM中,调制信号的时域表示为:常规幅度调制(AM)在很多方面与双边幅度调制类型。不同的是,用

对u(t)作傅里叶变换,即可得到信号的频域表示:

常规幅度调制(AM)信号的解调,可采用包络检波器来实现。包络检波器可得到AM调制信号的包络为:式中mn(t)与被调信号m(t)成比例,1对应于可由直流电路分离出来的载波分量。

3.常规幅度调制(AM)2/6/2023142/6/202315AM调制与解调源程序t0=2;ts=0.001;fs=1/tsFc=250;a=0.8;t=-t0/2:ts:t0/2;m=sinc(10*t)subplot(2,3,1);plot(t,m);axis([-0.20.2-1.21.2]);m_n=m/max(abs(m));c=cos(2*pi*Fc*t);u=(1+a*m_n).*c;subplot(2,3,4)plot(t,u,'r')F_m=ts*fft(m);F_u=ts*fft(u);f=linspace(-fs/2,fs/2,length(m))subplot(2,3,2)plot(f,abs(fftshift(F_m)));subplot(2,3,5)plot(f,abs(fftshift(F_u)))e=abs(Hilbert(u));dem=(e-1)/asubplot(2,3,3)plot(t,dem);axis([-0.20.2-1.21.2]);2/6/202316角度调制模拟角度调制与线性调制(幅度调制)不同.角调制中已调信号的频谱与调制信号的频谱之间不存在对应关系,而是产生了与频谱搬移不同的新频率分量,因而呈现非线性过程的特征.又称为非线性调制。角度调制分为频率调制和相位调制,通常使用较多的是频率调制.频率调制与相仿调制可以互相转化。2/6/202317其中u(t)是调制后的信号,fc是载波的频率(单位赫兹Hz),是初始相位,是瞬时相位,随着输入信号的振幅变化。频率调制亦称为等振幅调制。在频率调制过程中,输入信号控制载波的频率,使已调信号u(t)的频率按输入信号的规律变化。调制公式为:其中为比例常数。计算公式为:调频FM2/6/202318示例2/6/2023192/6/202320调频源程序cleart0=0.15;ts=0.001;fs=1/ts;kf=50;Fc=200;t=0:ts:t0;m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];int_m(1)=0;fori=1:length(t)-1int_m(i+1)=int_m(i)+m(i)*ts;endsubplot(2,3,1);plot(t,m);axis([00.15-2.12.1]);u=cos(2*pi*Fc.*t+2*pi*kf*int_m);subplot(2,3,2);plot(t,u,'r');axis([00.15-2.12.1]);F_m=ts*fft(m);F_u=ts*fft(u);f=linspace(-fs/2,fs/2,length(m));subplot(2,3,4);plot(f,abs(fftshift(F_m)));subplot(2,3,5);plot(f,abs(fftshift(F_u)));2/6/202321其中u(t)是调制后的信号,fc是载波的频率(单位赫兹Hz),是初始相位,是瞬时相位,随着输入信号的振幅变化

其中为比例常数,称为调制器的灵敏度。相位调制则是利用输入信号m(t)控制已调信号u(t)的相位,控制规律为:相位调制的计算公式为:2/6/2023222/6/202323模拟调制总结通带、基带通带:Fs>=2Fc,计算量太大2/6/202324(1)带通模拟调制函数amod()格式:y=amod(x,Fc,Fs,method…)功能:用载波为Fc(Hz)的信号来调制模拟信号x,采样频率为Fs(Hz),Fc>Fs。根据采样定理,采样频率必须大于或等于调制信号最高频率的两倍。字符串变量method指定所用的调制方式带通模拟调制/解调函数2/6/202325带通模拟解调函数ademod()格式:z=ademod(y,Fc,Fs,method...)功能:对载波为Fc的调制信号y进行解。它是amod函数的逆过程,amod与ademod选择的调制方式必须相同,否则不容易正确复制出源信号。该函数在解调中用到一个低通滤波器,函数使用一个默认的巴特沃斯低通滤波器。字符串变量method指定所用的调制方式2/6/202326Method:调制方式amdsb-tcamdsb-scamssbamvsbfmpmptmpwm2/6/2023271.基带模拟调制函数amodce()格式:y=amodce(x,Fs,method,···)功能:对输入信号x进行调制,输出复包络信号。输入输出的采样频率为Fs(Hz)。输出y为一个复矩阵。Fs可以是标量也可以为二维的矢量。二维矢量中第一个值为采样频率,第二个值为载波信号的初相,初相以弧度表示,默认值为0。字符串变量method指定所用的调制方式基带模拟调制/解调函数2/6/2023282.基带模拟解调函数ademodce()格式:z=ademodce(y,Fs,‘method’…)它是amodce函数的逆过程,amodce与ademodce选择的调制方式必须相同,否则不容易正确复制出源信号。该函数在解调中用到一个低通滤波器,函数使用一个默认的巴特沃斯低通滤波器。字符串变量method指定所用的调制方式2/6/202329[例]

利用MATLAB对一信号进行基带、通带调制解调。

抽样频率:Fs=1000;

载波频率:Fc=200;

信号:x=sinc(10*t);

区间:[-1,1]2/6/202330PCM

抽样:低通抽样、带通抽样量化:A律、u律编码:PCM2/6/202331频带限制在(0,fH)的信号——低通型信号低通抽样定理、抽样速率fs≥2fH频率限制在(fL,fH

)之间信号——带通型信号抽样定理2/6/202332A律:

u律:采用13段折线近似采用15段折线近似2/6/202333functiony=Apcm(x,A)fori=1:length(x)ifx(i)>=0;ifx(i)<=1/A;

y(i)=(A*x(i))/(1+log(A));else

y(i)=(1+log(A*x(i)))/(1+log(A));endelseifx(i)>=-1/A;

y(i)=-(A*-x(i))/(1+log(A));else

y(i)=-(1+log(A*(-x(i))))/(1+log(A));endendend2/6/202334A律13折线示意图2/6/202335functiony=zhe13(x)x=x/max(x);z=sign(x);x=abs(x);fori=1:length(x)if((x(i)>=0)&x(i)<1/64)y(i)=16*x(i);elseif((x(i)>=1/64)&x(i)<1/32)y(i)=8*x(i)+1/8;elseif((x(i)>=1/32)&x(i)<1/16)y(i)=4*x(i)+2/8;elseif((x(i)>=1/16)&x(i)<1/8)y(i)=2*x(i)+3/8;elseif((x(i)>=1/8)&x(i)<1/4)y(i)=x(i)+4/8;elseif((x(i)>=1/4)&x(i)<1/2)y(i)=(1/2)*x(i)+5/8;%elseif((x(i)>=1/2)&x(i)<1)elsey(i)=(1/4)*x(i)+6/8;endendend;end;end;end;end;end;end;end;y=z.*y;2/6/202336PCM编码源程序functionf=pcmcode(y)f=zeros(length(y),8);z=sign(y);y=y*128;y=fix(y);y=abs(y);fori=1:length(y)if(y(i)==128)

y(i)=127.999endendfori=1:length(y)forj=6:-1:0f(i,8-j)=fix(y(i)/2^j);

y(i)=mod(y(i),(2^j));endendfori=1:length(y)

if(z(i)==-1)f(i,1)=0;elsef(i,1)=1;endendf2/6/202337三、数字信号的基带传输数字基带信号的码型2/6/202338数字基带信号的码型

单极性非归零码单极性归零码双极性非归零码双极性归零码例程:1001100001012/6/202339单极性非归零码SNRZ

用电平1来表示二元信息中的‘1’,用电平0来表示二元信息中的‘0’,电平在整个码元的时间里不变,记作SNRZ码。单极性非归零码的优点是实现简单,但由于含有直流分量,在带限信道中传输不利;另外当出现连续的o或连续的1时,电平长时间保持一个值,不利于提取时间信息以便获得同步。2/6/202340单极性非归零码SNRZ2/6/202341SNRZfunctiony=snrz(x,t0)t0=300;fori=1:length(x)ifx(i)==1forj=1:t0y((i-1)*t0+j)=1;endelseforj=1:t0y((i-1)*t0+j)=0;endendendM=max(y);N=min(y);subplot(2,1,1);plot(y);gridon;axis([0,i*t0,N-0.1,M+0.1]);2/6/202342单极性归零码SRZ它与单极性非归零码不同处在于:输入二元信息为1时,给出的码元前半时间为1,后半时间为0输入0则完全相同。2/6/202343SRZfunctiony=srz(x)t0=300;fori=1:length(x)ifx(i)==1forj=1:t0/2y((i-1)*t0+j)=1;y((i-1)*t0+j)=0;endelseforj=1:t0y((i-1)*t0+j)=0;endendendy=[y,x(i)];subplot(2,1,2);plot(y);axis([0,i*t0,-0.1,1.1]);2/6/202344双极性非归零码DNRZ它与单极性非归零码类似,区别仅在于双极性使用电平-1来表示信息0。2/6/202345双极性归零码DRZ信息1:使用前半时间1,后半时间0表示;

信息0:使用前半时间-1,后半时间0来表示;因此它具有三个电平,严格说来是一种三元码(电平1,0,-1)2/6/202346双极性归零码DRZfunctiony=drz(x)t0=300;t=0:1/t0:length(x);fori=1:length(x)ifx(i)==1forj=1:t0/2y((2*i-2)*t0/2+j)=1;y((2*i-1)*t0/2+j)=0;endelseforj=1:t0/2y((2*i-2)*t0/2+j)=-1;y((2*i-1)*t0/2+j)=0;endendendy=[y,x(i)];M=max(y);N=min(y);subplot(2,1,2);plot(t,y);gridon;axis([0,i,N-0.1,M+0.1]);2/6/202347曼彻斯特码数字双向码信息1:前半时间0,后半时间1信息0:前半时候1,后半时间0条件双相码密勒码2/6/202348条件双相码前面介绍的几种码都是只与当前的二元信息o或1有关,而条件双相码又称差分曼彻斯持码,却不仅与当前的信息元有关,并且与前一个信息元也有关,确切地说应该是同前一个码元的电平有关。条件双相码也使用中央时刻的电平跳变来表示信息,与数字双相码不同在于:对信息1,则前半时间的电平与前一个码元的后半时间电平相同,在中央处再跳变,对信息0,则前半时间的电平与前一个码元的后半时间电乎相反(即遇0取1,遇1取0)在中央处再跳变2/6/202349密勒码该码型是数字双相码的变型。它采用码元中央时刻跳变来表示信息1,即前半时间的电平同前一码元后半时间的电平相同,中央跳变。遇到信息0作如下处理:首先对0的码元在整个码元时间内都保持同一电平值,其次若此0前一信息是1,则码元的电平与前面信息1的码元后半时间电平相同.若前一信息为0,则与前面码元的电平相反。2/6/2023501.基带数字调制函数dmodce()格式:y=dmodce(x,Fd,Fs,method,M)功能:调制一个带复包络的数字信号,主要用于基带数字调制。参数:X:信号

Fd:x的采样频率

Fs:y的采样频率

method:调制方法

M:元数modmap(‘method’,M)星座图要求:Fs/Fd

必须是一个正整数基带数字调制/解调2/6/2023511.基带数字解调函数ddemodce()格式:y=ddemodce(x,Fd,Fs,method,M)功能:调制一个带复包络的数字信号,主要用于基带数字调制。参数:X:信号

Fd:x的采样频率

Fs:y的采样频率

method:调制方法

M:元数modmap(‘method’,M)星座图要求:Fs/Fd

必须是一个正整数基带数字调制/解调2/6/202352码间串扰由于系统传输特性不良或加性噪声的影响,使信号波形发生畸变,造成收端判决上的困难,因而造成误码,这种现象称为码间串扰。现象:脉冲会被展宽,甚至重迭(串扰)到邻近时隙中去成为干扰。2/6/202353AWGN信道函数awgn格式一:y=awgn(x,snr)功能:向功率为0dB的信号x添加高斯白噪声,输出信号y的信噪比SNR为参数snr(单位dB)。格式二:y=awgn(x,snr,sigpower,state,powertype)参数:sigpower:信号功率大小,measuredstate:噪声状态

powertype:功率单位。db、linear2/6/202354无码间串扰的传输条件若接受序列的每个脉冲都是sinc(t/Ts)形状,则脉冲序列的检测不受码间串扰的影响。系统的传输函数H(f)是矩形函数。2/6/202355升余弦滚降系统H(ω)=TS02/6/2023562/6/202357rcosflt函数y=rcosflt(x,Fd,Fs)X:信号Fd:x的采样频率Fs:y的采样频率要求:Fs/Fd

必须是一个正整数2/6/202358眼图眼图是利用试验手段方便估计基带传输系统性能的一种测量方法。它是指接收滤波器输出的信号波形在示波器上叠加所形成的图形,在传输二进制信号波形时,它很像人的眼睛。注意:示波器的抽样速率应为信号速率的整数倍。最佳抽样时刻应是“眼睛”张开最大的时刻连“1”码连“0”码2/6/202359

无码间串扰

有码间串扰连“1”码连“0”码2/6/202360Eyediagram函数eyediagram(x,N,period,offset,plotstring)X:信号N:采样点数period:水平轴的范围:[-period/2,period/2]Offset:偏置因子,必须是非负整数,[0,N-1]Plotstring:与plot函数一致2/6/202361散射图与眼图密切相关。散射图记录了在给定判决点处信号的值。格式:scatterplot(x,N)功能:根据指定的参数N绘制信号x的散射图。散射图2/6/202362载波调制周期为T的正弦波代表一个码元幅移键控ASK

频移键控FSK

相移键控PSK2/6/202363幅移键控ASK

载波在二进制调制信号控制下通或断。OOK102/6/202364对于二元序列10110010,试画出2ASK的波形.

2/6/2023652ASKfunctionaskdigital(s,f)s=[10110010];f=2;t=0:2*pi/99:2*pi;m1=[];c1=[];forn=1:length(s)ifs(n)==0;m=zeros(1,100);elses(n)==1;m=ones(1,100);endc=sin(f*t);m1=[m1m];c1=[c1c]endask=c1.*m1;subplot(211);plot(m1)title('原始信号');axis([0100*length(s)-0.11.1]);subplot(212);

plot(ask)

title('ASK信号');

2/6/202366频移键控FSK2FSK102FSK信号

s(t)电子开关

键控法(频率转换法)相位不连续

2/6/202367对于二元序列10110010,试画出2FSK的波形,设载波频率w1=2w2=2Rb。2/6/2023682FSKfunctionfskdigital(s,f1,f2)t=0:2*pi/99:2*pi;m1=[];c1=[];b1=[];forn=1:length(s)ifs(n)==0;m=ones(1,100);c=sin(f2*t);b=zeros(1,100)elses(n)==1;m=ones(1,100);c=sin(f1*t);b=ones(1,100)endm1=[m1m];c1=[c1c];b1=[b1b];end

fsk=c1.*m1;subplot(211);plot(b1,'r')title('原始信号');axis([0100*length(s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论