如何引领工业物联网系统的未来

了解在工业物联网领域的每个应用中使用哪些工业物联网连接技术是至关重要的。

通过斯坦·施耐德博士 2017年5月11日

经过两年的工业物联网技术分析,工业互联网联盟(IIC)最近发布了工业互联网连接框架(IICF)。IICF包含了许多专家的见解和强烈意见,包括来自顶级行业联盟、许多公司和最重要的标准的专家。

最令人惊讶的结论是:工业物联网规模很大。真的大了。它是如此之大,以至于技术并没有真正重叠。这种重叠的印象大多只是混淆。

设计人员可以考虑选择任何标准,包括数据分发服务(来自对象管理组的DDS)、OPC统一架构(OPC UA)、MQ遥测传输(MQTT)或oneM2M并取得成功。但这意味着工业物联网连接解决方案空间重叠,如图1所示。

但现实却截然不同。工业物联网涵盖了许多行业,并有非常不同的用例,包括工业控制、机器人、自动驾驶汽车、航空航天、制造业、过程控制、中央发电和分布式可再生能源。这些只是工业物联网领域数百家公司和数千个应用程序中的一小部分。

事实上,工业物联网领域如此之大,以至于技术选项很少重叠。因此,当今工业物联网领域的架构挑战并不是在重叠的技术中进行选择,这些技术可能都能够合理地解决一个问题。挑战在于理解技术,比较应用程序的预期用途,并选择最能解决应用程序面临的特定挑战的技术。当然,夸大一项技术可能会让任何事情都起作用。但这将导致大量的额外工作和次优设计。如果您查看更真实的情况映射,它看起来更像图2中的稀疏维恩图,而不是图1中的重叠维恩图。

工业物联网领域缺乏重叠实际上使架构师的任务简单得多。真正的问题不是在相似的选项之间做选择;而是理解不同的选择,克服偏见。IICF直接解决了这个问题。

如何为工业物联网选择技术

让我们进一步探讨这个过程。你可以针对每一种技术选择问几个问题,然后迅速缩小选择范围。这些问题可能有点过于简化问题,但它们是一个很好的起点。IICF确定了四种潜在的“核心连接标准”DDS、OPC UA、oneM2M和RESTful HTTP。下面对前三种情况进行分析。RESTful HTTP很好理解,所以这里不进行分析。MQTT还因为其广泛的知名度而被研究,尽管它没有资格作为IICF“核心连接标准”,因为它没有互操作性所需的标准类型系统。

DDS

这里有五个问题来决定你是否需要DDS:

1.如果您的系统短时间停止工作,这是一个大问题吗?

2.在过去的两周里,你说过"毫秒"或"微秒"吗?

3.你们有超过10个软件工程师吗?

4.您是否将数据发送到多个地方,而不是一个地方(比如云或数据库)?

5.你正在实施一个新的工业物联网架构吗?

如果五个问题中有三个问题的答案是“是”,则需要使用DDS。

DDS是定义数据的标准。数据是以数据为中心的信息流控制。它与数据库的概念类似,后者是以数据为中心的信息存储。关键的区别是:数据库保存旧信息,可以通过关联存储数据的属性进行搜索。数据库通过输入数据的属性进行过滤来管理将来的信息。两者都理解数据内容,并允许应用程序直接作用于和通过数据,而不是相互作用。使用数据库或数据盘的应用程序与对等应用程序没有直接关系。

通过对数据的结构、内容和需求的了解,可以对数据流进行管理。例如,它可以解决冗余,消除重复更新,并管理多个源、接收器和网络。数据可以控制服务质量(QoS),如更新速率、可靠性和数据活跃度的保证通知。它可以查看更新并优化如何发送它们,或者决定不发送它们。它还可以发现、控制和保护数据流,为应用程序和通用工具提供数据流。这种可访问的数据极大地简化了系统集成和扩展。

这是如何满足这五个问题的呢?

1.由于数据库直接控制流量,因此不需要服务器。所以,没有单点故障。意外地重新启动服务器和重做连接所需的停机时间是不必要的。没有与对等点的直接关系,冗余是透明的。因此,您可以轻松地拥有故障转移应用程序、传感器甚至网络。如果应用程序是管理恒温器或检查冰箱里是否有牛奶,这些事情就不值得了。但是,如果软件负责某人的呼吸,或西部电网的稳定,或未来高速公路上以180英里每小时的速度行驶的碳水碳,即使是短暂的中断也不能容忍。

2.由于数据库完全控制数据的流动方式,它可以直接在对等点之间以毫秒或微秒为单位发送信息。在可用的情况下,DDS可以智能地使用组播。它知道交付期限要求,并且可以度量系统是否满足交付时间。因此,如果网络(或其他任何东西)不能处理所需的流速,它可以警告应用程序。目前在LAN上可用的性能支持具有30微秒传递窗口的反馈循环。这些指标将随着新的实时网络而改进,例如不断发展的IEEE时间敏感网络(TSN)工作。

3.程序员团队必须控制模块之间的接口。数据指定一个完整的数据模型。所有的连接框架都在某种程度上做到了这一点,但是数据规范比其他规范更具表现力。它不仅包括类型信息,还包括QoS,如截止日期、传感器可用性和流量。因此,团队之间的接口不再只是在纸上或头文件中捕获。接口是经过仔细定义的,然后在运行时强制执行。数据库甚至可以管理这些接口的演变,例如,允许使用一个接口的新版本和旧版本的模块进行互操作。这对于实际的大型工业物联网系统至关重要。DDS是一个功能强大的软件集成框架。

4.数据库控制着许多复杂应用程序之间的流。当快速和慢速组件混合在一起时,当仔细的过滤可以使整个流易于管理时,当多个基于字段的组件需要该数据时,当必须保证这些流时,它就会发挥作用。当只是试图捕获传感器信息并将其发送到云端进行分析时,有更简单的解决方案,如MQTT。

5.最后,数据库要求您构建一个真正的新架构。虽然大多数实现都有遗留子系统需要集成,但数据库设计并不适合用于优化现有设计。数据库最适合用于构建新一代或新类型的系统。DDS被用于1000多种设计;大多数都是在构建新的东西,而不是优化旧的东西。

大多数数据系统不需要所有这五个属性。但是,五个中的三个足以使数据库设计真正引人注目。

OPC UA

OPC UA技术以设备互操作性为目标。在OPC UA(或其前身OPC)之前,应用程序只是通过设备供应商提供的专有应用程序接口(api)直接访问设备。不幸的是,这意味着应用程序依赖于它们控制的特定设备。更糟糕的是,诸如人机界面(HMI)之类的高级应用程序没有简单的方法来查找、连接或控制工厂中的各种设备。

OPC UA将系统软件分为客户端和服务器。服务器通常位于设备或更高级别的可编程逻辑控制器(PLC)上。它们提供了一种通过标准“设备模型”访问设备的方法。从传感器到反馈控制器,有几十种设备类型的标准设备模型。每个制造商都负责提供将通用设备模型映射到其特定设备的服务器。服务器公开了一个实现设备模型的面向对象的、可远程调用的API。

客户端可以连接到设备并调用通用设备模型中的函数。因此,客户端软件独立于实际设备,工厂集成商可以根据需要自由切换制造商或型号。因此,OPC UA提供了驱动系统所需的连通性。注意,设备模型还提供了一定级别的“语义”互操作性,因为设备模型在已知的单元和指定的参考点中定义了通用对象api。

通过回答以下问题确定是否应使用OPC UA:

1.你从事离散制造业吗?

2.你正在建造一个由工业工程师或技术人员而不是软件工程师来集成的设备吗?

3.您的产品是否用于不同系统中的不同应用程序,而不是您控制体系结构的一种(类型)系统?

4.你最近两周有没有说过"工作细胞"这个词?

如果这些问题的答案大部分是“是”,那么OPC UA可能是一个不错的选择。为什么?让我们看看技术是如何适应这些用例指示器的:

1.OPC UA适合于离散制造。德国的“工业4.0”倡议推荐了这种做法。工业4.0非常专注于制造业,相比之下,IIC致力于跨垂直行业的工业物联网技术系统架构。简而言之,工业4.0指的是制造东西,而IIC指的是让东西运转起来。这是空间之大的另一个很好的例子。在市场上,DDS在离散制造领域应用较少,OPC UA在外部应用较少。

2.OPC UA是一种软件架构。然而,那些使用和选择它的用户通常不是软件工程师。事实上,它在制造业中受欢迎的原因之一是制造业中很少有软件工程师。制造业中的系统集成通常是在设备之间完成的,而不是软件模块之间。OPC UA有非常有用的设备模型,有助于设备制造商之间的互操作性。它不是为程序员团队设计的强大的软件集成环境。

3.OPC UA有一个强大的系统发现机制,称为“地址空间”。它在运行时构建了一个覆盖所有设备和子系统的对象层次结构。例如,可以将其汇总到站点范围内的服务器,并将系统连接到站点HMI。这种动态系统构建对于提供类似的功能非常有用,例如历史记录存储或HMI查看非常不同的应用程序。当您的用户控制系统设计,而不是您控制系统设计时,这是合适的。另一方面,需要定义系统架构的软件架构师可能会因为缺乏系统建模和数据交换的简单“窥探和戳戳”风格而感到受到限制。

4.大多数OPC UA系统最终都在工作单元中完成。工作单元是一个独立的子系统,通常包含20个左右的设备。OPC UA,特别是支持它的工业集成软件,以工作单元集成为目标。地址模型和面向对象的性质直接支持这些工作单元的层次结构。其他标准的用户很少将他们的用例描述为“工作单元”。

OneM2M

要确定是否应该使用em2m,请考虑以下问题:

1.你知道“ICT”代表什么吗?它描述了你的工作吗?

2.蜂窝网络是你们的主要连接技术吗?

3.您的目标应用程序主要由活动部件组成吗?

4.系统的组件能否容忍间歇性连接和控制松散的延迟?

5.系统是否会利用通信提供商(如电话公司)提供的服务?

这些问题在性质上不同于关于以前技术的问题。OneM2M是众多移动无线供应商合作的结果。它的目标是移动设备网络,这些网络主要或仅通过基站基础设施进行通信。

以下几点分析了为什么这些问题包含oneM2M:

1.令人惊讶的是,大多数DDS和OPC UA的目标用户甚至不能正确地将行业名称定义为信息和通信技术(ICT)。当然,两者之间存在重叠。但是,如果你认为自己在ICT行业,那么你需要考虑一个em2m,因为它是为该行业设计的。

2.oneM2M的核心设计是定义移动设备可用于协作和集成的服务。如果您打算使用这些服务,简单地说,您需要连接到它们。它们将运行在主要通过蜂窝数据基础设施连接的平台层(云)中。其他技术也使用蜂窝网络上的IP流量,但它们通常也在设计中大量利用LAN、本地无线或WAN网络技术。

3.制造单元等固定资产的5G无线集成有潜在的未来市场。然而,这项技术还需要很多年才能实现。OneM2M在移动资产方面表现出色。一个特别强大的方面是,oneM2M将这些设备的协议差异抽象出来。因此,它可以集成不同的方式来连接到类似的设备。

4.无线、移动系统连接不可靠。因此,当通信离线几秒钟或几分钟时,应用程序不能失败。

5.OneM2M系统设计人员在他们的设计中假设云。它们充分利用了“三层”架构。同样,oneM2M的核心是标准服务层。如果你不使用电话公司或其合作伙伴,你就不能使用这些服务。

MQTT

MQTT是一个简单的协议,主要是为“数据收集”用例设计的。根据IICF指南,它没有资格作为“核心连接标准”,因为它没有标准类型系统。因此,它只能通信不透明的数据类型,而不能通信类型化的数据结构。如果没有类型系统,它就不能提供在“语法”数据结构级别上进行互操作的标准能力。

尽管如此,MQTT还是得到了广泛的关注。因为它的简单性,关于你的系统的简单问题将有助于确定它是否合适:

1.您认为您的应用程序是数据集合吗?

2.设备之间的通信很少吗?

3.互操作性不是一个考虑因素吗?

4.你有很多小设备吗?

5.软件是个小挑战吗?

同样,如果其中三个问题的答案是肯定的,那么考虑MQTT。原因如下:

1.MQTT中的第一个“T”代表“遥测”,或远距离数据收集。这是它的主要用例。

2.MQTT被设计为轮辐式设计。它不支持直接的设备间通信,因此很难开发出必须这样做的代码。

3.如果没有类型系统,MQTT应用程序就不能与任何其他应用程序互操作。构建互操作性的唯一方法是在标准之外共享类型。大多数MQTT应用程序都是独立的系统。

4.MQTT是目前考虑的最简单的技术。如果您有许多简单连接的小设备,那么简单的软件就可以解决您的挑战。

5.另一方面,MQTT在简化软件开发方面几乎没有提供任何东西。只有一个QoS设置(可靠性)。它没有已定义的服务。它不提供数据或设备建模。所有的软件都必须从头开始编写,这只适用于简单的软件挑战。

一起工作

IICT的大部分工作致力于集成这些技术的体系结构。这对于工业物联网“互联网”部分的出现至关重要。参考体系结构需要核心连接标准之间基于标准的核心网关,如图3所示。

总有一天,会有集成,比如与交通和电力集成的制造系统。先进的自动化软件将重新配置工作单元,为组件设备供应商创造一个大胆的新世界。无线5G系统将与高速公路控制器和自动驾驶车辆互操作。无线5G甚至可以直接控制工厂设备,消除制造过程中的布线。

然而,设计师应该考虑空间的广阔。如今,在连接系统之间架起跨越光年的桥梁的具体需求很少。这并不意味着该行业没有对这种明显的需求做出回应。例如,最近在IIC测试平台上的演示显示了DDS和OPC UA之间的桥梁。从长远来看,这些集成将允许更大的系统组合技术。目前,设计人员必须了解技术之间的巨大差异,并选择最适合他们的问题空间的技术。

斯坦·施耐德他是Real-Time Innovations公司的首席执行官,也是工业互联网联盟指导委员会成员。由内容副经理艾米丽·冈瑟编辑,控制工程, CFE传媒,eguenther@cfemedia.com

更多的建议

关键概念

理解工业物联网空间和工业物联网系统。

确定为每个应用程序/项目使用哪种技术。

如何为工业物联网领域选择正确的技术。

考虑一下这个

一旦合适在工业领域实现真正的工业物联网解决方案的下一步是什么?