第29卷第6期 文章编号:1006—9348(2012)06—0059—04 计算机仿真 2012年6月 卫星编队飞行仿真中STK—RTI中间件的研究 范增,冯永新,赵璇,黄迎春 (沈阳理工大学通信与网络工程中心,辽宁沈阳110159) 摘要:卫星在编队飞行任务分析与可视化动态场景仿真,能使多颗卫星保持相对协同工作,但与外界交互集成能力较差。为 了能够成为HLA(高层体系结构)的联邦成员,设计并实现了连接STK与RTI的中间件。通过相关分析设计了STK—RTI中 间件的功能结构,采用服务转换机制建立了STK/Connect模块功能函数和RTI标准服务之间的映射关系,实现了STK和其 它联邦成员之间的交互,并在编队飞行仿真中对中间件的可行性进行了验证,拓展了STk的使用范围。 关键词:编队飞行;卫星工具包;公布/订购;中间件 中图分类号:TP391.9 文献标识码:B Research on STK—RTI Middleware in Simulation of Satellite Formation Flying FAN Zeng,FENG Yong—xin,ZHAO Xuan,HUANG Ying—chun (Communication and Network Institute of Shenyang LiGong University,Liaoning Shenyang 1 10159,China) ABSTRACT:In the simul ̄ion of satellite formation lfying,Satellite Tool Kit(STK)is powerful in space—analysis and visualization of dynamic scene simulation.There is weakness in the interaction with others.Aiming at the reali— zation of joining STK into the federate,the middleware linking STK and RTI has been designed and implemented.A design involving the construction of the middleware and relationship between the parts was expounded.Emphasis was placed on the implementation of he mappitng relationship between the API function of STK/Connect and the standard service.The middleware has been validated by the simulation of satellite formation flying.The scope of using the STK has been expanded. KEYWORDS:Satellite formation flying;Satellite tool kit;Publish/Subscribe;Middleware 分析结果 J。分布式仿真的高层体系结构HLA能够尽量涵 1 引言 近年来,随着卫星应用需求的日益发展,小卫星编队飞 行成为人们关注的重点…。编队飞行的多颗小卫星之间能 盖建模与仿真领域涉及的各种不同类型的仿真系统,并利用 它们之间的互操作和重用,来满足复杂大系统仿真的需 要 J。HLA采取面向对象的开放的体系结构,允许多个专 业的技术人员协同完成仿真系统开发,并与其它部门或应用 领域的仿真应用互连,实现大规模复杂系统仿真。 够保持某种相对运动状态进行协同工作,通过编队获得的巨 大等效口径或测量基线使其在电子侦察、立体成像等方面与 单颗卫星相比有了很大的优势。另外,低成本、低风险、高性 在小卫星编队飞行仿真方面,以美国空军研究实验室建 立的仿真环境最具代表性,它以Techsat一21为背景,能够对 能、高机动性等优点也进一步促使其在空问任务中越来越受 到人们的重视。 为了降低研发的代价和新技术应用的风险,人们在航空 八颗以下卫星编队飞行进行仿真 J。在国内,有些学者利用 STK等仿真工具进行过编队飞行方面的视景仿真研究 ¨ , 但他们只是在单机环境下对编队飞行进行了视景仿真;也有 的基于HLA分布式仿真技术构建了仿真系统 J,但可视化 方面却存在明显不足。本文以基于HLA的分布式仿真技术 为基础,通过对STK/Connect模块的深入研究,设计和实现 航天等大规模复杂系统的开发过程中普遍采用仿真技术来 进行先期的研究。STK是一款及其先进的系统分析软件,它 可用于分析复杂的航天、航空、陆地及海洋任务,可提供逼真 的二维、三维可视化动态场景以及精确的图表、报告等多种 基金项耳:国家自然科学基金(6080203) 收稿日期:2011—06—13修回日期:2011一O8一O1 了连接STK和HLA运行支撑框架RTI的中间件,将专业的 航天视景仿真软件STK引入到分布式仿真系统中,拓展了 一59— STK的使用范围,也丰富了基于HLA的分布式仿真系统的 仿真成员。 的分布式仿真中,实现与其他成员的交互。 2.2 STK—RTI中间件 从本质上讲STK—RTI中间件是一个HLA仿真成员,因 2分布式编队飞行视景仿真 2.1卫星编队飞行视景 编队队形一~ 此它将具有一般成员宏观上的一切特征。但由于中问件还 负责与STK进行交互,这就决定了它必须要有自己独特的结 构与特性,以更好的建立起STK与联邦成员之间的互操作 卫星编队飞行是指一组卫星在各自轨道上运行的同时, 相互间保持一定的相位和距离,编成一定的编队模型 ,它 一般应用于微小卫星。编队小卫星在功能上相当于一颗大 卫星。 卫星编队一般都有一颗参考星,这颗参考星可以实际存 在,也可以是不存在的虚拟星。依据Hill方程可由一定的初 始条件求出各个编队卫星的轨道六要素 ,求编队卫星轨 道六要素的一般过程如图1所示。 参考星轨道 参考星地心惯 六要素 性坐标系位 置、速度 编队 卫星 地心 编队 初 惯性 卫星 始 编队 化 坐标 轨道 星相 系位 六要 Z 目 对位 置和 素 置和 速度 编队规模和 方 程 速度 初始相位 图1编队卫星轨道六要素求解过程 使用STK对卫星编队飞行进行视景仿真时,可以直接利 用STK中已有的重力场模型,大气阻力模型等,以及其计算 功能,二、三维显示功能,和全面的数据报告功能等对编队飞 行的任务进行分析验证。 通过初始的编队队形选择和参考主星轨道六要素的给 定,按图1所示过程,依据相关动力学方程得到编队飞行中 编队卫星的相对位置速度状态,并转化为地心惯性坐标系中 的轨道六要素。将其作为目标值,代人STK中相关模型 叫 中即可实现基于STK的卫星编队飞行仿真。 . 虽然单独基于STK的卫星编队飞行仿真在可视化、结果 分析方面优势明显,但要实现分布交互式仿真,则需要在其 基础上按照HLA规则进行二次开发,使其符合HIA/RTI提 供的服务标准。 联邦运行支撑环境RTI是按照HLA的接口规范开发的 服务程序,是HLA接口规范的具体实现 ,主要由全局执 行进程RtiExec、联邦执行进程FedExec、LibRTI库组成。它 提供了仿真运行管理功能,提供了底层通信传输服务,屏蔽 了网络通信程序实现的复杂性,是仿真功能与仿真运行管 理、底层通信传输三者分离的基础,它使仿真系统具有较好 的扩充性,使仿真系统中各个组成部分实现“即插即用”成为 可能㈦~l14_。 为此,本文设计了一个连接STK和RTI的中间件,通过 本中间件,该视景将会作为一个仿真成员加入到基于HLA 一60一 机制。 图2 STK—TRI中间件功能结构 STK—RTI中间件在实现上采用代理成员模式,它利用 STK/Connect函数使STK—RTI中间件与STK建立连接与通 信,采用HLA/RTI提供的标准服务实现STK—RTI中间件与 HLA其它联邦成员的交互,完成联邦运行的控制及与其它联 邦成员的数据交互。采用服务转换机制建立STK/Connect 模块功能函数和RTI标准服务之间的映射关系。将STK数 据结构转换为符合HIA数据标准的对象类/属性和交互类/ 参数以及复合数据类型,并进行必要的登记。 3 STK—RTI中间件的设计与实现 3.1 STK—RTI中间件内部单元 STK—RTI中间件核心部分由连接获取单元、配置单元、 仿真交互单元、数据显示单元、对外接口命令封单元块五个 部分组成,如图3所示。这五个单元保证了STK—RTI中间 件基本功能的实现,能够将STK与HLA/RTI连接,实现将 STK改造成为联邦成员加入联邦运行的功能。 上述各单元中具体描述如下: 1)连接获取单元使得STK—RTI中间件与STK连接并 且获取STK中的当前编队飞行场景相关信息,这些信息在其 余的模块中是数据基础。 2)配置单元起到一个初始化的作用,此处可以设置端 口信息,仿真时间信息,以及编队队形信息等。 3)仿真交互单元建立STK/Connect模块功能函数和 RTI标准服务之间的映射关系,创建本次仿真中STK改造成 的联邦成员的仿真进程,在仿真进程中,依据仿真时问的推 图3 STK—RTI中间件单元结构 进实时公布STK场景中对象以及对象实例的属性,实时订购 其他成员公布的场景对象类STK实现与其它HLA联邦成员 的仿真交互。 4)STK接口命令封装单元将STK/Connec、t库函数中的 API封装成为动态连接库的形式,以便其它模块与STK进行 交互,这是所有单元得以运行的基础。 5)信息显示单元在代理成员界面上显示仿真前、仿真 中以及仿真后所有的数据各种形式的显示,在STK完全后台 运行的情况下,用户通过代理成员能够直观的观察编队飞行 仿真运行状况。 3.2 STK—RTI中间件的实现 使用该中间件进行卫星编队飞行仿真,需首先在中间件 中配置编队场景的端口、仿真起止时间、编队队形、卫星要素 等信息并通过配置单元将这些配置信息发送给编队信息显 示单元和STK,STK返回当前的场景信息给编队场景信息获 取单元。配置就绪后等待仿真开始。 开始仿真后,中间件中主要有两条信息流,一条是命令 交互的信息流程,另一条是对象实例及其属性的公布/订购 信息流程。 3.2.1命令交互信息流 仿真交互单元创建本次仿真进程,在仿真进程中,仿真 交互单元负责将RTI的联邦管理服务、时间管理服务转换为 STIC/Connect模块的场景、动画控制服务;将RTI的对象管 理、数据分发管理服务转换为STK/Connect模块的卫星的添 加、删除以及场景参数的设置与查询等;编队场景信息获取 单元负责将STK数据结构转换为符合HLA数据标准的对象 类/属性和交互类/参数以及复合数据类型。仿真交互单元 首先对接收到的交互命令进行相关处理后转发给STK/Con— nect,STK接收成功后会返回一个命令返回值给编队场景信 息获取单元,在编队场景信息获取单元将应答结果解析、转 换后发送给仿真交互单元,最后通过RTI的对象管理、数据 分发管理服务发送给联邦的其它相关成员,以此实现STK与 其它HLA联邦成员的仿真交互。 3.2.2公布/订购信息流 对于编队场景中可公布/订购的对象类,在仿真运行中, 图4 STK—RTI中间件内部信息流 STK—RTI中间件将公布/订购这些对象类的对象实例及相 关属性。在每一个仿真步长中,仿真交互单元都需向STK发 出命令获取当前时刻该对象实例的属性值。这时要用到 STK/Connect模块一个重要函数GetReport(),它可获取STK 生成的各种报告,并返回其中的数据。 编队场景信息获取单元在对返回的数据进行必要地分 析、筛选、转换等操作后将其转发给编队信息显示单元和仿 真交互单元,仿真交互单元将其对外公布,然后向联邦提出 时间推进请求,该请求被联邦批准后与其它成员一起进入下 一个仿真步长。仿真交互单元在中间件内部建立了这样一 种机制:它能够根据STK中编队飞行仿真需要在其内部处理 交互,屏蔽了与RTI的交互过程以及与STK的命令交互。 4仿真实例 为了验证该中间件在卫星编队飞行仿真中的可行性,本 文以三星空间圆编队为实例基于该中间件进行仿真。给定 参考星的初始参数为:轨道长半轴7152 km,偏心率 0.0006344,轨道倾角86.4。,升交点赤经0。,近地点幅角 32.7。,真近点角为0。。轨道初始历元时刻为世界标准时间: 1 Dec 2010 12:O0:O0.O0,仿真时间长度为1天。 编队队形选取圆编队,编队绕飞半径取lkm,初始相位 分别为0。、120。、240。。可得到如表1所示编队卫星的初始 轨道要素。 在STK—RTI中间件连接获取单元建立与STK的连接 后,可通过配置单元按上述轨道参数配置仿真初始状态,配 置完成后加入联邦中,等待仿真开始。 在仿真结果中,图5为STK中圆编队飞行三维视景,图 6为STK—RTI中间件信息显示单元显示结果。在每个仿真 一61— 步长中,STK—RTI中间件都通过向STK发出命令获取当前 时刻场景中相关的属性值,并对外公布。同时,编队信息显 示单元将当前的仿真时间、编队卫星当前轨道六要素、当前 位置、速度信息直观的显示出来,并以二维图形方式显示当 前编队的队形。 表1 圆编队卫星轨道参数 图5 STK中圆编队飞行视景截图 图6中间件相关信息显示 通过和STK生成的报告对比,本中间件取得的数据准确 的反映了视景中编队卫星的运行状况,而将它们按照HLA 规则时外公布以及与其他成员的交互,则使该中间件以代理 成员的身份加人到了分布式仿真系统中,降低了仿真成员问 的耦合性,扩展了STK的使用范围。 5结论 作为航天领域专业的分析工具软件,STK强大的计算功 一62一 能、逼真的图形显示和可靠的数据报告给卫星编队飞行仿真 带来极大的便利,HLA仿真体系结构是当今分布式仿真技术 发展的潮流,它的高效率、低功耗特性很好的符合了大规模 复杂系统仿真的要求。本文通过设计STK—RTI中间件将二 者结合到了一起,拓宽了二者的使用范围,取得了很好的 效果。 参考文献: [1] 刘明.小卫星编队色行相对运动与队形保持控制研究[D].上 海:上海交通大学,2007. [2] 吴霞,郧建华.基于STK的编队飞行队形保持控制及仿真 [J].计算机仿真,2007,24(3):66~68. [3] 章德宾,马才学,胡斌.基于HLA/RTI的分布式组织活动建模 研究[J].系统仿真学报,2008,20(2):542—545. f4 1 P Zetocha.Satellite Cluster Command And Control f C]. 2000 IEEE Aerospace Conference Proceedings,Big Sky,MT,USA,1 8 —2.2000—7:49—54. [5]冯永新,武金花.基于STK的小卫星编队飞行仿真[J].火力 与指挥控制,2011,36(3):67—7O. [6] 刘琛.基于HLA的小卫星编队分布式仿真研究[D].中科院 研究生院,2009. [7] 苏晏,黎康.卫星编队飞行相对轨道动力学模型的比较及选用 [J].空间控制技术与应用,2010,36(4):54—58. [8] 宋琛,张俊宝,张莲蓬.编队飞行卫星自主相对定轨研究[J]. 计算机仿真,2011,28(2):46—54. [9]林来兴,车汝才.航天器编队飞行轨道构型研究[J].航天器 工程,2Oo9,18(1):21—29. [10] 杨颖,王琦.STK在计算机仿真中的应用[M].北京:国防 业出版社,2005. [11]王达,邱小刚.基于STK—RTI中间件的天地一体化作战建模 仿真研究[J].系统仿真学报,2005,17(2):501—503. [12]Lee,Jong Sik,Konan ̄,K ay.Design of a satellite cluster system in distributed simulation『J].Simul ̄ion,2005,8l(1):57—66. [13]邓玲丽.基于HLA的分布式仿真优化方法及应用研究[D]. 大连理工大学,2010. [14] 史扬,肖明彦,陆铭华,吴金平.基于HLA的潜艇作战仿真平 台设计与实现[J].系统仿真学报,2010,22(9):2106 ~2109. [作者简介] 范增(1985一),男(汉族),河南省安阳市人,硕 士研究生,主要研究领域为计算机应用技术,信息 对抗。 冯永新(1974一),女(汉族),辽宁省沈阳市人,博 士,教授,硕士研究生导师,主要研究领域为扩频通 信技术及应用,信息对抗。 赵璇(1985一),男(满族),内蒙古自治区包头市人,硕士研究生, 主要研究领域为计算机应用技术,信息对抗。 黄迎春(1976一),男(汉族),辽宁省瓦房店人,硕士,副教授,主要 研究领域为电子对抗技术,系统仿真技术。