由全球技术社区推动的开源技术正在释放全球工业自动化和工业物联网应用的工程创造力。
Josh Eastburn著,Opto 22
对于许多人来说,开源软件有一种“狂野西部”的形象。专有软件可能被视为古板、昂贵和受限,与之相反,开源软件似乎可以让你以很少或没有成本做任何你想做的事情,提供了终极的技术自由。这两种观点都过于简单化了。然而,开源作为一种非传统解决方案的想法仍然存在。
另一方面,现实是开源无处不在,目前在许多流行和知名的软件应用程序中使用,这些应用程序要么完全开源,要么构建在开源组件之上。
开源技术也正在进入工业自动化和工业物联网应用,不仅仅是取代现有的方法,而是为创造性工程提供了新的选择。这些工业用例属于保守的技术部门,长期以来一直基于专有硬件和软件产品。多年来,这是提供必要的实时确定性性能和可靠性的唯一选择。那么,这种向开源的转变对工业来说意味着什么?它创造了什么样的设计可能性?
定义开源
许多行业和创造者都不遗余力地保护他们所创造的工作产品,无论是智力上的还是有形的。版权、专利、商标、定制部件和加密技术都可能被用来提供法律或物理/电子保护,防止未经许可的重复使用或重新分发给定的作品。
另一方面,开源软件有意地授予用户自由使用、检查、修改和发布软件的权利。通常情况下,唯一的主要限制是归属于原创者,并且任何衍生作品也可以自由分发或开源。
有争议的是,私有软件受益于供应商与市场的关系。从理论上讲,只有在产品表现良好的情况下,他们才能获得并保持付费客户。然而,专有模式对于最终用户来说可能是昂贵的,因为有许可成本,而且他们可能完全依赖于供应商提供相关产品和服务——这一概念称为供应商锁定。
开源软件没有同样的盈利动机,而是以一种协作的方式由用户和开发人员社区的需求指导,通常由专业组织监督。新功能和错误修复还可能包括商业供应商的贡献,这些供应商将这些开源库合并到他们的产品中。供应商随后负责与他们使用的开源组件相关的售后支持。
现实世界中的开源
大多数人都遇到过开源软件,但通常都没有意识到。以下是一些例子:
●Android移动操作系统
●Apache web服务器
●Mozilla Firefox网络浏览器
●Linux操作系统
●MySQL和PostgreSQL数据库管理系统
●Eclipse交互开发环境
这些技术为大部分互联网、智能手机和平板电脑等我们熟悉的移动设备,以及大型强子对撞机(Large Hadron Collider)和国际空间站(International Space Station)等更遥远的系统提供了动力。
此外,还有其他一些开源技术特别适合工业和物联网项目:
●对于通信,iso标准消息队列遥测传输(MQTT)协议及其Sparkplug数据有效载荷规范是用于高效通信的开源解决方案,通常用于物联网。
Node-RED是一个开源的可视化编程工具,用于定义数据连接流,通常与树莓派等物联网设备一起使用。
Secure Shell (SSH)是一种开源方法,用于以安全的方式运行网络服务,即使是在不安全的网络上。
随着工业和物联网的融合,这些技术正出现在更多的工业产品中,如智能传感器和边缘网关。
特定于iiot的开源优势
开源令人兴奋的部分是它打开了新的途径,这可能是因为进入门槛较低,易于互操作性,以及创建这些工具的程序员的广泛人才库。
熟悉的工业应用,如人机界面(HMIs)和监控和数据采集(SCADA)系统,如感应自动化点火,都是建立在开源代码之上的。这使得他们能够提供大量可靠的功能,而不需要自己构建和维护代码库。
开源技术还允许创建最新的一类工业控制器,称为边缘可编程工业控制器(EPICs)(图1)。EPICs可以执行与传统和专有可编程逻辑控制器(plc)相同的任务,同时提供额外的功能,弥合IT(信息技术)和OT(操作技术)之间的差距(图2)。它们还允许用户根据需要进一步定制和扩展功能。
图1:第一个EPIC工业控制器由Opto 22使用通过Yocto项目创建的自定义Linux操作系统构建。图片由Opto 22提供
图2:需要专有硬件和软件的过多中间件层的问题可以用开源EPIC设备解决。图片由Opto 22提供
这种定制是许多工业原始设备制造商(OEMs)的主要吸引力。原始设备制造商通常希望在其产品中整合多种形式的功能,例如整合先进的云网络连接,或者他们可能希望根据用户的特定需求进行调整。oem不必组装许多专有的硬件和软件组件,而是可以试验、定制和嵌入现有的开源库,以提供相同的功能,而不会产生长期维护的开销。
对于最终用户和系统集成商来说,工业自动化系统传统上是作为孤立的岛屿运行的,但是结合it友好的开源元素使这些应用程序更容易连接到现场网络、互联网和云资源,以及找到能够支持这些系统的工程师。它们还受益于较低的拥有成本,因为与开源系统互操作性所需的许多工具都是可自由分发的。就像技术供应商一样,终端用户和si可以灵活地为他们的项目选择最好的工具,这与业界所看到的基于开放工业通信协议(如Modbus/TCP)的产品激增类似。
对于关键任务应用程序,开源准备好了吗?
对于开源技术的使用,无论是在消费者环境中还是在更关键的工业应用中,都有一些担忧是合理的。从安全的角度来看,开源并不是无懈可击的,最近几年影响OpenSSL的Heartbleed安全漏洞就证明了这一点。
当然,专有系统也可能是脆弱的。2019年夏天,Armis Security发布了URGENT/11公告,确定了用于网络设备、医疗设备、工业系统和其他需要实时性能的设备的成熟实时操作系统中的11个零日漏洞。
在这方面,开放资源和封闭资源之间的权衡仍然有待讨论。最好的开源项目所提供的是一个致力于确保软件质量和可靠性的大型社区。谨慎的开发人员将只包含操作所需的组件,因为任何额外的代码都可能为攻击者创建更多的目标。
工业开源在行动
如果开源仅仅是处理工业应用程序的另一种方式,那么就没有那么多理由放弃传统的专有产品。然而,开源组件的额外功能和it友好特性使其成为许多应用程序的强大选择(图3)。以下是用户如何使用开源工具为自己创建高级应用程序的实际示例:
●云集成:
一个拥有叉车车队的用户通过Node-RED集成了他们的电池监测传感器,并将数据传输到Azure云数据库进行进一步分析。
●高级传感:
商业开发人员通过SSH将他们自己的代码嵌入到现成的控制器中,将3D成像传感器与自动化设备集成在一起,为材料储存和回收系统提供可视化和无人操作。
●定制可视化:
另一个有特定数据日志和图形需求的用户能够在他们的HMI中增强这些功能,使用Python从他们的控制器读取数据并生成自定义趋势。
●成本效益高的测井:
用户通过Node-RED和MySQL服务器将I/O信号处理到SCADA,从而简化了他们的数据记录,所有这些都不需要额外的许可证。
●通讯:
一家系统集成商利用现有的网络系统,通过使用Node-RED和MQTT,在远程泵架之间开发了自己的点对点通信解决方案。
●GPS集成:
为了避免使用额外的pc,用户将GPS和接近传感器直接集成到运行。net Core的epic中,为货运车队创建移动定位和位置传感。
图3:开源EPIC设备提供了it友好的功能,如Node-RED、MQTT和简单的移动访问,因此用户可以为自己创建高级应用程序。图片由Opto 22提供。
如果使用传统方法,这些工业自动化和工业物联网应用将是困难的、不切实际的,甚至是不可能实现的。开源是每个应用程序成功的关键部分。
一个工业开源的未来
开源软件已经在任何使用个人电脑、移动设备或互联网的人的日常生活中扮演着重要角色。在企业IT世界中,开源被视为未来。
即使对于专业的工业自动化和工业物联网应用,许多创新产品不仅可以取代plc、hmi和SCADA的现有选项,而且可以积极地使最终用户能够创建新的和以前无法实现的解决方案。
考虑到这些趋势以及人们今天可以使用开源做什么的证据,终端用户有充分的理由期待开源发挥越来越大的作用,即使是在最关键的工业应用程序中。
光电子的22
www.opto22.com
了下:物联网•工业物联网•物联网•工业4.0
