首页 考试资料幻灯片工程技术公务员考试小学教学中学教学大学教学外语资料
倒立摆全套资料 word g格式


运行程序得到: [email protected] k11?? 0 k12??? ? k13?? 0 k14?? 0 k15??? ? 3 4l
. .

[email protected]

3g 4l

设 X?? {x, x,? ,?},系统状态空间方程为: X??? AX?? Bu y?? CX?? Du ?Googol 2005
110

第 4 章 直线一级顺摆建模和实验

则有:
? x???? ?0 ??x??? ?0 ???????? ????? ?0 ?????? 0 ???????? ??? 1 0 0 0 0 ?? ???????? 0????????? ?? ??????? 1???

0 3g 0? ? 4l

? ?? 4l??? ??

? x?? ???? ? x?? ?1 0 0 0??? x???? ?0?? y??????????? ??????????0?u ????? ?0 0 1 0????????? ??? ???? ?????

通过转化可以得到:

?????? ?
摆杆角度和小车位置的传递函数为:
?(s) X (s)

3g 3 ?? ? ?x?? 4l 4l
3 2 s ? 4l 3g s 2??? 4l 3

摆杆角度和小车加速度的传递函数为:
?(s) ?? V (s) 4l s 2??? 3g 4l

4.1.2 实际系统模型
实际系统的物理参数见系统物理参数章节相关内容,把参数代入,可以得到 系统的实际模型。 摆杆角度和小车位移的传递函数:
?(s) X ( s) ? 3s 2 s?? 29.4
2

(4-4)

摆杆角度和小车加速度之间的传递函数为: ?(s) 3 ? 2 V (s) s?? 29.4 因此以小车加速度作为输入的系统状态方程:
? x??? ???0 ?? ??x??? ???????0 ?????? 0 ?? ?????? ?? ???? ??? 0 ??? 1 0 0 0?? 0 0??? x?? ? 0??? 0???? x?? 1??? ?????u ' 0 1??????? ? 0??? ??? 0???? 29.4 ???? ? 3?? ???? 0???
111

(4-5)

?Googol 2005

第 4 章 直线一级顺摆建模和实验

? x?? ???? ? x?? ?1 0 0 0??? x?????0? ' y????????????????????????????u ????? ?0 0 1 0????????0?? ? ??? ?? ?? ??

(4-6)

4.1.3 系统可控性分析
同 3.1.1.4 系统可控性分析,对系统进行可控性分析原理,有:
?0 1 ?0 0 A??? ?? 0 0??? 0 0??

?0 0?29.4 0?? ? 0??? ? 1??? B??????? ? 0??? ???? ?3?? ?1 0 0 0?? C????? ?0 0 1 0?? ?0?? D??????? ?0?? ??

?0 0 0 1?? ???????????????

代入上式,并在 MATLAB 中计算: clear; A=[ 0 1 0 0; 0 0 0 0; 0 0 0 1; 0 0 -29.4 0]; B=[ 0 1 0 -3]'; C=[ 1 0 0 0; 0 1 0 0]; D=[ 0 0 ]'; cona=[B A*B A^2*B A^3*B]; cona2=[C*B C*A*B C*A^2*B C*A^3*B D]; rank(cona) rank(cona2) 或直接利用计算可控性矩阵的 ctrb 命令和计算可观性的矩阵 obsv 命令来计 算。

?Googol 2005

112

第 4 章 直线一级顺摆建模和实验

Uc=ctrb(A,B); Vo=obsv(A,C); rank(Uc) rank(Vo) 可以得到: ans = 4 ans = 2 可以看出,和一级倒立摆相同,系统的状态完全可控性矩阵的秩等于系统的 状态维数,系统的输出完全可控性矩阵的秩等于系统输出向量 y 的维数,所以系 统可控,因此可以对系统进行控制器的设计,使系统稳定。

4.2 直线一级顺摆根轨迹分析
在得到系统传递函数后,我们对其进行根轨迹分析,和 3.1.3 直线一级倒立 摆根轨迹控制实验相似,在 MATLAB 下新建一个文件,键入如下命令: clear; num=[-3 ]; den=[1 0 29.4]; rlocus(num,den) z=roots(num); p=roots(den); 得到结果如下,系统的零极点为: z= 0 0 p= 0 + 5.4222i 0 - 5.4222i 系统的根轨迹:

?Googol 2005

113

第 4 章 直线一级顺摆建模和实验

图 4-2 直线一级顺摆的根轨迹图

可以看出,系统的零点位于无穷远的地方,在虚轴上有两个极点。

4.3 直线一级顺摆频率响应分析
参考 3.1.4 直线一级倒立摆频率响应控制实验相关实验内容的原理,对直线 一级顺摆进行频率响应分析,在 MATLAB 中键入以下命令: clear; num=[-3]; den=[1 0 29.4]; subplot(2,1,1) bode(num,den) subplot(2,1,2) nyquist(num,den) 得到如下图所示的结果:

图 4-3 直线一级顺摆的 Bode 图

?Googol 2005

114

第 4 章 直线一级顺摆建模和实验

图 4-4 直线一级顺摆的 Nyquist 图

可以看出,系统的奈魁斯特曲线顺时针绕-1 点一圈,系统不稳定。

4.4 直线一级顺摆阶跃响应分析
同 3.1.2 系统阶跃响应分析原理相似,对直线一级顺摆进行阶跃响应分析。 clear; num=[-3]; den=[1 0 29.4]; step(num,den) 运行得到以下结果:

图 4-5 直线一级顺摆的阶跃响应结果

可以看出,系统在阶跃响应下会出现持续振荡,是一个典型的无阻尼的二阶 系统。 ?Googol 2005
115

第 4 章 直线一级顺摆建模和实验

4.5 直线一级顺摆的 PID 控制仿真与实验
和直线一级倒立摆相似,直线一级顺摆也可以进行根轨迹校正实验、频率响 应校正实验和状态空间极点配置实验,以上实验请参照直线一级倒立摆的相关实 验和直线一级顺摆的 PID 控制实验进行,对于直线一级顺摆,我们只进行 PID 控制实验和 LQR 控制实验。

4.5.1 直线一级顺摆的 PID 控制分析与仿真
在 MTALAB Simulink 下建立直线一级顺摆的模型如下:

运行得到如下结果:

可以看出,和上面的仿真结果一样,下面添加 PID 控制器: (进入 MATLAB Simulink 实时控制工具箱“Googol Education Products”打开 “ Inverted PendulumLinear Inverted PendulumLinear 1-Stage Pendulum Experiment PID Experiments”中的“PID Control Simulink”)

图 4-6 直线一级顺摆的 PID 控制仿真

双击 PID 模块设置 PID 参数:

?Googol 2005

116

第 4 章 直线一级顺摆建模和实验

注意,由于系统模型中带有“-”号,PID 参数需要设置为负值。 运行仿真得到以下结果:

图 4-7 直线一级顺摆 P 控制结果

可以看出,在 P 控制器作用下,系统呈现等幅振荡,需要给系统增加微分控 制,设置 PID 参数为:

运行仿真得到如下结果:

可以看出,系统振荡次数过多,稳定时间较长,因此增加微分参数:

?Googol 2005

117

第 4 章 直线一级顺摆建模和实验

给系统施加幅值为 0.01 的阶跃信号,得到下面的仿真结果:

图 4-8 直线一级顺摆 PD 控制结果

可以看出,系统可以很快的稳定,但是存在一定的稳态误差,为消除稳态误 差,增加积分控制:

12345678910111213141516171819202122232425262728

 


 

  【Top

最新搜索

 


 

热点推荐