MATLAB/Simulink下实现实时一些方法总结
2016-05-26徐剑琴李克讷梁奇峰广西科技大学工程训练中心广西科技大学电气与信息工程学院广西柳州545006
徐剑琴,李克讷,梁奇峰(. 广西科技大学工程训练中心; . 广西科技大学电气与信息工程学院,广西 柳州 545006)
MATLAB/Simulink下实现实时一些方法总结
徐剑琴1,李克讷2,梁奇峰1
(1. 广西科技大学工程训练中心; 2. 广西科技大学电气与信息工程学院,广西 柳州 545006)
摘 要:总结了使用MATLAB/Simulink进行实时仿真时实现实时的几种方法,包括使用Real-time Workshop和编写S函数的方法,同时通过实验检验了C语言S函数实时模块的功能。经仿真测试表明,在对时间精度要求不是很高的过程进行实时仿真和分析时,可以得到较好的效果。
关键词:实时;MATLAB/Simulink;Real-time Workshop;S函数
1 概述
仿真技术由于能省去了实物系统实现过程中的繁琐步骤,对问题的解决有着良好的针对性,因此给科研和试验提供了很大的便利[1-3]。但另一方面,仿真由于对模型的依赖性,其结果并很难完全反映实际情况。因此,为了得到更接近实际情况的结果,可采用将数学模型与物理模型或实物相结合半实物仿真[1,2]。半实物仿真系统既包含虚拟对象,又包含实物对象,因此更真实地反映实际系统的动、静态特性和非线性因素。由于有实物的接入,半实物仿真对实时性有着较高的要求。
Matlab/Smulink在控制理论研究中是一个很优秀的仿真软件,可方便地对控制算法或控制对象进行建模和仿真实验[2-8]。在仿真情况下,仿真运行的时间取决于仿真机的运行速度和模型的复杂程度等因素,因此Matlab/Smulink模型运行的时间可能远小于实际过程的运行时间。但在半实物仿真中,实物对象的实际执行时间与模型仿真时间可能不一致,因此有必要使Simulink虚拟模型与外部连接的硬件运行同步,实现实时仿真,以获得接近实际情况的实验结果。……
