一阶直线倒立摆系统
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
倒立摆有许多控制方法,比较常见的有频率响应控制、PID 控制、极点配置控制、根轨迹控制、 LQR 控制等。倒立摆系统是一个非线性、不稳定的快速系统,其控制方式与直立行走的机器人、飞 行中的静不稳定导弹有许多相似之处。倒立摆系统是控制理论试验的典型装置,也是控制理论研究 中常用的验证对象。在多种控制理论和方法的研究应用中,特别是在工程实践,存在一种可行性的 实现问题,使其理论和方法得到有效的检验,倒立摆就能为此提供一个从控制理论通往实践的桥梁。
图 6 一阶倒立摆控制系统示意图 (二) 系统建模
图 7 倒立摆物理模型
一阶倒立摆精确模型为:
( + 2) + ( + 2)
· ˙2
22
x¨ = J
ml F lm J ml sin✓ ✓ m l gsin✓cos✓
( J
+
2
ml
)(m0
+
) m
22 2
m l cos ✓
¨ ✓
=
mlcos✓
·
+ 22
(三) 研究内容 在认真复习已学相关课程和查阅相关文献的基础上,掌握一阶倒立摆系统模型的建立方法、最 优控制器设计,基于 Matlab 实现系统各状态变量和控制律的仿真。 运用牛顿动力学方法建立其非线性数学模型,得到系统的状态空间方程;用极点配置法、线性 二次最优控制策略的 LQR 法和模糊控制法,设计倒立摆控制系统的控制器;通过 MATLAB 对一阶 直线倒立摆系统进行仿真和实物控制。
· ˙2
F m l sin✓cos✓ ✓
(m0 + m)mlgsin✓
22 2
m l cos ✓
(m0
+
m)(J
+
2) ml
简化的近似模型为:
X¨ = 6✓ + 0.8F ✓¨ = 40✓ 2.0F
(三) 模型验证 Simulink
Step
0.12 Gain3
Derivative
0.12 Gain4
(二) 研究现状 倒立摆的最初研究开始于 20 世纪 50 年代,由(MIT)美国麻省理工学院的控制论专家根据火箭发 射助推器原理设计;而后人们又参照双足机器人控制问题研制出二级倒立摆控制设备,从而提高了检 验控制理论和方法的能力,也拓宽了检验范围随着研究的深入和实际问题的推动又发展出了三级摆 和四级摆。他们的研究成果具有重要的工程背景,在机器人的站立与行走、通讯卫星和侦察卫星姿 态的稳定、多级火箭飞行姿态的控制等领域发挥了巨大的作用。 我国则从 70 年代中期开始研究倒立摆,首先根据经典控制理论与现代控制理论应用极点配置 法,设计模拟控制器,国内外专家学者先后控制了单级倒立摆与二级倒立摆的稳定。随着微机的广
一阶直线倒立摆系统
周耀龙 144173248
摘 要 倒立摆问题是动力学中最重要的问题之一,并且在控制理论中已被充分的研究过。它是一个已经被建立的
基准问题,这给控制设计提供了很多具有挑战性的问题。该系统是非线性,不稳定,非最小相位和欠驱动的。伴随 噪音测量信号,它不是去状态可测量的。存在许多寄生效应例如,摩擦,杆和轴的弹性模式,齿轮和皮带的反弹效 应,连同输入饱和。这些挑战使得倒立摆成为控制实验室中一个典型的工具。
'XAxisLocation','bottom',... 'YAxisLocation','right',... 'Color','None',... 'XColor','k',... 'YColor','k'); ht=line(t,q,'color','r','parent',axet); ht=line(t,qq,'color','r','parent',axet); ylabel('Angle evolution(rad)') axis([0 1 -0.3 0]) title('Response \Theta(t) and \Theta''(t) in rad to a f(t) pulse of 0.1N') gtext('\leftarrow f(t)'),gtext('\Theta(t)\rightarrow'),gtext('\leftarrow \Theta''(t)')
泛应用,又陆续实现了数控二级摆的稳定。随着摆杆级数的增加,多级倒立摆由于其高度非线形和 不确定性,其控制成为世界公认的难题。
2002 年 8 月北京师范大学数学系李洪兴教授领导的科研团队采用“变论域自适应模糊控制理论” 成功地实现了全球首例“四级倒立摆实物系统控制”。而由此项理论产生的方法和技术将在半导体及 精密仪器加工、机器人技术、导弹拦截控制系统、航空器对接控制技术等方面具有广阔的开发利用 前景。
-32 Gain
x F
theta
Pendulums ystem
-KGain2
Derivative1
-KGain1
PID.mat To File
Scope
clear;clc; signals=load('xy.mat');
(四) Matlab 程序
t=signals.ans.Time;
data=signals.ans.Data;
三、 数学建模 本章主要是阐述了一级倒立摆实验平台的系统搭建,建立了一级倒立摆系统动力学模型,对其 控制系统进行了可控制性分析、原理分析以及实际控制系统的组成分析。
图 3 倒立摆控制流程图 (一) 牛顿力学方法推到微分方程 在忽略了空气阻力和各种摩擦之后,可将直线一阶倒立摆系统抽象为小车和匀质杆组成的系统。
2. 环形倒立摆系列 环形倒立摆系列是在圆周运动模块上装有摆体组件,圆周运动模块有一个自由度,可以围绕齿 轮中心做圆周运动,在运动手臂末端装有摆体组件,根据摆体组件的级数和串联或并联的方式,可 以组成很多形式的倒立摆。
3. 平面倒立摆系列 平面倒立摆是在可以作平面运动的运动模块上装有摆杆组件,平面运动模块主要有两类:一类 是 XY 运动平台,另一类是两自由度 SCARA 机械臂;摆体组件也有一级、二级、三极和四级很多 种。
二、 倒立摆系统 (一) 简介
倒立摆是机器人技术、控制理论、计算机控制等多个领域、多个技术的有机结合,其被控系统 本身又是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象 对其进行研究。
最初研究开始于 20 世纪 50 年代,麻省理工学院(MIT)的控制理论专家根据火箭发射器助推器原 理设计出一级倒立摆实验设备。今年来新的控制方法不断出现,人们试图通过倒立摆这一典型的控 制对象,检验新的控制算法是否有较强的处理多变量、非线性和绝对不稳定系统的能力,从而从中 找出最优秀的控制方法。
关键词 倒立摆;仿真
一、 前言 (一) 问题提出
倒立摆不仅仅是一种优秀的教学试验仪器,同时也是进行控制理论研究的理想平台。由于倒立 摆系统本身所具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人 员一直将它是为典型的研究对象,不断从中发掘新的控制策略和控制算法,相关的科研成果在航天 科技和机器人学方面获得了广阔的应用
硬件在回路仿真技术中自 20 世纪 60 年代问世直到目前美国研制航天飞机,始终盛行不衰。美 国人非常重视这方面的研究和应用,把模拟和仿真技术看作是降低导弹防御和战术导弹武器系统生 命周期费用的切实可行的手段,并且在制导武器系统的开发方面应用模拟和仿真技术已经有很长的 历史。
20 世纪 80 年代我国建设了一批高水平、大规模的硬件在回路仿真系统,如射频制导导弹仿真 系统、红外制导导弹仿真系统、歼击机工程飞行模拟器、歼击机仿真系统、驱逐舰半仿真系统等, 这些硬件在回路仿真系统在武器型号研制中发挥了重大作用。
(1)
经过推导和线性化后得到系统的微分方程为
(I + mL2)q!! - mgLq = mL!x! (M + m)!x! + bx - mLq!! = u
(2)
四、 MATLAB 仿真分析 (一) 题目概述
在下图所示的一阶倒立摆控制系统中,通过检测小车位置与摆杆的摆动角,来适当控制驱 动电机拖动力的大小,控制器由一台 IPC 完成。
(二) 分类 倒立摆已经由原来的直线一级倒立摆扩展出许多种类,典型的有直线倒立摆、环形倒立摆、平 面倒立摆和复合倒立摆等,倒立摆系统是在运动模块上装有倒立摆装置,由于在相同的运动模块上 可以装在不同的倒立摆装置,倒立摆的种类由此而丰富了很多,按倒立摆的结构来分,有以下类型 的倒立摆:
1. 直线倒立摆系列 直线倒立摆是在直线运动模块上装有摆体组件,直线运动模块由一个自由度,小车可以沿导轨 水平运动,在小车上装有不同的摆体组件,可以组成很多类型的倒立摆,直线柔性倒立摆和一般直 线倒立摆的不同之处在于柔性倒立摆有两个可以沿导轨滑动的小车,并且在主动小车和被动小车之 间增加了一个弹簧,作为柔性关节。
K S+ D
KP +
KI = S
KDS2 + KPS + KI S
通过分析上式可以得到系统的各项性能。我们通过仔细调节 PID 控制器参数,就可以得到满意
的控制效果。
从上述控制器的设计过程来看 PID 控制器的设计非常方便,但另一方面 PID 控制器为单输入单 输出控制系统,所以上述设计只能控制白干的角度,并不能控制小车的位置,所以小车会往一个方 向运动,即小车的位置存在稳态误差。这一点对以一个稳定的倒立摆控制系统来说是不能达到要求 的。
倒立摆系统作为控制理论中比较理想的试验手段,为自动控制理论的教学、试验和科研构建一 个良好的试验平台,以用来检验某种控制理论或方法的典型方案,促进到了控制系统新理论、新思
想的发展。 由于控制理论的广泛应用,由此系统研究产生的方法和技术将在半导体及精密仪器加工、机器
人控制技术、人工智能、导弹拦截控制系统、航空对接控制技术、火箭发射中是垂直度控制、卫星 飞行中的姿态控制和一般工业控制等方面具有广阔的利用开发前景。平面倒立摆可以比较真实的模 拟火箭的飞行控制和步行机器人的稳定控制等方面的研究。
m 2L
u
M
X
图 4 一阶倒立摆系统物理模型
PNFb Nhomakorabea!x x!
图 5 小车及摆杆受力分析图 其中,M 为小车质量;m 为摆杆质量;b 为摩擦系数;L 为摆杆转动轴心到杆质心的长度;I 为 摆杆惯量;u 为加在小车上的力;x 为小车位置; 为摆杆与垂直向上方向的夹角。
(I + mL2)q!! - mL!x!cosq = mgL sinq (M + m)!x! + bx! + mLq!!cosq - mLq!2 sinq = u
4. 复合倒立摆系列 复合倒立摆为一类新型倒立摆,由运动本体和摆杆组件组成,其运动本体可以很方便的调整成 三种模式,一是“二”中所述的环形倒立摆,还可以把本体旋转 90 度,连杆竖直向下和向上组成托 摆和顶摆两种形式的倒立摆。
图 1 一阶直线倒立摆实物图
图 2 一阶直线倒立摆平面示意图
(三) 控制方法
'XAxisLocation','bottom',...
'YAxisLocation','right',...
'Color','None',...
'XColor','k',...
'YColor','k');
ht=line(t,x,'color','r','parent',axet); ht=line(t,xx,'color','r','parent',axet); ylabel('Evolution of the x position') axis([0 1 0 0.1]) title('Response x and x'' in meters to a f(t) pulse of 0.1N') gtext('\leftarrow f(t)'),gtext('x(t)\rightarrow'),gtext('\leftarrow x''(t)') figure(2) hf=line(t,f(:)); grid on; xlabel('Time(s)') ylabel('Force(N)') axis([0 1 0 0.12]) axet=axes('Position',get(gca,'Position'),...
f=data(:,1);
x=data(:,2);
q=data(:,3);
xx=data(:,4);
qq=data(:,5);
figure(1)
hf=line(t,f(:));
grid on;
xlabel('Time(s)')
ylabel('Force(N)')
axis([0 1 0 0.12])
axet=axes('Position',get(gca,'Position'),...
经典控制理论的研究对象主要是单输入单输出系统,控制器设计时一般需要有关被控对象的较
精确模型。PID 控制因其结构简单,容易调节,且不需要对系统建立精确的模型,在控制上应用较
广泛,因此 PID 控制理论相对来说也较为成熟。
该系统的输出为:
y
(
s)
=
1+
G(s) KD (s)G
(
s
)
F
(
s)
其中 KD(s)=
图 6 一阶倒立摆控制系统示意图 (二) 系统建模
图 7 倒立摆物理模型
一阶倒立摆精确模型为:
( + 2) + ( + 2)
· ˙2
22
x¨ = J
ml F lm J ml sin✓ ✓ m l gsin✓cos✓
( J
+
2
ml
)(m0
+
) m
22 2
m l cos ✓
¨ ✓
=
mlcos✓
·
+ 22
(三) 研究内容 在认真复习已学相关课程和查阅相关文献的基础上,掌握一阶倒立摆系统模型的建立方法、最 优控制器设计,基于 Matlab 实现系统各状态变量和控制律的仿真。 运用牛顿动力学方法建立其非线性数学模型,得到系统的状态空间方程;用极点配置法、线性 二次最优控制策略的 LQR 法和模糊控制法,设计倒立摆控制系统的控制器;通过 MATLAB 对一阶 直线倒立摆系统进行仿真和实物控制。
· ˙2
F m l sin✓cos✓ ✓
(m0 + m)mlgsin✓
22 2
m l cos ✓
(m0
+
m)(J
+
2) ml
简化的近似模型为:
X¨ = 6✓ + 0.8F ✓¨ = 40✓ 2.0F
(三) 模型验证 Simulink
Step
0.12 Gain3
Derivative
0.12 Gain4
(二) 研究现状 倒立摆的最初研究开始于 20 世纪 50 年代,由(MIT)美国麻省理工学院的控制论专家根据火箭发 射助推器原理设计;而后人们又参照双足机器人控制问题研制出二级倒立摆控制设备,从而提高了检 验控制理论和方法的能力,也拓宽了检验范围随着研究的深入和实际问题的推动又发展出了三级摆 和四级摆。他们的研究成果具有重要的工程背景,在机器人的站立与行走、通讯卫星和侦察卫星姿 态的稳定、多级火箭飞行姿态的控制等领域发挥了巨大的作用。 我国则从 70 年代中期开始研究倒立摆,首先根据经典控制理论与现代控制理论应用极点配置 法,设计模拟控制器,国内外专家学者先后控制了单级倒立摆与二级倒立摆的稳定。随着微机的广
一阶直线倒立摆系统
周耀龙 144173248
摘 要 倒立摆问题是动力学中最重要的问题之一,并且在控制理论中已被充分的研究过。它是一个已经被建立的
基准问题,这给控制设计提供了很多具有挑战性的问题。该系统是非线性,不稳定,非最小相位和欠驱动的。伴随 噪音测量信号,它不是去状态可测量的。存在许多寄生效应例如,摩擦,杆和轴的弹性模式,齿轮和皮带的反弹效 应,连同输入饱和。这些挑战使得倒立摆成为控制实验室中一个典型的工具。
'XAxisLocation','bottom',... 'YAxisLocation','right',... 'Color','None',... 'XColor','k',... 'YColor','k'); ht=line(t,q,'color','r','parent',axet); ht=line(t,qq,'color','r','parent',axet); ylabel('Angle evolution(rad)') axis([0 1 -0.3 0]) title('Response \Theta(t) and \Theta''(t) in rad to a f(t) pulse of 0.1N') gtext('\leftarrow f(t)'),gtext('\Theta(t)\rightarrow'),gtext('\leftarrow \Theta''(t)')
泛应用,又陆续实现了数控二级摆的稳定。随着摆杆级数的增加,多级倒立摆由于其高度非线形和 不确定性,其控制成为世界公认的难题。
2002 年 8 月北京师范大学数学系李洪兴教授领导的科研团队采用“变论域自适应模糊控制理论” 成功地实现了全球首例“四级倒立摆实物系统控制”。而由此项理论产生的方法和技术将在半导体及 精密仪器加工、机器人技术、导弹拦截控制系统、航空器对接控制技术等方面具有广阔的开发利用 前景。
-32 Gain
x F
theta
Pendulums ystem
-KGain2
Derivative1
-KGain1
PID.mat To File
Scope
clear;clc; signals=load('xy.mat');
(四) Matlab 程序
t=signals.ans.Time;
data=signals.ans.Data;
三、 数学建模 本章主要是阐述了一级倒立摆实验平台的系统搭建,建立了一级倒立摆系统动力学模型,对其 控制系统进行了可控制性分析、原理分析以及实际控制系统的组成分析。
图 3 倒立摆控制流程图 (一) 牛顿力学方法推到微分方程 在忽略了空气阻力和各种摩擦之后,可将直线一阶倒立摆系统抽象为小车和匀质杆组成的系统。
2. 环形倒立摆系列 环形倒立摆系列是在圆周运动模块上装有摆体组件,圆周运动模块有一个自由度,可以围绕齿 轮中心做圆周运动,在运动手臂末端装有摆体组件,根据摆体组件的级数和串联或并联的方式,可 以组成很多形式的倒立摆。
3. 平面倒立摆系列 平面倒立摆是在可以作平面运动的运动模块上装有摆杆组件,平面运动模块主要有两类:一类 是 XY 运动平台,另一类是两自由度 SCARA 机械臂;摆体组件也有一级、二级、三极和四级很多 种。
二、 倒立摆系统 (一) 简介
倒立摆是机器人技术、控制理论、计算机控制等多个领域、多个技术的有机结合,其被控系统 本身又是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象 对其进行研究。
最初研究开始于 20 世纪 50 年代,麻省理工学院(MIT)的控制理论专家根据火箭发射器助推器原 理设计出一级倒立摆实验设备。今年来新的控制方法不断出现,人们试图通过倒立摆这一典型的控 制对象,检验新的控制算法是否有较强的处理多变量、非线性和绝对不稳定系统的能力,从而从中 找出最优秀的控制方法。
关键词 倒立摆;仿真
一、 前言 (一) 问题提出
倒立摆不仅仅是一种优秀的教学试验仪器,同时也是进行控制理论研究的理想平台。由于倒立 摆系统本身所具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人 员一直将它是为典型的研究对象,不断从中发掘新的控制策略和控制算法,相关的科研成果在航天 科技和机器人学方面获得了广阔的应用
硬件在回路仿真技术中自 20 世纪 60 年代问世直到目前美国研制航天飞机,始终盛行不衰。美 国人非常重视这方面的研究和应用,把模拟和仿真技术看作是降低导弹防御和战术导弹武器系统生 命周期费用的切实可行的手段,并且在制导武器系统的开发方面应用模拟和仿真技术已经有很长的 历史。
20 世纪 80 年代我国建设了一批高水平、大规模的硬件在回路仿真系统,如射频制导导弹仿真 系统、红外制导导弹仿真系统、歼击机工程飞行模拟器、歼击机仿真系统、驱逐舰半仿真系统等, 这些硬件在回路仿真系统在武器型号研制中发挥了重大作用。
(1)
经过推导和线性化后得到系统的微分方程为
(I + mL2)q!! - mgLq = mL!x! (M + m)!x! + bx - mLq!! = u
(2)
四、 MATLAB 仿真分析 (一) 题目概述
在下图所示的一阶倒立摆控制系统中,通过检测小车位置与摆杆的摆动角,来适当控制驱 动电机拖动力的大小,控制器由一台 IPC 完成。
(二) 分类 倒立摆已经由原来的直线一级倒立摆扩展出许多种类,典型的有直线倒立摆、环形倒立摆、平 面倒立摆和复合倒立摆等,倒立摆系统是在运动模块上装有倒立摆装置,由于在相同的运动模块上 可以装在不同的倒立摆装置,倒立摆的种类由此而丰富了很多,按倒立摆的结构来分,有以下类型 的倒立摆:
1. 直线倒立摆系列 直线倒立摆是在直线运动模块上装有摆体组件,直线运动模块由一个自由度,小车可以沿导轨 水平运动,在小车上装有不同的摆体组件,可以组成很多类型的倒立摆,直线柔性倒立摆和一般直 线倒立摆的不同之处在于柔性倒立摆有两个可以沿导轨滑动的小车,并且在主动小车和被动小车之 间增加了一个弹簧,作为柔性关节。
K S+ D
KP +
KI = S
KDS2 + KPS + KI S
通过分析上式可以得到系统的各项性能。我们通过仔细调节 PID 控制器参数,就可以得到满意
的控制效果。
从上述控制器的设计过程来看 PID 控制器的设计非常方便,但另一方面 PID 控制器为单输入单 输出控制系统,所以上述设计只能控制白干的角度,并不能控制小车的位置,所以小车会往一个方 向运动,即小车的位置存在稳态误差。这一点对以一个稳定的倒立摆控制系统来说是不能达到要求 的。
倒立摆系统作为控制理论中比较理想的试验手段,为自动控制理论的教学、试验和科研构建一 个良好的试验平台,以用来检验某种控制理论或方法的典型方案,促进到了控制系统新理论、新思
想的发展。 由于控制理论的广泛应用,由此系统研究产生的方法和技术将在半导体及精密仪器加工、机器
人控制技术、人工智能、导弹拦截控制系统、航空对接控制技术、火箭发射中是垂直度控制、卫星 飞行中的姿态控制和一般工业控制等方面具有广阔的利用开发前景。平面倒立摆可以比较真实的模 拟火箭的飞行控制和步行机器人的稳定控制等方面的研究。
m 2L
u
M
X
图 4 一阶倒立摆系统物理模型
PNFb Nhomakorabea!x x!
图 5 小车及摆杆受力分析图 其中,M 为小车质量;m 为摆杆质量;b 为摩擦系数;L 为摆杆转动轴心到杆质心的长度;I 为 摆杆惯量;u 为加在小车上的力;x 为小车位置; 为摆杆与垂直向上方向的夹角。
(I + mL2)q!! - mL!x!cosq = mgL sinq (M + m)!x! + bx! + mLq!!cosq - mLq!2 sinq = u
4. 复合倒立摆系列 复合倒立摆为一类新型倒立摆,由运动本体和摆杆组件组成,其运动本体可以很方便的调整成 三种模式,一是“二”中所述的环形倒立摆,还可以把本体旋转 90 度,连杆竖直向下和向上组成托 摆和顶摆两种形式的倒立摆。
图 1 一阶直线倒立摆实物图
图 2 一阶直线倒立摆平面示意图
(三) 控制方法
'XAxisLocation','bottom',...
'YAxisLocation','right',...
'Color','None',...
'XColor','k',...
'YColor','k');
ht=line(t,x,'color','r','parent',axet); ht=line(t,xx,'color','r','parent',axet); ylabel('Evolution of the x position') axis([0 1 0 0.1]) title('Response x and x'' in meters to a f(t) pulse of 0.1N') gtext('\leftarrow f(t)'),gtext('x(t)\rightarrow'),gtext('\leftarrow x''(t)') figure(2) hf=line(t,f(:)); grid on; xlabel('Time(s)') ylabel('Force(N)') axis([0 1 0 0.12]) axet=axes('Position',get(gca,'Position'),...
f=data(:,1);
x=data(:,2);
q=data(:,3);
xx=data(:,4);
qq=data(:,5);
figure(1)
hf=line(t,f(:));
grid on;
xlabel('Time(s)')
ylabel('Force(N)')
axis([0 1 0 0.12])
axet=axes('Position',get(gca,'Position'),...
经典控制理论的研究对象主要是单输入单输出系统,控制器设计时一般需要有关被控对象的较
精确模型。PID 控制因其结构简单,容易调节,且不需要对系统建立精确的模型,在控制上应用较
广泛,因此 PID 控制理论相对来说也较为成熟。
该系统的输出为:
y
(
s)
=
1+
G(s) KD (s)G
(
s
)
F
(
s)
其中 KD(s)=