您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 球杆系统控制器设计实验报告(北京理工大学)
球杆系统控制器设计实验报告学院:自动化学院组号:5成员:球杆系统控制器设计实验一、实验目的和要求1.1实验目的(1)通过本设计实验,加强对经典控制方法(PID控制器)和智能控制方法(神经网络、模糊控制、遗传算法等)在实际控制系统中的应用研究。(2)提高学生有关控制系统控制器的程序设计、仿真和实际运行能力.(3)熟悉MATLAB语言以及在控制系统设计中的应用。1.2实验要求(1)每两人一组,完成球杆系统的开环系统仿真、控制器的设计与仿真以及实际运行结果;(2)认真理解设计内容,独立完成实验报告,实验报告要求:设计题目,设计的具体内容及实验运行结果,实验结果分析、个人收获和不足,参考资料。程序清单文件。二、实验内容本设计实验的主要内容是设计一个稳定的控制系统,其核心是设计控制器,并在MATLAB/SIMULINK环境下进行仿真实验,并在球杆实验平台上实际验证。算法实现:设计模糊控制器控制球杆系统,达到要求目标。三、实验原理3.1球杆系统的特点球杆系统是一个典型的非线性系统,理论上而言,它是一个真正意义上的非线性系统,其执行机构还具有很多非线性特性,包括:死区,直流马达和带轮的传动非线性,位置测量的不连续性,导轨表面不是严格的光滑表面,产生非线性阻力,这些非线性因素对于传统意义上的测量和建模造成很大的影响,并对系统的控制性能造成非常大的影响,怎样去设计一个鲁棒的控制系统,是现代控制理论的一个重要问题。因为系统机械结构的特点,球杆系统具有一个最重要的特性——不稳定性,对于传统的实验方法,存在一些实验的难处,不稳定的系统容易对实验人员产生危险或是不可预料的伤害,球杆系统相对而言,机械比较简单,结构比较紧凑,安全性也比较高,是一个可以避免这些危险和伤害的实验设备。3.2球杆系统的数学模型对小球在导轨上滚动的动态过程的完整描述是非常复杂的,设计者的目的是对于该控制系统给出一个相对简单的模型,如图3.1所示为实验使用球杆系统简化图。图3.1球杆系统简易图实际上使小球在导轨上加速滚动的力是小球的重力在同导轨平行方向上的分力同小球受到的摩擦力的合力。考虑小球滚动的动力学方程,小球在V型杆上滚动的加速度:sincosgga(1)其中μ为小球与轨道之间的摩擦系数,而α为轨道杆与水平面之间的夹角。但在进行数学建模的过程中,我们忽略了摩擦力,因此,其基本的数学模型转换成如下方式:xmmgsin(2)当α1时,将上式线性化,得到传递函数如下2)()(sgssx(3)其中X(s)为小球在轨道上的位置。但是,在实际控制的过程中,杆的仰角是由电动机的转角输出来实现的。影响电动机转角和杆仰角之间关系的主要因素就是齿轮的减速比和非线性。因此,我们可以得到它们的关系如下:)()(sdLs(4)把(4)式代入(3)式,我们可以得到另一个模型:2)()(Lsgdssx(5)因此,球杆系统实际上可以简化为一个二阶系统。由建模分析我们得到球杆系统的开环传递函数为:2)()(Lsgdssx(6)3.3模糊控制器模糊逻辑控制(FuzzyLogicControl)简称模糊控制(FuzzyControl),是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术。模糊控制实质上是一种非线性控制,从属于智能控制的范畴。一般控制系统的架构包含了五个主要部分,即:定义变量、模糊化、知识库、逻辑判断及反模糊化:定义变量:也就是决定程序被观察的状况及考虑控制的动作,例如在一般控制问题上,输入变量有输出误差E与输出误差变化率EC,而模糊控制还将控制变量作为下一个状态的输入U。其中E、EC、U统称为模糊变量。模糊化:将输入值以适当的比例转换到论域的数值,利用口语化变量来描述测量物理量的过程,根据适合的语言值(linguisticvalue)求该值相对的隶属度,此口语化变量称为模糊子集合(fuzzysubsets)。知识库:包括数据库(database)与规则库(rulebase)两部分,其中数据库提供处理模糊数据的相关定义;而规则库则藉由一群语言控制规则描述控制目标和策略。逻辑判断:模仿人类下判断时的模糊概念,运用模糊逻辑和模糊推论法进行推论,得到模糊控制讯号。该部分是模糊控制器的精髓所在。解模糊化:解模糊化(defuzzify):将推论所得到的模糊值转换为明确的控制讯号,做为系统的输入值。四、模糊控制器设计4.1模糊控制器选择由于球杆系统具有非线性,为了得到良好的控制性能,我们不仅仅需要观测小球位置误差e,还要观测其误差变化ec,也就是小球的速度。控制量只有一个,就是齿轮旋转角度。因此模糊控制器选择两输入-单输出二维结构。由于系统结构为两输入-单输出结构,因此输入输出变量共有三个,输入变量分别为小球位置误差e,小球位置误差变化率-即小球的速度ec。输出变量为输出控制角度。取误差语言变量为E,误差变化率语言变量为EC,系统输出控制量为U。对于误差变量E,取论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},语言值为:{负大(NB),负中(NM),负小(NS),零(Z),正小(PS),正中(PM),正大(PB)}。分别表示当前小球位置r相对于设定值为:“极小”,“很小”,“偏小”,“正好”,“偏大”,“很大”,“极大”。对于误差变化率EC,取论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},语言值为:{负大(NB),负中(NM),负小(NS),零(Z),正小(PS),正中(PM),正大(PB)}。分别表示当前小球的速度“左滚极快”,“左滚很快”,“左滚偏快”,“小球静止”,“右滚极快”,“右滚很快”,“右滚偏快”。对于输出控制量为U,取论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},语言值为:{负大(NB),负中(NM),负小(NS),零(Z),正小(PS),正中(PM),正大(PB)}。分别表示当前齿轮偏角“上偏极大”,“上偏很大”,“上偏偏大”,“水平为零”,“下偏偏大”,“下偏很大”,“下偏极大”。三者隶属度函数均选择选择三角形隶属度函数。如下图所示。图4.1:E、EC、U隶属函数图模糊控制量的选取遵循以下规则:当误差极大或很大时,模糊控制量的选择应以消除误差为主。当误差较小时,模糊控制量的选择就以系统的稳定性为主,防止系统超调。根据球杆系统控制经验,建立模糊控制则表如下:第一行为EC的语言值,第一列为E的语言值。EECNBNMNSZPSPMPBNBNBNBNMNMNSZZNMNBNMNMNSNSZZNSNMNSNSNSZPSPSZNMNSNSZPSPSPMPSNSNSZPSPSPSPMPMZZPSPSPMPMPBPBZZPSPMPMPBPB表1:球杆系统常规模糊控制规则表4.2模糊控制器设置在MATLAB中打开Simulink后,点击新建模型图标,重新创建了一个模型框,在仿真库中找到模糊控制工具箱,将模糊逻辑控制器部件拖到新建的模型框中,出现如图所示部件,双击该图标即可出现模糊逻辑控制器功能块参数设置对话框,将本文中第四部分保存的fuzzy.fis文件名fuzzy填入参数表中,控制器会自动调用编制的模糊规则。图4.2模糊逻辑控制器在模型窗口添加如图4.3所示部件并进行相应设置,其中图4.4为StartRealControl内部结构,我们真正设置的控制器及其增益模块添加在这一块。图4.3控制模块总体结构图4.4StartRealControl模块内部结构五、实验结果与分析由示波器观测到的小球的设定位置与实际位置如下图所示其中直线为小球位置的设定值,曲线是小球位置设定值变化后实际位置波动的数值。通过图像可以发现,模糊控制能较好的实现对设定位置的跟踪,虽然设定值与实际位置有一些误差。但对于非线性被控制系统,模糊控制算法理论上有着PID控制算法更好的控制性能。而且模糊控制器的参数调整要比PID控制算法简便,模糊控制算法的响应时间明显要快于PID控制。六、实验收获与个人总结通过这几周的球杆控制实验,我不仅对经典PID控制方法有了更为深入的了解,还对模糊控制这种智能控制方法有了较为初步的认识,了解了模糊控制算法在实际非线性控制系统中的应用。基于Matlab的模糊控制器的使用使我提高了有关控制系统控制器的程序设计、仿真和实际运用能力。在实验过程中,对Matlab语言的使用更为熟悉和熟练,并初步认识到Matlab在实际控制系统设计中的应用。在实验过程中,遇到了许多问题,如参数调节总是不如意,这一块耗费时间较多,但是慢慢分析参数同时调节模糊控制前的增益参数最终使控制效果较好。通过这次实验,初步学习了基于模糊控制的球杆系统的控制器设计方法,也对模糊控制的在实际控制系统中的应用和实现有了初步的了解。
本文标题:球杆系统控制器设计实验报告(北京理工大学)
链接地址:https://www.777doc.com/doc-1817380 .html