2.2 PLC的组成及工作原理
2.2.1 PLC的硬件组成
PLC是以微处理器为核心的专用于工业控制的计算机。因此,PLC的基本组成与一般的微型计算机系统相似。虽然PLC的具体结构是多种多样的,但基本结构相同,主要由CPU、存储器、I/O单元、通信接口、编程装置、电源等组成。其中,CPU是PLC的核心,I/O单元是连接现场I/O设备和CPU的接口电路,通信接口用来连接外围设备,如程序员和上位机。对于整体式PLC,所有部件均安装在同一壳体中。对于模块化PLC,每个组件独立地封装在模块中,每个模块通过总线连接到机架或导轨上。虽然整体式PLC和模块化PLC的结构不尽相同,但各部分的功能是相同的。
1.CPU
CPU是PLC的核心。PLC中所配置的CPU随机型不同而不同,常用的有三类:通用微处理器、单片微处理器和芯片式微处理器。在PLC中CPU按系统程序赋予的功能,指挥PLC有序工作。具体如下:
(1)接收用户程序和数据。
(2)电源的诊断,PLC内部电路的工作故障和编程中的语法错误。
(3)通过输入接口接收现场的状态或数据,并存入输入映象寄存器或数据寄存器中。
(4)从存储器逐条读取用户程序,经过解释后执行。
(5)根据执行的结果,更新有关标志位的状态和输出映象寄存器中的内容,通过输出单元实现输出控制。另外,有些PLC还具有制表打印或数据通信等功能。
2.存储器
PLC中有两种主要类型的存储器:一种是可读/写的随机存取存储器(Random Access Memory, RAM);另一种是只能进行读操作的存储器,包括只读存储器(Read Only Memory, ROM)、可编程只读存储器(Programmable Read Only Memory, PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory, EPROM)和带电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory, EEPROM)。在PLC中,存储器主要用于存储系统程序、用户程序和工作数据。系统程序由PLC制造商编写,在PLC的使用过程中不会发生变化。它直接固化在ROM、PROM或EPROM中,用户不能访问和修改。用户程序由PLC的控制对象决定。由用户根据对象生产过程的控制要求编程的应用程序通常存储在静态RAM中,并且使用锂电池作为备用电源,以确保电源丢失时信息不会丢失。工作数据是PLC运行过程中不断变化和频繁访问的数据。它存储在RAM中,以满足随机存取的要求。
3.I/O单元
I/O单元也称为I/O模块,它是PLC和工业生产现场之间的连接部分。PLC可以通过输入接口检测被控对象的各种数据,并利用这些数据作为PLC对被控对象进行控制的基础;同时,PLC可以通过输出接口将处理结果发送给被控对象,从而实现控制目的。PLC提供了多种操作电平和驱动能力的I/O接口,有各种功能的I/O接口供用户选择,如数字(开关)输入、数字输出、模拟输入、模拟输出等。
4.通信接口
PLC配有各种通信接口,这些通信接口一般带有通信处理器。PLC通过这些通信接口与监视器、打印机、其他PLC、计算机等设备实现通信。
5.编程装置
编程装置的作用是编辑、调试、输入用户程序,也可在线监控PLC内部状态和参数,与PLC进行人机对话。它是开发、应用、维护PLC不可缺少的工具。编程装置可以是专用编程器,也可以是配有专用编程软件包的通用计算机系统。
6.电源
PLC配有相关电源,以供内部电路使用。与普通电源相比,PLC电源的稳定性好、抗干扰能力强。PLC对电网提供的电源稳定度要求不高,一般允许电源电压在其额定值±15%的范围内波动。许多PLC还向外提供直流24V的稳压电源,用于对外部传感器供电。
2.2.2 PLC的软件组成
PLC的软件由系统程序和用户程序组成。系统程序由PLC制造商编写,一般包括系统诊断程序、输入处理程序、编译程序、信息传输程序和监控程序等,存储在PLC的系统内存储器中,用户不能直接读取、写入和更改。用户程序是利用PLC的编程语言,根据用户控制要求编制的程序。不同厂家和不同系列的PLC产品所使用的编程语言不同,但基本上可以归纳为两种类型:一种是编程语言,如语句表等;另一种是编程语言的图形符号表达,如梯形图等。
1.梯形图语言
梯形图语言与电气控制线路图相似,继承了传统电气控制逻辑中使用的框架结构、逻辑运算方式和输入、输出形式,具有形象、直观、实用的特点。
2.语句表语言
语句表语言是一种助记符编程表达方式,方便采用简易编程器输入PLC中。
3.逻辑图语言
逻辑图语言由与门、或门、非门、定时器、计数器、触发器等逻辑符号组成,类似于数字逻辑电路结构的编程语言。
4.功能表图语言
功能表图语言又称状态转移图语言,它将一个完整的控制过程分为若干阶段,各阶段具有不同的动作,阶段间有一定的转换条件,转换条件满足就实现阶段转移,上一阶段动作结束,下一阶段动作开始。利用功能表图语言的方式来表达一个控制过程,对于顺序控制系统特别适用。
5.高级语言
近年来推出的PLC都可用高级语言编程,如利用BASIC语言、C语言、Pascal语言等进行编程。采用高级语言后,用户可以像使用普通微型计算机一样操作PLC,使PLC的各种功能得到更好地发挥。
2.2.3 PLC的工作原理
PLC的工作方式是“顺序扫描,不断循环”。PLC的工作过程主要是用户程序的执行过程。PLC采用周期性循环扫描的方式来执行用户程序,即在无跳转指令下,CPU从第一条指令开始按顺序逐条执行用户程序,直到结束,便完成一次扫描,然后再次返回第一条指令,开始新的扫描。
PLC控制流程图如图2-1所示,框图中显示的输入点、暂存器、输入继电器等是信息存储地点,箭头表示信息的流向。
图2-1 PLC控制流程图
用户程序的执行过程有输入刷新(输入采样)、运行用户程序、输出刷新(输出处理)的过程,并且这个过程不断循环重复,该过程如图2-2所示。它反映了信息之间的时间关系。
图2-2 PLC的工作过程
PLC通电以后要进行系统自检及内存初始化,这样才可以保证PLC的正常运行过程中不出现问题。有时候为了应对紧急任务,PLC也有中断工作方式,中断方式的任务是根据等级来划分的,优先处理较为级别高的,然后处理级别低的,在处理完了这些中断任务后,再次进行程序的扫描。