基于LabVIEW和MatLab物理模型的自动控制原理课程虚拟实验教学平台的搭建
2018-10-11王庆凤谢田雨
王庆凤 谢田雨
吉林大学电子科学与工程学院 吉林长春 130012
自动控制原理是一门培养电气工程类专业学生将经典和现代控制理论应用于实际工程中的理论与实践课程[1,2]。在自动控制原理课程中,实验是一种重要的教学手段,学生通过做实验,可以加深对所学知识的理解,提高动手能力,锻炼发现问题、分析问题和解决问题的能力[3]。但目前我国很多高校的非自动化专业实验设备和场地数量有限,而实验对于非自动化专业的学生也非常重要(比如有利于学生日后参加电子设计竞赛等),它可以发挥学生主观能动性,培养学生的创新意识和能力。
MatLab仿真软件为学生提供了良好的虚拟实验平台,但其在循环处理、图形界面开发、信号测量、网络通信、硬件控制等方面也无法满足实验的需要。LabVIEW是目前应用最广、发展最快、功能最强的图形化虚拟仪器软件开发集成环境之一。文献[4]和文献[5]将MatLab仿真应用到自动控制原理的教学和实验中,运用MatLab语言编写m文件或在Simulink环境中实现动态系统的建模、仿真和性能分析与设计。文献[6]和文献[7]研究了LabVIEW与MatLab/Simulink的混合编程及其在自动控制原理中的应用。以上文献都是基于普通Simulink中的数学模型进行仿真,不能像真实的实验系统那样连接和测试, 其仿真环境和过程与实验室真实实验环境和过程有一定的差距。
本文搭建了基于LabVIEW和MatLab/Simscape物理模型的自动控制原理虚拟仿真实验教学平台。Simscape[8]中提供的元件库和虚拟的实验仪器能直接建立控制系统,逼真再现实验环境。利用LabVIEW软件编写用户界面、读取外界数据、实时监测仿真模型运行、在线修改模型控制参数以及实现远程网络实验等功能。以直流电动机速度控制系统为例验证了仿真实验平台运行的有效性。
1 直流电动机转速控制系统
直流电动机转速控制系统是自动控制原理课程中的典型示例,直流电动机的工作原理如图1所示,其内部通电的线圈在磁场中由于受到力的作用而发生转动,只要电流存在,它的转动会一直进行下去。通电的线圈在磁场中相反的边流过的电流方向是不一致的,所以不同边受到力的方向相反,从而会不停转动。
为推导直流电机的数学模型,定义模型参数如下:vm为电枢电压,Rm为电枢电阻,im为电枢电流,Kt为电机扭矩常数,Km为电机反向感应常数,ωm为电机轴角速度,Mm为电磁转矩,Jeq为电机轴和负载的转动惯量,Mc为负载转矩,fm为电动机轴上的粘性摩擦系数。
图1 电枢控制直流电机工作原理
电枢回路电压平衡方程为:
电动机轴上的转矩平衡方程为:
由于电枢电路电感La较小,通常忽略不计,综上得:
在模拟控制系统中,控制器最常用的控制规律是PID控制,也是经典控制理论教学中的重要校正方法,搭建PID控制器对直流电机的转速稳定性能够进行很好的控制。给定系统的动态性能和稳态性能,就可以设计PID控制器的3个参数。
2 基于MatLab/Simscape的虚拟仿真模型建立
根据PID控制原理,在MatLab/Simulink中进行的仿真实验,其直流电动机采用单纯的数学模型—传递函数表示,虽然能表示各变量之间的数学关系,但不能像真实的实验系统那样连接和测试。
在MatLab/Simscape中进行虚拟仿真,其系统整体如图2所示,其中的DC Machine为直流电机模型,是与实际物理系统相对应的物理模型,其与真实的电机结构相似,因此更接近真实的实验。
SimulinkSimscape是本实验平台构建主要用到的模块,它包含SimPowerSystem,SimElectronics,SimMechanics等模块。建立模型的过程为:建立一个Simulink文件;在SimPowerSystem工具中选择需要的元器件,包括直流电动机、三相整流桥、同步六脉冲触发器、平波电抗器、交流加压源等,将其拖拽到Simulink model中; 按照电路图将各个元器件引脚连接起来;双击相应的模块打开该模块的参数输入对话窗,输入或修改该模块描述的元件的参数。如打开直流电动机(DC Machine)模块的参数输入对话窗可以输入电枢回路电阻、电感、反电动势系数、转矩系数、黏性摩擦系数和转动惯量等信息;最后在Simulation菜单中设置Model Config-uration Parameters,运行搭建的Simulink物理仿真模型可以通过示波器实时观察系统的运行结果。
图2
对电路原理进行几点说明,如下:
(1)为了与真实的直流电机模型匹配,选择3个交流电压模块形成三相对称交流电源,设置合理的参数:峰值电压为220 V,频率为50 Hz,电压源A,B和C的初相位分别为0º,240º和120º。此整流桥具有输出电压高且脉动小、动态响应快的特点。
(2)Parallel RLC Branch为平波电抗器,通过参数设置为纯电感元件,起滤波作用。
(3)直流电机模块的励磁绕组接直流电压220 V;TL端口负载转矩起始为50,在2 s后变为100。直流电机的m端口有4个输出信号,分别为角速度、电枢电流、励磁电流和电磁转矩,其中角速度和电枢电流连接到LabVIEW用户界面进行显示。
(4)同步六脉冲触发器采用电压测量模块和同步六脉冲触发器共同构成,alpha-deg端口连接的是导通角,通过输入进行调解。Block连接触发器开关信号参数设置为0,开放触发器。此触发器需要三相电源进行驱动,因此采用电压测量模块连接。
3 LabVIEW控制前面板的设计
LabVIEW采用图形化的编程方式,形成的程序是框图的形式。LabVIEW提供了旋钮、温度计和波形图等控件,可以很直观地建立前面板,调整不同的控件即可对程序进行调整。
通过搭建的电机模型分析LabVIEW前面板应该加入的控件,并使用装饰盒对前面板进行整洁化设计。LabVIEW作为一款图形化的序言编辑软件,非常适合用来创建友好的用户界面。在LabVIEW中搭建的直流电机控制前面板至少应包含电压控制部分、PID控制部分、波形显示部分和干扰控制部分,清晰地向使用者展示直流电机控制过程中的转速变化的实时情况。可设置直流电动机控制系统虚拟仿真的控制前面板如图3所示。
图3 控制系统前面板—DC motor建模的转速波形
DC motor控制前面板左侧为系统输入部分,包括直流电机的输入阶跃电压、扰动信号、PID控制器的参数P,I和D;右侧为系统的显示部分,使用选项卡进行选择,包括转动速度显示控件、波形图的显示控件、MatLab电机系统模型图。对于不同的自动控制虚拟实验根据需要进行合理的界面设置。
此外,LabVIEW还具有网络发布功能,使用LabVIEW和MatLab互联完成直流电机建模之后,就可以使用LabVIEW的网络发布功能,将设计的内容发布在网络上。
4 MatLab和LabVIEW的互联
在MatLab中建立好控制系统的物理模型、在LabVIEW中建立好前面板后,就可以将LabVIEW前面板和MatLab中对应的系统模型进行互联,设置对应项,实现相互控制。正确的软件安装顺序有利于软件联合的实现,应该先装MatLab,然后安装LabVIEW,最后装SIT工具包,安装完后软件会自动联合。打开MatLab出现如下3行内容:
该内容表示联合成功,同时在Simulink库里会出现一个叫NI SIT Blocks的库。为了实现互联要在MatLab中加入互连通信模块SignalProbe以及SIT out模块(如图2a所示)。然后打开LabVIEW,新建VI,工具→SIT Connection Manager,进行配置之后,会在VI控制前面板出现如图3左侧上部分所示的图标,用来控制仿真过程。
5 仿真实验过程与结果分析
点击LabVIEW控制前面板的运行按钮之后,LabVIEW与MatLab联合运行仿真,用户可以根据前面板上的仿真结果波形判断系统运行状态,调节各个参数,直到系统处于理想状态,转速迅速达到平稳且对扰动电压有很好的抑制作用(如图3所示)。电机可以在0.5 s内达到稳定转速,加入扰动转矩后经过0.2 s的调节就可以依然保持稳定的转速。
通过仿真波形可以看到,此电机模型的参数设置合理,转速达到要求,有很好的抗干扰能力;对比使用传递函数的模型,该模型更加接近真实情况。图3中曲线符合设计要求,仿真曲线和理论分析也是相一致的。同时,DC motor模型的前面板使用选项卡实现转速波形以及电机模型的显示(如图4所示)。
图4 DC motor建模的电机模型
6 结语
本文搭建了基于LabVIEW和MatLab/Simscape物理模型的自动控制原理虚拟仿真实验教学平台,该虚拟实验除了能再现真实实验环境外,还能在线调节器件或参数,观察对系统性能的影响,而无须重新设置再仿真。结果表明此实验方法能激发学生的学习兴趣,培养学生的创新能力。