1 / 14
文档名称:

软件设计论文:VxWorks的航空发动机控制系统软件设计.doc

格式:doc   大小:297KB   页数:14页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件设计论文:VxWorks的航空发动机控制系统软件设计.doc

上传人:jianjian401 2017/10/29 文件大小:297 KB

下载得到文件列表

软件设计论文:VxWorks的航空发动机控制系统软件设计.doc

相关文档

文档介绍

文档介绍:软件设计论文:
基于VxWorks的航空发动机控制系统软件设计
摘要: 在深入研究发动机控制系统软件设计要求的基础上,应用VxWorks操作系统给出了航空发动机数字电子控制器的多任务环境的设计方法、设计了数字电子控制系统的应用软件。该应用软件采用C++语言设计,根据数字电子控制系统的要求及控制目标,依照高内聚、低耦合的软件设计原则,对各种任务进行了分类并模块化开发,完成了软件设计工作。该软件满足某型航空发动机的控制功能、性能及可靠性要求。
关键词: 航空发动机;数字电子控制器;VxWorks操作系统
0引言
VxWorks作为一个具有高性能、可裁减的嵌入式实时操作系统,与其他操作系统Linux、Unix等比较,具有高性能的微内核结构。这种高性能的微内核结构保证了VxWorks能够胜任航空发动机控制和飞行控制等关键的复杂的设计任务。
本文最终目的是要构建一个在VxWorks操作系统支持下适用于某型航空发动机的控制应用软件。该软件包括数据采集、控制计算、任务调度、控制输出、数据存储及余度管理等功能。
1系统概述
VxWorks操作系统概述
VxWorks是专门为实时嵌入式系统而开发的操作系统,提供了高效的实时多任务调度、中断管理,实时的系统资源以及实时的任务间通信等功能支持,并为应用于各种CPU平台提供了统一的编程接口和一致的运行特性,为程序开发提供了方便[1]。
VxWorks操作功能强大而且比较复杂。图1所示为VxWorks操作系统的基本结构图,包括了进程管理、存储管理、设备管理、文件系统管理、网络协议及系统应用等几个部分。
控制系统软件采用VxWorks的集成开发环境Tor-nadoⅡ开发,采用C++程序语言设计,TornadoⅡ开发系统配套了近两千个API接口函数,可提供完善的源代码编辑、编译链接、源代码级调试等诸多调试工具,可以充分发挥VxWorks系统的功能。

发动机控制系统的软件开发平台采用了Power-PC860芯片、64位SDRAM(32 Mb)、64 Mb User Flash存储器、8位SYSTEM Flash(存储器容量为2 Mb)、4个32位定时器、1个看门狗、2个RS422串行通信端口、1路10 M/100 M以太网端口和1个5 V/33 MHz PCI总线接口。
平台采用双通道设计,分别由3个模块组成:信号调理模块、数据处理模块和电源管理模块。信号调理模块实现系统输入输出信号的调理以及转换,包括A/D和D/A转换,频率信号和开关量的输入输出,RS422接口以及余度管理;数据处理模块实现数据处理、控制计算等;电源模块实现电源滤波、转换和监控功能。系统的结构如图2所示[2]。
2软件总体设计与功能划分

航空发动机控制系统软件包括实时多任务操作系统、底层功能软件和应用软件3大部分,系统总体结构如图3所示。
VxWorks操作系统主要负责任务调度、电子控制器的硬件接口操作及与底层功能软件的连接,负责驱动、协调、管理电子控制器的硬件资源,其功能涉及模拟量、频率量和开关量等输入信号的采集,时间与任务调度管理,各种信号输出、总线管理、I/O设备及中断控制等。
底层功能软件负责基于VxWorks操作系统API函数集,提供与硬件环境的基本接口,为顶层应用软件访问硬件驱动程序和数据通信提供支持。
数控系统应用软件是数控系统软件的核心,通过对各种类型信号的数据采集、滤波处理,控制规律、逻辑和控制算法的运算处理,获得并给出控制输出,系统还具有应急处理、故障诊断等任务。各应用软件模块将在实时多任务操作系统的调度、管理下,以不同的优先级完成各项任务。
控制系统还设有系统参数配置功能,提供应用软件运行时在线参数配置更新,负责端口定义、控制参数调整与调度、数采通道定义、数据存储格式,用户权限设定等参数配置,实现对计算机操作系统和硬件的访问和控制。

软件系统的功能结构设计如图4所示。
数控系统软件从功能角度划分为系统模块、发动机控制运算模块和辅助模块3个主要部分。
3关键技术

嵌入式实时多任务软件的设计包括任务的划分及任务优先级的设置、任务间通信机制的选择和中断处理程序的编写等关键技术。
任务的合理划分和优先级的合理设置,对系统的功能和性能至关重要。合理的任务划分,不但会增强系统的稳定性和健壮性,而且可以简化软件设计的复杂性,为任务的及时执行奠定基础。,即I/O依赖性、时间关键性、周期性执行功能等。
,控制软件的任务可划分为数采任务、发动机控制任务、辅助单元任务等3大