倒立摆论文2

实验意义

在控制理论发展的过程中,某一理论的正确性及实际应用中的可行性需要一个按其

理论设计的控制器去控制一个典型对象来验证。倒立摆就是这样一个被控制对象倒立摆系统是一个多变量、快速、非线性和自然不稳定系统。在控制过程中能有效地反映控制中的许多关键问题,如非线性问题系统的鲁棒性问题,随动问题镇定问题,及跟踪问题等。倒立摆系统作为一个实验装置形象直观结构简单,构件组成参数和形状易于改变,成本低廉,倒立摆系统的控制效果可以通过其稳定性直观地体现,也可以通过摆杆角度小车位移和稳定时间直接度量,其实验效果直观显著,当新的控制理论与方法出现后,可以用倒立摆对其正确性和实用性加以物理验证,并对各种方法进行快捷有效生动的比较。

早在60 年代人们就开始了对倒立摆系统的研究1966 年Schaefer 和Cannon 应用Bang Bang控制理论将一个曲轴稳定于倒置位置在60 年代后期作为一个典型的不稳定严重非线性证例提出了倒立摆的概念并用其检验控制方法对不稳定非线性和快速性系统的控制能力受到世界各国许多科学家的重视从而用不同的控制方法控制不同类型的倒立摆成为具有挑战性的课题之一倒立摆的种类很多有悬挂式倒立摆平行倒立摆环形倒立摆平面倒立摆倒立摆的级数可以是一级二级三级四级乃至多级倒立摆的运动轨道可以是水平的还可以是倾斜的(这对实际机器人的步行稳定控制研究更有意义) 控制电机可以是单电机也可以是多级电机。倒立摆的研究具有重要的工程背景:

(1) 机器人的站立与行走类似双倒立摆系统尽管第一台机器人在美国问世至今已有三十年的历史机器人的关键技术机器人的行走控制至今仍未能很好解决

(2) 在火箭等飞行器的飞行过程中为了保持其正确的姿态要不断进行实时控制

(3) 通信卫星在预先计算好的轨道和确定的位置上运行的同时要保持其稳定的姿态使卫星天线一直指向地球使它的太阳能电池板一直指向太阳

(4) 侦察卫星中摄像机的轻微抖动会对摄像的图像质量产生很大的影响为了提高摄像的质量必须能自动地保持伺服云台的稳定消除震动

(5) 为防止单级火箭在拐弯时断裂而诞生的柔性火箭(多级火箭) 其飞行姿态的控制也可以用多级倒立摆系统进行研究。由于倒立摆系统与双足机器人火箭飞行控制和各类伺服云台稳定有很大相似性因此对倒立摆控制机理的研究具有重要的理论和实践意义。

2 倒立摆控制理论研究现状

对倒立摆这样的一个典型被控对象进行研究无论在理论上和方法上都具有重要意义不仅由于其级数增加而产生的控制难度是对人类控制能力的有力挑战更重要的是实现其控制稳定的过程中不断发现新的控制方法探索新的控制理论并进而将新的控制方法应用到更广泛的受控对象中各种控制理论和方法都可以在这里得以充分实践并且可以促成相互间的有机结合当前倒立摆的控制方法可分为以下几类:

1 经典控制理论的方法

一级倒立摆系统的控制对象是一个单输入两输出的非最小相位系统,它提供了用经典控制理论解决单输入多输出系统的控制方法。根据对系统的力学分析,应用牛顿第二定律,建立倒

立摆非线性的运动方程,并进行线性化,拉氏变换,得出传递函数,从而得到零、极点分布情况,根据使闭环系统能稳定工作的思想设计控制器。为此,需引入适当的反馈,使闭环系统特征方程的根都位于左平面上。用经典控制理论的频域法设计非最小相位系统的控制器并不需要十分精确的对象数学模型,因为只要控制器使系统具有充分大的相位裕量,就能获得系统参数很宽范围内的稳定性。但是,由于经典控制理论本身的局限性,它只能用来控制一级倒立摆,对于复杂的二级、三级倒立摆却无能为力。

2 现代控制理论的方法

用现代控制理论控制倒立摆的平衡,主要是用H 状态反馈来实现的。H 状态反馈控制是通过对倒立摆物理模型的分析,建立倒立摆的数学模型,再用状态空间理论推出状态方程,然后利用H 状态反馈和Kalman滤波相结合的方法,实现对倒立摆的控制。而文献[4]中采用三种状态反馈的方法来设计倒立摆的控制器,即极点配置调节器的方法、LQR最优调节器的方法和LQY最优调节器的方法,并对其实验结果进行了比较,结果表明,三种方法来控制一级倒立摆都是有效的。现代控制理论的方法控制倒立摆,不仅对一级倒立摆可以成功地控制,二级倒立摆的控制效果也不错。

3 智能控制理论的方法

由于倒立摆是一个多变量、非线性、不稳定、强藕合的复杂系统,尽管理论上的一级、二级倒立摆数学模型已经推导出来,但其数学模型很难精确地反应实际系统,所以用经典控制理论和现代控制理论的方法控制倒立摆都不是特别理想,国内外学者对倒立摆的研究集中在智能控制领域。

4 用模糊控制理论控制倒立摆

用模糊控制理论控制倒立摆是智能控制算法中研究最多的一种。大量的实验表明,用模糊控制的方法控制一级、二级倒立摆是非常成功的。模糊控制是采用模糊化、模糊推理、解模糊等运算的模糊控制方法,其主要工作是模糊控制器的设计.

5 用神经网络控制理论控制倒立摆 业已证明,神经网络(Neural Network, NN)能够任意充分地逼近复杂的非线性关系,NN能够学习与适应严重不确定性系统的动态特性,所有定量与定性的信息都等势分布存贮于网络内的各种神经元,故有很强的鲁棒性和容错性。用神经网络方法来实现倒立摆的平衡控制,迄今已经取得了不少成果。

6 模糊控制与神经网络控制相结合控制倒立摆 模糊神经网络控制器控制倒立摆,主要是利用网络的自学习功能,不断修正模糊神经网络控制器的隶属函数和权值,实现模糊控制规则的自动更新,从而解决了模糊控制的自学习、自调整问题,提高了控制精度。

7 神经网络与遗传算法结合控制倒立摆

基于遗传算法学习的神经网络方法在控制倒立摆,以神经网络为基础,用遗传算法来学习神经网络的权系数,既保留了遗传算法的强全局随机搜索能力,又具有神经网络的鲁棒性和自学习能力,能够取得较好的控制效果。

8 神经网络与预测控制算法相结合控制倒立摆

预测控制是工业过程控制领域发展起来的一种计算机控制算法。该算法不基于对象的精确的数学模型,而是建立在对象非参数模型基础上,既具有优化功能又引入了系统的反馈信息。基于神经网络模型的预测控制算法用于倒立摆的平衡控制,首先用前向神经网络描述对象的输入输出关系,根据此关系可计算预测出系统在未来某时刻的输出值,从而得到未来某时刻系统的误差,根据此误差确定系统的目标函数,然后设计在线的优化算法实时解决下一时刻的控制量。

9 用拟人智能控制的方法控制倒立摆

拟人智能控制的核心是“广义归约”和“拟人”。“归约”是人工智能中的一种问题求解方法。这种方法是将待求解的复杂问题分解成复杂程度较低的若干问题集合,再将这些集合分解成更简单问题的集合,依此类推,最终得到一个本原问题集合,即可以直接求解的问题。另一核心概念是“拟人”,其含义是直接利用人的控制经验直觉以及推理分析形成控制规律。

10 用云模型控制倒立摆

用云模型构成语言值,用语言值构成规则,形成一种定性的推理机制。这种方法不要求给出对象的精确的数学模型,而仅依据人的经验、感受和逻辑判断,将人用自然语言表达的控制经验,通过语言原子和云模型转换到语言控制规则器中,就能解决非线性问题和不确定性问题。

3 一阶二阶倒立摆系统介绍

倒立摆作为一种自动控制教学实验设备,能够全面地满足自动控制教学的要求。许多抽象的控制概念如系统稳定性、可控性、系统收敛速度和系统抗干扰能力等,都可以通过倒立摆直观的表现出来。倒立摆的控制技巧,极富趣味性,很适合学习自动控制课程的学生使用它来验证所学的控制理论和算法,加深对所学课程的理解。基于DSP的旋转式倒立摆系统的最大特点是机械结构简单、可*,成本低廉、体积小,是高等院校理想的自动控制教学的实验设备。

3.1 直线倒立摆系统

直线倒立摆系统 如图1所示,它由四个部分组成:倒立摆、小车、轨道和电机。小车受电机的操纵,可以自由地在限定的轨道上左右移动,轨道有水平轨道和倾斜轨道两种。倒立摆一端通过铰链连在小车顶部,可以在一个平面内自由摆动。对电机的控制是通过控制电压使在水平方向产生控制力。在倒立摆的另一端再铰链摆杆2、摆杆3、摆杆4,即可构成二级、三级、四级倒立摆。控制目的是:小车和摆组成的系统在受到干扰后,小车处于轨道的中心位置,摆杆保持垂直位置。

图3- 1

二级倒立摆系统运动分析示意图如图2所示。其机械部分主要由小车,下摆,上摆,导轨,皮带轮,传动皮带等构成,控制对象由小车!下摆!上摆组成,电气部分由电机!晶体管直流动率放大器!传感器以及保护电路组成。

假设条件,上下摆及小车都是刚体,皮带轮与皮带之间无相对滑动,传动皮带无伸长现象,小车的驱动力与直流放大器的输入成正比,且无滞后,忽略电机电枢绕组中的电感,小车运动时所受的摩擦力正比于小车的速度,下摆转动时所受的摩擦力矩正比于下摆的转动速

度,上摆速度所受的摩擦力矩正比于上摆对下摆的相对角速度。

图3- 2

4 固高倒立摆系统试验平台介绍及相关参数

固高科技有限公司开发的直线运动倒立摆系列产品采用开放的控制解决方案和模块化的实验平台,以直线运动模块为基础平台,可以轻松的构建10多种控制教学实验平台,全方位满足控制教学和研究的需要。在自动控制领域中,倒立摆仿真或实物控制实验,已成为检验一个新的控制理论是否有效的试金石,同时也是产生一个新的控制方法必须依据的基础实验平台。为全方位满足控制教学和研究的需要,固高科技采用开放的控制解决方案和工业化、模块化的机械结构研发出了一系列倒立摆实验设备。

图4- 1

非常好的用户开放功能,用户可以根据自己设计实现其他控制方法。

图4- 2

系统物理模型和参数

图4- 3 图4- 4

表4-1:一阶直线倒立摆的参数符号,数值和含义

5 一二阶直线倒立摆的建模分析

倒立摆建模的方法一般有两种,牛顿力学和拉格朗日法。牛顿力学主要采用受力分析的

原理,二拉格朗日主要是通过对能量含输球偏导得到系统的空间状态方程。下面我们用牛顿法对一阶倒立摆进行建模分析,用拉格朗日法对二阶直线倒立摆进行建模分析。并且对其状

态方程进行稳定性,可观性,可控性进行分析判断,为后面采取不同的控制方法做好准备工作。

5.1 一阶直线倒立摆的建模分析

5.1.1 一阶直线倒立摆的状态方程的建立

图5- 1 图5- 2

忽略掉一些次要因素后,倒立摆系统就是一个典型的运动刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程,对倒立摆系统进行机理建模。

在忽略了空气阻力, 各种摩擦之后, 可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统F的作用下,小车及摆均产生加速运动,根据牛顿第二定律,在水平直线运动方向的惯性力与F平衡和绕摆轴旋转运动的惯性力矩应与重力力矩平衡,我们可以得到下面运动方程:

cosml2sinFml(Mm)xbx(Iml

2

mglsinml)xcos

(5-1)

ddt)

2

设,1,进行近似处理:cos1,sin,(0。用u

来代表被控对象的输入力F,对式(5-1)进行线性化后得到下面两个运动方程:

mlu(Mm)xbx(Iml

2

mglml)x

(5-2)

整理后得系统的状态方程如下:

AXBuXYCX

(5-3)

其中:

0

0A

00

1(Iml)bI(Mm)Mml

0mlb

I(Mm)Mml

22

2

0mgl

2

2

2

I(Mm)Mml

0mgl(Mm)I(Mm)Mml

2

0010

0

2

Iml

I(Mm)Mml2

B

0

ml2I(Mm)Mml

,C

10

00

01

00

x1x

x2x

X

x3x4

带入固高系统固件的相关参数,可化简为:

5.1.2 直线一级倒立摆系统的性能分析

1) 稳定性

系统的稳定性由系统矩阵A的特征值是否均具有负实部来判断。令IA0,系统的开环特征值(0,-0.7412, 0.3264±0.2352i),即系统不稳定。 2) 能控性

系统能控的充要条件是:rank[A,AB,„,An-1B]等于矩阵A的维数 rank[A,AB,„,An-1B]=rank[A] =4 即,系统能控。 3) 能观性

系统能观的充要条件是:rank[C,CA,„,CAn-1]-T等于矩阵A的维数 rank[C,CA,„,CAn-1]-T=rank[A]=4 即,系统能观。

经过如上分析可知,直线一级倒立摆是能控能观的不稳定系统。

5.2 二阶直线倒立摆的建模分析

图5- 3 图5- 4

下列推导过程中,各物理意义为以前所述。利用拉格拉日方程推导倒立摆运动学方程为:

)T(q,q)V(q,q) (q,q

其中,为拉格拉日算子;q为系统的广义坐标;T为系统的动能;V为系统的势能。拉格拉日方程广义坐标为qi和表示为:

didtq

qi

fi

其中,i1,2,3,n;fi为系统沿该广义坐标方向上的外力,在该系统中,设系统的三个广义坐标分别是X, 1,2。

系统的能量方程为: TTMT式中,TM为小车的动能;T能。 TM

12

m1

m1

T

m2

T

m

为质量块的动

为摆杆1的动能;T

2

m2

为摆杆2的动能;T

m

 TMx



TTm1m1m1

Tm2Tm2

其中,Tm1为摆杆1质心平动动能;Tm1为摆杆1绕质心转动动能。T其中,Tm2为2摆杆质心平动动能;Tm2为摆杆2绕质心转动动能。

d(xl1sin1)2d(l1cos1)21

Tm1m1(()())

2dtdt12m1x

2

m2



122

1m1l1xm1l11

2

2

Tm1

12

J11



1112222

(m1l1)1m1l11 23612m1x

2

Tm1Tm1T

m1

22

1cos1m1l1xm1l11

3

同样可以求出:

d(x2l1sin1l2sin2)2d(2l1cos1l2cos2)211

Tm2m2()m2()

2dt2dt1

1222l11cos1l22cos2)m2(xm2(2l11sin1l22sin2)

22

Tm2

12

J22

2

1112222

(m2l2)2m2l22 236

Tm2Tm2T

m2

12

m2x

2

22

2m2l11m2l22

3

l11cos1m2xl22cos22m2l1l212cos(21)2m2x

因此,可以得到系统的动能为:

TTMTm1Tm2Tm(

2

12

(Mm1m2m)x

2

l11cos1m2xl22c(m12m2m)x

1)

22222

m12m22m)l11m2l222m2l1l221cos(33

2

系统的势能为:

VVm1Vm2Vmm1gl1cos12mgl

1

cos1m2g(2l1cos1l2cos2)

至此拉格拉日算子:

TV

12

(Mm1m2m)x

2

1cos1m2xl22cos2(m12m22m)l1x(

2

22222

m12m22m)l11m2l222m2l1l212cos(21)33

2

(m12m22m)gl1cos1m2glcos2

由于在广义坐标1,2上无为力作用,X上的外力为控制力F,故有以下等式成立

ddt1ddt2

12

0

0

ddtx

4312

x

F

展开以上三式,可得到一下两个方程:

2

mlm1l1xcos1m1gl1sin10 111

cosml2sinF (Mm1)xm1l1111111

写成矩阵的形式:

a11a21a31

a12a22a32

a13

1

a23

2a33xb1



b2 

b3

1

记为:A1

2x

B1。 

2

a11(

43

m14m24m)l1

a122m2l1l2cos(21) a13(m12m22m)l1cos1

a212m2l1l2cos(21)

a22

43

m2l2

2

a23m2l2cos2

a31(m12m22m)l1cos1 a32m2l2cos2 a33Mm1m2m

2

b12m2l1l22sin(21)(m12m2m)gl1sin1

2

b22m2l1l21sin(21)m2gl

2

sin2

22

b3F(m12m22m)l11sin1m2l22sin2

,F取倒数,在平衡位置(qq0)处进行泰勒级数展开,并线性将此方程组对q,q

化得

A11

0qq

1

2

xA11



0qq

A1

0qq

1

1

2x



0qq

B11

0qq

易求得:

0qq

0;

B11

0qq

m12m22mgl1

00

 

A1

0qq

42

(m14m24m)l132m2l1l2

(m12m22m)l1

0qq

2m2l1l24m2l2

2

(m12m22m)l1

m2l2

Mm1m2m

3

m2l2

; 

记得:A(A1

12x



)

1

,则

 

1

0qq

(m12m22m)gl1k11



A0k21

0k31

k11

(Mm1)g43

Mm1l1

2

13

,k21

2

2

m1g

43

Mm1l1

2

其中C:同理:

A1x

0qq

m1l1

13

m1l1

22

A11

0qq

A12

0qq

A12

0qq

A1x

0qq

A1F

0qq

0;

B12

0qq

0

m2gl000 1B11

2

 

B1F

0qq

B1x

0qq

0qq

B12

0qq

B1x

0qq

0;

可解得:

2

1

2x



0qq

0



Am2gl

0

2

k12k22k32



 

1

2

x

x



1

2x

x



0qq

1

2

1

x

0qq

1

2

2

x

0qq0qq

0

1

2

F

x



0qq

0k17



A0k27

1k37

 

系统控制量uF,取状态变量如下:

x11,x22,x3x,  x41,x52,x6x

则可得到状态空间方程如下:

1x

x2x3x4x56x

0

00k11k

21

k31

000k12k22k32

000000

100000

 

010000

0x1

0x21x30x40x50x60



00k17k

27

k37

u 

Y[I3*3

x1

o3*3]Xx2

x3

0

00

即:A

000

0000k12k22

0000k13k23

100000

010000

00

00

01,B0k17

k027

0k37

1,C00

010

001

000

000

0

0,D0 0

带入数据后的系统的状态方程为:

将各参数代入系统方程,可得

k1286.69,k1321.62,k2240.31,k2339.45 k171,k276.64,k370.088

即:

000A

000

000086.6940.31

000021.6239.45

100000

010000

00

00

10,B01

6.640

00.088

1,C00

010

001

000

000

0

0,D00

rank[BABABABABAB]0

00

rank

5.13490.07410.7501

5.13490.07410.7501000

000547.0731254.971513.1031

547.0731254.971513.1031

000

00063666389621400

38962

1400

60

0

063666

2

3

4

5

而:

C

rank

CA100

rank

000

010000

001000

000100

000010

0C

0CA

2

CA0

6rank30CA

CA40

51CA



C

CA

2

CA

故,rank3

CACA45CA



6 

系统完全能控,完全能观测。

6 一阶直线倒立摆的控制

6.1 一阶直线倒立摆的PID控制

PID控制的原理是通过反馈回路,对偏差e(t) 进行比例、积分、微分运算,运算的和决

定控制器的输出,其数学表达式为:

t

u(t)Kpe(t)Kie(t)dtKd

de(t)dt

其中Kp、Ki、Kd为比例、积分、微分运算的系数。 系统控制的结构框图为:

图6- 1

系统的开环传递函数为

PID控制器的传递函数为:

系统的闭环传递函数为:

G(s)KD(s)1G(s)KD(s)

采用试凑法调整Kp、Ki、Kd的值,在时域内观察闭环系统的单位阶跃响应,直至效果满意为止。

在matlab中进行命令行仿真:

clear;clc;

M=1.096;m=0.109;b=0.1;l=0.25;I=0.0034;g=9.8; q=(M+m)*(I+m*l^2)-(m*l)^2; a=m*l;b1=I+m*l^2;b2=-m*g*l;

Num1=[a];Den1=[b1,0,b2];Gs1=tf(Num1,Den1); Kp=40;Ki=35;Kd=10;

Num2=[Kd,Kp,Ki];Den2=[1,0];

Gs2=tf(Num2,Den2);Gs3=series(Gs2,Gs1); Gs=feedback(Gs3,1) step(Gs,t); plot(t,y,'r')

图6- 2

调整PID的三个参数,在调整PID参数的过程中,得到三个参数变化对系统的影响:

(1)当Kp=20,Ki=60,Kd=5时:

图6- 3

可以发现,超调量很大,并且有振荡。

(2)增大Kp为40 ,减少Ki为35 ,增大Kd为10:

图6- 4

可以发现,效果比之前要好很多,继续试验并调整PID的三个参数,可以发现当Kp=60;Ki=35;Kd=11 时系统能兼顾快速性、稳定性。其单位阶跃响应为:

图6- 5

注:以上并不代表真实试验顺序,因为是在不断试验中,总结出三个参数各自对试验结果的影响,况且试验次数太多,难以一一列举,故以上面例子代表实验过程。

6.2一阶直线倒立摆的极点配置法

由系统分析可知,系统具有不稳定的极点,可以通过自己设计,添加极点来是系统稳定。对车载倒立摆的伺服系统进行设计,实现对其的控制作用,使小车位置作为输出的闭环系统具有极点:1j3,5,5,5倒立摆系统可利用极点配置方法进行设计,实际是在前向通道引入一积分器,对输出y也即小车位置进行积累作用,如图2.2所示。 图6-6

此时系统具有指定的性能,如本例指定的极点1j3,5,5,5,可使系统具有设置时间4——5秒,最大超调量15%——16%。

%不含积分环节的伺服系统,对小车倒立摆的控制 %系统模型

a=[0 1 0 0;20.601 0 0 0; 0 0 0 1;-0.4905 0 0 0]; b=[0;-1;0;0.5]; c=[0 0 1 0]; d=[0];

a1=[a zeros(4,1);-c 0]; b1=[b;0];

% 系统可控性检查

disp('The rank of controllability matrix') rc=rank(ctrb(a1,b1))

% 设计极点

p=[-1+sqrt(3)*i -1-sqrt(3)*i -5 -5 -5]; k=acker(a1,b1,p)

% 系统阶跃响应输出

k1=k(1:4) ki=-k(5)

ac=[a-b*k1 b*ki;-c 0]; bc=[0 0 0 0 1]'; cc=[c 0]; dc=[0]; figure(1)

v=[0 5 -0.4 1.4]; step(ac,bc,cc,dc) axis(v)

title('µ¹Á¢°ÚϵͳÊä³öµ¥Î»½×Ô¾ÏìÓ¦') xlabel('Ãë')

ylabel('Êä³ö y=x3 ') text(1.5,0.6,'ÏìÓ¦ÇúÏß') figure(2)

[y,x,t]=step(ac,bc,cc,dc); plot(t,x) axis(v)

title('x1,x2,x3,x4,x5 ÏìÓ¦ÇúÏß') xlabel('Ãë')

ylabel('x1,x2,x3,x4,x5') text(1.2,0.05,'x1') text(1.2,-0.33,'x2') text(4.5,0.9,'x3') text (2.2,0.25,'x4') text(4.5,1.15,'x5')

The rank of controllability matrix rc = 5

k = -157.6336 -35.3733 -56.0652 -36.7466 50.9684 k1 = -157.6336 -35.3733 -56.0652 -36.7466 ki = -50.9684

Simulink仿真

图6- 7

添加极点

图6- 8

图6- 9 图6- 10

6.3一阶直线倒立摆的线性最优控制

6.1中所述的PID 控制只能控制摆杆的角度,并不能控制小车的位置,为了在控制摆杆

角度的同时,同时也控制小车的位置,这需要一个单输入(小车加速度),多输出(小车位置和摆杆角度)的控制器,因为我们已经得到系统的状态方程,可以采用线性二次最优控制的方法对其进行控制。

线性二次最优控制LQR 基本原理为,由系统方程:

.

XAXBu

确定下列最佳控制向量的矩阵K:u(t)=- K* x(t),使得性能指标达到最小值:

J

(XQXuRu)dt

**

LQR控制的原理图为:

图6- 11

方程右端第二项是考虑到控制能量的损耗而引进的,矩阵Q和R确定了误差和能量损耗的相对重要性。并且假设控制向量u(t)是无约束的。 对线性系统:

根据期望性能指标选取Q和R,利用MATLAB 命令lqr就可以得到反馈矩阵K的值。

K=lqr( A,B,Q,R)

改变矩阵Q 的值,可以得到不同的响应效果.

LQR 控制参数调节及仿真前面我们已经得到了直线一级倒立摆系统的系统状态方程。

在Matlab 中得到最优控制器对应的K 。LQR 函数允许你选择两个参数R和Q,这两个参数用来平衡输入量和状态量的权重。最简单的情况是假设R = 1,Q=C‘*C。当然,也可以通过改变Q 矩阵中的非零元素来调节控制器以得到期望的响应。

6.3.1 求矩阵K

输入的权重R 是1。下面来求矩阵K,Matlab 语句为K = lqr(B A Q R) 。 下面在MATLAB中编程计算: Clear;

M = 1.096; m = 0.109; b = 0.1; I = 0.0034; g = 9.8; l = 0.2 5;

p = I*(M+m)+M*m*l^2; A = [0 1 0 0;

0 -(I+m*l^2)*b/p (m^2*g*l^2)/p 0;

0 0 0 1;

0 -(m*l*b)/p m*g*l*(M+m)/p 0]; B = [ 0; (I+m*l^2)/p; 0; m*l/p ]; C = [1 0 0 0; 0 0 1 0]; D = [0; 0]; p = eig(A); Q = [x 0 0 0; 0 0 0 0; 0 0 y 0 0 0 0 0]; R = 1;

K = lqr(A,B,Q,R) Ac = [(A-B*K)]; Bc = [B]; Cc = [C]; Dc = [D]; Cn = [1 0 0 0];

Nbar = rscale(A,B,Cn,0,K); Bcn = [Nbar*B]; T = 0:0.005:5; U = 0.2*ones(size(T));

[Y,X] = Lsim(Ac,Bcn,Cc,Dc,U,T); plot(T,Y(:,1),':',T,Y(:,2),'-') legend('λÖÃ','½Ç¶È') grid

1.首先令x=1,y=1

运行后可以得到:

K =[-1.0000 -2.0381 30.1662 5.7548]

图6- 12 图6- 13

其中simulink仿真图为:

图6- 14

Q矩阵中,增加Q11使稳定时间和上升时间变短,并且使摆杆的角度变化减小。但是对于实际离散控制系统,过大的空置量会引起系统振荡。

6.4一阶直线倒立摆的模糊控制

模糊控制就是把控制对象作为黑箱,先把人对黑箱的操作经验用语言表述成模糊规则,让机器根据这些规则模仿人进行操作来实现自动控制。其主要工作原理过程如下图所示。

图6- 15

6.4.1一阶直线倒立摆的mamdani模糊控制模型

介绍MATLAB模糊工具箱提供的5个图形化工具

FIS Editor 模糊推理系统编辑器:供了利用图形界面(GUI)对模糊系统的高层属性的编辑、修改功能,这些属性包括输入、输出语言变量的个数和去模糊方法等。用户在基本模糊编辑其中可以通过菜单选择激活其他几个图形界面编辑器,如Rule Editor,Membership Function Editor等。利用MATLAB模糊工具箱可以实现建立mamdani模糊控制模型和

sugeno模糊控制模型。前者输出量是模糊集合,称为常规模糊系统模型,后者输出量是输入变量的线性函数。下面先用mamdani模糊控制模型实现对一阶倒立摆的平衡控制。

新建一个模糊系统*.fis文件,确定输入输出的个数、隶属度函数,以及适当的模糊规则,替代pd_stab.fis,用于倒立摆稳定模式的控制,要求能达到稳定,抖动小的控制目的。

设计四维模糊控制器,输入分别是position ,angle ,velocity ,ang-vel,(小车位置,摆锤角度,车速度,摆角速度),输出为control(控制力)。所要建立*.fis文件的结构,包括模糊运算(and、or、Implication、Aggregation、Defuzzification)的选择;各个输入输出的隶属度函数个数、形状的确定;编辑模糊规则等。这些决定了该模糊逻辑系统能达到的控制效果。

设计Mamdani型模糊逻辑系统(*.fis)结构如下:

模糊运算用默认的:And method: „min‟ Or method: „max‟ Implication: „min‟ Aggregation: „max‟ Defuzzification: „centroid‟ (1) Input1:Name = position;

Range & Display Range = [-1 1];

MFs:Name = ZE, Type = Trimf, Params = [-0.1 0 0.1] %1个三角形MF Name = NM, Type = Trapmf, Params = [-2 -1 -0.5 0] %2个梯形MFs Name = PM, Type = Trapmf, Params = [0 0.5 1 2]

(2) 其他同理类似。

图6- 16 图6- 17

图6- 18 图6- 19

图6- 20 图6- 21

以上分别为系统结构图,输入变量隶属函数和输出函数隶属函数图。

图6- 22 图6- 23

图6- 24 图

6- 25

图6-26 图6-27

图6- 28 图6- 29

6.4.2一阶直线倒立摆的sugeno模糊控制模型

sugeno模糊控制模型的建立思路和上述过程相似。只是在输出变量与输入变量之间建立线性函数关系。

这里为了探索,输入变量采用了与上不同的隶属函数关系,采用了钟形隶属函数,模

糊规则也做了相应的调整。

模糊规则:Weight(权重)取默认值1.

1. If (x is b) and (x1 is b) and (w is f) and (w1 is f) then (u is a) (1) 2. If (x is b) and (x1 is b) and (w is f) and (w1 is s) then (u is b) (1) 3. If (x is b) and (x1 is b) and (w is s) and (w1 is f) then (u is a) (1) 4. If (x is b) and (x1 is b) and (w is s) and (w1 is s) then (u is b) (1) 5. If (x is b) and (x1 is s) and (w is f) and (w1 is f) then (u is c) (1) 6. If (x is b) and (x1 is s) and (w is f) and (w1 is s) then (u is d) (1) 7. If (x is b) and (x1 is s) and (w is s) and (w1 is f) then (u is c) (1) 8. If (x is b) and (x1 is s) and (w is s) and (w1 is s) then (u is d) (1) 9. If (x is b) and (x1 is b) and (w is f) and (w1 is f) then (u is e) (1) 10. If (x is b) and (x1 is b) and (w is f) and (w1 is s) then (u is f) (1) 11. If (x is b) and (x1 is b) and (w is s) and (w1 is f) then (u is e) (1) 12. If (x is b) and (x1 is b) and (w is s) and (w1 is s) then (u is f) (1) 13. If (x is b) and (x1 is s) and (w is f) and (w1 is f) then (u is g) (1) 14. If (x is b) and (x1 is s) and (w is f) and (w1 is s) then (u is h) (1) 15. If (x is b) and (x1 is s) and (w is s) and (w1 is f) then (u is g) (1) 16. If (x is b) and (x1 is s) and (w is s) and (w1 is s) then (u is h) (1)

输出变量与输入函数的线性关系为:

a41.3710.03

3.162x4.288

x

0.3386

b40.4110.05

3.162x4.288

x

0.2068

c38.5610.18

3.162x4.288

x

0.04893



d37.610.15

3.162x4.288

x

0.1807

e37.610.15

3.162x4.288

x

0.1807



f38.5610.18

3.162x4.288

x

0.04893

g40.4110.05

3.162x4.288

x

0.2068

h41.37

10.03

3.162x4.288

x

0.3386

图6- 30 图6- 31

图6- 32 图6- 33

图6- 34 图6- 35

图6- 36 图6- 37

上左图黄线对应变量不同的取值,右边的输出不同。由右图规则曲面图可以看出,输出量u是四个输入量的非线性函数。曲面越光滑平缓,该系统的性能就越好。

图6- 38 图6- 39

输出函数关系曲线 整体结构图

图6- 40 图6- 41

倒立摆仿真系统小车平衡过程图(之剪截其中两幅)

图6- 42

小车初始参数的设置

图6- 43

小车对方波期望值的跟随情况,方波为小车未知的期望值,红线为小车实际位移

另外还有许多模糊控制方法,只要思路都是考虑到多变量模糊规则的制定,一般采取降维的思路。想通过误差和误差变化率的一阶降维模糊控制方法。还有针对四变量采用双闭环选择性模糊控制和双闭环串联型模糊控制,使每个模糊控制器只有两个变量,便于隶属函数的复杂和模糊规则的简化,其系统框图分别如下。

图6- 44

降维的一阶直线倒立摆模糊控制器结构

图6- 45

双闭环选择性模糊控制系统结构

机械工程试验(II)

图6- 46

双闭环串联型模糊控制系统结构

6.4.3一阶直线倒立摆的PID模糊控制模型

在一阶PID和模糊控制都是闲的基础上,可以很容易想到将模糊控制用来控制PID的三个参数,从而得到模糊PID控制。这里只简述。贴出原理图,模糊PID与PID控制对比仿真图和结果。

图6- 47

图6- 48

机械工程试验(II)

图6- 49 图6- 50

以上分别为小车的输出位移和摆杆角度的比较可知,模糊PID比PID控制具有超调量小,稳定快,且具有更大的鲁棒性等优势。

6.5一阶直线倒立摆的自适应神经模糊模糊控制

模糊控制是一种仿人思维的控制技术,它不依赖于被控过程的数学模型,但是需要专家的先验知识进行近似推理,缺乏在先自我学习和自我调整的能力。而神经网络对环境的变化有极强的自学能力,在建模的方面具有黑想学习模式的特点。MATLAB中的自适应神经模糊系统,是用神经网络理论自动建立Sugeno型模糊型的一个软件(ANFIS),设有专门的指令和图形界面编辑器。

神经模糊网络的任务分解的步骤:

(1) 第一层完成接受变量的任务。

(2) 第二层完成模糊化的任务,把输入的数值转化成模糊量。

(3) 第三层和第四层共同完成模糊推理过程,第三册还能够完成规则的前件,

第四层完成规则的后件。

(4) 第五层完成清晰化的过程,最后输出控制量。

用自适应神经模糊系统建立FIS的步骤:

(1) 打开Anfis编辑器界面,将训练,测试或者检核的数据载入Anfis编辑器。

(2) 生成初始FIS并观察。

(3) 训练初始FIS。训练后的FIS检验。

机械工程试验(II)

图6- 51 图

6- 52

图6- 53 图6- 54

导入数据 装入测试数据后

图6- 55 图6- 56

生成初始FIS的参数对话框,选择默认参数 生成FIS

机械工程试验(II)

图6- 57

一阶倒立摆的控制系统Anfis模型结构图

由上图可知,该系统有四个输入量,一个输出量,覆盖每个输入量的都是16个模糊子集,每条规则都有一个输出,共16个,最终都被清晰化。

图6- 58 图6- 59

初始隶属函数关系曲线 训练后的隶属函数关系曲线

由上图可知训练后x的隶属函数。发现没有什么改变,说明数据本身就是优化的。

机械工程试验(II)

图6- 60 图6- 61

对初始FIS进行训练,训练50次。右图为训练过程中误差的变化。训练过程误差变化。上图表明,经过50刺得训练后,误差为0.0000019062.MATLAB中显示信息:

ANFIS info:

Number of nodes: 167

Number of linear parameters: 80

Number of nonlinear parameters: 128

Total number of parameters: 208

Number of training data pairs: 16

Number of checking data pairs: 0

Number of fuzzy rules: 16

Warning: number of data is smaller than number of modifiable parameters

Start training ANFIS ...

1 1.90623e-006

2 1.9208e-006

Designated epoch number reached --> ANFIS training completed at epoch 2.

图6- 62 图6- 63

训练后的输出函数。线性函数输出规则见圈出内容 模糊规则

机械工程试验(II)

图6- 64 图6- 65

以上两图分别为规则曲线和规则曲面。由图可知,比单纯的模糊控制更光滑,可见控制系统性能更优越。

图6- 66

进行测试检测。通过规则曲线中取值和读数,可知测试前后的收据对比可知,基本符合。

下面两图是模糊控制和神经自适应再方波输入激励下,小车位跟随情况的比较。由图可知,一阶情况下,神经模糊控制具有较大的延时学习期,模糊控制能更好的实现对小车的跟随。但神经模糊在突变时具有较好的连续性。

机械工程试验(II)

图6- 67 图6- 68

7 二阶直线倒立摆的控制

7.1二阶直线倒立摆的线性最优控制(LQR)

7.2.1系统构成

倒立摆系统是由计算机、运动控制模块、伺服机构、倒立摆本体和运动传感器等几大部分组成的一个闭环运动模块构成系统,如图:

图7- 1

位置传感器将小车和各级摆杆的位移、速度信号反馈给伺服驱动器和运动控制模块(其中速度信号和角速度信号由差分获得),计算机从运动控制模块中读取实时数据,确定控制决策,即控制小车的移动位移、移动速度、移动加速度及其方向,并由运动控制器模块来实现该控制决策,产生相应的控制量,使电动机转动,带动小车运动,保持各级摆杆的平衡。倒立摆的驱动部件采用小惯量、带有增量式旋转编码器、有键槽、无制动系统、有油封的交流伺服电动机。倒立摆系统使用与电动机配套的MSDA023A1A型交流伺服电机驱动器。运

机械工程试验(II)

动控制模块是倒立摆伺服系统的核心,他接受光电编码器反馈位置和角度数据,进而求出小车和摆动的速度,根据给定的控制算法计算出控制量,输出后控制小车的运动,并维持倒立摆的平衡。同时,运动控制模块需监控电机运转情况,通过软件实现超速保护。运动控制卡控制交流伺服电动机。通过接口板读入编码器反馈的实际信号,然后差分出速度信号,根据位置和速度信号,通过控制算法解算出控制决策,把速度等控制指令输入功放驱动器,控制交流伺服电机转动。

7.2.2 系统系统建模和仿真

LQR的控制原理见一级直线倒立摆LQR控制在Matlab 中得到最优控制器对应的K 。Lqr 函数允许你选择两个参数R和Q,这两个参数用来平衡输入量和状态量的权重。最简单的情况是假设R = 1,Q=C‘*C。当然,也可以通过改变Q 矩阵中的非零元素来调节控制器以得到期望的响应。系统的非线性是固有的,片面追求系统的线性行为是不合理的,重要的是使采用线性模型设计的控制器能够克服系统非线性来适应对应参数的变化,并具有一定的鲁棒性。最终综合考虑了各项因素,选择:Qdiag10

计算得: K10.000071.3736294.88079.[1**********],R0.1,26.382541.0117

其Simulink仿真框图如图

:

图7- 2

机械工程试验(II)

图7- 3

图中设置的Subsystem模块其内部结构图为如下图所示:

机械工程试验(II)

图7- 4

系统初始化状态为:x0,10.1,20,仿真结果如下图所示:

图7- 5小车位移 图7- 6小车速度

图7- 7上摆杆角位移 图7- 8上摆杆角速度

图7- 9下摆杆角位移 图7- 10下摆杆角速度

图7- 11总体仿真曲线

LQR控制器可以对倒立摆进行有效的控制,达到期望的目的。通过多次仿真,还可得出:Q不变而R减小时,系统的调节时间与超调量减小,但稳态误差增大;当R不变而Q变大时,调节时间与超调量减小,摆杆的角度变化也同时减小,但稳态误差同时增大;当Q和R的变化与上述两种情况相反时,结论也相反。当Q和R阵太大时,系统会丧失稳定性。在控制系统设计中,Q和R的选取应根据上述规律并结合实际情况协调进行。

7.2二阶直线倒立摆的极点配置法

为了使系统有较好的稳态响应和瞬态响应特性,通过反复仿真最终选取闭环极点为:

K4.8645

32i20.63096789得反馈增益阵为: 8.323713.4054 96.95830.6991

其Simulink仿真框图和LQR一样,只是通过选取闭环极点,反求出状态方程,再求出反馈增益阵。便于对比,选取和LQR一样的初始参数:x

200,10.1 ,,仿真结果如下图所示:

图7- 12小车位移 图7- 13小车速度

图7- 14上摆杆角位移 图7- 15上摆杆角速度

图7- 16下摆杆角位移 图7- 17下摆杆角速度

图7- 18总体仿真曲线

经过多次仿真可知,极点配置法可以对倒立摆这样的不稳定系统进行有效的控制,稳态性能较好。当选择的主导极点离虚轴较远时,系统的过渡时间短,但所需的控制力较大,反之,离虚轴较近时,系统的过渡时间长,所需的控制力较小;当主导极点确定后,其余极点应远离主导极点,也就是其余极点实部最小的也要大于主导极点实部的2-3倍以上,其距离主导极点远,系统的过渡时间短,超调量变大,所需的控制力也较大。

7.3二阶直线倒立摆的线性最优控制(LQY)

与LQR控制方法相比,LQY控制方法的Qy,Ry不是对状态向量X(k) ,控制向量u(k)引起的性能度量的相对重要性进行加权,而是对输出向量Y(k)、控制向量u(k)引起的性能度量的相对重要性进行加权。

其状态反馈调节节律的形式为: u(k)KfX

T

(k)(f) 此时可通过使性能指标函数:Jy[Y

k1QyY(k)u(k)Ryu(k)]为最小,可求得

Kf(HTSHRy)1(HTSG)

其中,S由下列黎卡提方程获得:

SGSTGSH(HSHRy)TTT1HTSGCQYC T

Qy,Ry分别用来对输出向量Y(k)、控制向量u(k)引起的性能度量的相对重要性进行加权。

取:Qdiag[q1,q2,q3,q4,q5,q6]diag[[**************]],R=1,

同理可用MATLAB中lqr()函数求出出输出反馈增益矩阵Ky,

Kf[207.8435420.332370.71071.039163.980957.5636]

组成最优控制理论的LQY调节器。令系统初值为

X[0.050.050.1000],可得仿真结果如图所示:

T

图7- 19二阶倒立摆LQY最优控制仿真结果图。

看出,小车位置x和摆杆角度1,2的稳定时间约为2s,小车的位置x的上升时间小于0.5s,摆杆角度的最大超调量约为(0.157)rad。与LQR控制结果相似,说明其可行。

7.3二阶直线倒立摆的模糊控制

二级倒立摆系统有3 个控制目标:摆杆1 的角度θ1 、摆杆2 的角度θ2 和小车的位移x 。由于二级倒立摆具有高阶次、不稳定、多变量、非线性和强耦合的特性,采用传统的模糊控制一般存在以下问题:随着模糊控制器输入数目的增多,模糊规则呈指数上升;模糊规则难以设定;变量之间存在耦合使得因子设定困难.

再熟悉了模糊控制的方法的基础上,如果我们设计3 个子目标模糊控制器:两个角度子模糊控制器保证摆杆1 、2 快速稳定在铅垂位置, 其输入为角度误差和角速度误差;位置子模糊控制器使小车在一定范围内移动,最终稳定在x = 0 处,其输入为位置误差和位置速度

误差。这种动态加权控制方法符合人们的直觉经验,线路设计清楚易懂,规则设计简单明了,每个控制器只需较少的规则就可达到较好的控制效果,且保证了控制的实时性。

对倒立摆的摆杆1 的角度θ1 和角度变化率θ1′;摆杆2 的角度θ2 角度变化率θ2′; 小车的位移x 和小车运动的速度x′及控制量ui 的模糊集及其论域定义如下:

θ1 ,θ1′,θ2 ,θ2′的模糊集均为{ ne ,ze ,po} ; x , x′的模糊集均为{ ne ,po} ; ui 的模糊集均为{ nl ,nm ,ze ,pm ,pl} 。 x 的论域为[ - 5 ,5 ] , x′的论域为[ - 11 ,11 ] ,θ1的论域为[ - 0. 8 , 0. 8 ] , θ1′的论域为[ - 2 , 2 ] , θ2的论域为[ - 1 ,1 ] , θ2′的论域为[ - 4 ,4 ] , u1 的论域为[ - 45 ,45 ] , u2 的论域为[ - 80 , 80 ] 。控制结构如图2所示,其中, x0 ,θ10 ,θ20为给定值。

这里角度和定位子模糊控制器及权重模糊调节器都采用简单的结构。输入变量都采用三角形隶属函数,其中位置及权重模糊调节器采用Sugeno 型模糊系统,参见文献[7 ] 。其控制器的输出, 即系统的控制量U 为:U = ( kb1 + B1Δk1) U1 + ( kb2 + B2Δk2) U2 +( kb3 + B3Δk3) U3 (2)其中: kb1 和Bi 可根据经验或试凑法得到,还可以通过优化算法获得。

图7- 20动态加权模糊控制系统结构

图7- 21仿真结构图。

理论上上述方法应该是可行的,由于时间的关系,还有不知道哪里出错了,实验失败了结果一直放着仿真不出来。尝试失败。

8 实验创新拓展

8.1 一阶直线倒立摆的2种起摆控制

8.1.1 能量反馈法

倒立摆的起摆问题,也是控制理论中的一个经典实验。当采用系统摆动能量作为输出量时,系统的输入量与输出量之间是非线性的,因而许多常用的线性控制理论都不适用。一般采用能量反馈的方法来完成倒立摆的起摆控制。首先,取倒立摆自然静止状态为初始状态。

此时,0摆从最低位置摆到最高位置,且速度减小到),所需的摆动能量为令:

则在任意角度,摆的能量为:, 由于摆和小车共同组成的系统受到小车的行程和电机特性限制,不可能一开始就获得的摆动能量,只有通过能量反馈,不断调整小车的加速度,使摆的摆动能量逐次增加,最终达到设定值。能量反馈表达式为:

Ke为能量反馈系数,经过多

次试验后确定: Ke=30。倒立摆相对于初始位置有四种不同的运动状态,如下:1

2 )

3 )

4 )

倒立摆的起摆分为以下几个阶段:

阶段一:给倒立摆系统一个初始加速度,由于惯性的原因,摆杆会向另一个方向摆动,这时符合状态;

阶段二:当倒立摆摆到一定高度后,又往回摆,最终回到初始位置。但此时速度不为0,小车也回到起始位置附近,属于状态2,3;

阶段三:考虑到小车受到位置限制,在处再次对倒立摆系统施加能量,具体方法是给小车一个加速度。使得摆在初始位置时的速度增大,从而使倒立摆的摆动幅度增大。在第二阶段,可测出倒立摆的由此可以得到小车加速度,第三阶段,采用上一阶段得到的w 作为小车新的加速度,这样,第二,第三阶段反复交替。当倒立摆的摆幅达到0 时,即摆到最高位置时,倒立摆的控制进入稳态控制。平衡之后可采用LQR等方法进行平衡控制。于是提出了切换控制的概念。

图8- 1 图8- 2 图8- 3

图8- 4一阶倒立摆的起摆控制

图8- 5此处应该截取实验图像

8.2.1 基于共振原理的起摆控制

由物理学可知,当加在振子上的周期性外力的频率等于振子的固有频率时,会产生共振。 针对倒立摆这样一个典型的非线性系统,不但在外力的驱动频率接近系统的固有频率时会产生共振,称为主共振。当驱动频率远离系统的固有频率,但两频率之间呈一定的比值,此时也会发生共振,称为次共振。可以激发非线性系统使其产生主共振,即可实现倒立摆的摆起控制。且相对于激发次共振所需的条件,激发主共振的条件更易实现,所需外力频率更容易得到,即只需施加一周期外力,使其频率等于振子的固有频率。

w为驱动力的角频率由物设驱动力有如下形式FF0coswt式中F0为驱动力的幅值,

理学知识,倒立摆摆杆的固有频率近似为w03g4L只考虑主共振,取驱动力频率为ww0其中,为微小量,其中F0的选取直接影响小车的运动范围xmaxxmin,即由于实际倒立摆系统的导轨长度d 是有限制的,通常为1米左右,因此xmaxxmind。

此外,还可以采用采用Bang-Bang控制器来实现。这里我只看到了,没有深入学习。

8.2 二阶直线倒立摆的起摆控制研究

协调好小车与下摆(第一级摆)以及上摆(第二级摆)相互间的关系是解决小车二级摆控制问题的关键。特别要指出的是,如何在摆起倒立运动中,始终保持好两个摆杆之间适当的相对姿态十分重要。在整个摆起倒立控制过程中,可将控制过程划分为四个阶段:初始运动阶段(为控制提供一定的初始速度,并利用有限的水平可移动距离[本实验中为±0.3 米]);姿态整定阶段(使两级摆之间相对角度较小并具有适当的相对运动趋势);摆起阶段(使近似为单摆的两级摆摆起到达稳摆区域内);稳摆倒立阶段。

图8- 6 图8- 7

在摆起阶段,摆杆位于转轴水平线上方时(如图2.(b)所示),如小车受力向左(负向)移动,摆杆将获得一个顺时针转动的加速度;如小车受力向右移动,摆杆将获得到一个逆时针转动的加速度;而摆杆位于转轴水平线下方时(如图2.(a)所示),情况刚好相反,小车如果受力向左移动,摆杆将获得一个逆时针转动的加速度,如小车受力向右移动,摆杆将获得一个顺时针转动的加速度。因此,当摆杆分别位于转轴上方和下方时,将分别施加不同的控制作用。两级摆杆之间的耦合使二级摆系统的控制得以实现,但同时又多了一层对两摆运动的协调控制任务。当小车受力左移时,上级摆将获得一个逆时针转动的加速度,而下级摆由于两端受约束,其运动方向取决于车摆间的耦合和上、下摆间的耦合作用关系,如前者为主,则下摆获顺时针转动的加速度,反之,则下摆获逆时针转动的加速度。

综上所述,我们可依据小车二级摆系统在摆起倒立过程中,不同阶段控制的任务目标按以下方式分别确定所需要的动觉智能图式,进而建立起仿人智能控制器

(1) 初始运动阶段:由于水平轨道受限,因此施加较小的力使小车向一端运动以充分利用小车轨道;

(2) 姿态整定阶段:使两摆杆之间夹角减小呈一直线,且在摆起过程中两摆杆运动基本同步;

(3) 摆起阶段:使摆杆获得足够能量进入稳摆阶段。

(4) 稳摆阶段:在姿态整定阶段中,一旦两摆杆位置靠近倒立点,且转动速度接近于0,可采用LQR 控制,使摆杆稳定在倒立位置。

直线倒立摆系统的自动控制实验报告 第 51 页 共 62 页

图8- 8二阶倒立摆的起摆控制框图

8.3 三阶倒立摆的建模分析研究

三级倒立摆系统的分析示意图如图所示。三级倒立摆系统非常复杂,如果用力学理论来建立其数学模型非常困难,于是这里采用另一种方法。由于小车与倒立摆之间力的传递是通过铰链连接实现的,正是这种关系,外加控制力F3 才能通过它施加于摆L3上。 为简化起见,引入 等效小车系统的概念。 所谓等效小车是将二级倒立摆系统看成是一个整体,视为一个小车,称之为/等效小车。这里的等效小车是由整个二级倒立摆系统组成,这样就可以采用相平面分析来分析三级倒立摆系统。

于是可得出三级倒立摆系统的控制规律为:



F3k1xk2xk31k41k52k62k73k83

式中ki(i1,2,8)为待定常数,可以通过参数估算或者实验确定。i分别为第i级

倒立摆的角度,x为小车位移。

图8- 9三级倒立摆系统的分析示意图

8.4 一阶倒立摆PID防撞控制的探索

在做实验的运行过程中,我我们发现,在实际运行中,发现如果作用力太大,或者干扰

机械工程试验(II)

实验意义

在控制理论发展的过程中,某一理论的正确性及实际应用中的可行性需要一个按其

理论设计的控制器去控制一个典型对象来验证。倒立摆就是这样一个被控制对象倒立摆系统是一个多变量、快速、非线性和自然不稳定系统。在控制过程中能有效地反映控制中的许多关键问题,如非线性问题系统的鲁棒性问题,随动问题镇定问题,及跟踪问题等。倒立摆系统作为一个实验装置形象直观结构简单,构件组成参数和形状易于改变,成本低廉,倒立摆系统的控制效果可以通过其稳定性直观地体现,也可以通过摆杆角度小车位移和稳定时间直接度量,其实验效果直观显著,当新的控制理论与方法出现后,可以用倒立摆对其正确性和实用性加以物理验证,并对各种方法进行快捷有效生动的比较。

早在60 年代人们就开始了对倒立摆系统的研究1966 年Schaefer 和Cannon 应用Bang Bang控制理论将一个曲轴稳定于倒置位置在60 年代后期作为一个典型的不稳定严重非线性证例提出了倒立摆的概念并用其检验控制方法对不稳定非线性和快速性系统的控制能力受到世界各国许多科学家的重视从而用不同的控制方法控制不同类型的倒立摆成为具有挑战性的课题之一倒立摆的种类很多有悬挂式倒立摆平行倒立摆环形倒立摆平面倒立摆倒立摆的级数可以是一级二级三级四级乃至多级倒立摆的运动轨道可以是水平的还可以是倾斜的(这对实际机器人的步行稳定控制研究更有意义) 控制电机可以是单电机也可以是多级电机。倒立摆的研究具有重要的工程背景:

(1) 机器人的站立与行走类似双倒立摆系统尽管第一台机器人在美国问世至今已有三十年的历史机器人的关键技术机器人的行走控制至今仍未能很好解决

(2) 在火箭等飞行器的飞行过程中为了保持其正确的姿态要不断进行实时控制

(3) 通信卫星在预先计算好的轨道和确定的位置上运行的同时要保持其稳定的姿态使卫星天线一直指向地球使它的太阳能电池板一直指向太阳

(4) 侦察卫星中摄像机的轻微抖动会对摄像的图像质量产生很大的影响为了提高摄像的质量必须能自动地保持伺服云台的稳定消除震动

(5) 为防止单级火箭在拐弯时断裂而诞生的柔性火箭(多级火箭) 其飞行姿态的控制也可以用多级倒立摆系统进行研究。由于倒立摆系统与双足机器人火箭飞行控制和各类伺服云台稳定有很大相似性因此对倒立摆控制机理的研究具有重要的理论和实践意义。

2 倒立摆控制理论研究现状

对倒立摆这样的一个典型被控对象进行研究无论在理论上和方法上都具有重要意义不仅由于其级数增加而产生的控制难度是对人类控制能力的有力挑战更重要的是实现其控制稳定的过程中不断发现新的控制方法探索新的控制理论并进而将新的控制方法应用到更广泛的受控对象中各种控制理论和方法都可以在这里得以充分实践并且可以促成相互间的有机结合当前倒立摆的控制方法可分为以下几类:

1 经典控制理论的方法

一级倒立摆系统的控制对象是一个单输入两输出的非最小相位系统,它提供了用经典控制理论解决单输入多输出系统的控制方法。根据对系统的力学分析,应用牛顿第二定律,建立倒

立摆非线性的运动方程,并进行线性化,拉氏变换,得出传递函数,从而得到零、极点分布情况,根据使闭环系统能稳定工作的思想设计控制器。为此,需引入适当的反馈,使闭环系统特征方程的根都位于左平面上。用经典控制理论的频域法设计非最小相位系统的控制器并不需要十分精确的对象数学模型,因为只要控制器使系统具有充分大的相位裕量,就能获得系统参数很宽范围内的稳定性。但是,由于经典控制理论本身的局限性,它只能用来控制一级倒立摆,对于复杂的二级、三级倒立摆却无能为力。

2 现代控制理论的方法

用现代控制理论控制倒立摆的平衡,主要是用H 状态反馈来实现的。H 状态反馈控制是通过对倒立摆物理模型的分析,建立倒立摆的数学模型,再用状态空间理论推出状态方程,然后利用H 状态反馈和Kalman滤波相结合的方法,实现对倒立摆的控制。而文献[4]中采用三种状态反馈的方法来设计倒立摆的控制器,即极点配置调节器的方法、LQR最优调节器的方法和LQY最优调节器的方法,并对其实验结果进行了比较,结果表明,三种方法来控制一级倒立摆都是有效的。现代控制理论的方法控制倒立摆,不仅对一级倒立摆可以成功地控制,二级倒立摆的控制效果也不错。

3 智能控制理论的方法

由于倒立摆是一个多变量、非线性、不稳定、强藕合的复杂系统,尽管理论上的一级、二级倒立摆数学模型已经推导出来,但其数学模型很难精确地反应实际系统,所以用经典控制理论和现代控制理论的方法控制倒立摆都不是特别理想,国内外学者对倒立摆的研究集中在智能控制领域。

4 用模糊控制理论控制倒立摆

用模糊控制理论控制倒立摆是智能控制算法中研究最多的一种。大量的实验表明,用模糊控制的方法控制一级、二级倒立摆是非常成功的。模糊控制是采用模糊化、模糊推理、解模糊等运算的模糊控制方法,其主要工作是模糊控制器的设计.

5 用神经网络控制理论控制倒立摆 业已证明,神经网络(Neural Network, NN)能够任意充分地逼近复杂的非线性关系,NN能够学习与适应严重不确定性系统的动态特性,所有定量与定性的信息都等势分布存贮于网络内的各种神经元,故有很强的鲁棒性和容错性。用神经网络方法来实现倒立摆的平衡控制,迄今已经取得了不少成果。

6 模糊控制与神经网络控制相结合控制倒立摆 模糊神经网络控制器控制倒立摆,主要是利用网络的自学习功能,不断修正模糊神经网络控制器的隶属函数和权值,实现模糊控制规则的自动更新,从而解决了模糊控制的自学习、自调整问题,提高了控制精度。

7 神经网络与遗传算法结合控制倒立摆

基于遗传算法学习的神经网络方法在控制倒立摆,以神经网络为基础,用遗传算法来学习神经网络的权系数,既保留了遗传算法的强全局随机搜索能力,又具有神经网络的鲁棒性和自学习能力,能够取得较好的控制效果。

8 神经网络与预测控制算法相结合控制倒立摆

预测控制是工业过程控制领域发展起来的一种计算机控制算法。该算法不基于对象的精确的数学模型,而是建立在对象非参数模型基础上,既具有优化功能又引入了系统的反馈信息。基于神经网络模型的预测控制算法用于倒立摆的平衡控制,首先用前向神经网络描述对象的输入输出关系,根据此关系可计算预测出系统在未来某时刻的输出值,从而得到未来某时刻系统的误差,根据此误差确定系统的目标函数,然后设计在线的优化算法实时解决下一时刻的控制量。

9 用拟人智能控制的方法控制倒立摆

拟人智能控制的核心是“广义归约”和“拟人”。“归约”是人工智能中的一种问题求解方法。这种方法是将待求解的复杂问题分解成复杂程度较低的若干问题集合,再将这些集合分解成更简单问题的集合,依此类推,最终得到一个本原问题集合,即可以直接求解的问题。另一核心概念是“拟人”,其含义是直接利用人的控制经验直觉以及推理分析形成控制规律。

10 用云模型控制倒立摆

用云模型构成语言值,用语言值构成规则,形成一种定性的推理机制。这种方法不要求给出对象的精确的数学模型,而仅依据人的经验、感受和逻辑判断,将人用自然语言表达的控制经验,通过语言原子和云模型转换到语言控制规则器中,就能解决非线性问题和不确定性问题。

3 一阶二阶倒立摆系统介绍

倒立摆作为一种自动控制教学实验设备,能够全面地满足自动控制教学的要求。许多抽象的控制概念如系统稳定性、可控性、系统收敛速度和系统抗干扰能力等,都可以通过倒立摆直观的表现出来。倒立摆的控制技巧,极富趣味性,很适合学习自动控制课程的学生使用它来验证所学的控制理论和算法,加深对所学课程的理解。基于DSP的旋转式倒立摆系统的最大特点是机械结构简单、可*,成本低廉、体积小,是高等院校理想的自动控制教学的实验设备。

3.1 直线倒立摆系统

直线倒立摆系统 如图1所示,它由四个部分组成:倒立摆、小车、轨道和电机。小车受电机的操纵,可以自由地在限定的轨道上左右移动,轨道有水平轨道和倾斜轨道两种。倒立摆一端通过铰链连在小车顶部,可以在一个平面内自由摆动。对电机的控制是通过控制电压使在水平方向产生控制力。在倒立摆的另一端再铰链摆杆2、摆杆3、摆杆4,即可构成二级、三级、四级倒立摆。控制目的是:小车和摆组成的系统在受到干扰后,小车处于轨道的中心位置,摆杆保持垂直位置。

图3- 1

二级倒立摆系统运动分析示意图如图2所示。其机械部分主要由小车,下摆,上摆,导轨,皮带轮,传动皮带等构成,控制对象由小车!下摆!上摆组成,电气部分由电机!晶体管直流动率放大器!传感器以及保护电路组成。

假设条件,上下摆及小车都是刚体,皮带轮与皮带之间无相对滑动,传动皮带无伸长现象,小车的驱动力与直流放大器的输入成正比,且无滞后,忽略电机电枢绕组中的电感,小车运动时所受的摩擦力正比于小车的速度,下摆转动时所受的摩擦力矩正比于下摆的转动速

度,上摆速度所受的摩擦力矩正比于上摆对下摆的相对角速度。

图3- 2

4 固高倒立摆系统试验平台介绍及相关参数

固高科技有限公司开发的直线运动倒立摆系列产品采用开放的控制解决方案和模块化的实验平台,以直线运动模块为基础平台,可以轻松的构建10多种控制教学实验平台,全方位满足控制教学和研究的需要。在自动控制领域中,倒立摆仿真或实物控制实验,已成为检验一个新的控制理论是否有效的试金石,同时也是产生一个新的控制方法必须依据的基础实验平台。为全方位满足控制教学和研究的需要,固高科技采用开放的控制解决方案和工业化、模块化的机械结构研发出了一系列倒立摆实验设备。

图4- 1

非常好的用户开放功能,用户可以根据自己设计实现其他控制方法。

图4- 2

系统物理模型和参数

图4- 3 图4- 4

表4-1:一阶直线倒立摆的参数符号,数值和含义

5 一二阶直线倒立摆的建模分析

倒立摆建模的方法一般有两种,牛顿力学和拉格朗日法。牛顿力学主要采用受力分析的

原理,二拉格朗日主要是通过对能量含输球偏导得到系统的空间状态方程。下面我们用牛顿法对一阶倒立摆进行建模分析,用拉格朗日法对二阶直线倒立摆进行建模分析。并且对其状

态方程进行稳定性,可观性,可控性进行分析判断,为后面采取不同的控制方法做好准备工作。

5.1 一阶直线倒立摆的建模分析

5.1.1 一阶直线倒立摆的状态方程的建立

图5- 1 图5- 2

忽略掉一些次要因素后,倒立摆系统就是一个典型的运动刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程,对倒立摆系统进行机理建模。

在忽略了空气阻力, 各种摩擦之后, 可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统F的作用下,小车及摆均产生加速运动,根据牛顿第二定律,在水平直线运动方向的惯性力与F平衡和绕摆轴旋转运动的惯性力矩应与重力力矩平衡,我们可以得到下面运动方程:

cosml2sinFml(Mm)xbx(Iml

2

mglsinml)xcos

(5-1)

ddt)

2

设,1,进行近似处理:cos1,sin,(0。用u

来代表被控对象的输入力F,对式(5-1)进行线性化后得到下面两个运动方程:

mlu(Mm)xbx(Iml

2

mglml)x

(5-2)

整理后得系统的状态方程如下:

AXBuXYCX

(5-3)

其中:

0

0A

00

1(Iml)bI(Mm)Mml

0mlb

I(Mm)Mml

22

2

0mgl

2

2

2

I(Mm)Mml

0mgl(Mm)I(Mm)Mml

2

0010

0

2

Iml

I(Mm)Mml2

B

0

ml2I(Mm)Mml

,C

10

00

01

00

x1x

x2x

X

x3x4

带入固高系统固件的相关参数,可化简为:

5.1.2 直线一级倒立摆系统的性能分析

1) 稳定性

系统的稳定性由系统矩阵A的特征值是否均具有负实部来判断。令IA0,系统的开环特征值(0,-0.7412, 0.3264±0.2352i),即系统不稳定。 2) 能控性

系统能控的充要条件是:rank[A,AB,„,An-1B]等于矩阵A的维数 rank[A,AB,„,An-1B]=rank[A] =4 即,系统能控。 3) 能观性

系统能观的充要条件是:rank[C,CA,„,CAn-1]-T等于矩阵A的维数 rank[C,CA,„,CAn-1]-T=rank[A]=4 即,系统能观。

经过如上分析可知,直线一级倒立摆是能控能观的不稳定系统。

5.2 二阶直线倒立摆的建模分析

图5- 3 图5- 4

下列推导过程中,各物理意义为以前所述。利用拉格拉日方程推导倒立摆运动学方程为:

)T(q,q)V(q,q) (q,q

其中,为拉格拉日算子;q为系统的广义坐标;T为系统的动能;V为系统的势能。拉格拉日方程广义坐标为qi和表示为:

didtq

qi

fi

其中,i1,2,3,n;fi为系统沿该广义坐标方向上的外力,在该系统中,设系统的三个广义坐标分别是X, 1,2。

系统的能量方程为: TTMT式中,TM为小车的动能;T能。 TM

12

m1

m1

T

m2

T

m

为质量块的动

为摆杆1的动能;T

2

m2

为摆杆2的动能;T

m

 TMx



TTm1m1m1

Tm2Tm2

其中,Tm1为摆杆1质心平动动能;Tm1为摆杆1绕质心转动动能。T其中,Tm2为2摆杆质心平动动能;Tm2为摆杆2绕质心转动动能。

d(xl1sin1)2d(l1cos1)21

Tm1m1(()())

2dtdt12m1x

2

m2



122

1m1l1xm1l11

2

2

Tm1

12

J11



1112222

(m1l1)1m1l11 23612m1x

2

Tm1Tm1T

m1

22

1cos1m1l1xm1l11

3

同样可以求出:

d(x2l1sin1l2sin2)2d(2l1cos1l2cos2)211

Tm2m2()m2()

2dt2dt1

1222l11cos1l22cos2)m2(xm2(2l11sin1l22sin2)

22

Tm2

12

J22

2

1112222

(m2l2)2m2l22 236

Tm2Tm2T

m2

12

m2x

2

22

2m2l11m2l22

3

l11cos1m2xl22cos22m2l1l212cos(21)2m2x

因此,可以得到系统的动能为:

TTMTm1Tm2Tm(

2

12

(Mm1m2m)x

2

l11cos1m2xl22c(m12m2m)x

1)

22222

m12m22m)l11m2l222m2l1l221cos(33

2

系统的势能为:

VVm1Vm2Vmm1gl1cos12mgl

1

cos1m2g(2l1cos1l2cos2)

至此拉格拉日算子:

TV

12

(Mm1m2m)x

2

1cos1m2xl22cos2(m12m22m)l1x(

2

22222

m12m22m)l11m2l222m2l1l212cos(21)33

2

(m12m22m)gl1cos1m2glcos2

由于在广义坐标1,2上无为力作用,X上的外力为控制力F,故有以下等式成立

ddt1ddt2

12

0

0

ddtx

4312

x

F

展开以上三式,可得到一下两个方程:

2

mlm1l1xcos1m1gl1sin10 111

cosml2sinF (Mm1)xm1l1111111

写成矩阵的形式:

a11a21a31

a12a22a32

a13

1

a23

2a33xb1



b2 

b3

1

记为:A1

2x

B1。 

2

a11(

43

m14m24m)l1

a122m2l1l2cos(21) a13(m12m22m)l1cos1

a212m2l1l2cos(21)

a22

43

m2l2

2

a23m2l2cos2

a31(m12m22m)l1cos1 a32m2l2cos2 a33Mm1m2m

2

b12m2l1l22sin(21)(m12m2m)gl1sin1

2

b22m2l1l21sin(21)m2gl

2

sin2

22

b3F(m12m22m)l11sin1m2l22sin2

,F取倒数,在平衡位置(qq0)处进行泰勒级数展开,并线性将此方程组对q,q

化得

A11

0qq

1

2

xA11



0qq

A1

0qq

1

1

2x



0qq

B11

0qq

易求得:

0qq

0;

B11

0qq

m12m22mgl1

00

 

A1

0qq

42

(m14m24m)l132m2l1l2

(m12m22m)l1

0qq

2m2l1l24m2l2

2

(m12m22m)l1

m2l2

Mm1m2m

3

m2l2

; 

记得:A(A1

12x



)

1

,则

 

1

0qq

(m12m22m)gl1k11



A0k21

0k31

k11

(Mm1)g43

Mm1l1

2

13

,k21

2

2

m1g

43

Mm1l1

2

其中C:同理:

A1x

0qq

m1l1

13

m1l1

22

A11

0qq

A12

0qq

A12

0qq

A1x

0qq

A1F

0qq

0;

B12

0qq

0

m2gl000 1B11

2

 

B1F

0qq

B1x

0qq

0qq

B12

0qq

B1x

0qq

0;

可解得:

2

1

2x



0qq

0



Am2gl

0

2

k12k22k32



 

1

2

x

x



1

2x

x



0qq

1

2

1

x

0qq

1

2

2

x

0qq0qq

0

1

2

F

x



0qq

0k17



A0k27

1k37

 

系统控制量uF,取状态变量如下:

x11,x22,x3x,  x41,x52,x6x

则可得到状态空间方程如下:

1x

x2x3x4x56x

0

00k11k

21

k31

000k12k22k32

000000

100000

 

010000

0x1

0x21x30x40x50x60



00k17k

27

k37

u 

Y[I3*3

x1

o3*3]Xx2

x3

0

00

即:A

000

0000k12k22

0000k13k23

100000

010000

00

00

01,B0k17

k027

0k37

1,C00

010

001

000

000

0

0,D0 0

带入数据后的系统的状态方程为:

将各参数代入系统方程,可得

k1286.69,k1321.62,k2240.31,k2339.45 k171,k276.64,k370.088

即:

000A

000

000086.6940.31

000021.6239.45

100000

010000

00

00

10,B01

6.640

00.088

1,C00

010

001

000

000

0

0,D00

rank[BABABABABAB]0

00

rank

5.13490.07410.7501

5.13490.07410.7501000

000547.0731254.971513.1031

547.0731254.971513.1031

000

00063666389621400

38962

1400

60

0

063666

2

3

4

5

而:

C

rank

CA100

rank

000

010000

001000

000100

000010

0C

0CA

2

CA0

6rank30CA

CA40

51CA



C

CA

2

CA

故,rank3

CACA45CA



6 

系统完全能控,完全能观测。

6 一阶直线倒立摆的控制

6.1 一阶直线倒立摆的PID控制

PID控制的原理是通过反馈回路,对偏差e(t) 进行比例、积分、微分运算,运算的和决

定控制器的输出,其数学表达式为:

t

u(t)Kpe(t)Kie(t)dtKd

de(t)dt

其中Kp、Ki、Kd为比例、积分、微分运算的系数。 系统控制的结构框图为:

图6- 1

系统的开环传递函数为

PID控制器的传递函数为:

系统的闭环传递函数为:

G(s)KD(s)1G(s)KD(s)

采用试凑法调整Kp、Ki、Kd的值,在时域内观察闭环系统的单位阶跃响应,直至效果满意为止。

在matlab中进行命令行仿真:

clear;clc;

M=1.096;m=0.109;b=0.1;l=0.25;I=0.0034;g=9.8; q=(M+m)*(I+m*l^2)-(m*l)^2; a=m*l;b1=I+m*l^2;b2=-m*g*l;

Num1=[a];Den1=[b1,0,b2];Gs1=tf(Num1,Den1); Kp=40;Ki=35;Kd=10;

Num2=[Kd,Kp,Ki];Den2=[1,0];

Gs2=tf(Num2,Den2);Gs3=series(Gs2,Gs1); Gs=feedback(Gs3,1) step(Gs,t); plot(t,y,'r')

图6- 2

调整PID的三个参数,在调整PID参数的过程中,得到三个参数变化对系统的影响:

(1)当Kp=20,Ki=60,Kd=5时:

图6- 3

可以发现,超调量很大,并且有振荡。

(2)增大Kp为40 ,减少Ki为35 ,增大Kd为10:

图6- 4

可以发现,效果比之前要好很多,继续试验并调整PID的三个参数,可以发现当Kp=60;Ki=35;Kd=11 时系统能兼顾快速性、稳定性。其单位阶跃响应为:

图6- 5

注:以上并不代表真实试验顺序,因为是在不断试验中,总结出三个参数各自对试验结果的影响,况且试验次数太多,难以一一列举,故以上面例子代表实验过程。

6.2一阶直线倒立摆的极点配置法

由系统分析可知,系统具有不稳定的极点,可以通过自己设计,添加极点来是系统稳定。对车载倒立摆的伺服系统进行设计,实现对其的控制作用,使小车位置作为输出的闭环系统具有极点:1j3,5,5,5倒立摆系统可利用极点配置方法进行设计,实际是在前向通道引入一积分器,对输出y也即小车位置进行积累作用,如图2.2所示。 图6-6

此时系统具有指定的性能,如本例指定的极点1j3,5,5,5,可使系统具有设置时间4——5秒,最大超调量15%——16%。

%不含积分环节的伺服系统,对小车倒立摆的控制 %系统模型

a=[0 1 0 0;20.601 0 0 0; 0 0 0 1;-0.4905 0 0 0]; b=[0;-1;0;0.5]; c=[0 0 1 0]; d=[0];

a1=[a zeros(4,1);-c 0]; b1=[b;0];

% 系统可控性检查

disp('The rank of controllability matrix') rc=rank(ctrb(a1,b1))

% 设计极点

p=[-1+sqrt(3)*i -1-sqrt(3)*i -5 -5 -5]; k=acker(a1,b1,p)

% 系统阶跃响应输出

k1=k(1:4) ki=-k(5)

ac=[a-b*k1 b*ki;-c 0]; bc=[0 0 0 0 1]'; cc=[c 0]; dc=[0]; figure(1)

v=[0 5 -0.4 1.4]; step(ac,bc,cc,dc) axis(v)

title('µ¹Á¢°ÚϵͳÊä³öµ¥Î»½×Ô¾ÏìÓ¦') xlabel('Ãë')

ylabel('Êä³ö y=x3 ') text(1.5,0.6,'ÏìÓ¦ÇúÏß') figure(2)

[y,x,t]=step(ac,bc,cc,dc); plot(t,x) axis(v)

title('x1,x2,x3,x4,x5 ÏìÓ¦ÇúÏß') xlabel('Ãë')

ylabel('x1,x2,x3,x4,x5') text(1.2,0.05,'x1') text(1.2,-0.33,'x2') text(4.5,0.9,'x3') text (2.2,0.25,'x4') text(4.5,1.15,'x5')

The rank of controllability matrix rc = 5

k = -157.6336 -35.3733 -56.0652 -36.7466 50.9684 k1 = -157.6336 -35.3733 -56.0652 -36.7466 ki = -50.9684

Simulink仿真

图6- 7

添加极点

图6- 8

图6- 9 图6- 10

6.3一阶直线倒立摆的线性最优控制

6.1中所述的PID 控制只能控制摆杆的角度,并不能控制小车的位置,为了在控制摆杆

角度的同时,同时也控制小车的位置,这需要一个单输入(小车加速度),多输出(小车位置和摆杆角度)的控制器,因为我们已经得到系统的状态方程,可以采用线性二次最优控制的方法对其进行控制。

线性二次最优控制LQR 基本原理为,由系统方程:

.

XAXBu

确定下列最佳控制向量的矩阵K:u(t)=- K* x(t),使得性能指标达到最小值:

J

(XQXuRu)dt

**

LQR控制的原理图为:

图6- 11

方程右端第二项是考虑到控制能量的损耗而引进的,矩阵Q和R确定了误差和能量损耗的相对重要性。并且假设控制向量u(t)是无约束的。 对线性系统:

根据期望性能指标选取Q和R,利用MATLAB 命令lqr就可以得到反馈矩阵K的值。

K=lqr( A,B,Q,R)

改变矩阵Q 的值,可以得到不同的响应效果.

LQR 控制参数调节及仿真前面我们已经得到了直线一级倒立摆系统的系统状态方程。

在Matlab 中得到最优控制器对应的K 。LQR 函数允许你选择两个参数R和Q,这两个参数用来平衡输入量和状态量的权重。最简单的情况是假设R = 1,Q=C‘*C。当然,也可以通过改变Q 矩阵中的非零元素来调节控制器以得到期望的响应。

6.3.1 求矩阵K

输入的权重R 是1。下面来求矩阵K,Matlab 语句为K = lqr(B A Q R) 。 下面在MATLAB中编程计算: Clear;

M = 1.096; m = 0.109; b = 0.1; I = 0.0034; g = 9.8; l = 0.2 5;

p = I*(M+m)+M*m*l^2; A = [0 1 0 0;

0 -(I+m*l^2)*b/p (m^2*g*l^2)/p 0;

0 0 0 1;

0 -(m*l*b)/p m*g*l*(M+m)/p 0]; B = [ 0; (I+m*l^2)/p; 0; m*l/p ]; C = [1 0 0 0; 0 0 1 0]; D = [0; 0]; p = eig(A); Q = [x 0 0 0; 0 0 0 0; 0 0 y 0 0 0 0 0]; R = 1;

K = lqr(A,B,Q,R) Ac = [(A-B*K)]; Bc = [B]; Cc = [C]; Dc = [D]; Cn = [1 0 0 0];

Nbar = rscale(A,B,Cn,0,K); Bcn = [Nbar*B]; T = 0:0.005:5; U = 0.2*ones(size(T));

[Y,X] = Lsim(Ac,Bcn,Cc,Dc,U,T); plot(T,Y(:,1),':',T,Y(:,2),'-') legend('λÖÃ','½Ç¶È') grid

1.首先令x=1,y=1

运行后可以得到:

K =[-1.0000 -2.0381 30.1662 5.7548]

图6- 12 图6- 13

其中simulink仿真图为:

图6- 14

Q矩阵中,增加Q11使稳定时间和上升时间变短,并且使摆杆的角度变化减小。但是对于实际离散控制系统,过大的空置量会引起系统振荡。

6.4一阶直线倒立摆的模糊控制

模糊控制就是把控制对象作为黑箱,先把人对黑箱的操作经验用语言表述成模糊规则,让机器根据这些规则模仿人进行操作来实现自动控制。其主要工作原理过程如下图所示。

图6- 15

6.4.1一阶直线倒立摆的mamdani模糊控制模型

介绍MATLAB模糊工具箱提供的5个图形化工具

FIS Editor 模糊推理系统编辑器:供了利用图形界面(GUI)对模糊系统的高层属性的编辑、修改功能,这些属性包括输入、输出语言变量的个数和去模糊方法等。用户在基本模糊编辑其中可以通过菜单选择激活其他几个图形界面编辑器,如Rule Editor,Membership Function Editor等。利用MATLAB模糊工具箱可以实现建立mamdani模糊控制模型和

sugeno模糊控制模型。前者输出量是模糊集合,称为常规模糊系统模型,后者输出量是输入变量的线性函数。下面先用mamdani模糊控制模型实现对一阶倒立摆的平衡控制。

新建一个模糊系统*.fis文件,确定输入输出的个数、隶属度函数,以及适当的模糊规则,替代pd_stab.fis,用于倒立摆稳定模式的控制,要求能达到稳定,抖动小的控制目的。

设计四维模糊控制器,输入分别是position ,angle ,velocity ,ang-vel,(小车位置,摆锤角度,车速度,摆角速度),输出为control(控制力)。所要建立*.fis文件的结构,包括模糊运算(and、or、Implication、Aggregation、Defuzzification)的选择;各个输入输出的隶属度函数个数、形状的确定;编辑模糊规则等。这些决定了该模糊逻辑系统能达到的控制效果。

设计Mamdani型模糊逻辑系统(*.fis)结构如下:

模糊运算用默认的:And method: „min‟ Or method: „max‟ Implication: „min‟ Aggregation: „max‟ Defuzzification: „centroid‟ (1) Input1:Name = position;

Range & Display Range = [-1 1];

MFs:Name = ZE, Type = Trimf, Params = [-0.1 0 0.1] %1个三角形MF Name = NM, Type = Trapmf, Params = [-2 -1 -0.5 0] %2个梯形MFs Name = PM, Type = Trapmf, Params = [0 0.5 1 2]

(2) 其他同理类似。

图6- 16 图6- 17

图6- 18 图6- 19

图6- 20 图6- 21

以上分别为系统结构图,输入变量隶属函数和输出函数隶属函数图。

图6- 22 图6- 23

图6- 24 图

6- 25

图6-26 图6-27

图6- 28 图6- 29

6.4.2一阶直线倒立摆的sugeno模糊控制模型

sugeno模糊控制模型的建立思路和上述过程相似。只是在输出变量与输入变量之间建立线性函数关系。

这里为了探索,输入变量采用了与上不同的隶属函数关系,采用了钟形隶属函数,模

糊规则也做了相应的调整。

模糊规则:Weight(权重)取默认值1.

1. If (x is b) and (x1 is b) and (w is f) and (w1 is f) then (u is a) (1) 2. If (x is b) and (x1 is b) and (w is f) and (w1 is s) then (u is b) (1) 3. If (x is b) and (x1 is b) and (w is s) and (w1 is f) then (u is a) (1) 4. If (x is b) and (x1 is b) and (w is s) and (w1 is s) then (u is b) (1) 5. If (x is b) and (x1 is s) and (w is f) and (w1 is f) then (u is c) (1) 6. If (x is b) and (x1 is s) and (w is f) and (w1 is s) then (u is d) (1) 7. If (x is b) and (x1 is s) and (w is s) and (w1 is f) then (u is c) (1) 8. If (x is b) and (x1 is s) and (w is s) and (w1 is s) then (u is d) (1) 9. If (x is b) and (x1 is b) and (w is f) and (w1 is f) then (u is e) (1) 10. If (x is b) and (x1 is b) and (w is f) and (w1 is s) then (u is f) (1) 11. If (x is b) and (x1 is b) and (w is s) and (w1 is f) then (u is e) (1) 12. If (x is b) and (x1 is b) and (w is s) and (w1 is s) then (u is f) (1) 13. If (x is b) and (x1 is s) and (w is f) and (w1 is f) then (u is g) (1) 14. If (x is b) and (x1 is s) and (w is f) and (w1 is s) then (u is h) (1) 15. If (x is b) and (x1 is s) and (w is s) and (w1 is f) then (u is g) (1) 16. If (x is b) and (x1 is s) and (w is s) and (w1 is s) then (u is h) (1)

输出变量与输入函数的线性关系为:

a41.3710.03

3.162x4.288

x

0.3386

b40.4110.05

3.162x4.288

x

0.2068

c38.5610.18

3.162x4.288

x

0.04893



d37.610.15

3.162x4.288

x

0.1807

e37.610.15

3.162x4.288

x

0.1807



f38.5610.18

3.162x4.288

x

0.04893

g40.4110.05

3.162x4.288

x

0.2068

h41.37

10.03

3.162x4.288

x

0.3386

图6- 30 图6- 31

图6- 32 图6- 33

图6- 34 图6- 35

图6- 36 图6- 37

上左图黄线对应变量不同的取值,右边的输出不同。由右图规则曲面图可以看出,输出量u是四个输入量的非线性函数。曲面越光滑平缓,该系统的性能就越好。

图6- 38 图6- 39

输出函数关系曲线 整体结构图

图6- 40 图6- 41

倒立摆仿真系统小车平衡过程图(之剪截其中两幅)

图6- 42

小车初始参数的设置

图6- 43

小车对方波期望值的跟随情况,方波为小车未知的期望值,红线为小车实际位移

另外还有许多模糊控制方法,只要思路都是考虑到多变量模糊规则的制定,一般采取降维的思路。想通过误差和误差变化率的一阶降维模糊控制方法。还有针对四变量采用双闭环选择性模糊控制和双闭环串联型模糊控制,使每个模糊控制器只有两个变量,便于隶属函数的复杂和模糊规则的简化,其系统框图分别如下。

图6- 44

降维的一阶直线倒立摆模糊控制器结构

图6- 45

双闭环选择性模糊控制系统结构

机械工程试验(II)

图6- 46

双闭环串联型模糊控制系统结构

6.4.3一阶直线倒立摆的PID模糊控制模型

在一阶PID和模糊控制都是闲的基础上,可以很容易想到将模糊控制用来控制PID的三个参数,从而得到模糊PID控制。这里只简述。贴出原理图,模糊PID与PID控制对比仿真图和结果。

图6- 47

图6- 48

机械工程试验(II)

图6- 49 图6- 50

以上分别为小车的输出位移和摆杆角度的比较可知,模糊PID比PID控制具有超调量小,稳定快,且具有更大的鲁棒性等优势。

6.5一阶直线倒立摆的自适应神经模糊模糊控制

模糊控制是一种仿人思维的控制技术,它不依赖于被控过程的数学模型,但是需要专家的先验知识进行近似推理,缺乏在先自我学习和自我调整的能力。而神经网络对环境的变化有极强的自学能力,在建模的方面具有黑想学习模式的特点。MATLAB中的自适应神经模糊系统,是用神经网络理论自动建立Sugeno型模糊型的一个软件(ANFIS),设有专门的指令和图形界面编辑器。

神经模糊网络的任务分解的步骤:

(1) 第一层完成接受变量的任务。

(2) 第二层完成模糊化的任务,把输入的数值转化成模糊量。

(3) 第三层和第四层共同完成模糊推理过程,第三册还能够完成规则的前件,

第四层完成规则的后件。

(4) 第五层完成清晰化的过程,最后输出控制量。

用自适应神经模糊系统建立FIS的步骤:

(1) 打开Anfis编辑器界面,将训练,测试或者检核的数据载入Anfis编辑器。

(2) 生成初始FIS并观察。

(3) 训练初始FIS。训练后的FIS检验。

机械工程试验(II)

图6- 51 图

6- 52

图6- 53 图6- 54

导入数据 装入测试数据后

图6- 55 图6- 56

生成初始FIS的参数对话框,选择默认参数 生成FIS

机械工程试验(II)

图6- 57

一阶倒立摆的控制系统Anfis模型结构图

由上图可知,该系统有四个输入量,一个输出量,覆盖每个输入量的都是16个模糊子集,每条规则都有一个输出,共16个,最终都被清晰化。

图6- 58 图6- 59

初始隶属函数关系曲线 训练后的隶属函数关系曲线

由上图可知训练后x的隶属函数。发现没有什么改变,说明数据本身就是优化的。

机械工程试验(II)

图6- 60 图6- 61

对初始FIS进行训练,训练50次。右图为训练过程中误差的变化。训练过程误差变化。上图表明,经过50刺得训练后,误差为0.0000019062.MATLAB中显示信息:

ANFIS info:

Number of nodes: 167

Number of linear parameters: 80

Number of nonlinear parameters: 128

Total number of parameters: 208

Number of training data pairs: 16

Number of checking data pairs: 0

Number of fuzzy rules: 16

Warning: number of data is smaller than number of modifiable parameters

Start training ANFIS ...

1 1.90623e-006

2 1.9208e-006

Designated epoch number reached --> ANFIS training completed at epoch 2.

图6- 62 图6- 63

训练后的输出函数。线性函数输出规则见圈出内容 模糊规则

机械工程试验(II)

图6- 64 图6- 65

以上两图分别为规则曲线和规则曲面。由图可知,比单纯的模糊控制更光滑,可见控制系统性能更优越。

图6- 66

进行测试检测。通过规则曲线中取值和读数,可知测试前后的收据对比可知,基本符合。

下面两图是模糊控制和神经自适应再方波输入激励下,小车位跟随情况的比较。由图可知,一阶情况下,神经模糊控制具有较大的延时学习期,模糊控制能更好的实现对小车的跟随。但神经模糊在突变时具有较好的连续性。

机械工程试验(II)

图6- 67 图6- 68

7 二阶直线倒立摆的控制

7.1二阶直线倒立摆的线性最优控制(LQR)

7.2.1系统构成

倒立摆系统是由计算机、运动控制模块、伺服机构、倒立摆本体和运动传感器等几大部分组成的一个闭环运动模块构成系统,如图:

图7- 1

位置传感器将小车和各级摆杆的位移、速度信号反馈给伺服驱动器和运动控制模块(其中速度信号和角速度信号由差分获得),计算机从运动控制模块中读取实时数据,确定控制决策,即控制小车的移动位移、移动速度、移动加速度及其方向,并由运动控制器模块来实现该控制决策,产生相应的控制量,使电动机转动,带动小车运动,保持各级摆杆的平衡。倒立摆的驱动部件采用小惯量、带有增量式旋转编码器、有键槽、无制动系统、有油封的交流伺服电动机。倒立摆系统使用与电动机配套的MSDA023A1A型交流伺服电机驱动器。运

机械工程试验(II)

动控制模块是倒立摆伺服系统的核心,他接受光电编码器反馈位置和角度数据,进而求出小车和摆动的速度,根据给定的控制算法计算出控制量,输出后控制小车的运动,并维持倒立摆的平衡。同时,运动控制模块需监控电机运转情况,通过软件实现超速保护。运动控制卡控制交流伺服电动机。通过接口板读入编码器反馈的实际信号,然后差分出速度信号,根据位置和速度信号,通过控制算法解算出控制决策,把速度等控制指令输入功放驱动器,控制交流伺服电机转动。

7.2.2 系统系统建模和仿真

LQR的控制原理见一级直线倒立摆LQR控制在Matlab 中得到最优控制器对应的K 。Lqr 函数允许你选择两个参数R和Q,这两个参数用来平衡输入量和状态量的权重。最简单的情况是假设R = 1,Q=C‘*C。当然,也可以通过改变Q 矩阵中的非零元素来调节控制器以得到期望的响应。系统的非线性是固有的,片面追求系统的线性行为是不合理的,重要的是使采用线性模型设计的控制器能够克服系统非线性来适应对应参数的变化,并具有一定的鲁棒性。最终综合考虑了各项因素,选择:Qdiag10

计算得: K10.000071.3736294.88079.[1**********],R0.1,26.382541.0117

其Simulink仿真框图如图

:

图7- 2

机械工程试验(II)

图7- 3

图中设置的Subsystem模块其内部结构图为如下图所示:

机械工程试验(II)

图7- 4

系统初始化状态为:x0,10.1,20,仿真结果如下图所示:

图7- 5小车位移 图7- 6小车速度

图7- 7上摆杆角位移 图7- 8上摆杆角速度

图7- 9下摆杆角位移 图7- 10下摆杆角速度

图7- 11总体仿真曲线

LQR控制器可以对倒立摆进行有效的控制,达到期望的目的。通过多次仿真,还可得出:Q不变而R减小时,系统的调节时间与超调量减小,但稳态误差增大;当R不变而Q变大时,调节时间与超调量减小,摆杆的角度变化也同时减小,但稳态误差同时增大;当Q和R的变化与上述两种情况相反时,结论也相反。当Q和R阵太大时,系统会丧失稳定性。在控制系统设计中,Q和R的选取应根据上述规律并结合实际情况协调进行。

7.2二阶直线倒立摆的极点配置法

为了使系统有较好的稳态响应和瞬态响应特性,通过反复仿真最终选取闭环极点为:

K4.8645

32i20.63096789得反馈增益阵为: 8.323713.4054 96.95830.6991

其Simulink仿真框图和LQR一样,只是通过选取闭环极点,反求出状态方程,再求出反馈增益阵。便于对比,选取和LQR一样的初始参数:x

200,10.1 ,,仿真结果如下图所示:

图7- 12小车位移 图7- 13小车速度

图7- 14上摆杆角位移 图7- 15上摆杆角速度

图7- 16下摆杆角位移 图7- 17下摆杆角速度

图7- 18总体仿真曲线

经过多次仿真可知,极点配置法可以对倒立摆这样的不稳定系统进行有效的控制,稳态性能较好。当选择的主导极点离虚轴较远时,系统的过渡时间短,但所需的控制力较大,反之,离虚轴较近时,系统的过渡时间长,所需的控制力较小;当主导极点确定后,其余极点应远离主导极点,也就是其余极点实部最小的也要大于主导极点实部的2-3倍以上,其距离主导极点远,系统的过渡时间短,超调量变大,所需的控制力也较大。

7.3二阶直线倒立摆的线性最优控制(LQY)

与LQR控制方法相比,LQY控制方法的Qy,Ry不是对状态向量X(k) ,控制向量u(k)引起的性能度量的相对重要性进行加权,而是对输出向量Y(k)、控制向量u(k)引起的性能度量的相对重要性进行加权。

其状态反馈调节节律的形式为: u(k)KfX

T

(k)(f) 此时可通过使性能指标函数:Jy[Y

k1QyY(k)u(k)Ryu(k)]为最小,可求得

Kf(HTSHRy)1(HTSG)

其中,S由下列黎卡提方程获得:

SGSTGSH(HSHRy)TTT1HTSGCQYC T

Qy,Ry分别用来对输出向量Y(k)、控制向量u(k)引起的性能度量的相对重要性进行加权。

取:Qdiag[q1,q2,q3,q4,q5,q6]diag[[**************]],R=1,

同理可用MATLAB中lqr()函数求出出输出反馈增益矩阵Ky,

Kf[207.8435420.332370.71071.039163.980957.5636]

组成最优控制理论的LQY调节器。令系统初值为

X[0.050.050.1000],可得仿真结果如图所示:

T

图7- 19二阶倒立摆LQY最优控制仿真结果图。

看出,小车位置x和摆杆角度1,2的稳定时间约为2s,小车的位置x的上升时间小于0.5s,摆杆角度的最大超调量约为(0.157)rad。与LQR控制结果相似,说明其可行。

7.3二阶直线倒立摆的模糊控制

二级倒立摆系统有3 个控制目标:摆杆1 的角度θ1 、摆杆2 的角度θ2 和小车的位移x 。由于二级倒立摆具有高阶次、不稳定、多变量、非线性和强耦合的特性,采用传统的模糊控制一般存在以下问题:随着模糊控制器输入数目的增多,模糊规则呈指数上升;模糊规则难以设定;变量之间存在耦合使得因子设定困难.

再熟悉了模糊控制的方法的基础上,如果我们设计3 个子目标模糊控制器:两个角度子模糊控制器保证摆杆1 、2 快速稳定在铅垂位置, 其输入为角度误差和角速度误差;位置子模糊控制器使小车在一定范围内移动,最终稳定在x = 0 处,其输入为位置误差和位置速度

误差。这种动态加权控制方法符合人们的直觉经验,线路设计清楚易懂,规则设计简单明了,每个控制器只需较少的规则就可达到较好的控制效果,且保证了控制的实时性。

对倒立摆的摆杆1 的角度θ1 和角度变化率θ1′;摆杆2 的角度θ2 角度变化率θ2′; 小车的位移x 和小车运动的速度x′及控制量ui 的模糊集及其论域定义如下:

θ1 ,θ1′,θ2 ,θ2′的模糊集均为{ ne ,ze ,po} ; x , x′的模糊集均为{ ne ,po} ; ui 的模糊集均为{ nl ,nm ,ze ,pm ,pl} 。 x 的论域为[ - 5 ,5 ] , x′的论域为[ - 11 ,11 ] ,θ1的论域为[ - 0. 8 , 0. 8 ] , θ1′的论域为[ - 2 , 2 ] , θ2的论域为[ - 1 ,1 ] , θ2′的论域为[ - 4 ,4 ] , u1 的论域为[ - 45 ,45 ] , u2 的论域为[ - 80 , 80 ] 。控制结构如图2所示,其中, x0 ,θ10 ,θ20为给定值。

这里角度和定位子模糊控制器及权重模糊调节器都采用简单的结构。输入变量都采用三角形隶属函数,其中位置及权重模糊调节器采用Sugeno 型模糊系统,参见文献[7 ] 。其控制器的输出, 即系统的控制量U 为:U = ( kb1 + B1Δk1) U1 + ( kb2 + B2Δk2) U2 +( kb3 + B3Δk3) U3 (2)其中: kb1 和Bi 可根据经验或试凑法得到,还可以通过优化算法获得。

图7- 20动态加权模糊控制系统结构

图7- 21仿真结构图。

理论上上述方法应该是可行的,由于时间的关系,还有不知道哪里出错了,实验失败了结果一直放着仿真不出来。尝试失败。

8 实验创新拓展

8.1 一阶直线倒立摆的2种起摆控制

8.1.1 能量反馈法

倒立摆的起摆问题,也是控制理论中的一个经典实验。当采用系统摆动能量作为输出量时,系统的输入量与输出量之间是非线性的,因而许多常用的线性控制理论都不适用。一般采用能量反馈的方法来完成倒立摆的起摆控制。首先,取倒立摆自然静止状态为初始状态。

此时,0摆从最低位置摆到最高位置,且速度减小到),所需的摆动能量为令:

则在任意角度,摆的能量为:, 由于摆和小车共同组成的系统受到小车的行程和电机特性限制,不可能一开始就获得的摆动能量,只有通过能量反馈,不断调整小车的加速度,使摆的摆动能量逐次增加,最终达到设定值。能量反馈表达式为:

Ke为能量反馈系数,经过多

次试验后确定: Ke=30。倒立摆相对于初始位置有四种不同的运动状态,如下:1

2 )

3 )

4 )

倒立摆的起摆分为以下几个阶段:

阶段一:给倒立摆系统一个初始加速度,由于惯性的原因,摆杆会向另一个方向摆动,这时符合状态;

阶段二:当倒立摆摆到一定高度后,又往回摆,最终回到初始位置。但此时速度不为0,小车也回到起始位置附近,属于状态2,3;

阶段三:考虑到小车受到位置限制,在处再次对倒立摆系统施加能量,具体方法是给小车一个加速度。使得摆在初始位置时的速度增大,从而使倒立摆的摆动幅度增大。在第二阶段,可测出倒立摆的由此可以得到小车加速度,第三阶段,采用上一阶段得到的w 作为小车新的加速度,这样,第二,第三阶段反复交替。当倒立摆的摆幅达到0 时,即摆到最高位置时,倒立摆的控制进入稳态控制。平衡之后可采用LQR等方法进行平衡控制。于是提出了切换控制的概念。

图8- 1 图8- 2 图8- 3

图8- 4一阶倒立摆的起摆控制

图8- 5此处应该截取实验图像

8.2.1 基于共振原理的起摆控制

由物理学可知,当加在振子上的周期性外力的频率等于振子的固有频率时,会产生共振。 针对倒立摆这样一个典型的非线性系统,不但在外力的驱动频率接近系统的固有频率时会产生共振,称为主共振。当驱动频率远离系统的固有频率,但两频率之间呈一定的比值,此时也会发生共振,称为次共振。可以激发非线性系统使其产生主共振,即可实现倒立摆的摆起控制。且相对于激发次共振所需的条件,激发主共振的条件更易实现,所需外力频率更容易得到,即只需施加一周期外力,使其频率等于振子的固有频率。

w为驱动力的角频率由物设驱动力有如下形式FF0coswt式中F0为驱动力的幅值,

理学知识,倒立摆摆杆的固有频率近似为w03g4L只考虑主共振,取驱动力频率为ww0其中,为微小量,其中F0的选取直接影响小车的运动范围xmaxxmin,即由于实际倒立摆系统的导轨长度d 是有限制的,通常为1米左右,因此xmaxxmind。

此外,还可以采用采用Bang-Bang控制器来实现。这里我只看到了,没有深入学习。

8.2 二阶直线倒立摆的起摆控制研究

协调好小车与下摆(第一级摆)以及上摆(第二级摆)相互间的关系是解决小车二级摆控制问题的关键。特别要指出的是,如何在摆起倒立运动中,始终保持好两个摆杆之间适当的相对姿态十分重要。在整个摆起倒立控制过程中,可将控制过程划分为四个阶段:初始运动阶段(为控制提供一定的初始速度,并利用有限的水平可移动距离[本实验中为±0.3 米]);姿态整定阶段(使两级摆之间相对角度较小并具有适当的相对运动趋势);摆起阶段(使近似为单摆的两级摆摆起到达稳摆区域内);稳摆倒立阶段。

图8- 6 图8- 7

在摆起阶段,摆杆位于转轴水平线上方时(如图2.(b)所示),如小车受力向左(负向)移动,摆杆将获得一个顺时针转动的加速度;如小车受力向右移动,摆杆将获得到一个逆时针转动的加速度;而摆杆位于转轴水平线下方时(如图2.(a)所示),情况刚好相反,小车如果受力向左移动,摆杆将获得一个逆时针转动的加速度,如小车受力向右移动,摆杆将获得一个顺时针转动的加速度。因此,当摆杆分别位于转轴上方和下方时,将分别施加不同的控制作用。两级摆杆之间的耦合使二级摆系统的控制得以实现,但同时又多了一层对两摆运动的协调控制任务。当小车受力左移时,上级摆将获得一个逆时针转动的加速度,而下级摆由于两端受约束,其运动方向取决于车摆间的耦合和上、下摆间的耦合作用关系,如前者为主,则下摆获顺时针转动的加速度,反之,则下摆获逆时针转动的加速度。

综上所述,我们可依据小车二级摆系统在摆起倒立过程中,不同阶段控制的任务目标按以下方式分别确定所需要的动觉智能图式,进而建立起仿人智能控制器

(1) 初始运动阶段:由于水平轨道受限,因此施加较小的力使小车向一端运动以充分利用小车轨道;

(2) 姿态整定阶段:使两摆杆之间夹角减小呈一直线,且在摆起过程中两摆杆运动基本同步;

(3) 摆起阶段:使摆杆获得足够能量进入稳摆阶段。

(4) 稳摆阶段:在姿态整定阶段中,一旦两摆杆位置靠近倒立点,且转动速度接近于0,可采用LQR 控制,使摆杆稳定在倒立位置。

直线倒立摆系统的自动控制实验报告 第 51 页 共 62 页

图8- 8二阶倒立摆的起摆控制框图

8.3 三阶倒立摆的建模分析研究

三级倒立摆系统的分析示意图如图所示。三级倒立摆系统非常复杂,如果用力学理论来建立其数学模型非常困难,于是这里采用另一种方法。由于小车与倒立摆之间力的传递是通过铰链连接实现的,正是这种关系,外加控制力F3 才能通过它施加于摆L3上。 为简化起见,引入 等效小车系统的概念。 所谓等效小车是将二级倒立摆系统看成是一个整体,视为一个小车,称之为/等效小车。这里的等效小车是由整个二级倒立摆系统组成,这样就可以采用相平面分析来分析三级倒立摆系统。

于是可得出三级倒立摆系统的控制规律为:



F3k1xk2xk31k41k52k62k73k83

式中ki(i1,2,8)为待定常数,可以通过参数估算或者实验确定。i分别为第i级

倒立摆的角度,x为小车位移。

图8- 9三级倒立摆系统的分析示意图

8.4 一阶倒立摆PID防撞控制的探索

在做实验的运行过程中,我我们发现,在实际运行中,发现如果作用力太大,或者干扰

机械工程试验(II)


相关内容

  • 二级倒立摆的二次型最优控制研究
  • 文章编号:1671-4598(2004)11-1067-03中图分类号:tP273文献标识码:A 计算机测量与控制.2004.12(11>ComputerMeasurement&Control-1067- 二级倒立摆的二次型最优控制研究 张义明!战兴群 (上海交通大学信息检测技术与仪器 ...

  • 2013年国赛旋转倒立摆正式论文
  • 题目:简易旋转倒立摆及控制装置(C题) 摘要:系统采用STM32F407作为倒立摆系统控制核心,高性能伺服电机作为倒立摆的驱动装置,实现摆的一系列功能.硬件由电源电路.CPU最小系统模块.电机驱动模块.编码器模块.显示模块等组成.算法采用双环PID进行控制,内环使用摆杆角度误差量作为反馈对电机速度进 ...

  • 直线二级倒立摆稳定控制器设计2
  • 青岛黄海学院 本 科 毕 业 设 计(论 文) 中文题目: 英文题目: 学 院: 专业班级: 学生姓名: 学 号: 指导教师: 职称学历: 直线二级倒立摆稳定控制器设计 Two straight inverted pendulum stable controller design 二 ○ 一 五 年 ...

  • 倒立摆毕业设计开题报告
  • 毕业论文开题报告 论文题目: 单级倒立摆机电系统建模,仿真与控制(基于能量的建模方法) 一 课题背景: 1 单级倒立摆模型 在惯性参考系下的水平面上,倒摆由无质量的轻杆和一定质量的小球组成,轻杆通过转动关节安装在小车上.在不考虑空气阻力.摩擦力,并且忽略杆的质量及其弹性变形的情况下,定义x 和 分别 ...

  • 倒立摆论文
  • 摘要 本次竞赛C题的任务为设计并制作一个旋转式倒立摆,能够使摆杆做圆周运动,并且实现倒立功能.对此我们的作品采用自制支架,旋臂和摆杆.电机采用伺服电机,以STC12C5A60S2为控制芯片,利用精密塑料电位计测量摆杆转角,经过数学建模和多次数据采集建立模糊数学模型,利用PID实现对摆杆的实时控制. ...

  • 神经网络论文1
  • 基于倒立摆的PID神经元网络的控制系统的研究 摘要 摆系统是一个典型的强耦合.非线性.高阶次的不稳定系统.由于摆系统的数学模型是在忽略了次要因素的基础上得出来的,而实际上是一个非线性的系统,当系统受到外部的干扰时,这些次要因素的影响比较突出.实验采用PID神经元,设计一个神经网络间接自适应控制系统, ...

  • 物理实验论文-望远镜与显微镜的组装
  • 望远镜.显微镜的设计与组装 一. 引言 显微镜和望远镜是近代科学技术的两项伟大发明,它们将人类的视觉延伸到了更加宽广的微观和宏观世界,具有划时代的意义.显微镜和望远镜是常用光学仪器,具有广泛的应用范围.它们的构造看似简单,却蕴含着极其丰富的理论知识.了解他们的构造原理,并自己动手设计.组装显微镜和望 ...

  • 一级倒立摆的模糊控制
  • 一级倒立摆的模糊控制 一. 立题背景 倒立摆( Inverted Pendulum)是处于倒置不稳定状态.通过人为控制使其处于动态平衡的一种摆.它是一个复杂的快速.非线性.多变量.强耦合的非最小相位系统,是重心在上.支点在下控制问题的抽象. 倒立摆的控制一直是控制理论及应用的典型课题倒立摆系统通常用 ...

  • 直线二级倒立摆文档
  • 一.直线二级倒立摆的特点 直线二级倒立摆是一个典型的非线性.高阶次.多变量.强耦合的不稳定系统.首先我们通过二级倒立摆的机械结构来推导其数学模型,然后进行模型的线性化,最后得到系统的线性状态空间模型.直线二级倒立摆是一个开环不稳定的系统,因此我们需要设计控制器来控制小车运动从而使两级摆杆都保持与地面 ...