logo资料库

用MATLAB模拟实现数字信号的调制与频谱分析.pdf

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
2008 年 8 月 电 脑 学 习 第 4 期 用 MATLAB 模拟实现数字信号的调制与频谱分析 杨 峰* 苏玉萍 余冬菊 摘 要 : 运用 MATLAB 语言模拟实现了数字信号的 ASK、FSK、PSK 调制与频谱分析。 键 词 : 数字信号 关 中图分类号: TP311.1 双极性非归零电平码 幅度键控 频移键控 相移键控 频谱分析 文献标识码: B 文章编号: 1002- 2422( 2008) 04- 0046- 02 Using MATLAB to Simulate Digital Signal Modulation and Spectr um Analysis Yang Feng Su Yuping Yu Dongju Abstr act: The paper uses MATLAB to simulate ASK、FSK、PSK modulation of digital signal and spectrum analysis. Keywor d: ASK FSK PSK Spectrum Analysis Digital Signal Bipolar Non- RZ- level Code 1 调制原理 1.1 双极性非归零电平码 叫做二进制调制。 1.2.1 2ASK 调制 双极性非归零电平码(Bipolar NRZ- L)是数字通信中 2ASK 调制是正弦载波的幅度随基带信号的变化而变 用来构造指令码和数据的一种基本码型,用正电平对应数 字″1″,等幅负电平对应数字“0”。采用 Bipolar NRZ- L 码 型。其中每一个数字“1”或“0”叫一个码元。这种码型抗干 扰能力较强,有利于在实际信道中传输。在程序设计中,规 定每个码元的抽样点数目为 N_sample,N_sample 是码元周 期,为简便起见程序中所产生的基带信号的正负电平幅度 都为“1”,并用 an 来表示。 1.2 调制方法 由于数字基带信号是二进制的,因此调制方法都可以 else repeat with I:=1 to ChildCount arr1 [I]:=CallObject (myobj,″GetAttributeValueByName″,″year″,″1,″ ^String(I)) arr2 [I]:=CallObject (myobj,″GetAttributeValueByName″,″tmp″,″1,″ ^String(I)) arr3 [I]:=CallObject(myobj,″GetAttributeValueByName″,″hum″,″1,″ ^String(I)) arr4[I]:=CallObject(myobj,″GetText″,″1,″^String(I)^″,1″) end repeat end if DeleteObject(myobj) 以下是创建文件并写入 XML 数据:方法是将原文档中 的数据读入到数组中,再重新写入该文件,最后添加新增节 点数据: str:=WriteExtFile(FileLocation^″tea11.xml″,″″ ^″\r″) Str0:=AppendExtFile(FileLocation^″tea11.xml″,″″^″\r″) Repeat with i:=1 to ChildCount Str1:=AppendExtFile(FileLocation^″tea11.xml″,″″) Str1:=AppendExtFile(FileLocation^″tea11.xml″,arr4[i]) Str1:=AppendExtFile(FileLocation^″tea11.xml″,″″^″\r″) 收稿日期:2007- 10- 06 * 杨峰 河南师范大学通信工程专业学生(新乡 453007)。 · 46 · 化的数字调制,是最早出现的也是最简单的。抗噪声能力较 差,实际应用并不广泛,但可以作为其他调制方式的研究基 础。2ASK 信号的时域表达式为:e2ASK=bnbAcosω0t。式中 bn 为二进制数序列,当基带信号 an 为正电平时 bn 取“1”,当 基带信号 an 为负电平时 bn 取“0”,由 an 转化为 bn 的硬件 实现只需一个单向导通的二极管电路;A 为调制信号的幅 度;ω0 为调制信号的频率。显然,当基带信号为正电平(+ 1)时,2ASK 时域信号为一正弦波;当基带信号为负电平(- 1)时,2ASK 时域信号对应为“0”。正弦载波频率要比基带 End repeat Repeat with i:=1 to NewChildTotle Str1:=AppendExtFile(FileLocation^″tea11.xml″,″″) Str1:=AppendExtFile(FileLocation^″tea11.xml″,new4[I] ) Str1:=AppendExtFile(FileLocation^″tea11.xml″,″″^″\r″) End repeat Strn:=AppendExtFile(FileLocation^″tea11.xml″,″″^″\r″) 4 结束语 XML 可以提供对各种数据处理、构建、转换和查询技 术的访问,使得用户与应用程序之间数据交换更加容易; XML 是可扩展的且与平台无关的,完全采用 Unicode 支持 国际化,正逐渐成为数据传输的主要介质,这对于 AW 等应 用程序来说可以在远程不同平台上获取 XML 数据,从某种 意义上说也使得 AW 的跨平台操作成为可能。 参考文献 [1] 石明贵. authorware6 标准教程[M]. 北京:北京希望电子 出版社,2002- 03. [2] 宇风多媒体. authorware6 完全教程[M]. 北京:人民邮电 出版社,2002- 09. [3] 耿祥义. XML 基础教程[M]. 北京:清华大学出版社, 2006- 04.
频率高的多得多,为了兼顾实际和视觉效果,在程序设计 中,使一个码元长度对应于正弦函数的五个周期,故设计程 序时频率设计为 ω0=5* 1/N_sample* 2π。 1.2.2 2FSK 调制 2FSK 是正弦载波的频率,随基带信号的变化而变化的 数字调制,时域表达式为:an=1 时,e2FSK=a* cosω1t;an=1 时 e2FSK=a* cosω2t。程序中设定基带信号为正电平时,对应于 高频正弦载波,基带信号为负电平时对应低频正弦载波。 同时考虑波形显示的实际性和简易性,设定“1”对应载波 10 个周期,“- 1”对应载波 5 个周期,故表达式中参数设置 为:ω1=10* 1/N_sample* 2π* 2,ω2=5;1/N_sample* 2π。 1.2.3 2PSK 调制 2PSK 是利用载波相位变化来传输信息的,通常用 0° 或 180°来表示基带信号的两种状态,时域表达式为: an=1 时,e2PSK=an* cosω0t,an=- 1 时,e2PSK=an* cos(ω0t+π), 同样设定载波频率 ω0=5* 1/N_sample* 2π。 2 频谱分析 2.1 频谱计算 MATLAB 中的自带快速傅里叶变换函数 fft 为信号的 频谱分析提供了方便,其调用格式为:Y = fft(X),其中 X 为时域信号序列,Y 是 X 经过快速傅里叶变换后的序列。Y 值相当于序列傅里叶变换在 0- 2π 上的 N 个抽样值,其中 N 为序列长度。在正常采样的情况下,序列 Y 的前半部与后 半部分所含信息相同,分析时只需取出 Y 序列前半部分。 2.2 频谱分析 数字基带信号,如计算机输出的二进制序列,或来自模 拟信号经数字化处理后的 PCM 码组等。信号包含丰富的低 频分量及直流分量,不适合长距离传输。为达到通信的目 的,必须将低频的基带信号搬移到高频处,调制目的是实现 信号的搬移,以适合信道中的长距离传输。 3 程序实现 3.1 双极性非归零电平码的可视化 双极性非归零电平码(Bipolar NRZ- L)可视化程序设 计方法为:每一个码元显示由一定数目的“0”或“1”组成, 如绘制[0 1]序列,设置密集度为 5 的话,则 plot 命令绘制图 形参数为[- 1 - 1 - 1 - 1 - 1 1 1 1 1 1]。 function A=B_NRZ_L(a,N_sample) %双极性非归零电平码的可视化 %a 为原码,N_sample 为抽样点数 n=length(a)V b=find(a==0)V a(b)=- 1V pA=ones(1,N_sample)V for i=1:n A(N_sample;(i- 1)+1:i;N_sample)=a(i);pAV end mm=N_sample;nVt=1:mmV subplot(211)VH1=plot(t,A)V set(H1,'Linewidth' ,2) axis([0 mm - 3.2 3.2]) title(' 双极性非归零电平码显示 ' ,'FontSize' ,8.0) B=fft(A)Vnn=length(B)V subplot(212) H2=plot(1:nn/2,abs(B(1:nn/2)))V title(' 基带信号频谱显示 ' ,'FontSize' ,8.0) 3.2 信号调制的程序实现 根据调制原理,将集中调制方式集成到一个函数中: function p_2afpsk=m_2AFPSK(A,N_sample,choice) %2ASK,2FSK,2PSK 调制集成 %A 原码经 B_NRZ_L 函数处理后 的 返 回 值 ,N_sample 是 抽 样 点 数,choice 是调制选择, %1 代表 2ASK,2 代表 2FSK,3 代表 2PSK % p_2afpsk 为已调信号 n=length(A)/N_sampleV mm=length(A)V t=1:mmV if(choice==1) p_2afpsk=(A+1)/2.;sin(1/N_sample;2;5;pi;t)V %(A+1)/2 作用是将 A 变成 01 序列 elseif(choice==2) p_2afpsk=sin(1/N_sample;5;2;pi;(((3+A)/2).;t))V %(3+A)/2)作用是使得 1 对 elseif(choice==3) loc=find(A==- 1)V A(loc)=0V B=ones(1,mm)V p_2afpsk=sin(1/N_sample;5;2;pi;t+(A+B);pi)V %使得相位作相应变化 end subplot(211) H1=plot(t,p_2afpsk,'b' )V set(H1,'MarkerSize' ,4,'linewidth' ,1)V axis([- 10 mm+10 - 2 2])V title(' 调制信号波形显示 ' ,'FontSize' ,8.0)V B=fft(p_2afpsk)V nn=length(B)V subplot(212) H2=plot(1:nn/2,abs(B(1:nn/2)))V title(' 调制信号频谱显示 ' ,'FontSize' ,8.0) 4 结束语 运用 MATLAB 语言实现了数字信号调制的模拟,并得 到基带信号和已调信号的频谱结构,所得的程序集成了时 域波形显示以及频谱显示。 参考文献 [1] 魏更宇,等. 通信导论[M]. 北京:北京邮电出版社,2005 - 01:41- 51. [2] 张肃文. 高频电子线路[M]. 北京:高等教育出版社,20- 04- 11:457- 471. [3] 孙祥,等. MATLAB7.0 基础教程[M]. 北京:清华大学出 版社,2005- 01:224- 325. · 47 ·
分享到:
收藏