随着物联网应用的增加,物理实体的数字化化身概念的重要性在最近几年得到了极大的关注。
最典型的一个例子是Gartner在2016年10月发布的名为“2017的十大战略趋势”的报告,在这个报告中,数字孪生名列第五。这些数字化代理预计将构建在业务专家的知识领域和从设备中采集的实时数据之上。
大多数的物联网平台提供商已经开始进行某种形式的数字孪生的实施,通常会被命名为孪生、影子、设备虚拟化等等。
在本文中,我们将会讨论数字孪生的起源,以及行业中的多种实现。然后,我们将会讨论在Oracle物联网云服务中实现数字孪生。
术语“数字孪生”是由密歇根大学的Michael Grieves博士在2001到2002年期间定义的。他的最初定义是在产品生命周期管理(PLM)当中。在他的论文当中,“数字孪生”的概念是对所生产的产品的虚拟展现。他提议将数字孪生与工程设计进行对比,来更好的理解产品的生产与设计,在设计与执行之间形成紧密的闭环。
Graves博士为定义数字孪生定义了如下术语:
1.数字孪生原型(DTP): DTP描述了所创建的资产的信息。比如,DTD会包含资产的3D模型以及描述如何对资产进行制造的物料清单(BOM)和流程清单。
数字孪生模型指的不是资产的特定实例,它更像是一个资产制造的配方。
2. 数字孪生实例(DTI): DTI是关于资产的一个特定的物理实例。它包括了这个特定资产进行生产所需的精确的零件编号的列表,以及其生产时所遵循的精确的过程步骤。数据孪生实例也包含了从连接到资产的探测器上所捕捉到的当前操作的状态。
3.数字孪生汇总(DTA): DTA是对多个DTI的简单汇总,它能够对一组资产的信息进行查询。
数字孪生的概念非常大。我们简单的看一下这个概念所提供的典型的好处:
1.可见性: 数字孪生能够实现机器操作的可见性,以及制造工厂或者机场中大型的互联系统的可见性。
2. 预测性: 使用多种建模技术(基于物理和基于数学的),数字孪生模型能够用于预测机器未来的状态。
3. 假设分析: 通过适当设计的接口,可以很容易的与模型进行交互,并且对模型询问假设问题,来模拟现实中无法创建的各种条件。
4. 对行为进行理解和解释的记录与沟通机制:数字孪生模型能够作为一种沟通和记录机制,能够对单独的机器或者机器的集合的行为进行理解和解释。
5. 连接不同的系统,比如后端的业务应用: 如果设计的正确,数字孪生模型能够用来连接后端的业务应用,在供应链运作中实现业务成果,包括制造、采购、仓储、运输、物流、现场服务等。
看到上面所列的好处,那么,大多数的物联网提供商都对这个概念产生浓厚的兴趣,就不奇怪了。几乎每一个物联网平台都会实现某些数字孪生的功能——尽管他们的成熟度和视野还存在着明显的差异。广义上讲,这些实现通常会分为两类:
1. 简单的设备模型
这些实现通常使用包含两个主要属性集的JSON文档:
a. 一组观测值或者报告值:通常,设备上的探测器读取当前值,并更新这些观测属性。比如,一台机器当前观察的转速(比如 1000 RPM)。
b. 一组期望值:这是控制程序希望在设备上设置的值。比如,一个应用能够设置引擎转速到1200 RPM。
除了这两组主要的属性,这些实现也在JSON文档中存储了相关的信息,比如设备的名字或者序列号,或者当前的位置。
从本质上讲,这些简单的设备模型构成了一个简单的使用MQTT/HTTP传输协议的设备状态异步通讯机制。请注意,异步通信机制是必须的,因为设备可能是脱机的;或者当后端需要与设备进行通讯时,却无法有效的对它进行轮询。从这个意义上讲,这些模型只实现了Grieves博士的DTI概念中的“从实际传感器数据中捕捉的操作状态——当前、过去实际”部分。
2. 工业孪生
这类实现通常被工业物联网供应商所采用,它包括PLM工具设计机器的信息(类似Grieves博士提出的DTP概念)和一台设备的模型(类似于部分DTI概念)。一些工业供应商关注物理属性、设计信息和实时数据,并且将他们展现在一个资产/设备模型图当中。值得注意的是,这些模型通常都基于机器的物理属性。
下图描述了在Oracle物联网云当中实现数字孪生的方式:
上图中描述了实现数字孪生综合方法中的要素。在这个方法中有三大支柱。
虚拟孪生:
Oracle的设备虚拟化是指为物理资产创建一个虚拟表示或者是在云中的一个设备。这需要几个理由。首先,物理资产可能不会总是连接到应用。比如,一辆连接的汽车会因为穿过一个隧道,而在短时间内失去连接。对于其他的后端软件来说,能够查询设备的最终状态或者控制设备的操作参数是很重要的,即使是在设备离线或者没有连接的情况下。其次,设备是通过大量的协议或者连接方法连接的。像ERP这类的业务应用不应该被这种复杂性所拖累。设备虚拟化就为这种业务应用和设备之间的的安全的双向通讯提供了一种抽象。
除了类似于简单的JSON文档并带有所观察和所期待数值的基本模型,Oracle物联网云所交付的设备虚拟化还使用了强大的语义模型。这种语义模型提供了多种好处。这个语义模型的一个显著优点是,它允许对设备的属性设置一个正常的操作范围。这大大简化了边缘计算和雾计算的实现。一个典型的实现,为了检测一个给定参数的阈值违反(比如,温度过高),用户必须写一个单独的网关应用来进行处理,然后要对这个应用的生命周期进行管理(部署、升级、安全等)。使用Oracle设备虚拟化,设备模型本身就足够能够对异常进行检测,并且生成适当的报警,不需要用户编写和部署一个边缘计算程序。此外,业务规则能够以声明方式定义在Oracle物联网云当中的复杂事件处理(CEP)引擎之上,能够在物联网的边缘自动实现实例化。
此外,Oracle设备虚拟化技术基于内建在设备模型中的语义识别能力,能够极大的优化网络流量和发布机制。虽然大多数的主流实现都聚焦于使用高效的协议,比如MQTT来应对网络带宽的成本,以实现增量的方式。而我们则采用基于语义模型的自动边缘计算建模的革命性方式,数量级的降低网络流量。为了展现这一概念,我们看一个监控车队运行参数的例子。基于语义模型,边缘计算可以足够智能的判定运行参数何时在“正常”范围之内,何时不在“正常”范围。此外,它还知道哪些消息是紧急的(比如,检查引擎灯和中断故障通知),哪些消息是重要到(比如,低胎压),还有哪些消息是常规的(比如,润滑油的粘稠度正在缓慢下降,接近不可接受的范围)。基于语义的模型能够自动优化消息的频率,并且检测最佳的传递机制(比如,是通过蜂窝网络发送告警信息;还是当汽车完成运输连接到Wifi网络上时再下载数据)
预测孪生:
一旦我们实现了设备虚拟化,我们就能够获得与设备交互的功能的抽象。比如,我们可以通过虚拟化抽象来查询或者控制设备。使用该模型,我们能够对设备的当前状态做出反应。
然而,仅仅对现状“做出反应”是不够的,也不是最优的。比如,只知道机器出问题了是挺好。但是知道机器可能在未来出现问题,让使用者有时间在问题发生之前就对他进行处理,就更加重要了。
行为和预测建模可以通过两种方式实现:
1. 基于物理方式:使用物理的方式建模,可以利用资产的精确设计的知识和制造参数。像有限元分析之类的技术,经常用于建立高精度模型,来回答“What-if”之类的问题。比如,使用这种模型,用户能够根据给定的负载条件评估机器设备各个部分的应力模式。
在实践中,创建这些模型需要产品设计团队付出巨大的努力,他们要创建具有合理保真度的模型。
通常,创建有限元模型所设计的数学算法都是相当复杂的,因此这些模型都趋向于静态模型,无法适应复杂和持续变化的环境。但是这些模型最大的缺点包括(a)它通常由机器设备的原始设计者来创建这些模型,但是购买了组合产品的客户缺无法将他们根据需要放到一个模型当中,(b) 虽然这些模型可以对各种负载条件下的性能问题进行建模,但是这些模型并没有为解决问题提供指导。
2. 基于分析/计算模型:预测模型能够使用机器学习技术来进行创建,不需要引入原始的设计人员。数据分析师仅仅基于对机器设备的外部观察就能够创建一个预测模型。这个选项被证明是非常实用的,因为它提供了基于终端客户需求的各种模型的创建。
这些模型目前非常流行的另一个重要方面是,它们考虑了“整个系统”。我们称之为上下文数据。以制造操作为例。根据石川图的建议,要确定一个问题,你就需要考虑注明的5个M:人、机、料、法和管理(Man, Machine, Method,Material, Management.)。
使用内置的与Oracle和非Oracle应用的集成能力,Oracle物联网云不仅能够通过物联网系统把传统的机器数据流带入到后端业务应用当中,还能够带来上下文数据。这就让我们能够创建比上述物理模型更有效和更可用的模型。
并非所有的预测模型都是平等的。根据你所要解决的问题,会有一系列的复杂性。模型的样本通常都会基于数据使用的趋势和模式。对于这些,包含在物联网云中的Oracle Stream Explorer(一个带有声明式业务用户级UI的复杂事件处理引擎)就足够了。复杂一点的模型,可以使用物联网云中的基于Apache Spark的分析引擎进行创建。除了使用Apache Spark发行版打包的标准库之外,Oracle物联网云还为处理时间序列数据提供了额外的库。更复杂的模型通常由数据科学家使用Oracle R Advanced Analyticsfor Hadoop (ORAAH)进行开发。这些R语言模型能够在物联网的数据管道中执行。业务用户能够使用由Oracle大数据发现产品所提供的简单的接口。Oracle提供了丰富的工具解决多种复杂度的业务问题。
孪生投影:
预测模型能够生成预测信息,并且为设备操作提供洞察。除非这些洞察能够作为一部分集成到你现有的业务流程当中,否则他们毫无用处。这就需要将洞察信息“投影”到你的后端应用当中,这样业务应用就能够很方便的与物联网系统进行交互,来创建智能系统。
孪生投影的目的是:
将物联网系统生成的洞察信息与业务流程集成
触发适当的补救流程
从业务应用中获得用于决策支持的上下文数据和交易数据
使业务应用对当前和预测的设备状态和环境可见
Oracle物联网云支持如下的集成:
与Oracle应用比如Oracle ERP(供应链、制造、管理应用)和CX(服务)本地化预置的集成
通过Oracle集成云实现与超过150中应用的集成
使用REST API集成
当物联网部署在你的企业中越来越多时,数字孪生是作为重要的概念,将成为你业务运营的战略。
Oracle物联网云提供了更全面的方案来实现数字孪生:
a) 虚拟孪生——通过超越简单的JSON文档的设备虚拟化,展现观察到的和期望的值
b) 预测孪生——通过使用各种技术构建的分析模型,以适应您试图解决的问题的复杂性。
c) 孪生投影——将孪生产生的洞察力投射到后端业务应用程序上,使物联网成为业务基础设施的一个组成部分
英文原版下载: 《digital-twins-for-iot-apps-wp》