本文作者胡振超,上海交通大学博士研究生。课题牵头人为鲁金直,瑞典皇家理工学院博士。本项目有Ericsson.SE高级顾问顾文卿,中科蜂巢相关工程师相关工程师所提供的基于多架构建模Karma语言的自主多架构建模工具MetaGraph、OSLC数据整合工具Datalinks,工程数据可视化及分析工具DataVis以及工程案例。
1 系统工程的全生命周期进行整合的必要性
随着近年来产品的复杂程度增加,企业研发任务的需求,在产品各个生命周期阶段往往会跨越多个工程领域,典型的如需求管理、架构设计、产品设计、质量管理、仿真验证等。在全生命周期中,利益相关人会使用不同的领域工具来解决领域遇到的关注问题问题。而这些工具来自于不同的工具提供商、具备不同的数据类型、依赖不同的数据库与平台或者拥有不同的UI和风格。在产品开发过程中,这些领域工具发挥着巨大的作用,然后当前的领域工具间的数据和工作流却彼此割裂,导致无法在产品的全生命周期内实现跨领域的数据一致性表达和相互通用。这导致了在整合分析阶段,产品开发人员不得不投入大量的人力用于整合不同平台工具间的以后数据。
目前,异构数据不能完全整合,导致企业内部信息孤岛的产生,成为进一步提升企业研发能力的障碍。对于全生命周期中的数据进行整合,可以打破产品研发过程中遇到的不用领域间的数据和工作流的壁垒,可以极大地帮助企业进行信息化改革,降低研发过程中的交流、管理成本,从而加快产品研发效率。与此同时,统一形式化表达的数据是智能化开发的基础,为未来采用大数据技术对产品开发过程的提供自动决策奠定基础。
此外,在工业制造领域,随着数字化的发展,数字孪生技术也变得越来越重要。这种贯穿整个产品的生命周期的虚拟数据,同样需要统一的表达和管理,进而缩短产品开发过程中数据闭环,提高开发和生产的有效性和经济性。同时,这些统一表达的数据,辅助产品运维阶段的故障诊断及寿命预测,帮助客户避免系统错误造成的损失。
本文使用OSLC技术解决生命周期数据的集成问题,打通物理空间与虚拟空间之间的数据交流,支持实时数据的集成和管理,为整个系统的生命周期提升数据管理、整合能力,为企业未来以数据为核心智能开发奠定基础。
2 开放式生命周期协作服务(OSLC)
OSLC的全称为 "OpenServices for Lifecycle Collaboration",是由IBM提出的一套技术规范,该规范主要用于解决生命周期工具的集成问题。OSLC的核心思想是链接数据,将事物都通过HTTP URI进行标识,用户通过请求能够获取通过标准形式表达的有用信息,并且允许事物间的链接,使得用户能够发现更多的信息。
图1OSLC系统架构
基于这一基础思想,OSLC将软件研发生命周期的工件进行资源化。用户通过HTTP协议对这些资源进行访问。OSLC中对资源的表述强制要求具备RDF的提供能力,同时也可以支持例如JSON/HTML等其他资源格式。
2.1 服务集成架构
图2OSLC服务化集成架构
如图所示,OSLC服务化系统工程整合方法,步骤包括数据前端平台调用、OSLC处理、基础组件层。
(1). 基础组件层包括整个产品开发过程中的生命周期数据及数字孪生方案两部分。生命周期数据指系统仿真实验数据库、模型数据库(CAD模型、CAE模型、CFD模型、架构模型)、代码、形式化文档(型文件、仿真文件、结果文件、仿真报告和其他文件)、用户权限数据库及文件等。数字孪生包括工业生产设备、传感器采集的实时数据等。
(2). OSLC处理即为数据交互中间件,直接面向数据,将基础组件中的模型数据及通过工业生产的设备管理、传感器硬件IO接口所收集的数据转化为OSLC服务。OSLC标准基于基础的数据结构框架,系统工程师可以根据OSLCcommunity给定的标准定义作为参考模型,定制自己企业内部的数据集成标准 (该过程类似与系统工程师需要根据SysML模型建立自己的profile)。该层OSLC服务是通过基于OSLC标准开发的服务配置器生成的。针对不同资源,开发对应OSLC服务配置器可以将该资源表达为统一的OSLC服务,每个OSLC服务可以通过URL进行访问。此处需要注意的是,不能单纯的把OSLC技术看出简单的Restful服务或者RDF技术。
(3). 前端调用包括数据显示化及分析决策平台和目前生命周期中的各种平台客户端。通过统一表达的OSLC形式化数据在数据显示化及分析平台上对生命周期数据进行分析和显示化。同样,其他已存在的产品开发平台可以对OSLC服务进行调用。例如,FMI为联合仿真过程中的,数据交互格式,OSLC在生命周期过程中,数据的集成作用与FMI在联合仿真的过程中的功类似。
通过以上OSLC服务集成架构,产品生命周期过程中的数据、模型及形式化文档以及数据孪生中产生的数据可以统一表达、并实现更加方便的集成方式。
2.2 OSLC服务化集成落地
图3OSLC服务集成过程
如图3所示,目前本团队已经实现采用基于模型系统工程方法自动开发OSLC服务的解决方案。为了便于理解,该方案的原理与PTC采用SysML实现Smart City的IoT平台自动开发类似。
本方案中,系统工程师采用多架构建模工具MetaGraph[1]对OSLC配置器的架构及相关参数进行建模,并通过代码生成器,将其架构模型模型自动生成用于描述OSLC配置器的本体信息(目前,MetaGraph基于多架构建模语言"Karma语言"建立该架构模型所需要的模型库,同时还提供了支持SysML、BPMN、Capella方法论的模型库。同时,基于Karma语言也可支持MetaGraph中的架构模型之间架构驱动及MetaGraph对于其他格式数据的代码生成 ,年末会更新具体文章介绍Karma语言)。
系统工程师与IT管理人员配合,通过采用Datalinks[2]读入相关本体信息分别生成OSLC服务配置器。注意,即使不通过MBSE方法,可以通过Datalinks手动开发相应OSLC配置器。 目前Datalinks已经具备诸多通用工具的OSLC配置器,并可以对这些配置器进行管理。这些服务配置器用于生命周期过程中所需要的相关基础组件及硬件接口所获得的数据转化为OSLC服务,进而实现生命周期中的数据整合生成及数字孪生。
通过服务配置器,将生命周期中的数据转为统一表达的OSLC服务及OSLC数据,在数据可视化及分析工具中进行数据挖掘和显示化并自动生成基于机器学习算法相关模型。其他平台通过OSLC服务调用数据,实现数据的统一和集成。
3 案例
3.1 OSLC服务的支持设备互联及数字孪生的接口及数据管理
图4物联网车辆案例
我们以自主循迹车辆的IoT框架的开发过程为例说明此方案的可行性。如图4所示,基于TURTLEBot3框架,开发两个车辆实物。在该框架下,两个自主车辆可以进行自主寻址,避障和数据的中心化分析及管理。这些车辆通过ROS(Robot Operating System)系统和Wifi将车辆的实时数据传送到PC端,通过PC端的OSLC服务配置器, 将实时数据传递到服务云上,开发人员通过云服务实现车辆的实时数据监控。
图5自主车辆案例全生命周期模型及服务化表达及数据分析
如5所示,在自主循迹车辆的IoT框架的开发过程中,会涉及到包括对针对整个IoT框架和车辆的体系级及系统级需求分析,产品设计、建模仿真、软件验证以及实物检测阶段。不同阶段中会使用到不同领域的工具。通过使用OSLC数据管道工具Datalinks,可将诸多模型和数据转化为OSLC服务及OSLC格式数据,将不同领域的工具进行集成并服务化。
通过OSLC服务,开发人员将自主车辆在研发过程中使用到的Simulink模型、CAD模型、仿真数据等生命周期过程中使用到的数字孪生的虚拟空间的模型集成到OSLC服务中并在数据可视化平台中显示。这些数据可以在大数据可视化及分析平台DataVis中用于辅助分析对该车辆的寻址算法、故障诊断和寿命预测算法的开发。
3.2 细节展示
在此案例,基于自主循迹车辆IoT框架,采用OSLC技术分别建立其simulink仿真模型及实物的实时监控前端。如图6所示,基于OSLC的CoreModel规范,其包含的概念有catalog,serviceprovider及service。Catalog可以嵌套Catalog及service provider,provider可嵌套service,进而实现不同数据的层次表达。在该案例中,建立一个总体的catalog用于描述本案例,利用两个catalog分别描述Simulink仿真模型和车辆实时数据显示和保存的功能。在对应catalog中,每个service provider代表单次仿真或实时测试。在每个service provider中,都可浏览本次service provider可实现实时数据显示和数据存储的服务。
图6服务化物联网平台数据显示
案例演示效果如图6所示:
1、主页面为用户提供了针对该案例中的仿真模型以及车辆实物的catalog,点击service provider相应链接即可对其进行进一步操作,即登入对应service provider。
2、每个service provider都为用户提供了针对数据的实时显示(display)以及数据保存(save)的service,点击链接即可在网页客户端调用此服务。
3、当用户选择实时显示(display)服务时,页面会将数据实时利用OSLC服务实时显示在页面中。
4、当用户选择保存数据(save)服务时,页面会为用户提供数据的下载链接,用户通过在OSLC服务即可通过此服务将数据保存下来。
4 应用展望
采用OSLC相关技术实现对产品生命周期过程中的相关数据进行整合实现企业级的现实数据及虚拟数据的统一表达和整合。通过服务化方法,可实现不同利益相关人对于不同领域的数据增删改查,从而帮助企业实现提高生命周期过程中的数据一致性、追溯性及互用性。根据OSLC规范提供的参考模型,系统工程师可以自行定义企业级或者IPT团队中的数据格式并建立各自领域的数据标准库,进而实现各自领域数据管理的优化。与此同时,这些数据标准,由于基于相同的OSLC格式,可以跨领域的数据整合。该方法比传统的标准范式集成灵活更加开放,避免集成领域知识与给定工业标准数据格式时,由于彼此异构所导致的转化过程中的数据缺失。此外,针对集成数据过程中所遇到的数据安全性问题,已经通过区域链技术进行加密,后续会对这项技术进行介绍。同时,针对该案例中的数据,以及采用强化学习技术实现对产品开发过程中的自动决策。后续也会介绍如何将机器学习技术应用于开发过程的决策。