您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 高频电路仿真实验指导
信息工程与自动化学院高频电路实验指导书(MATLAB系统仿真部分)编写:陈家福2010年9月8日信息工程与自动化学院通信工程系高频电路实验指导书2目录实验一、MATLAB仿真基本操作综合实验实验二、AM调制与解调实验实验三、DSB调制与解调实验实验四、SSB调制与解调实验实验五、FM调制与解调实验实验六、混频器(变频器)仿真实验实验七、PLL锁相环仿真实验实验八、基于PLL的频率合成器仿真实验信息工程与自动化学院通信工程系高频电路实验指导书3编写说明随着电子技术领域中信息化、数字化进程的快速发展和计算机技术的普适应用,传统硬件实验的局限性和众多缺点已经开始突显出来,过去靠硬件完成的电路功能,现在大部都可由软件来实现了。虚拟仪器和软件无线电已经正在取代传统硬件设备。现在,只要能用数学描述的任何事件、过程、信号和功能电路,都可以通过传感转换技术、DSP技术和计算机技术来实现。计算机仿真就是实现这个过程的不可缺失的重要的前期阶段。特别是需要配置贵重仪器或大量仪器参与的各种系统性实验,用传统方法操作的复杂程度高、成本也高,在规模化办学条件下几乎不可能满足实际需要。这种情况下计算机仿真实验的优越性就显现出来了,像是任意多踪数字存储示波、频谱分析、逻辑分析和复杂系统分析实验等,几乎必须由计算机仿真来完成。计算机仿真技术的应用能力已经成为高级工程技术人员必须具备的重要的工程素质之一。综上所述,适当引入计算机仿真实验,已经成为高校实践教学环节的重要补充。为此,我们在《高频电子线路》(或称《通信电子线路》、也称《非线性电子线路》)的实验教学中进行尝试,选择了一些对实验仪器设备硬件配置要求较高的一定数量的与高频电路相关的仿真实验。由于经验缺乏,若有不足,敬请各位师生指教。通信工程实验室陈家福2011年10月信息工程与自动化学院通信工程系高频电路实验指导书4实验一、MATLAB仿真基本操作综合实验一、实验目的:认识学习基于MATLAB仿真的M文件程序实现与Simulink仿真工具箱仿真模块调用实现的两种基本方法;通过实验学习掌握各类仿真仪器设备的参数设置和操作使用方法。(一)信号及其运算的MATLAB实现注意:以M文件方式,通过调用MATLAB相关函数编程进行实验时,命令和程序的输入一定要在纯英文状态下,否则输入的命令将会发生错误,程序无法执行。我们可通过MATLAB仿真工作窗中的编辑器功能来发现和纠正各类错误。1.1连续信号的MATLAB实现MATLAB提供了大量用以生成基本信号的函数,比如最常用的指数信号、正弦信号和三角波信号等就可通过MATLAB的内部函数命令来实现,不需要借助任何工具箱就可调用的函数。例如MATLAB的部分波形或图形函数,详见表一中所示:表一、部分波形函数函数产生的波形Sin正弦波Cos余弦波Square方波Sawtooth锯齿波Rectpuls非周期方波Tripuls非周期三角波Pulstran脉冲序列表二、部分图形函数函数图形figure生成图框axis设置坐标轴信息工程与自动化学院通信工程系高频电路实验指导书5text在图上标记文字plot画图title添加图名grid网格线xlabel给x轴添加文本标记ylabel给y轴添加文本标记1.指数信号指数信号tAe在MATLAB中可用exp函数表示,其调用形式为:y=A*exp(a*t)例如图1-1所示指数衰减信号的MATLAB源程序如下(取A=1,-0.4):%program1-1DecayingexponentialsignalA=1;a=-0.4;t=0:0.01:10;ft=A*exp(a*t);plot(t,ft);gridon;2.正弦信号正弦信号Acos(0*t+)和Asin(0+)分别用MATLAB的内部函数cos和sin表示,其调用形式为:A*cos(0*t+phi)A*sin(0*t+phi)例如图1-2所示正弦信号的MATLAB源程序如下(取A=1,0=2,=/6):%program1-2SinusoidalA=1;w0=2*pi;phi=pi/6;t=0:0.001:8;ft=A*sin(w0*t+phi);plot(t,ft);gridon;信息工程与自动化学院通信工程系高频电路实验指导书601234567891000.10.20.30.40.50.60.70.80.91012345678-1-0.8-0.6-0.4-0.200.20.40.60.81图1-1单边指数衰减信号图1-2正弦信号除了内部函数外,在信号处理工具箱(SignalProssingToolbox)中还提供了诸如取样函数、矩形波、三角波、周期性矩形波和周期性三角波等在信号处理中常用的信号。3.取样函数取样函数Sa(t)在MATLAB中用sinc函数表示,其定义为:Sinc(t)=sin(t)/(t)其调用形式为:Y=sinc(t)例如图1-3所示取样函数的MATLAB源程序如下:%program1-3Samplefunctiont=-3*pi:pi/100:3*pi;ft=sinc(t/pi);plot(t,ft);gridon;-10-8-6-4-20246810-0.4-0.200.20.40.60.8100.511.522.533.54-0.500.511.5图1-3取样函数图1-4矩形波信号4.矩形脉冲信号信息工程与自动化学院通信工程系高频电路实验指导书7矩形脉冲信号在MATLAB中用rectpuls函数来表示,其调用形式为:y=rectpuls(t,width)用以产生一个幅值为1、宽度为width、相对于t=0点左右对称的矩形波信号。该函数的横坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围。Width的默认值为1。例如图1-4所示以t=2T(即t-2×T=0)为对称中心的矩形脉冲信号的MATLAB源程序如下(取T=1):%program1-4Rectangularpulsesignalt=0:0.001:4;T=1;ft=rectpuls(t-2*T,2*T);plot(t,ft);gridon;axis([04-0.51.5]);周期性矩形波(方波)信号在NATLAB中用square函数来表示,其调用形式为:y=square(t,DUTY)用以产生一个周期为2、幅值为1的周期性方波信号,其中的DUTY参数表示占空比(dutycycle),即在信号的一个周期中正值所占的百分比。例如图1-5所示实现频率为30Hz的周期性方波信号的MATLAB源程序如下:%program1-5Periodisrectangularpulsesignalt=-0.0625:0.0001:0.0625;y=square(2*pi*30*t,50);%DUTY=50(percent)plot(t,y);axis([-0.06250.0625-1.51.5]);gridon-0.06-0.04-0.0200.020.040.06-1.5-1-0.500.511.5图1-5周期性方波信号5.三角波脉冲信号三角波脉冲信号在MATLAB中用tripuls函数来表示,其调用形式为:信息工程与自动化学院通信工程系高频电路实验指导书8y=tripuls(t,width,skew)用以产生一个最大幅度为1、宽度为width、斜度为skew的三角波信号。该函数的横坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围。斜度skew是一个介于-1和1之间的值,它表示最大幅度1出现在t=(width/2)×skew的横坐标位置。如图1-6所示三角波信号的MATLAB源程序如下:%program1-6Triangularpulsesignalt=-3:0.001:3;ft=5*tripuls(t,4,0.5);plot(t,ft);gridon;axis([-33-0.55]);‘-3-2-10123-0.500.511.522.533.544.55图1-6三角波信号周期性三角波信号在MATLAB中用sawtooth函数来表示,其调用形式为:y=sawtooth(t,WIDTH)用以产生一个周期为2、最大幅度为1、最小幅度为-1的周期性三角波(锯齿波)信号,其中的WIDTH参数表示最大幅度出现的位置:在一个周期内,信号从t=0到WIDTH×2时函数值是从-1到1线性增加的,而从WIDTH×2到2时函数值又是从1到-1线性递减的;在其他周期内依次类推。例如图1-7所示的周期性三角波信号的MATLAB源程序如下:%program1-7periodictriangularpulsesignalt=-5*pi:pi/10:5*pi;x=sawtooth(t,0.5);%锯齿波(或三角波)plot(t,x);axis([-1616-1.51.5]);gridon;信息工程与自动化学院通信工程系高频电路实验指导书9-15-10-5051015-1.5-1-0.500.511.5图1.7周期性三角信号6.一般周期性脉冲信号一般周期性脉冲信号在MATLAB中用pulstran函数表示,其调用形式为:y=pulstran(t,d,’func’)该函数基于一个名为func的连续函数并以之为一个周期,从而产生一串周期性的连续函数(func函数可自定义)。该pulstran函数的横坐标范围由向量t指定,而向量d用于指定周期性的偏移量(即各个周期的中心点),这样这个func函数会被计算length(d)次,并且整个pulstran函数的返回值实际上就相当于:y=func(t-d(1))+func(t-d(2))+…从而实现一个周期性脉冲信号的产生。函数pulstran的更一般调用形式为:y=pulstran(t,d,`func`,p1,p2,…)其中的p1,p2,…为需要传送给func函数的额外输入参数值(除了变量t之外),如上述的rectuuls函数需要width这个额外参数,tripuls函数需要width和skew这两个额外参数,即整个pulstran函数的返回值实际上相当于:y=func(t-d(1),p1,p2,…)+func(t-d(2),p1,p2,…)+…例如图1-8所示周期性矩形脉冲信号和周期性三角波信号的MATLAB源程序如下:%program1-8Periodicpulsegeneratort=0:1e-3:1;%1kHzsamplefreqfor1secd=0:1/4:1;%4Hzrepetitionfreqy=pulstran(t,d,'rectpuls',0.1);%脉冲系列定义为周期性矩形波figure(1);plot(t,y);gridon;axis([0,1,-0.1,1.1]);%生成图形、设置栅格与坐标t=0:1e-3:1;%1kHzsamplefreqfor1secd=0:1/3:1;%3Hzrepetitionfreq信息工程与自动化学院通信工程系高频电路实验指导书10y=pulstran(t,d,'tripuls',0.2);%脉冲系列定义为周期性三角波figure(2);plot(t,y);gridon;axis([0,1,-0.1,1.1]);00.10.20.30.40.50.60.70.80.9100.20.40.60.8100.10.20.30.40.50.60.70.80.9100.20.40.60.81图1-8周期性矩形脉冲和三角波脉冲信号(二)Simulink仿真工具箱模块的调用与实验仪器设备的操作使用1、常用工具模块的寻找路径SimulinkMathOperationDiscreteSinksContinuousSimulinkSimulinkSignalProcessingBlockset信息工程与自动化学院通信工程系高频电路实验指导书112、仿真仪器的操作使用练习【实验目的】学习、掌握各类MATLAB仿真仪器设备、信号源、示波器与频谱仪等的使用方法。用仿真技术对某个给定信号波形进行时
本文标题:高频电路仿真实验指导
链接地址:https://www.777doc.com/doc-6147359 .html