直线一级倒立摆的实时控制

  • 格式:doc
  • 大小:471.00 KB
  • 文档页数:9

第六章直线一级倒立摆的实时控制
6.1 倒立摆实时控制的原理
倒立摆系统是一个不稳定系统,当其摆杆在竖直向上的状态下如果无外界干涉、开环的情况下是绝对不稳定的。

那么,为了使摆杆在竖直向上保持稳定状态,就需要给小车一个平行于轨道的方向的控制力,带动摆杆绕着与小车连接的转轴在竖直平面内摆动,尽量保持摆杆与竖直向上方向的夹角为0。

将控制力作为倒立摆系统的输入,小车的位移和摆杆的角度为采集到的反馈信号,计算机在每一个采样周期中采集来自光电编码器测量的小车与摆杆的实际位置、角度信号,反馈给数据采集卡,再传输给计算机,与期望值进行比较后,通过所设计控制算法得到控制量,最后经数模转换驱动电机,这样小车可以通过左右移动来保持摆杆的平衡,实现倒立摆的实时控制。

所以在这里,直线一级倒立摆系统的实时控制的原理可以简单叙述如下:用一种控制方法对小车的运动做适当的控制,从而使小车上的摆杆倒置稳定。

同时,该控制系统能够通过实时采集小车的位置和摆杆的偏离角度,对外界扰动草成的系统不稳定偏差能够及时的修正,保证直线一级倒立摆系统的恒久稳定[25]。

6.2 倒立摆实时控制软件介绍
倒立摆系统的实时控制所使用的软件叫做QUARC。

QUARC是Quanser下一代多功能通用快速控制实时控制软件,可以无缝集成Simulink。

它将传统的设计实现接口工具集扩展到新的高度,允许更多的功能,更具弹性的开发手段,更少的培训时间,同时避免重复的开发工作。

而且QUARC实时控制软件具有一些重要特点[26]:
(1)完全支持Simulink的扩展模式,软件包括示波器,浮点示波器,显示,在线参数调节等功能,还可以进行实时的参数标绘,提供了各种数据显示及标绘的选项;
(2)软件基于Windows下的图形化操作界面,同时解决了在Windows控制实时性较差的问题;
(3)系统灵活可扩展的通信,数据采集和控制系统架构;
(4)信号,子系统,示波器均可调试,同时具有模型参考模块可支持编译修改能力,参数修改后的效果立即可视。

毫无疑问,QUARC在Quanser的开放式架构中迈出了激动人心的一步。

在继承了前一辈实时仿真软件WinCon传统的同时,新一代的QUARC工具包提供了更多的特性和增强进的兼容性,这种易于使用的软件系统在增强了工程的可管理性的同时降低了开发成本和时间。

6.3 倒立摆系统的实时控制的实现
6.3.1 三种控制方法的对比
在第三、第四和第五章节分别介绍和设计了PID 、LQR 和模糊控制器。

根据三种控制器仿真出来的结果,比较得出以下结论:
表6.1 控制方法仿真结果对比表
Table 6.1 Comparison table control method for simulation results
根据上面表格,可以看出,PID 控制器和LQR 控制器相对都能达到较为理想的控制效果,而模糊控制器虽然能够最快达到稳定,但是相对超调量和振荡次数都有增加。

稳定所需调节时间上LQR 优于PID ,故以此为评价标准,选用LQR 控制作为实时控制算法。

6.3.2 倒立摆系统的实时控制的实现
根据上一节所得出的结论,在本设计中,选择使用线性二次最优LQR 控制器对直线一级倒立摆系统进行实时控制的实现。

进行实时控制实验,首先要在Simulink 中利用Quanser 公司的MATLAB 实时控制软件QUARC 建立的系统模型,Simulink 窗口调用Quarc 初始化模块进行初始化;
如图6.1所示:
指标 超调量(位移)
超调量(角度) 振荡次数 稳定时间 控


PID 控制器 约7% 约16% 1次 约4s 模糊控制器 约150% 约120% 约4次 约1.5s LQR 控制器 约5% 约10% 1次 约3s
图6.1直线一级倒立摆的LQR实时控制模型
Fig.6.1 LQR control real-time model of the linear inverted pendulum 由图6.1中,“Setpoint”为设定跟踪值模块,“Enable Control”为起控模块,“Actual Measured Value”为实际测量模块,“Watchdog”为保护模块,“Scopes”
为观测模块。

那么,双击“Setpoint”模块后,可看其内部结构如图6.2所示:
图6.2 Setpoint单元内部图
Fig.6.2 The unti map of Setpoint
K*u为所设计的LQR控制器,K即为LQR反馈增益矩阵;封装的“acture control”方框模块便是倒立摆系统模块,其中包括了设备与数据采集卡在PC机
平台的实际连接方式的等等,具体内部结构如图6.3所示:
图6.3 acture control单元内部图
Fig.6.3 The unti map of acture control
封装的“acture measure value”方框模块是实际测量值模块。

其内部结构图如图6.4所示:
图6.4 acture measure value单元内部图
Fig.6.4 The unti map of acture measure value
封装的“Enable Control”为起控模块,其内部结构图如图6.5所示:
图6.5Enable Control单元内部图
Fig.6.5 The unti map of Enable Control
封装的“Watchdog”模块为保护模块,俗称“看门狗”。

加入看门狗的目的是对一些程序潜在错误和恶劣环境干扰等因素导致系统死机而在无人干预情况下自动恢复系统正常工作状态。

其内部结构为下图6.6所示:
图6.6Watchdog单元内部图
Fig.6.6 The unti map of Watchdog
Scopes为显示模块,用来显示系统各状态量的实时变化趋势和数值。

在这个实时控制实验中设置监控了小车的速度、小车位移量、摆杆角度和摆杆角速度这四个状态,可以方便的点击相应示波器观察其当前数值和变化情况。

其采集卡型号选用Q8usb。

如图6.7所示:
图6.7调用Quarc初始化模块初始化界面图
Fig.6.7 Call the Quarc initialization module initializes the interface map 接下来将上一个章节模拟出来的K值输入在该实时控制系统中,确认系数正确后先要点击编译程序,然后点击连接程序,最后点击运行程序,待电机上伺服后,缓慢提起摆杆到倒置平衡位置,程序就进入自动控制,这时放开
手,等系统稳定后,得到实验曲线如下:
Fig.6.8 Control effect on real-time control diagram of the system
图6.9小车位移实时控制曲线
Fig.6.9 Cart position on real-time control diagram
图6.10小车摆杆角度实时控制曲线
Fig.6.10 Cart pendulum angle on real-time control diagram
从图6.8,6.9,6.10中,可以看到倒立摆的角度和位移在实际运行中分别平衡在-0.2°和-15mm处,并在平衡点附近来回小幅震荡,小车位置振动幅值约为1mm,摆杆的振动幅值约为0.15°。

虽然被控量与设定值有一定偏差,但偏差均在允许范围之内,系统也总是处于平衡,说明设计的LQR控制器能对直线一级倒立摆系统进行有效控制。

而且控制电压与摆杆角度几乎是同时变化,说明系统能对摆杆角度的变化迅速响应,可以满足实时控制的要求。

那么,在实际过程中,系统遇到扰动问题时,能否恢复稳定状态?这里,对直线一级倒立摆系统突加扰动,扰动后的曲线图如下:
图6.11突加扰动后系统控制电压实时控制曲线
Fig.6.11 Control effect on real-time control diagram of the system after the disturbance
图6.12突加扰动后小车位移实时控制曲线
Fig.6.12 Cart position on real-time control diagram after the disturbance
图6.13突加扰动后小车摆杆角度实时控制曲线
Fig.6.13 Cart pendulum angle on real-time control diagram after the disturbance
如图6.11,6.12,6.13所示,系统运行后小车在偏移初始位置20mm的位置稳定,摆杆角度则稳定为-0.25 rad。

运行34秒后,人为地轻轻推动一下平衡的摆杆,于是系统受到外界的施加干扰,小车的位置受扰动影响又移动了60mm,而摆杆角度也同样因为扰动相比平衡位置移动了2.25rad,这时,LQR控制器迅速发挥控制作用,使系统在4秒内又重新恢复到平衡,继续稳定运行,这说明设计出的LQR控制器不仅能对直线一级倒立摆系统进行有效的实时控制,还具有良好的抗扰动性,至此,完成了对倒立摆系统的实时控制的研究。