可编程逻辑控制器(ProgrammableLogicController,PLC),是一种用于自动化实时控制的数位逻辑控制器,广泛应用于目前的工业控制领域。在可编程逻辑控制器出现之前,一般要使用成百上千的继电器以及计数器才能组成具有相同功能的自动化系统,而现在,经过编程的简单的可编程逻辑控制器模块基本上已经代替了这些大型装置。可编程逻辑控制器的系统程序一般在出厂前已经初始化完毕,用户可以根据自己的需要自行编辑相应的用户程序来满足不用的自动化生产要求。
可编程序逻辑控制器PLC(Programmable logic Controller),又称可编程序控制器PC(Programmable Controller),是微机技术与继电器常规控制技术相接合的产物,是在顺序控制器和微机控制器的基础上发展起来的新型控制器,是一种以微处理器为核心用作数字控制的专用计算机。
自1969年针对工业自动控制的特点和需要而开发的台PLC问世以来,迄今已经30多年了,它的发展虽然包含了前期控制技术的继承和演变,但又不同于顺序控制器和通用的微机控制装置。它不仅充分利用微处理器的优点来满足各种工业领域的实时控制要求,同时也照顾到现场电器操作维护人员的技能和习惯,摈弃了微机常用的计算机编程语言的表达形式,独具风格地形成一套以继电器梯形图为基础的形象编程语言和模块化的软件结构,使用户程序的编制清晰直观、方便易学,调试和查错都很容易。用户买到所需PLC后,只需按说明书或提示,做少量的安装接线和用户程序的编制工作,就可灵活而方便地将PLC应用于生产实践。而用户程序的编制、修改和调试不需要具有专门的计算机编程语言知识。这样就破除了“电脑”的神秘感,推动了计算机技术的普遍应用。可编程序控制器PLC在现代工业自动化控制中是最值得重视的先进控制技术。PLC现已成为现代工业控制三大支柱(PLC、CAD/CAM、ROBOT)之一,以其可靠性、逻辑功能强、体积小、可在线修改控制程序、具有远程通信联网功能、易于与计算机接口、能对模拟量进行控制、具备告诉计数与位控等高性能模块等优异性能,日益取代由大量中间继电器、时间继电器、计数继电器等组成的传统继电-接触控制系统在机械、化工、石油、冶金、电力、轻工、电子、纺织、食品、交通、等行业得到广泛应用。PLC的应用深度和广度已经成为一个国家工业先进水平的重要标志之一。
由于目前各国生产的PLC种类繁多、性能规模各异、指令系统不尽相同。
可编程逻辑控制器实质是一种专用于工业控制的计算机,其硬件结构基本上与微型计算机相同,基本构成为:
一、电源
可编程逻辑控制器的电源在整个系统中起着十分重要的作用。如果没有一个良好的、可靠的电源系统是无法正常工作的,因此,可编程逻辑控制器的制造商对电源的设计和制造也十分重视。一般交流电压波动在+10%(+15%)范围内,可以不采取其它措施而将PLC直接连接到交流电网上去。
二、中央处理单元(CPU)
中央处理单元(CPU)是可编程逻辑控制器的控制中枢。它按照可编程逻辑控制器系统程序赋予的功能接收并存储从编程器键入的用户程序和数据;检查电源、存储器、I/O以及警戒定时器的状态,并能诊断用户程序中的语法错误。当可编程逻辑控制器投入运行时,首先它以扫描的方式接收现场各输入装置的状态和数据,并分别存入I/O映象区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后按指令的规定执行逻辑或算数运算的结果送入I/O映象区或数据寄存器内。等所有的用户程序执行完毕之后,将I/O映象区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行,直到停止运行。
为了进一步提高可编程逻辑控制器的可靠性,近年来对大型可编程逻辑控制器还采用双CPU构成冗余系统,或采用三CPU的表决式系统。这样,即使某个CPU出现故障,整个系统仍能正常运行。
三、存储器
存放系统软件的存储器称为系统程序存储器。
四、输入输出接口电路
1.现场输入接口电路由光耦合电路和微机的输入接口电路,作用是可编程逻辑控制器与现场控制的接口界面的输入通道。
2.现场输出接口电路由输出数据寄存器、选通电路和中断请求电路集成,作用可编程逻辑控制器通过现场输出接口电路向现场的执行部件输出相应的控制信号。
五、功能模块
如计数、定位等功能模块。
六、通信模块
在可编程逻辑控制器系统设计时,首先应确定控制方案,下一步工作就是可编程逻辑控制器工程设计选型。工艺流程的特点和应用要求是设计选型的主要依据。可编程逻辑控制器及有关设备应是集成的、标准的,按照易于与工业控制系统形成一个整体,易于扩充其功能的原则选型所选用可编程逻辑控制器应是在相关工业领域有投运业绩、成熟可靠的系统,可编程逻辑控制器的系统硬件、软件配置及功能应与装置规模和控制要求相适应。熟悉可编程序控制器、功能表图及有关的编程语言有利于缩短编程时间,因此,工程设计选型和估算时,应详细分析工艺过程的特点、控制要求,明确控制任务和范围确定所需的操作和动作,然后根据控制要求,估算输入输出点数、所需存储器容量、确定可编程逻辑控制器的功能、外部设备特性等,选择有较高性能价格比的可编程逻辑控制器和设计相应的控制系统。
输入输出(I/O)点数的估算
I/O点数估算时应考虑适当的余量,通常根据统计的输入输出点数,再增加10%~20%的可扩展余量后,作为输入输出点数估算数据。实际订货时,还需根据制造厂商可编程逻辑控制器的产品特点,对输入输出点数进行圆整。
存储器容量的估算
存储器容量是可编程序控制器本身能提供的硬件存储单元大小,程序容量是存储器中用户应用项目使用的存储单元的大小,因此程序容量小于存储器容量。设计阶段,由于用户应用程序还未编制,因此,程序容量在设计阶段是未知的,需在程序调试之后才知道。为了设计选型时能对程序容量有一定估算,通常采用存储器容量的估算来替代。
存储器内存容量的估算没有固定的公式,许多文献资料中给出了不同公式,大体上都是按数字量I/O点数的10~15倍,加上模拟I/O点数的100倍,以此数为内存的总字数(16位为一个字),另外再按此数的25%考虑余量。
控制功能的选择
该选择包括运算功能、控制功能、通信功能、编程 功能、诊断功能和处理速度等特性的选择。
1、运算功能
简单可编程逻辑控制器的运算功能包括逻辑运算、计时和计数功能;普通可编程逻辑控制器的运算功能还包括数据移位、比较等运算功能;较复杂运算功能有代数运算、数据传送等;大型可编程逻辑控制器中还有模拟量的PID运算和其他运算功能。随着开放系统的出现,目前在可编程逻辑控制器中都已具有通信功能,有些产品具有与下位机的通信,有些产品具有与同位机或上位机的通信,有些产品还具有与工厂或企业网进行数据通信的功能。设计选型时应从实际应用的要求出发,合理选用所需的运算功能。大多数应用场合,只需要逻辑运算和计时计数功能,有些应用需要数据传送和比较,当用于模拟量检测和控制时,才使用代数运算,数值转换和PID运算等。要显示数据时需要译码和编码等运算。
2、控制功能
控制功能包括PID控制运算、前馈补偿控制运算、比值控制运算等,应根据控制要求确定。可编程逻辑控制器主要用于顺序逻辑控制,因此,大多数场合常采用单回路或多回路控制器解决模拟量的控制,有时也采用专用的智能输入输出单元完成所需的控制功能,提高可编程逻辑控制器的处理速度和节省存储器容量。例如采用PID控制单元、高速计数器、带速度补偿的模拟单元、ASC码转换单元等。
3、通信功能
大中型可编程逻辑控制器系统应支持多种现场总线和标准通信协议(如TCP/IP),需要时应能与工厂管理网(TCP/IP)相连接。通信协议应符合ISO/IEEE通信标准,应是开放的通信网络。
可编程逻辑控制器系统的通信接口应包括串行和并行通信接口、RIO通信口、常用DCS接口等;大中型可编程逻辑控制器通信总线(含接口设备和电缆)应1:1冗余配置,通信总线应符合国际标准,通信距离应满足装置实际要求。
可编程逻辑控制器系统的通信网络中,上级的网络通信速率应大于1Mbps,通信负荷不大于60%。可编程逻辑控制器系统的通信网络主要形式有下列几种形式:
1)PC为主站,多台同型号可编程逻辑控制器为从站,组成简易可编程逻辑控制器网络;
2)1台可编程逻辑控制器为主站,其他同型号可编程逻辑控制器为从站,构成主从式可编程逻辑控制器网络;
3)可编程逻辑控制器网络通过特定网络接口连接到大型DCS中作为DCS的子网;
4)专用可编程逻辑控制器网络(各厂商的专用可编程逻辑控制器通信网络)。
为减轻CPU通信任务,根据网络组成的实际需要,应选择具有不同通信功能的(如点对点、现场总线、)通信处理器。
4、编程功能
离线编程方式:可编程逻辑控制器和编程器公用一个CPU,编程器在编程模式时,CPU只为编程器提供服务,不对现场设备进行控制。完成编程后,编程器切换到运行模式,CPU对现场设备进行控制,不能进行编程。离线编程方式可降低系统成本,但使用和调试不方便。在线编程方式:CPU和编程器有各自的CPU,主机CPU负责现场控制,并在一个扫描周期内与编程器进行数据交换,编程器把在线编制的程序或数据发送到主机,下一扫描周期,主机就根据新收到的程序运行。这种方式成本较高,但系统调试和操作方便,在大中型可编程逻辑控制器中常采用。
五种标准化编程语言:顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言。选用的编程语言应遵守其标准(IEC6113123),同时,还应支持多种语言编程形式,如C,Basic等,以满足特殊控制场合的控制要求。
5、诊断功能
可编程逻辑控制器的诊断功能包括硬件和软件的诊断。硬件诊断通过硬件的逻辑判断确定硬件的故障位置,软件诊断分内诊断和外诊断。通过软件对PLC内部的性能和功能进行诊断是内诊断,通过软件对可编程逻辑控制器的CPU与外部输入输出等部件信息交换功能进行诊断是外诊断。可编程逻辑控制器的诊断功能的强弱,直接影响对操作和维护人员技术能力的要求,并影响平均维修时间。
6、处理速度
可编程逻辑控制器采用扫描方式工作。从实时性要求来看,处理速度应越快越好,如果信号持续时间小于扫描时间,则可编程逻辑控制器将扫描不到该信号,造成信号数据的丢失。
处理速度与用户程序的长度、CPU处理速度、软件质量等有关。目前,可编程逻辑控制器接点的响应快、速度高,每条二进制指令执行时间约0.2~0.4Ls,因此能适应控制要求高、相应要求快的应用需要。扫描周期(处理器扫描周期)应满足:小型可编程逻辑控制器的扫描时间不大于0.5ms/K;大中型可编程逻辑控制器的扫描时间不大于0.2ms/K。
可编程逻辑控制器按结构分为整体型和模块型两类,按应用环境分为现场安装和控制室安装两类;按CPU字长分为1位、4位、8位、16位、32位、64位等。从应用角度出发,通常可按控制功能或输入输出点数选型。
整体型可编程逻辑控制器的I/O点数固定,因此用户选择的余地较小,用于小型控制系统;模块型可编程逻辑控制器提供多种I/O卡件或插卡,因此用户可较合理地选择和配置控制系统的I/O点数,功能扩展方便灵活,一般用于大中型控制系统。
现在市面上所使用的PLC控制系统大致可以分成三类:分别是集中式,远程式,分布式控制。
下面就先简单介绍一下功能:
1.集中式:系统是用一个PLC控制一台设备,主要用于输入,输出点数少的,设备放置位置比较集中,且相互之间的动作有一定联系的场合,其特点是控制结构简单。
2.远程式:是指控制单元远离设备现场,PLC通过通信电缆与被控制的设备进行信息传递。此系统一般用于被控制的设备十分分散或者工作条件非常恶劣的场合,特点就是采用了远程通信模块,提高了系统的成本和复杂性。
3.分布式:用于控制多台设备的大型控制系统,每个设备之间的数据信息传递场合。起特点就是灵活性强,控制范围大,但是需要增强用于通信和设备硬件的成本,系统的复杂性也更大.