用户中心

资讯 > 嵌入式系统

实时仿真与嵌入式系统

2007.03.09阅读 2719

       MatlabVxWorks是当今工业流行的仿真软件和嵌入式操作系统,二者之间的结合极大的方便了程序在嵌入式平台上的仿真。本文介绍了MatlabRTW面向VxWorks实时目标的实现的方法和具体流程。

 

 

1、前言

 

对于程序开发和许多交互式应用来说CONTROL ENGINEERING China版权所有UNIXWindows可以算是优秀的操作系统。然而,它们都不适于实时应用。Tornado是美国WindRiver公司为用户提供的嵌入式开发平台www.cechina.cnVxWorksTornado的运行期组件,也是嵌入式行业应用最为广泛的实时操作系统。VxWorks的实时性做的非常好,其系统本身的开销很小,任务调度、任务间通信和中断处理等系统公用程序精炼而高效控制工程网版权所有,他们造成的延迟很短。VxWorks提供的多任务机制对任务的控制采用了优先级抢占调度和轮转调度机制,也充分保证了可靠的实时性,使同样的硬件配置能够满足更强的实时性要求,为应用的开发留下更大的余地。

 

RTWReal-Time Workshop)是Ma

tlab图形建模和仿真环境Simulink的一个重要的补充功能模块,它是一个基于Simulink的代码自动生出环境,它能直接从Simulink的模型中产生优化的、可移植的和个性化的代码,并根据目标配置自动生成多种环境下的程序。

 

RTW提供了几个快速原型化的目标,其中包括提供了从Simulink模型到VxWorks应用代码的自动转换接口Tornado Real-Time Target,可以让用户的模型在VxWorks上执行。

 

2Tornado(VxWorks)实时目标运行时结构

 

开发VxWorks实时应用系统的典型配置,如图1所示:

 

实时仿真与嵌入式系统如图

 

1 VxWorks实时应用开发的经典配置

 

实时代码在主机上,用Tornado提供的交叉编译器编译。通过RTWTornado实时目标生成目标文件(vxmodel.lo),可通过Tornado集成开发环境的WindSh下载到VxWorks目标机。实时程序在VxWorks目标机上执行,通过IO设备和外部硬件交换数据www.cechina.cn,并保持和主机之间的相互通信。

 

实时程序运行在VxWorks目标机上,而Simulink运行在主机上。Simulink需要VxWorks目标机上运行的任务来处理通信过程。TornadoVxWorksReal-Time Tartget生成如下VxWorks任务:一个用于和Simulink通信,其他用于完成模型功能[2]

 

3Tornado(VxWorks)实时目标的实现过程

 

3.1 实验环境

 

我的实验环境如下表:

 实时仿真与嵌入式系统如图

1 实验环境

 

 

3.2 实时目标的具体实现步骤

 

为了通过Real-Time Workshop实现和运行一个基于VxWorks的实时程序,用户可按如下的步骤进行:

 

(1) Matlab/Simulink下建立一个模型,这里以一个经典的PID模型为例:

 

 

实时仿真与嵌入式系统如图

2 实验所采用的经典PID模型

 

模型采用外部工作模式(External Mode),并设置Simulink Parameters对话框中的参数:

 

实时仿真与嵌入式系统如图 

 

3 仿真参数Solver设置

 

 实时仿真与嵌入式系统如图

4 仿真参数Real-Time Workshop设置

 实时仿真与嵌入式系统如图

 

5 仿真参数code generation options设置

 

 

(2) 配置模板联编连文件tornado.tmf,该文件位于%matlabroot%/rtw/c/tornado目录下控制工程网版权所有,要对这个文件作如下修改:

 

#------------ Macros read by make_rtw -------------

MAKECMD = C:Tornado2.2hostx86-win32 inmake

HOST = PC

#-------------Tool Locations-----------------------------

WIND_BASE= C:Tornado2.2

WIND_REGISTRY=$(COMPUTERNAME)

WIND_HOST_TYPE=x86-win32

#------------Vxw

版权声明:版权归控制工程网所有,转载请注明出处!

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688