倒立摆系统的建模及Matlab仿真资料

合集下载

(完整)倒立摆MATLAB建模

(完整)倒立摆MATLAB建模

Matlab程序设计上交作业要求:1)纸质文档:设计分析报告一份(包括系统建模、系统分析、系统设计思路、程序及其执行结果).2)Matlab程序:按班级统一上交后备查。

题目一:考虑如图所示的倒立摆系统.图中,倒立摆安装在一个小车上。

这里仅考虑倒立摆在图面内运动的二维问题.图倒立摆系统假定倒立摆系统的参数如下。

摆杆的质量:m=0.1g摆杆的长度:2l=1m小车的质量:M=1kg重力加速度:g=10/s2摆杆惯量:I=0.003kgm2摆杆的质量在摆杆的中心.设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量%≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。

要求:1、建立倒立摆系统的数学模型2、分析系统的性能指标—-能控性、能观性、稳定性3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的分析方法进行参数的确定4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状态变量的时间响应图。

题目二:根据自身的课题情况,任意选择一个被控对象,按照上题所示步骤进行分析和设计,并给出仿真程序及其执行结果。

题目一:考虑如图所示的倒立摆系统.图中,倒立摆安装在一个小车上。

这里仅考虑倒立摆在图面内运动的二维问题.图倒立摆系统假定倒立摆系统的参数如下。

摆杆的质量:m=0.1g摆杆的长度:2l=1m小车的质量:M=1kg重力加速度:g=10/s2摆杆惯量:I=0。

003kgm2摆杆的质量在摆杆的中心。

设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量%≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。

要求:1、建立倒立摆系统的数学模型2、分析系统的性能指标—-能控性、能观性、稳定性3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的分析方法进行参数的确定4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状态变量的时间响应图.设计分析报告1 系统建模在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统。

基于MATLAB的单级旋转倒立摆建模与控制仿真

基于MATLAB的单级旋转倒立摆建模与控制仿真

基于MATLAB的单级旋转倒立摆建模与控制仿真一、分析课题,选择数据源外文数据库多种多样,对于工程应用所研究的课题,通常选取比较常用的数据库为:IEEE Xplore(/Xplore/home.jsp)、Google学术搜索(/)以及SpringerLink(/)。

二、选取检索词单级旋转倒立摆的英文名称为:single rotational inverted pendulum,故以此为检索词进行检索。

三、构造检索式Single (and)rotational inverted pendulum四、实施检索,调整检索策略由于搜索步骤较多,此处只详细给出使用IEEE Xplore数据库的检索过程,另外两个数据库提供大概检索过程及结果截图。

由于搜索结果只有9条,数量较少,故调整检索词,过程如下:Google学术搜索:SpringerLink数据库:五、检索结果1、题目:Analysis of human gait using an Inverted Pendulum Model基于倒立摆模型的人体步态分析Zhe Tang ; Meng Joo Er ; Chien, C.-J. Fuzzy Systems, 2008. FUZZ-IEEE 2008. (IEEE World Congress on Computational Intelligence). IEEE International Conference onAbstract: IPM(Inverted Pendulum Model) has been widely used for modeling of human motion gaits. There is a common condition in most of these models, the reaction force between the floor and the humanoid must go through the CoG (Center of Gravity) of the a humanoid or human being. However, the recent bio-mechanical studies show that there are angular moments around the CoG of a human being during human motion. In other words, the reaction force does not necessarily pass through the CoG. In this paper, the motion of IPM is analyzed by taking into consideration two kinds of rotational moments, namely around the pivot and around the CoG. The human motion has been decomposed into the sagittal plane and front plane in the double support phase and single support phase. The motions of the IPM in these four different phases are derived by solving four differential equations with boundary conditions. Simulation results show that a stable human gait is synthesized by using our proposed IPM.摘要:IPM(倒立摆模型)已被广泛用于人体运动步态建模。

基于Matlab的一级倒立摆模型的仿真

基于Matlab的一级倒立摆模型的仿真

基于Matlab的一级倒立摆模型的仿真一.倒立摆模型的研究意义倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想的实验平台。

对倒立摆系统的研究能有效的反应控制中的典型问题:如非线性问题、鲁莽性问题、镇定问题等。

通过对倒立摆的控制,用来检测新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

二.倒立摆模型的数学建模质量为m的小球固结于长度为L的细杆上(细杆质量不计),细杆和质量为M的小车铰链相接分析过程如下:如图所示,设细杆摆沿顺时针方向转东伟正方向,水平向右为水平方向上的正方向。

当细杆白顺时针想要运动时水平方向施加的里应该是水平相应。

对方程组进行拉普拉斯变化,得到摆杆角度和小车位移的传递函数:摆杆角度和小车加速度之间的传递函数:摆杆角度和小车加速度之间的传递函数:位移X对外力F的传递函数:三.在Matlab中输入得到的反馈矩阵:采用MATLAB/Simulink构造单级倒立摆状态反馈控制系统的仿真模型,如下图所示。

首先,在M A T L A B的Command Window中输入各个矩阵的值,并且在模型中的积分器中设置非零初值(这里我们设置为[0 0 0.1 0]。

然后运行仿真程序。

得到的仿真曲线从仿真结果可以看出,可以将倒立摆的杆子与竖直方向的偏角控制在θ=0(即小球和杆子被控制保持在竖直倒立状态),另外说明下黄线代表位移,紫线代表角度。

四.总结由实验中可知,倒立摆系统是一个非线性的较复杂的不稳定系统,故要满足故要满足稳定性要求,就得对系统进行线性化近似和稳定控制。

当然我们调节出来的只是一个理想模型,在实际中会更加复杂,稳定性也会更难获得。

在这次实验中掌握了倒立摆仿真的整个过程,熟悉了MATLAB仿真软件Simulingk的使用,也对系统有了更好的理解。

一阶倒立摆控制系统设计matlab

一阶倒立摆控制系统设计matlab

一阶倒立摆控制系统设计matlab一、控制系统简介控制系统是指通过对某些物理系统或过程的改变以获取期望输出或行为的一种系统。

其中涉及到了对系统的建模、分析以及控制方法的选择和设计等多方面的问题。

控制系统可以通过标准的数学和物理模型来描述,并可以通过物理或者仿真实验进行验证。

本文将围绕一阶倒立摆控制系统设计和仿真展开。

主要内容包括:1.一阶倒立摆系统简介2.系统建模3.系统分析4.设计控制器5.仿真实验及结果分析一阶倒立摆(controlled inverted pendulum)是一种比较常见的控制系统模型。

它的系统模型简单,有利于系统学习和掌握。

一般而言,一阶倒立摆系统是由一个竖直的支杆和一个质量为$m$的小球组成的。

假设球只能在竖直方向上运动,当球从垂直平衡位置偏离时,支杆会向相反的方向采取动作,使得小球可以回到平衡位置附近。

为了控制一阶倒立摆系统,我们首先需要对其进行建模。

由于系统并不是非常复杂,所以建模过程相对简单。

假设支杆长度为$l$,支杆底端到小球的距离为$h$,支杆与竖直方向的夹角为$\theta$,小球的质量为$m$,地球重力为$g$,该系统的拉格朗日方程可以表示为:$L =\frac{1}{2}m\dot{h}^{2}+\frac{1}{2}ml^{2}\dot{\theta}^{2}-mgh\cos{\theta}-\frac{1}{2}I\dot{\theta}^{2}$$I$表示支杆的惯性矩,它可以通过支杆的质量、长度以及截面积等参数计算得出。

$h$和$\theta$分别表示小球和支杆的位置。

我们可以通过拉格朗日方程可以得出系统的动力学方程:$b$表示摩擦系数,$f_{c}$表示对支杆的控制力。

由于一阶倒立摆会发生不稳定的倾斜运动,即未受到外部控制时会继续倾斜。

我们需要对系统加上控制力,使得系统保持在稳定的位置上。

在进行控制器设计之前,我们需要对系统进行分析,以便更好地了解系统在不同条件下的特性表现。

二级倒立摆的建模与MATLAB仿真

二级倒立摆的建模与MATLAB仿真
假设系统中的每一根摆杆都是匀质刚体驱动力与放大器的输入成正比且无延迟地直接作用于小车上并且可以在忽略实验中的库仑摩擦和动摩擦的前提下设定摆杆竖直向上时下摆杆角位移摆杆角位移均为零摆杆顺时针旋转为正
二级倒立摆的建模与 MATLAB 仿真 刘文斌,等
二级倒立摆的建模与MATLAB仿真
刘文斌,干树川 (四川理工学院电子与信息工程系 四川自贡,643000)
取为最小值。设控制输入函数形式为: U(t)= -Kx(t) (11) 状态反馈矩阵: K = R -1B T P ( 12) 其中,P 可由 Riccati 微分方程: (13) 其中, 性能指标函数: (14)
[J].计算机测量与控制,2006,14(12):1641 - 1642 5 张 春,江 明,陈其工等.平行单级双倒立摆系统的建模与滑
模变结构控制[J].2008.1
23
图1 二级倒立摆模型
(1)
(2)
(3) 经过线性化如下: (4)
(上接第 7 页) 0; 0; 0; 0]; p=eig(A) [num,den]=ss2tf(A,B,C,D,1); printsys(num,den) Q=[1000 0 0 0 0 0; 0 0 0 0 0 0; 0 0 10 0 0 0; 0 0 0 0 0 0; 0 0 0 0 10 0; 0 0 0 0 0 0]; Tc=ctrb(A,B); rank(Tc) To=obsv(A,C); rank(To) R=1; K=lqr(A,B,Q,R); Ac=[(A-B*K)]; Bc=[B]; Cc=[C]; Dc=[D]; T=0:0.005:20; U=0.2*ones(size(T)); [Y,X]=lsim(Ac,Bc,Cc,Dc,U,T); plot(T,Y(:,1),':',T,Y(:,2),' -',T,Y(:,3),'

直线二级倒立摆建模与matlab仿真LQR

直线二级倒立摆建模与matlab仿真LQR

直线二级倒立摆建模与仿真1、直线二级倒立摆建模为进行性线控制器的设计,首先需要对被控制系统进行建模.二级倒立摆系统数学模型的建立基于以下假设:1)每一级摆杆都是刚体;2)在实验过程中同步带长保持不变;3)驱动力与放大器输入成正比,没有延迟直接拖加于小车;4)在实验过程中动摩擦、库仑摩擦等所有摩擦力足够小,可以忽略不计。

图1 二级摆物理模型二级倒立摆的参数定义如下:M 小车质量m1摆杆1的质量m2摆杆2的质量m3质量块的质量l1摆杆1到转动中心的距离l2摆杆2到转动中心的距离θ1摆杆1到转动与竖直方向的夹角θ2摆杆2到转动与竖直方向的夹角F 作用在系统上的外力利用拉格朗日方程推导运动学方程拉格朗日方程为:其中L 为拉格朗日算子,q 为系统的广义坐标,T 为系统的动能,V 为系统的势能其中错误!未找到引用源。

,错误!未找到引用源。

为系统在第i 个广义坐标上的外力,在二级倒立摆系统中,系统有三个广义坐标,分别为x,θ1,θ2,θ3。

首先计算系统的动能:其中错误!未找到引用源。

,错误!未找到引用源。

,错误!未找到引用源。

,错误!未找到引用源。

分别为小车的动能,摆杆1的动能,摆杆2的动能和质量块的动能。

小车的动能:错误!未找到引用源。

,其中错误!未找到引用源。

,错误!未找到引用源。

分别为摆杆1的平动动能和转动动能。

错误!未找到引用源。

,其中错误!未找到引用源。

,错误!未找到引用源。

分别为摆杆2的平动动能和转动动能。

对于系统,设以下变量: xpend1摆杆1质心横坐标 xpend2摆杆2质心横坐标 yangle1摆杆1质心纵坐标 yangle2摆杆2质心纵坐标 xmass 质量块质心横坐标 ymass 质量块质心纵坐标 又有:(,)(,)(,)L q q T q q V q q =-则有:系统总动能:系统总势能:则有:求解状态方程:可解得:使用MATLAB对得到的系统进行阶跃响应分析,执行命令:A=[0 0 0 1 0 0;0 0 0 0 1 0;0 0 0 0 1 01;0 0 0 0 0 0;0 86.69 -21.62 0 0 0;0 -40.31 39.45 0 0 0];B=[0;0;0;1;6.64;-0.808];C=[1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];D=[0;0;0];sys=ss(A,B,C,D);t=0:0.001:5;step(sys,t)求取系统的单位阶跃响应曲线:图2 二级摆阶跃响应曲线由图示可知系统小车位置、摆杆1角度和摆杆2角度均发散,需要设计控制器以满足期望要求。

倒立摆系统建模及MATLAB仿真

倒立摆系统建模及MATLAB仿真

倒立摆系统的建模及MATLAB仿真通过建立倒立摆系统的数学模型,应用状态反馈控制配置系统极点设计倒立摆系统的控制器,实现其状态反馈,从而使倒立摆系统稳定工作。

之后通过MA TLAB 软件中Simulink工具对倒立摆的运动进行计算机仿真,仿真结果表明,所设计方法可使系统稳定工作并具有良好的动静态性能。

倒立摆系统是1个经典的快速、多变量、非线性、绝对不稳定系统,是用来检验某种控制理论或方法的典型方案。

倒立摆控制理论产生的方法和技术在半导体及精密仪器加工、机器人技术、导弹拦截控制系统和航空器对接控制技术等方面具有广阔的开发利用前景。

因此研究倒立摆系统具有重要的实践意义,一直受到国内外学者的广泛关注。

本文就一级倒立摆系统进行分析和研究,建立倒立摆系统的数学模型,采用状态反馈极点配置的方法设计控制器,并应用MA TLAB 软件进行仿真。

1 一级倒立摆系统的建模1. 1 系统的物理模型如图1 所示,在惯性参考系下,设小车的质量为M ,摆杆的质量为m ,摆杆长度为l ,在某一瞬间时刻摆角(即摆杆与竖直线的夹角)为θ,作用在小车上的水平控制力为f 。

这样,整个倒立摆系统就受到重力,水平控制力和摩擦力的3 外力的共同作用。

图1 一级倒立摆物理模型1. 2 系统的数学模型在系统数学模型中,本文首先假设:(1) 摆杆为刚体。

(2)忽略摆杆与支点之间的摩擦。

(3)忽略小车与导轨之间的摩擦。

然后根据牛顿第二运动定律,求得系统的运动方程为:方程(1) , (2) 是非线性方程,由于控制的目的是保持倒立摆直立,在施加合适的外力条件下,假定θ很小,接近于零是合理的。

则sinθ≈θ,co sθ≈1 。

在以上假设条件下,对方程线性化处理后,得倒立摆系统的数学模型:1. 3 系统的状态方程以摆角θ,角速度θ',小车的位移x ,速度x'为状态变量,输出为y 。

即令:则一级倒立摆系统的状态方程为:2 控制器设计及MATLAB 仿真2. 1 极点配置状态反馈的基本原理图2 状态反馈闭环控制系统极点配置的方法就是通过一个适当的状态反馈增益矩阵的状态反馈方法,将闭环系统的极点配置到任意期望的位置。

基于MATLAB的一级倒立摆控制系统仿真与设计

基于MATLAB的一级倒立摆控制系统仿真与设计

《控制系统分析与综合》任务书题目:基于MATLAB的一级倒立摆控制系统仿真分析与设计要求:对给定直线倒立摆系统模型,首先利用matlab对系统进行根轨迹、bode 图或能控性分析,然后根据控制系统设计指标进行相应控制器设计,在matlab 仿真环境下得到控制器参数,再将其写入实际倒立摆控制系统中,观察实际控制效果,进行控制参数的适当调整。

任务:1、超前校正控制器设计设计指标:调整时间t s=0.5s (2%) ;最大超调量δp≤10%设计步骤:先对传递函数模型进行根轨迹分析,讨论原系统的稳定性等,然后利用sisotool设计超前校正控制器,仿真满足设计要求后,再在实际系统中运行测试控制效果,观察分析实际控制现象,进行参数微调。

2、滞后超前校正控制器设计设计指标:系统的静态位置误差常数为10,相位裕量为500,增益裕量等于或大于10 分贝。

设计步骤:先对传递函数模型进行bode图分析,讨论原系统的稳定性等,然后利用sisotool设计滞后超前校正控制器,仿真满足设计要求后,再在实际系统中运行测试控制效果,观察分析实际控制现象,进行参数微调。

3、PID控制设计指标:调整时间t s尽量小;最大超调量δp≤10%设计步骤:先在matlab/simulink下构建PID仿真控制系统,依照PID参数整定原则进行系统校正,仿真满足设计要求后,再在实际系统中运行测试控制效果,观察分析实际控制现象,进行参数微调。

4、状态空间极点配置控制设计指标:要求系统具有较短的调整时间(约3秒)和合适的阻尼(阻尼比ζ= 0.5-0.7)。

设计步骤:先对系统进行能控性分析,然后根据设计要求选择期望极点(考虑主导极点),编程求出反馈矩阵K,进行系统仿真。

仿真满足设计要求后,再在实际系统中运行测试控制效果,观察分析实际控制现象,进行参数微调。

设计报告要求:报告提供如下内容1 封面2 目录3 正文(1)任务书(2)分别对四个设计任务按照系统分析、控制器仿真设计、实际系统运行分析形成报告4 收获、体会5 参考文献格式要求:题目小三,宋体加粗目录、正文、小标题均为小四宋体,其中标题加粗。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1 页共11 页倒立摆系统的建模及Matlab仿真1.系统的物理模型考虑如图(1)所示的倒立摆系统。

图中,倒立摆安装在一个小车上。

这里仅考虑倒立摆在图面内运动的二维问题。

图(1)倒立摆系统假定倒立摆系统的参数如下。

摆杆的质量:m=0.1gl=1m小车的质量:摆杆的长度:2重力加速度:g=9.8m/M=1kg s摆杆的质量在摆杆的中心。

设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量?≤10%,调节时间ts ≤4s ,通过小车的水平运动使倒立摆保持在垂直位置。

2.系统的数学模型2.1建立倒置摆的运动方程并将其线性化。

为简化问题,在数学模型中首先假设:1)摆杆为刚体;2)忽略摆杆与支点之间的摩擦;3)忽略小车与接触面间的摩擦。

?),在u设小车瞬时位置为z,摆心瞬时位置为(作用下,小车及摆均产生加速远动,sin?lz根据牛顿第二定律,在水平直线远动方向的惯性力应与u平衡,于是有22dzd?)?sinu?M?m(zl22dtdt???2????z(M?mml?)cos?mlusin?即:??①绕摆轴转动的惯性力矩与重力矩平衡,因而有.第2 页共11 页2??d??? sin??lcosm(z?lsinmgl)??2dt?????22???????即:nis?l?ocgcosincoszs?ls??②以上两个方程都是非线性方程,为求得解析解,需作线性化处理。

由于控制的目的是保持倒立摆直?2?????且可忽略则,立,在试驾合适的外力条件下,假定θ很小,接近于零时合理的,1sincos??,项。

于是有???M?zm?u?ml??)(③????g?z?l??④联立求解可得1mg?u?z????MM 1)?m(M????u??MlMl 列写系统的状态空间表达式。

2.2??T xx,x,x,,选取系统变量则xx,x,xx?,42134123xx??211mgux???x?32MM x?x?431)(M?mu?x?x?34MlMl 即00100????z??1mg??????000?z?????dMM??Bu?Ax?xux????????00001???dt????1gm?(M)????000???????MlMl??????Cx?0?y?xx1001代入数据计算得到:0100????000?1??????T0D,?0??1BA?,?001,C100??1000??00011??11 页3 页共第3.设计控制器3.1判断系统的能控性和稳定性1100????0011????23BBAABAB?Q?故被控对象完全可控,rank()=4,Q kk??11?0?10??011?10???22???11?。

出现大于零的特征值,故被,,0 解得特征值为 0由特征方程0??11I?A?)(控对象不稳定3.2确定希望的极点,另一对为远极点,认为系统性能主要由主导,选其中一对为主导极点和希望的极点n=4ss21极点决定,远极点只有微小影响。

根据二阶系统的关系式,先确定主导极点???42??1????10.?e??t1.67?有,闭环可得;取误差带,于是取,则6.?059?0.02.?0?pns??n2????1?js??=-10.8j,远极点选择使它和原点的距离大于主导极点与原点距离主导极点为?n,21s??15倍,取的54,33.3采用状态反馈方法使系统稳定并配置极点??kkkk?k;状态反馈系统的状态方程,馈状态反的控制规律为为kxu??3102?,其特征多项式为xBK)Bvx??(A?432??????101011)kk?(?k?k)??(k?k?AI?(?BK)⑤011320希望特征多项式为2432????????2369??.08j)49932?.286?.64?)(80115(?)(??.j?1⑥??9281543349249936k??.?.?.?.比较以上两式系数,解得状态反馈矩阵.第4 页共11 页4.设计全维观测器4.1判断系统的能观性1000????0010????3T2TT C?Q?)C(A)CAC(AQ )=4,,rank(故被控对象完全可观4.2确定观测器的反馈增益gg??00?01??1?000??????(A?GC)x?Bv?GCxx全维观测器的动态方程为;其特征多项式为432??????(?11g?g(?11)?g??gg?(g?11)))?GCI?(A?⑦312010取观测器的希望极点为:-45,-45,-3+3j,-3-3j;则希望特征多项式为2432????????9634650????10.8j)?258313770(15?)?(0?1?.8j)(⑧??T比较以上两式系数,解得观测器反馈矩阵64984??14826962594?G5.降维状态观测器的设计5.1建立倒置摆三维子系统动态方程设小车位移z由输出传感器测量,因而无需估计,可以设计降维(三维)状态观测器,通过重新排列被控系统变量的次序,把需由降维状态观测器估计的状态变量与输出传感器测得的状态变量分离开。

将z作为第四个状态变量,则被控系统的状态方程和输出方程变换为0?100z1z????????????????????01000d??????????u????????????100?011dt????????z1000z0????????⑨z??????????10?y00??????z??第5 页共11 页?x??????xAAb??1112111?u??????????x xAAb????????2222212简记为:x????1I0y?y???1x??2式中0?10??????1?00A??T?TT??,,,]?1[10b?0A?00zx??????T,,,,=0 1?xI?z?y0Ab?001A?2122112被控系统的n-q维111211??0110??子系统动态方程的一般形式为???Azxx?Ax?v,1111211?????yuz?byu?zv??bAy?Ay?bu?, 式中1212122?为子系统输出量。

故倒置摆三维子系统动态方程为z0?10z1z??????????d???????????0001u?????????dt????????????0110?1???????? z?????????0z1?0????????5.2.判断子系统的可观测性A1=[0 -1 0;0 0 1;0 11 0];C1= [1 0 0];Qg1=obsv(A1,C1);r=rank(Qg1)运行Matlab程序;结果为r=3,故该子系统可观测 ???????????yhA?h??AAhA?A?h?A?b?hbu22211121121121降维状态观测器动态方程的一般形式为??xh?y?1??T。

考虑被控对象参数,单倒置摆降维观测器动态方程的一般形式为式中h=hhh2102???1h0?h?h1?????100???????????h?h1y00u?h?h???????2110??????111h0?11?h?h?h??????1220 h??0????x??yh??11??h??2.第6 页共11 页5.3确定三维状态观测器的反馈矩阵h三维状态观测器的特征多项式为??????23????h???I?11?A?hAh?11h?h??21110021设希望的观测器闭环极点为-45,-3+3j,-3-3j,则希望特征多项式为??????32??????810???45??3?3j51288?3?3j??? h=比较以上两式系数,解得1371?51299-故所求三维状态观测器的动态方程为?51?101?2302???????????????y013878?u29901??????????????66632?13711101?????? 100051?????????010?2990??x?????1???y?x ??????010?13710y??????00001????6.Matlab仿真分析6.1源程序通过Matlab对用全维状态观测器实现状态反馈的倒置摆系统进行仿真分析,下面是文件名为Inversion_pendulum_system.m的源程序%倒立摆系统建模分析%a)判断系统能控性和能观性clear all;clcA=[0 1 0 0;0 0 -1 0;0 0 0 1;0 0 11 0];B=[0;1;0;-1];C=[1 0 0 0];D=0;Uc=ctrb(A,B);rc=rank(Uc);n=size(A);if rc==ndisp('The system is controlled.')elseif rc<ndisp('The system is uncontrolled.')endV o=obsv(A,C);ro=rank(V o);if ro==n)'The system is observable.'disp(第7 页共11 页elseif ro~=ndisp('The system is no observable.')end%b)判断系统稳定性P=poly(A),v=roots(P)Re=real(v);if(length(find(Re>0))~=0)disp('The system is unstable and the ubstable poles are:')v(find(Re>0))elsedisp('The system is stable!');end% c)极点配置与控制器-全维状态观测器设计与仿真pc=[-1+0.8*j,-1-0.8*j,-15,-15];po=[-45 -45 -3+3*j -3-3*j];K=acker(A,B,pc),G=acker(A',C',po)'Gp=ss(A,B,C,D); %将受控过程创建为一个LTI对象disp('受控对象的传递函数模型:');H=tf(Gp)Af=A-B*K-G*C;disp('观测器——控制器模型:');Gc=ss(Af,-G,-K,0) %将观测器-控制器创建为一个LTI对象disp('观测器——控制器的极点:');f_poles=pole(Gc)GpGc=Gp*Gc; %控制器和对象串联disp('观测器——控制器与对象串联构成的闭环系统模型:'); Gcl=feedback(GpGc,1,-1) %闭环系统disp('闭环系统的极点和零点:');c_poles=pole(Gcl)c_zeros=tzero(Gcl)lfg=dcgain(Gcl) %低频增益N=1/lfg % 归一化常数T=N*Gcl; %将N与闭环系统传递函数串联x0=[100 10 30 10 0 0 0 0];%初始条件向量t=[0:0.01:1]'; %时间列向量r=0*t; %零参考输入[y t x]=lsim(T,r,t,x0); %初始条件仿真plot(t,x(:,1:4),'-.',t,x(:,5:8)) %由初始条件引起的状态响应title('\bf状态响应')legend('x1','x2','x3','x4','x1hat','x2hat','x3hat','x4hat')figure(2)step(T)title('\bf阶跃响应')figure(3)impulse(T))'脉冲响应'\bf title(第8 页共11 页6.2 程序运行结果The system is controlled.The system is observable.P =1 0 -11 0 0v =3.3166-3.3166The system is unstable and the ubstable poles are:ans =3.3166K =-36.9000 -49.9200 -334.5400 -81.9200G =962594-14826-64984受控对象的传递函数模型Transfer function:s^2 - 1.776e-015 s - 10-----------------------s^4 - 11 s^2观测器——控制器模型:a =x1 x2 x3 x40 0 x1 -96 149.92 -2557 333.5 81.92 x2x3 1.483e+004 0 0 1 -81.92 -323.5 -49.92 6.495e+004 x4b =u1-96 x1-2594 x21.483e+004 x36.498e+004 x4c =第9 页共11 页x1 x2 x3 x4y1 36.9 49.92 334.5 81.92d =u1y1 0Continuous-time model.观测器——控制器的极点:f_poles =1.0e+002 *-1.4948 + 1.8786i-1.4948 - 1.8786i1.7424-0.0328观测器——控制器与对象串联构成的闭环系统模型:a =x1 x2 x3 x4 x50 1 0 0 x1 00 36.9 x2 0 0 -11 0 0 0 x3 0-36.9 0 x4 0 0 11 x5 -96 0 0 0 960 -2557 x6 2594 0 00 1.483e+004 0 0 x7 -1.483e+0046.495e+004 0 0 -6.498e+004 x8 0 x8 x6 x70 0 x1 081.92 x2 49.92 334.50 0 x3 0-81.92 -334.5 -49.92 x40 x5 0 181.92 333.5 49.92 x61 0 0 x7-81.92 -323.5 x8 -49.92b =u10 x10 x20 x30 x4-96 x5-2594 x61.483e+004 x76.498e+004 x8c =第10 页共11 页x1 x2 x3 x4 x5 x6 x7 x8y1 1 0 0 0 0 0 0 0d =u1y1 0Continuous-time model.闭环系统的极点和零点:c_poles =-45.0000-45.0000-15.0001-14.9999-3.0000 + 3.0000i-3.0000 - 3.0000i-1.0000 + 0.8000i-1.0000 - 0.8000ic_zeros =3.16230.2263-0.1707-3.4312-3.1623lfg =1.0000N =1.0000由控制器——全维状态观测器实现的倒立摆系统在初始条件下引起的状态变量的响应、输出变量的阶跃响应和脉冲响应如下图? txtx(实线)(虚线)和状态响应(2)图第11 页共11 页ty图阶跃响应(3)??ty图脉冲响应(4)。

相关文档
最新文档