吕良庆 张峻巍 何睿 王彧泽
(1 中国科学院国家空间科学中心 复杂航天系统电子信息技术重点实验室,北京 100190)(2 中国科学院大学,北京 100049)
即插即用技术是通过采用电子数据单(EDS)技术而实现的。电子数据单是连接到某个系统中的一个部件实体的信息对象,内容主要是可供外部相连系统使用的部件自描述信息,如接口信息、行为动作的关联信息等。[1-2]
面对航天器智能化、自主化能力需求的不断增多,日益复杂和适应目标未知等特点,航天器功能业务需要采用模型驱动加数据化的开发方式,对引入电子数据单技术提出了需求[3]。为此空间数据系统咨询委员会(CCSDS)在2006年后陆续推出了基于可扩展标记语言的遥测遥控信息交换标准建议书(XML Telemetric and Command Exchange,XTCE)[4-7],以及描述航天器接口业务(SOIS)的电子数据单(SOIS EDS,SEDS)标准建议书[8],允许航天器业务的数据化描述和与硬件的隔离。同时,电子数据单的运用也需要遵循一定的体系架构建模方法来进行。
本文介绍了空间数据系统参考架构(RASDS)[9]中信息视角的信息对象建模方法,分析了航天器所需要的遥测、遥控、部件等数据对象的应用过程,提出了相应的电子数据单工具系统的设计思路和应用建议。
电子数据单解决信息对象描述的问题,需要遵循系统架构方法论。按照系统工程架构理论[10-12]提出的视角概念,RASDS中定义了5种基本视角,即企业视角、功能视角、连接视角、通信视角和信息视角。除企业视角外,在技术方面,功能视角描述了一个系统应该具有的功能,连接视角描述了系统的组成和连接关系,通信视角描述了系统各个组成部分之间的通信协议关系,信息视角描述了通信交换数据的语义、语法、规则、约束等。这些视角对同一个对象的描述应具有一致性和相关的逻辑关系。
信息视角主要关注信息对象、数据对象及其如何定义和配置的描述。信息对象通过一组抽象的数据元素,使用特定语言和特定框架来定义数据对象及其逻辑关系。数据对象用于描述语法(结构)、语义、关系、约束、规则、策略等的元数据,以及需要表达的信息内容,通常是人机可访问的。数据对象在一组连接对象之间传递,内容可以是连接对象的可能状态、行为和环境互动关系,或者是内部动作。实际系统中使用的数据对象应具有详尽、严格的数据模型描述,作为信息对象实例化的操作载体。信息对象的建模过程从建立专业领域的抽象数据架构开始,是一个从抽象到具体的过程,如图1所示[9]。
图1 信息对象的建模过程
信息对象具有客观性,不同专业领域会有不同的描述对象、要素和方法,例如航天器系统的机、电、热、信息等专业领域。图1中的抽象数据架构反映了这种客观性,主要关注信息对象的各种数据元素的定义,元素间的关系以“相关”、“部分”、“被使用”等形式表达。抽象数据架构通常是在建立数据模型时,以标准化的形式出现,需要建立不同领域信息对象的描述标准。
实例化过程是将抽象的信息对象的特征信息转化为数据模型的过程,主要包括数据结构、数据元素的名称标识、排列顺序等,可以是模板、外部文件、或其他存储元数据的形式。数据模型通常是在系统设计时实例化的结果。
个性化实现过程是根据不同信息流的使用场景和目的,将数值填入模板,形成具体的数据对象的过程。该过程是一个具体系统对特定信息的生成、处理、解析和识别过程,从而允许异构系统之间交换不同形式的数据。具体的数据对象通常是在系统进入详细设计或系统使用时出现的,表现为一组数据流、字节流,用于信息的具体保存、处理和交换。
电子数据单工具链的设计会因信息对象的专业领域不同而不同,与不同的数据对象的应用过程和场景密切相关。以CCSDS的XTCE标准为例,其描述的对象是遥测和遥控数据,有着不同的内容和应用过程。按照图1的信息对象建模过程,图2、图3分别描述了XTCE遥测和遥控数据对象的定义、生成和使用过程。
图2 XTCE标准遥测数据对象的生成和使用
图3 XTCE标准遥控数据对象的生成和使用
图2中,XTCE标准的遥测元数据归纳了遥测数据所需要的数据元素和它们之间的组成关系,作为实例化各种航天器遥测数据对象模板的抽象数据结构标准。在使用过程中,当接收到实际的航天器遥测数据时,将其填入模板中,生成XTCE遥测数据文件,在不同的系统、机构、设施和节点之间传递和交换。由于不同的实体会存在设计上的差异,甚至是对已有系统的继承使用,因此同一个XTCE遥测数据文件需要根据不同实体自身的数据对象定义进行个性化转换、解析和识别,供实体内部进一步处理和使用,从而实现对同一遥测数据的共享。
同样,图3中XTCE标准的遥控元数据也归纳了遥控数据所需要的各种数据元素和它们之间的组成关系,基于此可以实例化各种航天器所需要的遥控数据对象模板。与遥测元数据不同的是,遥控元数据除了指令元素外,还增加了变量类型元素,以反映遥控数据内容可配置的特点,而遥测数据填入模板后生成的遥测数据对象实体不会再变化。在使用过程中,不同的系统、机构和设施实体的指令数据按照XTCE遥控模板生成XTCE遥控数据文件。当发送指令上行给航天器时,由于不同的航天器设计不同,需要对遥控数据文件进行个性化数据格式转换,从而使得同一个指令模板可以在不同航天器间共用。这样做,有利于航天器和地面系统及其基础设施的设计和继承使用,由此引起的指令安全性问题可以在个性化转换的环节中进行针对性解决和保证。
航天器上装载的设备和功能业务的数据描述方式可以采用CCSDS的SEDS标准,图4给出了SEDS数据对象的定义、生成和使用过程。
图4 SEDS标准数据对象的生成和使用
图4中,SEDS标准的元数据归纳了描述设备、功能业务所需要的数据元素和它们之间的关联关系,可以用于实例化各种设备、业务和应用的自描述信息模板。为了描述设备及其组成部件,数据元素中包括了设备元素和组件元素(可进一步细分为硬件和软件)。组件元素用于描述功能业务时需要有相应的状态机、行为、接口等元素。接口可以包括各种星载网络、总线的通信协议,业务间接口关系,以及遥测、遥控接口等。遥测遥控数据对象可以通过XML语言机制,直接引用XTCE描述的遥测、遥控数据对象实体,一同个性化形成SEDS文件,作为设备、业务、应用等实体的自描述静态信息在实体间交换,从而支持设备、功能业务的即插即用效果。如果交换双方的信息结构是异构的,还可以继续进行类型格式转换,从而实现同一个名片可以在不同实体间交换的效果,解决异构系统互联的问题。
从第2节信息对象到数据对象的应用示例分析可见,不同信息对象的工具链是不同的,并且可以结合建模过程对每一种工具链的组成进行划分。随着工具链种类的增加,会产生大量的电子数据单(模板、各种格式转换后的实例、个性化文件等),需要工具系统来进行统一的管理,提供存储、定位、访问和发布的支持。工具系统需要考虑的信息对象管理接口主要有规则、模板、元素类型、约束、可保持性等方面,相应的管理能力主要有结构、语义、关系的定义,以及类型转换、约束检查等。在此基础上,工具系统还需要具有可扩展、易用性的特点。为此,提出工具系统针对工具链管理的组成架构,见图5。
图5架构设计的核心思想是采用共用的插件管理引擎对不同的工具链和通用工具进行插件式管理[13-14],实现所需的工具链配置和使用。图5中应用业务层的横向关系表示的是不同信息对象工具链的可扩展性,解决工具链的独立开发、使用和可扩展问题,满足图2、图3、图4所示的不同设计、应用过程和场景的需要。纵向关系是支持一个信息对象工具链的可配置性,方便不同工具链的统一管理、独立开发和使用。例如遥控工具链可根据遥控数据信息对象的生成模型和应用场景,分解成图5中的4个小工具,解决在指令生成过程中的模板创建、指令生成和包装问题[15]。在生成XTCE描述的注入包后,其二进制转换的工作由通用服务层完成。遥测工具链在生成XTCE遥测实例后,可以直接在异构系统间交换,而对它的解析和识别交由不同系统去完成。SEDS工具链的目的是生成设备名片,需要生成最终的设备个性化文件。
图5 基于插件的电子数据单工具系统架构
通用服务层是生成、解析、转换、包装和校验方法的通用工具。由于SEDS和XTCE都使用XML语言,虽然在元素的表达上有差异,但是它们的处理方法是可以通用的。
不同信息对象和数据对象的数据定义可以采用通用的参数定义方法。在欧洲空间标准化合作组织(ECSS)的包应用标准(PUS)C版本中规定了类型代码(PTC)和格式代码(PFC)[16]。PTC规定了布尔型、枚举型、整型、实型等12种数据类型代码,PFC则在每种PTC之下,通过不同的编码方式定义了不同的数据类型结构。实际应用时,在PTC+PFC基础上可以进一步定义任意复杂的参数和数据结构,组合生成实际的数据对象模板,再根据处理或传输的需要进行必要的数据格式转换。这种参数定义方法也可以单独设计成参数定义工具链,它既可以单独使用,又可以用于辅助其他工具链的数据定义,从而允许用户自行定义数据对象,将主要的精力放在客观对象的抽象数据结构,即信息对象的描述上。
电子数据单技术的引入可以用于数字化描述航天器各种信息对象,解决航天器上的各种部件(设备、业务、应用)的即插即用和互联互通问题。电子数据单的建立需要遵循系统架构中信息视角分析的方法,其设计、应用和管理过程会因描述的信息对象、数据对象不同而不同,具有客观信息的复杂性,需要相应的工具系统支持。工具将为纷繁复杂的信息生成、交换、转换和解析提供一致性的保证和自动化的执行环境,为开发组织提供信息的可保持性,支持基础设施的重复利用和系统快速集成测试,增强航天器应对越来越复杂、多样和未知需求的开发和应用能力。
后续电子数据单技术的研究主要有3个需要持续进行的方向。
(1)在信息对象的标准化描述方面,需要对不同的描述对象分别建立元模型标准,再按照信息对象的建模过程,分析建立其数据模型和具体的数据对象。
(2)由于信息对象的多样,支持信息对象建模过程的工具系统也会表现为多样化和进化的特点。因此对同一信息对象的异构工具之间,需要解决互联互通和进化兼容问题。
(3)数据化方法的使用必然会影响到现有开发方式,需要遵循基于模型的系统工程(MBSE)思想,逐渐向采用MBSE方法的方向转变。
本文根据RASDS信息视角提出的从抽象数据结构、数据模型到具体数据对象的建模方法,以航天器所需要的遥测、遥控、部件描述的不同数据对象建模过程为例,分析了其建模、设计和应用的特点和不同,说明了信息对象的抽象性、复杂性和多样性。相应的电子数据单工具系统需要对此具有适应性和可扩展性,从而允许不同信息对象的工具链能够独立开发和应用,同时又可以进行统一的管理和可持续发展。采用电子数据单技术有助于航天器系统的快速集成和测试,在轨飞行任务过程中的各组成部分的分离和对接应用,以及空间星座、编队、组网等应用场景下不同节点之间的动态接入和撤出过程,实现应用软件的可重用,保持在任务全生命周期中信息传递的一致性。电子数据单需要通过一系列工具环境的支持,对传统的航天器开发方式进行改造,才能够发挥其应有的效果。电子数据单及其工具链技术是推行MBSE方法、实现数字孪生愿景的基础技术之一。