基于MATLABGUI的自动控制典型环节虚拟实验平台的开发_第1页
基于MATLABGUI的自动控制典型环节虚拟实验平台的开发_第2页
基于MATLABGUI的自动控制典型环节虚拟实验平台的开发_第3页
基于MATLABGUI的自动控制典型环节虚拟实验平台的开发_第4页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、 基于MATLABGUI的自动控制典型环节虚拟实验平台的开发 赵新宽1 梁建广2 王艺橙1(1.珠海城市职业技术学院 广东 珠海 519090;2.博世(珠海)安保系统有限公司 广东 珠海 519090)Reference:MATLAB仿真在自动控制原理与系统课程教学中有着广泛的应用。本文以典型环节为例介绍如何通过MATLAB GUI设计虚拟实验平台。该平台可以进行模拟实验,同时可看到数学模型和技术指标的变化,有效地提高了教学的针对性,降低了学生对仿真软件本身的依赖,有一定的实用价值和借鉴意义。Keys:虚拟实验平台;MATLAB GUI;典型环节;SIMUlink;工具箱G712 :A :1

2、672-5727(2013)05-0170-02自动控制原理与系统是高职电气自动化技术专业的主干课程之一。它主要以自动控制理论作为系统分析的工具,通过对典型控制系统,如直流调速系统的性能分析与改善,使学生掌握自动控制系统的构成、性能指标、校正方法等(知识目标),能够对典型环节进行判断和测试,能够正确组建反馈控制系统,能够根据性能要求改变调节器参数(能力目标)。该课程涉及知识面广、信息量大,而且理论性和实践性较强,特别是高职学生由于基础比较薄弱,学习数学建模十分吃力,系统分析也常常力不从心。因此,该课程历来是高职相关专业教学改革的重点,改革主要是对知识进行重构,把学科体系的讲授内容变换成行动导向

3、的学习内容。在教学方法上,大部分院校都使用了基于MATLAB软件的仿真教学。MATLAB中SIMUlink工具箱是系统分析和设计的有力工具。但从教学实践来看,由于基础较差,高职学生对MATLAB的运用有很大的障碍,造成仿真学习效率不高,教师往往要花很大的精力讲授仿真软件的使用。而且,学生在仿真时看到的是数学模型,而非真实的环节和系统,使得学生学到的理论知识难以有效迁移。如果可以把真实环节、系统同其背后的数学模型对应呈现,学生修改真实环节、系统的物理参数后,马上可以看到数学模型的对应变化,看到不同信号的响应情况。虚拟实验平台即是把真实自动控制环节、系统同数学建模有机结合的实验平台。学生可以在平台

4、上修改物理参数、改变输入信号、观察响应情况,同时可以观察数学模型的变化情况。现以典型环节为例介绍虚拟实验平台的设计和开发。基于MATLAB GUI的典型环节虚拟实验平台的设计MATLAB开发环境提供了创建用户界面的捷径(GUIDE)。GUIDE可以根据用户GUI的版面设计过程直接自动生成M文件框架。设计之后的编码工作,集中在相应的Callback函数上,因此,更加标准化和简化。本实验平台的界面如图1所示。在最左边的设置面板中,可以选择不同的典型环节,如比例环节、积分环节、惯性环节、振荡环节等六种环节。在通过下拉菜单选定环节之后,相应的模拟电路会出现在中间的展示区域,对应的物理参数出现在设置面板

5、中(不同环节的构成不同,参数有异),可以根据实验目的进行参数设置,设置完毕确认后,对应的数学模型马上予以呈现。可以选择不同的输入信号,如脉冲信号、阶跃信号、斜坡信号、加速度信号等作为信号源进行实验。点击“运行”按钮,输入信号和响应信号会以不同颜色对比呈现出来。由于本环节仅是虚拟实验平台的一部分,所以还有一个返回主菜单按钮。还可以在本环节中加入菜单栏,引入响应曲线存储、打印等功能。典型环节虚拟实验平台的实现虚拟实验环节的使用,不涉及任何的编程。但是在实验功能的背后,却离不开M-file编程与SIMULIK建模,只不过这些对于使用者而言都是透明的。(一)模拟电路和数学模型的正确显示首先应当把不同环

6、节对应的模拟电路图片同.fig文件和.m文件存放于一个文件夹下,以备读取,然后在“环节选择”下拉菜单控件的callback函数中进行相应编程。调用get()函数,读取“环节选择”控件值,handles是包含所有控制句柄和用户数据的structure。根据所做的选择调用显示对应的图片,正确显示需要设置的参数名称,禁用多余的数值输入框,具体如下:function select_element_Callback(hObject,eventdata,handles)value=get(handles.select_element,value);%读取所选择的环节值switch value %根据值进行

7、分支控制case 1 %比例环节data=imread(.proportional.jpg); %读取比例环节图片set(handles.paraname1,string,R1(kOhm);%设置相应的参数名称及单位case 2 %积分环节data=imread(.Integral.jpg);case 6 %振荡环节endelement_selected=1; %设置全局变量axes(handles.axe_pic);imshow(data); %显示电路图片传递函数是以文本的形式显示在界面上(当然也可以改为框图模式),用户输入的数值也是以字符串的形式。因此,在对应的输入控件callback中

8、要把字符串转换为数值,并进行有效性检查。在“确定”按钮控件的callback函数应该进行正确的运算,再把最终的结果以正确的表示形式显示。如下:function /confirm/i_setting_Callback(hObject,eventdata,handles)switch(element_selected) case 2 %所选为积分环节str=num2str(p2*p1./1000);%求出积分时间常数set(handles.transfunc_string,string,strcat(1/,str,s); %组成正确的字符串显示 (二)实验运行功能的实现虚拟实验室运行功能的实现依赖

9、于SIMUlink的正确建模,以及根据面板设置的不同,修改仿真模型相应环节的参数,并把仿真结果读取到工作空间后,正确显示在面板上。在本模块中,在同一个.mdl文件中(该文件与.fig等文件在同一文件夹下),针对四种输入信号,各建立一个模型,如对于阶跃信号如图2所示。“运行”控件的回调函数要进行打开模型,判断输入信号类型,以便正确修改模块参数等等。if isempty(find_system(Name,typical_element);%打开指定名字的模型文件open_system(typical_element.mdl);end如果模型文件正确打开,则根据选择的输入信号类型选择具体的模型,然后

10、根据选择的典型环节类型,读取相关全局变量,进行传递函数模块分子和分母矩阵表达式的设置:switch(input_selected)case 1 %脉冲信号case 2 %阶跃信号switch(element_selected) %根据选择的环节设置参数case 1 %比例环节case 6%振荡环节set_param(typical_element_m/Step_Transfer,Numerator,mat2str(0 wn_wn),Denominator,mat2str(1 kesai_wn wn_wn);endkesai_wn与wn_wn 是全局变量,在参数设置“确定”控件的callback

11、进行计算,分别对应于振荡环节标准表达式中的2n与2n。mat2str()函数把矩阵转化为表达式,这是由传递函数模块参数类型决定的。sim(typical_element,simset(DstWorkspace,base); %启动仿真simout=evalin(base,simout_step); %从基本工作空间读数据simout1=evalin(base,step_signal);tout=evalin(base,tout);axes(handles.axes_simresult);cla; %清屏plot(tout,simout1.signals.values(:,1),g,tout,s

12、imout.signals.values(:,1),r);%画图Endsimset()函数是进行仿真的设置,此处把基本工作空间设置为目标工作空间。至此,在界面上就可以运行得到输入输出的对比曲线。结语本文所介绍的只是笔者教学实践中所使用的虚拟实验室的一部分,虚拟实验室的构建思路是既可以进行虚拟的“实验”(看到表面发生了什么),也可以看到数学模型的变化(本质上发生了什么)。在后续单、双闭环调速系统的调试学习中,改变PID调节器模拟电路的参数后,幅频、相频特性以及响应曲线都对比显示出来,能使学生清楚看到系统动态、稳态性能发生的变化,以及时域、频域指标的情况,学习效果较好,解决了理论与实验相脱节的问题。Reference:1沈玉梅.MATLAB在自动控制原理与系统教学中的应

温馨提示

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

评论

0/150

提交评论