APP下载

对接综合试验台控制系统软件快速原型开发技术

2011-09-18肖余之赖安学

上海航天 2011年6期
关键词:试验台原型文档

徐 峰,肖余之,萨 莉,赖安学

(上海宇航系统工程研究所,上海 201108)

0 引言

对接机构对接综合试验台(以下称综合台)是对接机构研制中重要的试验设备[1-3]。综合台为典型的半物理地面仿真试验设备,主要由测量、包含数学模型的控制,以及执行(运动模拟器)三部分构成,试验对象为真实的对接机构。主要用于进行对接过程试验和对接性能测试。其控制系统的软件开发涉及计算机、力学、控制和液压等学科,因专业涉及面宽且性能指标苛刻,系统方案确定难度大。如采用传统瀑布生命周期进行开发,一旦出现问题时返工的影响较大。为此,在综合台开发过程中采用了基于快速原型的设计方法,用演化式和增量式原型开发控制系统软件。为此,本文对基于快速原型设计的对接机构综合台控制系统软件开发进行了研究。

1 原型生命周期

传统软件工程中主要使用瀑布式顺序开发方法,包括需求分析和定义、系统设计、实现和单元测试、系统集成测试和运行维护等阶段。瀑布模型体现了对软件过程的期望:严格控制、确保质量。但常因为软件过程难以预测,瀑布模型无法实现其要求。这一方法的优点是全面、严谨,但最大的缺陷是过程一旦启动就难以适应变化。

瀑布式顺序开发方法基于一个重要的假设前提是用户能提出明确的需求。然而,在开发初期,用户对系统一般仅有模糊的认知,而软件开发者对所要解决的应用问题认识更为模糊。另外,随着开发的深入,用户可能会产生新的要求,或因环境变化,要求系统也随之变化。因此,几乎不可能获得完整准确的需求。快速原型法(如图1所示)是近年来提出的一种以计算机为基础的系统开发方法。它先构造一功能简单的原型系统,再通过对原型系统逐步求精,不断扩充完善获得最终的软件系统。原型是待构筑的实际系统的缩小比例模型,但保留了实际系统的多数性能。该模型可在运行中被检查、测试、修改,直至其功能、性能达到用户需求,故很快即可转换成原型的目标系统。

图1 原型开发流程Fig.1 Flowchart of prototypedesign

原型法的主要优点是支持用户的需求,使用户在系统生存周期的设计阶段能起积极作用;减少系统开发的风险,特别是在大型项目的开发中对项目需求分析难以一次完成时,应用原型法的效果更明显。

根据原型与最终产品间的关系,原型开发可分为:抛弃式,验证和澄清系统的需求描述,重新构造系统;演化式,逐步改进和细化原型,将原型进化为最终系统;增量式,在建立软件总体设计基础上,采用增量开发方法,使原型成为最终系统。

2 控制系统软件的快速原型开发

针对综合台控制系统软件的快速原型开发包括多个方面。对系统方案确立,采用性能原型快速验证系统指标的可行性并确定系统方案,而软件开发则采用了抛弃式、演化式和增量式原型开发方法。

2.1 系统方案

综合台如图2所示。研制中提出了控制周期1 ms的要求。分析综合台的任务,其用于对接机构的捕获、缓冲和拉近试验、性能测试,且运动部件为六自由度的运动模拟器,故控制系统包含对接初始条件规划、捕获缓冲拉近的动力学解算、对接机构和Stewart平台的正解、运动模拟器的控制律及I/O采集等算法,整个控制系统方案确定的难度较大。

图2 综合台系统组成Fig.2 Composition of docking general test stand

为评估控制周期1 ms的可行性并确定方案,先建立了2个Simulink模型:一是包括对接初始条件规划、动力学解算和力传感器I/O采集的模型,另一是Stewart平台正解计算模型。将这两个模型作为性能原型,用RTLAB软件进行测试,1个周期的解算时间分别为约0.6,0.4 ms,由此确认了系统控制周期1 ms的要求。

根据性能原型的测试结果,考虑系统的余量和扩展需求确定了控制系统的RTLAB多节点分布方案如图3所示。

图3 控制系统组成Fig.3 Sketch of control system

2.2 中央控制台软件设计

中央控制台软件是面向用户的应用软件,其主要作用是与用户交互并控制试验的运行。由于综合台任务复杂,涉及分系统有6个,且用户和开发者对问题均认识不清,因此采用快速原型法设计,其流程如图4所示。

图4 中央台软件原型设计流程Fig.4 Flowchart of software prototypedesign for center banch

在任务初期,由于用户需求不明确,特别是界面,采用快速建立需求规格的原型(RSP)法,用能快速生成原型的第四代语言(4GL)Labview软件建立用户界面原型,包括菜单格式、输出格式和操作命令的使用等,通过演示帮助用户明确其模糊的需求并促进用户与开发人员的相互理解。该阶段建立的界面原型均为可抛弃。由于综合台涉及的分系统多,接口复杂,此阶段的工作只能明确大致的功能和性能需求,并不能得出一份完整的需求规格说明,后续的工作仍不适用瀑布模型开发方式。

在用户的主要需求明确后,以第一阶段最后一个模型为基础,开始渐近式模型(RCP)开发。在该过程中,系统是逐步形成并完善,每个版本均经过测试。

2.3 模型计算机软件开发

模型计算机软件是整个综合台的核心软件,其主要功能是根据中央控制台的试验控制实时计算生成对运动模拟器的控制指令,其计算机软件配置项(CSCI)功能结构如图5所示。

分析模型计算机软件的开发任务,发现其需求相对明确,模块划分清晰,但各块的算法复杂,涉及较多的力学和对接机构各知识,且安全性和性能指标要求很高,每个模块都需进行充分的测试和验证。根据这些特点,采用增量式原型进行开发。

以性能的原型为出发点进行增量开发,其中每一增量包含迭代式开发,开发流程如图6所示。

图5 模型计算机CSCI功能结构Fig.5 CSCI function structureof model computer

图6 模型计算机软件增量开发过程Fig.6 Development procedure of software increase of model computer

3 关键技术

3.1 快速原型技术

原型开发需要相应的技术和工具。用常规编程方法开发原型时,即使是最易实现的界面原型也需要相当长的时间,若需要仿真模拟的功能和性能原型开发,则难度极大且代价高昂。快速原型法在软件生产中引进其他工业在生产新品前先试制样品的方法,因此开发软件原型须满足条件:原型须可执行;原型开发周期应短,开发成本应低;原型应易于评价;原型应易于修改。

在实际开发中,采用了基于工具的设计(TBD)方法;选用RTLAB作为软件环境,可直接将Simulink建立的动态系统模型用于实时仿真和控制,并能通过分布式计算方式对系统的运算能力进行分解和扩展;应用第四代语言的Labview和Matlab/Simulink进行编程。

3.2 软件工程化管理

对瀑布模型开发,已建立整套完善的管理体系。但快速原型的开发对软件过程管理提出了新要求,要点如下。

3.2.1 接口设计

快速原型法由于其快速的特点,原型常发生变化,这必然导致接口也随之而变,因此开发过程中如不采取相应措施就易发生接口混乱,导致集成调试困难。综合台开发过程中采取了如下措施。

a)信息隐藏原则:软件模块的设计尽可能使实现细节对外部不可见,接口尽可能简单;模块接口一旦确定,尽量不修改,修改时只增不减。

b)接口命名:因Labview和Simulink均采用数据流编程,与普通语言写代码变量命名是必须的不同,为防止接口混乱,制定了综合试验台数据命名规则,规定了各分系统代号、常用物理量命名和变量命名法则,要点是实现物理意义清晰。

3.2.2 配置管理

采用快速原型方法的特点是,当设计出现问题时可直接回溯至前一原型重新设计。此种回溯的前提条件是有效控制软件版本,否则会因回溯到一错误版本而导致原型测试无法通过。

原型开发的过程,特别是演化和增量式的原型方法,与软件的版本升级类似。可借鉴软件配置管理方法,指定人员进行管理,将测试的原型备份在一台计算机中,回溯时只能使用该计算机上的版本。

3.2.3 文档管理

快速原型方法易出现的问题是:与瀑布模型以文档驱动相比,无论采用何种原型开发方式,开发人员更侧重原型的设计,常忽略文档管理,原型建立过程中的许多工作会被浪费。

在综合台设计过程中,对文档管理借鉴了瀑布模型做法,每个软件要求给出任务书、需求规格说明、接口设计和详细设计。考虑原型开发的特点,每份文档在历经数次原型开发迭代相对完整后提交评审,软件开发的推进不以文档的完成来驱动,同时要求在设计过程中修改相关文档。

4 结束语

本文介绍了快速原型方法在对接综合试验台控制系统软件设计中的应用。在综合台研制中,控制系统率先通过了出厂验收。实践表明,快速原型设计可明显提高控制系统设计的效率,并保证设计的控制系统具有高可靠性。

[1]王晓东,唐 硕,周须峰.飞行器控制系统的快速原型设计[J].飞行力学,2006,24(1):1-4.

[2]萨 莉,赖安学,邵济民.对接综合试验台轨迹规划算法研究[J].上海航天,2004,23(6):28-32.

[3]徐 峰.对接机构综合试验台半物理仿真原理[J].载人航天,2007(1):24-28.

猜你喜欢

试验台原型文档
血管吻合试验台的研制及试用
斯太尔驱动桥总成试验台设计综述
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
一种潜水泵试验台的测控系统设计与实现
包裹的一切
《哈姆雷特》的《圣经》叙事原型考证
Word文档 高效分合有高招
静态扭矩试验台测控系统研究
论《西藏隐秘岁月》的原型复现