图1 远程I/O可以通过高速双向串行或者以太网通讯链路与主PLC建立有线或者无线连接。
表1总结了现代PLC的主要先进之处。但是需要说明的是没有单一的PLC产品或者PLC系列产品能够具有表1上列出的所有功能。而且,来自于不同供应商的产品也具有不同的优势和弱点www.cechina.cn,没有最好的PLC,也没有哪一种PLC适合所有应用。这意味着最终用户必须仔细审视自身的应用,针对具体应用在性能和价格之间找到最佳选择。
越来越强的I/O容量
通常PLC都有两种配置:一种是具有固定数量的内置I/O单元的一体式PLC,另外一种是通过将独立的电路板卡插入本地或者远程机架以提供自定义I/O容量的模块式PLC。这两种类型各有其优点和缺点。一体式PLC外形小巧,成本较低,但是经常发生性能不足或者I/O不够的问题。但是,新型设计正在提升PLC处理器的内置功能特性,一体式PLC的能力也得到了提升。
模块式PLC应用范围更加广泛,能够处理更多的I/O端口数量,但是价格更加高昂。传统的设计会占用更多的机架空间控制工程网版权所有,新型PLC处理器降低了通讯、数据存储和其他特殊功能板卡对于机架空间的需求——实际上就是为I/O单元提供了更多的空间。现在的PLC不仅具有内置的通讯协议,而且其协议也比以前具有更高的开放性,支持与来自于不同供应商的多种类型的I/O单元相连接。
对于一体式PLC和模块式PLC,新型I/O单元能够通过高速数字通讯协议(主要是以太网)与主PLC处理器直接建立连接,这种能力本质上增加了I/O容量。这些远程I/O模块具有各种各样的配置和外壳,适用于无机柜或外壳安装。
最新的芯片设计在一块微处理器中集成了多种通讯接口和其他先进的功能特性,它可以被作为PLC的CPU使用(见图2)。这意味着以前为了实现具有多个元器件以及一个或者多个独立机架安装的PLC板卡的功能特性,需要单独留出印制电路板空间,,而现在由PLC主处理器就能够提供了。
图2 现代PLC的CPU使用多功能微处理器,例如这片FPGA包含了一些以前需要使用外部机架安装板卡才能实现的功能。
更便捷的编程
最近的PLC能够提供灵活和先进的操作系统控制工程网版权所有,在系统中集成新设备和指令集更加容易。例如,现在的供应商经常在PLC处理器或者特殊功能板卡中使用FPGA(现场可编程逻辑门阵列)来完成一些任务,例如超高速控制和同步。有了FPGA,供应商就能够以低廉的成本快速提供定制功能或者专用功能。
在设备驱动层提取PLC处理器,用户代码就能够与物理层完全隔离,PLC类型(一体式或者模块式)或者I/O架构(本地、扩展或者远程)不再是设计的关键,开发人员可以先进行代码开发CONTROL ENGINEERING China版权所有,随后再选择目标硬件。
编程人员在软件开发阶段不再需要确定目标硬件,只需要在所有代码编写并测试完成之后选择最佳的PLC目标平台即可。从本质上来说,这种模式使成本降低,因为开发人员无需考虑为性能和I/O容量预留余量而选择更贵的PLC,只需要针对指定应用选择合适的PLC即可。硬件和软件工程任务量也有所降低,因为硬件工程和软件工程可以更加独立地进行,虽然有些情况下必须考虑相互配合,但是仍旧减少了所需的开发时间。
更优秀的指令集和地址映射
由于第一台PLC的设计目的是为了取代基于继电器的系统,所以它采用梯形图进行编程,与继电器电气图在外观上很类似。编程需要使用专用的编程终端设备,PLC的内存容量也很有限。随着20世纪80年代PC的出现,编程软件发展为DOS然后是Windows,但是仍旧具有局限性。
现在,新型操作系统和指令集使用户创建程序的过程更加容易,节省了时间,减少了故障(见图3)。使用高端标准指令,程序员现在经常使用2到3条指令就能够完成以前需要很多行代码才能完成的功能。这种将代码打包形成更高级别指令的方式不仅仅简化和加速了编程过程,还提升了程序的标准化程度www.cechina.cn,其他人理解软件程序更加容易。
图3 先进的编程技术简化并加快了程序开发过程,几条高级指令可以减少几百行程序代码。
有了诸如功能模块之类的更高级的指令,用户创建自己的子程序也更加容易,此项功能对于很多应用尤为重要。可以重复使用的子程序使逻辑开发更加高效,程序开发本身也更加面向对象化,这是一种借鉴现有成果提高编码的常用技术。
新型PLC的另一项先进之处在于地址映射。说得明白一点,就是不同的内存映射以前需要将整数、浮点数和十六进制(HEX)数映射到一个数据点中,而新型PLC为整数、浮点和HEX数提供了独立的数据点,这种方式简化了地址映射过程并且还带来了其他好处。
数据结构式新型PLC经常包含的一种功能,这种功能允许最终用户将多个内存地址编组管理。如果这些内存地址具有相同类型的数据,就可以使用数组寻址。但是如果一个编组中包含了不同类型的数据,就需要使用数据结构功能了。
例如,一个PID循环可以被定义为“Tank1”,循环中的每一个参数都可以将这个识别代码与其他后缀搭配使用,例如对PID循环的过程数据进行操作,可以在PLC和HMI编程中使用“Tank1.PV”。类似的,“Tank1.SP”也可以用来表示PID循环的设定点。数据结构功能使用户程序开发和维护的过程更加方便,因为识别代码可以使用实际的名称,而不是晦涩难懂的系统命名。
高速处理和高速I/O模块
更高的CPU速度提供更优的性能,缩短了任务执行时间。对于运动控制应用来说这种能力尤为重要,而且高速I/O模块也应运而生,一些以前需要使用专用运动控制器的功能如今使用PLC也能够实现了。
或许PLC性能的最大提升就在于过程控制领域。老式的PLC只能操控相对较少数量的PID循环,而新型PLC能够操控数以千计的此类循环。通常这意味着无需使用外部单循环控制器,节省了成本和机柜空间,整个控制系统也极大地简化了。
更高的处理速度也使PLC的CPU能够支持内置的以太网连接和自定义通讯协议功能,而这以前需要使用独立的专用模块和机架空间才能够实现。
PLC还是PAC?
大体上讲,PLC和PAC能够提供相同的功能特性,而且新型的高端PLC所具有的优秀性能和功能特性使PLC和PAC之间的抉择愈发困难。判断一个控制器是一台高端PLC还是一台PAC很困难,因为在自动化行业中这两者已不存在明显的划分。
一般来说,PAC在网络、扩展性和用户选件上提供了更多选择。PAC的采购成本和编程软件价格也更高一点,相比之下,PLC的采购价格中通常已经包含了编程软件的价格。
在以前的讨论中,PLC编程通常都是用一种叫做梯形图逻辑的,与继电器电气图类似的图形编程语言。新型PLC和PAC的控制程序通常使用符合IEC61131-3标准语言的软件工具,可提供更多的编程选择,便于在工厂或者整个企业中实现程序代码的标准化。
PLC自从20世纪60年代面世以来经历了巨大的发展,专用编程终端和晦涩局限的指令集的年代已经一去不返了。今天的PLC需要更少的机柜空间,提供更简便的编程方式,具有超快的执行速度,使其适用于更加广阔的应用领域。
新型PLC架构通过采用硬件抽象技术使编程更加灵活,改进的指令集和更加明确的地址映射帮助开发人员缩短程序编写时间,提升功能特性,而且对程序进行改动也更简单易行。
所有这些改进意味着今天的PLC能够为用户提供更加经济、更加便于使用和更加灵活的设备,具有优秀的速度和功能特性,适用于更加广阔的应用领域。