系统非线性环节的仿真_第1页
系统非线性环节的仿真_第2页
系统非线性环节的仿真_第3页
系统非线性环节的仿真_第4页
系统非线性环节的仿真_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、请下载支持!科莉箍曹聿蔽菱2.5系统非线性环节的仿真螃蝴蛔量肃莅薇在实际系统中,往往存在各种非线性特性,可将此当作非线性环节处理,这种环节的输入和输出之间关系是一种非线性函数关系,因此非线性环节的仿真就是用仿真语言来描述这些关系。本节介绍几种典型的非线性环节的仿真算法。童滕蟆蒲范肇蟹2.5.1饱和环节薇会莆曹衿充饱和环节在控制系统中较普遍,例如饱和放大器、限幅装置、伺服阀饱和特性等。饱和环节特性如图所示。蝇冗瞧嵋妍盆嵋图2.5-1饱和特性腿肄膝神羁妨肇该特性对应的数学表达式为:uucycuc(2.5-1)cuc滕蜗蚕蒂募爸蟒脆着;蠢菱嵋蛰节式中,c为饱和环节特征参数,斜率为1,该环节特性可用M

2、ATLAB编程仿真,利用上面算法的编写的MATLAB函数SATURATION,调用格式为:蚁蒙蔻黄覆螃n其中,u为输入;c为饱和环节特征参数,y为饱和环节输出。蚀蒂帔曹艘袄妍Saturation.m;amp209.m荽芾英盆螃袅唐2.5.2死区环节崛唐袁袅莆芨赚在控制装置中,放大器的不灵敏区,伺服阀和比例阀阀芯正遮羞特性,传动元件静摩擦等造成的死区特性。典型死区非线性环节特性如图2.5-2所示。芈前蝴祎蓬蚂芍图2.5-2死区特性亵蒲勘蔗膂膈芳可用下面数学关系来描述:0ucyucuc(2.5-2)ucuc期袈膈蜜黄菜筮菽范神瞩黑方英式中,c为死区特征参数,斜率为1。膀筮罐藏肇薄薄该环节可根据上述

3、算法编写MATLAB函数deadzone供调用,格式如下:袁袂踊范犀蒂踌其中,u为环节输入;c为死区环节特征参数,y为死区环节输出。箍曹聿蔽菱肆聿Deadzone.m;amp210.mo蛔量肃莅薇科前2.5.3齿隙非线性环节蟆蒲司肇螃螂i齿轮传动副和丝杆螺母传动副中存在传动间隙都属这一类非线性因素,它对系统精度带来影响。齿隙非线性环节特性如图2.5-3所示。量莆曹衿充童滕图2.5-3齿隙特性瞧ms嵋薇何当输入u增加时,输出沿abd线段变化;当输入u减小时,输出沿dea线段变化。在线段bd上,输入增加时,当前输出值y(k)总是大于前一时刻的输出值y(k-1)。而在ea上,输入减小时,当前输出y(

4、k)总是小于前一时刻的输出值y(k-1)。在ab段和de段,y(k)=y(k-1)o以上特性的数学描述如下:u(k)c当u(k)u(k1)0且y(k1)u(k)cy(k)u(k)c当u(k)u(k1)0且y(k1)u(k)c滕神羁妨肇蝇冗y(k1)其余(2.5-3)蚕蒂蒙酬腿肄式中,c为齿隙环节特征参数,斜率为1。舞鬟螟灌节滕蜗根据(2.5-3)算法编写的MATLAB函数backlash,调用格式如下:蔻黄覆螃其中,u0,u1分别为前一时刻和当前时刻输入值;y0,y1分别为前一时刻和当前时刻输出值;c为齿隙特征参数。Backlash.m,amp211.m.帔曹艘袄妍蚁蒙2.5.4继电非线性环节

5、英盆螃袅唐蚀蒂继电非线性环节特性如图2.5-4所示,(b)为具有死区继电环节,(a)为(b)特例,即c=0o对于图(b)所示特性,可用下面数学关系描述:袁袅莆芨赚荽芾图2.5-4继电环节特性0u(k)cy1u(k)c(2.5-4)1u(k)c蛔祎蓬蚂其蜘唐甘点膂疆芳芈前根据(2.5-4)算法编写的MATLAB函数relaydead,调用格式如下:膈蜜黄菜筮裂蒲其中,u为环节输入,c为环节输出,y为死区特征参数。神脸节黄蜗袈Relaydead.m,amp212.m.耀藏肇薄薄菽荒2.5.5具有滞环的继电环节踊冗康蒂薄膀筮具有滞环的继电非线性环节特性如图所示,可用下面数学关系描述:聿蔽菱肆聿袁袂图

6、2.5-5带滞环继电特性hu(k)u(k1)且u(k)cy(k)hu(k)u(k1)且u(k)c(2.5-5)肃莅薇陋箍曹y(k1)其他用肇螃螂i蛔量根据(2.5-5)算法编写的MATLAB函数relaydelay,调用格式如下:曹衿充童滕蟆蒲其中,u0,u1分别为前一时刻和当前时刻环节输入值;y0,y1分别为前一时刻和当前时刻输出值;c,h为环节特征参数。断慕嵋薇神蜜莆Relaydelay.m,amp213.m.羁妨肇蝇冗瞩嵋2.5.6库仑一粘性摩擦力环节募菅蟒腿肄膝神图2.5-6库仑-粘性摩擦特性嵋蜜节滕蜗蚕蒂机械摩擦具有非线性如图所示,它由库仑摩擦和粘性摩擦两部分组成。当物体运动速度不为

7、零时,出现的库仑摩擦力为和相对运动速度相反的、与速度大小无关的恒定力,而粘性摩擦力则速度大小成正比。上述特性可用数学关系来描述:cv(k)0且v(k1)0f(k)cv(k)0)且v(k1)0(2.5-6)sign(u)(Guc)其他艘袄妍蚁蒙蔻黄根据式(2.5-6)的算法,编写的MATLAB函数friction,调用格式为:螃袅曾蚀希嫌普其中,u,u1分别为当前时刻和下一时刻的输入值(速度);y为输出值(摩擦力);c为库仑摩擦力值;G为粘性摩擦系数。莆芨赚荽芾奠盆2.6采样控制系统仿真蓬蚂芍崛盾袁袅2.6.1采样控制系统的基本组成膂膈芳芈莉螂i祎采样控制系统是指系统一处或几处信号是以采样形式来

8、传递的,而被控对象是连续的。典型的采样控制,是一种连续一离散混合系统,系统如图2.6-1所示黑方童蜗袈膈童随着计算机技术的发展,计算机控制系统成为采样控制系统的主要形式。系统(a)和系统(b)的主要区别在于系统闭环的输入信号类型,前者是模拟信号,后者是数字信号。系统中的A/D转换器是采样开关,将连续模拟量转变为离散的数字量弁根据计算量的位数进行进行量化处理;D/A转换器是将离散的数字量转变为模拟量,同时它也是一个保持器,且一般具有零阶保持器特征。A/D和D/A转换器在模拟量和数字量之间存在确定的比例关系,相当于系统中的比例环节。肇薄薄菽冗神瞩2.6.2采样控制系统仿真特点康蒂薄膀筮肄藏采样控制

9、系统包含连续部分和离散部分。对于连续部分仿真方法和连续系统仿真一样,可采用数值积分法或离散相似法。若采用数值积分法则需要确定积分步长,若采用离散相似法请下载支持!则需要确定虚拟的采样周期。对于离散部分,A/D转换器和D/A转换器是实际存在的,采样周期和保持器类型也均是实际存在的。因此采样控制系统仿真中,仿真步距或虚拟采样周期和系统实际采样周期之间存在同步问题。菱肆聿袁袂踊范2.6.3仿真步长和采样周期薇科莉箍曹聿蔽对采样控制系统进行仿真时,连续部分仿真步长的选择必须根据被控对象的动态特性、系统采样周期大小、仿真精度的要求等综合考虑。一般按下面两种情况处理:(1) 辑螃蝴蛔量肃莅仿真步长h等于采

10、样周期T;(2) 充童滕蟆蒲范肇仿真步长h小于采样周期To嵋薇襁莆曹衿第一种方法适用于系统连续部分参数变化较缓慢或系统幅值穿越频率c较小的系统。对于大多娄机电类采样控制系统,系统连续部分参数变化较快,常采用第二种方法,以保证系统中连续部分足够的仿真精度。童箍藏蓬羁耀爆若仿真步长h小于采样周期T,为了全球仿真程序的实现,通常取采样周期T恰好是仿真步长h的整数倍速,即h工,N,其中N为正整数。采样系统仿真采用定步距,对于连续部分在每个计算点均作仿真运算,而对于离散部分(数字控制器)只有在采样时刻才执行仿真运算,在其他计算点不执行仿真运算。在仿真程序中,采样时刻点可借助仿真时间/采样周期为整数的关系

11、来确定。采样控制系统仿真程序流程如图2.6-2所示。袄n劳蒂肆芾神2.6.4采样控制系统仿真方法曹莉蠢袅崛蝇袄如前所述,米样控制系统分为连续部分和离散部分。对于连续部分仿真有不同的处理办法,采样控制系统仿真方法分为两种。范蒙蝴腿袂康赣一基于数值积分法袄初蚕蚀蔽袅量图2.6-2采样控制系统仿真程序流程图嵋祎覆建妨蔓膀对系统连续部分仿真采用数值积分法,图2.6-2是基于数值积分的采样控制系统仿真程序框图。这种方法需选择连续部分仿真步长、仿真数值积分方法等。一般采用定步距,且仿真步长一般小于离散部分采样周期。离散部分仿真是基于递推法,十分简单。勘蚂蒙蟆蜗量赚二、基于离散相似法奥肄蜗腿犀蔽薄系统的连续

12、部分先进行z变换,若连续部分模型G已知,则可借助MATLAB函数C2D将连续模型转换为离散模型G(z),将G(z)和原系统离散部分模型D(z)合并后可求得采样控制系统的离散模型W(z),这样就可以进行仿真运算。在连续部分离散化时,可优先选择虚拟的采样周期和系统实际采样周期相同。在仿真运算时可根据仿真速度和精度要求,采用不同的采样周期,但这时需用MATLAB函数D2D对模型W(z)进行变换。菜蔻研辑建帆袈以下实例介绍基于数值积分法的采样控制系统仿真程序的编写。蜗腿蝇蒲8M例2-9已知一个计算机控制的电液伺服位置控制系统框图如图2.6-3所示,度用MATLAB编写仿真程序。薄精肄蔻衿蒂蚁计用U控轲

13、器 断僮曜幅转换器一新而蕨而一马面匕丽-I厂 n 冗a a- ”, I .及血l-* 耳 12 了二事再升配打¥ =比,用液同服阀公/负载接l-f# =常+岫 y eX罐皮冏步猾图2.6-3例2-9示意图蜜踌薇肆筮膂荽系统主要参数如下:(1)腿莆薇膀蜜莅祎数字控制器,仅考虑比例控制,取Kp2;(2)芍肇肇艘藏芾蚕数字限幅:1024;(3) 誉赚蛔黄蜘螂节12位D/A转换器系数Kda5V/2048;(4) 聿袁瞩芳奠螃肃伺服放大器:电压放大器增益系数Ka1.2;电压/电流转换系数Kvi48mA/2.5V;电流限幅:40mA;(5) 刘肄蝇唐充黄聿伺服模型:膝噩蔽刷H薄衿或以状态空间表达

14、式描述,状态空间参数矩阵如下:藏蓬羁肄帔羁裂式中,伺服阀自然频率nv200rad/s;伺服阀阻尼比0.5;伺服阀流量系数Ksv可通过阀额定参数和实际工作点计算;伺服阀额定工作电流为40mA;劳蒂肆芾神童箍(6)液压缸动力模型蠢袅嘘蝇袄袄踊或以状态空间模型来描述,状态空间系数矩阵为:蛔腿袂犀赣曹莉其中,状态变量XXi,X2,X3y,y,y,nh为液压缸固有频率,h为液压缸阻尼比,A为液压缸面积。蚕蚀蔽袅量范募(7)数字式位移检测装置:感应同步器,精度一个脉冲覆建妨蔓膀袄袂(8)感应同步器接口电路:感应同步器脉冲信号转换为数字量,1/bit每个脉冲。蒙蟆蚁量赚嵋祎这是一个典型的采样控制系统,包含有

15、连续部分:电液伺服阀、伺服放大器、液压缸装置;离散部分:计算机控制器;接口部分:D/A转换器、感应同步器接口板等。系统采样周期为10ms,采用四阶R-K法对连续部分进行仿真,仿真步长为1ms,仿真程序包括:蜗腿犀蔽薄舒蚂主程序hm45.m,电液伺服阀模型的m函数valve(),液压缸模型的m函数hysys(),数据文件svdada.mo主程序运行时首先调入数据文件,两个m函数文件,给一些参数初始化,然后进行仿真循环计算,最后输出仿真结果及存储仿真数据。研辑建蜗袈蝇主程序中用到MATLAB函数FEVAL,其功能是执行字符串所描述的函数,调用格式为:蝇蒲鬟芨箴菜蔻其中,F为一个函数名的字符串;X1

16、,Xn为该函数的输入参数;Y1,Yn为该函数的输出参数。肄蔻衿蒂蚁蜗腿程序运行结果如图2.6-4所示。改变比例控制器增益Kp可看出Kp对系统动态性能的影响。薇肆筮膂荽薄精图2.6-4系统的阶次响应薇膀董莅祎蜜薄2.7Simulink动态仿真肇艘藏芾蚕腿莆Simulink是MATLAB软件包之一,用于可视化的动态系统仿真,它适用于连续系统和离散系统,也适用于线性系统和非线性系统。它采用系统模块直观地描述系统典型环节,可十分请下载支持!方便地建立系统模型而不需要花较多时间编程。"螂节芍肇利用Simulink进行系统仿真的步骤是:( 1) 眠芳莫螃肃誉赚启动Simulink,打开Simul

17、ink模块库和模型窗口;( 2) 蝇唐充黄聿聿袁在Simulink模型窗口下,创建系统框图模型并调整模块参数;( 3) 蔽螭H薄衿前肄设置仿真参数,进行仿真;( 4) 羁肄帔羁亵滕罪输出仿真结果。肆芾裙!童箍藏蓬2.7.1启动Simulink嘘蝇袄袄踊劳蒂启动Simulink就是进入Simulink的工作环境,并且打开Simulink模块库和一个Simulink模型窗口,为建立系统的Simulink模型作准备。袂康赣曹莉蠢袅2.7.2系统Simulink模型的建立蔽袅量范蒙螂i腿系统Simulink模型是一种以系统环节方块图为基础的方块图模型,十分直观。系统典型环节或常用环节的方块图在Simu

18、link模块库中都可以找到,因此建立系统的Simulink模型十分方便和快捷。妨蔓膀袄袂蚕蚀建立新的系统Simulink模型的主要步骤如下:(1)蜗量赚蜥飕建打开Simulink模型窗口(untitled);( 2) 犀蔽薄勘蚂蒙蟆选取模块或模块组;(3)建蜗袈奠博崛模块拷贝及删除;( 4) 夔芨箴菜蔻研辑模块调整;( 5) 衿蒂蚁蜗腿蝇薄模块参数设置;( 6) 筮膂荽薄辐肄蔻模块的连接;( 7) 董莅祎蜜薄薇肆模块文件的取名和保存。藏芾蚕腿莆薇膀2.7.3系统仿真运行嫄螂节芍肇肇艘在建立系统的Simulink框图模型后,就可以进行系统动态仿真。系统仿真运行有两种方式进行,一种是利用Simul

19、ink模型窗口的菜单Simulation下的选项,二是在MATLABCOMMAND窗口下输入命令。一、奠螃肃誉赚蛔黄Simulink模型窗口下仿真充黄聿聿袁瞩芳Simulink模型窗口下仿真的具体步骤如下:H薄衿莉肄蝇唐1)开系统的Simulink模型窗口,窗口内有已建立的系统框图模型。帔羁亵滕罪蔽蝴(2)在模型窗口选取菜单SimulationParameters,设置仿真参数。"s藏蓬羁肄(3)在对话框模型窗口内选取SimulationStart,仿真开始,在设置的仿真终止时间仿真结束。袄袄n劳蒂肆芾由上可知,在系统Simulink模型窗口下仿真,主要工作是利用Simulation

20、Parameters对话框设置仿真参数,仿真参数设置包括:solver(数值积分法),WorkspaceI/O(工作空间输入/输出),Diagnostics(诊断)和Real-TimeWorkspace(实时工作空间)。赣曹莉蠢袅崛蝇(一)Solver页有关参数设置量范蒙螂i腿袂犀设置内容有:( 1) 膀袄袂蚕蚀蔽袅Simulationtime(仿真时间)( 2) 嫌嵋祎覆建妨蔓Solveroptions(仿真解法选择项)薄舒蚂蒙J奚蜗量Typt:Variable-step(变步距)和Fixed-step(定步距)两种。( 3) 袈奥肄蜗腿犀蔽变步距解法选择项仿真算法(4)箴菜蔻研辑建蜗定步距

21、解法选择项(5) 蚁蚁腿蝇蒲菱芨输出选择项荽薄精肄蔻衿蒂(.WorkspaceI/O页祎蜜薄薇肆筮膂设置内容有:蚕腿莆薇膀董莅(1)Loadfromworkspace(从工作空间调入数据)节芍肇肇艘藏芾例2-10若系统Simulink框图模型hexam1,如图2.7-1所示,采用从Workspace调入数据的步骤如下:肃誉赚蛔黄崛螂图2.7-1例2-10系统框图模型1 .聿聿袁眶芳奥螃激活WorkspaceI/O页;2 .衿莉肄蝇唐充黄在input:输入t,ua;3 .契滕噩蔽蝴索薄在MATLABCOMMAND窗口下工作空间内装入矩阵格式数据t和ua。对于简单输入数据可直接在MATLAB工作空间内直接手工输入;对于较复杂输入数据可用M文件。本例amp216.m。箍藏蓬羁肄帔羁模型hexam1仿真运行结果。司蒂肆仲童(2)Savetoworkspace(保存数据到工作空间)刘蠢袅崛蝇袄袄仿真结果的数据可以保存到MATLAB工作空间,这些数据包括:Time(时间)、Sta

温馨提示

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

最新文档

评论

0/150

提交评论