基于matlab的4FSK系统设计仿真_第1页
基于matlab的4FSK系统设计仿真_第2页
基于matlab的4FSK系统设计仿真_第3页
基于matlab的4FSK系统设计仿真_第4页
基于matlab的4FSK系统设计仿真_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、 课程设计任务书课程名称: 专业课程设计 题 目: 基于matlab的4FSK系统设计仿真 学 院: 电子系 系: 信息工程学院 专业班级: 学 号: 学生姓名: 指导教师:职称: 学院审核(签名): 审核日期: 设计基本原理与系统框图以前学过2FSK信号的产生,知道它有两种方法:调频法和开关法,前者是用二进制基带矩形脉冲信号去调制一个调频器,使其能输出两个不同频率的码元;后者是用一个受基带脉冲控制的开关电路去选择两个独立频率源的振荡作为输出。2FSK键控法调频原理图如下:2fsk键控原理图振荡器f1选通开关反相器振荡器f2选通开关相加器这里我们要研究的是4FSK信号,是采用第二种方法得到的,

2、即用基带四进制信号去键控四个频率不同的载波,就可以得到四进制频移键控信号,其中4FSK是采用四个不同的频率分别表示四进制的的四个码元00、01、10、11,每个码元都含有2bit的信息,其波形如图1-1所示,这时仍和2FSK时的条件相同,即要求每个载频之间的距离足够大,使不同频率的码元频谱能够用滤波器分离开,或者说使不同频率的码元相互正交。4FSK调制原理如下: 传“0”信号(或00)时,发送频率为f1的载波; 传“1”信号(或10)时,发送频率为f2的载波; 传“2”信号(或11)时,发送频率为f3的载波; 传“3”信号(或01)时,发送频率为f4的载波。图1-1 4FSK信号波形系统方框图

3、如图1-2所示4FSK晶振4FSK调制串/并转换NRZ图1-2系统方框图222滤波器滤波器滤波器各单元电路图设计本次系统设计大致可分为四大模块:晶体振荡器与信源共用,位于信源单元;多级分频电路;4FSK调制中的逻辑电路单元;二进制基带信号的串/并转换模块。信源单元电路本模块是整个课程设计系统的发终端,模块内部只使用+5V电压,其原理方框图如图1-3所示本单元用来产生晶振信号和NRZ信号,图1-4为信源单元电路图,它上面的元器件与图1-3上各单元对应关系如下:晶振 CRY:晶体; U1:反相器7404分频器 U2:计数器74161;U3:计数器74193;U4:计数器40160并行码产生器 K1

4、、K2、K3:8位手动开关,从左至右依次与帧同步码、数据1、数据2相对应;发光二极管:左起分别与一帧中的24位代码相对应八选一 U5、U6、U7:8位数据选择器4512三选一 U8:8位数据选择器4512倒相器 U20:非门74LS04抽样 U9:D触发器74LS74CLKBS-OUTNRZ-OUTNRZFSBSS5S4S3S2S1晶振并行码产生器八选一八选一八选一三选一倒相器抽 样分 频 器图1-3信源单元方框图从晶振产生一个4.096KHz的信号,一路做时钟信号CLK,一路送到74LS193,74193完成2、4、8运算,输出BS、S1、S2、S3等4个信号。BS为位同步信号,频率为204

5、8MHz,S1、S2、S3为3个选通信号,频率分别为BS信号频率的1/2、1/4和1/8。74193是一个4位二进制加/减计数器,当CD= PL =1、MR=0时,可在QA、QB、QC及QD端分别输出上述4个信号。、多级分频电路它是由晶振电路和一个具有分频功能的74LS193芯片构成的。系统要求产生四个频率不同的脉冲序列,所以要通过分频电路将主时钟输出的信号分别进行2分频、4分频、8分频。根据频率的不同,采用三个分频器进行分频。CLK信号由一个晶振电路实现,信号分别是由三个串接的二分频器而得到的,它们的频率分别为CLK频率的1/2、1/4、1/8,其电路图如图2-1所示。图2-1 分频电路图,

6、、4FSK调制中的逻辑电路单元类似于2FSK调制模块,4FSK调制模块是采用一个四选一数据选择器,经过多次分频产生的四个不同频率的信号作为数据选择器的四个输入端,经过串并转换的两路并行信号作为数据选择器的两个地址端,对应的每一种地址选中不同频率的输入信号,即“00”时选中频率为的信号;“01”时选中频率为的信号;“10”时选中频率为的信号;“11”时选中频率为的信号。图3-1 逻辑电路图3-1中的逻辑电路即为双四选一数据选择器,接口分别接来自多次分频的频率不同的四种信号附加控制端接地,分别接串/并转换电路的两个输出端,输出端即为4FSK调制信号。、二进制基带信号的串/并转换模块串/并转换器:移

7、位寄存器除了具有存储代码的功能以外,还具有移位功能。所谓移位功能,是指寄存器里存储的代码能在移位脉冲的作用下依次左移或右移,因此移位寄存器还可以用来实现数据的串并转换。 图5.1所示电路是由对称式多谐振荡器和二位移位寄存器(边沿触发器结构的D触发器组成)构成的串并转换模块电路,其中对称式多谐振荡器是用来产生串行输入信号和移位脉冲的,第一个触发器的输入端接收串行输入信号,其余的每个寄存器输入端均与前边一个触发器的Q端相连。图5-1串并转换电路图 因为从CP上升沿到达开始到输出端新状态的建立需要经过一段传输延迟时间,所以当CP的上升沿同时作用于所有的触发器时,它们输入端的状态还没有改变。于是按原来

8、的状态反转。 例如,在4个时钟周期内输入代码依次为1011,而移位寄存器的初始状态为=00,那么在移位寄存器的作用下,移位寄存器里的代码移动情况如表5-2所示,图5-3给出了各触发器在移位过程中的电压波形图。 可以看到,经过四个CP信号以后,串行输入的4个代码全部移入了移位寄存器中,同时在4个触发器的输出端得到了并行输出的代码。表5-2 CP的顺序输入的 01234 0 1 0 1 1001 1 01 1图5.3 电路的电压波形1101CPtcTttt总电路图如图5.4所示图5.4所示 总电路图三、4FSk的解调原理4FSK信号的相干解调法原理框图如图1.2所示。其原理是:4FSK信号先经过带

9、通滤波器去除调制信号频带以外的在信道中混入的噪声,此后该信号分为四路,每路信号与相应载波相乘,再经过低通滤波器去除高频成分,得到包含基带信号的低频信号,将其送入抽样判决器中进行抽样判决,抽样判决器的输出分别得到两路原基带信号表示四进制得到原始码元。4FSK已调信号带通滤波器相乘器低通滤波器抽样判决器解调信号1载波f1载波f2带通滤波器带通滤波器带通滤波器相乘器相乘器相乘器低通滤波器低通滤波器低通滤波器载波f2载波f2加法器抽样判决器带通滤波器加法器图1.2 4FSK键控法解调原理框图四、 4FSK 调制算法分析(1)、将输入的二进制序列按奇位、偶位进行串并转换。(2)、根据DMR标准中的符号和

10、比特的对应关系表14,将二进制的0、1序列映射为相应的四电平符号流。(3)、将这些符号流每符号插入8个数值点,并输入平方根升余弦滤波器进行平滑处理,则可得到输入调制信号m(n)。滤波器为平方根升余弦滤波器4,奈奎斯特升余弦滤波器的一部分用于抑制邻道干扰,另一部分用于接收机抑制噪声。抑制邻道干扰滤波器的输入包含一系列脉冲,这些脉冲之间的间隔为208,33ms(1/4800s)。通过定义根升余弦滤波器的频率响应为奈奎斯特升余弦滤波器的平方根,来定义奈奎斯特升余弦滤波器的分割。滤波器的群延迟在带通范围|f|2880Hz内是平滑的。滤波器的的幅频响应由下面公式近似给出4:F( f ) =1 当 |f|

11、 1920 HzF( f ) = cos( f / 1920) 当 1920 Hz2880 Hz其中F( f ) 代表平方根升余弦滤波器的幅频响应。则该滤波器的传输频率df 为2880-1920=960Hz,滤波器的等效截止频率F0 为2400Hz。(4)、将m(n)输入频率调制器进行FM调制。则可得到4FSK调制输出信号。调频信号: 式中: kf 为调频指数。将其离散化,在nTs的时间内对信号m(n)累加求和,得:由(2)式得该4FSK系统调制实现方框图如下:五、4FSK 解调算法分析解调过程跟调制过程恰好相反,将经过信道传输到接收端的信号通过频率解调器进行解调。对于同一种数字调制信号,采用

12、相干解调方式的误码率低于采用非相干解调方式的误码率,所以这里采用相干解调方式。将解调后的信号经滤波器后,再经抽样判决则可输出四电平符号,将其按表1反映射,即可输出二进制比特。解调框图如下所示:解调中F(f)滤波器的幅频响应与调制中相同。将(2)式cos部分按三角公式展开得:将其经过低通滤波器,滤掉高频分量,则(8)式剩下1/ 2A* I (nTs)分量,(10)式只剩下1/ 2A*Q(nTs)分量。将(13)式经相位校正后,再由(14)即可解调出m(n)。由于在数字域内,频率和相位的关系是简单的一阶差分关系,如公式(13)所示。在实际中,要想准确实现调频信号的解调,差分鉴频必须满足以下要求67

13、:(a)、相邻的两个相位差应限制在 , 内,否则出现相位跳变。(b)、当相位差大于2 时,应进行模2 处理。4FSK 相干解调的实现方框图如下:最后将解调后的信号m(n)经过匹配滤波器后,再经过抽样判决,可获得四电平符号,由标准中的表1 所示对应关系,可将四电平符号再反映射为二进制比特流。六、 软件实现方案按照上节的算法分析及调制、解调方框图,做出软件实现方案图如图7 所示。 FSK调制解调MATLAB源代码关键词:FSK 高斯白噪声 调制 眼图 信噪比function FSKFc=10; %载频Fs=40; %系统采样频率Fd=1; %码速率N=Fs/Fd;df=10;numSymb=20;

14、%进行仿真的信息代码个数M=4; %进制数SNRpBit=80;%信噪比SNR=SNRpBit/log2(M);seed=12345 54321;numPlot=20;x=randsrc(numSymb,1,0:M-1);%产生20个二进制随机码figure(1)stem(0:numPlot-1,x(1:numPlot),bx);title(输入四进制随机序列)xlabel(Time);ylabel(Amplitude);%调制y=dmod(x,Fc,Fd,Fs,fsk,M,df);%4FSK调制函数numModPlot=numPlot*Fs;t=0:numModPlot-1./Fs;figu

15、re(2)plot(t,y(1:length(t),b-);axis(min(t) max(t) -1.5 1.5);title(调制信号输出)xlabel(Time);ylabel(Amplitude);%在已调信号中加入高斯白噪声randn(state,seed(2);y=awgn(y,SNR-10*log10(0.5)-10*log10(N),measured,dB);%在已调信号中加入高斯白噪声figure(3)plot(t,y(1:length(t),b-);%画出经过信道的实际信号axis(min(t) max(t) -1.5 1.5);title(加入高斯白噪声后的已调信号)xl

16、abel(Time);ylabel(Amplitude);%相干解调figure(4)z1=ddemod(y,Fc,Fd,Fs,fsk/eye,M,df);title(相干解调后的信号的眼图)%带输出波形的相干M元频移键控解调figure(5)stem(0:numPlot-1,x(1:numPlot),bx);hold on;stem(0:numPlot-1,z1(1:numPlot),ro);hold off;axis(0 numPlot -0.5 1.5);title(相干解调输出信号与原序列的比较)legend(原输入二进制随机序列,相干解调后的信号)xlabel(Time);ylabe

17、l(Amplitude);%非相干解调figure(6)z2=ddemod(y,Fc,Fd,Fs,fsk/eye/noncoh,M,df);title(非相干解调后的信号的眼图)%带输出波形的非相干M元频移键控解调figure(7)stem(0:numPlot-1,x(1:numPlot),bx);hold on;stem(0:numPlot-1,z2(1:numPlot),ro);hold off;axis(0 numPlot -0.5 1.5);title(非相干解调输出信号与原序列的比较)legend(原输入二进制随机序列,非相干解调后的信号)xlabel(Time);ylabel(Am

18、plitude);%误码率统计errorSym ratioSym=symerr(x,z1);figure(8)simbasebandex(0:1:5);title(相干解调后误码率统计)errorSym ratioSym=symerr(x,z2); figure(9)simbasebandex(0:1:5);title(非相干解调后误码率统计)%滤除高斯白噪声Delay=3;R=0.5; %滞后3syf,tf=rcosine(Fd,Fs,fir,R,Delay); %升余弦函数yo2,to2=rcosflt(y,Fd,Fs,filter,yf);%加入高斯白噪声后的已调信号和经过升余弦滤波器后

19、的已调信号t=0:numModPlot-1./Fs;figure(10)plot(t,y(1:length(t),r-);hold on;plot(to2,yo2,b-);hold off;axis(0 20 -1.5 1.5);xlabel(Time);ylabel(Amplitude);legend(加入高斯白噪声后的已调信号,经过升余弦滤波器后的已调信号)title(升余弦滤波前后波形比较)eyediagram(yo2,N);%眼图title(加入高斯白噪声后的已调信号的眼图)七、 软件实现结果本文给出了MATLAB软件实现4FSK 调制解调过程中的详细结果。7.1 调制过程仿真实现结果

20、先将截取的二进制比特流按奇、偶位分开,再按照前面表1 所示的映射关系,将二进制序列映射为四电平符号,得到的四电平符号局部如下图8 所示:图 8将二进制比特流映射为四电平符号对四电平符号进行插值滤波,并进行平滑滤波后得到输入调制信号m(n),滤波器即为前面介绍的平方根升余弦滤波器。插值滤波后生成的局部的与上述显示四电平符号对应的输入调制信号m(n)显示如下图9: 图 9 输入调制信号m(n)做输入调制信号m(n)的频谱(由于重在观察调频前后频谱的搬移情况,为便于观察,取频谱的绝对值,并将零频时图形转换至图的正中来显示),如下图10: 图 10 输入调制信号m(n)的频谱做出调制输出信号的频谱如下

21、图11 所示(为便于观察频谱的搬移情况,取了频谱的绝对值,并将零频时的图形转换到了图的正中间显示,若未转换,频谱边带在载频+fc 与-fc周围分布),显然可以看到,调制过程实现了频谱的搬移,将输入调制信号的频谱由低频搬移到了中频fc 处。图 11调制输出信号频谱7.2 解调过程仿真实现结果将调制输出信号输入到传输信道进行传输。在信道中由于存在干扰,则到达接收端的在调制输出信号基础上附加了高斯白噪声。下面开始解调过程。我们采用相干解调方式对其进行解调。将接收到信号分别乘上本地载波 与 后通过低通滤波器,滤掉高频分量,然后对其进行抽样,可得到Ik2 与Qk2。用Ik2 与Qk2 计算相位,应用(1

22、4)式,就可以得到解调后的序列。显示如下图12。 图 12 解调后得到的信号做解调后得到的信号的频谱(为便于观察, 取了频谱的绝对值,并将零频转换至了图的正中显示),显示如下图13: 图 13 解调后得到信号的频谱对产生的解调后信号每8 点取一个抽样点,得一新序列,对按下面三个门限+2,0,-2依次进行抽样判决,即可得到解调后的四电平符号。解调出的四电平符号局部显示如下图14: 图 14 解调后得出的四电平符号按照与表1 相反的过程,将该四电平符号反映射为二进制序列,即可完成解调过程。 MATLAB仿真眼图6.3 误码率计算输入二进制比特流与输出二进制比特流均为二进制序列,则二者对应不同的位即

23、为误码位,统计出误码位的个数,则可求出此过程的误码率来。使信噪比发生改变,则误码率也相应发生变化,可以做出误码率与信噪比之间的关系图。误码率与信噪比关系如下图15 所示: 图 17 信噪比与误码率关系图由上面误码率与信噪比的关系图,我们可以看到,在这种相干解调方式中,随着信噪比的增大,误码率逐渐降低,与实际信道是相吻合的。八、心得体会首先,通过练习熟悉和掌握通信仿真软件System View的使用,在练习的同时我又重新复习了通信原理很多知识,进一步加深了对通信系统知识的掌握,把所学的知识理论与实践相结合。其次,在通信系统仿真的过程中,我遇到了很多的问题,我通过自己查资料,请教老师和同学一一的解

24、决遇到的各种问题。我不仅学会独立思考问题、分析问题、解决问题,而且加深了对理论知识的掌握,还增强了自己的动手能力。再者,对于信息工程专业的学生来说,通信系统的设计是我们的很重要专业课,我很认真的完成各项设计,这次实习中学到的知识对我们增强专业知识的帮助很大。 附录资料:不需要的可以自行删除各类滤波器的MATLAB程序理想低通滤波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);Hd=ones(size(IA);r=sqrt(f1.2+f2.2);Hd(r0.2)=0;Y=fft2(double(IA);Y=fftshift(Y);Y

25、a=Y.*Hd;Ya=ifftshift(Ya);Ia=ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 二、理想高通滤波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);Hd=ones(size(IA);r=sqrt(f1.2+f2.2);Hd(r0.2)=0;Y=fft2(double(I

26、A);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); Butterworth低通滤波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);D=0.3;r=f1.2+f2.2;n=4;for i=1:s

27、ize(IA,1) for j=1:size(IA,2) t=r(i,j)/(D*D); Hd(i,j)=1/(tn+1); endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); Butterworth高通滤波器IA

28、=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);D=0.3;r=f1.2+f2.2;n=4;for i=1:size(IA,1) for j=1:size(IA,2) t=(D*D)/r(i,j); Hd(i,j)=1/(tn+1); endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);f

29、iguresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 高斯低通滤波器IA=imread(lena.bmp);IB=imread(babarra.bmp);f1,f2=freqspace(size(IA),meshgrid);D=100/size(IA,1);r=f1.2+f2.2;Hd=ones(size(IA);for i=1:size(IA,1) for j=1:size(IA,2) t=r(i,j)/(D*D); Hd(i,j)=exp(-t); endendY=fft2(double(IA);Y=fftshi

30、ft(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 高斯高通滤波器IA=imread(lena.bmp);IB=imread(babarra.bmp);f1,f2=freqspace(size(IA),meshgrid);%D=100/size(IA,1);D=0.3;r=f1

31、.2+f2.2;for i=1:size(IA,1) for j=1:size(IA,2) t=r(i,j)/(D*D); Hd(i,j)=1-exp(-t); endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong);

32、梯形低通滤波器IA=imread(lena.bmp);IB=imread(babarra.bmp);f1,f2=freqspace(size(IA),meshgrid);%D=100/size(IA,1);D0=0.1;D1=0.4;r=sqrt(f1.2+f2.2);Hd=zeros(size(IA);Hd(r=D0 & r(i,j)=D1 Hd(i,j)=(D1-r(i,j)/(D1-D0); end endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot

33、(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 梯形高通滤波器IA=imread(lena.bmp);IB=imread(babarra.bmp);f1,f2=freqspace(size(IA),meshgrid);%D=100/size(IA,1);D0=0.1;D1=0.4;r=sqrt(f1.2+f2.2);Hd=ones(size(IA);Hd(r=D0 & r(i,j)=D1 Hd(i

34、,j)=(D0-r(i,j)/(D0-D1); end endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 用其他方法编写的理想低通、理想高通、Butterworth低通、同态滤波程序理想低通i1=imread(lena.bmp);i2=imnoise(i1,salt & pepper,0.1);f=double(i2);k=fft2(f);g=fftshift(k);N1,N2=size(g);d0=50;u0=floor(N1/2)+1;v0=floor(N2/2)+1;for i=1:N1 for j=1:N2 d=sqrt(i-u0)2+(j-v0)2); if d=d0 h=1; else h=0; end y(i,j)=g(i,j)*h; endendy=ifftshift(y);E1=ifft2(y);E2=real(E1);figuresubplot(2,2

温馨提示

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

评论

0/150

提交评论