谭 智,李祖枢
(重庆理工大学 计算机科学与工程学院,重庆 400054)
作为一种典型的非线性、强耦合、多变量、绝对不稳定系统,欠驱动的倒立摆系统一直是控制领域的一个研究热点[1]。鉴于倒立摆实物研究的易损性、安全性和复杂性,一般需要先进行仿真研究。因此建立一个简单、可靠和快速的倒立摆仿真平台非常重要。Matlab/Simulink 是一个较好的控制仿真实验软件,大部分学者在此平台上进行倒立摆仿真研究。在已有的Simulink 仿真的倒立摆模型中,主要有传递函数[2-4]、状态空间[5-6]和框图组合[7]的建模方式。在传递函数和状态空间的建模时需要先对数学模型进行线性化处理,且只能针对稳摆控制,因此在研究大范围非线性摆起过程中不能采用这种方式。研究摆起过程一般采用框图组合建模方式,Matlab/Simulink 下自带的一级倒立摆模型也采用这种方法。但这种建模方式具有工作量大、输写易出错、界面复杂和仿真速度慢等缺点。特别是在二级及更多级倒立摆中,这些缺点更加明显。
目前大多数研究者采用深圳固高公司的倒立摆,其驱动方式采用加速度控制,而目前所见的Simulink 仿真模型均采用力控制方式[5,7],造成仿真与实际控制有较大的差异,仿真结果难以应用于实时控制。如果在模型中通过反馈把力控制方式直接转换为加速度控制方式,则仿真过程中容易出现代数环报错。
本文以二级倒立摆为例,提出基于Simulink的S 函数建立倒立摆的Matlab 仿真模型建模方法,采用了与实际相符的加速度控制方式,具有界面简单、工作量小、不易出错、无代数环且仿真速度快等优点。……