(完整版)一级倒立摆的Simulink仿真
自动化实验-倒立摆实验-附仿真结果图
一、直线一级倒立摆的仿真(一)直线一级倒立摆的数学建模对于倒立摆系统,由于其本身是自不稳定的系统,实验建模存在一定的困难。
但是忽略掉一些次要的因素后,倒立摆系统就是一个典型的运动的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。
下面我们采用其中的牛顿-欧拉方法和拉格朗日方法分别建立直线型一级倒立摆系统的数学模型.图2 直线一级倒立摆模型φ摆杆与垂直向上方向的夹角;θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)。
图3 小车及摆杆受力分析分析小车水平方向所受的合力,可以得到以下方程:由摆杆水平方向的受力进行分析可以得到下面等式:把这个等式代入式1中,就得到系统的第一个运动方程:为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:力矩平衡方程如下:注意:此方程中力矩的方向,由于θ=π+φ,cosφ= −cosθ,sinφ= −sin θ,故等式前面有负号。
合并这两个方程,约去P 和N,得到第二个运动方程:设θ=π+φ(φ是摆杆与垂直向上方向之间的夹角),假设φ与1(单位是弧度)相比很小,即φ<〈1,则可以进行近似处理:。
用u 来代表被控对象的输入力F,线性化后两个运动方程如下:对式9进行拉普拉斯变换,得到注意:推导传递函数时假设初始条件为0。
由于输出为角度φ,求解方程组的第一个方程,可以得到:或如果令v = x,则有:把上式代入方程组的第二个方程,得到:整理后得到传递函数:其中设系统状态空间方程为:方程组对解代数方程,得到解如下:整理后得到系统状态空间方程:设则有:实际系统的模型参数如下:M 小车质量1。
096 Kgm 摆杆质量0.109 Kgb 小车摩擦系数0 。
1N/m/secl 摆杆转动轴心到杆质心的长度0。
2 5mI 摆杆惯量0。
0034 kg*m*m把上述参数代入,可以得到系统的实际模型。
摆杆角度和小车位移的传递函数:摆杆角度和小车加速度之间的传递函数为:摆杆角度和小车所受外界作用力的传递函数:以外界作用力作为输入的系统状态方程:(二)倒立摆的PID调节:经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型。
(完整word版)一级倒立摆的Simulink仿真
单级倒立摆稳定控制直线-级倒立摆系统在忽略了空'(阻力及各种摩擦Z后,町抽象成小车和匀质摆杆组成的系统,如图1所示。
图2控制系统结构假设小车质量M=0.5kg,匀质摆朴质量m=0.2kg,摆朴长度21 =0.6m, x(t)为小车的水半位移,〃为摆杆的角位移,g = 9.8m/s2o控制的目标是通过外力u⑴使得摆直立向上(即&(t) = 0) o该系统的非线性模型为:(J +inl‘)典(nilcos^)&= niglsin^ (ml cos。
)翼(M其中J二一ml+ m)&= (mlsin0)6^ + u一、非线性模型线性化及建立状态空间模型因为在工作点附近(& = 0.必0)对系统进行线竹:•化,所以可以做如下线性化处理: 03 Q1sin0« 0 --------- 、COS&Q 1-----------------3! 2!当e很小时,由COS0V sine的幕级数展开式可知,忽略高次项后, 可得cos0~l, sin0=0, 0Z 2=0:因此模型线性化后如下:(J+nil A2)0r z +mlx z z =mgl0 (a)取系统的状态变量为% = x,x2 =仪X3 = x4=灰输出y = [x OF包扌舌小车位移和摆杆的角位移.由线性化后运动方程组得故空间状态方程如下:■010 0 ■「xT■ ■x2*00-2.6727 0x21 1.8182 x3f =000 1x3+0_x4J|_x40031.1818 0-4.5455uml0f r + (M+m) x''二u (b) 其中J = -ml3■ ■ xl ■ ■Xx2x1 x30 x4&Y=xlx3X1/二x'=x2—沁—册4(M + m) 一3m44(M + m) - 3m u3(M +m)g4(M + m)l 一3ni-34(M + m)l 一311119 1 00 ''xlM00 -3mg0am xl x2‘ _4(M + m) 一3m x2 x3* ~00 01x3x4J00 3(M + m)g0[_x44(M + m)l - 3ml 044(M + m) - 3m 0一34(M + m)l - 3nil二. 通过Matlab 仿真判断系统的可控与可观性,并说明其物理意义。
直线一级倒立摆PID控制实验报告
直线一级倒立摆PID 控制实验报告一、实验目的本实验的目的是让实验者理解并掌握 PID 控制的原理和方法,并应用于直线一级倒立摆的控制,PID 控制并不需要对系统进行精确的分析,因此我们采用实验的方法对系统进行控制器参数的设置。
二、实验设备直线一级倒立摆;安装有MATLAB 软件的PC 机;运动控制卡主机箱。
三、实验步骤及结果1、PID 控制参数设定及仿真对于 PID 控制参数,我们采用以下的方法进行设定:由实际系统的物理模型:(s)V (s)=0.027250.0102125s 2−0.26705 在 Simulink 中建立如图1所示的直线一级倒立摆控制模型:图1直线一级倒立摆 PID 控制 MATLAB 仿真模型先设置 PID 控制器为P 控制器,令K p =9,K i =0,K D =0,得到以下仿真结果:图2 参数设置窗口图3直线一级倒立摆P控制仿真结果图(K p=9)从图3中可以看出,控制曲线不收敛,因此增大控制量,令Kp =50,Ki=0,KD=0,得到以下仿真结果:图4直线一级倒立摆P控制仿真结果图(K p=50)从图4中可以看出,闭环控制系统持续振荡,周期约为 0.6s。
为消除系统的振荡,增加微分控制参数KD ,令 Kp=50, Ki=0, KD=16 ,得到仿真结果如下:图5直线一级倒立摆PD控制仿真结果图(K p=50,K D=16)从图5中可以看出,系统稳定时间过长,大约为7秒,因此再增加微分控制参数KD ,令:Kp=50, Ki=4, KD=16,仿真得到如下结果:图6直线一级倒立摆 PID 控制仿真结果图(K p=50,K i=4,K D=16)由于 PID 控制器为单输入单输出系统,所以只能控制摆杆的角度,并不能控制小车的位置,所以小车会往一个方向运动。
2、PID 控制实验1) 打开直线一级倒立摆 PID 控制界面入下图6所示:图6直线一级倒立摆 MATLAB 实时控制界面2) 双击"PID"模块进入 PID 参数设置,如下图7所示:图7 参数设置窗口把仿真得到的参数输入 PID 控制器,保存参数。
倒立摆控制系统的Simulink仿真
倒立摆控制系统的Simulink 仿真本文针对一个倒立摆系统进行了系统的建模、求解、控制系统的设计,并且使用Simulink 对控制算法进行了仿真。
一、模型的描述倒立摆系统如图(1),设有一个倒立摆装在只能沿x 轴方向移动的小车上,图中1m 为小车的质量,2m 为摆球的质量,g 为重力加速度,l 为摆长,J 为摆的转动惯量。
当小车受到外力()f t 的作用时,小车产生位移()x t ,且摆产生角位移()t θ。
二、模型的建立下面针对该倒立摆系统进行建模求解。
当小车1m 在外力作用下产生位移()x t 时,摆球受力情况如图(2)所示。
图中2m g 为摆球2m 所受重力,222()d x t m dt 为x 方向的惯性力,2sin ()m g t θ为垂直于摆杆方向的重力分量。
在x 方向上,小车的惯性力矩为212()d x t m dt ,摆球产生的位移量为()sin ()x t l t θ+;在垂直于摆杆的方向上,摆球的转动惯性力为22()d t J dt θ;222()d x t m dt的分力为222()cos ()d x t m t dt θ。
图(1)装有倒立摆的小车 图(2)倒立摆受力图根据牛顿运动定律,按照力的平衡原理,可以分别列出该系统在x 方向上和垂直于摆杆方向上的的运动方程222122222()()[sin ()]()d x t d x t d l t m m m f t dt dt dt θ++=(1) 222222()()cos ()sin ()d t d x t J m l t m lg t dt dtθθθ+= (2) 三、模型的求解3.1微分方程组的求解联立式(1)、(2),经过方程组的恒等变形得2222222122222()()2[()cos ()]sin 2()2sin ()()2()d x t d t m m J m l t m l g t Jm l t dt dtJf t θθθθ+-=-++ (3) 2222222212221222()()[cos ()()]sin ()cos ()()()sin ()()d t d t m l t m m J m l t t dt dtm m m lg t m lf t θθθθθθ-+=-++ (4) 由式(3)、(4)令''121343()(),(),()(),()()x t t x x t x t x t x t x t θ====,可建立如下的微分方程组进行求解'12'2222221222222122'34'222422222122()()1()()(sin ()cos ()()()sin ()cos ()()())()()1()()(sin 2()2sin ()()2())2[()cos ()]x t x t d t x t x m l t t m m m lg t m l t m m J dt m lf t x t x t d t x t m l g t Jm l t Jf t m m J m l t dt θθθθθθθθθ⎧=⎪⎪=-+⎪-+⎪+⎨==-+++-⎪⎪⎪⎪⎩3.2控制系统的分析与设计在该模型中,对该倒立摆系统实施角度环、速度换的控制,并假设小车在运行过程中受到空气阻力,阻力大小与小车的速度成正比。
一阶直线倒立摆双闭环PID控制仿真报告
目录摘要 (2)一、一阶倒立摆系统建模 (3)1、对象模型 (3)2、电动机、驱动器及机械传动装置的模型 (4)二、双闭环PID控制器设计 (5)1、仿真验证 (6)2、内环控制器的设计 (9)3、系统外环控制器设计 (12)三、仿真实验 (15)1、绘图子程序 (15)2、仿真结果 (16)四、结论 (18)摘要本报告旨在借助Matlab 仿真软件,设计基于双闭环PID 控制的一阶倒立摆控制系统。
在如图0.1所示的“一阶倒立摆控制系统”中,通过检测小车的位置与摆杆的摆动角,来适当控制驱动电动机拖动力的大小,控制器由一台工业控制计算机(IPC )完成。
图0.1 一阶倒立摆控制系统分析工作原理,可以得出一阶倒立摆系统原理方框图:图0.2 一阶倒立摆控制系统动态结构图本报告将借助于“Simulink 封装技术——子系统”,在模型验证的基础上,采用双闭环PID 控制方案,实现倒立摆位置伺服控制的数字仿真实验。
一、一阶倒立摆系统建模1、对象模型如图1.1所示,设小车的质量为m 0,倒立摆均匀杆的质量为m ,摆长为2l ,摆的偏角为θ,小车的位移为x ,作用在小车上的水平方向的力为F ,O 1为摆角质心。
θxyOFF xF x F yF yllxO 1图1.1 一阶倒立摆的物理模型根据刚体绕定轴转动的动力学微分方程,转动惯量与角加速度乘积等于作用于刚体主动力对该轴力矩的代数和,则 1)摆杆绕其中心的转动方程为θθθcos sin y l F l F J x-= (1-1) 2)摆杆重心的水平运动可描述为)sin (22x θl x dtd m F += (1-2)3)摆杆重心在垂直方向上的运动可描述为)cos (22y θl dtd m mg F =- (1-3)4)小车水平方向上的运动可描述为220dtxd m F F x =- (1-4)由式(1-2)和式(1-4)得F ml x m m =⋅-⋅++)sin (cos )(20θθθθ (1-5) 由式(1-1)、(式1-2)和式(1-3)得θθθsin g cos 2ml x ml ml J =⋅++ )( (1-6) 整理式(1-5)和式(1-6),得⎪⎪⎩⎪⎪⎨⎧++-+-⋅+⋅=-++-⋅+++=))((cos sin )(cos sin cos cos ))((cos sin sin )()(x 2022202222220222222m l J m m l m m l m m l m F m l l m m m m l J g l m m l J lm F m l J θθθθθθθθθθθθ(1-7) 以上式1-7为一阶倒立摆精确模型。
基于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 参考文献格式要求:题目小三,宋体加粗目录、正文、小标题均为小四宋体,其中标题加粗。
基于Simulink的单级倒立摆仿真对比
关键词 :非线性系统 ;单级倒立摆 ;极点配置 ; T2S模糊控制模型 ; Simulink仿真
中图分类号 : TP273. 4
文献标识码 : A
An S im ula tion Study of S ingle Inverted Pendulum Ba sed on T2S Fuzzy Con trol M odel L I Guo2hui
4,故系统可控 , 可任意配置极点. 然后进行稳定性检查 : 由 MA TLAB 中 的 e ig ( A ) 求 得 特 征 值
70
大连交通大学学报
第 29卷
[ 0 0 4. 949 7 - 4. 949 7 ],故系统不稳定. 采用状态反馈方法使系统稳定并配置极点. 设期望的闭环 极点位置为 S1, 2 = - 3 ±j4. 457, S3, 4 = - 2,由 MATLAB求得反馈增益矩阵 K = [ - 160. 970 1 - 108. 151 3 - 485. 944 7 - 102. 075 6 ]. 2. 3 仿真研究与结果分析
M j ( x) ; A =
μ i
(
x)
Ai;
B
=
μ i
( x)
B i;
j=1
i =1
i =1
l
l
n
∑ ∑ ∏ C =
μ i
(
x)
Ci;
D
=
μ i
(
x)
D i;
Mi
( x)
=
M
i j
( x)
i =1
i =1
j =1
l
∑ 假设 : M i ( x) ≥ 0, M j ( x) > 0, M i ( x) 表示 x属于 M i 的隶属度函数 ,同时它也表示第 i条模糊规则的
倒立摆控制系统的Simulink仿真
倒立摆控制系统的Simulink 仿真本文针对一个倒立摆系统进行了系统的建模、求解、控制系统的设计,并且使用Simulink 对控制算法进行了仿真。
一、模型的描述倒立摆系统如图(1),设有一个倒立摆装在只能沿x 轴方向移动的小车上,图中1m 为小车的质量,2m 为摆球的质量,g 为重力加速度,l 为摆长,J 为摆的转动惯量。
当小车受到外力()f t 的作用时,小车产生位移()x t ,且摆产生角位移()t θ。
二、模型的建立下面针对该倒立摆系统进行建模求解。
当小车1m 在外力作用下产生位移()x t 时,摆球受力情况如图(2)所示。
图中2m g 为摆球2m 所受重力,222()d x t m dt 为x 方向的惯性力,2sin ()m g t θ为垂直于摆杆方向的重力分量。
在x 方向上,小车的惯性力矩为212()d x t m dt ,摆球产生的位移量为()sin ()x t l t θ+;在垂直于摆杆的方向上,摆球的转动惯性力为22()d t J dt θ;222()d x t m dt的分力为222()cos ()d x t m t dt θ。
图(1)装有倒立摆的小车 图(2)倒立摆受力图根据牛顿运动定律,按照力的平衡原理,可以分别列出该系统在x 方向上和垂直于摆杆方向上的的运动方程222122222()()[sin ()]()d x t d x t d l t m m m f t dt dt dt θ++=(1) 222222()()cos ()sin ()d t d x t J m l t m lg t dt dtθθθ+= (2) 三、模型的求解3.1微分方程组的求解联立式(1)、(2),经过方程组的恒等变形得2222222122222()()2[()cos ()]sin 2()2sin ()()2()d x t d t m m J m l t m l g t Jm l t dt dtJf t θθθθ+-=-++ (3) 2222222212221222()()[cos ()()]sin ()cos ()()()sin ()()d t d t m l t m m J m l t t dt dtm m m lg t m lf t θθθθθθ-+=-++ (4) 由式(3)、(4)令''121343()(),(),()(),()()x t t x x t x t x t x t x t θ====,可建立如下的微分方程组进行求解'12'2222221222222122'34'222422222122()()1()()(sin ()cos ()()()sin ()cos ()()())()()1()()(sin 2()2sin ()()2())2[()cos ()]x t x t d t x t x m l t t m m m lg t m l t m m J dt m lf t x t x t d t x t m l g t Jm l t Jf t m m J m l t dt θθθθθθθθθ⎧=⎪⎪=-+⎪-+⎪+⎨==-+++-⎪⎪⎪⎪⎩3.2控制系统的分析与设计在该模型中,对该倒立摆系统实施角度环、速度换的控制,并假设小车在运行过程中受到空气阻力,阻力大小与小车的速度成正比。
直线一级倒立摆系统的建模及仿真
计算机控制技术课程设计实验:直线一级倒立摆系统的建模及仿真一、已知条件:图1倒立摆简化模型摆杆角度为输出,小车的位移为输入。
导轨中点为坐标轴的中心即零点,右向为坐标值增加的方向,杆偏移其瞬时平衡位置右侧的角度为正值。
二、任务要求:总体任务通过调节PID参数,设计PID控制器实现摆杆在受到干扰的情况下,依然能恢复平衡。
具体包括以下几部分:1. 理论推导包括倒立摆系统的动力学模型,传递函数,离散传递函数,状态空间或差分方程,稳定性分析,PID控制器设计2. 程序实现实现内容:倒立摆系统模型,控制器以及仿真结果的显示。
开发语言和工具:Matlab m 文件或C/C++ (工具:VC++或其它)3. PID控制参数设定及仿真结果。
分别列出不同杆长的仿真结果(例如:L=0.25 和L=0.5)。
4. 将理论推导、程序实现、仿真结果写成实验报告。
具体求解过程如下:一,倒立摆系统动力学模型的建立图1 摆杆的受力分析图以摆杆为研究对象,对其进行受力分析,如图1所示。
根据质点系的达朗贝尔原理得IC I 0F CP mg CP M →→⨯+⨯-= (1)式中,IC F 为杆的惯性力,表达式为()IC C P CP CP IP ICP ICP t n t nF ma m a a a F F F ==++=++,m 为杆的质量,g 为重力加速度,I M 为杆的惯性力偶。
惯性力及惯性力偶的大小分别为2222IP P ICP I c 2221,,3t d x d d F ma m F m m M J mL dt dt dt θθαα======(2)式中,α为杆的角加速度,P a 为小车的加速度,2L 为杆的长度,θ为杆偏离中心位置的角度,x 偏离轨道中心的位移。
对(2)式代入(1)式,并整理可得22224sin cos 3d d x L g dt dt θθθ-=-(3) 当摆动较小时,可以进行近似处理sin ,cos 1θθθ≈≈。
一级倒立摆仿真模型的建立
一级倒立摆仿真模型的建立翟龙余【摘要】针对一级倒立摆系统,首先利用牛顿力学的知识建立了数学模型,然后利用Simulink及其封装功能建立了倒立摆系统的仿真模型,使模型更具灵活性,给仿真带来很大方便。
%This paper aims at an inverted pendulum system. It argues, after building a mathematical model on the basis of Newtonian mechanics, we can use Simulink and its MASK function to establish a simulation model of an inverted pendulum system, which can make th 【期刊名称】《大众科技》【年(卷),期】2011(000)008【总页数】3页(P268-270)【关键词】倒立摆;数学模型;仿真模型【作者】翟龙余【作者单位】江苏财经职业技术学院,江苏淮安223001【正文语种】中文【中图分类】N945.12倒立摆系统是研究控制理论的一种典型实验装置,具有成本低廉,结构简单,物理参数和结构易于调整的优点,是一个具有高阶次、不稳定、多变量、非线性和强藕合特性的不稳定系统。
在控制过程中,它能有效地反映诸如可镇定性、鲁棒性、随动性以及跟踪等许多控制中的关键问题,是检验各种控制理论的理想模型。
本文以一级倒立摆为例,首先建立了倒立摆系统的数学模型,最终利用simulink建立其仿真模型。
经过小心的假设忽略掉一些次要的因素,如忽略了空气阻力、系统内部的摩擦,不考虑构件的变形,则可以将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图1所示。
这是一个典型的运动刚体系统,可以在惯性坐标系内应用经典牛顿力学理论建立系统的动力学方程。
[1]各参数符号含义如下:图2是系统中小车和摆杆的受力分析图,其中,N 和P为小车与摆杆相互作用力的水平和垂直两个方向的分量。
倒立摆特性测试实验
倒立摆特性测试实验
直线一级倒立摆
1、simulink仿真图
根据老师给出的传递函数,可得:
2、分析
有老师指导可知,最佳参数为P=100,I=4,D=15,此时,如图:
之后,采用控制变量法,分别改变三个变量,观察效果。
P=200,I=4,D=15时,如下
P=100,I=50,D=15时,如下图,
P=100,I=4,D=50时,如下图:
倒立摆顺摆
1、simulink仿真图
2、分析
有老师给出的数据可知,最佳参数为P=60,I=100,D=8,如下图:
同样采用控制变量法P=120,I=100,D=8时,如下图:
P=100,I=200,D=8时,如下图
P=100,I=100,D=16时,如下图:
综合分析:
比较不同P参数值下系统阶跃响应曲线可知,随着K的增大,超调量增大,衰减率减小,振荡频率增大。
当减少Ti时,超调量增加,进入动态稳定的时间变长。
增大微分环节,可以减少超调量,同时,减少调节时间,在图中并未发现有什么不好之处,通过查资料发现,增加微分环节对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。
心得体会:通过本次实验,我们了解了关于倒立摆和顺摆的一些基本知识,同时,又对之前学过的PID调节进行了系统复习,更加清楚了这三个参数的各自意义。
同时,倒立摆的神奇令我们感到非常惊奇,虽然并不十分了解其工作原理,但是,我们还是感到很有意思。
尤其是最后的起振实验,更是令我们赞叹不已,总之,通过这次实验,我们都收获了很多东西,也为我们后来的学习打下了一个坚实的基础!。
直线一级倒立摆的自动起摆与稳摆控制
直线一级倒立摆的自动起摆与稳摆控制(Simulink仿真)通过对倒立摆系统的力学及运动学分析,建立系统的非线性数学模型为可见,直线一级倒立摆为单输入双输出系统,利用Simulink可建立上式的框图模型,如图1所示。
图1 直线一级倒立摆系统的非线性Simulink模型倒立摆的起摆问题,是控制理论中的一个经典实验,其实质是倒立摆系统从一个稳定的平衡状态(垂直向下)在外力的作用下自动转移到另一个平衡状态(垂直向上)。
在这个过程中,要求起摆快速,但又不能过于超调。
由于输入、输出之间的非线性,许多常用的线性控制理论都不适用。
基于非线性理论,目前常用的几种起摆方法为:Bang-Bang控制、能量控制、仿人智能控制等。
这里采用Bang-Bang控制作为起摆方法,LQR控制作为稳摆方法,Simulink框图如图2所示。
图2 倒立摆自动起摆控制Simulink框图(Bang-Bang + LQR)图2中,子系统“Inverted Pendulum”是直线一级倒立摆的非线性模型,如图1所示;S函数“ang_proc”模块用于摆杆角度的处理,即将任意角度信号转换为“ -π ~ π”之间的对应值;子系统“Bang-Bang Controller”为Bang-Bang控制器;子系统“LQR Controller”为LQR 控制器。
双击“Bang-Bang Controller”模块可打开Bang-Bang控制器框图如下:图3 Bang-Bang控制器框图图3中,bang_controller是为实现Bang-Bang控制算法而编写的S函数,信号Ang_s是Bang-Bang控制切换角,F_bang是Bang-Bang控制作用力。
双击“LQR Controller”子系统,打开LQR控制器框图如下:图4 LQR控制器框图运行图2中的仿真框图,则基于Bang-Bang控制和LQR控制算法的直线一级倒立摆自动起摆控制效果如图5所示。
(完整版)倒立摆实验报告(PID控制)
专业实验报告3. 实验装置直线单级倒立摆控制系统硬件结构框图如图1所示,包括计算机、I/O设备、伺服系统、倒立摆本体和光电码盘反馈测量元件等几大部分,组成了一个闭环系统。
图1 一级倒立摆实验硬件结构图对于倒立摆本体而言,可以根据光电码盘的反馈通过换算获得小车的位移,小车的速度信号可以通过差分法得到。
摆杆的角度由光电码盘检测并直接反馈到I/O设备,速度信号可以通过差分法得到。
计算机从I/O设备中实时读取数据,确定控制策略(实际上是电机的输出力矩),并发送给I/O设备,I/O设备产生相应的控制量,交与伺服驱动器处理,然后使电机转动,带动小车运动,保持摆杆平衡。
图2是一个典型的倒立摆装置。
铝制小车由6V的直流电机通过齿轮和齿条机构来驱动。
小车可以沿不锈钢导轨做往复运动。
小车位移通过一个额外的与电机齿轮啮合的齿轮测得。
小车上面通过轴关节安装一个摆杆,摆杆可以绕轴做旋转运动。
系统的参数可以改变以使用户能够研究运动特性变化的影响,同时结合系统详尽的参数说明和建模过程,我们能够方便地设计自己的控制系统。
图2 一级倒立摆实验装置图上面的倒立摆控制系统的主体包括摆杆、小车、便携支架、导轨、直流伺服电机等。
主图7 直线一级倒立摆PD控制仿真结果图从上图可以看出,系统在1.5秒后达到平衡,但是存在一定的稳态误差。
为消除稳态误差,我们增加积分参数Ki,令Kp=40,Ki=60,Kd=2,得到以下仿真结果:图8 直线一级倒立摆PID控制仿真结果图从上面仿真结果可以看出,系统可以较好的稳定,但由于积分因素的影响,稳定时间明显增大。
双击“Scope1”,得到小车的位置输出曲线为:图9 施加PID控制器后小车位置输出曲线图由于PID 控制器为单输入单输出系统,所以只能控制摆杆的角度,并不能控制小车的位置,所以小车会往一个方向运动,PID控制分析中的最后一段,若是想控制电机的位置,使得倒立摆系统稳定在固定位置附近,那么还需要设计位置PID闭环。
(完整版)直线一级倒立摆建模
一、直线一级倒立摆建模根据自控原理实验书上相关资料,直线一级倒立摆在建模时,一般忽略掉系统中的一些次要因素.例如空气阻力、伺服电机的静摩擦力、系统连接处的松弛程度等,之后可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如下图所示:倒立摆系统是典型的机电一体化系统,其机械部分遵循牛顿的力学定律,其电气部分遵守电磁学的基本定理.因此,可以通过机理建模方法得到较为准确的系统数学模型,通过实际测量和实验来获取系统模型参数.无论哪种类型的倒立摆系统,都具有3个特性,即:不确定性、耦合性、开环不稳定性. 直线型倒立摆系统,是由沿直线导轨运动的小车以及一端固定于小车上的匀质长杆组成的系统. 小车可以通过传动装置由交流伺服电机驱动. 小车导轨一般有固定的行程,因而小车的运动范围是受到限制的。
虽然倒立摆的形式和结构各异,但所有的倒立摆都具有以下的特性:1) 非线性倒立摆是一个典型的非线性复杂系统,实际中可以通过线性化得到系统的近似模型,线性化处理后再进行控制。
也可以利用非线性控制理论对其进行控制。
倒立摆的非线性控制正成为一个研究的热点。
2) 不确定性主要是模型误差以及机械传动间隙,各种阻力等,实际控制中一般通过减少各种误差来降低不确定性,如通过施加预紧力减少皮带或齿轮的传动误差,利用滚珠轴承减少摩擦阻力等不确定因素。
3) 耦合性倒立摆的各级摆杆之间,以及和运动模块之间都有很强的耦合关系,在倒立摆的控制中一般都在平衡点附近进行解耦计算,忽略一些次要的耦合量。
4) 开环不稳定性倒立摆的平衡状态只有两个,即在垂直向上的状态和垂直向下的状态,其中垂直向上为绝对不稳定的平衡点,垂直向下为稳定的平衡点。
由于机构的限制,如运动模块行程限制,电机力矩限制等。
为了制造方便和降低成本,倒立摆的结构尺寸和电机功率都尽量要求最小,行程限制对倒立摆的摆起影响尤为突出,容易出现小车的撞边现象。
由此,约束限制直线型一级倒立摆系统的实际控制要求可归结为3点:(1)倒立摆小车控制过程的最大位移量不能超过小车轨道的长度;(2)为保证倒立摆能顺利起立,要求初始偏角小于20°;(3)为保证倒立摆保持倒立的平衡态,要求控制系统响应速度足够快。
一阶倒立摆系统建模与仿真研究
一阶倒立摆系统建模与仿真研究一阶倒立摆系统是一种典型的非线性控制系统,具有多种状态和复杂的运动特性。
在实际生活中,倒立摆被广泛应用于许多领域,如机器人平衡控制、航空航天、制造业等。
因此,对一阶倒立摆系统进行建模与仿真研究具有重要的理论价值和实际意义。
ml''(t) + b*l'(t) + k*l(t) = F(t)其中,m为质量,b为阻尼系数,k为弹簧常数,l(t)为摆杆的位移,l'(t)为摆杆的加速度,l''(t)为摆杆的角加速度,F(t)为外界作用力。
在仿真过程中,需要设定摆杆的初始位置和速度。
一般而言,初始位置设为0,初始速度设为0。
边界条件则根据具体实验需求进行设定,如限制摆杆的最大位移、最大速度等。
利用MATLAB/Simulink等仿真软件进行建模和实验,可以方便地通过改变输入信号的参数(如力F)或系统参数(如质量m、阻尼系数b、弹簧常数k)来探究一阶倒立摆系统的性能和反应。
通过仿真实验,我们可以观察到一阶倒立摆系统在受到不同输入信号的作用下,会呈现出不同的运动规律。
在适当的输入信号作用下,摆杆能够达到稳定状态;而在某些特定的输入信号作用下,摆杆可能会出现共振现象。
在仿真过程中,我们可以发现一阶倒立摆系统具有一定的鲁棒性。
在一定范围内,即使输入信号发生变化或系统参数产生偏差,摆杆也能够保持稳定状态。
然而,当输入信号或系统参数超过一定范围时,摆杆可能会出现共振现象,导致系统失稳。
因此,在实际应用中,需要对输入信号和系统参数进行合理控制,以保证系统的稳定性。
为了避免共振现象的发生,可以通过优化系统参数或采用其他控制策略来实现。
例如,适当增加阻尼系数b能够减小系统的振荡幅度,有利于系统尽快达到稳定状态。
可以采用反馈控制策略,根据摆杆的实时运动状态调整输入信号,以抑制系统的共振响应。
本文对一阶倒立摆系统进行了建模与仿真研究,通过观察不同参数设置下的系统性能和反应,对其运动规律、鲁棒性及稳定性进行了分析。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单级倒立摆稳定控制
直线一级倒立摆系统在忽略了空气阻力及各种摩擦之后,可抽象成小车和匀质摆杆组成的系统,如图1所示。
mg θ
杆长为
2u
图1 直线一级倒立摆系统
图2 控制系统结构
假设小车质量M =0.5kg ,匀质摆杆质量m=0.2kg ,摆杆长度2l =0.6m ,x (t )为小车的水平位移,θ为摆杆的角位移,2
/8.9s m g =。
控制的目标是通过外力u (t)使得摆直立向上(即
0)(=t θ)。
该系统的非线性模型为:
u ml x
m M ml mgl x
ml ml J +=++=++22)sin ()()cos (sin )cos ()(θθθθθθθ ,其中
231ml J =。
解:
一、 非线性模型线性化及建立状态空间模型
因为在工作点附近(0,0==θ
θ )对系统进行线性化,所以 可以做如下线性化处理:
3
2
sin ,cos 13!
2!θθθθθ≈-
≈-
当θ很小时,由cos θ、sin θ的幂级数展开式可知,忽略高次项后, 可得cos θ≈1,sin θ≈θ,θ’^2≈0;
因此模型线性化后如下: (J+ml^2)θ’’+mlx ’’=mgl θ (a)
ml θ’’+(M+m) x ’’=u (b) 其中2
3
1ml J =
取系统的状态变量为,,,,4321θθ ====x x x
x x x 输出T
x y ][θ=包括小车位移和摆杆的角位移.
即X=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡4321x x x x =⎥⎥⎥⎥
⎦⎤
⎢⎢⎢⎢⎣⎡''θθx x Y=⎥⎦⎤⎢⎣⎡θx =⎥⎦⎤
⎢⎣⎡31x x
由线性化后运动方程组得
X1’=x ’=x2 x2’=x ’’=m m M mg 3)(43-+-x3+m
m M 3)(44
-+u
X3’ =θ’=x4 x4’=θ’’=ml l m M g m M 3)(4)(3-++x3+ml
l m M 3)(43
-+-u
故空间状态方程如下:
X ’=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡'4'3'2'1x x x x =⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢
⎢⎢⎢⎣
⎡-++-+-03)(4)(300
100003)(4300001
ml l m M g m M m m M mg ⎥⎥⎥⎥
⎦⎤⎢⎢⎢⎢⎣⎡4321x x x x + ⎥⎥⎥⎥⎥
⎥⎥⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎣⎡-+--+ml l m M m m M 3)(43
03)(440 u
X ’=
⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡'4'3'2'1x x x x =⎥⎥⎥⎥⎦⎤⎢
⎢⎢⎢⎣⎡-01818.3100
100006727.20000
1
⎥⎥⎥⎥⎦⎤
⎢⎢⎢⎢⎣⎡4321x x x x + ⎥
⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡-5455.408182.10 u
Y= ⎥⎦⎤⎢⎣⎡31x x =⎥⎦⎤⎢⎣⎡01000001 ⎥⎥⎥⎥
⎦
⎤⎢⎢⎢⎢⎣⎡43
21x x x x 二、通过Matlab 仿真判断系统的可控与可观性,并说明其物理意义。
(1)判断可控性 代码:
A=[0 1 0 0;
0 0 -2.627 0; 0 0 0 1; 0 0 31.1818 0];
B=[0;1.8182;0;-4.5455];
P=ctrb(A,B); n=rank(P); 运行了得n= 4
所以P 为满秩,系统能控
(2)判断可观性 代码:
A=[0 1 0 0;
0 0 -2.627 0; 0 0 0 1; 0 0 31.1818 0];
B=[0;1.8182;0;-4.5455]; C=[1 0 0 0;
0 0 1 0]; P=obsv(A,C); n=rank(P); 运行了得n= 4
所以P 为满秩,系统能观。
三、能否通过状态反馈任意配置系统的极点?若能,通过Matlab 仿真确定反馈控制规律K (如图2),使得闭环极点配置在
j ±-=-=-=1,2,14.321λλλ上。
并给出系统在施加一个单位脉冲输入时
状态响应曲线;
答: 因为系统完全能控,所以能通过状态反馈任意配置系统的极点。
要将闭环极点配置在j ±-=-=-=1,2,14.321λλλ上,所以期望特征方程为
|λI—(A-BK)|=(λ+1)*(λ+2)*((λ+1)^2+1)
=λ^4+5λ^3+10λ^2+10λ+4
Matlab求解K如下:
A=[0 1 0 0;
0 0 -2.627 0;
0 0 0 1;
0 0 31.1818 0];
B=[0;1.8182;0;-4.5455];
J=[-1 -2 -1+i -1-i];
K=place(A,B,J);
运行得:
K=[ -0.089378 -0.22345 -9.0957 -1.1894];
未加入极点配置。
仿真图:
未进行极点配置仿真电路图(1)X的响应图:
Θ的响应图:
配置后:
加入极点配置仿真图(2)X的响应图:
Θ的响应图:
四、用MatLab中的lqr函数,可以得到最优控制器对应的K。
要求用LQR控制算法控制倒立摆摆动至竖直状态,并可以控制倒立摆左移和右移;
欲对系统进行最优状态反馈设计,及小化性能指标为:
J= 1
2 ∫[X T QX+U T RU]
∞
dt
编写matalab程序如下:A=[0 1 0 0;
0 0 -2.627 0;
0 0 0 1;
0 0 31.1818 0];
B=[0;1.8182;0;-4.5455];
C=[1 0 0 0;
0 0 1 0];
D=[0;0]
x=1;
y=1;
Q=[x 0 0 0;
0 0 0 0;
0 0 y 0;
0 0 0 0];
R=1;
G=lqr(A,B,Q,R);
A1=[(A-B*G)];
B1=[B];
C1=[C];
D1=[D];
t=0:0.01:5;
U=zeros(size(t));
x0=[0.1 0 0.1 0];
[Y,X]=lsim(A1,B1,C1,D1,U,t,x0); plot(t,Y);
legend('小车','倒立摆');
运行可得:
G=[-1 -1.5495 -18.68 -3.4559]
由图分析可得调节时间很长,所以增加Q的比重,将上程序中的x,y改为x=150,y=150.运行可得:
G=[-12.247 -9.3413 -41.934 -7.7732]
比较可得,控制效果明显改善。
但反馈增益变大,意味着控制作用变强,消耗能量变大。
将G放入系统中,进行simulink仿真可得:
仿真电路图:
仿真结果:X的响应图:
Θ的响应图:
五、写出本次仿真实验的心得体会。
本实验,从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制,最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己的一套实验方法:倒立摆数学模型推导部分:首先用线性化数学模型,接着用动态系统空间状态方程法导出状态方程系数矩阵,然后用MATLAB对系统进行可控可观判断及进行几点配置,加入配置后在Simulink软件上进行系统仿真。
最后通过matlab求解线性二次型最优控制的G矩阵,然后加入形同进行Simulink 仿真。
通过本实验,掌握了倒立摆仿真的整个过程,熟悉了MATLAB的仿真软件Simulink的使用,也对系统控制有了较好的理解。
通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并激发了良好的关于系统控制方面的学习兴趣。
除此之外,通过本次大作业,让我学会了很多word的操作,在此基础上,相信在以后的学习将会有较大帮助。