基于Matlab GUI的RLC仿真实验平台开发
2014-07-03裘雪敬阳天舒王杰
裘雪敬,阳天舒,冯 娟,王杰
(中国地质大学,北京 100083)
RLC电路特性实验是电工学的基本电路之一,其电路特性是由抽象、复杂的数学公式进行描述的,不易于学生理解与掌握。同时,有限的实验学时与不足的实验设备也使RLC实验教学存在一定困难。利用仿真软件可以构建非实验室环境下RLC仿真平台[1-2],学生无论是在课堂上还是在课后,都可以在电脑上实现RLC实验的仿真,摆脱了无实物的困境,为RLC实验教学提供一种新的方法。基于此,利用Matlab中GUI开发了RLC电路特性仿真实验平台[3-5],动态演示电路参数变化时电路特性的变化,帮助学生理解和掌握电路特性,既可以用作学生课前预习,也可以作为实际实验的一种替代手段。
图1 RLC电路特性仿真系统结构图
1 RLC仿真系统的结构
RLC仿真系统的结构见图1。仿真实验模块共包括三个实验主模块,在每个实验主模块下由实验目的、实验内容、实验原理、思考题四个模块组成,每个模块在主模块后调用。
2 RLC仿真实验平台设计
RLC电路特性仿真实验中包含三个仿真实验,分别为:RLC串联电路的稳态特性实验、RLC串联电路的暂态特性实验、RC串联电路的暂态特性实验。
2.1 登录界面模块
登录界面模块是用户进入仿真实验系统的入口,由“系统简介”、“进入系统主界面”、“关闭系统”三个按钮控件构成,见图2。
图2 登录界面
在每个按钮的回调函数中,先用close关闭当前窗口后,再打开指定的文件[6,7]。如“进入系统主界面”按钮的回调函数如下:
close指关闭当前页面,chosepage是要打开文件的文件名。
2.1.1 “系统简介”按钮设计
点击“系统简介”按钮后,界面如图3所示,用于对系统的简要说明。界面中的文字通过静态文本框显示出来,双击静态文本框后,“String”用于改变显示的文字,“BackgroundColor”用于改变文本框的背景色。“返回”按钮用于返回上一页GUI界面。
图3 系统简介
2.1.2 “进入系统主界面”按钮设计
点击“进入系统主界面”按钮后,界面如图4所示,供用户选择将要演示的仿真实验。进行实验选择的菜单称为弹出菜单,弹出菜单里包含四项,如图5所示。
图4 系统主界面
图5 实验选择菜单
若要实现弹出菜单每个选项的功能,需先获取每个选项的Value,再进行相应的操作。弹出菜单里的选项是通过其属性的“String”进行设置的,每行对应一个Value。每个选项关联着相应的仿真实验,点击后则切换到对应实验的仿真页面。这里需要注意的是,若是没有选择任何实验,而是直接按“确认”按钮,则执行的指令应是容错处理指令,界面如图6所示。
图6 容错处理界面
2.2 系统主界面模块
为了使仿真实验界面与用户的交互性更好,同时也为了帮助用户更好地理解实验,RLC仿真实验系统的每个实验均由实验目的、实验内容、实验原理、思考题和开始实验等五个模块构成,每个模块对应相关内容并通过按钮控件进行映射[8-9]。下面以RLC串联电路的暂态特性实验为例进行仿真设计说明,菜单界面如图7所示。
图7 RLC串联电路的暂态特性实验菜单
2.2.1 “实验目的”、“实验内容”、“实验原理”和“思考题”按钮设计
“实验目的”、“实验内容”或“思考题”按钮用于打开一个说明窗口,以”思考题”按钮为例,运行后效果如图8所示。
由于实验原理内容较多,不便展示在GUI窗口上,所以“实验原理”按钮利用open函数打开一个实验原理的文本文档,方便用户更好地理解实验。“实验原理”按钮的回调函数如下:
open RLC串联电路暂态特性实验原理.doc;
运行后,即可打开《RLC串联电路暂态特性实验原理》文档。
图8 思考题
2.2.2 “开始实验”按钮设计
RLC串联电路的暂态特性有三种响应形式:欠阻尼、临界阻尼和过阻尼[10]。点击“开始实验”按钮,进入如图9所示的GUI界面。调节参数电阻、电容、电感的值,计算出R与关系,则可确定电路的响应形式[11-13]。
图9 RLC串联电路的暂态特性GUI界面
(1)滑动条与可编辑文本框之间的映射
滑动条的作用就是实现按照设定的步长进行变量的变化,可编辑文本框的作用就是易于用户设置自己想设置的数值,二者结合起来,则可达到滑动条与文本框的数值同步的目的,有利于提高GUI界面与用户的交互性。
以电阻值的滑动条与文本框之间的映射为例,滑动条、文本框的回调函数分别为:
其中,handles.edit2为文本框的句柄,handles.r为滑动条的句柄。
其中,handles.edit3、handles.edit2、handles.edit1分别为电阻、电感、电容文本框的句柄,而handles.t1、handles.t2 则分别为 R 与对应文本框的句柄。运行后,静态文本里即可显示出对应的R与的数值。
(3)电路状态的显示
图10 欠阻尼
图11 临界阻尼
(4)电路响应图形的绘制
由于描述该物理特性的是数学中的二阶微分方程[14],所以采用Matlab中的解二阶微分方程的函数进行求解命令执行后,通过调节R、L、C的值,绘制的三种响应形式的图像分别如图10、图11、图12所示。
图12 过阻尼
4 结束语
利用Matlab中GUI工具开发了RLC仿真实验平台,将电路特性用图形界面方式直观地显示出来,充分发挥了GUI在计算电路响应、绘制图形方面的优势。将物理实验教学与计算机仿真模拟有机地结合起来,不仅操作简单,加深了学生对电路特性的理解,而且解决了实验室设备不足、学时有限的问题,提高了教学效率与质量,对于今后物理实验仿真技术的研究与应用具有一定的参考价值。
[1] 张双德,石伟.用MATLAB语言进行电路设计实验[J].武汉工业学院学报,2003(1):49-50.
[2] 朱盼盼,娄晓燕.基于protelDXP2004的RLC电路仿真[J].大学物理实验,2013,26(2):68-70.
[3] 赵琳,魏洪兵,曾怡达.RLC串联谐振电路实验方法的研究与探索[J].实验技术与管理,2013,30(6):70-73.
[4] 郭晓波,周立,王亮.用Matlab模拟信号检测和复原实验[J].大学物理实验,2013,26(6).
[5] 刘佳.基于MATLAB语言在计算机模拟系统中应用[J].榆林学院学报,2008,18(4):87-90.
[6] 李京秀.基于MatlabGUI的电路特性演示平台设计[J].现代电子技术,2012,35(22):160-162.
[7] 张志涌.精通MATLABR2011a[M].北京:北京航空航天大学出版社,2011.
[8] 张文生,刘耀年,张光烈.Matlab语言在电路暂态分析中的应用[J].继电器,2000,28(12):16-19.
[9] 丁益民,陈倩.基于MATLAB的RLC电路暂态过程的模拟[J].大学物理实验,2011,24(2):78-80.
[10]林晓静.测定RLC串联电路暂态过程的临界电阻[J].物理实验,2001,22(1):11-17.
[11]王巧花,叶平,黄民.基于MATLAB的图形用户界面(GUI)设计[J].煤矿机械,2005,(3):60-62.
[12]朱明扬.RLC串并联稳态电路的MATLAB界面设计[J].东北电力大学学报,2009,29(4):21-25.
[13]鲁金忠,卢章平.利用MATLAB语言编程制作图形用户界面[J].机械与电子,2003,(2):71-73.
[14]李京秀,陈白生.基于MATLAB图形用户界面GUI的电路仿真实验的制作[J].电气电子教学学报,2004,26(4):99-102.