APP下载

调谐振荡电路的模拟仿真

2015-01-16云南师范大学物理与电子信息学院张双红

电子世界 2015年24期
关键词:振荡电路波形图正弦波

云南师范大学物理与电子信息学院 张双红 王 静

调谐振荡电路的模拟仿真

云南师范大学物理与电子信息学院 张双红 王 静

利用MATLAB软件的GUI设计功能建立一参数可调的用户界面,模拟调谐振荡电路的波形和相轨迹,使得教学演示变得十分直观,是课堂教学的有效辅助。

MATLAB;调谐振荡电路

1 引言

正弦波振荡器在量测、自动控制、无线电通讯及遥控等许多领域有着广泛的应用。在无线电的发送和接收机中,经常用高频正弦信号作为音频信号的”载波”,对信号进行”调制”变换,以便于进行远距离的传输。振荡电路的调谐则是通过改变振荡器中的电感L和电容C等参数来改变振荡器的频率,使其与所接收频率接近,并与要接收的信号发生谐振,从而达到接收信号的目的[1]。

随着计算机技术的发展,使用MATLAB GUI仿真技术来演示一些电路的实验波形及其他的实验现象已经成为了教学及科学研究的热点。通过GUI界面设计实验仿真,能做出默认参数可调的用户实验平台,使实验现象的变化更直观。实验现象的直观,便可避免实验电路搭建,以及硬件原因所造成的波形失真等情况。模拟操作也因GUI的界面设计变的简便,方便教师演示不同参数的波形和相轨迹。

2 调谐振荡电路的分析

由于在控制系统分析中多采用微分方程描述系统,因此微分方程的求解对于系统的分析至关重要,当常微分方程式能够解析求解时,可用MATLAB的符号工具箱中的找到精确解,在微分方程难以解析的情况下,可以求微分方程的数值解,所以本文利用MATLAB的微分方程求解函数直接给出动态系统的导数描述[2]。

首先利用VanderPol方程来分析调谐振荡电路:

如图1所示。

图1 调谐振荡电路

分析调谐振荡电路,可以知道电压v满足方程:

即Vanderpol方程,它是一个非线性方程,设其初始条件为:

将它转化为一阶常微分方程组,即状态方程。选择状态变量,则可以写出VanderPol方程的状态方程形式,即:

3 GUI界面的设计及仿真流程

GUI(Graphical User Interface)指图形用户界面,用户可以通过这样的界面,利用鼠标和键盘的操作,来调用后台的程序实现自己需要的某些功能。这是一种提高程序易用、交互性的计算机编程方法[1]。

MATLAB GUI的前台由一系列交互组件组成,主要包括按钮(pushbotton)、文本标签(static text)、编辑文本框(Edit text)、滑动条(Slider)、下拉菜单(Pop-Up Menu)、列表框(List Box)、双位按钮(Toggle Button)、单选按钮(Radio Button)、框架(Frame)、复选框(Check Box)等。用户通过某种方式激活这些控件,通常会引起动作或发生改变。MATLAB通过回调函数把内核代码和这些交互组件的鼠标和键盘事件关联起来(即使用鼠标激活回调函数来完成后台程序功能)。

图2 用户界面设计图

3.1 GUI的界面设计

电流环磁场分布模拟的MATLAB GUI界面设计如图2所示,它包括:

(1)建立两个坐标轴(axes)对象,用来显示振荡波形图和相轨迹;

(2)建立2个按钮,分别绘制波形图、相轨迹和结束程序;

(3)建立两个可编辑文本框,用来输入初始条件的默认值,以及方程中μ的取值;

(4)建立两个静态文本标签,标注相应控件(y0的取值和μ的取值)的提示。

3.2 回调函数编写

在gui设计中,通过回调函数的编写来实现控件功能的实现。对于本例,回调程序的程序代码如下:

function vdp_p1_Callback(hObject, eventdata, handles)

y0=str2num(get(handles.y0_edit,'string'));

global x0

x0=str2num(get(handles.x0_edit,'string'));

t0=0;tf=60;

[t,y]=ode45(@vdp,[t0,tf],y0);

axes(handles.axes1)

plot(t,y);

xlabel(‘波形图’)

axes(handles.axes2)

plot(y(:,2),y(:,1));

xlabel(‘相轨迹’)

function ydot=vdp(t,y)

global x0

ydot(1)=x0*(1-y(2)^2)*y(1)-y(2);

ydot(2)=y(1);

ydot=ydot';

3.3 程序仿真结果

运行GUI,当初始条件y0为[0;0.3],μ取值为0.06时,振荡波形图和相轨迹如图3所示。

图3 y0=[0;0.3],μ=0.06的波形图和相轨迹

当初始条件y0为[0;0.3],μ取值为0时,振荡波形图和相轨迹如图4所示,当μ的取值变小时,此时的振荡波形为正弦波形。

当初始条件y0为[0;0.3],μ取值为1时,振荡波形图和相轨迹如图5所示,当μ的取值增大时,波形出现了严重的失真。

通过上面的演示,可以直观得观察到,μ的取值增大的时候波形逐渐的开始失真,当μ=1时(即电压为0.1V),波形严重失真。当μ的取值变小时,振荡波形逐渐的变得像正弦波,当取值为0时,振荡波形就变为了正弦波。

图4 y0=[0;0.3],μ=0的波形图和相轨迹

图5 y0=[0;0.3],μ=1的波形图和相轨迹

4 结语

利用MATLAB软件的数学工具可解VanderPol方程,并利用GUI功能设计一交互式的用户界面。用户可以任意输入参数直观快捷得得到调谐振荡电路的振荡波形和相轨迹,是对课堂教学的有效辅助。

[1]陈怀琛,吴大正,高西全编著.MATLAB及在电子信息课程中的应用[M].电子工业出版社,2006.

[2]于德高.振荡电路(上)[J].家庭电子,2002(03).

[3]张肃文,陆兆熊.高频电子线路[M].第三版.高等教育出版社,1993.

张双红(1993—),男,云南师范大学物理与电子信息学院2011级本科生,电子信息技术与科学专业。

王静(1979—),女,云南师范大学物理与电子信息学院讲师,硕士,主要从事物理教育研究。

猜你喜欢

振荡电路波形图正弦波
由波形图领悟声音特性
单相正弦波变频电源设计与实现
浅析CH-γ方程中解的求法
采用BC5016S的纯正弦波逆变器设计及制作
浅谈轨道动态检测资料在线路维修中的应用
轨道几何动态检测项目及病害成因分析
采用LED闪光及声光警报电路的设计
基于STM32的风力摆控制系统的设计
正弦波振荡电路的负阻分析方法
正弦波激励下刚性开孔结构内压响应特性实验