您的当前位置:首页正文

MATLAB与控制系统仿真实验设计

2021-09-26 来源:意榕旅游网
技术瞭望 TECHNOLOGY OUTLOOK

MATLAB与控制系统仿真实验设计Design of MATLAB and Control System Simulation Experiment•南京邮电大学自动化学院人工智能学院胡长晖Hu Changhui摘要:本文探讨了《MATLAB与控制系统仿真实验》课程中存在的实验内容质量低,Simulink实验较

多的问题。提出以开放实验代替验证实验,以综合实验代替数量众多的孤立实验,以MATLAB编程实

验代替Simulink实验的改革措施。随后,给出了综合型实验的两个案例,实践表明,课程改革能有效 的提高学生创新能力。关键词:MATLAB实验 控制系统仿真;Simulink仿真;MATLAB编程Abstract: This article discusses the problems of the experime nt tea chi ng of MATLAB and Control System Simulation course, such as low quality experiment content, many Simulink based

experime nts. The correspond i ng reforms such as the ope n experime nt in stead of the verificati on

experime nt, the comprehe nsive experime nt instead of a large nu mber of isolate experime nts, and

the MATLAB program mi ng experiment instead of the Simuli nk based experime nt, are proposed.

Subsequently, Two comprehensive experiment cases are given. Practice shows that the reform can effectively improve the in novative ability of studentKey words: MATLAB based experiment, Control system simulation, Simulink simulation, MATLJkB programming【中图分类号】TM743【文献标识码】B文章编号1606-5123 (2020) 08-0047-051引言当前,人工智能发展方兴未艾,大学生须具有更强 的科研创新能力,以迎接新技术革命的到来。MATLAB作

为实现人工智能技术的主要工具之一,对培养大学生科

专业的本科生回。该课程旨在使学生掌握MATLAB科学计算

和系统仿真平台的基本编程思想和方法,并基于MATUXB平

台建立系统数字仿真的基本概念、理解基本原理、掌握常

技创新能力发挥着重要作用。MALTAB的名字由Matrix和 Laboratory两词的前3个字母组合而成,意为矩阵实验室。

用仿真方法。与侧重理论基础的课程不同,《MATLAB与控 制系统仿真》是一门侧重实践的课程,实验教学占比相对

较高。多年来,国内高校已有不少有效的改革和尝试产役

MAT3B是美国MathWorks公司出品的商业数学软件,用于

算法开发、数据可视化、数据分析以及数值计算的高级技

但是专门针对《MATLAB与控制系统仿真》课程实验教学的 探讨比较少。本文对目前《MAT3B与控制系统仿真》实验教学中存 在的主要问题进行分析,提出了相应的改革措施,在此基

术计算语言和交互式环境,主要包括MATLAB和Simulink两 大部分叫《MATLAB与控制系统仿真》课程内容包含MATLAB语

言基础和控制系统基础知识及相应的仿真,适用于自动化础上,给出了具体实验案例。a | TECHNOLOGY OUTLOOK | 技术瞭望2课程实验教学存在的问题分析《MATLAB与控制系统仿真》作为一门独立的课程,其

核心工具是MATLAB软件,而MATLAB的优势就是对数学模

型实现高效的仿真。自动化专业的本科生在接受该课程教 学之前,已经学习了利用MATLAB软件仿真的课程《自动控

制原理》,该课程的理论和实验课程一般都会借助MATLAB

软件作为辅助工具冈。事实上,《MATLAB与控制系统仿

真》与《自动控制原理》在理论教学内容方面存在部分重 叠,这也会导致两门课程在实验教学内容方面存在重叠的

问题,尤其是在控制系统建模、自动控制系统分析方法与

仿真等方面同。实验内容重叠会对《MATLAB与控制系统仿

真》实验教学产生消极影响,是一种不能忽视教学问题。《MATLAB与控制系统仿真》实验教学主要通过 MATLAB软件实现各种控制系统仿真任务,实验教学为10

学时,而实验内容涉及《MATLAB与控制系统仿真》课程讲

授的所有内容。10个实验教学课时要完成如此多的实验内 容,会造成实验教学追求实验内容量,而降低实验难度,

忽视实验质量,无法使学生深入理解和掌握MATLAB仿真的

内涵,更无法有效的培养学生的创新思维能力和独立解决

问题的能力。《MATLAB与控制系统仿真》实验中的控制系统仿真

任务可以通过Simulink仿真或MATLAB语言编程实现。相

比于通过MATLAB语言编程设计实验内容,以Simulink为

基础设计实验内容,能够在有限的时间里,完成更多的验 证实验。原因是通过Simulink提供的模块库,构建已知控

制系统模型,并设置参数,就能很快的输出仿真结果。大 量基于Simulink的实验更注重实验验证,忽视了实验对学

生MATLAB编程能力的培养,无法使学生从MATLAB的底层

理解和掌握控制系统仿真的实质。导致学生完成课程学习 后,仍然存在MATLAB编程能力不足的问题。3课程实验教学改革措施针对《MATLAB与控制系统仿真》与《自动控制原 理》在实验教学内容方面存在重叠的问题,应设计开放型

实验代替零散的验证型实验,将验证实验作为开放实验的

一个部分。《自动控制原理》实验课程的主要目的是验证

其理论课程的基本原理和方法,该课程实验主要是验证型 实验。如果在《MATLAB与控制系统仿真》实验课程中再

去验证控制系统的基本原理和方法,必然导致重复实验。《MATUXB与控制系统仿真》实验课程使用开放型实验,能 够有效激发学生的研究兴趣,增强学习探索的主动性,培 养学生的创新逻辑思维能力。针对《MATLAB与控制系统仿真》实验内容量多质低

的问题,应该将课程各个部分的内容串起来,设计综合实 验。控制系统的基本原理和方法之间本身是紧密联系的,

如果孤立的看待这些内容,忽视它们的内在联系,设计的

实验会导致内容彼此孤立、零散。设计综合型实验能够在 涵盖课程大纲要求内容的基础上,有效提高实验质量,降

低实验数量,提高学生独立解决综合问题的能力。针对基于Simulink的实验无法培养学生的MATLAB编程

能力的问题,应主要通过MATLAB语言编程设计课程实验内

容。Simulink虽然能够快速高效的实现控制系统的仿真,减 轻学生的实验工作量,易于从系统层面理解控制系统的特

性。但是其缺点也非常明显,不能培养学生的MATLAB编程

能力。事实上,MATLAB编程能力的培养是《MATLAB与控

制系统仿真》实验的主要任务之一,使用MATLAB语言编程

实验代替Simulink实验,对提高学生的编程能力,提升学生

对控制系统仿真实验内涵的认识具有重要的意义。为了实现《MATL7XB与控制系统仿真》实验课程教学改 革的实躅,本文设计两个综合实验案例。分章论述如下。4案例1:根据开环传递函数判定系毓稳定性

4.1开环函数的稳定性问题已知恥)=(1 + 0./ + 0.2眈为某单位负反馈系统的开

环传递函数。问题(1 ):当K=5时,系统是否稳定?如果系统稳

定,求系统单位阶跃响应的最大超调Mp、调整时间TS (相 对误差阈值为2%)、峰值时间Tp。问题(2):试确定使系统稳定的K的范围。4.2已知K求解求解稳定性判断系统稳定性可以使用奈奎斯特判据,伯德图判断

系统稳定性,根轨迹法判断系统稳定性等。对于问题(1)

中参数给定控制系统,使用奈奎斯特判据判断系统稳定

性,编程如下:clear allK = 5;G1 0]);G2 = tf(1,[0.1 1]);G3=tf(1,[0.2 1]);Gsk=KxG1xG2xG3;figure(l)nyquist(Gsk);由以上程序,得到奈奎斯特图如图1所示,由奈斯特曲线可知,开环奈奎斯特曲线没有包围(-1, j0)点,所以 K=5时,系统是稳定的。该单位负反馈系统的闭环传递函数

如下:sys = feedback(Gsk, 1,-1);最大超调是响应曲线峰值与稳态值的差对稳态值之

比。系统的稳态值为limG(s),求取稳态值Fv的编程如下j->0:[num den] = tfdata(sys,'v');Fv = polyval(num,0)/polyvaL(den,0);在获得系统的传递函数sys和稳态值Fv后,通过单位阶 跃响应函数step,获取系统的输出响应值向量Y及其对应的

仿真时间向量T。[Y, T] = step(sys);求取系统响应值的峰值Yp,以及峰值时间Tp在仿真时

间向量中的位置编号Index如下:[Yp Index] = max(Y);这样,最大超调和峰值时间计算如下:Mp = 100x(Yp-Fv)/Fv;Tp = T(lndex);调整时间是响应曲线与稳态值的误差对稳态值的比值 始终不超过给定的阈值2%,即输出响应值最后一次进入

0.98FV与1.02FV之间,而后一直稳定在该范围之内,不超出

该范围。在输出响应值向量Y中,位置编号小的输出值处于

过度过程的初期和中期,而位置编号大的输出值处于稳态

过程的后期和系统稳定区间,所以,寻找调整时间应该从 输出响应值向量Y的后面往前面搜索,即由系统稳定区间向

过度过程搜索调整时间Ts。求系统调整时间Ts编程如下:Le = size(T,1);while(Y(Le)>0.98xFv)&(Y(Le)<1,02xFv)Le = Le -1;endTs = T(Le);问题(1)的实验内容涉及系统稳定性判定,控制系统 动态指标的计算。图2显示了K=5时系统单位阶跃曲线及其

峰值点和调整时间结束点。编程如下:figure(2)step(sys)hold onplot(Tp,Yp/r/)hold ontext(Tp+0.2,Yp-0.05,'峰值');hold onplot(Ts,Y(Le),'r.')《智慧工厂》Smart FactorySeptember-October 2020hold ontext(Ts,Y(Le)+0.1调整时间');hold on4.3确定使系统稳定的K值范围问题(2)同样是判断系统的稳定性,但是要确定使系

统稳定的K的范围。这就要求选择的系统稳定性判据易于编

程表达,通过程序本身就能很容易判断系统是否问题,而

程序不易表达的稳定判据就不宜使用。这里使用伯德图判 断系统稳定性,即幅值穿越频率Wc小于相位穿越频率Wg,

则系统稳定。编程如下:clear allK = 0.1;G1 =tf(1,[1 0]);G2 = tf(1,[0.1 1]);G3=tf(1,[0.21]);Gsk=KxG1xG2xG3;[Gm Gp Wg Wc] = margin(Gsk)while WcWc=Wg。因此,K的范围在0到15之间时,系统稳定。5案例2:已知开环函数设计相位裕度和増益案例1的问题(1)中,的系统开环传递函数为:G”k\\ (s) 1 =--------------------------(1 + 0.15)(1 + 0.25)5要求设计相位滞后控制器使系统相位裕度为7 =50°,开

环增益为50。相位滞后校正可以使系统具有希望的相位裕度和低频 增益,相位滞后校正环节的传递函数为:蓟)陽”>1相位滞后校正的设计步骤如下:(1)根据稳态误差计算Kc。(2)根据Kc下系统开环幅频和相频曲线,寻找满足要

求的相位裕度(即y =50。)所对应的频率作为幅值穿越频率4。(3)根据血确定校正环节的转折频率,即 TECHNOLOGY OUTLOOK | 技术瞭望Nyquist Diagram201510s_5

x<

0

Ajpu -5

-15-20-1.5-1

-0.50Real Axi图1 K=5时系统的奈奎斯特图Step Response1.4峰值1.2调整时间1a)p8ru __o.dlO. u6<

0.40.2o0

0.51.5

2

2.5 3 3.5 4 4.5 5Time (seconds)图2 K=5时系统阶跃响应及其峰值点和调整时间结束点Bode DiagramGm =-10.5 dB (at 7.07 nad/s), Pm = -28.1 deg (at 12.1 rad/s)

100m50p-50r100p150n-90uu180乏

BE (Bap) 2SE

-£Z-270W1

10°

101

102103Frequency (rad/s)图3相位滞后校正前改变增益的系统开环伯德图P = \\KcG{ja)^ (即0为%处的幅值);Tl=—(为经验

叭公式)。根据相位滞后校正设计的步骤,首先计算改变增益

后,系统开环对数频率特性,编程如下:Gk=tf(1;[0.1 1])xtf(1,[0.21])xtf(L[1 0])x5;Gk1=Gkx50/5;figure ⑵margin(Gkl);图3显示了相位滞后校正前改变增益的系统开环伯德

图,其中Gm和Pm分别表示幅值裕度和相位裕度(即卩),

从图3可以看出,改变增益后系统的相位裕度为-28.1。。而 工程上通常要求Gm>6dB, Pm=30°~60°o利用伯德图中相位裕度公式尸180。+0做),可以得到

幅值穿越频率叫与相位裕度卩之间的关系,其中处)表示对数

相频特性。实际上,在计算幅值穿越频率耳时,会对希望

的相位裕度7进行一定的补偿,本案例对期望相位裕度卜偿

6。,即有0(4)=广180。=50。+6。-180°= -124。,如此,可以

得到系统开环幅值穿越频率,编程如下:W = Logspace(-1,2」00);

[mag ph] = bode(GkLW);

mag=reshape(mag,100,1);

ph=reshape(ph,100,1);wc=interpl(ph,W,-124) % 获取化得到幅值穿越频率q后,可以通过步骤3)求取〃和

T],编程如下:Beta=interpl (phymag,-l 24)

% 获取T1=10/wc%获取好Gc=tf([TL1],[ BetaxTI,!])%#SJGc得到相位滞后校正控制器后,检验其是否满足要求,编程如下:sys=GcxGklmargin(sys)图4显示了相位滞后校正后系统的开环伯德图,从图4

可以看出,改变增益后系统的相位裕度为50.5。,满足相位

裕度要求。6结束语本文依据教育部人才培养机制,以编程能力和实践创

新能力培养为目标,针对《MATLAB与控制系统仿真》实验 教学中存在的内容质量低,Simulink实验多的问题,采取以

开放型实验代替验证型实验,以综合实验代替数量众多的

(下转59页)血> |《智慧工厂》Smart FactorySeptember-October 2020物理化学变化,广泛适应于各种材料的切割加工,有\"万 能切割机\"之誉。水切口光滑平整无毛刺,一般无须再加

[2] 张沈骏,郑卫刚.虚拟现实联想口诀量化法在气焊气割教学中的

运用[J].晋城职业技术学院学报,2020,13(02):48-50工。由数控系统操纵,切割精度高,切割缝小于1.2mm,

便于套料切割,节约材料。加工过程不会产生污染环境的

[3] 郑卫刚虚拟现实技术的应用——宇龙软件在数控加工的运用

[J]智能机器人2016(06) :74-76废物。数控水刀对那些用其它方法难以切割的材料如芳纶 (Kevler),钛合金及各种复合材料是非常理想或唯一的加工 手段。数控水刀虽然比火焰、等离子切割机床可以更精确

[4] 郑卫刚.简述智能机器人及发展趋势展望[J].智能机器

人,2016(04):41-43[5] 李玉珠,郑卫刚.浅谈一流大学工程训练中心软实力及巧实力建

设DJ.网友世界,2012(12):56-58.的切割,但还不是精密加工机床,在切割10mm以下的板料

时,误差可以做到0.1mm。由于水射流的靶距是不确定的

或者说是变化的,数控水刀的最大切割厚度一般100mm以

[6] 杨林,张凤华,唐川林.磨料水射流切割断面质量的研究[J].机械

设计与研究,2003(05):54-56.内,现有的数控水刀射流经过空气阻力,能量衰减极快, 就一般应用而言,切割金属板材厚度建议不超过100mm,

第一作者张沈骏(1977—)男焊接高级工热处理与焊接自动化技

术领域发泡材料如海绵厚度建议不超过300mm。参考文献[1]张沈骏,郑卫刚.浅谈三种常见的焊接机器人[J].智慧工

通讯作者郑卫刚(1967-)男工学学士技师机电技术领域厂,2020(06):47-50.(上接50页)Bode Diagram课程教学改革探究口教育教学论坛2018, 9: 105-106.cop

rpn

[3] 林峰,姚维,陈欣,韩涛,马皓.Matlab与系统仿真课程探究性

实验平台建设0].电气电子教学学报.2018, 40(1): 116-11 &七 乏

UBm(bdjp)(DSE-czd

[4] 林峰.“Matlab与系统仿真课程的教学改革[J].电气电子教学学

报.2015, 37⑶:54-58 .[5] 吕勇.MATLAB在《自动控制原理》课程教学中的应用探讨

[J].现代计算机.2020, 01: 72-74.[6] 吴健珍,张莉萍,罗晓.基于MATLAB的自动控制理论实验仿

真分析[J].南方农机2019, 50(15): 171-173.Frequency (rad/s)图4相位滞后校正后系统的开环伯德图孤立实验,以MATLAB编程实验代替Simulink实验的改革措

基金项目国家自然科学基金(61802203)江苏省自然科学基金(BK20180761)施。初步实施取得了一定的成绩,有效提高了学生上课的

积极主动性和MATLAB编程能力。该实验课程改革能有效的

中国博士后科学基金(2019M651653)江苏省博士后科研资助计划(2019K124)提高学生创新能力培养。南京邮电大学科研启动基金(NY218119)参考文献[1] 刘白雁,陈新元傅连东,蒋林机电系统动态仿真[M].机械工业

作者简介胡长晖(1983-)男工学博士博士后讲师硕士研究生导师

出版社.2016.[2] 裴惠琴,赖强.面向创新能力培养的《Matlab与控制系统仿真》图像处理与识别方向

因篇幅问题不能全部显示,请点此查看更多更全内容