单级倒立摆系统
单级倒立摆系统的建模与控制器设计

单级倒立摆系统的建模与控制器设计摘要:本文主要研究的是单级倒立摆的建模、控制与仿真问题。
倒立摆是一类典型的快速、多变量、非线性、强耦合、自然不稳定系统。
由于在实际中有很多这样的系统,因此对它的研究在理论上和方法论上均有深远的意义。
本文首先建立了单级倒立摆的数学模型,对其进行了近似线性化处理,得到了它的状态空间描述,并对系统的开环特性进行了仿真和分析。
然后,基于极点配置方法设计了单级倒立摆系统的控制器。
最后,用Matlab对系统进行了数值仿真,验证了所设计的控制算法的有效性。
1、绪论------------------------------------------------------------- 12、单级倒立摆系统的建模与分析--------------------------------------- 32.1 单级倒立摆系统的建模---------------------------------------- 32.2 单级倒立摆系统的模型分析------------------------------------ 63、单级倒立摆系统的极点配置控制器设计------------------------------ 113.1 单级倒立摆系统控制器设计的目标----------------------------- 113.2 单级倒立摆系统的能控性分析--------------------------------- 113.3 单级倒立摆系统的极点配置控制器设计------------------------- 123.4 闭环系统仿真分析------------------------------------------- 134、PID控制器的设计与分析------------------------------------------ 184.1、PID控制的基本原理----------------------------------------- 184.2、方案设计-------------------------------------------------- 184.3、PID控制设计分析------------------------------------------- 204.4、软件仿真调试结果------------------------------------------ 204.5、与极点控制器结果对比分析---------------------------------- 225、结论------------------------------------------------------------ 23 致谢--------------------------------------------------------------- 24 参考文献----------------------------------------------------------- 251、绪论倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。
单级倒立摆稳定控制

单级倒立摆稳定控制摘要单级倒立摆是一种受控系统,在工业控制和机器人技术中有着广泛的应用。
这篇文档将介绍单级倒立摆的结构、原理和控制方法,特别是借助PID控制系统来实现单级倒立摆的稳定控制。
单级倒立摆是一种类人形机器人,它通常由一个水平旋转的轮子和一个通过电机传动的滑移杆组成,最后再由摆杆上的陀螺控制实现倒立。
这种结构使得单级倒立摆成为了机器人应用领域中的一个挑战问题。
为了实现单级倒立摆的稳定控制,需要在控制系统中引入一个合适的控制机制。
PID控制算法是一种最为通用的控制算法之一,常被用于像单级倒立摆这样的机器人平衡控制。
PID控制PID控制是一种基于反馈的控制系统,在工业和机器人技术中得到了广泛的应用。
PID控制通过比较实际的输出值与期望的输入值之间的差异,来作出对输出值的控制。
PID控制可以对输出值的稳定性、可靠性和精度进行控制,适用于不同类型的工业和机器人控制系统。
PID控制通常由三个部分组成:比例(P)、积分(I)和微分(D)控制。
比例控制反馈调整输出值,使得实际输出值逼近期望输入值。
积分控制记录过去所有误差,并将这些误差相乘来调整输出值。
微分控制通过记录过去的误差变化率,来防止输出值的快速变化。
在单级倒立摆稳定控制中,采用PID控制可以较好地解决因摩擦力、惯性、重心偏移等因素导致的系统不稳定问题,进而实现系统的平衡控制。
单级倒立摆的稳定控制实现单级倒立摆的稳定控制需要进行以下步骤:步骤1:系统建模将单级倒立摆系统建模,根据运动学和动力学原理,得到系统的运动方程。
步骤2:PID参数调节通过对PID控制算法中比例、积分、微分三个部分的参数进行调整,得到较好的控制效果。
步骤3:PID控制实现将PID控制器与单级倒立摆系统进行连接,实现单级倒立摆的稳定控制。
本文档介绍了单级倒立摆的结构、原理和控制方法,分析了PID控制算法在单级倒立摆稳定控制中的应用。
通过对步骤进行深入的解析,得到了单级倒立摆的稳定控制方法。
单级倒立摆

2011级自动化1班 杨辉云 P111813841一级倒立摆的模糊控制一.倒立摆的模型搭建1. 单级倒立摆系统的数学模型对于单级倒立摆,如果忽略了空气阻力和各种摩擦阻力之后,可将直线一级倒立摆系统抽象成沿着光滑导轨运动的小车和通过轴承链接的均质摆杆组成,如图所示,其中小车的质量M=1.40kg ,摆杆质量m=0.08kg ,摆杆质心到转动轴心距离L=0,.2m ,摆杆与垂直向下方向的夹角为,小车华东摩擦系数fc=0.1。
摆杆θ传送带导轨直线单级倒立摆2. 倒立摆控制系统数学模型的建立方法利用PID 控制和拉格朗日方程两种建模。
一级倒立摆系统的拉格朗日方程应为L (q ,。
.q )=V (q ,。
q )—G (q ,。
q ) (1)式中:L 是拉格朗日算子,V 是系统功能;G 系统势能。
dt d x ∂∂L — x ∂∂L + x∂∂D= fi (2)式中:D 是系统耗散能,fc为系统的第i 个广义坐标上的外力。
一级倒立摆系统的总动能为:V=θθcos x ml ml 32)(21222。
+++x m M (3)一级倒立摆系统的势能为:G=θcos mgl θ (4)一级倒立摆系统的耗散能为:D=221。
x fc(5)一级倒立摆系统的拉格朗日方程为:0=∂∂+∂∂-∂∂θθθDL L dt d (6) F XDX L X L dt d =∂∂+∂∂-∂∂ (7)将(1)到(5)式带入(6)式得到如下:0sin sin sin cos m 3422=-+。
——θθθθθθθθmgl x ml x ml x l ml (8)(M+m )F x ml ml x fc=++θθθθsin cos 2。
— (9)一级倒立摆系统有四个变量:。
,,,θθx x 根据(7)式中的方程写出系统的状态方程,并在平衡点进行线性化处理,得到系统的状态空间模型如下:=。
X ⎢⎢⎢⎢⎣⎡00000189.000748.01-- 579.20386.00⎥⎥⎥⎥⎦⎤0100+x ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-8173.007467.00Y= ⎢⎣⎡01 010 ⎥⎦⎤00x二.倒立摆特性分析1. LQR 控制器的设计系统的能控性是控制器设计的前提,所以在设计前进行能控性分析,根据能控性矩阵[B TO =,AB ,B A 2,]B A 3,利用Matlab 中的rank 命令,可以得到r amk (TO )=4。
单级倒立摆系统建模(单页)

单级倒立摆系统建模倒立摆倒立摆(Inverted Pendulum)作为一个被控对象,是快速、多变量、开环不稳定、非线性的高阶系统,必须施加强有力的控制手段才能使之稳定。
许多新的实时控制理论,都通过倒立摆控制试验来加以验证。
从工程背景来讲,小到日常生活中所见到的各种重心在上、支点在下的物体的稳定问题,大到火箭的垂直发射控制等关键技术问题,都与倒立摆控制有很大的相似性。
小车倒立摆系统建模图1所示的是人手保持倒立摆平衡的问题,相应的平衡条件是和。
人手保持倒立摆平衡与导弹在发射初始阶段的状态控制没有本质差异。
0)(=t θ0d /d =tθ图1 手持倒立摆小车倒立摆动力学分析(3)单级旋转倒立摆系统结构单级旋转倒立摆系统结构表1 旋转式倒立摆系统符号意义及参数值符号意义数值与单位M驱动臂的总质量 0.285kg 1M摆杆的总质量 0.175kg 2G转动力矩与控制电压之比 0.0508Nm/V 0U控制输入电压VJ驱动臂对其质心处的转动惯量 0.00185kgm²1J摆杆对其质心处的转动惯量 0.00137kg m²2L驱动臂的质心到转轴的距离0.119m1L摆杆的质心到转轴的距离 0.24m2表1 旋转式倒立摆系统符号意义及参数值符号意义数值与单位L从关节到转轴的距离0.127m12F转轴处的摩擦阻力矩系数0.05Nms1F关节处的摩擦阻力矩系数 0.0026 Nms 2f驱动臂与摆杆作用力的水平分力N1xf驱动臂与摆杆作用力的垂直分力N1yθ驱动臂相对垂直线的角位移rad1θ摆杆相对垂直线的角位移rad2g重力加速度9.8m/s²。
单级倒立摆系统课程设计

单级倒立摆系统课程设计一、课程目标知识目标:1. 理解单级倒立摆系统的基本原理,掌握其数学模型和动力学特性;2. 学会分析单级倒立摆系统的稳定性,并掌握相应的控制策略;3. 掌握利用传感器和执行器实现单级倒立摆系统的实时控制方法。
技能目标:1. 能够运用所学的理论知识,设计并搭建单级倒立摆实验系统;2. 能够编写程序,实现对单级倒立摆系统的实时控制,使系统保持稳定;3. 能够分析实验数据,优化控制参数,提高系统性能。
情感态度价值观目标:1. 培养学生对物理系统控制原理的兴趣,激发学生探索科学技术的热情;2. 培养学生的团队协作意识和解决问题的能力,增强学生的自信心;3. 引导学生关注科技创新,认识到所学知识在实际应用中的价值。
课程性质:本课程为理论与实践相结合的课程,旨在帮助学生将所学的理论知识应用于实际系统中,提高学生的实践能力和创新能力。
学生特点:学生具备一定的物理、数学基础,对控制原理有一定了解,但实践经验不足。
教学要求:注重理论与实践相结合,鼓励学生动手实践,培养解决实际问题的能力。
在教学过程中,注重引导学生自主学习,培养学生的创新意识和团队协作精神。
通过本课程的学习,使学生能够将所学知识应用于实际系统,提高自身综合素质。
二、教学内容1. 理论知识:- 单级倒立摆系统的基本原理及数学模型;- 单级倒立摆系统的稳定性分析;- 控制策略及控制算法在单级倒立摆系统中的应用;- 传感器和执行器在单级倒立摆系统中的作用及选型。
2. 实践操作:- 搭建单级倒立摆实验系统;- 编写程序实现实时控制;- 调试优化控制参数;- 分析实验数据,提高系统性能。
3. 教学大纲:- 第一周:介绍单级倒立摆系统基本原理,学习数学模型,进行稳定性分析;- 第二周:学习控制策略及控制算法,探讨其在单级倒立摆系统中的应用;- 第三周:了解传感器和执行器,学习其在单级倒立摆系统中的作用及选型;- 第四周:分组搭建单级倒立摆实验系统,进行程序编写和实时控制;- 第五周:调试优化控制参数,分析实验数据,提高系统性能。
单级倒立摆系统的分析与设计

单级倒立摆系统的分析与设计小组成员:武锦张东瀛杨姣李邦志胡友辉一.倒立摆系统简介倒立摆系统是一个典型的高阶次、多变量、不稳定和强耦合的非线性系统。
由于它的行为与火箭飞行以及两足机器人行走有很大的相似性,因而对其研究具有重大的理论和实践意义。
由于倒立摆系统本身所具有的上述特点,使它成为人们深入学习、研究和证实各种控制理论有效性的实验系统。
单级倒立摆系统(Simple Inverted Pendulum System)是一种广泛应用的物理模型,其结构和飞机着陆、火箭飞行及机器人的关节运动等有很多相似之处,因而对倒立摆系统平衡的控制方法在航空及机器人等领域有着广泛的用途,倒立摆控制理论产生的方法和技术将在半导体及精密仪器加工、机器入技术、导弹拦截控制系统、航空器对接控制技术等方面具有广阔的开发利用前景。
倒立摆仿真或实物控制实验是控制领域中用来检验某种控制理论或方法的典型方案。
最初研究开始于二十世纪50年代,单级倒立摆可以看作是一个火箭模型,相比之下二阶倒立摆就复杂得多。
1972年,Sturgen等采用线性模拟电路实现了对二级倒立摆的控制。
目前,一级倒立摆控制的仿真或实物系统已广泛用于教学。
二.系统建模1.单级倒立摆系统的物理模型图1:单级倒立摆系统的物理模型单级倒立摆系统是如下的物理模型:在惯性参考系下的光滑水平平面上,放置一个可以在平行于纸面方向左右自由移动的小车(cart ),一根刚性的摆杆(pendulum leg )通过其末端的一个不计摩擦的固定连接点(flex Joint )与小车相连构成一个倒立摆。
倒立摆和小车共同构成了单级倒立摆系统。
倒立摆可以在平行于纸面180°的范围内自由摆动。
倒立摆控制系统的目的是使倒立摆在外力的摄动下摆杆仍然保持竖直向上状态。
在小车静止的状态下,由于受到重力的作用,倒立摆的稳定性在摆杆受到微小的摄动时就会发生不可逆转的破坏而使倒立摆无法复位,这时必须使小车在平行于纸面的方向通过位移产生相应的加速度。
单级倒立摆系统建模与控制器设计

得:
状态空间表达式
单级倒立摆系统的模型分析 根据小车质量,摆杆质量,摆杆转动轴心到杆质心的长度和 摆杆质量的具体数值,用Matlab 求出系统的状态空间方程 各矩阵。
程序1.M = 0.5; m = 0.2; I= 0.006; g = 9.8; l = 0.3; A=[0 1 0 0 0 0 3*M*g/(4*M+m) 0 00 0 1 0 0 3*(M+m)*g/((4*M+m)*l) 0]; C=[1 0 0 0 B=[0 0 0 1 0]; 4/(4*M+m) D=[0 0 0]; 3/((4*M+m)*l)];
摆杆不受外力干扰但是摆杆有一个小的初始偏角 程序2
系统开环初值响应曲线
由系统的开环初值响应曲线可知,系统是不稳定 的,这与我们的经验是相符合的。
摆杆初始位置在竖直状态,但是小车收到一个脉 冲干扰的情况。MATLAB程序如下:
系统开环脉冲响应曲线
由系统的开环脉冲干扰响应曲线可知, 系统是不稳定的,这与我们的经验也 是相符合的。
显然,因为系统有一个特征值为正实数5.5841, 故系统是不稳定的。
单级倒立摆系统的极点配置控制器设计
单级倒立摆系统控制器设计的目标 单级倒立摆系统控制器设计的目标是:通过对小 车的左右移动使得摆杆保持在竖直的位置。且对 于小车所给的阶跃输入信号,满足如下设计指标:
1、小车位置x和摆杆角度θ的稳定时间小于5秒; 2、位置x的上升时间小于0.5秒; 3、摆杆角度的超调量小于20度(0.35弧度)。
总结与收获
通过对单级倒立摆的建模与仿真学到了一 下知识
1、首先要将现实中系统转化相应的物理结构 2、充分掌握建立状态空间方程的过程 3、了解配置极点控制器以及PID控制器的方法 4、对MATLAB软件有了一个初步功能的了解
单级倒立摆控制系统设计及MATLAB中的仿真

单级倒立摆控制系统设计及MATLAB中的仿真第一步是建立单级倒立摆的数学模型。
单级倒立摆可以通过旋转关节将一根质量均匀的细杆与一个平台相连。
细杆的一端固定在平台上,另一端可以自由旋转。
细棒的旋转角度用θ表示,质心的位置用x表示。
根据牛顿力学和杆的动力学方程,可以得到如下数学模型:1.摆杆的运动方程:Iθ'' + mgl sin(θ) = u - F (1)其中,I是摆杆的转动惯量,m是摆杆的质量,g是重力加速度,l是摆杆的长度,u是控制输入(摆杆上的转动力矩),F是摩擦力。
2.质心的运动方程:m(x'' - lθ'²cos(θ)) = F (2)接下来是设计控制器来控制单级倒立摆。
一个常用的控制方法是使用线性化控制理论,其中线性化是将系统在一些工作点附近线性近似。
在这种情况下,将摆杆保持在垂直方向,并使质心静止作为工作点。
线性化系统的转移函数为:H(s) = θ(s)/u(s) = (ml²s² + mg)/(s(ml² + I))为了稳定单级倒立摆,可以使用自动控制理论中的反馈控制方法,特别是状态反馈。
状态反馈根据系统的状态变量来计算控制器输入。
为了设计状态反馈控制器,首先需要判断系统的可控性和可观测性。
根据控制系统理论,如果系统是可控和可观测的,则可以设计一个线性状态反馈控制器来稳定系统。
在MATLAB中,可以使用控制系统工具箱来设计单级倒立摆的控制系统。
首先,通过建立系统的传递函数模型(由线性化系统得到)来定义系统。
然后,使用控制系统工具箱中的函数来计算系统的稳定极点,并确定所需的反馈增益以稳定系统。
最后,可以使用MATLAB的仿真工具来模拟单级倒立摆的响应,并进行性能分析。
在进行仿真时,可以将倒立摆的初始状态设置为平衡位置,并应用一个输入来观察系统的响应。
可以通过调整控制器增益和系统参数来改变系统响应的性能,例如收敛时间、超调量和稳态误差。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单级倒立摆系统建模图中u 是施加于小车的水平方向的作用力,x 是小车的位移,θ是摆杆的倾斜角。
若不给小车施加控制力,倒摆会向左或向右倾斜,控制的目的是当倒摆出现偏角时,在水平方向上给小车以作用力,使得摆杆和小车能够迅速恢复到平衡位置(θ=0,x=0)。
为了建立倒立摆系统的简易模型又不失其实质,可先作如下假设: 1、倒立摆与摆杆均为匀质刚体。
2、可忽略摆与载体,载体与外界的摩擦,即忽略摆轴、轮轴、轮与接触面之间的摩擦力等。
系统的受力如下图示,其中小车的质量为M ,瞬时位移为x ,摆杆长度为2L ,质量为m ,瞬时位置为)sin (θL x -。
Hx小车受力图 摆杆受力图运用牛顿力学定律,小车沿x 轴方向运动有:22dtxd M H u =-摆杆重心沿x 轴方向有:22)sin (dtL x d m H θ-= 摆杆重心沿y 轴方向有:22)cos (dtL d m mg V θ=- 摆杆围绕其重心的转动运动可用力矩方程来描述:θθθcos sin HL VL I += 式中,2231)2(121mL L m I ==为摆杆围绕其重心的转动惯量。
控制中要求θ小于5弧度,即在θ很小时,θθ≈sin ,1cos ≈θ,将方程在平衡点(θ=0,x=0)附近线性化处理。
则以上各式变为:xM H u =- ① )(θL x m H -= ② 0=-mg V ③HL VL I +=θθ④ 由式①和式②得:u mL xm M =++θ )( ⑤ 由式②、③和④得:θθmgL xmL mL I =++ )(2 ⑥ 由式⑤和式⑥可得单级倒立摆方程:u MmLI m M mL MmL I m M gL M m m 22)()()(++++++=θθu MmLI m M mL I MmL I m M gL m x 22222)()(++++++=θ 对以上两式进行拉氏变换,整理得以u 为输入量,以摆杆摆角θ为输出量得传递函数G(s)=gL m M m s MmL I m M mLs U s )(])[()()(22+-++=θ控制指标共有4个,即单级倒立摆的摆角θ、摆速θ、小车位置x 、小车速度x。
以摆角θ和小车位移x 为输出量,将倒立摆运动方程转化为状态方 程的形式为:u MmL I m M mL I MmL I m M mL x x MmL I m M gL m MmL I m M gLM m m x x ⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛++++++⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⨯⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛+++++=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛2222222)(0)(0000)(1000000)()(0010 θθθθu x x x y ⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎭⎫⎝⎛⨯⎪⎪⎭⎫ ⎝⎛=⎪⎪⎭⎫ ⎝⎛=0001000001 θθθ假设系统内部各相关参数如下: M :小车质量 1kg m :摆杆质量0.5kgL :摆杆转动轴心到杆质心的长度 0.3m g :重力加速度 9.8m/s 2 I :摆杆转动惯量 0.015kg·m 2程序代码:%分别得摆角和小车位置对输入的传递函数 M=1; m=0.5; L=0.3; g=9.8; I=0.015;t1=m*(m+M)*g*L/[(M+m)*I+M*m*L^2]; t2=m^2*g*L^2/[(M+m)*I+M*m*L^2]; t3=m*L/[(M+m)*I+M*m*L^2];t4=(I+m*L^2)/[(M+m)*I+M*m*L^2]; A=[0 1 0 0 ; t1 0 0 0; 0 0 0 1; t2 0 0 0]; B=[0;t3;0;t4]; C=[1 0 0 0; 0 0 1 0]; D=[0;0];sys1=ss(A,B,C,D); sys2=tf(sys1)执行得:Transfer function from input to output...2.222#1: --------------------------s^2 - 1.776e-015 s - 32.670.8889 s^2 + 7.895e-016 s - 21.78 #2: --------------------------------- s^4 - 1.776e-015 s^3 - 32.67 s^2%摆角开环控制脉冲响应M=1;m=0.5;L=0.3;g=9.8;I=0.015;num=[m*L];den=[(M+m)*I+M*m*L^2 0 -m*(m+M)*g*L];impulse(num,den)axis([0 1 -60 0])grid执行得开环响应,系统开环不稳定:单级倒立摆系统的PID控制比例、积分和微分控制器的控制规律比例控制器能减小上升时间,减小稳态误差;积分控制亦可以减小稳态误差,但可能使瞬态响应变差;微分控制能提高系统稳定性、减小超调并改善系统瞬态响应。
针对单级倒立摆系统,由于本设计的控制目标是通过给小车底座一个控制力u,使小车停留在预定的位置,并使杆不倒下,故设定要跟踪的参考输入信号为零,同时加于小车的干扰力设为脉冲信号。
那么,添加了PID控制器的系统结构图如下:其等效方框图如下,便于MATLAB传递函数的录入。
图中)(s G c 为PID 控制器为:s K s K s K s G I P D c /)()(2++=其中,K P 、K D 、K I 分别为比例、微分和积分常数。
运行程序:%K P =1、K D =1、K I =1时 M=1; m=0.5; L=0.3; g=9.8; I=0.015; num=[m*L];den=[(M+m)*I+M*m*L^2 0 -m*(m+M)*g*L]; sys1=tf(num,den); kp=1; kd=1; ki=1;numPID=[kd kp ki]; denPID=[1 0];ctrc=tf(numPID,denPID); sys=feedback(sys1,ctrc);impulse(sys)title('Impulse response with kp=1 kd=1 ki=1')运行程序:%K P=100、K D=1、K I=10时M=1;m=0.5;L=0.3;g=9.8;I=0.015;num=[m*L];den=[(M+m)*I+M*m*L^2 0 -m*(m+M)*g*L];sys1=tf(num,den);kp=100;kd=1;ki=10;numPID=[kd kp ki];denPID=[1 0];ctrc=tf(numPID,denPID);sys=feedback(sys1,ctrc);impulse(sys)title('Impulse response with kp=100 kd=1 ki=10')再考虑小车位置时的控制仿真,此时运行程序:num=[0.889 0 -21.78];den=[1 0 -32.67 0 0];sys1=tf(num,den);kp=100;kd=50;ki=1;numPID=[kd kp ki];denPID=[1 0];ctrc=tf(numPID,denPID);sys=feedback(sys1,ctrc);impulse(sys)axis([0 3 0 60])控状态。
基于极点配置的倒立摆状态反馈控制器设计倒立摆系统全状态反馈模型图如下图示:要求设计控制器,使系统具有较短的调节时间(约4秒)和较小的超调(小0.05)。
由21ξξπσ--=e和ns t ξω4=可以得到单级倒立摆系统的两个性能指标69.0≥ξ,93.1≥n ω取7.0=ξ,2=n ω 。
将得到的阻尼比和自然角频率值代人下式:22,11ξωξω-+-=n n j s得到系统的2个主导极点为:-1.4+j1.43,-1.4-j1.43另外两个非主导极点,不妨取为两重极点,且距主导极点5倍以上,即满足:74.15||||||||43=⨯≥=s s ,故可以取743-==s s 。
至此,单级倒立摆系统的4个期望极点都已确定。
对系统进行任意零极点配置的前提是,系统状态完全能控,可以借助Matlab 程序判断系统的能控性。
M=1; m=0.5; L=0.3; g=9.8; I=0.015;t1=m*(m+M)*g*L/[(M+m)*I+M*m*L^2]; t2=m^2*g*L^2/[(M+m)*I+M*m*L^2]; t3=m*L/[(M+m)*I+M*m*L^2];t4=(I+m*L^2)/[(M+m)*I+M*m*L^2]; A=[0 1 0 0 ; t1 0 0 0; 0 0 0 1; t2 0 0 0]; B=[0;t3;0;t4];k=rank(ctrb(A,B))得到k=4,满秩,系统状态完全能控,可进行任意极点配置。
为匹配place()函数,把-7,-7两个极点改成-7-0.0001i,-7+0.0001i,因为增加的徐步很小,可以忽略不记,运行程序得结果:M=1;m=0.5;L=0.3;g=9.8;I=0.015;t1=m*(m+M)*g*L/[(M+m)*I+M*m*L^2];t2=m^2*g*L^2/[(M+m)*I+M*m*L^2];t3=m*L/[(M+m)*I+M*m*L^2];t4=(I+m*L^2)/[(M+m)*I+M*m*L^2];A=[0 1 0 0 ;t1 0 0 0;0 0 0 1;t2 0 0 0];B=[0;t3;0;t4];P=[-1.4+1.43i -1.4-1.43i -7-0.0001i -7+0.0001i];K=place(A,B,P)>> K =59.7966 11.1098 -9.0110 -8.8746加入以上状态反馈率的K值后运行如下程序:M=1;m=0.5;L=0.3;g=9.8;I=0.015;t1=m*(m+M)*g*L/[(M+m)*I+M*m*L^2];t2=m^2*g*L^2/[(M+m)*I+M*m*L^2];t3=m*L/[(M+m)*I+M*m*L^2];t4=(I+m*L^2)/[(M+m)*I+M*m*L^2];A=[0 1 0 0 ;t1 0 0 0;0 0 0 1;t2 0 0 0];B=[0;t3;0;t4];C=[1 0 0 0;0 0 1 0];D=[0;0];K=[59.7966 11.1098 -9.0110 -8.8746];Ac=[(A-B*K)];T=0:0.005:6;U=0.2*ones(size(T)); [Y,X]=lsim(Ac,B,C,D,U,T); plot(T,X(:,1),'-');hold on ; plot(T,X(:,3),'-.');hold on ; legend('PendAng','CartPos')方法,极点配置法的超调减小了,同时小车位置的响应不再发散,但小车位置没有得到跟踪,而是向负方向移动了。