基才Matlab的倒立摆系统实时模糊控制研究_第1页
基才Matlab的倒立摆系统实时模糊控制研究_第2页
基才Matlab的倒立摆系统实时模糊控制研究_第3页
基才Matlab的倒立摆系统实时模糊控制研究_第4页
基才Matlab的倒立摆系统实时模糊控制研究_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基才Matlab的倒立摆系统实时模糊控制研究徐 雄,石曙东 (湖北师范学院 计算机科学系,湖北 黄石 435002)1 引言倒 立摆系统是一种是非最小相位系统,它具有非线性、多变量和不稳定的特点,因而成为控制理论教学和科研的典型对象,以往主要通过软件仿真或在精密倒立摆上实 现各种控制算法,而对倒立摆硬件系统开发的相关报道却甚少。目前,国内各高校基本上都采用香港固高公司和加拿大Quanser公司生产的系统,由于采用高 精度的零部件,因此,硬件成本较高;其软件大多采用VC等可视化编程软件来开发,研发周期长,并且不提供源代码,缺乏可读性和再利用性。本文介绍一种倒立摆系统的软硬件开发,其硬件系统具有低

2、成本、高可靠性和稳定性等优点;其软件系统在Matlab环境下编程和实时控制,源代码完全开放,而且可调用丰富的Matlab工具箱函数,非常适用于教学和科研上的再学习和开发。2 倒立摆系统的硬件设计一 级水平倒立摆硬件系统框图如图1所示,多级水平倒立摆也相类似,区别之处只是摆杆不同。倒立摆系统由导轨、力矩电机、滑块与摆杆、皮带等部件组成。摆杆连 接滑块,滑块由皮带拖动在导轨上滑行。滑块离中心点的水平位移和摆杆的角度分别由旋转编码器1和2检测,通过旋转编码器信息采集卡转换后对应于和x的计 数值。在导轨的两侧各有一个限位开关(常闭),当滑块滑行到两侧时,将碰到限位开关并使其断开,用来判断滑块的位置是否

3、超出限定范围以及是否立即停止电机 运行。限位开关的通断信号由数据采集卡IO采集,控制电压通过数据采集卡DA输出,经过力矩电机控制器转换后作用于电机。硬件系统组成部件说明如表1 所列。2.1 力矩电机控制器设计数 据采集卡DA输出电压一般为0 V+5 V或0 V+10 V,而力矩电机的伺服驱动电压为-24 V+24 V,因此需要设计一个控制器,将数据采集卡的输出电压按比例转换成力矩电机控制所需的伺服电压。力矩电机控制器采用不带MPU的分立元件反馈方法设计,以 提高可靠性。当电机带动小车运动到两端碰到限位开关时,施加在电机上的电压必须马上变成0 V,电机立即停止转动,但力矩电机的堵转电流非常大,会

4、击穿达林顿管,因此在设计力矩电机控制器时,应考虑碰到限位开关时要立即切断电机的达林顿输出电 路,使电机端的电压箝位于0 V。2.2 旋转编码器接口设计摆 杆的角度()是倒立摆控制所需的最主要的反馈检测信号,而小车的位置(x)只起到辅调节作用,要求精度不高。因此,摆杆角度检测采用日本NEMI- COM公司生产的高精度旋转编码器,而小车位置检测所用旋转编码器则自制,由旋转编码盘加上带槽光耦检测电路实现。旋转编码器的典型输出为两个相位差 90°的方波信号(A和B)以及零位脉冲信号Z。其中,Z脉冲信号标志旋转编码盘转过的圈数(每圈360°),A、B两相信号脉冲数标志转编码盘转过的角

5、 度,A、B之间的相位关系为码盘的转向,即当A相超前B相90°时,标志码盘正转;当B相超前A相90°时,标志码盘反转。旋 转编码器接口电路将A、B、Z脉冲信号转换成旋转码盘转过角度的计数值,一般采用单片机来实现。从光电编码器接口电路要求高速度、高精度和计算机接口等方 面考虑,本系统设计的旋转编码器接口应为插在计算机PCI插槽上的PCI板卡,计数电路采用高速CPLD器件EPM7128实现,采用抗干扰二倍频方法设 计,PCI接口器件采用PLX公司的PCI9052。自制旋转编码器及接口电路框图如图2所示,左边虚线框内是自制的旋转编码器电路,调整好带槽光耦01 和02之间的距离,转

6、动带齿光码盘,A、B就会产生相位差为90°的脉冲信号。3 倒立摆软件系统设计倒 立摆软件系统一般都是在Windows操作系统中采用Turbo C、Visual C+、C+Builder等可视化编程软件开发,虽然实时性比较好,但控制算法实现难度较高,开发周期长并且缺乏灵活性。笔者提出以计算、绘图和仿真 功能强大的Matlab软件作为控制算法的开发环境,用Visual C+开发MEX接口生成的动态链接库(DLL)作为Matlab与PCI数据采集卡和旋转编码器信号采集卡进行通信的中介,编制M文件实现模糊控制算 法,具有编程简单、工具箱函数调用和数据分析方便等优点。3.1 Matlab环境下

7、实现实时控制用Matlab 对系统进行实时控制有两种可选择的方法,编制M文件或利用Simulink,这两种方法也可以交互使用。另外,也可以采用Matlab与第三方软件相互调 用的方法实现实时控制。直接采用M文件编程简单易学,但运行速度较慢;使用Simulink和Real-Time Workshop进行实时控制,控制参数修改方便,运行速度快,在仿真和调试完成后,可生成C代码并移植到硬件直接使用,快速实现控制系统。Matlab 环境下这两种方法的数据交换过程如图3所示,其中,上部是编制M文件实现实时控制的数据交换过程。Matlab 只带有知名公司板卡产品的驱动程序,如果采用国内公司或者用户自行设计

8、的板卡,则需要自行编写设计驱动程序并采用Matlab访问硬件的接口程序。M文件 下没有直接访问硬件的函数,因此需要使用Matlab提供的MEX接口函数来开发硬件驱动,生成动态链接库(DLL)。如果利用Simulink模块实时 控制,则需要编制访问硬件的S-Function接口,利用此函数可以编写实现自身功能的Simulink模块。还可以采用S-Function编写 Mat-lab不带驱动的硬件板卡的驱动程序。 3.2 变量组合的模糊控制器设计单 级倒立摆是一个两输入单输出的多变量系统,控制目标是摆杆的角度和滑块的水平位移X皆为0或者在0点附近动态调整,若要控制这两个量,就必须引入其变化 率作为

9、反馈量。因此,模糊控制器的输入量为摆杆的角度、角速度、滑块的水平位移X以及水平速度V,而输出为力矩电机的控制电压U。通 过线性变换,将摆的角度的电压值映射到论域-6,6,角速度的论域和角度相同。和采用7级分割,分别为NB、NM、NS、ZE、PS、 PM、PB、用钟形隶属度函数。同理,将滑块的水平位移X映射至论域-1,1,模糊分割为3级,分别是NM、ZE、PM,使用三角形隶属度函数。水平 速度V论域为-1,1,模糊分割为2级,分别是N、P,使用三角形隶属度函数。输出的控制电压u论域为-6,6,分割成7级,分别为NB、NM、 NS、ZE、PS、PM、PB。在进行模糊推理运算时,采用Mamdani最

10、大-最小合成运算,而输出的解模糊运算则采用重心法。对 于多变量模糊控制系统,由于可能的控制规则数目是输入变量数的指数,因此,如何有效地减少多变量模糊控制系统中控制规则的数目,对理论分析和工程应用都有 着非常重要的意义。为了减少规则的数量,本文根据摆杆的角度和滑块的水平位移x分别设置模糊控制规则库,而最终的控制信号就是分别调用这两个规则库所得 到的控制信号的组合。具体地,第i条规则就是:其中,如果根据摆杆的角度和角速度来确定控制信号,那么,I1=而I2=;如果根据水平位移x和速度v确定控制信号,那么,I1=x而I2=v。具体的模糊控制规则分别如表2和表3所示,推理采用max-min合成运算,解模

11、糊则采用重心法。  在实际控制中,这两个规则库是交替使用的,从而在保证摆杆不倒的前提下,使滑块向中心位置靠拢。具体做法:每三个采样周期的前两个周期采用角度控制规则 库,第三个周期则同时采用两个规则库进行模糊推理计算,并将得到的两个控制量按下式加权计算出最终的控制量U。 其中,U和Ux分别为通过角度控制规则库和位移控制规则库推理计算得到的控制量,加权系数可根据不同要求进行调整。倒 立摆系统的控制算法分两部分:摆杆自动起摆控制和稳定在垂直小角度范围内控制,一般以摆杆偏离垂直站立角度±12°为界限,在±12°范围内采用模糊控制 算法使其稳定在垂直站立

12、状态,超出这个范围则启动自动起摆控制算法,再次使其稳定在垂直站立状态。为了提高倒立摆系统的抗干扰性能,摆杆在±12°范围内 摆动时使用的模糊规则库可进一步细分,以确定合适的控制电压。4 实验结果单 级倒立摆控制系统的采样周期一般不大于20 ms。本系统模糊控制器的采样周期为15 ms,即每隔15 ms采样一次、x和v的值,并给出控制信号U。图4和图5分别给出了前20 s内摆杆的角度电压曲线和前100 s内滑块的位移电压曲线。在倒立摆处于竖直倒立状态时加入不同的扰动信号,本控制系统表现出良好的抗干扰性能。图6和图7分别为加入幅值0.5的阶跃扰动 和幅值0.5频率为0.5 Hz的方波扰动后的摆杆角度波形图。扰动是通过将程序代码加在输出控制电压值上来实现的,输出控制电压范围为0+10 V。由图可以看出,在Matlab环境下应用组合变量模糊控制策略对倒立摆系统的实时控制取得了很好的效果。在实际运行时,Matlab环境下的模糊控制 器使倒立摆系统保持稳定时间可以长达几个小时,并且具有鲁棒性,受外界干扰时可自动调整至稳定状态。  5 结束语 本文给出了一种低成本、高可靠性和稳定性的倒立摆硬件系统的解决方案以及在Matlab环境下控制软件的实现方法。在硬件方面,与其他同类倒立摆系统相比 较,本系统在保证性能的前提下大大降低了成本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论