基于xPC和CVI的实时仿真系统设计实现
2012-01-18陈怀民赵会超
陈怀民,赵会超
(西北工业大学 无人机特种技术重点实验室,陕西 西安 710065)
如何建立界面友好、易于操作且实时性高的实时控制系统是一个日益受到广泛关注、值得深入探讨的问题。利用MATLAB的xPC平台,采用“双机模式”(宿主机—目标机)开发实时控制系统是一种可选的方式。其中,宿主机执行用户管理程序,提供用户界面保证了易用性。目标机执行实时应用程序,保证应用程序执行的实时性。但该方法无法脱离MATLAB环境形成独立的宿主机程序,且其用户界面单一难以满足用户的多样性需求,影响了在工程实践中的推广应用。
文中分析了xPC Target的应用程序接口(Application Programming Interface,API)和 LabWindows/CVI的外部程序接口。通过在LabWindows/CVI中加载xPC的动态链接库实现了对xPC的API的调用。基于底层API,在LabWindows/CVI环境下建立了可以在Windows平台上独立运行的应用程序作为xPC平台宿主机的人机接口。该方法不仅充分利用了xPC平台实时性高的优点,而且形成了不依赖MATLAB的独立的宿主机程序。同时,采用LabWindows/CVI提供的专业虚拟仪器控件编制宿主机程序,大大提供了程序设计效率,应用软件界面美观友好,操作简单灵活。
1 开发环境简介
xPCTarget是美国MathWorks公司提供和发行的一个基于RTW体系框架的附加产品,可将Intel80x86/Pentium计算机或PC兼容机转变为一个实时系统,而且支持多种类型的I/O设备板(包括ISA和PCI两种类型)[1]。xPCTarget采用宿主机-目标机的双机模式,宿主机用于运行控制台程序,目标机用于执行RTW生成的实时代码。xPCTarget提供了一个高度减缩的实时内核,运行在目标机上,该实时内核采用32位保护模式。……
