基于MATLAB(矩阵实验室)的倒立摆控制系统仿真摘要自动控制原理(包括经典部分和现代部分)是电气信息工程学院学生的一门必修专业基础课,课程中的一些概念相对比较抽象,如系统的稳定性、可控性、收敛速度和抗干扰能力等。
倒立摆系统是一个典型的非线性、强耦合、多变量和不稳定系统,作为控制系统的被控对象,它是一个理想的教学实验设备,许多抽象的控制概念都可以通过倒立摆直观地表现出来。
本文以一级倒立摆为被控对象,用经典控制理论设计控制器(PID控制器)的设计方法和用现代控制理论设计控制器(极点配置)的设计方法,通过MATLAB仿真软件的方法来实现。
关键词:一级倒立摆PID控制器极点配置Inverted pendulum controlling systemsimulation based on the MATLABABSTRACTAutomatic control theory (including classical parts and modern parts) is a compulsory specialized fundamental course of the students majored in electrical engineering. Some of the curriculum concept is relatively abstract, such as the stability, controllability, convergence rate and the anti-interference ability of system. Inverted pendulum system is a typical nonlinear, strong coupling, multivariable and unstable system. It is an ideal teaching experimental equipment as a controlled object, by which many abstract control concepts can be came out directly. This paper chose first-order inverted pendulum as the controlled object. First, the PID controller was designed with classical control theory. Then pole-assignment method was discussed with modern control theory. At last, the effectness of the two methods was verified by MATLAB simulation software.KEY WORDS: First-order inverted pendulum PID controller pole-assignment目录摘要 (I)ABSTRACT (II)1 绪论 (1)1.1倒立摆的控制方法 (1)1.2 MATLAB/Simulink简介 (2)1.3 主要内容 (3)2一级倒立摆 (3)2.1 实验设备简介 (3)3直线一级倒立摆的数学模型 (4)3.1直线一级倒立摆数学模型的推导 (4)3.1.1 微分方程模型 (6)3.1.2 传递函数模型 (7)3.1.3 状态空间数学模型 (8)3.2系统阶跃响应分析 (10)4 直线一级倒立摆PID控制器设计 (14)4.1 PID控制分析 (14)4.2PID控制参数设定及MATLAB仿真 (17)5直线一级倒立摆状态空间极点配置控制器设计 (20)5.1 状态空间分析 (21)5.2极点配置及MATLAB仿真 (22)6总结 (26)致谢 (27)参考文献 (28)1 绪论倒立摆起源于20世纪50年代,是一个典型的非线性、高阶次、多变量、强耦合、不稳定的动态系统,能有效地反映诸如稳定性、鲁棒性等许多控制中的关键问题,是检验各种控制理论的理想模型。
很多被控对象都可以抽象成为倒立摆模型,在很多领域有着广泛的应用,如机器人,航天领域等。
它不但是验证现代控制理论方法的典型实验装置,而且其控制方法和思路对处理一般工业过程亦有广泛的用途。
倒立摆常规的控制算法如LQR在倒立摆的控制中已被广泛采用,模糊控制作为一种智能控制的方法,在一定程度上模仿了人的控制,它不需要有准确的控制对象模型,作为一种非线性智能控制方法,已在多变量、时变、非线性系统的控制中发挥了重要的作用。
人们已利用多种控制策略实现了一至四级倒立摆系统的稳定控制。
对于倒立摆系统的稳定控制,具有重要的理论意义和重要的工程实践意义。
事实上,人们一直在试图寻找不同的控制方法来实现对倒立摆的控制,以便检查或说明该方法对严重非线性和绝对不稳定系统的控制能力。
1.1 倒立摆的控制方法(1)线性理论控制方法将倒立摆系统的非线性模型进行近似线性化处理,获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法,得到期望的控制器。
PID 控制、状态反馈控制、LQR控制算法是其典型代表。
这类方法对于一、二级倒立摆(线性化误差较小、模型较简单)控制时,可以解决常规倒立摆的稳定控制问题。
但对于像非线性较强、模型较复杂的多变量系统(三、四级以及多级倒立摆)线性系统设计方法的局限性就十分明显,这就要求采用更有效的方法来进行合理的设计。
(2)预测控制和变结构控制方法由于线性控制理论与倒立摆系统多变量、非线性之间的矛盾,使人们意识到针对多变量、非线性对象,采用具有非线性特性的多变量控制解决多变量、非线性的必由之路。
人们先后开展了预测控制、变结构控制和自适应控制的研究。
(3)智能控制方法在倒立摆系统中用到的智能控制方法主要有神经网络控制、模糊控制、仿人智能控制、拟人智能控制和云模型控制等。
(4)鲁棒控制方法虽然,目前对倒立摆系统的控制策略有如此之多,而且有许多控制策略都对倒立摆进行了稳定控制,但大多数都没考虑倒立摆系统本身的大量不确定因素和外界干扰,目前对不确定倒立摆系统的鲁棒控制问题进行了研究并取得了一系列成果。
1.2 MATLAB/Simulink简介在科学研究和工程应用中,为了克服一般语言对大量的数学运算,尤其当涉及到矩阵运算时编制程序复杂、调试麻烦等困难,美国Math Works软件公司于1967年构思并开发了矩阵实验室(Matrix Laboratory ,MATLAB)软件包。
经过不断更新和扩充,该公司于1984年推出MATLAB的正式版,特别是1992年推出具有跨时代意义的MATLAB 4.0版,并于1993年推出其微机版,以配合当时日益流行的Microsoft Windows操作系统。
截止到2005年,该公司先后推出了MATLAB 4.x、MATLAB 6.x,以及MATLAB 7.x等版本,该软件的应用范围越来越广。
MATLAB以它的“语言”化的数值计算,强大的矩阵处理及绘图功能,以及灵活的可扩充性和产业化的开发思路,很快就为自动控制界的研究人员所瞩目。
目前,在自动控制、图像处理、语言处理、信号分析、振动原理、优化设计、时序分析和系统建模等领域广泛应用。
1990年,Math Works软件公司为MATLAB提供了新的控制系统图形化模型输入与仿真工具Simulink。
Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。
同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。
Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。
为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。
Simulink®是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。
对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink 提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。
构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。
Simulink与MATLAB®紧密集成,可以直接访问MATLAB大量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。
另外,模型输入与仿真环境Simulink更使MATLAB为控制系统的仿真与在CAD 中的应用开辟了崭新的局面,使MATLAB成为目前国际上最流行的控制系统计算机辅助设计的软件工具。
MATLAB不仅流行于控制界,在生物医学工程、语言处理、图像信号处理、雷达工程、信号分析,以及计算机技术等行业中也都广泛应用。
1.3 主要内容本文以一级倒立摆为被控对象,用古典控制理论设计控制器(PID控制器)的设计方法和用现代控制理论设计控制器(极点配置)的设计方法,包括三方面的内容:(1)建立直线一级倒立摆的线性化数学模型;(2)倒立摆系统的PID控制器设计、MATLAB仿真;(3)倒立摆系统的状态空间极点配置控制器设计、MATLAB仿真。
2 一级倒立摆2.1 实验设备简介一级倒立摆系统的结构示意图如图2-1所示。
图2-1 一阶倒立摆结构示意图系统组成框图如图2-2所示。
图2-2 一级倒立摆系统组成框图系统是由计算机、运动控制卡、伺服机构、倒立摆本体和光电码盘几大部分组成的闭环系统。
光电码盘1将小车的位移、速度信号反馈给伺服驱动器和运动控制卡,摆杆的角度、角速度信号由光电码盘2反馈给运动控制卡。
计算机从运动控制卡中读取实时数据,确定控制决策(小车运动方向、移动速度、加速度等),并由运动控制卡来实现该控制决策,产生相应的控制量,使电机转动,通过皮带,带动小车运动,保持摆杆平衡。