加入边界层的滑模控制
滑模理论及其控制实例
.
基本概念
变结构控制是一类特殊的非线性控制,其非线性表现为控制作用的不 连续性。与其他控制策略的不同之处:系统的“结构”并不固定,而是在 动态过程中,根据系统当前的状态有目的地不断变化。
结构的变化若能启动“滑动模态”运动,称这样的控制为滑模控制。注 意:不是所有的变结构控制都能滑模控制,而滑模控制是变结构控制中最 主流的设计方法。
x2 s0
•
O(0,0)
s0 x1
s0
•A
x•0
图1 滑模控制示意图
从定义中可以看出,设计变构控制的基本步骤,它包括两个相对部分,即寻求
切换函数s(x)和寻求控制量 u(x)和u(x) 。
.
滑模控制的特性:
1)设计反馈u(x),限定是变结构的,它能将系统的运动引导到一个超平面 s(x)=0上。且系统在该滑模面上的运动是渐进稳定的。
.
几种常见趋近律
(1)等速趋近律 (2)指数趋近律 (3)幂次趋近律
s&sgn(s) 0
x2
s sgsn) (ks 0,k 0s 0
skssgns)( 01
•
O(0,0)
s0 x1
(4)一般趋近律 s & sgn(s)f(s) 0
s0
•A
x•0
注:选取原则是保证系统状态点远离切换面时具有较快趋近速度,由于过 大趋近速度会导致剧烈抖振,是以适当选择f(s),使系统以适当速度趋近 切换面。
开关磁阻电机磁链的边界层混合滑模控制
加入 边界层 内积 分补偿 , 实现 线 性控 制和 非 线性 滑模控 制相 结 合 , 使 磁链 能够平 滑收 敛 于滑移 面的
平衡 状态, 在获得鲁棒性 的同时具有平滑跟踪特性 。接 着, 进一步论证 了该混合控制器实现的稳定 可达性 。仿 真 测试 分别 比较 了该 控制 器 与 P I D 、 传 统滑模 控 制 的磁 链 跟 踪性 能 、 扰 动抑 制 和 转矩控
第 1 7卷
第 4期
电 机 与 控 制 学 报
ELECTRI C M ACHI NES AND CONTR0L
Vo L 1 7 No . 4
2 0 1 3年 4月
Ap r .2 01 3
开 关 磁 阻 电机 磁 链 的 边 界 层 混 合 滑 模 控 制
p r o p o s e d .I t wa s a c o mb i n a t i o n o f l i n e r a a n d n o n l i n e a r mo d e t o c a u s e l f u x — l i n k a g e t o s mo o t h l y c o n v e r g e t o
尚万峰 , 马宏伟 , 赵升 吨
( 1 . 西 安科 技大学 机械工程学 院 , 陕西 西安 7 1 0 0 5 4 ; 2 . 西安交通大学 机械工程学院 , 陕西 西安 7 1 0 0 4 9 )
滑模控制原理
滑模控制原理
滑模控制是一种常用的非线性控制方法,它具有很好的鲁棒性
和抗干扰能力,在控制系统中得到了广泛的应用。滑模控制的基本
原理是通过引入一个滑动面,使得系统状态在该滑动面上快速滑动,从而实现对系统的控制。在本文中,我们将详细介绍滑模控制的原
理及其应用。
首先,滑模控制的基本原理是通过设计一个滑动面,使得系统
状态在该滑动面上快速滑动。这样一来,系统状态就会迅速趋向于
滑动面,从而实现对系统的控制。滑模控制的核心思想是引入一个
滑动面,通过设计合适的控制律,使得系统状态能够在该滑动面上
快速运动,并最终达到稳定状态。
其次,滑模控制具有很好的鲁棒性和抗干扰能力。由于滑模控
制引入了滑动面,系统状态在该滑动面上快速滑动,因此对于外部
扰动具有很强的抑制能力。同时,滑模控制对于系统参数变化也具
有很好的鲁棒性,能够保持系统稳定性和性能。
在实际应用中,滑模控制被广泛应用于各种控制系统中。例如,在电机控制、飞行器控制、机器人控制等领域,滑模控制都发挥着
重要的作用。由于其鲁棒性和抗干扰能力,滑模控制在一些复杂系统中得到了广泛的应用,并取得了良好的控制效果。
总的来说,滑模控制是一种非常有效的控制方法,它具有很好的鲁棒性和抗干扰能力,在实际应用中得到了广泛的应用。通过引入滑动面,滑模控制能够实现对系统的快速稳定控制,对于一些复杂系统具有很好的适用性。希望本文能够对滑模控制原理有一个清晰的了解,并在实际应用中发挥重要的作用。
滑模控制最强解析
滑模控制最强解析
滑模控制是一种常用的控制方法,它具有快速响应、鲁棒性强等优点,被广泛应用于工业控制、航空航天、机器人等领域。本文将从原理、应用、优缺点等方面进行解析。
一、原理
滑模控制是一种基于滑模面的控制方法,其核心思想是通过引入一个
滑模面,使得系统状态在滑模面上运动,从而实现对系统的控制。具
体来说,滑模面是一个超平面,其方程为s(x)=0,其中s(x)是系统状态
的某个函数。当系统状态在滑模面上运动时,控制器对系统进行控制,使得系统状态沿着滑模面快速收敛到目标状态。
二、应用
滑模控制在工业控制、航空航天、机器人等领域都有广泛的应用。例如,在工业控制中,滑模控制可以用于电机控制、温度控制、压力控
制等方面。在航空航天领域,滑模控制可以用于飞行器的姿态控制、
飞行高度控制等方面。在机器人领域,滑模控制可以用于机器人的运
动控制、路径规划等方面。
三、优缺点
滑模控制具有快速响应、鲁棒性强等优点。由于滑模控制是一种非线
性控制方法,因此可以应对系统的非线性特性,具有较强的鲁棒性。
此外,滑模控制的响应速度较快,可以实现对系统的快速控制。
然而,滑模控制也存在一些缺点。首先,滑模控制需要引入一个滑模面,这会增加系统的复杂度。其次,滑模控制对系统的模型要求较高,需要准确地建立系统的数学模型。最后,滑模控制在实际应用中可能
会出现滑模面跳动等问题,需要进行相应的处理。
综上所述,滑模控制是一种常用的控制方法,具有快速响应、鲁棒性
强等优点,被广泛应用于工业控制、航空航天、机器人等领域。然而,滑模控制也存在一些缺点,需要在实际应用中进行相应的处理。
滑模控制原理
滑模控制原理
滑模控制是一种基于滑模理论的控制策略,其基本原理是引入一个滑动面,让系统状态在这个滑动面上滑行,通过调节控制器参数使得系统状态最终过渡到期望状态,从而实现对系统的控制。
具体来说,滑模控制的关键在于滑动面的设计,一般采用类似于阶跃函数的形式,它在系统状态达到某个阈值时会突变,从而使得系统状态进入一个稳定的运动模式,随着时间的推移,系统状态会在滑模面上滑行,因此可以通过调整控制器参数使得系统状态最终到达期望状态。
滑模控制具有以下优点:
1. 对于不确定性和扰动具有很强的抑制能力。
2. 控制器设计简单,易于实现。
3. 控制器鲁棒性好,能适应不同的系统和环境。
但是也存在以下缺点:
1. 滑模控制需要对系统状态进行较精细的建模和分析,对系统的要求较高。
2. 滑模控制的控制器参数需要进行调整,过程相对比较繁琐。
加入边界层的滑模控制
0.5
1 time/s
1.5
2
图 2-1 x1、x1d 跟踪曲线
1000 x3d x3 2
图 2-2 x2、x2d 跟踪曲线
500 x3d,x3
1
0
0
-500
u 0.5 1 time/s 1.5 2
-1
-1000 0
-2 0
0.5
1 time/s
1.5
2
图 2-3 x3、x3d 跟踪曲线
1 0.8 0.6 e1 0.4 0.2 0 0
8
Md=500+100*sin(2*pi*t); DMd=100*2*pi*cos(2*pi*t); M=Mf0+Md; DM=DMf0+DMd; d=0.86*DM+9.73*M; da1=0.5*sin(2*pi*t)*a10; da2=0.5*sin(2*pi*t)*a20; da3=0.5*sin(2*pi*t)*a30; dg=0.2*sin(2*pi*t)*g0; f=-(a10+da1)*x1-(a20+da2)*x2-(a30+da3)*x3; g=g0+dg; e1=x1-x1d; e2=x2-x1d1; e3=x3-x1d2; sum_e1=sum_e1+e1*Dt; u=-kp*e1-ki*sum_e1-kd*e2; Dx1=x2; Dx2=x3; Dx3=f+g*u+d; x1=x1+Dx1*Dt; x2=x2+Dx2*Dt; x3=x3+Dx3*Dt; x_store(:,n)=[x1d;x1d1;x1d2;x1;x2;x3]; u_store(n)=u; e_store(n)=e1; t=t+Dt; n=n+1; end figure(1) plot((1:n-1)*Dt,x_store(1,:),(1:n-1)*Dt,x_store(4,:)) legend('x1d','x1') xlabel('time/s') ylabel('x1d,x1') figure(2) plot((1:n-1)*Dt,x_store(2,:),(1:n-1)*Dt,x_store(5,:)) legend('x2d','x2')
c语言滑模控制算法 -回复
c语言滑模控制算法-回复
C语言滑模控制算法
导言
滑模控制是一种广泛应用于控制系统中的非线性控制算法。它通过引入“滑模面”来实现对系统状态的鲁棒稳定控制。滑模控制算法具有快速响应、强鲁棒性和良好的鲁棒性能等特点,广泛应用于各种控制系统中。本文将介绍滑模控制算法的基本原理及其在C语言中的实现。
一、滑模控制的基本原理
1. 滑模面
滑模面是滑模控制中的核心概念之一。它是一个超平面,通过将系统状态投影到该平面上,实现对系统状态的控制。滑模面的选择对系统控制效果起到了至关重要的作用。
2. 滑模控制律
滑模控制律是滑模控制算法的关键。它由两个部分组成:滑模面的构造和滑模面上的控制律。滑模面的构造是指如何选择合适的控制变量,以实现
对系统状态的控制。滑模面上的控制律是指如何根据系统状态误差来调节系统的控制输出。
3. 滑模控制器设计
滑模控制器是滑模控制算法的实现。它根据滑模面和滑模控制律来实现对系统状态的控制。滑模控制器可以分为离散滑模控制器和连续滑模控制器两种类型。
二、C语言中滑模控制算法的实现
1. 系统模型的建立
在C语言中实现滑模控制算法的第一步是建立系统模型。系统模型是指将实际系统抽象为数学模型,以描述其动态行为。在滑模控制算法中,常使用微分方程或状态空间模型来描述系统行为。
2. 滑模面的构造
在C语言中实现滑模控制算法的第二步是构造滑模面。滑模面的选择应根据实际系统的特性来确定。常见的滑模面选择方法有比例滑模面和饱和滑模面等。
3. 滑模控制律的设计
在C语言中实现滑模控制算法的第三步是设计滑模控制律。根据滑模面的选择和系统模型的建立,可以设计出相应的滑模控制律。常见的滑模控制律包括PID控制律、自适应滑模控制律和鲁棒滑模控制律等。
高阶滑模控制讲解学习
高阶滑模控制
高阶滑模控制(读书笔记)
王蒙
1、传统滑模控制有如下缺陷:
(1)抖振问题:主要是由未建模的串联动态引起,同时切换装置的非理想性也是一个重要原因;
(2)相对阶的限制:传统滑模控制只有在系统关于滑模变量s 的相对阶是 1时才能应用,也就是说,控制量u 必须显式出现在s中,这样就限制了滑模面的设计。
(3)控制精度问题:在实际的、采样实现的传统滑模控制算法中,滑动误差正比于采样时间τ,也就是说,有限时间到达的传统滑模在具有零阶保持器的离散控制下,系统的状态保持在滑动模态上的精度是采样时间的一阶无穷小,即Oτ;
()
2、高阶滑模控制理论
在传统滑模控制中,不连续的控制量显式地出现在滑模变量的一阶导数s 中,即s是不连续的。由于未建模动态和非理想的切换特性,传统滑模存在抖振,它在实际应用中是有害的。连续近似化方法(如引入边界层)能抑制抖振,然而失去了不变性这个显著优点。Levant 提出了高阶滑模的概念,高阶滑
模保持了传统滑模的优点(如不变性),抑制了抖振,消除了相对阶的限制和提高了控制精度。
滑动模态的不变性:系统一旦进入滑动模态,对满足匹配条件的不确定性及干扰具有不变性。
3、高阶滑模的定义
(1)滑动阶r 是指滑模变量s 的连续全导数(包含零阶)在滑模面 s =0上为 0 的数目。滑动阶刻画了系统被约束在滑模面 s = 0上的运动动态平滑度。根据上述定义可知:传统滑模的滑动阶为 1,因为在滑模面上 s = 0,而s 则是不连续的,因此传统滑模又被称为一阶滑模。
(2)关于滑模面 s (t , x ) = 0的 r 阶滑动集由下述等式描述
滑模控制与智能计算
滑模控制方法
1 / 4
滑模控制与智能计算
1.1 滑模控制与智能计算[1][2]
1.1.1 滑模控制基本理论
SMC 由前苏联V.I.Utkin 和S.V.Emlyanov 教授在20世纪50年代末期提出,其为一种特殊的变结构控制。
对于如下MIMO-SMC 系统
(0-1) 其中为系统状态矢量,为控制输入,表示影响控制系统性能的所有因素,如扰动和系统参数不确定性。若
,那么存在控制使得,也即扰动满足匹配条件,此时SMC 对MIMO 仍然具备不变性特点。
SMC 的设计流程主要包括两步(设计SMC 的两个主要阶段):(1)趋近阶段:系统状态在有限时间内由任意初始状态趋近switching manifold ;(2)滑模阶段:系统状态在switching manifold 上作滑模运动,也即switching manifold 成为吸引子。那么SMC 的两个主要设计步骤为switching manifold 设计和不连续控制律设计,前者选取switching manifold 以满足期望的动态特征,一般可选取为线性超平面,后者通过设计不连续控制以保证switching manifold 有限时间可达,该控制器为局部或全局的,取决于特殊的控制需求。
对于系统(0-1),依据SMC 的主要设计步骤,switching manifold 可表示为
,
其中
为由系统动态特性要求决定的m-维矢量。
SMC 控制律
控制结构如下
(0-2)
其中 根据SMC 理论,当sliding mode occurs 等效控制律可推导如下
控制系统的滑模控制理论与方法
控制系统的滑模控制理论与方法滑模控制(Sliding Mode Control,SMC)是一种针对非线性系统的
控制方法,它通过引入一个滑模面,使系统状态在这个面上滑动,从
而实现对系统的控制。本文将介绍滑模控制的理论基础和常用方法,
并分析其在控制系统中的应用。
一、滑模控制的基本原理
滑模控制是一种基于滑模面的控制策略,其基本原理可以归纳为以
下几点:
1. 滑模面的选取:滑模面是指系统状态在该面上滑动的一个超平面,通过适当选取滑模面可以实现对系统状态的控制。滑模面通常由线性
和非线性组成,其中线性部分用于系统稳定,非线性部分用于解决系
统的鲁棒性问题。
2. 滑模控制律:在滑模控制中,需要设计一个控制律来将系统状态
引入滑模面,并保持系统在滑模面上滑动。控制律通常由两部分组成:滑模面控制部分和滑模面切换部分。滑模面控制部分用于实现系统状
态在滑模面上滑动的动力学特性,滑模面切换部分用于保持系统状态
在滑模面上滑动直至系统稳定。
3. 滑模模态:滑模模态指的是系统状态在滑模面上滑动的特性。通
常情况下,滑模模态可以分为饱和模态和非饱和模态两种。在饱和模
态下,系统状态在滑模面上滑动的速度有上限,从而保证系统的稳定
性。而在非饱和模态下,系统状态在滑模面上滑动的速度无上限,可以实现更快的响应速度。
二、滑模控制的方法与技巧
在实际应用中,滑模控制可以采用不同的方法和技巧进行设计和实现。以下是一些常见的滑模控制方法和技巧:
1. 内模态滑模控制:内模态滑模控制是一种将滑模控制与内模态控制相结合的方法,通过在滑模控制律中引入内模态控制的思想,可以提高系统的鲁棒性和动态性能。
高阶滑模控制
高阶滑模控制(读书笔记)
王蒙
1、传统滑模控制有如下缺陷:
(1)抖振问题:主要是由未建模的串联动态引起,同时切换装置的非理想性也是一个重要原因;
(2)相对阶的限制:传统滑模控制只有在系统关于滑模变量s 的相对阶是 1时才能应用,也就是说,控制量u 必须显式出现在s 中,这样就限制了滑模面的设计。
(3)控制精度问题:在实际的、采样实现的传统滑模控制算法中,滑动误差正比于采样时间τ,也就是说,有限时间到达的传统滑模在具有零阶保持器的离散控制下,系统的状态保持在滑动模态上的精度是采样时间的一阶无穷小,即()O τ; 2、高阶滑模控制理论
在传统滑模控制中,不连续的控制量显式地出现在滑模变量的一阶导数s 中,即s 是不连续的。由于未建模动态和非理想的切换特性,传统滑模存在抖振,它在实际应用中是有害的。连续近似化方法(如引入边界层)能抑制抖振,然而失去了不变性这个显著优点。Levant 提出了高阶滑模的概念,高阶滑模保持了传统滑模的优点(如不变性),抑制了抖振,消除了相对阶的限制和提高了控制精度。
滑动模态的不变性:系统一旦进入滑动模态,对满足匹配条件的不确定性及干扰具有不变性。 3、高阶滑模的定义
(1)滑动阶r 是指滑模变量s 的连续全导数(包含零阶)在滑模面 s =0上为 0 的数目。滑动阶刻画了系统被约束在滑模面 s = 0上的运动动态平滑度。根据上述定义可知:传统滑模的滑动阶为 1,因为在滑模面上 s = 0,而s 则是不连续的,因此传统滑模又被称为一阶滑模。
(2)关于滑模面 s (t , x ) = 0的 r 阶滑动集由下述等式描述(1)0r s s s s -=====
滑模控制概念(一)
滑模控制概念
- 滑模控制的基本概念
- 滑模控制是一种非线性控制方法,其核心思想是通过引入滑模面使系统的状态变量在有限时间内快速地达到所期望的状态。
- 滑模控制是一种鲁棒控制方法,能够对系统参数变化和外部干扰具有较强的抗扰性能。
- 滑模控制的设计思想是通过设计滑模面和滑模控制律,将系统状态引入到滑模面上,从而实现对系统的控制。
- 滑模面和滑模控制律
- 滑模面是滑模控制的核心,它是一个虚拟的超平面,可以将系统状态引入到该平面上,并在该平面上实现对系统的控制。
- 滑模控制律是一种非线性控制律,用来生成系统控制输入,使系统状态快速地沿着滑模面收敛到期望状态。
- 滑模控制律的设计是滑模控制的关键,其设计需要考虑系统的动力学特性和控制要求,以实现系统的稳定性和性能要求。
- 滑模控制的特点
- 鲁棒性:滑模控制能够对系统的参数变化和外部干扰具有很强的抗扰性能,能够保证系统在不确定性条件下的稳定性和性能。
- 快速响应:滑模控制能够实现对系统状态的快速控制,使系统在有限时间
内达到期望状态,具有较快的动态响应特性。
- 简单实现:滑模控制的设计方法相对简单,不需要对系统的精确数学模型,能够通过设计滑模面和滑模控制律直接实现对系统的控制。
- 滑模控制的应用领域
- 机电控制系统:滑模控制在电机控制、伺服系统和机器人控制等领域得到
广泛应用,能够实现对系统的精确控制和鲁棒性能。
- 汽车控制系统:滑模控制在汽车动力系统、制动系统和悬挂系统中的应用,能够提高汽车的操控性能和安全性能。
- 航空航天系统:滑模控制在飞行器的姿态控制、航迹跟踪和飞行器控制系
基于控制规划的边界层滑模控制
Pr g a mi g c n r lba e l n o o r l t u o r m n o t o — s d si g m dec nt o h bo nda y l ye di wi r a r
Z A ni , UZ ii g UX ox g H OWe - ’ Y hq n ’ i -i j e -a ,L a n
c n o f c n r e o l e r y tm .Smuainrs l e f ev l i f epo o e p r a h o t l s o dod r ni a s r o ae n n s e i lt ut v r yt ai t o rp s da po c . o e s i h dy h t
( ,S h o f nr l ce c n n ie rn ,Not iaElcrcP we ies y 1 c o l t in ea dE gn e g o Co o S i r Chn e t o r h i Unv ri ,Ba dn 71 0 ,Chn ; t o ig0 3 0 ia
2 P t hn u b i l i d o a y R n i 0 2 5 ,C ia , er C i H a e OiF e mp n , e q 6 5 2 hn ) o a lC u
Ab t a t s r c :A e i n me h dt r g a d s t o p o rmm ig c n r l a e l i g mo ec n r l t o n a y ly ri s g e td g o n o t — s dsi n d o to h b u d r e u g se , o b d wi a s T r u ha ay n ec n e to a l i g mo ec n r l t o n a y ly r x d b u d r y rt ik e si h o g n l i g t o v n i n l i n d o t h b u d r e ,a f e o h sd o wi a i n a l e c n s s y a h p o u e y p o r mm i gt e s t hn o t 1 rd c db rg a n wi i g c n r .W i i eb u d r y r t e p o r mmi g s t h n o to h c o t nt o h h n ayl e h r ga a , n wi i g c nr l c c l t k d a t g f h y tm a d dh a d i r v eta k n e o ma c ,T emeh d i p l d t e a ea v n eo t es se b n wi t la a n mp o et c i g p r r n e h t o a p i t h r f s e oh
滑模控制的基本原理
滑模控制的基本原理
滑模控制(Sliding Mode Control)是一种用于系统控制的方法,该方法的基本思想是利用滑模的技术来抑制系统的扰动和干扰并最终
达到系统指定目标的控制技术。其核心思想是#将滑模函数中的参数调整,使系统的响应振动逐渐衰减,最终趋于零#,达到目标的控制目的。滑模控制有两大特点,即时性和稳定性。滑模控制系统具有时变结构,可以迅速响应系统参数变化,同时也具有较强的鲁棒性,可以防止系
统出现过调、抖动、拖影等不稳定现象。
滑模变结构控制方法
整理ppt
17
几种常见趋近律:
(1)等速趋近律 s sgn(s) 0
(2)指数趋近律 s sgn(s) ks 0, k 0
(3)幂次趋近律
s k s sgn(s)
0 1
(4)一般趋近律 s sgn(s) f (s) 0
注:选取原则是保证系统状态点远离切换面时具有较快 趋近速度,由于过大趋近速度会导致剧烈抖振,是以适 整理ppt 当选择f(s),使系统以适当速18度趋近切换面。
[(
Tˆ Kˆ
Biblioteka Baidu
T K
)v
(
1 Kˆ
1 K
)[n1v
wind
]
(
nˆ3 Kˆ
n3 K
)r 2v]s
Ks
|
(
Tˆ Kˆ
T K
)v
|
|
(
1 Kˆ
1 K
)[n1v
wind
]|
|
(
nˆ3 Kˆ
n3 K
)r2v
|
整理ppt
21
例2:利用特征值分解的滑模控制(P522)----控制NPS AUV2 采用方法:控制律设计方法二----基于趋近律的滑模设计 控制对象模型:
整理ppt
19
③李雅普诺夫不等式:
V (s) 1 Ts2,T 0 2
第四章 滑模变结构控制
4.4 滑模变结构控制抖振问题
抖振问题产生的原因(只能减轻,无法消除) 1. 时间滞后开关(控制作用对状态准确变化有滞后) 2. 空间滞后开关(状态空间中的状态量变化死区) 3. 系统惯性的影响 4. 离散时间系统本身造成的抖振
35
抖振问题的削弱方法 1. 准滑动模态方法(系统运动轨迹被限制在边界层) 2. 趋近律方法(保证动态品质、减弱控制信号抖振) 习题:对系统
4.3 滑模变结构控制的设计
有一控制系统状态方程为
& = f ( x , u , t ) x ∈ ℜn u ∈ ℜ x
需要确定切换函数
s( x )
s ∈ℜ
s( x ) > 0 s( x ) < 0
求解控制作用
+ ⎧ ⎪u ( x ) , ⎨ − ⎪ ⎩u ( x ),
滑模变结构控制要素: (1) 满足可达性条件,即在切换面以外的运动点都将在有限 时间内到达切换面; (2) 滑动模态存在性; (3) 保证滑动模态运动的渐近稳定性 22 (4) 具有良好的动态品质。
4.1 变结构系统的基本概念
1.变结构系统的定义 广义地说,在控制过程(或瞬态过程)中,系统结构(或叫 模型)可发生变化的系统,叫变结构系统。 1
实例1: 一般意义下的变结构系统
2
在上例中,a是根据x1、x2的符号来切换的,它并不维持不 变,但只在间断的时刻切换。这个系统,满足广义变结构系 统的定义,但是,像这样一些广义的变结构系统还很多。 2.滑动模态变结构的概念和定义 本章研究对象是一类特殊的变结构系统,其特殊之处在于, 系统的控制有切换,而且在切换面上系统会沿着固定的轨迹产 生滑动运动。这类特殊的变结构系统,叫滑动模态变结构控制 系统,简称为滑模变结构控制系统。以后提到变结构系统,或 变结构控制,除非有特殊说明,都是指的这一类有滑动模态的 变结构系统。 A.滑动模态的概念
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 = x2 ⎧x ⎪ 2 = x3 ⎨x ⎪x ⎩ 3 = f ( x) + gu + d = (−a1 x1 − a2 x2 − a3 x3 ) + gu + d
其中 ai = ai 0 + ∆ai , ∆ai ≤ ai (t ), ∀t ; g = g 0 + ∆g ,∆g ≤ β (t ), ∀t ; d ≤ D (t ), ∀t 。ai 0 、
i =1
3
g 0 − β (t )
s sat ( ) Φ
⎧s s ⎪Φ Φ ≤ 1 s ⎪ 式中, sat ( ) = ⎨ 。 Φ ⎪ s s >1 sign( ) ⎪ Φ Φ ⎩
1.3 PID 控制
控制器为
u = − K p e1 − K i ∫ e1dt − K d e2
1.4 参数选择
+ 9.73M , a10 = 0 , a20 = 8873.64 , a30 = 37.68 , g 0 = 179425 , d = 0.86M
8
Md=500+100*sin(2*pi*t); DMd=100*2*pi*cos(2*pi*t); M=Mf0+Md; DM=DMf0+DMd; d=0.86*DM+9.73*M; da1=0.5*sin(2*pi*t)*a10; da2=0.5*sin(2*pi*t)*a20; da3=0.5*sin(2*pi*t)*a30; dg=0.2*sin(2*pi*t)*g0; f=-(a10+da1)*x1-(a20+da2)*x2-(a30+da3)*x3; g=g0+dg; e1=x1-x1d; e2=x2-x1d1; e3=x3-x1d2; sum_e1=sum_e1+e1*Dt; u=-kp*e1-ki*sum_e1-kd*e2; Dx1=x2; Dx2=x3; Dx3=f+g*u+d; x1=x1+Dx1*Dt; x2=x2+Dx2*Dt; x3=x3+Dx3*Dt; x_store(:,n)=[x1d;x1d1;x1d2;x1;x2;x3]; u_store(n)=u; e_store(n)=e1; t=t+Dt; n=n+1; end figure(1) plot((1:n-1)*Dt,x_store(1,:),(1:n-1)*Dt,x_store(4,:)) legend('x1d','x1') xlabel('time/s') ylabel('x1d,x1') figure(2) plot((1:n-1)*Dt,x_store(2,:),(1:n-1)*Dt,x_store(5,:)) legend('x2d','x2')
g 0 为系统的标称参数, ∆ai 、 ∆g 为系统参数的不确定部分, ai (t ) 、 β (t ) 分别为 ∆ai 和 ∆g
的上界, D (t ) 为扰动 d 的上界。
e1 = x1 − x1d
1 = x 1 − x 1d = x2 − x 1d e2 = e
e3 = e1 = x1 − x1d = x3 − x1d
图 2-14 PID 控制信号
2
图 2-15 跟踪误差曲线
3 Matlab 程序
3.1 滑模控制程序
clear
5
clc a10=0; a20=8873.64; a30=37.68; g0=179425; c1=3600; c2=120; fea=300; N=1; x1=1; x2=0; x3=0; n=1; t=0; Dt=0.001; for i=1:2000 %指令信号 x1d=sin(2*pi*t); x1d1=2*pi*cos(2*pi*t); x1d2=-(2*pi)^2*sin(2*pi*t); x1d3=-(2*pi)^3*cos(2*pi*t); Mf0=3000+1000*sin(2*pi*t); DMf0=1000*2*pi*cos(2*pi*t); Md=500+100*sin(2*pi*t); DMd=100*2*pi*cos(2*pi*t); M=Mf0+Md; DM=DMf0+DMd; d=0.86*DM+9.73*M; da1=0.5*sin(2*pi*t)*a10; da2=0.5*sin(2*pi*t)*a20; da3=0.5*sin(2*pi*t)*a30; dg=0.2*sin(2*pi*t)*g0; f=-(a10+da1)*x1-(a20+da2)*x2-(a30+da3)*x3; g=g0+dg; e1=x1-x1d; e2=x2-x1d1; e3=x3-x1d2;
0.5
1 time/s
1.5
2
图 2-1 x1、x1d 跟踪曲线
1000 x3d x3 2
图 2-2 x2、x2d 跟踪曲线
500 x3d,x3
1
0
0
-500
u 0.5 1 time/s 1.5 2
-1
-1000 0
-2 0
0.5
1 time/s
1.5
2
图 2-3 x3、x3d 跟踪曲线
1 0.8 0.6 e1 0.4 0.2 0 0
9
xlabel('time/s') ylabel('x2d,x2') figure(3) plot((1:n-1)*Dt,x_store(3,:),(1:n-1)*Dt,x_store(6,:)) legend('x3d','x3') xlabel('time/s') ylabel('x3d,x3') figure(4) plot((1:n-1)*Dt,e_store) xlabel('time/s') ylabel('e1') figure(5) plot((1:n-1)*Dt,u_store) xlabel('time/s') ylabel('u')
M = M f 0 + M d , M f 0 = 3000 + 1000sin 2π t , M d = 500 + 100sin 2π t , ∆ai = 0.5ai 0 sin(2π t ) , ∆g = 0.2 g 0 sin(2π t ) , ai (t ) = 0.5ai 0 , β (t ) = 0.2 g 0 ,D=60000, x1d = sin(2π t ) ,初始状态 x(0) = [1 0 0] , c1 = 3600 , c2 = 120 , Φ = 300 ,η = 1 。
3.2 PID 控制程序
clear clc a10=0; a20=8873.64; a30=37.68; g0=179425; kp=0.8; ki=0.001; kd=0.0001; x1=1; x2=0; x3=0; sum_e1=0; n=1; t=0; Dt=0.001; for i=1:2000 %指令信号 x1d=sin(2*pi*t); x1d1=2*pi*cos(2*pi*t); x1d2=-(2*pi)^2*sin(2*pi*t); x1d3=-(2*pi)^3*cos(2*pi*t); Mf0=3000+1000*sin(2*pi*t); DMf0=1000*2*pi*cos(2*pi*t);
图 2-9 滑模控制信号曲线
0.5
1 time/s
1.5
2
图 2-10 跟踪误差曲线
4
2.3 PID 控制
1.5 1 0.5 0 -0.5 -1 0 x1d x1 10 5 0 -5 -10 -15 0 x2d x2
x1d,x1
x2d,x2
0.5
1 time/s
1.5
2
0.5
1 time/s
1.5
图 2-4 滑模控制信号曲线
0.5
1 time/s
1.5
2
图 2-5 跟踪误差曲线
3
Biblioteka Baidu
2.2 加入边界层
1.5 1 0.5 0 -0.5 -1 0 x1d x1
10 5 0 -5 -10 -15 0
x2d x2
x1d,x1
x2d,x2
0.5
1 time/s
1.5
2
0.5
1 time/s
1.5
2
图 2-6 x1、x1d 跟踪曲线图
1.1 未加入边界层的滑模控制
选择滑动模态为
s (t ) = c1e1 + c2 e2 + e3
控制器为
u (t ) = uequ (t ) + un (t )
−1 ] uequ (t ) = g 0 [∑ ai 0 xi − c1e2 − c2 e3 + δ d i =1 3
un (t ) = K (t ) sign( s ) = −
7
legend('x3d','x3') xlabel('time/s') ylabel('x3d,x3') figure(4) plot((1:n-1)*Dt,e_store) xlabel('time/s') ylabel('e1') figure(5) plot((1:n-1)*Dt,u_store) xlabel('time/s') ylabel('u')
6
u_equ=1/g0*(a10*x1+a20*x2+a30*x3-c1*e2-c2*e3+x1d3); s=c1*e1+c2*e2+e3; %加入边界层控制 if abs(s/fea)<=1 ss=s/fea; else ss=sign(s/fea); end K=-((a10+da1)*abs(x1)+(a20+da2)*abs(x2)+(a30+da3)*abs(x3)+0.2*g0*abs(u_equ)+60000+1)/( g0-0.2*g0); u_n=K*ss;%加入边界层控制 %u_n=K*sign(s); u=u_equ+u_n; Dx1=x2; Dx2=x3; Dx3=f+g*u+d; x1=x1+Dx1*Dt; x2=x2+Dx2*Dt; x3=x3+Dx3*Dt; x_store(:,n)=[x1d;x1d1;x1d2;x1;x2;x3]; u_store(n)=u; e_store(n)=e1; t=t+Dt; n=n+1; end figure(1) plot((1:n-1)*Dt,x_store(1,:),(1:n-1)*Dt,x_store(4,:)) legend('x1d','x1') xlabel('time/s') ylabel('x1d,x1') figure(2) plot((1:n-1)*Dt,x_store(2,:),(1:n-1)*Dt,x_store(5,:)) legend('x2d','x2') xlabel('time/s') ylabel('x2d,x2') figure(3) plot((1:n-1)*Dt,x_store(3,:),(1:n-1)*Dt,x_store(6,:))
2
图 2-11 x1、x1d 跟踪曲线图
1000 x3d x3 0.2 0 -0.2 0 u -0.4 -500 -0.6 -0.8 0
2-12 x2、x2d 跟踪曲线
500 x3d,x3
-1000 0
0.5
1 time/s
1.5
2
0.5
1 time/s
1.5
2
图 2-13 x3、x3d 跟踪曲线
1.2 1 0.8 0.6 e1 0.4 0.2 0 -0.2 0 0.5 1 time/s 1.5
400 200 0 x3d,x3 -200 -400 -600 -800 0 0.5 1 time/s 1.5 2 u x3d x3 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0
2-7 x2、x2d 跟踪曲线
0.5
1 time/s
1.5
2
图 2-8 x3、x3d 跟踪曲线
1 0.8 0.6 e1 0.4 0.2 0 0
[∑ ai (t ) xi + β (t ) uequ + D (t ) + η ]
i =1
3
g 0 − β (t )
sign( s )
1.2 加入边界层的滑模控制
其它式子不变,将 1.1 节中 un (t ) 的用下式代替
1
un (t ) = K (t ) sign( s ) = −
[∑ ai (t ) xi + β (t ) uequ + D (t ) + η ]
T
PID 控制器参数: K p = 0.8 , K i = 0.01 , K d = 0.0001 。
2
2 仿真结果
2.1 未加边界层
1.5 1 0.5 0 -0.5 -1 0 x1d x1 10 5 0 -5 -10 -15 0 x2d x2
x1d,x1
0.5
1 time/s
1.5
2
x2d,x2