非奇异终端滑模控制仿真实验设计
- 格式:docx
- 大小:40.42 KB
- 文档页数:9
非奇异终端滑模控制仿真实验设计赵海滨;陆志国;刘冲;于清文;颜世玉【摘要】以二阶非线性系统为研究对象,采用非奇异终端滑模控制器进行控制.在非奇异终端滑模控制器的设计中,提出了一种变速指数趋近律.采用饱和函数代替符号函数,对抖振现象进行抑制.采用Matlab/Simulink软件建立了仿真实验系统,对提出的方法进行了仿真验证.采用变速指数趋近律时,状态变量的收敛速度更快.该仿真实验系统将理论学习和编程实现相结合,提高了学生学习的兴趣和积极性,激发学生的创新意识.【期刊名称】《实验室研究与探索》【年(卷),期】2019(038)004【总页数】5页(P67-70,84)【关键词】非奇异终端滑模控制;指数趋近律;非线性系统;Matlab仿真【作者】赵海滨;陆志国;刘冲;于清文;颜世玉【作者单位】东北大学机械工程与自动化学院,沈阳110819;东北大学机械工程与自动化学院,沈阳110819;东北大学机械工程与自动化学院,沈阳110819;东北大学机械工程与自动化学院,沈阳110819;东北大学机械工程与自动化学院,沈阳110819【正文语种】中文【中图分类】TP240 引言在普通的滑模变结构控制中[1-2],选择的线性滑模面使得系统轨迹在到达滑动模态后的运动是渐进稳定的,状态跟踪误差不能在有限时间内收敛到零。
为了获得更好的控制性能,近年来一些学者提出了终端滑模(Terminal Sliding Mode, TSM)控制方法[3-4],在滑动超平面中采用非线性函数,使得在滑模面上跟踪误差能够在有限时间内收敛到零。
终端滑模控制对模型误差和外部干扰信号具有较好的鲁棒性,能够在有限时间内收敛[5-6],且具有较高的稳态精度,广泛用于高速、高精度控制系统。
由于在系统状态接近平衡状态时,终端滑模控制存在奇异问题,有些学者提出了非奇异终端滑模(Nonsingular Terminal Sliding Mode, NTSM)控制方法,并用于永磁同步电动机[7-8]和机器人[9-11]等的控制。
本文以二阶非线性系统为研究对象,采用非奇异终端滑模控制器进行控制。
在非奇异终端滑模控制器中,对普通指数趋近律进行改进,提出一种变速指数趋近律。
为了抑制抖振现象,在控制器中采用饱和函数代替符号函数。
采用Matlab/Simulink软件建立了非奇异终端滑模控制仿真实验系统,对提出的方法进行了验证。
该仿真实验系统将理论和编程实现相结合,不仅有助于学生对基本理论的理解,而且让学生了解滑模控制的实际应用。
通过仿真过程,提高学生的编程能力和创新意识,并激发学生的学习兴趣。
1 二阶非线性不确定系统对于二阶不确定非线性系统(1)式中:x=[x1,x2]T为系统的状态变量;f(x)和g(x)为已知连续非线性函数,g(x)≠0;d(t)为外部干扰,且|d(t)|≤μ,μ>0;u为控制输入。
传统终端滑模的滑模面为:(2)式中:β>0;p和q为正奇数,p>q。
采用以下指数趋近律:(3)式中:k>0;ε>0;该趋近律包含两部分,为指数趋近项,为等速趋近项。
传统终端滑模控制器设计为:(4)式中,由于q/p-1<0,在x1=0,x2≠0时会有奇异问题。
2 非奇异终端滑模控制为了克服传统终端滑模控制存在的奇异问题,很多学者提出了非奇异终端滑模方法,能够很好地解决奇异问题。
非奇异终端滑模控制方法的滑模面为:(5)式中:β>0;p和q为正奇数,p>q且1<p/q<2。
采用式(3)的指数趋近律时,非奇异终端滑模控制器设计为:(6)在式(3)的指数趋近律中,其中的参数k和ε为固定值,不具有自动调整功能。
本文提出如下的变速指数趋近律:(7)式中:为系统状态变量的一阶范数。
当系统的状态变量x趋近于0时,变速指数趋近律变为普通的指数趋近律。
采用变速指数趋近律时,非奇异终端滑模控制器设计为:(8)为了削弱抖振,在控制器中采用饱和函数sat(s)代替符号函数sgn(s),饱和函数的表达式为:(10)式中:δ>0称为边界层。
在边界层之外采用切换控制,在边界层内采用线性化反馈控制。
用饱和函数sat(s)代替sgn(s)后,采用普通指数趋近律时,非奇异终端滑模控制器为:(11)用饱和函数sat(s)代替sgn(s)后,采用变速指数趋近律时,非奇异终端滑模控制器为:(12)3 Matlab仿真实验Matlab/Simulink软件具有强大的数学运算能力,并且对问题的描述和求解符合人们的思维习惯和数学表达习惯,已经广泛应用于动态系统仿真[12-14]。
对于使用普通Simulink模块不易搭建的复杂控制系统,可以利用Matlab语言编写M-Function或S-Function文件,通过User-Defined Functions模块嵌入到Simulink仿真环境中[15]。
M-Function文件采用Matlab语言编写,程序代码比较短,且容易实现。
因此本文采用M-Function实现非奇异终端滑模控制系统。
本文采用的二阶非线性系统[16]为:(13)式中:f(x)=-16x2;g(x)=125;x=[x1,x2]T,外部干扰信号为d(t)=0.1sin(20t)。
在仿真过程中,采用变步长的ode45算法,最大步长为1 ms,仿真时间为12 s。
利用Matlab/Simulink软件建立的仿真实验系统,如图1所示。
图中,非线性系统1和2完全相同,都是根据式(13)建立的二阶非线性系统模型。
在图1中,NTSM1模块为采用普通的指数趋近律的非奇异终端滑模控制器,NTSM2模块为采用变速指数趋近律的非奇异终端滑模控制器。
积分模块Integrator的初始值通过外部输入确定。
通过手动开关,对状态变量的初始值进行选择,x(0)=[0.1,0.1]T 或x(0)=[30,30]T。
仿真结果可以通过Scope模块直接显示,同时利用To Workspace模块保存到工作空间中。
图1 非奇异终端滑模控制仿真实验系统在所有的控制器中,参数选择为:μ=0.1,β=1,p=5,q=3,k=1,ε=0.1。
利用饱和函数代替符号函数时,边界层通常取非常小的数,本文取δ=0.005。
采用变指数趋近律时,非奇异终端滑模控制器中的参数c根据状态变量的初始值进行选取。
当状态变量的初始值比较小时,选择比较大的参数c;反之,选择比较小的参数c。
3.1 实验1选取状态变量的位置距离平衡点比较近。
状态变量的初始值为x(0)=[0.1,0.1]T。
在图1中,NTSM1模块为采用普通的指数趋近律,采用式(11)对二阶非线性系统进行控制。
在图1中,NTSM1模块内的程序如下:function u1 = fcn(x2, x1)fx=-16*x2; gx=125;beta=1; p=5; q=3; mu=0.1; epsilon=0.1; k=1;s=x1+1/beta*(abs(x2))^(p/q)*sign(x2);t=beta*q/p*abs(x2)^(2-p/q)*sign(x2);delta=0.005; d=abs(s/delta);if d<=1sat=s/delta;elsesat=sign(s/delta);endu1=-(fx+t+(mu+epsilon)*sat+k*s)/gx;在图1中,NTSM2模块为采用变速指数趋近律,采用式(12)对二阶非线性系统进行控制。
状态变量的初始值比较小,因此参数c选择比较大的值,本文取c=60。
在图1中,NTSM2模块内的程序如下:function u2 = fcn(x2, x1)fx=-16*x2; gx=125;beta=1; p=5; q=3; mu=0.1; epsilon=0.1; k=1;s=x1+1/beta*(abs(x2))^(p/q)*sign(x2);t=beta*q/p*abs(x2)^(2-p/q)*sign(x2);delta=0.005; d=abs(s/delta);if d<=1sat=s/delta;elsesat=sign(s/delta);endc=60; m=c*(abs(x1)+abs(x2));n=fx+t+mu*sat;u2=-(n+epsilon*sat/(1+m)+(k+m)*s)/gx;对于二阶非线性系统,当状态变量的初始值为x(0)=时,分别采用普通指数趋近律和变速指数趋近律的非奇异终端滑模控制器时,状态变量x1、x2的响应如图2、3所示;控制输入的响应如图4所示。
采用普通指数趋近律和变速指数趋近律的非奇异终端滑模控制器都能实现状态变量的有限时间收敛。
图2 状态初始值较小时x1的响应图3 状态初始值较小时x2的响应采用变速指数趋近律的非奇异终端滑模控制器的收敛速度更快。
图4 状态初始值较小时的控制输入3.2 实验2选取状态变量的位置距离平衡点比较远,状态变量的初始值为x(0)=。
在采用变速指数趋近律时,本文取c=0.02。
分别采用普通指数趋近律和变速指数趋近律的非奇异终端滑模控制器时,状态变量x1、x2的响应如图5、6所示,控制输入的响应如图7所示。
采用普通指数趋近律和变速指数趋近律的非奇异终端滑模控制器都能实现状态变量的有限时间收敛。
两者的收敛速度相差不多,采用变速指数趋近律的非奇异终端滑模控制器的收敛速度更快一些。
非奇异终端滑模控制器能够实现状态变量的有限时间收敛,并能够有效的避免奇异现象。
采用饱和函数代替符号函数,使得控制输入没有出现抖振现象,并且比较平滑。
图5 状态初始值较大时x1的响应图6 状态初始值较大时x2的响应图7 状态初始值较大时的控制输入4 结语本实验以二阶非线性系统为研究对象,分别采用普通指数趋近律和变速指数趋近律的非奇异终端滑模控制器进行控制。
非奇异终端滑模控制器能够有效的避免奇异现象,能够实现有限时间内状态变量的收敛。
对普通的指数趋近律进行改进,采用变速指数趋近律时具有更快的收敛速度。
采用饱和函数代替符号函数,能够有效的抑制抖振现象。
采用Matlab/Simulink软件进行了控制系统仿真实验,并对实验结果进行了分析和讨论。
通过该仿真实验有助于学生对非奇异终端滑模控制理论和应用的理解,让学生了解滑模控制的编程实现。
以该仿真实验系统为平台,学生还可以自己编写程序进行仿真实验,对控制方法进行验证,从而激发学生的学习兴趣,提高编程能力和创新意识。
参考文献学校要求教师在他的本职工作上成为一种艺术家。
——爱因斯坦【相关文献】[1] 胡剑波,庄开宇. 高级变结构控制理论及应用[M]. 西安:西北工业大学出版社,2007.[2] 刘金琨. 滑模变结构控制Matlab仿真基本理论与设计方法[M]. 3版.北京:清华大学出版社,2015.[3] 张巍巍,王京. 基于指数趋近律的非奇异Terminal滑模控制[J]. 控制与决策,2012,27(6):909-913.[4] 刘金琨,孙富春. 滑模变结构控制理论及其算法研究与进展[J]. 控制理论与应用,2007,24(3):407-418.[5] 李冀辰,高凤岐,王广龙,等. 一类非线性系统的新型趋近律非奇异终端滑模控制[J]. 信息与控制,2014,43(1):96-100.[6] 华玉龙,孙伟,迟宝山,等. 非奇异快速终端滑模控制[J]. 系统工程与电子技术,2017,39(5):1119-1125.[7] 孙继卫,刘秀敏,郭亚男. 基于扰动观测器的永磁同步电机复合滑模控制[J]. 电气传动,2018,48(2):14-18.[8] 朱林峰,章伟. 永磁同步电机自适应非奇异终端滑模控制[J]. 控制工程,2018,25(1):112-116.[9] 唐庆顺,金璐,李国栋,等. 基于自适应终端滑模控制器的机械手跟踪控制[J]. 山东大学学报(工学版),2016,46(5):45-53.[10] 胡立坤,马文光,赵鹏飞,等. 六自由度机械臂的非奇异快速终端滑模控制[J]. 吉林大学学报(工学版),2014,44(3):735-741.[11] 吴爱国,刘海亭,董娜. 机械臂神经网络非奇异快速终端滑模控制[J].农业机械学报,2018,49(2):395-404.[12] 薛定宇. 控制系统计算机辅助设计-Matlab语言与应用[M]. 3版.北京:清华大学出版社,2012.[13] 石良臣. Matlab/Simulink系统仿真超级学习手册[M].北京:人民邮电出版社,2014.[14] 赵海滨. Matlab应用大全[M]. 北京:清华大学出版社,2012.[15] 高道祥,薛定宇. 基于Matlab/Simulink机器人鲁棒自适应控制系统仿真研究[J]. 系统仿真学报,2006,18(7):2022-2025.[16] 许波,朱熀秋. 自适应非奇异终端滑模控制及其在BPMSM中的应用[J]. 控制与决策,2014,29(5):833-837.。