发表于 1648117039000
1.工业自动化发展现状及趋势
1.1 技术现状
企业运营管理和生产制造过程中存在两大技术体系——IT技术和OT技术。IT即信息技术(Information Technology),主要指用于管理和处理信息所采用的各种计算机、通信等技术的总称。OT即运营技术(Operation Technology),主要指在生产制造过程中采用的机械工程技术、电子技术、自动化技术、管理科学技术、信息技术等多种技术的总称。工业自动化是OT技术领域的一个重要技术内容。
传统工业自动化系统均基于上世纪70、80年代形成的原理而开发,对实时控制进行了高度优化,可以满足离散制造业和流程工业的不同控制应用需求。然而,这些工业自动化系统是相对封闭的,整个系统以硬件为中心且局限于专用的生态环境,编程软件与控制器等硬件设备是“绑定”的,不同供应商的产品互不兼容。同时,工业自动化系统并没有设计成与IT技术方便连接,也缺乏相应工具。用户(包括系统集成商)每次都不得不依照具体要求进行大工作量的专门开发,且难以复用推广。这些封闭性和专用性,极大地阻碍了工业自动化系统的升级迁移和创新应用,以及OT与IT深入高效地融合,也为用户增加了大量成本。
与IT领域技术发展日新月异相比,OT领域技术更新周期较长。然而,近年来在智能制造/工业4.0牵引下,OT技术发展较过去二十年相比在速度、广度和深度上都更进一步。一方面,大数据、人工智能、5G等新兴信息技术赋能OT技术的数字化和智能化;另一方面,用户对传统自动化供应商要求采用开放、可互操作、可复用和内在安全的IT/OT融合解决方案。因此,工业自动化借助IT技术的进步而更快发展,例如:利用数字孪生技术来打通虚拟世界和现实世界,基于软件进行创新使得业务价值由硬件驱动转向软件驱动等,促进了制造企业的规模不断扩张、业务快速变化、产品增值服务和业务模式创新。
1.2 开放自动化的需求和特征
为适应制造新模式,如大规模个性化制造需求,企业生产现场由原来的单一机器生产发展为多机协作形成智能生产单元、智能生产线,这使得制造系统规模越来越大且复杂、机器与机器之间交互越来越多、产线柔性重组快速换型要求越来越迫切。但是传统工业自动化系统的专用性、封闭性无法满足这些需求。因此,业界一直在寻求开放的自动化解决方案,例如:采用通用软硬件架构、模块化编程方法、高级语言编程、开源程序代码等来构建开放自动化系统。
我们认为,开放的自动化系统应具备如下特征:
-
可复用:系统设计时定义可重复使用的模块化组件,并且模块之间可以高效集成;
-
可移植:应用程序可以跨平台部署和执行;
-
可重构:在不影响系统运行和保障安全的情况下软硬件即插即用;
-
可互操作:任意设备之间可以实现语义级交互以及共同执行分布式应用所需的功能。
满足上述可复用、可移植、可重构、可互操作要求的自动化系统,可以被称为开放自动化系统。
2.开放自动化相关技术
2.1开放软硬件架构
-
不限制硬件平台和软件平台,并支持未来扩展,例如:硬件平台支持X86、ARM、RISC-V平台架构,软件平台支持Windows、Linux操作系统及其他VxWorks、μC/OS等实时操作系统;
-
不限制程序开发环境和编程语言,例如:C/C++、Python、Java、IEC 61131-3等;
-
具有统一的开放接口;
-
采用通用的网络技术,如以太网、时间敏感网络(TSN)、5G等。
以上,改变了传统工业应用现场专用硬件设备与软件的绑定,将在程序(包括工程和代码)的可移植性、系统的互操作性、工厂生产的灵活性,以及自动化控制系统投入现场调试前的验证等方面,给用户带来极大的效益。
例如,软PLC通过软件方式在通用平台上实现“硬”PLC的控制功能,可以解决传统PLC兼容性和通用性差等问题。特别是智能制造/工业4.0环境下需要与人工智能、边缘计算相结合的应用场景,软PLC因其资源开放而备受关注。尽管软PLC技术具有很大的发展潜力,但实现上还需要解决一些重要问题,如以PC为基础的控制引擎的实时性问题。
2.2标准工业通信
工厂生产现场的测量设备(如传感器)、执行装置与控制设备/系统(如PLC、DCS、SCADA等)之间通过工业通信网络连接。与IT领域相比,工业通信网络应满足工业应用的更严格的要求,包括数据传输的可靠性、实时性、确定性、可用性、安全性等。
传统的工业通信网络技术主要包括现场总线、工业以太网和工业无线网。国际电工委员会(IEC)将现场总线定义为基于串行数据传输、典型应用于工业自动化和流程控制应用的通信系统。常用的现场总线有MODBUS、PROFIBUS、HART、CAN、CC-LINK、DeviceNet/ControlNet等。 90年代末,随着以太网技术日趋成熟,工业以太网(也称实时以太网)逐渐兴起,在IEEE802.3标准以太网上修改MAC层或在MAC层之上增加一些特定协议机制(如时间调度、通信优先级、时钟同步等),以满足工业现场应用所需的实时性和确定性通信要求。常用的工业以太网有Modbus TCP、EtherCAT、PROFINET、Ethernet/IP、POWERLINK、CC-LINKIE等。工业通信网络的国际标准是IEC61158,以类型(Type)方式规范了主流的现场总线和工业以太网技术,当前的标准修订版本已增加到28种类型。工业无线网从新兴的无线传感器网(WSN)发展而来,目前国际上主要有基于IEEE 802.15.4的用于过程自动化的WirelessHART、WIA-PA、ISA100.11a,以及基于IEEE802.11的用于工厂自动化的WIA-FA工业无线网络技术。
由于每种工业通信网络技术都有其技术特点和市场优势,在工厂生产现场往往存在多种现场总线、工业以太网。通信标准的不统一为自动化设备与设备之间、设备与系统之间的互联互通造成很大困难,使得软件/硬件供应商和用户需要花费大量的成本来开发和维护基于各种不同通信协议的代码。因此,业界一直希望有一个统一的接口标准来解决这个难题。
TSN是由一组IEEE802.1标准构成的以太网数据链路层标准,在传统以太网上增加了包括时钟同步、低时延和预留带宽等可提供确定性服务的各种功能和性能,引起了工业界广泛关注,很多工业以太网技术(如PROFINET、CC-LINK IE)纷纷与之融合,希望能够在链路层协议上达成统一。
OPC是开放平台通信(Open Platform Communications)的简称(旧称为“用于过程控制的OLE”),是由OPC基金会提供的用于工业自动化的一种通信标准,包括经典OPC(OPCClassic)和OPC统一架构(OPC Unified Architecture,简称OPC UA)。经典OPC在工业控制设备与控制软件之间定义了与厂商无关的统一的数据交换标准接口和规程,几乎被所有工业自动化系统所支持,但因其是基于Windows操作系统的OLE/COM技术而应用受限。OPCUA统一架构是新一代的基于语义和面向服务架构(SOA)的OPC规范,将经典OPCDA、OPCAE、OPCHDA等功能集成到一个可扩展的框架中,独立于硬件平台和操作系统,具有强大的建模能力,并通过Web服务或优化的基于TCP的方式提供数据。由于OPCUA新特性和设计良好的架构,在智能制造领域得到普遍接受,被公认为在工厂OT系统和IT系统集成方面具有显著优势。
2.3基于模型的软件工程
PLC最初的产生是为了替代(硬)继电器控制装置,在软件编程上采用了类似于电气工程师所熟悉的继电器控制线路的方式——梯形图语言并一直延续至今。传统PLC按照顺序扫描方式逐条执行程序代码,对于要求即时响应的程序应用具有很大的局限性。开放工业自动化系统采用模块化设计理念以及事件驱动的执行模式,要求建立通用的、可重用的功能模块。
IEC 在1993年颁布PLC国际标准 IEC61131,其中规范了PLC五种编程语言并引入了功能块概念。IEC将功能块定义为由一个数据结构及相关操作的副本组成,其数据结构及操作取决于功能块类型。实现上,功能块就是将变量和算法进行封装的软件功能单元,这使得分布式控制系统的设计简化为将功能块按逻辑关系进行联接的工作。
与功能块相关的国际标准还有IEC61499《功能块》和IEC61804-2《用于过程控制的功能块和电子设备描述语言第2部分:功能块概念规范》,如图1所示。IEC61804-2是为过程控制和现场仪表定义的功能块,IEC 61804 其他部分标准则定义了电子设备描述语言(EDDL)及集成方法等。IEC 61158 和IEC 61784 分别规定了工业通信网络规范(包括现场总线和工业以太网)和相应的通信行规。现场总线和工业以太网的应用层为功能块提供了服务接口,允许分布在不同设备的多个功能块在其上协同操作。
1. IEC 61131-3
IEC61131-3将现代软件工程的机制用于PLC传统的编程语言,采用模块化原则,将常用的程序功能划分为若干单元并封装为模块,模块之间通过定义好的输入输出数据进行交互,使用者无需了解模块内算法的具体实现方法。IEC61131-3 定义了标准的数据类型和功能块,并支持用户编写自己的应用 模块。
IEC 61131-3 为 PLC 软件技术的发展,乃至整个工业控制软件技术的发展起了举足轻重的推动作用,逐渐成为DCS、PC控制、机器人控制等事实上的标准。然而,IEC 61131-3 的程序执行机制对于多资源分布式系统而言,还具有如下局限性:
-
软件模型只支持单一设备编程,不适应分布式结构的软件要求;
-
不支持并发和随机事件的快速响应;
-
支持 IEC 61131-3 的不同厂家设备相互之间不兼容。
因此,在 IEC61131-3 功能块概念的基础上,IEC 还制定了IEC61499 功能块标准。IEC61131-3和 IEC 61499 发展关系如图2所示。
2. IEC 61499
IEC61499 在 IEC61131-3 基础上扩展了软件模型,从一开始的工业控制系统编程语言逐步发展到现在开放自动化的系统级建模语言。与UML等建模语言不同的是,IEC61499提供了完整的功能块执行机制,因此功能块网络能够被直接部署与执行,从而减少了从建模语言到可执行代码的转换,避免了由于模型转换造成的代码质量问题。
IEC61499 定义了系统模型、设备模型、资源模型、应用模型、功能块模型、管理模型、部署模型,使得自动化系统可以实现:
-
互操作:不同设备之间的通信和交互;
-
可配置:使用不同供应商的软件工具调整、配置设备,包括运行时重构;
-
可移植:应用程序和功能块库能够被多个软件工具接受和正确地解释。
IEC61499通过定义开放自动化系统的系统级可执行建模语言,有助于开展基于组件的软件设计和实现应用程序的可移植性,其一致性特征如图3所示。