“软件正在吞噬世界,所有过去特定硬件实现的功能,现在都会通过软件实现”,传统封闭的工业控制系统,其通过特定硬件实现的功能在工业互联网或工业4.0时代都将被软件所取代。
目录
零、前言... 2
壹、工业控制系统的核心PLC. 3
贰、工业控制系统发展趋势... 6
叁、PLC的虚拟化和软件定义... 11
零、前言
互联网是一个颇具颠覆性和侵略性的思想和体系,从它的诞生之日起短短十多年时间,就跨界打击多个行业并取得巨大成功。总结起来,互联网的核心思想就是规模经济,以规模形成经济效应,即在初始阶段,进行大规模的资本投资,提供满足基本需求的产品,大规模的发展客户,以求达到规模经济性。并在达到一定规模后就开始多元化批量复制这种规模经济,形成多元化的规模发展。因为互联网每新增加一种产品的存储、营销等成本可以趋近于零,所以互联网的这种特质决定了其针对各个行业必然具有天然的侵略性和颠覆性。
在互联网向工业控制系统领域逐渐***之后,诞生了工业互联网、工业4.0以及工业物联网等市场营销概念和体系。这些概念喧嚣尘上,一时满城风雨。喧嚣之后可能归于沉寂,然而来自互联网的***已不可阻挡。
天下大势,浩浩荡荡,顺之者昌,逆之者亡。作为工业控制系统从业者,我们应该抛开市场营销的概念迷雾,去追寻互联网概念下工业控制系统的技术变革。在这样的变革时代,工业4.0、智能工厂、工业互联网等倡导的理念及其技术的实现将不得不在短时间内重新配置,因此需要重新灵活配置工业控制系统的核心设备PLC。如何来灵活配置PLC成为工业互联网真正实现工业互联的的背后支撑。因此本文从这样的角度出发,描述了在工业互联网时代,工业互联网的背后核心技术。
壹、工业控制系统的核心PLC
可编程逻辑控制器,英文称Programmable Logic Controllers,简称PLC(本文在后续一律简称PLC)是带有模块化组件的小型工业计算机,旨在自动化定制控制过程。我理解的控制过程就是通过程序对物理设备进行控制的过程,而这个程序就是通过逻辑表达的形式实现的(梯形图或其他PLC编程语言)。在PLC内部,将真实物理设备通过一个符号或字符串进行逻辑表示,因此编写的程序就是对这些逻辑进行编程和组合、循序控制的过程。这个控制过程是可编程的,可自定义的。因此称之为可编程逻辑控制器(PLC)。
PLC一直在发展中,至今尚未对其下最后的定义。国际电工学会(IEC)曾先后于1982年11月、1985年1月和1987年2月发布了PLC标准草案的第一,二,三稿。在第三稿中,对PLC作了如下定义:可编程逻辑控制器(PLC)是一种数字运算操作电子系统,专为在工业环境下应用而设计。它采用了可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。可编程逻辑控制器(PLC)及其有关的外围设备,都应按易于与工业控制系统形成一个整体、易于扩充其功能的原则设计。
在工业控制系统领域内,工业生产环境的物理机器和生产线通常由硬件PLC控制,这也被认为是当前最优化的解决方案并以此驱动工业自动化进程多年。为了更好地理解PLC的目的,让我们看一下PLC的简史。
工业自动化在PLC之前就已经开始了。在20世纪早期到中期,工业自动化通常使用复杂的机电式继电器电路来实现。机电继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。但是,通过继电器这种架构制造简单的自动化所需的继电器、导线和空间的数量都存在很多问题。一个简单的工厂控制过程的实现就需要成千上万的继电器!如果逻辑电路中有什么东西需要更改的话,那更是灾难性的。
1968年,第一台可编程逻辑控制器(PLC)问世,取代了工业生产中复杂的继电器电路实现的工业自动化控制。最开始提出明确想法的是美国通用公司。在1968年的时候他们想要一台可以取代继电器控制的装置。次年,美国数字设备公司为通用公司研制出了第一台可编程控制器PDP-14,并且试用成功,这就是世界上第一台PLC。到70年代后期,PLC开始进入快速发展阶段,运行速度快速提升,小型化也有实质性的进步。80年代初开始在西方国家广泛应用,并快速成长,那段时间可谓是PLC的黄金时期。之后又发展了大型机和超小型机。到21世纪,PLC规模不断扩大,I/O点数增加,多CPU并行工作,大容量存储,高速扫描等,模块化、标准化成为主流,成本大幅度缩减,应用更加广泛。
PLC的设计可以让熟悉继电器逻辑和控制原理图的控制工程师和技术人员能够轻松编程。其中最初始的实现就是梯形图逻辑,该逻辑被设计用来模拟控制电路原理图。梯形图看起来像是控制电路,其中电力从左到右通过闭合触点来激励继电器线圈。如下图1所示:
图1--梯形图逻辑示例
上图的梯形图看起来像简单的控制电路原理图,左侧显示开关、按钮、传感器等输入源,右侧显示输出源。通过这样的梯形逻辑等直观的界面编程来实现复杂的自动化过程,比使用之前的继电器更加便捷高效,而且过渡到PLC的学习成本也降至最低。PLC是微机技术与传统的继电接触控制技术相结合的产物,它克服了继电接触控制系统中的机械触点的接线复杂、可靠性低、功耗高、通用性和灵活性差的缺点,充分利用了微处理器的优点,又照顾到现场电气操作维修人员的技能与习惯,特别是PLC的程序编制,不需要专门的计算机编程语言知识,而是采用了一套以继电器梯形图为基础的简单指令形式,使用户程序编制形象、直观、方便易学;调试与查错也都很方便。用户在购到所需的PLC后,只需按说明书的提示,做少量的接线和简易的用户程序编制工作,就可灵活方便地将PLC应用于生产实践。
而基于这样的梯形图逻辑进行编程,只需要根据现场工厂环境的的生产流程对照编程梯形图逻辑即可,从而实现控制过程的可编程性。这个可编程逻辑控制器(PLC)虽然是可编程的,但是和现今热炒的软件定义还是有一些区别,主要在于可编程逻辑控制器(PLC)的可编程性具有一定的限制条件。即每台可编程逻辑控制器(PLC)对其进行编程,都需要特定的编程软件将程序实现之后,通过和可编程逻辑控制器(PLC)通讯来实施最终的控制过程程序的上载。可编程逻辑控制器(PLC)介于传统硬件设备和软件定义之间,实现了数据平面的可编程性,但是控制平面并没有抽离出来实现统一集中控制。
PLC是为了应对机电继电器复杂的机器控制而开发的。目的是开发更灵活的控制系统,减少机器停机时间,并用这种新设备执行逻辑功能。从PLC开发出来到现在,确实也达到了最初设计和开发的目的。PLC已经在工业自动化领域默默奉献了有几十年的历史,即使在对安全至关重要的应用中,它们也已经实现了对机器进行控制的可靠性。以至于几乎所有的现代工业自动化的控制器都是由PLC实现,在工业环境下,PLC几乎无所不能。
贰、工业控制系统发展趋势
第一次工业革命发生于18世纪到19世纪,通过创造新的制造工艺改进了生产流程从而促进了社会的进步。当时的制造业主要依赖于手工进行商品的生产,而诞生于英国的第一次工业革命改变了这种状况,使得机器制造业能够更好地利用水和蒸汽动力促进生产力提升。而这些改进的创新思想和体系在第二次、第三次工业革命中自然也起了很大的作用。正在进行的工业革命是第四次工业革命,也被称为工业4.0(德国提出)或工业互联网(美国提出)。工业4.0的基本概念与其他工业革命相同:通过改进业务流程和制造工艺,减少生产时间,降低生产材料成本,减少制造缺陷产品的数量,并通过创造能够代替人工作的机器来使工业制造更容易。
工业4.0或工业互联网是正在进行的工业革命的术语。它最初是指制造业的数字化,但实际上也指医疗、物流、石油和天然气等其他行业的数字化。也指我们经常听到的有关智能工厂,智能城市或智能设备的概念。工业4.0是关于物联网(IoT),网络物理系统(CPS),信息技术(IT)和操作技术(OT)的融合,其中,变革首先从信息技术领域引发,云计算,机器学习和大数据等IT技术引导现代信息企业采用新的业务模式,改进自身业务流程和运营效率,提升企业核心竞争力。而这些IT新技术的发展解决了互联网企业和传统企业共同的一个诉求,即解决规模不断扩张、业务快速变化的挑战,同时还有效控制成本。在传统企业中,其他类型的企业愿意通过在早期阶段部署新技术来承担风险,而工业企业可能会更谨慎。由于工业环境的特殊性,工业企业的这个诉求是否能够借鉴互联网企业的成功还是一个未知数。为了克服这个门槛,这个行业需要创新,因此类似工业4.0等概念和体系的兴起,目的就是为了进行大量的研究、测试和实施这些技术变革引导到工业企业中。
关于实践的最新进展情况,我们通过分析传统的自动化金字塔模型来进行说明。传统的自动化金字塔(图2)代表了当今工业控制系统领域的一个典型模型。从传感器到执行器的所有物理设备都处于现场级,用于控制这些现场级物理设备的数据和动作处于第二级,第二级通过使用PLC等物理硬件来控制现场级的物理硬件。第三个级别是一个数据采集和监控级别,允许用户通过SCADA系统监视和控制他们的工业控制过程。SCADA是数据采集与监视控制系统的缩写,典型的SCADA架构包括传统自动化金字塔的前三个级别。MES和ERP系统则在SCADA架构之上。MES代表制造执行系统,它是指实时监控制造数据的系统。MES系统可以跟踪整个生产过程的货物情况。企业资源规划(ERP)系统提供了自动化金字塔的最高级别。ERP系统管理核心业务流程的实时监控,如生产或产品计划,物料管理和财务情况等。
图2--传统的自动化金字塔
工业4.0和网络物理系统到来后,传统的基于该金字塔模型的工业控制系统架构正在发生变化。首先在最顶层的ERP和MES就逐渐实现互联和融合,实现了生产数据的上层联动,并最终利用云计算、大数据乃至人工智能的数据存储和运算的优势将生产数据进行深度挖掘和加工,并最终输出优化的生产数据用于提高生产效率。而在下层的生产执行层设备和系统,则也处于智能和重构阶段,比如最终生产数据的终端以及产生变化,包括人们身穿的跑鞋、智能工厂里面的智能生产线,这些从传感器到执行器的所有物理设备已经在向数字化、智能化方向发展并且已经取得成绩。因此可以发现,在工业互联网或工业40时代,工业控制系统最终的体系变革是将传统的金字塔模型从两端进行变革。准确一点来说,工业互联网侧重的是上层生产数据的技术变革,即工业控制系统和云计算、大数据、人工智能等的融合,提倡将工业控制系统的数据上载到工业云上,利用云进行数据挖掘和分析从而优化生产的过程。所以在现在的工业互联网架构实现上,其体系架构实现要么是工业互联网平台直接和PLC设备直接采集PLC上的生产数据,要么是工业互联网平台采集工业控制系统的实时数据库中的数据,要么就是开发出一个数据采集网关,通过数据采集网关将所有数据全部采集后,网关再将数据上传至工业互联网平台。所以工业互联网本质上来说就是一个将工业控制系统数据全部汇聚到一个云计算平台上。工业4.0则侧重于实现底层从传感器到执行器的所有物理设备的数字化和智能化,并且实现这些终端设备直接将该数据上传。上传的平台可能是MES,历史数据库也可能是工业互联网平台。对大多数企业来说,工业4.0首先要实现的第一步就是通过MES系统对生产系统所有相关子系统进行垂直整合和数字化,以实现实时的工厂运营透明度。同时横向整合还包括功能区的连接。在此MES起到了信息转盘的核心元素功能,对大数据进行收集、分析、处理以及为支持其他系统数据交换。
在自动化控制诞生之前,系统和机器的生产必须依靠手工进行操作。而自动化所带来的好处是,将那些需要重复操作的环节利用自动化控制实现,解放了人的双手并实现了诸多优势--从缩短上市时间到减少故障产品均能够很好表现自动化控制的优点。尽管如此,随着市场需求的不断增长,人们还是嫌弃现有的自动化控制无法满足生产效率的需求,而实质也是这样。人们需要更多的灵活性来保障快速的产品生产上市销售,灵活性是现在工业自动化的关键和重点。这些灵活性表现在:越来越多的工厂数据应该是可复用的,逻辑代码应该是易于移动和可重用的,系统应该是模块化和可扩展的,生产企业应该根据自己的需求选择他们的优选供应商而不是现在的绑定销售等等。
工业互联网和工业4.0的这些实现支持了未来工业控制系统灵活性和可扩展性的需求。工业互联网使得我们的生产数据可以进行规模化集中存储,实现以前不可能实现的大数据,并利用云计算平台前所未有的计算能力对这些大数据进行分析,挖掘和优化生产效率。工业4.0使得现场设备、机器和工厂已经变得“更智能”,所以我们可以谈论智能设备、智能机器和智能工厂。但是,我们会发现,无论是工业互联网还是工业4.0,均未对工业控制系统的的“大脑”PLC做出任何更进一步的技术变革。这种两头重中间轻的现象,就好比是高速路上的收费站,光高速路扩宽远远不能够实现更大的汽车吞吐,矗立与高速路上的各个收费站才是这条路上的瓶颈点。因此现在针对收费站都需要设置更多收费窗口、实现电子收费等等举措改革而适应高速快速增长的车流。适用于工业控制系统领域也是一样,控制的核心PLC设备不能够灵活扩展,无疑这一限制将会大大减弱工业控制系统灵活性和可扩展性。
因此目前业界针对工业互联网、工业4.0等的技术体系探索,重点将围绕PLC展开。
具体来说实现PLC灵活性和可扩展性的方案主要有以下两种:
1、实现PLC虚拟化。利用PLC虚拟化是虚拟PLC(vPLC)取代传统硬件PLC;
2、PLC硬件重构,实现下一代新型和智能的PLC设备,取代传统硬件PLC。
这两种技术是目前工业向互联网转化的技术热点和研究方向,至少从理论实现的角度上来说,实现PLC虚拟化将最大程度的保障现有的大部分厂家及其用户的现有利益,并且基于信息系统的成功案例,使得大家对其实现信心满满。另外的PLC硬件重构,主要以软件定义思想为核心,将PLC硬件的逻辑运算平面和逻辑控制平面进行分离,PLC硬件将实现通用的逻辑运算,统一由控制器进行控制平面的逻辑控制和逻辑管理。
叁、PLC的虚拟化和软件定义
虚拟化和云计算在ICT领域取得巨大成功,其创新程度甚至颠覆了整个ICT旧有的架构体系,从里到外全部翻了一遍。其效果也是相当显著,至少将现在的ICT环境的运营成本利用虚拟化和云计算技术已经显著降低,至于降低多少,降低到什么程度,我相信这是一个众口难调的数字。但是至少使用虚拟化和云计算的企业,已经享受了其带来的好处,并且当前虚拟化和云计算技术已经成为办公室和企业界最先进的解决方案。但是在工业应用中部署这些技术和解决方案并不容易,因为在工业环境中,要求通常很高,系统故障、实时性等对工业生产和应用来说是至关重要的。而工业互联网和工业4.0旧是着手于解决虚拟化和云计算等先进IT创新技术运用于工业领域并提高工业生产效率的变革和技术实现。在工业互联网和工业4.0的实践当中,工业互联网和工业4.0技术在当前来说,是否已经如此发达和可靠,以至于它们可以在需要满足稳定性和实时计算等较高要求的工业控制环境中使用,这是值得怀疑的。但是从一些公开发表的案例和统计数据来看,制造商已经开始从工业互联网和工业4.0技术中受益,这些受益的部分主要是利用工业互联网或工业4.0技术,他们可以使用实时生产数据来帮助更有效地规划生产过程,从而提高生产效率和降低运营成本。这些案例的成功使得人们在备受鼓舞的同时,积极投入成本研发下一步的技术解决方案和完善当前技术实现。在当前,类似西门子等工控设备厂商和从事IT领域的虚拟化云计算厂商均将目光投入到尝试虚拟化控制平面上面,使用软件而不是物理硬件来降低运营成本,并拥有更加灵活的控制环境。PLC虚拟化或软件定义的PLC,换句话说,使用虚拟PLC(vPLC)或软件定义的PLC是他们下一步研究和实现的目标。至少从目前的技术实现和研究方向上以及IT的成功经验上看,大势是如此的。
PLC虚拟化或软件定义的PLC,其技术思想都是将传统专用的硬件功能解耦。因为在工业互联网或工业4.0时代,工厂车间中具有更高级别应用程序的机器的数据集成主要是使用传统协议完成的,而传统协议缺乏对新设备灵活集成的支持。两者之间总是存在着矛盾,如何解决这种矛盾?只能在这两者之间引入一个中间层,通过虚拟化PLC控制器或软件定义PLC将控制逻辑与机器分离,可以获得更灵活的重新配置。
PLC虚拟化或软件定义PLC通过允许用户更换或添加组件而不影响系统的其他部分,实现轻松的可扩展性和系统模块化。PLC虚拟化或软件定义PLC设计为开放平台,允许用户选择首选组件和解决方案,这意味着用户可以灵活地选择不同的供应商(无供应商锁定)。在工业3.0系统中,在同一个体系结构中使用多个供应商的组件并不那么容易,或者根本不可能。PLC虚拟化或软件定义PLC中通常没有硬件依赖性,所以很容易迁移和重用软件。PLC虚拟化或软件定义PLC使用虚拟化或软件定义技术,使用更多的软件而不是硬件,因为所需的硬件数量较少,所以降低了成本,缩小了占用空间。目标是提供现成的和可供销售的COTS(COTS =商业现成的)软件/硬件产品以实现整体解决方案的灵活选择和可扩展性。虚拟化技术和软件定义的体系结构是以软件为中心的模式,在系统集中管理、网络处理和安全性方面具有优势。远程监控降低了运营成本,而维护工程师或操作员并不总是需要现场检查机器的状态。集中管理简化了远程监控,因为只需访问一个软件平台即可管理您的资产。通过云计算和使用智能传感器(包括通信能力和板载诊断的传感器),机器数据被推送到云端,数据可以通过用户界面(HMI)访问。机器数据可以用于预测性维护,这意味着机器数据可以用来预估机器即将发生故障的时间。
PLC虚拟化在这里并非是指软件PLC(SoftPLC)或安装虚拟机里面的软件PLC,而是指将PLC执行环境与I/O模块解耦,并将PLC执行环境标准化、模块化、虚拟化的实现。而软件定义则是将PLC的逻辑抽象出来,利用软件定义网络的实现思路,通过一个应用程序商店的方式实现针对PLC执行动作的程序开发和管理,让应用程序定义硬件PLC的功能。也就是将PLC的逻辑控制、程序存储和IO模块分离,利用应用程序实现逻辑控制部分。
工业互联网或工业4.0在实现PLC虚拟化或软件定义的PLC时,均使用到了以下技术:
l 基于管理程序或容器的虚拟化
l 软件定义网络(SDN)
l 网络功能虚拟化(NFV)等
PLC虚拟化典型的架构实现在学术界和工业界比较典型的架构和描述是:
图3 PLC虚拟化架构
在PLC虚拟化中,PLC I/O总线被高速网络功能所取代,SDN允许在I/O结构上创建灵活的虚拟通道,以适应vPLC实例和I/O模块之间的连接流,例如传感器接口或运行控制器,并且基于SDN的控制可以提供灵活的业务隔离。此外,由于近年来在现场可编程门阵列(FPGA)和专用集成电路(ASIC)技术方面的进展,这种I/O模块可以使用FPGA或ASIC模块以更低的复杂度来构建。在这种架构中,SDN重新配置是通过SDN控制器经由与其北向接×××互的高可用性(HA)服务器(图中未示出)来管理的。HA服务器连续监视SDN交换机统计信息和路径可达性,在性能下降或故障的情况下触发重新配置过程。
这种PLC虚拟化架构的实现主要考虑的网络因素是,这种分散式模型与远程或分布式I/O PLC拓扑具有相似之处,其中网络I/O模块充当PLC机架的扩展。在直通交换中的进步以及远程直接存储器访问技术(RDMA)中,特别是在融合以太网情形中,已经允许在10G以太网交换结构中端口到端口的延迟缩小到百分之几纳秒以及应用延迟缩小到微秒级。此外,诸如英特尔的数据平面开发工具包(DPDK)、思科的VPP等资源允许实现绕过内核的低延迟、高吞吐量数据包处理机制,将网络堆栈带入用户空间,并使适配器能够执行直接内存访问操作到应用程序内存。这使得满足在以数微秒的单位时间内,传输的抖动和闪断的要求成为可能,从而允许在商用服务器硬件上实现裸机性能。
这种PLC虚拟化架构的实现主要考虑的计算因素是,首先,由于采用了硬件辅助虚拟化等技术使得服务器近乎利用原始性能,低延迟I/O机制或适用于数字信号处理任务的ISA扩展的可用性的提高,现代x86或ARM处理器已经能够替代独立PLC应用中的微控制器。其次,诸如Jailhouse(西门子),Xtratum、PikeOS等实时静态分区管理程序的可用性支持为实时工作负载托管RTOS客户VM。即在计算方面,PLC虚拟化主要考虑实时性、安全性和性能要求。在针对PLC虚拟化上,其运行的实时静态分区管理程序,在考虑工业控制系统的这些特性上,其虚拟化管理程序设计需要同时考虑一下几种模式的混合:
1、完全虚拟化模式,其中操作系统完全未经修改在安全分区中运行。在此模式下,虚拟化管理程序确保其中运行的操作系统不会以任何方式损害或影响并行运行的其他操作系统,并且其上运行的操作系统不经任何修改即可运行在虚拟化管理程序上。但是,这是以牺牲轻微的性能损失为代价的。这种模式主要运行与实时性不强的工业应用或企业应用。
2、半虚拟化模式,为了保证实时代码或实时操作系统的硬实时性和稳定性,虚拟机管理程序还具有称为“特权模式或半虚拟化”的部署模式。在特权模式或半虚拟化模式下,操作系统保留完整的硬件访问权限并使用虚拟机管理程序提供的半虚拟化接口。这允许操作系统以原生速度运行,而不需要虚拟机管理程序添加任何延迟。
3、即在工业控制系统环境中,其设计的虚拟化管理程序必须是具有半虚拟化特征的虚拟化管理程序,所以在物联网或工业互联网时代,Xen具有的先天优势又开始远远领先与其他虚拟化管理程序。
在查看了目前国外厂家的工业控制系统虚拟化管理程序的设计后,其典型的情况大都是使用完全虚拟化模式和半虚拟化模式的混合,其中一些实例运行监控级功能,另一些实例运行硬实时控制功能。半虚拟化模式或特权模式不会引入任何延迟,因此使其适用于实时性应用程序。操作系统之间的通信通过虚拟网络或SDN网络、共享内存来实现。
而软件定义架构的PLC更强调的是一种体系,一种实现思想。即和软件定义网络、软件定义世界一样,PLC设备的智能化和标准化的体现就是典型的软件定义的PLC,包括PLC轻松连接至互联网;将APP和分析结果嵌入机器和云,实现智能化和自我意识;无需更换PLC硬件即可改变和升级PLC设备功能,为用户提供智能,实现持续改进;通过API和生态系统扩大工业互联网平台应用。
一个典型的实现架构是:首先具有一台工业机器,可以用来测试整个生产过程。这台机器可以看作是一套可以通过OT控制协议控制的输入和输出。这是理想的实时协议,因为它确保消息在一定的时间窗内到达。然后开发一个雾计算或边缘计算层,通过工业控制协议在运行时间内与机器进行通信。其运行时会将读取的数据从机器发送到虚拟PLC,然后将PLC的输出返回给机器。如下图4所示:
图4 软件定义架构下的PLC实现
国外根据这个技术框架测试的技术方案实现,
图5 技术方案
该技术方案选择了将Raspberry Pi与UniPi扩展板结合模拟工业机器,UniPi扩展板为Raspberry Pi提供数字输入和继电器控制,使用CODESYS控制软件,这些输入和输出被映射到Modbus寄存器,并最终由上层通过工业控制协议Modbus来实现工业控制操作。然后在边缘层或雾计算层,使用OpenPLC充当逻辑控制器,OpenPLC是一个标准化的软件PLC,可以运行结构化文本(ST)程序。OpenPLC包含一个Web服务器,通过它可以将我们的PLC程序上传到PLC中运行。模拟工业机器与PLC之间的通信通过Modbus完成。最后是PLC需要实现与工业云连接,这一步通过Node-RED工具实现和OpenPLC的结合。Node-RED是一个基于流量的物联网工具。它可以连接不同的设备、API和其他服务。在边缘层或雾计算层中,通过Node-RED将PLC和OPC UA协议服务器连接起来实现通信,并在云端安装OPC UA客户端实现边缘层或雾计算层与云端的通讯工作。
边缘层或雾计算层使用Node-RED作为运行时,OpenPLC作为虚拟PLC。 Modbus消息可以使用外部包发送和接收。机器的输入通过Modbus节点读入并通过另一个Modbus节点发送给虚拟PLC。虚拟PLC处理这些数据并将结果写入其内部的Modbus寄存器。然后Node-RED对PLC的输出进行轮询,并将结果发送回机器。在OPC UA节点的帮助下,可以将数据发送到OPC UA服务器,或者可以在运行时间内托管自己的服务器。然后,IT系统或云端可以通过这个OPC UA协议以统一的方式查阅所有数据。
这只是一个基于框架实现的一个最简单的例子,也是最终实现比较理解的例子,PLC的虚拟化和软件定义后,针对下层IO解耦,将实现工业控制系统的最大灵活性和可扩展性,此外还有诸多好处。而在实现这个的图中,目前已有的工业云平台均以兼容传统PLC架构的模式在运行。举例来说,西门子公司的MindSphere工业云平台,该平台采用基于云的开放物联网架构,可以将传感器、控制器以及各种信息系统收集的工业现场设备数据,通过安全通道实时传输到云端,并在云端为企业提供大数据分析挖掘、工业 APP 开发以及智能应用增值等服务。其架构如下图所示:
图6 MindSphere工业云平台架构
MindSphere 平台包括边缘连接层、开发运营层,应用服务层 三个层级。主要包括 MindConnect、MindClound、MindApps 三个核心要素,其中,MindConnect 负责将数据传输到云平台, MindClound 为用户提供数据分析,应用开发环境及应用开发工具,MindApps 为用户提供集成行业经验和数据分析结果的工业智能应用。
在MindConnect层中,目前主要兼容的还是去采集现场PLC或历史数据库的数据,直接连接到PLC或历史数据库上进行数据采集,或者通过数据采集网关进行数据采集,均以兼容传统架构的方式运行。
这种模式或技术解决方案我们可以称为工业互联网的第一阶段,要实现真正意义上工业互联网或工业4.0所构建的蓝图,仅仅将数据采集上来进行大数据分析、预测、优化等还不够,我们还需要设备本身拥有智能计算、智能处理的能力。而这些优化和计算的能力针对终端来说,可能智能设备本身的计算能力即可满足,但是在真正的工业生产过程中,最终的控制过程还需要PLC来进行控制,PLC的智能计算、智能处理必须具有软件定义的能力,只有通过软件定义的PLC,才能够通过上层的数据分析、预测和优化之后,根据应用功能优化和调整PLC控制程序,实现工业生产的效率提升,同时也避免了人员的繁琐调试等,提高运营成本。而现有的云平台还无法做到直达底层的优化×××定义,因此只有在打通关键核心控制设备PLC后,才能够打通工业互联网的第二阶段。
工业互联网、工业4.0、中国制造2025本质都是互联网深度参与到工业生产中,从而将生产力提升到一个全新的高度。过去10年是消费者互联网的10 年。上一波互联网浪潮中,互联网在全球连接起数十亿人,同时也造就了Google、亚马逊这样的互联网巨头。互联网在流通、消费、零售、沟通行业的高潮已经有目共睹,互联网在工业生产的领域的浪潮。据通讯巨头思科公司估计,到2020年,互联网会造就150亿至500亿的连接设备,同时还包括人与物、物与物的连接,是传统互联网时代的连接人数的几倍甚至更多。
未来已来,愿日生不殆。