二级倒立摆数学模型的建立与仿真培训资料
直线两级倒立摆实验指导
∂f 2 | . . . .. ∂x x =0,θ1 =0,θ 2 =0, x =0,θ1 =0,θ 2 =0, x =0 ∂f 2 | . . . .. ∂θ 2 x = 0,θ1 =0,θ 2 =0, x =0,θ1 =0,θ 2 =0, x =0
k 22 =
∂f 2 | . . . .. ∂θ1 x =0,θ1 =0,θ 2 =0, x =0,θ1 =0,θ 2 =0, x =0
' '' ' '
对于系统,设以下变量: xpend1 摆杆 1 质心横坐标; yangle1 摆杆 1 质心纵坐标; xpend2 摆杆 2 质心横坐标; yangle2 摆杆 2 质心纵坐标; xmass 质量块质心横坐标; ymass 质量块质心纵坐标; 又有:
©Googol 2005
136
第 6 章 直线两级倒立摆
L( q, q ) = T ( q, q ) − V ( q , q )
. . .
其中 L 为拉格朗日算子,q 为系统的广义坐标,T 为系统的动能,V 为系统的 势能。
d ∂L ∂L − = fi dt ∂ q. ∂qi i
其中 i=1,2,3……n, f i 为系统在第 i 个广义坐标上的外力,在二级倒立摆系统 中,系统的广义坐标有三个广义坐标,分别为 x, θ 1 , θ 2 。 首先计算系统的动能:
©Googol 2005
139
第 6 章 直线两级倒立摆
k11 = ∂x@tD a dd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k12 = ∂θ1@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k13 = ∂θ2@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k14 = ∂x'@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. a'@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k15 = ∂θ1'@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k16 = ∂θ2'@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k17 = ∂x''@tD add ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k21 = ∂x@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k22 = ∂θ1@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k23 = ∂θ2@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k24 = ∂x'@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k25 = ∂θ1'@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k26 = ∂θ2'@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; k27 = ∂x''@tD bdd ê. x@tD → 0 ê. θ1@tD → 0 ê. θ2@tD → 0 ê. x'@tD → 0 ê. θ1 '@tD → 0 ê. θ2'@tD → 0 ê. x''@tD → 0; Simplify@k12D Simplify@k13D Simplify@k17D Simplify@k22D Simplify@k23D Simplify@k27D m1 = 0.05 ; m2 = 0.13; m3 = 0.236; l1 = 0.0775; l2 = 0.25; g = 9.8 ; k12 k13 k17 k22 k23 k27
倒立摆系统的建模及Matlab仿真资料
第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?。
二级倒立摆的数学模型推导
二级倒立摆的数学模型推导一、二级倒立摆系统的结构二级倒立摆系统的结构如图1如示,机械部分主要有小车、下摆、上摆、导轨、皮带轮、传动皮带等,控制对象由小车、下摆、上摆组成,电气部分由电机、晶体管直流功率放大器、传感器以及保护电路组成。
图1 二级倒立摆结构示意图二、二级倒立摆的数学模型 (一)假设条件为了简化二级倒立摆的数学模型,作如下假设:1. 小车与导轨间的摩擦力与小车速度成正比;电机摩擦转矩与电机转矩成正比;上、下摆连接处摩擦力矩与二摆相对角速度成正比;下摆与小车连接处摩擦力矩与下摆相对角速度成正比。
2. 整个对象系统除皮带外视为刚体。
3. 皮带伸长忽略不计且传递作用力的延迟忽略不计。
4. 电路系统的传递延迟及功率放大器的非线性忽略不计。
5. 电机电感忽略不计。
6. 检测电位器设为线性的,即设检测信号分别为与r 、1θ、21θθ-成正比的电信号,且假设标定完全准确。
(二)系统参数说明推导中各符号的意义如下:0M :小车、皮带、电机转子、皮带轮归算到小车运动上的等效质量; 1M :下摆质量; 2M :上摆质量;1J :下摆转动惯量; 2J :上摆转动惯量;r :小车位移;1θ:下摆角位移;2θ:上摆角位移;1L :下摆全长(轴心到轴心); 1l :下摆质心与小车——下摆连接轴心距离; 2l :上摆质心与上摆——下摆连接轴心距离;'0F :小车与导轨间摩擦力,电机机械摩擦转矩,皮带轮摩擦转矩归算到小车运动上的等效摩擦系数,由下式定义等效摩擦力:'00f F r =⋅1F :下摆与小车摩擦力矩的等效摩擦系数,由下式定义等效摩擦力矩:111T F θ=⋅2F :上、下摆间摩擦力矩的等效摩擦系数,由下式定义等效摩擦力矩:2221()T F θθ=⋅-P :电机提供的控制力;U :电机外加电压即功率放大器输出电压; E :电机反电势; I :电机电流;R :电机等效电阻;i R :功率放大器等效输出电阻;d :皮带轮直径;θ:电机转速(/rad s );n 电机转速(转/分);K :功率放大器电压增益 ;e K :电势系数; t K :转矩系数;e :功率放大器的输入电压;参阅相关资料后,对各参数的取如下值:0M =1.328kg ,1M =0.220kg ,2M =0.187kg ,1J =0.004962kg m ⋅,2J =0.004822kg m ⋅,1L =0.490m ,1l =0.304m ,2l =0.226m ,'0F =22.947kg/s ,1F =0.00705/kg m s ⋅,2F =0.00264/kg m s ⋅,R =8.550Ω,i R =1.252Ω,d =0.130m ,K =8.000,t K =0.946/N m A ⋅(三)数学模型推导 此处少图3-2(P7)图3-2中,'i i f f =(1,2)i =小车在y 方向上无运动,小车受导轨垂直方向力示标出,推导中iy f ,ir f (1,2)i =分别表示i f 在y ,r 方向的分力。
直线二级倒立摆系统MATLAB模型的建立与仿真
直线二级倒立摆系统模型的建立与仿真1 引言倒立摆是一个高阶次、非线性、快速、多变量、强藕合、不稳定的系统。
在控制理论发展过程中,倒立摆常常被做为典型的被控对象来验证某一理论的正确性,以及在实际应用中的可行性,通过对倒立摆引入一个适当的控制方法使之成为一个稳定系统,来检验控制方法对不稳定性、非线性和快速性系统的处理能力。
该控制方法在军工、航天、机器人等领域和一般工业过程中都有广泛应用。
本文主要讨论二级倒立摆系统模型的建立和仿真。
2二级倒立摆系统数学模型直线二级倒立摆系统是由直线运动模块和两级倒立摆组件组成。
主要包括导轨、小车和各级摆杆、编码器等元件。
由驱动电机给小车施加一个控制力,迫使小车在导轨上左右移动。
而小车的位移和各级摆杆角度由编码器测得。
倒立摆的控制目标是使倒立摆的摆杆能在有限长的导轨上快速的达到竖直向上的稳定状态,以实现系统的动态平衡,并且小车位移和摆杆角度的振荡幅度较小,系统具有一定的抗干扰能力。
系统简化后的直线二级倒立摆系统物理结构图如图2.1所示。
图1.二级倒立摆系统模型系统模型建立所用的各参数如下:应用Lagrange 方程建立的数学模型为012221221211121221222212212222cos (,)cos()cos cos()1121111121111m +m +m (m l +m L )cos m l H (m l +m L )cos J m l m L m l L m l m l L J m l θθθθθθθθθθ⎡⎤⎢⎥=++-⎢⎥⎢⎥-+⎣⎦.1011...1221212122.11222cos (,,,)0(0(112222222f m l +m L sin m l H f f m l L sin f m l L sin f f θθθθθθθθθθθθθ⎡⎤-•⎢⎥⎢⎥=--•+⎢⎥⎢⎥-•+-⎢⎥⎣⎦111()-)-) 312(,)h θθ= [0 11211()sin m l m L g θ+ 212sin m l g θ] T0h =[1 0 0]T()1121212121312022(,)(,,,),x x H H h h u θθθθθθθθθθθθ⎡⎤⎡⎤⎢⎥⎢⎥=++⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦3 倒立摆PID控制器系统PID控制是比例积分微分控制的简称。
二级倒立摆的建模与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),'
直线二级倒立摆文档
(19)
对于一级摆杆,将式(15)、(16)和(17)带入式(4)得
(22)
b m1l1 m2 L sin 1 1 Q 1 , 2 ,1 , 2 0 b1 b2 b 0 m2l2 L sin 2 1 1 2
m2l2 sin 2 2 b m2l2 L sin 2 1 2 2 b2
对于一级摆杆,将式(15)、(16)和(17)带入式(3)得
(18)
m l L cos I1 m1l12 m2 L2 m1l1 m2 Lcos 1 x 1 2 2 2 1 2 b m l L sin m l m L g sin b1 b2 1 2 2 2 2 1 2 2 11 2 1
θ2
Y轴
θ1
二级摆杆
一级摆杆 F X轴 小 X
图. 2 由于 Lagrange 方程是以能量观点建立起来的运动方程式,列出系统的运动方程式只需 从两个方面去分析,一个是表征系统运动的动力学量,系统的动能,另一个是表征主动力作 用的动力学量,广义力。故对于复杂系统的数学建模常采用 Lagrange 方程来求解系统的动 力学方程,其具有概念清晰、具有一般性和可以简化建模过程等优点。 对于同时受到保守力和损耗力作用的直线二级倒立摆系统的 Lagrange 方程为:
(21)
其中
M m1 m2 P1 , 2 m1l1 m2 L cos 1 m2l2 cos 2
直线二级倒立摆的控制问题的研究和matlab仿真说明书本科毕设论文
直线二级倒立摆的控制问题的研究和matlab仿真摘要倒立摆系统是一个典型的多变量、非线性、强耦合和快速运动的高阶不稳定系统,它是检验各种新型控制理论和方法有效性的典型装置。
近年来,许多学者对倒立摆系统进行广泛地研究。
本文研究了直线二级倒立摆的控制问题。
首先阐述了倒立摆系统控制的研究发展过程和现状,接着介绍了倒立摆系统的结构并详细推导了二级倒立摆的数学模型。
本文分别用极点配置、LQR最优控制设计了不同的控制器,通过比较和MATLAB仿真,验证了所设计的控制器的有效性、稳定性和抗干扰性。
关键词: 倒立摆;极点配置;最优控制; MATLAB;仿真ABSTRACTInverted pendulum is a typical multi-variable, non-linear, strong coupling and rapid movement of high-end system instability, It is testing various new control theory and methods of the effectiveness of the typical devices. In recent years, many scholars of the inverted pendulum extensive study.In this paper, a straight two inverted pendulum control problem.First on the inverted pendulum control of the development process and the status quo, then introduced the inverted pendulum system and the detailed structure of the two inverted pendulum is derived a mathematical model. In this paper, with pole placement, LQR optimal control design a different controller, By comparing and MATLAB simulation, verified the effectiveness ,stability and anti-jamming of the controller.Key words:Inverted pendulum;Pole Assignment;Optimal Control;MATLAB;Simulation目录摘要 (1)ABSTRACT (2)第一章绪论 (5)1.1 控制理论的发展 (5)1.2 倒立摆系统简介及其研究意义 (5)1.3 倒立摆研究的发展现状及其主要控制方法 (7)1.4 本人所做工作 (8)第二章直线二级倒立摆数学模型的建立 (10)2.1 倒立摆系统的物理结构及特性分析 (10)2.2 系统的数学建模 (11)2.2.1 两种数学建模方法的比较 (11)2.2.2 系统数学建模参数的设定 (12)2.2.3 直线二级倒立摆的拉格朗日方程建模 (13)2.2.4 二级倒立摆系统数学模型的线性化 (17)2.3 系统参数的设定 (19)2.4 倒立摆系统的初步运动分析 (20)第三章直线二级倒立摆控制方案的设计 (22)3.1极点配置控制方案的设计 (22)3.1.1 极点配置理论 (22)3.1.2 极点配置算法 (23)3.2 线性二次型最优控制(LQR)方案的设计 (24)3.2.1 线性二次型最优控制原理 (24)3.2.2 Q, R阵的选择 (26)第四章控制系统的MATLAB仿真 (27)4.1 仿真软件的介绍 (27)4.1.1 MATLAB简介 (27)4.1.2 MATLAB7.0简介 (28)4.1.3 Simulink 6.0仿真工具箱简介 (29)4.2 无干扰控制系统的仿真 (30)4.2.1 极点配置控制方案的仿真 (32)4.2.2 线性二次型最优控制(LQR)方案的仿真 (36)4.3 干扰条件下控制系统的仿真 (40)4.3.1 极点配置控制方案的仿真 (42)4.3.2 线性二次型最优控制(LQR)方案的仿真 (45)结论 (50)致谢 (52)参考文献 (53)第一章绪论1.1 控制理论的发展控制理论发展至今已有100多年的历史,随着现代科学技术的发展,它的应用也越来越广泛。
二级倒立摆系统的控制与仿真剖析
二级倒立摆系统的控制与仿真一、LQR控制器设计(1) 二级倒立摆系统的状态空间模型设线性定常系统为x’=A*x(t)+B*u(t),y=C*x(t)其初始条件为x(t)=x0;其中:A=[0,1,0,0;40,0,0,0;0,0,0,1;-6,0,0,0];B=[0;-2;0;0.8];C=[1,0,0,0;0,0,1,0](2) 系统的能控性判定n=size(A); Tc=ctrb(A,B); nc=rank(Tc)n=6 6 nc=6从运行结果可知,系统的阶次为6,能控性矩阵的秩也为6,因此系统是能控的。
(3) 系统的能观性判定To=obsv(A,C);no=rank(To)no=6从运行结果可知,能观性矩阵的秩为6,与系统的阶次相等,因此系统是能观测的。
(4) LQR控制设计基于一级倒立摆系统具有能控性和能观性,因此可采用LQR进行控制,经大量反复试验和仿真,选取R=0.2,Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];F=lqr(A,B,Q,R)得到:F =2.2361 106.6465 -155.4620 5.1719 4.9639 -24.5330三、仿真曲线采用LQR控制方式,设初始状态为x(0)=[1,-1,0,0]’,在相同采样周期T下应用数字再设计方法对一级倒立摆系统进行仿真,其中F(T)分别取为:1. F(T)=F1(T)=F2. F(T)=F2(T)=F[I+(A+BF)T/2]3. F(T)=F3(T)=F[I-(A+BF)/2]-1(1) T=0.013s,øc=e(A+BF)T时系统的极点、状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0];B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;[G,H]=c2d(A-B*F,B,T); %%离散一的函数p0=eig(G),x0=[1 -1 0.5 0 0 0]';[y,x t]=dinitial(G,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%响应曲线plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')p0 =0.8647 + 0.0473i0.8647 - 0.0473i0.9224 + 0.0618i0.9224 - 0.0618i0.9932 + 0.0066i0.9932 - 0.0066i图1 øc=e(A+BF)T(2) T=0.013s,øc=ø +ΓF1(T)时系统的极点、状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0]; B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;[Ad,B]=c2d(A,B,T); %%离散二的函数Ad=Ad-B*F;p1=eig(Ad)x0=[1 -1 0.5 0 0 0]';[y,x t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')p1 =0.8349 + 0.0388i0.8349 - 0.0388i0.9247 + 0.0561i0.9247 - 0.0561i0.9932 + 0.0066i0.9932 - 0.0066i图2 øc=ø +ΓF1(T)(3) T=0.013s,øc=ø+ΓF2(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0]; B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;P2=(A-B*F)*T/2; %%离散3的函数F2=F*(eye(size(P2))+P2)[Add,B]=c2d(A,B,T);Ad=[Add-B*F2];p2=eig(Ad)x0=[1 -1 0.5 0 0 0]';[y,x,t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')F2 =1.7236 90.8365 -126.5481 4.0012 4.5195 -19.9211p2 =0.8676 + 0.0465i0.8676 - 0.0465i0.9224 + 0.0627i0.9224 - 0.0627i0.9932 + 0.0066i0.9932 - 0.0066i图3 øc=ø+ΓF2(T)(4) T=0.013s,øc=ø+ΓF3(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0]; B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;P3=(A-B*F)*T/2; %%离散4的函数F3=F*(eye(size(P3))-P3)^-1[Add,B]=c2d(A,B,T);Ad=[Add-B*F3];p3=eig(Ad),[y,x,t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')F3 =1.7779 92.1683 -129.2365 4.1238 4.5459 -20.3464p3 =0.8655 + 0.0476i0.8655 - 0.0476i0.9222 + 0.0622i0.9222 - 0.0622i0.9932 + 0.0066i0.9932 - 0.0066i图4 øc=ø+ΓF3(T)由上面的1-4图我们可以知道:F(T)分别取F1(T),F2(T),F3(T)构成的闭环离散系统时仿真曲线基本一致,相应情况的闭环极点也基本相同,而取F(T)=F3(T)时,从系统的极点看,用øc=ø+ΓF3(T)代替øc=e(A+BF)T 构成闭环系统的精确度相当好。
直线二级倒立摆建模与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角度均发散,需要设计控制器以满足期望要求。
二级倒立摆系统的控制与仿真
二级倒立摆系统的控制与仿真一、引言在计算机参与的具有联系受控对象的控制系统中,有必要对联系控制系统设计数字控制器的必要,一般对于联系的控制对象设计数字控制器的方法有:第一种是应用联系系统理论得到的联系控制规律,再将控制规律离散化,用控制器实现,第二种是将联系的控制对象离散化,用离散控制理论设计控制器参数,数字再设计就是根据连续系统及相应的控制规律如何重新设计对应的离散系统与相应的离散控制规律。
我们采用的是最优等价准则、双线性变换法、平均增益法进行数字再设计。
二、LQR控制器设计(1) 二级倒立摆系统的状态空间模型设线性定常系统为x’=A*x(t)+B*u(t),y=C*x(t)其初始条件为x(t)=x0;其中:A=[0,1,0,0;40,0,0,0;0,0,0,1;-6,0,0,0];B=[0;-2;0;0.8];C=[1,0,0,0;0,0,1,0](2) 系统的能控性判定n=size(A); Tc=ctrb(A,B); nc=rank(Tc)n=6 6 nc=6从运行结果可知,系统的阶次为6,能控性矩阵的秩也为6,因此系统是能控的。
(3) 系统的能观性判定To=obsv(A,C);no=rank(To)no=6从运行结果可知,能观性矩阵的秩为6,与系统的阶次相等,因此系统是能观测的。
(4) LQR控制设计基于一级倒立摆系统具有能控性和能观性,因此可采用LQR进行控制,经大量反复试验和仿真,选取R=0.2,Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];F=lqr(A,B,Q,R)得到:F =2.2361 106.6465 -155.4620 5.1719 4.9639 -24.5330三、仿真曲线采用LQR控制方式,设初始状态为x(0)=[1,-1,0,0]’,在相同采样周期T下应用数字再设计方法对一级倒立摆系统进行仿真,其中F(T)分别取为:1. F(T)=F1(T)=F2. F(T)=F2(T)=F[I+(A+BF)T/2]3. F(T)=F3(T)=F[I-(A+BF)/2]-1(1) T=0.013s,øc=e(A+BF)T时系统的极点、状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0, 0;0,-38.5321,37.8186,0,0,0];B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;[G,H]=c2d(A-B*F,B,T); %%离散一的函数p0=eig(G),x0=[1 -1 0.5 0 0 0]';[y,x t]=dinitial(G,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%响应曲线plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')p0 =0.8647 + 0.0473i0.8647 - 0.0473i0.9224 + 0.0618i0.9224 - 0.0618i0.9932 + 0.0066i0.9932 - 0.0066i图1 øc=e(A+BF)T(2) T=0.013s,øc=ø +ΓF1(T)时系统的极点、状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0];B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;[Ad,B]=c2d(A,B,T); %%离散二的函数Ad=Ad-B*F;p1=eig(Ad)x0=[1 -1 0.5 0 0 0]';[y,x t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')p1 =0.8349 + 0.0388i0.8349 - 0.0388i0.9247 + 0.0561i0.9247 - 0.0561i0.9932 + 0.0066i0.9932 - 0.0066i图2 øc=ø +ΓF1(T)(3) T=0.013s,øc=ø+ΓF2(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0, 0;0,-38.5321,37.8186,0,0,0];B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;P2=(A-B*F)*T/2; %%离散3的函数F2=F*(eye(size(P2))+P2)[Add,B]=c2d(A,B,T);Ad=[Add-B*F2];p2=eig(Ad)x0=[1 -1 0.5 0 0 0]';[y,x,t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')F2 =1.7236 90.8365 -126.5481 4.0012 4.5195 -19.9211 p2 =0.8676 + 0.0465i0.8676 - 0.0465i0.9224 + 0.0627i0.9224 - 0.0627i0.9932 + 0.0066i0.9932 - 0.0066i图3 øc=ø+ΓF2(T)(4) T=0.013s,øc=ø+ΓF3(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=[0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0, 0;0,-38.5321,37.8186,0,0,0];B=[0;0;0;1;5.7012;-0.0728];C=[1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0];D=[0;0;0];Q=[1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0];R=0.2;F=lqr(A,B,Q,R)T=0.013;P3=(A-B*F)*T/2; %%离散4的函数F3=F*(eye(size(P3))-P3)^-1[Add,B]=c2d(A,B,T);Ad=[Add-B*F3];p3=eig(Ad),[y,x,t]=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=[1 0 0 0 0 0]*x'; %%显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=[0 1 0 0 0 0]*x';plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=[0 0 1 0 0 0]*x';plot(t,x3);grid;title('状态变量x3的响应曲线')F3 =1.7779 92.1683 -129.2365 4.1238 4.5459 -20.3464 p3 =0.8655 + 0.0476i0.8655 - 0.0476i0.9222 + 0.0622i0.9222 - 0.0622i0.9932 + 0.0066i0.9932 - 0.0066i图4 øc=ø+ΓF3(T)由上面的1-4图我们可以知道:F(T)分别取F1(T),F2(T),F3(T)构成的闭环离散系统时仿真曲线基本一致,相应情况的闭环极点也基本相同,而取F(T)=F3(T)时,从系统的极点看,用øc=ø+ΓF3(T)代替øc=e(A+BF)T 构成闭环系统的精确度相当好。
小车倒立摆模型建立及初步仿真
实验名称:小车倒立摆模型建立及初步仿真一、写出模型推导过程下面N 和P 为小车与摆杆相互作用力的水平和垂直方向的分量。
分析小车水平方向所受的合力,可得到方程为:N x b F xM --= (1) 由摆杆水平方向的受力进行分析可以得到下面等式:()θθθθθsin cos sin 222ml ml xm N l x dtd m N -+=+= (2) 把这个等式代入(1)式中,得到系统的第一个运动方程:()F ml ml x b xm M =-+++θθθθsin cos 2 (3) 为了推出系统的第二个运动方程,对摆杆垂直方向的合力进行分析,得到下面的方程:()θcos 22l dtd m mg P =- θθθθcos sin 2 ml ml mg P --=- (4) 力矩平衡方程如下:θθ I Nl Pl =--cos sin (5) 方程中力矩的方向,由于φπθ+=,θφθφsin sin ,cos cos -=-=,故等式前面有负号。
合并这两个方程,约去P 和N ,得到第二个运动方程:()θθθcos sin 2x ml mgl ml I -=++ (6) 假设φ与1(单位是弧度)相比很小,即1〈〈φ,则可进行近似处理:0,sin ,1cos 2=⎪⎭⎫ ⎝⎛-=-=dt d θφθθ 用u 代表被控对象的输入力,线性化后两个运动方程如下:()()⎪⎩⎪⎨⎧=-++=-+u ml x b x m M x ml mgl ml I φφφ 2 (7) 对方程(7)进行拉普拉斯变换,得到:()()⎪⎩⎪⎨⎧=-++=-+)()()()()()()(22222s U s s ml s s bX s s X m M s s mlX s mgl s s ml I φφφ (8) (推到时假设初始条件为0)则,摆杆角度和小车位移的传递函数为:mgl s ml I mls s X s -+=222)()()(φ 摆杆角度和小车加速度之间的传递函数为:()mgl s ml I ml s A s -+=22)()(φ 摆杆角度和小车所受外界作用力的传递函数:22432222()()()()()()ml s s q b I ml M m mgl bmgl F s s s s s q q qq M m I ml m l φ=+++--⎡⎤=++-⎣⎦进行开环响应的仿真:M=0.5 kg m=0.2kg b=0.1 N/m/s l=0.3mI=0.006 kg m 2 T=0.005 s(采样时间)s s s s s s F s 4545.41818.311818.05455.4)()(2342--+=φ二、开环响应的MATLAB仿真程序%reverse_pedulumn_TF.m%倒立摆传递函数、开环极点及开环脉冲响应%transfuction=num/denM=0.5;m=0.2;b=0.1;I=0.006;g=9.8;l=0.3;q=(M+m)*(I+m*l^2)-(m*l)^2;%calculate the poly transfunctionnum=[m*l/q 0 0]den=[1 b*(I+m*l^2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0]my_tf=tf(num,den)%calculate the polars p[r,p,k]=residue(num,den);s=p%the pulse reponse of the transfunction and displayt=0:0.005:5;impulse(num,den,t)%step(num,den,t)%display the field: lateral 0-1,longititudal 0-60axis([0 1 0 60])grid%---------end----------Matleb仿真图像三、摆杆质量m=0.5kg、1kg时,MATLAB传递函数表示、开环极点及脉冲响应曲线图1、m=0.5kg2、m=1kg。
直线二级倒立摆控制课程设计指导书
直线两级倒立摆控制课程设计指导书一、课程设计目的学习直线两级倒立摆的数学建模方法,运用现代控制理论知识设计控制器,应用Matlab进行仿真并与实际系统运行结果进行对比分析。
通过本次课程设计,建立理论知识与实体对象之间的联系,加深和巩固所学的控制理论知识,增加工程实践能力。
二、课程设计内容1、应用动力学知识建立直线两级倒立摆的数学模型(微分方程的形式),并转变成状态空间的表达形式。
2、运用现代控制理论知识,按设计要求设计状态反馈控制器。
3、应用Matlab的Simulink建立控制系统的仿真模型,得出仿真结果。
4、将仿真设计所得的状态反馈设计参数应用于实际控制系统中,观察实际控制结果,对比仿真结果与实际输出结果,修正设计值,使之满足设计要求。
三、课程设计参数与要求1、控制对象示意图图1 直线两级倒立摆系统模型图2、对象的参数l摆杆1转动中心到杆质心的距离0.09m M 小车质量1.32 Kg1l摆杆2转动中心到杆质心的距离0.27m m1 摆杆1的质量0.04 Kg2m2 摆杆1的质量0.132 Kg F 作用在系统上的外力m3 质量块的质量0.208 Kg X 小车的位移θ1摆杆1与垂直向上方向的夹角θ2摆杆2与垂直向上方向的夹角注:θ1、θ2取逆时针方向为正方向3、控制要求(系统开始运动到稳定运行时,以及接受扰动时)※小车位置X 和摆杆角度的稳定时间小于5 秒;※小车位置X的波动幅度小于0.3m;※摆杆角度θ1、θ2的波动幅度小于5度※稳态误差小于2% 。
四、课程设计所需提交的内容1、系统建模的详细推导过程和状态反馈控制器的设计过程。
2、给出整个控制系统的Simulink仿真结构图。
3、计算系统引入状态反馈前和引入状态反馈后的极点,并用Matlab绘图功能绘制极点图。
4、应用Matlab绘图功能分别绘制系统在零输入状态(初始状态不为零)、扰动输入(扰动量持续时间≤0.5s)时的系统响应曲线图(只需X、θ1、θ2的响应曲线,在每一输入状态下,此三个量的响应曲线在同一图中体现),并给出给响应曲线的动态响应指标值。
二级倒立摆的建模与MATLAB仿真毕业论文
二级倒立摆的建模与MATLAB仿真摘要:本文根据牛顿力学原理,使用机理建模法对二级倒立摆系统进行了建模与仿真研究。
利用最优化控制理论,研究了线性二次型最优控制器对倒立摆系统进行了有效控制。
基于MATLAB程序的设计、仿真的运行,结果表明,二级倒立摆的数学建模法是切实可行的,而且十分可靠,同时利用LQR 控制器实现了对系统的控制,可以达到系统所需要的稳定性,鲁棒性。
关键词:二次型最优控制;二级倒立摆;MATLAB1 引言倒立摆系统是一个常用的、简单的、典型的可进行控制理论研究的实验平台,很多难以用常规实验研究的控制理论问题,都可以通过倒立摆系统来进行研究从而使这些抽象的控制理论问题,通过该系统可以直观的鲜明的显示出来。
所以倒立摆系统一直是控制领域的热点,并且在这些年来在不断的发展进步对控制理论的研究起到了重要作用。
倒立摆系统是一个典型的不稳定系统,具有多变量、强耦合、非线性等特点。
同时也是仿人类行走机器人和火箭发射飞行的过程调整和直升机飞行等实际运用控制对象的最简模型。
本文建立在牛顿力学定律的基础上,研究对象设置为二级倒立摆,对其进行数学建模,再使用二次型最优控制器(linear quadratic regulator,LQR)可以得到一个最优状态反馈的矩阵K,然后在通过对Q和R两个加权矩阵的严谨选取从而实现对二级倒立摆系统良好的自动控制。
2 二级倒立摆模型建立一个典型的二级倒立摆系统主要由机械部分和电气装置两部分组成。
机械装置的结构主要由小车、摆杆1、摆杆2及连接轴等组成,电气装置的主要结构是功率放大器、电动机、驱动电路、保护电路等。
其系统的结构如图1所示。
实验假设如下:(1)小车、摆杆1、摆杆2的材料性质都是刚体的。
(2)小车的驱动力和放大器的输出直接的,无滞后的作用于小车上。
(3)忽略实验中过程中出现的不可避免的各种摩擦力如库伦摩擦力等。
图1 二级倒立摆控制系统的结构二级倒立摆的参数设定如表1。
二级倒立摆模型
二级倒立摆模型1 系统数学模型在忽略空气阻力及各种摩擦力之后,可将倒立摆系统抽象成小车、匀质杆和质量块组成的系统。
利用拉格朗日方程推导倒立摆运动学方程,如下:),(),(),(...q q V q q T q q L -=其中,L 为拉格朗日算子,q 为系统的广义坐标,T 为系统的动能,V 为系统的势能。
拉格朗日方程由广义坐标i q 和L 表示为:i if q Lq L dt d =∂∂-∂∂.其中,i f n i ,,,2,1 =为系统沿该广义坐标方向上的外力,在本系统中,设系统的三个广义坐标分别为21,,θθx 。
由于在广义坐标21,θθ上均无外力作用,有以下等式成立:01.1=∂∂-∂∂θθLL dt d (1) 02.2=∂∂-∂∂θθLL dt d (2) 求解代数方程,表示成一下形式:),,,,,,(...2.1.211..1x x x f θθθθθ= (3)),,,,,,(...2.1.212..2x x x f θθθθθ= (4)取平衡位置时各变量初值为零)0,0,0,0,0,0,0(),,,,,,(...2.1.21=x x x θθθθ,将(3)(4)式在平衡位置进行泰勒级数展开,并线性化,)..17213112..1x K K K ++=θθθ (5))..27223122..2x K K K ++=θθθ (6)现在得到了两个线性微分方程,由于我们采用了加速度作为输入,因此还需要加上一个方程..x u = (7)取状态变量如下:.26.15.423121,,,,,θθθθ======x x x x x x x x 由(5) (6)(7)式得到状态空间方程如下:u K K x x x x x x K K K K x x x x x x ⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡271765432123221311.6.5.4.3.2.11000000000000000001000000100000010002 线性二次型最优控制器的设计我们要设计一个线性二次型最优控制器,使得当给系统施加一个阶跃输入时,摆杆会摆动,然后仍然回到垂直位置,这里没有考虑小车位置。
毕业设计二级倒立摆建模之欧阳歌谷创编
四川理工学院毕业设计(论文)欧阳歌谷(2021.02.01)二级倒立摆系统建模与仿真学生:学号:专业:自动化班级:自动化指导教师:四川理工学院自动化与电子信息学院二O一一年六月欧阳歌谷创编 2021年2月1摘要常规的PID控制从理论上可以控制二级倒立摆,但在实际中对PID控制器参数的整定为一难点。
本文针对二级倒立摆系统单输入三输出的不稳定系统,通过三回路PID控制方案,来完成对倒立摆的控制。
利用状态反馈极点配置的方法来对参数进行整定,解决PID参数整定的难点。
然后借助于MATLAB中的Simulink模块对所得的参数进行仿真,结果表明三回路PID控制是成功的,参数的有效性,也证实了这种参数整定方法简单实用。
并通过配置不同位置的极点,对其结果进行分析得到极点配置的最佳配置方案。
关键词:倒立摆;PID;状态反馈; MATLABABSTRACTDouble Inverted Pendulum System Modeling and Simulation Conventional PID control theory to control the inverted pendulum, but in practice the parameters of PID controller tuning is a difficult. In this paper, double inverted pendulum system, the instability of single-input three-output system, through the three-loop PID control programto complete the inverted pendulum control.Pole placement using state feedback approach to setting the parameters to resolve the difficulties PID parameter tuning. With MATLAB and Simulink in the module parameters obtained from simulation results show that the three-loop PID control is successful, the effectiveness of the parameters, but also confirms this tuning method is simple and practical.Different locations through the pole configuration, the results were too extreme configuration of the best configuration.Key words:pendulum;PID control ;state feedback;MATLAB目录摘要IABSTRACTII第1章引言11.1 倒立摆研究的目的及意义11.2 倒立摆的发展史和研究现状21.3本文的主要工作4第2章倒立摆的建模52.1 二级倒立摆的简介及物理模型52.2 二级倒立摆计算机控制系统结构52.3 二级倒立摆的数学模型62.4根据牛顿力学、刚体动力学列写二级倒立摆的数学模型7第3章控制策略的选择123.1 MATLAB简介123.2该系统的能控、能观及稳定性的分析153.2.1系统的能控性153.2.2系统能观性173.2.3系统的稳定性173.3 确定控制策略183.4 控制器参数整定方法183.5 通过状态反馈极点配置法来整定参数20第4章计算机仿真及结果分析234.1 Matlab下Simulink模块简介234.2 在Simulink下的仿真244.3对仿真结果的分析31第5章结束语33致谢34参考文献35第1章引言1.1 倒立摆研究的目的及意义在控制理论发展的过程中, 一种理论的正确性及在实际应用中的可行性,往往需要一个典型对象来验证, 并比较各种控制理论之间的优劣, 倒立摆系统就是这样的一个可以将理论应用于实际的理想实验平台。
基于LMI的二级倒立摆的建模与仿真
基于LMI的二级倒立摆系统的∞H鲁棒控制摘要倒立摆系统为典型的快速、多变量、非线性、绝对不稳定系统, 且存在不确定因素。
针对二级倒立摆系统中所受摩擦的不确定性,采用LMI方法, 建立了二级倒立摆模型,设计了∞H鲁棒控制器, 给出了控制器的求解方法。
仿真实验结果证明了该控制方法的有效性和可行性,并且具有很好的鲁棒稳定性和响应速度快的优越性,对高阶次不稳定系统具有很好的控制效果。
关键词:二级倒立摆;线性矩阵不等式(LMI);∞H鲁棒控制0 引言现代控制工程所面临的问题极其复杂。
实际的工程控制系统中, 总是存在一定的不确定性。
倒立摆即是一个包含不确定性的系统, 也是控制理论的一个理想实验平台, 对倒立摆系统的研究具有重要的理论和实际意义。
本文采用线性矩阵不等式(LMI)方法,设计了二级倒立摆系统的鲁棒∞H状态反馈控制器,有效地克服了用求解两个联立的里卡迪方程获得∞H控制器时求解过程不容易收敛的困难,并且可降低控制器参数的数量级,使其在实控上易于实现。
根据文献[1]中对LMI的处理方法, 对二级倒立摆系统进行了仿真研究,结果表明,这样的控制方法可使二级倒立摆系统具有很好的鲁棒稳定性。
1 二级倒立摆系统建模1.1 倒立摆系统结构图1是二级倒立摆的系统结构图,它由三部分组成:计算机、电气部分和机械部分。
计算机部分有A/D、D/A转换模块,运动控制卡和PC机;电气部分主要有:光电编码器、直流功率放大器、伺服电机和保护电路;机械部分有摆杆、轨道、运动小车和皮带轮等。
计算机伺服驱动器运动控制卡伺服电机小车下摆杆上摆杆光电编码器1光电编码器2光电编码器3图1 二级倒立摆系统结构图1.2 倒立摆系统特性分析倒立摆系统是典型的机械电子系统,具有如下特性:(1)欠冗余性。
一般的倒立摆控制系统采用单电机驱动,无冗余结构。
采用欠冗余的设计方法主要是在不失系统可靠性的前提下节约经济成本或节约有效的空间。
(2)仿射非线性系统。
倒立摆控制系统是一种典型的仿射非线性系统,可以用微分几何的方法进行分析。
直线二级倒立摆的建模和控制
西南科技大学自动化专业方向设计报告设计名称:直线二级倒立摆的建模和镇定控制姓名:学号:班级:指导教师:起止日期:方向设计任务书学生班级:学生姓名:学号:设计名称:起止日期:指导教师:方向设计学生日志直线二级倒立摆的建模与镇定控制摘要(150-250字)倒立摆是一个典型的多变量、非线性、强耦合、欠驱动的自然不稳定系统,对倒立摆系统的控制研究,能反映控制过程中的镇定、非线性和随动等问题,因此常用于各种控制算法的研究。
而且对倒立摆系统的研究还有重要的工程背景,对机器人行走、火箭的姿态调整等都有重要的现实意义。
本文以直线二级倒立摆系统为模型,阐释了直线二级倒立摆的建模方法和镇定控制算法。
其次介绍了直线二级倒立摆系统的结构和参数,应用拉格朗日方程建模方法详细推导了二级倒立摆的数学模型,并对系统的性能进行分析。
接下来,本文重点研究了最优控制算法在直线二级倒立摆镇定控制中的应用;在介绍倒立摆系统的最优控制算法的基础上,设计了系统的最优控制器,分析得出控制参数的选择规律;并且在Simulink上完成仿真实验,观察控制系统性能。
关键词:倒立摆;建模;LQR;镇定控制Modeling and Balance Control of the Linear DoubleInverted PendulumAbstract:Inverted pendulum is a typical multivariable, nonliner, closed coupled and quick movement natural instable system.The process of control research can reflect many key problems in control theory, such as the problem of tranquilization, non linearity, following and so on. So the inverted pendulum is commonly used for the study of many kinds of control theory. The research of inverted pendulum also has important background of engineering, and has practical significance for the Robot walk and Rocket-profile adjustment.In this paper, taking the linear double inverted pendulum system as the control model, reaching of the control system based on lagrange equation and optimal control algorithm. First of all, giving out the research significance and situation of the inverted pendulum system,and introducing the linear double inverted pendulum modeling methods and stabilization control theory. Secondly, introducing the structure and parameters of the inverted pendulum system. Researching of the inverted pendulum mathematical model based on lagrange equation, and giving a detailed derivation, then having stability analysis of the system. Next, this paper studied the inverted pendulum system’s optimal control algorithm,and designed the LQR controller based on it,then coming to the law of selection of control parameters. Finishing the simulation in the Simulink software,observing the performance of the control system.Key words: inverted pendulum, modeling, LQR, balance control一、设计目的和意义二、控制要求对直线二级倒立摆模型的物理特性做分析,然后利用拉格朗日方程建模方法建立倒立摆的数学模型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二级倒立摆数学模型的建立与仿真二级倒立摆数学模型的建立与仿真专业:控制工程姓名:淡丹学号:1406073摘要本文用分析力学中牛顿力学法及拉格朗日方程建立了二级倒立摆的数学模型。
根据已经建立的倒立摆数学模型,对其进行了可控性,可观测性及稳定性的分析与研究,并对状态反馈及状态观测器进行了仿真模拟,分析研究。
并通过分析比较得出,加状态观测器并不影响系统的输出的结论。
关键词:倒立摆状态空间极点配置状态反馈ABSTRACTNewtonian mechanics analysis method and the Lagrange equation of a mathematical model of double inverted pendulum has been used in this paper. According to the established mathematical model of inverted pendulum on the controllability, observability and stability of the analysis and research, and the state observer and state feedback is carried on the simulation ,analysis and research. And through the analysis and comparison of results, plus state observer does not affect the conclusions of the output of the system.KEY WORDS: inverted pendulum state space pole allocation state feedback一、二级倒立摆系统的组成二级倒立摆主要由以下四部分组成:1.在有限长的轨道L上作直线运动的小车;2.与小车铰接在一起,并能在竖直平面内分别绕q,q点转动的下、上摆;3.驱动小车的直流力矩电机和转轮、钢丝等传动部分;4.使上、下摆稳定在垂直向上的平衡位置,且使小车稳定在轨道中心位置附近的控制器。
二级倒立摆的结构简图如图1的监督管理功能,如实时画面,数据采集等;数据采集卡安装在计算机内,用完成模/数、数/模转换;功率放大器用于电压和功率放大;电机是系统的执行元件;电位计是系统的测量元件,它分别检测小车相对于轨道中心点的相对位置、下摆相对于铅垂线的角位移、上摆相对于下摆延长线方向的角位移。
图1 倒立摆系统的计算机控制系统二级倒立摆系统的整套机械部件安装在一个钢架上,上面固定着导轨、电机底座和转轮等装置。
通过导轨支架安装好小车滑行的导轨,小车用电机和转轮通过传动钢丝实现运动。
2、结构参数通过实际物理测量,得到二级倒立摆系统的参数如下:小车的等效质量:M =1.0kg;小车与轨道间的滑动摩擦系数:b =5.0kg/s;下摆的质量:m =0.1481kg;下摆半长:1l =0.18m;下摆绕其重心的转动惯量:1j =0.00192kgm ;上摆质量:2m =0.0998kg;上摆半长:2l =0.24m;上摆绕其重心的转动惯量: 2j = 0.00182kgm ;上、下摆重心之间的距离: 1L =0.29m;上、下摆之间的转动摩擦系数: 2F =0.0l 2kgm /s;下摆和小车之间的转动摩擦系数:1F =0.012kgm /s;电机及功率放大器的增益: u K =15Nt/V 。
3、Lagrange 方程介绍Lgarnage 方程为..11(1,2,...,)1i q d T T V D F i k dt q q iq q ⎛⎫ ⎪∂∂∂∂-++== ⎪∂∂ ⎪∂∂⎝⎭(1-1) 式中T —系统的动能函数,.1q ,q ,—Lganarge 变量,分别成为广义坐标和广义速度Qi —作用于系统上的广义力1(1,2,...,)i q V Qi F i k q ∂=-+=∂,(1-2) 式中:V —系统的势能函数1V q ∂-∂—有势力的广义力 i q F —非有势力的广义力将式(2-2)代入式(2-l)得.11(1,2,...,)1i q d T T V F i k dt q q q ⎛⎫ ⎪∂∂∂-+== ⎪∂∂ ⎪∂⎝⎭二、二级倒立摆数学模型的推导二级倒立摆是一个多变量、快速、非线性、强耦合、和绝对不稳定的系统,为了简化建立数学模型的过程,我们做了以下假设:1.上摆、下摆都是一个均匀的刚体;2.力矩电机的输出驱动力与其输入电压成正比,且无滞后地直接作用在小车上;3.车与轨道间的摩擦力仅与小车的速度成正比,下摆与车绞接处的摩擦力仅与摆的角速度成正比,上、下摆绞接处的摩擦力仅与摆的角速度成正比;4.忽略电机的电感;5.忽略钢丝的弹性。
在以上假设前提下,我们采用分析力学中的Lganarge 方程来建立系统的数学模型。
令:为水平导轨运动的位移,拭、氏分别为下摆和上摆偏移竖直方向的角度。
由于系统存在着摩擦力,属于一个耗散系统,因此式(2-3)部分应该加上耗能部分,对于同时受到保守力和耗散力作用的倒立摆系统的Lagrange 方程为:..11(1,2,...,)1i q d T T V D F i k dt q q iq q ⎛⎫ ⎪∂∂∂∂-++== ⎪∂∂ ⎪∂∂⎝⎭ 式中:i q —广义坐标,即r 、1θ、2θi q F —非有势广义力,当i q =r 时,i q F =0G U ,U 为控制量,0G 为增益常数,当i q =1θ、2θ时,i q F =0T 、V 、D —分别是系统的动能、势能和消耗能0n i i T T ==∑、0n i i V V ==∑、0ni i D D ==∑ (1-5)式中:n —倒立摆的级数,这里n=2i T —小车和各级倒摆的动能i V —小车和各级倒摆的势能i D —小车和各级倒摆的消耗能将上述各式i T ,i V ,i D (i=0,1,2)代入式(2-4),得二级倒立摆的数学模型为式(2-6)式是一个非线性向量微分方程。
考虑到系统工作时,是在平衡位置附近运动,可将式(2-6)在u=0的平衡位置r=1θ=2θ=.r =.1θ=.2θ=0附近线性化,以线性化后的方程来代替式(2-6)的非线性向量微分方程。
具体线性化是忽略二次以上的项(或因为1θ,2θ在5±。
以内,故sin θθ≈,cos 1θ≈),可求出关于dr ,d 1θ,d 2θ的线性化微分方程,而后将dr ,d 1θ,d 2θ改写成r ,1θ,2θ,便可得到系统的状态方程。
根据物理模型的实测数据,可求得平衡点处的常数阵:利用Matlab 中的求逆命令,可以解得1(0,0)M -阵所以,对式(2-6)进行线性化后,系统状态方程为:对于下摆有转角1θ时,取上摆的相对角位移为21θθ-,故令故式(2-7)可改写为定义状态向量x 为则由式(2-8)可得将物理模型的实测参数代入式(2-9),得到二级倒立摆的系数矩阵为由此可知,二级倒立摆系统的数学模型为.x Ax Bu y Cx ⎧⎪⎪⎨⎪⎪⎩=+= 式中:A=0 0 0 1.0000 0 00 0 0 0 1.0000 0 0 0 0 0 0 1.0000 0 -1.9600 0.0940 -4.8000 0.0040 -0.0040 0 46.1200 -25.0100 18.7600 -0.1300 0.2400 0 -51.0100 78.1600 -20.7500 0.2400 -0.5700 B=0 0 014.4137 -52.2864 62.2532 C=1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 三.二级倒立摆稳定性,可控性及可观测性分析3.1 系统的稳定性,可控性,可观测性 (1)系统的稳定性在设计和分析线性控制系统时,首先要考虑的是控制系统的稳定性[18-19]。
一个线性控制系统能够正常工作的首要条件就是它必须是稳定的。
由于控制系统在实际运行中,不可避免的会受到外界或内部一些扰动因素的影响,比如系统负载或能源的波动、系统参数和环境条件的变化等,从而会使系统各物理量偏离原来的工作状态。
如果系统是稳定的,那么随着时间的推移系统的各物理量就会恢复到原来的工作状态。
如果系统不稳定即使扰动很微弱,也会使系统中的各物理量随时间的推移而发散,即使在扰动因素消失后,系统也不可能再恢复到原来的工作状态,显然不稳定的控制系统是无法正常工作的。
由于稳定性的研究角度不同,线性控制系统稳定性在不同意义下的描述不尽相同,但是不同意义下稳定性描述的本质是相同的。
当线性系统用输入输出模型(微分方程或传递函数)表示时,其稳定性定义通常有如下两种:第一种描述:如果线性系统受到扰动的作用而使被控量产生偏差,当扰动消失后,随着时间的推移,该偏差逐渐减小并趋向于零,即被控量趋向于原来的工作状态,则称该系统稳定。
反之,若在扰动的影响下,系统的被控量随着时间的推移而发散,则称该系统不稳定。
第二种描述:若线性系统在有界的输入量或干扰量的作用下,其输出量的幅值也是有界的,则称系统是稳定的。
否则如果系统在有界输入下,产生无界的输出,则称系统是不稳定的。
线性控制系统稳定性的充分必要条件:系统的所有极点必须位于s 左半平面。
(2)系统的可控性 线性定常连续系统Du Cx y Bu Ax x+=+=& (3-1)如果存在一个分段连续的输入u(t),能在有限时间区间(t 0,t f )内,使一系统由某一初始状态x(t 0),转移到指定的任一终端状态x(t f ),则称此状态是能控的。
如果系统的所有状态都是能控的,则称此系统是状态完全能控的,或简称系统是能控的。
能控性判据 能控性判据一:线性定常连续系统(如(3-1)式)状态完全可控的条件为:当且仅当向量组B A AB B n 1,...,,-是线性无关的,或n ×n 维矩阵[B A AB B n 1,...,,-]的秩为n 。
能控性判据二:(1)当系统特征值互异时,若线性定常连续系统的特征值n λλλ,,,21Λ互异,则状态完全可控的充分必要条件是系统经非奇异线性变换后的对角线标准型:u B x xn +⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=λλλO &21 (3-2) 的矩阵B 中不包含元素全为零的行。
(2)当系统含有重特征值时,其重特征值()()(),时,且当重重重j i 12211;,,,,λλλλλ≠≠=∑=j i n m m m m ki i k k Λ 也就是说每一个重特征值只用一个约当块表示。