您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 动态摩擦的matlable仿真
动态摩擦模型的仿真王洪瑞1,王霞1,陈丽2,王丽玲1(1河北大学电子信息工程学院,河北,保定071002;2燕山大学电气工程学院,河北,秦皇岛066004)摘要:为了深入分析摩擦力动态特性在高精度的伺服系统控制中造成的影响,检验摩擦补偿方法对动态摩擦的补偿效果,需要建立一个有效的动态仿真摩擦模型。如今摩擦的仿真研究都局限于非线性静态模型的实现,而对于微分方程描述的动态模型,还没有有效的实现方法。尤其是系统启动时,静摩擦给系统造成的小误差观察不到。基于动态刚毛摩擦模型,通过定义“粘滞”和“滑动”两个状态,成功的模拟出摩擦在启动和制动时对系统的不同影响。在跟踪正弦轨迹的误差仿真结果中可以观察到:速度转向时摩擦造成了启动小误差,与实际情况一致。这种处理方法适用于微分方程描述的动态摩擦模型,同样可以用于代数方程描述的静态模型仿真。关键词:动态摩擦模型;s-function;伺服系统;轨迹跟踪中图分类号:TP273文献标识码:AASimulatoinMethodforDynamicFrictionModelWANGHong-rui1,WANGXia1,CHENLi2,WANGLi-ling1(1HebeiUniversity,Electricandinformationengineeringdepartment,Hebei,Baoding071002;2YanshanUniversity,Electricengineeringdepartment,Hebei,Qinhuangdao066004)Abstract:Inordertoanalyzetheresultcausedbythefrictionaldynamiccharacterinservosystem,andtestthevalidityofvariousfrictioncompensationmethods,asimulationschemefordynamicfrictionmodelisrequired.Althoughsimulationmethodsfornonlinearstaticfrictionmodelhavebeenbroughtforward,thereisn’tanyeffectivemethodtosimulatedynamicmodeluptothepresent.Itmeansthattheglitchcausedbystaticfrictionatvelocityreversalscan’tbeobservedinsimulation.Differentaffectionsoffrictioninstaringandstoppingaredistinguishedbydividingthemovementofthesystemintotwoproceedings-stickandslip.Inthesimulation,aservosystemisconductedtofollowasinusoidalsignal,wherefrictionforceisexpressedbyLuGrefrictionmodel.Theglitchcausedbyfrictionatreversalsisobservedinthesimulationresult,whichisconsistentwithreality.Thismethodcanalsobeappliedtootherdynamicmodelsandstaticmodels.Keywords:dynamicfrictionmodel;s-function;servosystem;tracetracking1引言在伺服系统的定位和速度控制中,摩擦力是影响控制效果的主要因素,主要是因为零速附近摩擦力的强烈非线性特性和静摩擦的存在。为了分析摩擦力对系统的影响并进行补偿,许多摩擦模型早已经被相继提出[1][2]。但对摩擦模型的仿真困难重重,尤其是零速附近非线性摩擦对系统的影响。基于静态摩擦模型的补偿已经作了很多的研究,文献[3]就静态摩河北省自然科学基金项目名称:X-Y数控平台运动及力/位置控制研究项目编号:F200400260擦模型的建模与仿真做了简要地概述,并对三种摩擦模型的仿真结果进行了比较,指出状态转换模型(Karnopp模型)能较好的仿真相对速度为零时的摩擦特性。文献[4]采用一个含饱和模块的前馈通道模拟了系统启动时的静摩擦,用simulink成功的实现了粘滞阶段非线性静态摩擦的仿真,为高精度控制中的摩擦补偿研究提供了有力工具。静态摩擦模型描述的只是摩擦力跟稳恒速度的关系,摩擦力与变化速度的关系并不符合静态模型,而是具有滞后于速度变化的动态特性。为了满足更高的控制要求,进行摩擦补偿时必然要考虑摩擦的动态特性,须采用微分方程描述的动态摩擦模型。但是对于动态模型,仍然缺乏有效的仿真方法。直接按照动态模型的表达式进行仿真是看不到启动时摩擦的影响的,在这种模型决定的速度-摩擦力曲线中,零速附近的摩擦力变化不能再看成一个跳变,而是一个连续量,这时文献[4]中静摩擦的处理方法就不能适用了。本文采用simulink中的s-function模块结合自编m文件来描述摩擦模型和系统模型,借鉴Karnopp模型[5]的思想,对动态刚毛模型做了一些改进。通过一个标志变量区分系统的粘滞、滑动状态,体现了非线性静摩擦在系统转向阶段零速区的影响。跟踪正弦曲线的仿真结果表明,动态模型仿真中这种分段的处理方法完全可以得到文献[4]中饱和前溃通道的效果,体现静摩擦的影响。2摩擦模型与系统模型本文采用的动态摩擦仿真模型是文献[2]中提到的刚毛模型,摩擦力为刚毛的平均弹性形变力。这个模型能够表现出摩擦滞后于速度的动态特性,而且它的稳态就是包含stribeck速度的指数静态摩擦模型。描述如下vdtdzzF210(1)zvgvvdtdz)((2)2/0)()(svvcsceFFFvg(3)其中v是接触面的相对运动速度,0是刚毛的刚性系数,1是模型阻尼系数,,2是粘性系数,z代表刚毛的弹性形变量,cF、sF及sv分别代表库仑摩擦、最大静摩擦以及stribeck速度。对于考虑摩擦的伺服系统,动态模型一般表示为FuJ(4)我们采用的控制律)(ekekJupvd(5)它在没有摩擦的情况下(0F)能够保证系统的渐进稳定,对正弦曲线的跟踪效果比较理想。3问题分析如果没有摩擦,控制律(5)是渐进稳定的。而实际上,摩擦是客观存在的,伺服系统跟踪正弦信号在速度转向的时候,由于控制力矩不足以克服零速附近的非线性摩擦,反向启动时会导致如图1(a)所示的跟踪误差。然而采用式(1)~(5)所描述的系统进行正弦信号的轨迹跟踪控制仿真时,看不到摩擦在速度转向过程中的影响,跟踪曲线是平滑的,如图1(b)。这是因为当系统由运动转为静止的过程中,摩擦力充当一部分制动力,会使运动更快的停止,式(4)是合乎实际情况的;而当系统由静止转为运动时,起始阶段控制量u一般小于模型计算的摩擦力F,系统应该处于一种“粘滞”状态,这时候如果按照式(4)进行仿真,系统应该是往反向运动的,这显然和实际情况不符合。这时应该采用修正的系统模型表示:在Fu时,认为0J。0.30.20.100.51cms0123-0.300.3cms(a)(b)图1(a)实际中正弦信号跟踪轨迹(b)仿真结果为了正确模拟摩擦力在不同阶段的影响,我们对模型做一定的修改,分为粘滞和滑动两个阶段。两个阶段的切换由速度决定,当速度为零时处于粘滞状态,用式(6)表示;速度不等于零时处于滑动状态,采用式(7)表示。粘滞阶段:FuFuFuJ0(6)滑动阶段:FuJ(7)这样处理与文献[4]中不同之处在于不存在确定的最大静摩擦值,当u超过F时系统开始运动,反映了变化的最大静摩擦。4程序实现Simulink的仿真结构如图2所示,采用matlab的s-function模块表示带有摩擦的伺服系统,即采用s-function对应的m文件表示式(1)-(3)、(6)、(7),控制律(5)用Fcn模块实现。仿真参数的选取如表1所示。du/dtdu/dtdu/dt伺服系统控制律--++vdd图2Simulink结构图由于是数值仿真,在判断系统处于粘滞还是滑动状态时,需要定义一个零速区间:认为时速度为零,系统处于粘滞状态,否则处于滑动状态。两种状态的切换用变量flag控制。flag=0表示系统处于粘滞状态,这时,如果输入力矩小于摩擦力则认为系统不动0J;输入力矩大于摩擦力则系统开始加速FuJ,并且转入滑动状态(flag变为1)。flag=1表示系统处于滑动状态,速度在零速区间之外时,认为摩擦力一直充当运动的阻力FuJ;而当速度减小到零速区间内以后,认为0J,同时系统转入粘滞状态(flag=0)。即0flag时FuflagFuFu10(7)1flag时vflagvFu00(8)这里的v就是接触面的相对速度,即。s-function自带m文件的状态x定义为Tzv。利用其求导子程序实现伺服系统和动态摩擦模型的状态刷新,不仅省去用仿真图中的许多积分模块,使仿真程序简洁,而且语句表达方式更容易表示逻辑判断,编写灵活。求导子程序流程如图3。functionsys=mdlDerivatives(t,x,u)J=0.01;%系统惯量v=x(2);alfa0=100000;%摩擦模型参数alfa1=316;alfa2=0.4;vs=0.001;%stribeck速度fc=1;%库仑摩擦fs=1.5;%静摩擦gv=(fc+(fs-fc)*exp(-(v/vs)^2))/a0;%模型稳态表达式F=alfa0*x(3)+alfa1*(v-abs(v)/gv*x(3))+alfa2*v;%求取摩擦力switchflag,case0,%粘滞阶段ifabs(tor)abs(F)tor=0;elsetor=1/I*(u-F);end%=0.00005ifabs(x(2))0.00005flag=1;%转入滑动endcase1,%滑动阶段ifabs(x(2))0.00005tor=1/I*(u-F);elsetor=0;flag=0;%转入粘滞endendsys(1)=x(2);%的导数sys(2)=tor;%v的导数sys(3)=v-abs(v)/gv*x(3);%z的导数跟踪正弦的仿真结果如图3所示,可以明显地观察到零速附近非线性摩擦对系统转向的影响,跟实际的情形是基本符合的。0.30-0.30123cms图3刚毛模型摩擦仿真结果实践证明,这种粘滞-滑动切换的模式同样可以适用于静态摩擦模型和其他的动态模型,只需要按不同的模型修改与s函数相关的m文件即可。表1仿真参数Jvkpk012sFcFsv0.0110025001000003160.41.51.00.0015结论本文将系统的运动分成粘滞和滑动两种状态,并利用matlab中s函数模块的灵活表达方式,实现了动态摩擦模型的仿真,为更精确的控制问题提供了有效的研究方法。程序结构简单,模型表达简洁,容易嵌入到其他系统中进行仿真研究。参考文献[1]BrianArmstrong-Helouvry,PierreDupontandCarlosCanudasDeWit.ASurveyofModels,AnalysisToolsandCompensationMethodsfortheControlofMachineswithFriction.Automatic[J],1994,30(7):1083-1138[2]C.CanudasdeWit,H.Olsson,K.J.Astrom,P.Lischinsky.ANewModelforControlofSystemswithFricti
本文标题:动态摩擦的matlable仿真
链接地址:https://www.777doc.com/doc-2614824 .html