第一篇:直线运动倒立摆控制系统的研究两周汇报2
直线运动倒立摆控制系统的研究两周汇报
工作进展:
通过这两周的学习,我自己解决了上周自己提出的三个问题,并且举一反三,从实例中提高了自我分析能力,现汇报自己的学习进展如下:
二级倒立摆控制系统的被控对象由:小车,下摆,上摆组成。同时我举一反三明白了其系统的机械部分由小车,上摆,下摆,导轨,皮带轮,传动皮带等构成,还有其电气部分由:电机,晶体管,直流动功率放大器,传感器以及保护电路组成。
二级倒立摆控制系统的控制方法有:状态反馈控制、FUZZY控制、应用REF神经网络和遗传算法相结合的控制方法、用前向或递归神经网络并结合最优控制、模糊控制算法、鲁棒最优控制,通过以上算法能够保证对该系统被控对象的控制。
存在的问题:
1、倒立摆的主要控制规律有哪些。
2、二级倒立摆控制系统的组成框图是怎么的。
3、最常见的三种控制方法:采用LQR最优控制器控制、采
用变结构控制其控制和采用模糊控制器进行控制。那么他们三者相比之下的优缺点有哪些。
姓名:庄金鑫
时间:2014.3.30
第二篇:基于倒立摆的现代控制模型建立及分析基于倒立摆的现代控制模型建立及分析
基于倒立摆的现代控制模型建立及分析
姓 名:
学 号: 教 师:
专 业:
二〇〇九年十二月二十九日
基于倒立摆的现代控制模型建立及分析
目 录
第一章 绪论...................................................................................................................1 第二章 倒立摆系统建模...............................................................................................2 2.1 状态空间表达式...............................................................................................2 2.1.1 数学模型建立.........................................................................................2 2.1.2 状态变量及状态空间表达式.................................................................3 2.1.3 系统的约旦标准型.................................................................................4 2.1.4 系统的并联实现.......................................................................................5 第三章 倒立摆系统状态空间表达式的解...................................................................7 3.1 状态转移矩阵...................................................................................................7 3.2 系统在单位阶跃函数作用下的解...................................................................7 第四章 倒立摆系统的能控性和能观性.......................................................................8 4.1 倒立摆系统的能控性.......................................................................................8 4.2 倒立摆系统的能控标准型...............................................................................8 4.2.1 能控标准Ⅰ型.........................................................................................8 4.2.2 能控标准Ⅱ型.........................................................................................9 4.3 倒立摆系统的能观性.....................................................................................10 4.4 倒立摆系统的能观标准型.............................................................................10 4.4.1能观标准Ⅰ型..........................................................................................10 4.4.2 能观标准Ⅱ型.......................................................................................11 第五章 倒立摆系统的稳定性与李亚普诺夫方法.....................................................12 第六章 倒立摆系统的综合.........................................................................................13 6.1 系统性能指标的确定.....................................................................................13 6.2 系统极点配置.................................................................................................13 6.3 状态观测器.....................................................................................................14 6.3.1 全维状态观测器...................................................................................14 6.3.2 降维观测器...........................................................................................15 6.4 利用状态观测器实现状态反馈.....................................................................18 第七章 倒立摆系统的最优控制方案及控制器设计.................................................20 参考文献...........................................................................................................................21
基于倒立摆的现代控制模型建立及分析
第一章 绪论
倒立摆作为一个高阶次、多变量、非线性和强祸合的自然不稳定系统,一直是控制领域研究的热点问题。它广泛应用于控制理论研究、航空航天控制、机器人、杂技顶杆表演等领域,在自动化领域中具有重要的理论价值和实践价值。这些物理装置与控制系统的稳定性密切相关,深刻揭示了自然界一种基本规律,即一个自然不稳定的被控对象,通过控制手段可使之具有良好的稳定性。
倒立摆的研究具有重要的工程应用价值。如机器人问题,机器人行走类似倒立摆系统,尽管第一台机器人在美国问世以来己有三十多年的历史,但机器人的关键技术至今仍未很好解决。再如太空应用中,倒立摆系统的稳定与空间飞行器控制和各类伺服云台的稳定有很大相似性,它也是日常生活中所见到的任何重心在上、支点在下的控制问题的抽象,因此,倒立摆机理的研究又具有重要的工程应用背景,成为控制理论中经久不衰的研究课题。倒立摆的控制方法,在军工、航天和机器人领域有广泛的用途,对处理一般工业过程亦有指导性作用。
倒立摆常见类型有:(1)直线型倒立摆,(2)环型倒立摆,(3)旋转式倒立摆,(4)复合倒立摆系列。由于时间水平有限,本文仅针对一阶直线型倒立摆进行现代控制分析。图1.1为一级倒立摆装置简图。
摆杆滑轨小车皮带电机
图1.1 一级倒立摆装置简图
基于倒立摆的现代控制模型建立及分析
第二章 倒立摆系统建模
2.1 状态空间表达式
2.1.1 数学模型建立
倒立摆系统由质量为M的小车和质量为m,长度为L的的连杆即摆构成。连杆的一端与小车通过旋转关节自由连接,即该关节无驱动力矩。该机械系统目的是操作小车的驱动力F,使得摆稳定在倒立点上,即连杆不倒下,即不超过预先定义好的一个垂直偏离角度范围。图2.1为倒立摆系统图,小车位移为x,摆的角度为。
在系统数学模型中,首先假设:(1)摆杆为匀质刚体;(2)忽略摆杆与支点间的摩擦;(3)忽略小车与导轨的摩擦。
YLΘoFMmgX 图2.1 倒立摆系统图
0摆杆质心的绝对位移为 Hxlsin 系统的初始状态 0,根据牛顿第二运动定律,对系统整体水平方向受力分析,求得方程d2xd2F(t)M2m2(xlsin)
(2-1)dtdt对摆杆O点取力矩平衡,得到方程
27.5°d2HM0m2cosmglsin0
(2-2)dt2
基于倒立摆的现代控制模型建立及分析
方程(1)(2)是非线性方程,由于控制的目的是保持倒立摆直立,在施加的外力条件下,假定很小,接近于零是合理的。则sin,cos1。在以上假设条件下,对方程线性化处理后,得到倒立摆系统的数学模型为:
(2-3)mmlF(t)Mxx
(2-4)lglx2.1.2 状态变量及状态空间表达式
在用状态空间法分析系统是,系统的动态特性是用状态变量构成的一阶微分方程组描述的。它能反映系统的全部独立变量的变化,从而能同时确定系统的全部内部运动状态,而且还可以方便的处理初始条件[1]。
)T为系统的一组状态变量,输入为:uF(t),输出,,取(x1,x2,x3,x4)T(x,xyx,则系统的状态方程为:
01x0x2x304x010mg0M00(mM)g0Ml00x110x2Mu
1x30x104Mlx1xy1,0,0,02
x3x4为便于计算,假设小车的质量M=1kg,摆杆质量m=0.2kg,摆杆长度为l=0.5m,g=10m/s2则系统状态方程为
Axbu
ycxx
00其中A001002000240001,b,c1,0,0,0
0102倒立摆系统的原始模拟结构图如图2.2所示。
基于倒立摆的现代控制模型建立及分析
u+xx1-2x2x1y22-x4x4x33+x24 图2.2 倒立摆系统的原始模拟结构图
2.1.3 系统的约旦标准型
根据系统的特征方程IA0,得到2(224)0,解得特征值为
120,34.899,44.899。
对应于T10,由(1IA)P10,解得特征向量P11000。对应于20,由(2IA)P2P1,解得特征向量P0100T2。对应于34.8,9由9(3IA)P30,解得特征P14.8991258.788T3。
对应于44.8,9由9(4IA)P40,解得特征PT414.8991258.788。
由特征向量组成的变换矩阵
101100.08330T014.8994.899100.08331,T10001212000.04170.0085
0058.78858.788000.04170.00854
量量 向向
基于倒立摆的现代控制模型建立及分析
001约旦标准型矩阵TAT00变换后的相关矩阵为
100000 04.8990004.899T1b00.8330.0170.017,cT1011
T2.1.4 系统的并联实现
00s100s201 系统的传递函数为W(s)C(SIA)1b100000s100024s2W(s)14 s2s2(s224)1W(s)145150.0170.017 22222ss(s24)6s6(s26)(s26)6ss4.898s4.898用矢量矩阵形式表示为
10xx20x3040x1x10000x21u 04.8990x31004.899x4100x1x2y0.833000.0170.017 x3x4倒立摆并联型模拟结构图如图2.3所示
基于倒立摆的现代控制模型建立及分析
2xx21xx10.08334.489u++3xx30.017+++y-4.489++x44x-0.017
图 2.3 倒立摆并联型模拟结构图
基于倒立摆的现代控制模型建立及分析
第三章 倒立摆系统状态空间表达式的解
3.1 状态转移矩阵
根据约旦标准型矩阵,求得
10At1e(t)TT00011114.8994.8990012120058.78858.7880t00110000e4.899t0000e4.899t000.08330100.083300.04170.008500.04170.00851000 t0.08330.0417e4.899t0.0417e4.899t0.0833t0.0085e4.899t0.0085e4.899t10.2043e4.899t0.2043e4.899t0.08330.0416e4.899t0.0416e4.899t00.5e4.899t0.5e4.899t0.102e4.899t0.102e4.899t02.451e4.899t2.451e4.899t0.5e4.899t0.5e4.899t3.2 系统在单位阶跃函数作用下的解
初始时刻为t00,初始状态x(0)0,输入u(t)1(t),根据
x(t)(t)x(0)(t)bu()d
0t1t0000t0.08330.0417e4.899(t)0.0417e4.899(t)0.0833(t)0.0085e4.899(t)0.0085e4.899(t)010.2043e4.899(t)0.2043e4.899(t)0.08330.0416e4.899(t)0.0416e4.899(t)1d4.899(t)4.899(t)4.899(t)4.899(t)000.5e0.5e0.102e0.102e4.899(t)4.899(t)4.899(t)4.899(t)202.451e2.451e0.5e0.5et0.1666(t)0.017e4.899(t)0.017e4.899(t)4.899(t)4.899(t)t0.8330.0832e0.0832ed0 0.204e4.899(t)0.204e4.899(t)4.899(t)4.899(t)ee2.04t20.00347e4.899t0.00347e4.899t4.899t4.899t0.8160.0169e0.0169e 0.0416e4.899t0.0416e4.899t4.899t4.899t0.204e0.204e7
基于倒立摆的现代控制模型建立及分析
第四章 倒立摆系统的能控性和能观性
在现代控制理论中,能控性和能观性是两个很重要的概念,是卡尔曼在1960年首先提出来,它是最优控制和最优估计的设计基础。
4.1 倒立摆系统的能控性
对于线性连续定常系统,如果存在个分段连续的输入u(t),能在有限时间区间t0,tf。使系统由某一初始状态x(t0),转移到指定的任一终端状态x(tf)。则称此系统是状态完全能控的。系统的能控性完全取决于系统的结构、参数以及控制作用的施加点。
判断该倒立摆系统能控性有如下几种方法:
(1)根据图2.2倒立摆系统的原始模拟结构图,可以看出该系统是完全能控的。
(2)由系统约旦标准型矩阵,可以看出输入矩阵b中相应于约旦块的最后一行元素不为零,故该系统是能控的。
(3)根据能控判别矩阵MbAbA2b04011040,A3b0204820480rank(M)=n=4,故系统是完全能控的。
4.2 倒立摆系统的能控标准型
倒立摆系统属于单输入单输出系统,在能控判别证中只有唯一的一组线性无关量,因此系统的能控标准型是唯一的。
4.2.1 能控标准Ⅰ型
进行非奇异变化xTc1x,将原状态空间表达式化成
Axbu yCxx
基于倒立摆的现代控制模型建立及分析
1aAbb3a2a101a3a2001a300 01Tc1A3bA2b系统特征方程为42420,即a00,a10,a224,a30
010104040110Tc148020240048020240010020010002000 000201000200.02500.0500.0500.025 Tc11000.500000.500 ATc11ATc1001001000240000 bTc11b ccTc120010
0101s220当然也可根据系统输入输出传递函数W(s)4,直接写出A和c。
s24s24.2.2 能控标准Ⅱ型
进行非奇异变化xTc2x,将原状态空间表达式化成
Axbu,yCx xTc2MbAbA2b040110403 Ab02048204801.200.101.200.10 Tc2100.0500.0250.0500.02509
基于倒立摆的现代控制模型建立及分析
01TAT1Ac1c100001000000 b ccTc20001 1024010204.3 倒立摆系统的能观性
对于线性连续定常系统,对任意给定的输入u(t),在有限观测时间tft0,使得根据t0,tf期间的输出y(t),能唯一的确定系统在初始时刻的状态x(t0),则称状态x(t0)是可观测的。
(1)根据图2.2倒立摆系统的原始模拟结构图,可以看出该系统是完全能观的。(2)由系统约旦标准型矩阵,可以看出输出入矩阵c中相应于每个约旦块开头的一列元素不为零,故该系统是能观的。
C1CA0(3)根据能控矩阵N2CA03CA0能观的。
000100,rank(N)=n=4,故系统是完全
0200024.4 倒立摆系统的能观标准型
4.4.1能观标准Ⅰ型
进行非奇异变化xT01x,将原状态空间表达式化成
buAxx yCxC1CA0T01N2CA03CA0000100
02000210
基于倒立摆的现代控制模型建立及分析
101T0100000100 00.50000.510010002402000 ccT011000
bT011b1100001AT01AT01004.4.2 能观标准Ⅱ型
进行非奇异变化xT02x,将原状态空间表达式化成
buAxx yCx1a301T020000a2a310a1cA302402a2cA224020 a3cA010011000c011AT02AT020000100020000 ccT010001
bT011b1024100注释:因为状态空间表达式能观标准Ⅰ型与能控标准Ⅱ型对偶,能观标准Ⅱ型分别与与能控标准Ⅰ型相对偶,依据对偶原理A1A2T,b1c2T,c1b2T,可以直接写出系统的能关标准型。
基于倒立摆的现代控制模型建立及分析
第五章 倒立摆系统的稳定性与李亚普诺夫方法
倒立摆系统是线性系统,系统的稳定性只取决于系统的结构和参数而与系统的初始条件及外界扰动无关。
李亚普诺夫第一法关于线性系统的稳定判据为:线性定常系统:(A,b,c)
Axbu
ycxx,平衡状态xe0渐进稳定的充要条件是矩阵A的所有特征值具有负实部。
倒立摆系统的特征方程IA0,2(224)0,解得特征值为120,34.899,44.899,故该系统的状态不是渐进稳定的。
s220系统输入输出传递函数为W(s)C(SIA)b4,传递函数的极点为
s24s21s1s20,s34.899,s44.899,并不是都位于s平面的左半平面,故该系统输出不是渐进稳定的。
基于倒立摆的现代控制模型建立及分析
第六章 倒立摆系统的综合
6.1 系统性能指标的确定
本文中的倒立摆系统是四阶的高阶系统,忽略某些留数很小的或离虚轴很远的极点所对应的瞬态分量,可以用一个二阶的低阶系统来近似。各瞬态响应分量衰竭快慢取决于对应的闭环极点距离s平面虚轴的远近,其中最靠近虚轴的闭环极点对系统的瞬态响应起主导作用,称为闭环主导极点。若其他非主导极点的实部比主导极点的实部大5倍以上,则主导极点对应的瞬态分量衰减到进入稳态(即△=±2%或△=±5%)所需要的调整时间比其他非主导极点所需时间慢5倍以上[2]。
配置二阶系统的性能指标,超调量Mpe12100%15%,得出阻尼比0.2727。00.8时,对应于稳态允许误差范围△=±2%,调整时间计算公式ts42s,算出无阻尼固有频率n7.334rad/s。故二阶主导极点为nS1,2nn1n22j7.056,远离这两个主导极点配置系统的另外两个极点S315,S418。
6.2 系统极点配置
由极点S1,22j7.056,S315,S418,22系统的期望特征多项式为f()(2nn)(3)(4)
4373455.7882285514522.76
倒立摆系统的能控标准Ⅰ型为
00x001001000240000xb 100113
基于倒立摆的现代控制模型建立及分析
y20010x
由于该系统完全能控,故可实现状态反馈配置极点,加入状态反馈矩阵Kk0k1k2k3,系统的闭环特征多项式为
f()det[I(AbK)]
4(k3)3(24k2)2(k1)(k0)
比较f()和f()的各项对应系数,可解得
k014522.76,k12855,k2479.788,k337,K14522.762855479.78837 反变换到x状态
10KKT01114522.762855479.7883700000100
00.50000.514522.762855239.89418.5
6.3 状态观测器
6.3.1 全维状态观测器
本文中倒立摆系统是完全能观的,可以构造状态观测器 系统的能观Ⅱ型为
01x0000100020000
y0001x
xu0241100引入反馈阵Gg1g2g3g4T,得到观测器特征多项式为
基于倒立摆的现代控制模型建立及分析
g10010g2f()det[I(AGc)]det0124g3001g44g43(24g3)2g2g1
比较f()和f()的各项对应系数,可解得
G14522.762855431.78837
T
反变换到x状态,0240214522.7668450240202855516 GT02G0100431.7884.229810003721.549全维观测器方程为
ˆ(AGc)xˆbuGy x684505164.229821.5490000100200024100200024006845001516ˆxuy 104.22980221.549006845001516ˆˆ)xu(yy104.22980221.549倒立摆系统的全维状态观测器如图6.1所示。
6.3.2 降维观测器
01T0000100001100-10T00011000010000 1015
基于倒立摆的现代控制模型建立及分析
001ATAT01001bTb0***000000100010020002400011000001000011020000024010010000 00001010 10202000100001100001 0001ccT100000引入Gg1g2Tg3得到观测器特征多项式为
f()detI(A11GA21)
g1detg2g3203g12(242g2)24g12g31= 24配置观测器极点为-15,-15,-15,期望的观测器特征多项式为
3f()(+15)34526753375
比较f()和f()各相应项系数,得
g145,g2349.5,g32227.5,即观测器为
G45349.52227.5
T观测器方程为
ˆ1(A11GA12)wˆ[(A11GA12)G(A12GA22)]y(B1GB2)u wˆ1wˆGy x204527201ˆ1349.501wˆ17950y0u w2227.52401086302
基于倒立摆的现代控制模型建立及分析
u(A,b,C)yˆy-68450++-516ˆ1xˆ1xˆ2x+++ˆ2xˆ3x-24.2298++-221.549ˆ3x24+++ˆ4xˆ4x
图 6.1 倒立摆系统的全维状态观测器
45ˆ1wˆ349.5y x2227.5整个状态量x的估计值为
ˆ145ywˆˆˆˆx1wGyw2349.5y xˆ2227.5yx4x4w3y原系统的状态估计为
基于倒立摆的现代控制模型建立及分析
0ˆ1ˆTxx0000100001ˆ145yy1wˆˆw45y0w2349.5y1 ˆ0wˆ32227.5yw2349.5yw0yˆ32227.5y系统降维观测器如图6.2所示。
u(A,b,c)yˆ4x90-4517950272045+++-349.5+-2++349.5ˆ1x-699108625.5++2227.5++++-45++ˆ2x2227.5++-+ˆ3x4455图 6.2 倒立摆系统的降维状态观测器
6.4 利用状态观测器实现状态反馈
根据全维观测器方程
68450516ˆx4.229821.549状态反馈阵
100200024006845001516ˆxuy 104.22980221.549K14522.762855239.89418.5
可以得出全维观测器闭环系统图如图6.3所示。
基于倒立摆的现代控制模型建立及分析
u(A,b,C)y-68450+++++-516ˆ1xˆ1xˆ2xˆ2xˆ3x4.2298+24+ˆ3x-2-2+++21.549ˆ4xˆ4x图 6.3 闭环系统模拟结构图
基于倒立摆的现代控制模型建立及分析
第七章 倒立摆系统的最优控制方案及控制器设计
针对第二章倒立摆系统的状态空间方程式,通过确定最优控制量u(t)Kx(t)的矩阵K,使得闭环系统渐进稳定,同时使线性二次型最优控制指标(式6-1)达到最小。
J1tfT1TT[xQ(t)xuQ(t)u]dtx(tf)Q0x(tf)(6-1)12t202式中,Q1(t)为nn维半正定的状态加权矩阵;Q2(t)为rr维正定的控制加权矩阵;Q0(t)为nn维半正定的终端加权矩阵。Q1(t)和Q2(t)是用来衡量状态变量和输入向量的权重。
针对倒立摆系统的平衡问题,可引入全状态反馈。当给系统施加阶跃输入时,找出满足系统性能的反馈增益矩阵K,使在其作用下将系统由初始状态驱动到零平横状态。如果系统受到外界干扰而偏离零状态,施加最优控制u使得系统回到零状态附近并同时满足J达到最小,其中u由公式6-2解得。
uQ21(t)BT(t)P(t)x(t)K(t)x(t)(6-2)求解黎卡提(Riccati)矩阵方程(式6-3)的就可获得P的值以及最有反馈矩阵K值即式6-4。
-PA-ATPPBQ-1BTP-Q(6-3)P21KR1BTP(6-4)当tf趋向无穷时,P(t)趋近于一个常值矩阵,Pt0,因此,上式给出的Riccati方程就简化为PAATPBR1BTPQ0。
20
基于倒立摆的现代控制模型建立及分析
参考文献
[1] 刘豹,唐万生..现代控制理论.北京:机械工业出版社,2009.9~10.[2] 吴振顺,张健成..控制理论基础与应用.哈尔滨:哈尔滨工业大学出版社,2007.59~63.
第三篇:基才Matlab的倒立摆系统实时模糊控制研究
基才Matlab的倒立摆系统实时模糊控制研究
徐 雄,石曙东(湖北师范学院 计算机科学系,湖北 黄石 435002)1 引言
倒 立摆系统是一种是非最小相位系统,它具有非线性、多变量和不稳定的特点,因而成为控制理论教学和科研的典型对象,以往主要通过软件仿真或在精密倒立摆上实 现各种控制算法,而对倒立摆硬件系统开发的相关报道却甚少。目前,国内各高校基本上都采用香港固高公司和加拿大Quanser公司生产的系统,由于采用高 精度的零部件,因此,硬件成本较高;其软件大多采用VC等可视化编程软件来开发,研发周期长,并且不提供源代码,缺乏可读性和再利用性。本文介绍一种倒立摆系统的软硬件开发,其硬件系统具有低成本、高可靠性和稳定性等优点;其软件系统在Matlab环境下编程和实时控制,源代码完全开放,而且可调用丰富的Matlab工具箱函数,非常适用于教学和科研上的再学习和开发。倒立摆系统的硬件设计
一 级水平倒立摆硬件系统框图如图1所示,多级水平倒立摆也相类似,区别之处只是摆杆不同。倒立摆系统由导轨、力矩电机、滑块与摆杆、皮带等部件组成。摆杆连 接滑块,滑块由皮带拖动在导轨上滑行。滑块离中心点的水平位移和摆杆的角度分别由旋转编码器1和2检测,通过旋转编码器信息采集卡转换后对应于θ和x的计 数值。在导轨的两侧各有一个限位开关(常闭),当滑块滑行到两侧时,将碰到限位开关并使其断开,用来判断滑块的位置是否超出限定范围以及是否立即停止电机 运行。限位开关的通断信号由数据采集卡I/O采集,控制电压通过数据采集卡D/A输出,经过力矩电机控制器转换后作用于电机。硬件系统组成部件说明如表1 所列。
2.1 力矩电机控制器设计
数 据采集卡D/A输出电压一般为0 V~+5 V或0 V~+10 V,而力矩电机的伺服驱动电压为-24 V~+24 V,因此需要设计一个控制器,将数据采集卡的输出电压按比例转换成力矩电机控制所需的伺服电压。力矩电机控制器采用不带MPU的分立元件反馈方法设计,以 提高可靠性。当电机带动小车运动到两端碰到限位开关时,施加在电机上的电压必须马上变成0 V,电机立即停止转动,但力矩电机的堵转电流非常大,会击穿达林顿管,因此在设计力矩电机控制器时,应考虑碰到限位开关时要立即切断电机的达林顿输出电 路,使电机端的电压箝位于0 V。
2.2 旋转编码器接口设计
摆 杆的角度(θ)是倒立摆控制所需的最主要的反馈检测信号,而小车的位置(x)只起到辅调节作用,要求精度不高。因此,摆杆角度检测采用日本NEMI-COM公司生产的高精度旋转编码器,而小车位置检测所用旋转编码器则自制,由旋转编码盘加上带槽光耦检测电路实现。旋转编码器的典型输出为两个相位差 90°的方波信号(A和B)以及零位脉冲信号Z。其中,Z脉冲信号标志旋转编码盘转过的圈数(每圈360°),A、B两相信号脉冲数标志转编码盘转过的角 度,A、B之间的相位关系为码盘的转向,即当A相超前B相90°时,标志码盘正转;当B相超前A相90°时,标志码盘反转。
旋 转编码器接口电路将A、B、Z脉冲信号转换成旋转码盘转过角度的计数值,一般采用单片机来实现。从光电编码器接口电路要求高速度、高精度和计算机接口等方 面考虑,本系统设计的旋转编码器接口应为插在计算机PCI插槽上的PCI板卡,计数电路采用高速CPLD器件EPM7128实现,采用抗干扰二倍频方法设 计,PCI接口器件采用PLX公司的PCI9052。自制旋转编码器及接口电路框图如图2所示,左边虚线框内是自制的旋转编码器电路,调整好带槽光耦01 和02之间的距离,转动带齿光码盘,A、B就会产生相位差为90°的脉冲信号。倒立摆软件系统设计
倒 立摆软件系统一般都是在Windows操作系统中采用Turbo C、Visual C++、C++Builder等可视化编程软件开发,虽然实时性比较好,但控制算法实现难度较高,开发周期长并且缺乏灵活性。笔者提出以计算、绘图和仿真 功能强大的Matlab软件作为控制算法的开发环境,用Visual C++开发MEX接口生成的动态链接库(DLL)作为Matlab与PCI数据采集卡和旋转编码器信号采集卡进行通信的中介,编制M文件实现模糊控制算 法,具有编程简单、工具箱函数调用和数据分析方便等优点。
3.1 Matlab环境下实现实时控制
用Matlab 对系统进行实时控制有两种可选择的方法,编制M文件或利用Simulink,这两种方法也可以交互使用。另外,也可以采用Matlab与第三方软件相互调 用的方法实现实时控制。直接采用M文件编程简单易学,但运行速度较慢;使用Simulink和Real-Time Workshop进行实时控制,控制参数修改方便,运行速度快,在仿真和调试完成后,可生成C代码并移植到硬件直接使用,快速实现控制系统。Matlab 环境下这两种方法的数据交换过程如图3所示,其中,上部是编制M文件实现实时控制的数据交换过程。
Matlab 只带有知名公司板卡产品的驱动程序,如果采用国内公司或者用户自行设计的板卡,则需要自行编写设计驱动程序并采用Matlab访问硬件的接口程序。M文件 下没有直接访问硬件的函数,因此需要使用Matlab提供的MEX接口函数来开发硬件驱动,生成动态链接库(DLL)。如果利用Simulink模块实时 控制,则需要编制访问硬件的S-Function接口,利用此函数可以编写实现自身功能的Simulink模块。还可以采用S-Function编写 Mat-lab不带驱动的硬件板卡的驱动程序。
3.2 变量组合的模糊控制器设计
单 级倒立摆是一个两输入单输出的多变量系统,控制目标是摆杆的角度θ和滑块的水平位移X皆为0或者在0点附近动态调整,若要控制这两个量,就必须引入其变化 率作为反馈量。因此,模糊控制器的输入量为摆杆的角度θ、角速度ω、滑块的水平位移X以及水平速度V,而输出为力矩电机的控制电压U。通 过线性变换,将摆的角度θ的电压值映射到论域[-6,6],角速度ω的论域和角度θ相同。θ和ω采用7级分割,分别为NB、NM、NS、ZE、PS、PM、PB、用钟形隶属度函数。同理,将滑块的水平位移X映射至论域[-1,1],模糊分割为3级,分别是NM、ZE、PM,使用三角形隶属度函数。水平速度V论域为[-1,1],模糊分割为2级,分别是N、P,使用三角形隶属度函数。输出的控制电压u论域为[-6,6],分割成7级,分别为NB、NM、NS、ZE、PS、PM、PB。在进行模糊推理运算时,采用Mamdani最大-最小合成运算,而输出的解模糊运算则采用重心法。
对 于多变量模糊控制系统,由于可能的控制规则数目是输入变量数的指数,因此,如何有效地减少多变量模糊控制系统中控制规则的数目,对理论分析和工程应用都有 着非常重要的意义。为了减少规则的数量,本文根据摆杆的角度θ和滑块的水平位移x分别设置模糊控制规则库,而最终的控制信号就是分别调用这两个规则库所得 到的控制信号的组合。具体地,第i条规则就是:
其中,如果根据摆杆的角度和角速度来确定控制信号,那么,I1=θ而I2=ω;如果根据水平位移x和速度v确定控制信号,那么,I1=x而I2=v。具体的模糊控制规则分别如表2和表3所示,推理采用max-min合成运算,解模糊则采用重心法。
在实际控制中,这两个规则库是交替使用的,从而在保证摆杆不倒的前提下,使滑块向中心位置靠拢。具体做法:每三个采样周期的前两个周期采用角度控制规则 库,第三个周期则同时采用两个规则库进行模糊推理计算,并将得到的两个控制量按下式加权计算出最终的控制量U。
其中,Uθ和Ux分别为通过角度控制规则库和位移控制规则库推理计算得到的控制量,加权系数可根据不同要求进行调整。
倒 立摆系统的控制算法分两部分:摆杆自动起摆控制和稳定在垂直小角度范围内控制,一般以摆杆偏离垂直站立角度±12°为界限,在±12°范围内采用模糊控制 算法使其稳定在垂直站立状态,超出这个范围则启动自动起摆控制算法,再次使其稳定在垂直站立状态。为了提高倒立摆系统的抗干扰性能,摆杆在±12°范围内 摆动时使用的模糊规则库可进一步细分,以确定合适的控制电压。
实验结果
单 级倒立摆控制系统的采样周期一般不大于20 ms。本系统模糊控制器的采样周期为15 ms,即每隔15 ms采样一次θ、ω、x和v的值,并给出控制信号U。图4和图5分别给出了前20 s内摆杆的角度电压曲线和前100 s内滑块的位移电压曲线。在倒立摆处于竖直倒立状态时加入不同的扰动信号,本控制系统表现出良好的抗干扰性能。图6和图7分别为加入幅值0.5的阶跃扰动 和幅值0.5频率为0.5 Hz的方波扰动后的摆杆角度波形图。扰动是通过将程序代码加在输出控制电压值上来实现的,输出控制电压范围为0~+10 V。由图可以看出,在Matlab环境下应用组合变量模糊控制策略对倒立摆系统的实时控制取得了很好的效果。在实际运行时,Matlab环境下的模糊控制 器使倒立摆系统保持稳定时间可以长达几个小时,并且具有鲁棒性,受外界干扰时可自动调整至稳定状态。
结束语
本文给出了一种低成本、高可靠性和稳定性的倒立摆硬件系统的解决方案以及在Matlab环境下控制软件的实现方法。在硬件方面,与其他同类倒立摆系统相比 较,本系统在保证性能的前提下大大降低了成本、实用性强;而且在软件方面,控制软件在Matlab环境下开发,利用简单的Matlab语言编程,对教学和 科学研究十分有益。实验结果表明,在Matlab环境下进行复杂非线性系统的实时控制是可行的。使用Matlab进行实时控制系统的开发,可大大简化系统 建模和控制算法的实现,利用Real-Time Workshop生成的C代码可直接移植到硬件或其他软件上,有效地缩短软件的开发时间。