作者:Jody Muelaner
可编程逻辑控制器 (PLC) 是一种工业计算机,可执行以下任务:
· 监测和控制工业自动化应用
· 执行与测试和测量工作有关的任务
· 执行本文所述范围以外的流程类功能(含与暖通空调系统有关的功能)。
PLC 从传感器和输入设备接收数据并进行处理,然后基于逻辑的作出决定,向机械或电气系统发出控制指令。PLC 是嵌入式系统,将计算机的处理器、存储器与输入输出 (IO) 设备组合在一起——很像与之竞争的、基于硬线连接的继电器逻辑以及基于 PC 的逻辑。
就外形而言,今天的 PLC 款式多样,从具有集成芯片 (IC) 外形的非常简单的计算机,到安装在多个机箱中的大型机架式控制器子组件的集合。更简单的、基于微控制器的 PLC 或那些采用片上系统 (SoC) 的 PLC 能够达到非常高的可靠性,在非常小的输入功率下运行。相比之下,最复杂的 PLC 已经模糊了 PLC 和用于实时工业控制的通用计算机之间的构成界限... 尽管前者仍然强调可靠性和实时性。
PLC 最初是为了直接取代基于继电器和鼓式定序器的硬接线控制逻辑。这些早期的 PLC 只需通过将输入转化为输出来执行基本操作。任何需要比例积分微分 (PID) 控制的机器任务都由外加的模拟电子设备执行。现在,PID 控制以及甚至更复杂的运行已都是 PLC 指令集的标配。
事实上,随着时间的推移,对 PLC 的预期功能也在不断增加,因此,今天的许多 PLC 已经相当复杂,能够执行复杂的自适应程序。得益于摩尔定律,半导体芯片的功率在不断提高,而尺寸却在不断缩小,这使得更小的控制器能够达到前所未有的智能化。随着对运动控制、视觉系统和通信协议的全面支持,这种趋势仍将持续。在 PLC 尺寸方面,一些可编程自动化控制器 (PAC) 将 PLC 与 PC 整合在一起,取代 PLC 和专有控制系统(以专有编程语言运行),以适应某些应用。今天,有更多的 PLC 也被集成到人机接口(HMI) 中。
PLC 参与运行的工业数字环境
今天的工业自动化依赖于机器反馈、运行数据以及数字设备之间复杂的互连来实现。
· 控制数字设备。
· 运行高级功能——例如那些与 IIoT 连接和机器重新配置有关的功能。
· 让人们能够对各种机器和运行条件作出决策。
· 提高整体生产力和工件质量。
此类自动化装置包括不同的信息系统来存储、处理和服务这些数据。
材料需求计划或制造资源计划 (MRP) 系统提供生产计划、进度、财务和库存控制信息。相比之下,历史数据系统保存了来自传感器和仪表的时间序列数据,可用于绘制图形,帮助操作员和管理系统了解、处理自动化趋势。统计过程控制 (SPC))是一个历史数据库应用。
人机接口 (HMI) 是机器控制面板(或以无线方式连接移动设备的模块),方便操作员查看数据和发出指令。与 HMI 功能密切相关的是监督控制和数据采集 (SCADA) 系统,该系统能够实时控制和监测自动化机器与其 HMI 和历史数据库之间的互动。SCADA 是一种 HMI,可以控制多台机器...并显示与多个设备有关的数据。
制造执行系统 (MES) 包括运行进度和数据收集等功能。在某些方面,该系统可以被看作是介于 MRP 和 SCADA 之间并与二者重叠。
企业资源规划 (ERP) 系统整合了与制造业相关的 MRP、MES、产品生命周期管理 (PLM) 和 CRM 信息系统。ERP 系统可以是处理所有这些功能的单体软件套件... 或者是一个核心 ERP 系统,连接来自多个供应商的专门应用。通常情况下,只有高层管理人员与 ERP 进行互动——在具体的大企业中,大多数人员与其中的某一个组件系统互动。
PLC 的运行级别通常低于这些信息系统。PLC 向机器、电机和传感器发送和接收信息。也可以与上面的信息层互动,向历史数据库库或 SCADA 发送数据,或从 SCADA 或 HMI 接收控制输入信息。更复杂的 PLC 还可以执行 SCADA 和历史数据库功能... 甚至在越来越多的情况下执行 HMI 功能。
图 1:PLC 的运行级别通常低于自动化信息系统。(图片来源:Jody Muelaner)
请注意,PLC 不只是参与自动化:也被用于控制测试平台(产品开发)和实验室测量任务。
如上所述,自动化通常强调诊断并要求 PLC 进行决定性的实时操作以获得真正的效果。
相比之下,在测量任务中采用的 PLC 更强调快速和精确地执行测量采集和其他形式的数据采集。
对于机器自动化任务来说,PLC 依靠实时处理,其中输入和响应输出之间的延迟以毫秒为单位。除了最简单的 PLC 功能外,其他都需要实时操作系统 (RTOS)。虽然许多 PLC 仍然使用专有操作系统,但人们对开放标准的操作系统越来越感兴趣。例如,VxWorks 是一个专有实时操作系统,已被广泛授权用于工业控制。包括 Kuka 和 ABB 在内的多家领先的机器人制造商在使用该操作系统。或者,在 MIT 开源许可下免费发布的开源变体版本 FreeRTOS。FreeRTOS 包括各种物联网 (IoT) 库,适用于广泛的自动化应用。有关这方面的详细内容,参见 Digi-Key 《使用 Amazon FreeRTOS 快速、安全地将设计与云端连接》一文。
对于测试和测量任务,PLC 依靠实时处理的方式来完成,其中现场设备测量和其数据收集之间的延迟以毫秒为单位。那个让工程师们别无选择,只能采用接口转换器和传输通道系统的时代已经一步不复返了。现在,外围智能设备和 I/O 组件已经通过数字和模拟输入提升并简化了信号收集功能。
今天的工程师们也有了更多的选择。这些选择基于标准化接口、可互操作的具有跨制造商兼容性的组件。
只需考虑具有集成 PLC 功能的 I/O 组件。这些产品兼容那些运行 Windows 或 Linux 操作系统并具有以太网连接功能的可配置人机接口——但无法方便地重新校准产生低压模拟信号的现场设备,或者没有为这类设备提供模拟 I/O。这种 I/O 组件也可配合使用经过特定设置的 PLC,具体设置为从远程 I/O 设备收集数据... 通过其板载 I/O 直接从传感器收集数据。
图 2:T7 多功能数据采集设备 (DAQ) 包括以太网、USB、wifi 和 Modbus 连接功能,可与各种现场设备以及工业人机接口、PLC 配合使用。特别是 Modbus/TCP 连接,通过各种第三方软件和硬件选项提供了可控性,实现了开放性和灵活性——这反过来让工业系统架构师、研发工程师在数据收集、自动化应用方面进行选择时无需考虑供应商。(图片来源:LabJack)
当然,PLC 并不是机器自动化或测试和测量的唯一选择。由于所有的工业控制都变得越来越复杂,一些供应商已经将某些硬件区分为可编程自动化控制器 (PAC),以表示具有功能更强... 且在许多情况下,一个硬件中会有多个处理器。实际上,PLC 的复杂性也越来越高——所以对于一些执行 PLC 功能的硬件何时构成 PAC 并没有硬性规定。大多数 PAC 集成了 PLC 和 PC 功能,作为复杂的自动化系统使用,其特点是具有多个基于 PC 的应用以及 HMI 和历史数据库。一个明显的区别是,PAC 对开发者来说更易采用,因为其拥有比传统控制技术更开放的架构。
然而,今天的另一个选择是模块化 PLC。这种 PLC 由执行不同功能的模块组成。所有的 PLC 必须包括 CPU 模块,其中包括运行操作系统及程序的处理器、存储器。此外,还可能包括独立的电源模块、额外的输入/输出 (I/O) 模块。一个 PLC 可能包括数字和模拟 I/O 模块。另一个模块可能需要用于网络通信。
PLC 可以是集成的——所有模块都集中在一个机箱内,也可以是模块化的。集成 PLC 的结构更紧凑,但模块化 PLC 则功能更多,通常允许多个模块通过直接插入彼此或使用公共机架作为总线轻松连接在一起。各个模块根据其在总线上的位置被寻址。尽管机架的物理支持方面可能符合 DIN 等标准,但数据总线通常是 PLC 制造商的专利。
PLC 在物联网中的作用
随着人们对工业 4.0(也称为 IIoT)的兴趣越来越大,工业用户愈加希望能够选择使用互联网协议将其工业控制器连到接公司的网络。这意味着使用传输控制协议 (TCP) 和互联网协议 (IP) 或简单的 TCP/IP 进行通信。然而,IIoT 趋势不仅仅与互联网协议的使用有关... 而且也与机器学习和大数据有关。随着 PLC 功能越来越强大(更先进的控制使 PLC 功能成为一种特色),具有如视觉系统等更多的主机功能。互联网连接功能还允许工程师(通过系统 PLC)利用基于云的算法来处理极其庞大的数据集(也称为大数据),实现机器学习。
实际应用中,控制自动化技术的以太网 (EtherCAT) 在此类 IIoT PLC 功能方面表现出色。这是一种基于以太网的通信协议,适用于周期时间小于 0.1 毫秒的实时控制应用——是最快的工业以太网技术,能够以纳秒级精度进行同步。另一个重要的优势是 EtherCAT 网络拓扑结构灵活,不需要网络集线器和交换机。设备可以简单地以环状、线状、星状或树状配置的形式连在一起。PROFINET 是一个具有类似功能的竞争性标准。
结语
当前的数据收集和工业控制日益复杂的趋势将持续下去。这意味着用于工业自动化以及测试、测量的 PLC 将越来越像 PAC... 并与 SCADA 和历史数据库整合在一起。如 EtherCAT 等互联网协议和开放标准也被稳步采纳,用于 PLC 通信。这种连接将反过来刺激市场更多地使用工业 4.0 技术,如大数据分析和机器学习,部分原因是能够将所需的处理能力和内存分配到:
· 基于云的计算
· 能够进行数据处理的边缘设备
除了这些趋势之外,仍然需要更多可靠性最高、能效最优的传统 PLC 来执行相对简单的测试、测量以及控制功能。