如何实现完整高效的工业互联网联接性
扫描二维码
随时随地手机看文章
工业4.0平台和工业互联网联盟IIC在2017年12月5日联合发表《架构对接和可互操作性》白皮书,在国内引起了广泛兴趣。但是,IIC在2017年2月28日发布《工业物联网的联接性框架》白皮书,已经一年多了,却受到了冷遇。显而易见,联接性(connecTIvity)在工业4.0和工业互联网中的重要性,在国内还不曾被了解和充分认识。
这或许是因为在工业4.0的参考架构RAMI4.0中没有联接性的概念,只是在由物理世界按其功能特性映射到虚拟世界的维度中,有一个通信(communicaTIon)的层级。而按RAMI4.0的白皮书中对通信层的功能解释,是用来处理通信协议、数据和文件的传输。它在指向信息层的方向上采用统一的数据格式,从而保证通信实现标准化;并为集成层的控制提供服务。这仅仅是将在制造过程中产生的各种信息转换为统一的数据格式,尚没有细化到要通过哪些通信协议传输,完成“在正确的时间,将适当的数据传送到正确地点”的任务。这或许也反映出德国在数字通信、互联网等基础方面远远落后于美国的一个不能回避的现实。由于德国工业4.0对我国的影响太深,以至于我们对它的某些软肋竟然视而不见。其实德国工业技术界对此也是有逐渐有所理解和认识的,要不然就无法解释工业4.0平台与工业互联网联盟的合作进程,为什么从2015年就开始启动,但又遇到挫折,直到2017年才开始有了实质性的推动。
还有一个原因是联接性技术属于通信基础性技术,不是那种所谓“显示度”很高的技术,国内向来采取被动跟随的姿态,多半是采用“拿来主义”。所以论述工业互联网平台的文章连篇累牍,却很少见到关于联接性的描述。
工业物联网IIoT的领导联盟是美国工业互联网联盟IIC和德国Industrie 4.0 (I4.0)平台。 二者各有千秋,IIC 建立了一种跨越工业领域的技术架构;而工业4.0着重于制造业,但超越了技术架构,介入了供应链和产品生命周期。由于这些目标和架构都是互补的,因此两个组织正在共同绘制今后发展、建立工业4.0和工业互联网之间实现可互操作性的设计蓝图(见下图)。
图 | 建立工业4.0和工业互联网的互操作性
泛在联接性是工业物联网IIoT系统中各种参与组件之间实现数据共享的一种基础技术。联接性为联接参与者之间,提供功能域内、系统内跨功能域,以及跨系统进行数据交换的能力。这些数据交换包括传感器的数据刷新、事件、报警、状态变化、命令以及组态刷新。简言之,联接性是跨功能域(由工业互联网参考架构所定义)的横向交互功能(见下图)。
图 | 联接性是横向交互功能
在图中绿色箭头:数据/信息流;灰白色箭头:决策流;红色箭头:命令/请求流。
功能域有:控制功能域,信息功能域,应用功能域,操作运营功能域和业务功能域。
IIoT领域中充斥着各种各样的专有联接性技术,以及在垂直集成系统中一些针对较小的特定范围的应用案例及优化标准。这些特定范围的联接技术虽然在各自应用范围内内还是相当优化的,但是对于建立新的价值流,以及打开全球的IIoT市场,却在数据共享、设计、架构乃至通信诸方面是一种障碍。IIoT联接性的首要目的是要让这些相互隔离的孤立系统的数据开放流动,使得这些封闭的组件和子系统之间能够共享数据和实现可互操作性,以至在各种行业内和各种跨行业的新型和新兴的生态应用得以形成和发展。
我们需要建立广泛领域的IIoT的联接性。通过定义IIoT联接性的堆叠模型和开放的联接性参考架构,使从事IIoT的各种利益攸关者,对手头正在开发和应用的联接性技术的适用性进行分类、评估和确认。
由于历史发展的局限,经典的开放系统互连OSI (open system for interconnecTIon)7层模型和互联网4层模型都不能准确地描述工业互联网联接性的要求。IIoT作为工业互联网的一个关键的基础,要求用一个新的联接性功能层模型来着重表达分布式的传感器、控制器、网关、各种设备和器件,以及分布式系统的其它应用组成。
当然,这一模型还是以OSI模型和互联网模型为参考,按照新的要求提出了联网(物理层、链路层、网络层)、联接性(传输层、框架层)和信息三大功能共6层的通信模型,又称为IIoT联接性堆叠模型,作为工业互联网参考架构IIRA内的横向交互功能的联接性范围(见下图)。
图 | 工业物联网IIoT通信的6层模型
IIoT系统的可互操作性层呈沙漏形状。其上顶部是一个宽泛的数据模型谱系,以及针对特定垂直行业的功能;颈部通常用于跨垂直行业的互联网层。联通性提供基本的数据共享机制,支持诸如分布式数据可互操作性和管理这样的高级功能,作为实现语法可互操作性(注意:不是语义可互操作性)的横向交互功能。
图 | IIoT联接性堆叠模型
沙漏颈部是IIoT中“互联网”的起点。鉴于颈部上面的联接层并没有很好的认识和理解,所以,为了构建IIoT系统,要侧重考虑和研究“互联网”联网层上面的联接功能。
图 | IIoT系统的联接性堆叠模型的功能性
上图表示IIoT联接性堆叠模型,以及联接功能性的范围,作为工业互联网参考架构IIRA中的横向交互功能。联通功能性为IIoT系统中在同一功能域内的参与者之间和在跨功能域的参与者之间,提供数据共享的机制。由图可见,最底层为物理层,用物理介质(有线,无线)连接网络的所有参与者,并进行以“位”(bit)为特征的物理信号(电信号、光信号或其它)的传输。其上为链接层,用于相邻参与者之间共享物理链接,并通过信号传输协议进行以“帧”为特征的交换。再上面是网络层,进行以有限长度的“数据包”为特征的交换,可能在非相邻(远程)参与者之间进行多链接路由通信。再往上是传输层,是在参与者应用程序之间进行不同长度的通信报文的通信。其上是框架层,是指为参与者应用程序之间提供可组态的有服务质量QoS的结构化数据(状态、事件、数据流)交换。再上面已超出联接的范围,是分布式数据可互操作性和管理层横向交互的功能,依赖于联接框架层提供的有具体物理意义的信息共享。
这里顺便指出,互联网协议(IP)是流行于网络层的联接标准,因互联网而诞生,而现在也用于物联网,而且在网络层对其上一层和下一层都具有独立的使能创新。虽然IP连接、非IP连接以及相当多的无线存取技术不断的发展并进入市场,使IIoT共同体有了新的选择,但下面三层都与OSI模型相同,而且广为人知。网络层以上的各层最近十年发展迅速,但还没有被广泛认识和了解。因此本文件重点在网络层以上的各层,即联接传输层和联接框架层。
工业互联网参考架构IIRA中联接性在整个架构中的任务是的支持参与互联的系统中的端点之间进行数据交换。举例说,信息包括传感器刷新、远传数据、控制命令、报警、事件、状态变化或组态更新和按时间记录的数据等等。基本上联接的任务就是在端点之间提供可互操作的通信,以保证各种组件的集成。不过联接性功能的目标限于为所参与联接的端点之间提供语法可互操作性。
通信中的可互操作性,可以达到从客户集成到基于开放型标准的即插即用等抽象的不同级别。可互操作性通常分类如下:
☆ 技术可互操作性,是指交换以位和字节表现的信息的能力。这建立在信息交换的基础结构已经存在,同时基础架构下的网络和协议都有明确的定义。
☆ 语法可互操作性,是指交换以通常的数据结构表现的信息的能力。这建立在已经使用构造数据的公用协议,而且信息交换的结构已经明确定义。语法可互操作性以技术可互操作性已经建立为前提。
☆ 语义可互操作性,是指在适当的所表现的信息解释的上下文条件下(即语境)进行交换数据含义的能力。语义可互操作性以语法可互操作性已经建立为前提。
对于IIoT系统,联接功能性有两个功能层:联接传输层和联接框架层。前者为端点之间的提供传输数据的方法和手段;在数据交换中它实现端点之间的技术可互操作性。此功能对应于OSI7层模型的第4层传输层,或对应于互联网模型的传输层。联接框架层为端点提供将数据变成明确的结构化,并完成被解析的过程;它提供端点之间实现语法可互操作性的机制。在此联接框架层中,“公共数据结构”(“common data structure” )是指被交换的数据的结构或模式。例如,我们所熟悉的编程语言中的数据结构和数据库的模式。联接框架的功能对应OSI7层模型中的第5层(会议层)至第7层(应用层),或互联网模型的应用层。IIoT的联接性功能层的任务和范围可见下表。
在分布式数据可互操作性和管理功能中的数据服务框架建立在由联接框架层提供的语法可互操作性的基础上,工业互联网参考架构的动态合成和协调功能要求语义可互操作性。
联接框架层在信息交换中为参与的端点提供逻辑数据交换服务。在此层可观察和“理解”数据交换,同时运用相关知识来优化数据的传送。它是位于联接传输层上部的逻辑功能层,而且应该并不需要知晓实现联接传输层的技术。联接框架层为端点间提供语法可互操作性,所交换的数据其结构化具有共同而明确的数据格式,与端点的实现无关,而且与硬件和编程平台解耦。与端点后面的应用逻辑有关,可能要求一个或多个数据交换的模式,其中有两个主要的数据交换模式:发布-订阅和请求-响应。
联接框架层的关键利益是将不同功能的实现加以抽象和隐藏,这样在联接框架中使用的应用软件无需了解实现的具体方法,而是利用了联通框架层的能力。这样既减少了开发成本,又提高了生产能力和质量。
表 | IIoT联接性功能层的任务和范围
联接框架层的核心功能包括数据资源模型、发布-订阅和请求-响应交换机制、数据的服务质量、数据的信息安全和可编程API等。用下图概述如下。
图 | 联接框架层的核心功能
联接传输层为端点连接提供逻辑传输网络。联接传输类似一个在端点之间执行数据流动的不透明管道。联通传输层的关键任务是为端点之间提供技术可互操作性。联通传输的核心功能包括:端点寻址、通信模式、网络拓扑、连通性、优先管理、时序和同步,以及消息安全。下图概述了联接传输层的核心功能。
图 | 联接传输层的核心功能
IIoT 联接框架层标准给出原来主要是用于相关垂直行业的联接标准(如oneM2M用于电讯行业, OPC-UA用于制造业),为那些行业提供了赋能的的技术特性,也能够为许多其它行业提供应用服务。另外的联接标准(例如DDS和互联网服务),原来是为通用的、非特定行业的应用服务,显然也可以用于很多其它行业的许多不同类型的应用服务。传输层是专为框架层服务的,在框架层与传输层之间没有任意其它功能空间。
图 | IIoT系统联接性标准
传输层与框架层的区别很重要。传输层一定要与一种数据类型系统相配对,例如消息队列遥测传输协议MQTT可与一种数据类型系统技术如由Google开发的protocol buffers相配对,同时可用来建立一种专用用户的联接性框架。
显然,目前可供选用的联接性标准没有一个能全面满足IIoT系统的要求,能够完成由高速运动的机器人生产线、离散制造业、过程控制系统等各种类型的工业生产系统和生产管理系统的数据流通和连接,为万物互联及人与物的互联的超大规模系统提供无懈可击的联接性。为此需要选择若干个标准构成核心标准,构成一个相互补充的联接性标准簇。但这个标准簇又不能超过3到4个标准,否则,要为这些标准之间建立核心网关的数量过多,而使数据的及时流动和实时流动变得不切实际和不可实现。
上图概述了IIoT联接框架层和传输层的核心标准。由图可知,联接框架层的核心标准有4个,其中1个是源于通用的WEB服务HTTP、1个是除美国之外其他国家工业界几乎很少采用的数据分发服务DDS;另外2个则是来源于某些垂直行业的特定应用,但显然也可以推广到许多行业,乃至跨行业的应用,即流行于制造业的OPC UA和由电信行业开发、目前主要用于家居自动化的oneM2M。DDS和OPC UA定义了自己的传输协议,而Web服务和oneM2M则依赖于通用的传输协议。为完整的表达,图中还示出网络IP层和更低的链路层和物理层的各种协议。运用HTTP的Web服务被称之为专为应用程序使用的联接框架,主要用于人类用户互动的接口。
选择核心标准的主要依据共10项,在下表中已清晰概述。其中前5项是必须具备的关键判据,只要有一项不符要求就不能选用。
表 | IIoT联接性框架核心标准的判据表
DDS目标是专为IIoT应用的联接框架标准,一般用于控制、工业应用、信息和操作运行范围。其主要目的是将组件(设备、网关或应用程序)与其它组件连接,使之成为实时系统和系统中的系统。组件互动于一个分享的数据空间,而从不相互直接互动。因此也可称为以数据为中心的的中间件标准。多年来它已经植根于国防、工业和嵌入式的高新应用。
DDS通过一关系数据模型实现直接的组件-数据-组件通信。DDS也被称为数据总线,因为它模拟数据库中在移动的的数据,而数据库只是管理存贮于其中而非流动中的数据。数据库和数据总线都是实现以数据为中心的抽象;但它们的应用并不直接相互作用,而是互动于基础结构中。与数据库不同的是,数据库将已产生的数据存贮,供之后用所存贮数据的有关属性进行搜索。而数据总线通过数据属性过滤进来的数据,管理未来发生的数据。以数据为中心使数据库本质上是个大型的存贮系统,以数据为中心使数据总线成为IIoT软件集成和自治运行的一种基本技术。
类似于对存贮数据进行存取控制的方法,数据总线用许多同时发生的组件控制数据存取和刷新。其核心是DDS围绕以数据为中心构建了发布-预订的数据交换机制。但是标准还定义了请求-应答的数据交换机制。关键的抽象是各个应用程序使用数据总线本身进行互动,而不是让应用程序直接与其它的参与应用程序进行互动。DDS提供精确的以数据为中心的服务质量QoS,包括可靠的多播,可组态的传送,多种级别的数据持续时间,历史数据,组件和传输冗余自动发现,联接管理,以及无须知晓传输细节、以数据为中心的传输信息安全。此外,一对多、多对一的通信是其很突出的特点。DDS提供有力的方法过滤和精确选择什么数据送到哪里,而这个“哪里”的目标可以是几千个同时发生的组件。为了支持小的边缘设备,有一个轻量级别的DDS版本,可运行在有限制的嵌入式环境中。DDS数据总线保证超可靠的运行,并且简化了用于程序的编码。它不要求服务,极容易组态和操作,因而消除了故障点和阻塞点。一个基于DDS的系统不存在组件之间的应用编码互动。DDS自动发现和连接正在发布和正在接收的组件,有新的组件(如智能机械)加入系统不必进行组态变更。组件可以自行开发,或由独立的第三方提供。DDS克服了点对点系统存在的问题,诸如缺乏可扩展的性能,缺乏可互操作性,以及逐渐演进发展架构的能力。它具有即插即用的简单性、可扩展性和特别高的实时性能。
由于其灵活性、可靠性以及快速构建复杂系统或实时系统,DDS通常用来进行系统集成和构建自治系统。总之,DDS是一种经过验证的高可靠、高性能的构建大规模跨垂直行业的IIoT软件系统的技术。运用DDS的工业物联网应用包括农田、医院医疗集团、医疗保险、自动驾驶飞机和汽车、铁路、资产跟踪、自动测试、智慧城市、通信、数据中心切换、视频共享、消费电子、石油和天然气开采、广播电视、空中交通控制、航空电子技术、SCADA、机器人以及国防。
已有的DDS网关包括很多联接技术,如DNP3, C37.118, Modbus, HLA, JMS 等等。DDS-Webv1.0规范定义了一种标准的Web服务网关。OMG组织正在开发DDS和OPC UA间的网关标准。OPC基金会正在开发以增加DDS作为附加发布-订阅通信选项为目标的OPC-UA-DDS发布行规。oneM2M正在研究oneM2M与DDS之间共同工作的网关、绑定DDS的oneM2M协议,以及基于DDS的oneM2M实体间的数据直接交换。
没有完整高效的泛在联接性,工业互联网平台就是空中楼阁,中看而不中用。没有数量极其可观的现场数据源(设备、传感器、各类数据采集装置和边缘计算设备等)的有效联接,就不会有实时的数据流动,就不会建立适时和及时的数据流动,工业互联网也就不会产生新的价值流,形成不了新的价值链。
美国工业互联网联盟IIC发布的《工业物联网的联接性框架》白皮书提出了联接性框架层的核心标准的概念,并从众多的标准中选择了DDS、OPC UA、HTTP和oneM2M这4种标准作为核心标准,几乎覆盖了在工业的各个行业泛在联接性的要求。
我国目前掀起了工业互联网的发展热潮,却对作为工业互联网的主要构成—工业物联网IIoT的联接性重视不够,认识不足。当下业界急需补充这一短板,否则后患无穷。