新闻中心

EEPW首页>嵌入式系统>设计应用> 基于MATLAB的控制系统实时仿真平台设计

基于MATLAB的控制系统实时仿真平台设计

——
作者:张晓东 王海泉 王东云 时间:2013-06-26 来源:电子产品世界 收藏

控制程序的构建

本文引用地址://m.amcfsurvey.com/article/146822.htm

  利用上文封装的D/A模块和提供的板A/D驱动模块,再加上针对不同对象设计并完成全数字仿真验证的控制算法模块,可进行控制程序模块的构建。

  其中DSP的AD转换模块包括软件启动方式、EVAEVB以及外部引脚方式等多种启动方式,而利用事件管理器(EV)中的通用定时器GP启动ADC无疑是最直接的,借助通用定时器,利用其下溢、周期匹配和比较匹配等多种模式可产生触发ADC信号,只需在提供的C281x PWM模块的ADC Start Event和Waveform period中做出相应设置即可,如图4所示。需要注意的是,DSP的AD模块完成输入信号的模数转换之后,会将结果存放于DSP处理器的结果寄存器中[6]。这就需要由CPU定时读取结果寄存器,此间隔时间可在如图5所示的ADC模块参数设置的Sample time一项中予以指定。

  工控机的自动代码生成实现

  xPC目标

  xPC Target是MathWorks公司提供和发行的一个基于RTW体系框架的附加产品,可将Intel 80x86/Pentium计算机或PC兼容机转变为一个实时系统,该目标系统与/Simulnk无缝集成,支持大多数Simulink模块的实时代码生成,同样提供了包括研华在内的众多I/O板卡的驱动模块,在该目标环境下可对目标机运行程序进行在线调参,实现数据实时显示和记录,是用于产品原型开发、测试和配置实时系统的PC机解决途径[7]

  针对xPC目标的工控机代码生成

  本系统中的被控对象仿真机使用研华工控机,并通过ISA总线的、包含有16路A/D通道和2路D/A通道的研华PCL-812PG数据采集卡与DSP控制器的A/D和D/A连接实现数据传输。

  (1)要实现工控机的自动代码生成,首先应在工控机中启动xPC Target目标环境:MALTAB软件为xPC目标环境提供了包括需要外加启动盘的BootfloppyDosloader方式、CDBoot方式和通过网络连接启动的NetworkBoot方式等在内的多种启动方式。本系统以U盘为载体、采用Dosloader方式启动目标环境,这就要先利用USBoot软件将U盘制作为DOS启动盘,再借助xPC目标浏览器(xPC Target Explorer)配置目标机相关参数(启动方式、通信模式等)并将目标环境设置的相关文件拷贝到做好的DOS启动盘上从而完成xPC Target目标启动盘的制作。

  (2)工控机应用程序开发

  MATLAB为xPC目标系统提供了包括本系统所使用的研华PCL-812PG数据采集卡在内的A/D、D/A、D/I、D/O、RS-232、ARINC429等模块的Simulink驱动程序模块。利用提供的A/D与D/A驱动模块,结合被控对象模型即可构建如图6的被控对象仿真机应用程序模块并进行代码的生成和下载。同时,还可以通过xPC目标浏览器与目标机进行连接,对仿真时的数据进行记录和导出。

实验验证

  为了对所构建的硬件在回路仿真系统性能进行验证,本文以直流电机为对象,在利用系统辨识方法建立如式1的速度离散化模型(以电压为输入、以测速发电机转速所对应的实测电压为输出)的基础上,确定其离散PID控制器参数kp/ki/kd分别为0.5/4/0.01,并在PC机下进行了以幅值为2的阶跃信号为输入的MATLAB全数字仿真。从如图7所示的仿真结果可以看出,闭环系统调节时间大约为1秒,没有稳态误差,而且当系统在第3秒加入一个幅值为0.1的干扰时,系统在控制器的作用下能够在0.5秒内克服干扰的影响,证实了该控制算法的性能。

  为了进一步验证控制系统性能,将构建的对象仿真机和控制器的应用程序借助RTW实现自动代码生成和下载,并进行期望值为2V时的硬件在回路仿真,仿真结果如图8所示。显然,与全数字仿真结果相比,硬件在回路仿真的输出仍能较好的跟踪输入信号,上升过程较平稳,调节时间1.5秒,比全数字仿真略长,稳态值存在最大幅值2%的轻微波动。总体看来,控制效果较全数字仿真略有下降,而起因是由于硬件在回路仿真系统中,信号在DSP和工控机之间进行A/D和D/A转换过程的精度和能量损失。

结论

  本文在解决了S函数封装、应用程序模块构建等问题的基础上,以DSP与工控机为核心、构建了能实现任何复杂对象控制器仿真验证的、基于MATLAB/RTW和自动代码生成技术的硬件在回路仿真系统。针对电机对象模型和控制算法的硬件在回路仿真结果证实了由于A/D、D/A转换的精度损失,相比于全数字仿真该平台性能有轻微下降,但硬件平台的性能仍然是可靠有效的。

  参考文献:
  [1] 齐振恒,孙中杰,李涛. RTW嵌入式代码自动生成机制与代码结构分析[J].计算机测量与控制,2010,18,(3):639-642
  [2] 侯跃恩.基于DSP的伺服控制系统设计与实现[D].武汉理工大学,2009
  [3] 李根,唐臻宇,耿海翔,金佛荣.基于MATLAB/RTW的控制系统一体化新型设计方法[J].中国测试,2010,36,(1):75-78
  [4] MATLAB User's Guide Version 7.5[R].The Math Works Inc,2007
  [5] 程雪飞,王强,彭继慎.基于S函数的专家PID控制器的实现[J].仪器仪表用户,2006,13(2):86-87
  [6] 苏奎峰,吕强,常天庆,张永秀. TMS320X281X DSP原理及C程序开发[M].北京航空航天大学出版社,2008
  [7] 进兵.基于xPC Target的无人机飞行控制软件快速原型设计[D].南京航空航天大学,2009

pid控制相关文章:pid控制原理


c++相关文章:c++教程


pid控制器相关文章:pid控制器原理


汽车防盗机相关文章:汽车防盗机原理

上一页 1 2 3 4 下一页

评论


相关推荐

技术专区

关闭