PLC的工作原理及编程语言介绍
日期:2024-09-03 05:51
浏览次数:1535
摘要:
PLC的工作原理
PLC是一种工业计算机,其工作原理是建立在计算机工作原理基础上的,CPU采用分时操作方式来处理各项任务,即每一时刻只能处理一件事情,程序的执行是按照顺序依次执行。这种分时操作过程称为PLC对程序的扫描,扫描一次所用的时间称为扫描周期。运行时,逐条地解释用户程序,并加以执行。程序中的数据并不直接来自输入或输出模块的接口,而是来自数据寄存器区,该区域中的数据在输入采样和输出锁存时周期性地不断刷新。 PLC的扫描工作过程大致可以分为3个阶段:输入采样、用户程序执行和输出刷新3个阶段,如下图所示。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述3个阶段。
1)输入采样阶段 在输入采样阶段,PLC首先扫描所有输入端子,再依次地读入所有输入状态和数据,并将它们存入输入寄存器中。此时,输入寄存器被刷新。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,输入寄存器中相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。2)用户程序执行阶段 输入采样阶段的输入信号被刷新后,送入程序执行阶段。组成程序的每条指令都有顺序号,指令按顺序号依次存入存储单元。在程序执行期间,微处理器将指令顺序调出并执行,并对输入和输出状态进行处理,即按程序进行逻辑、算术运算,在将结果存入输出状态寄存器中。3)输出刷新阶段 当用户程序执行完毕后,PLC就进入输出刷新阶段。在此期间,CPU按照输入/输出状态寄存器内对应的状态和数据刷新所有的输出锁存电路,转换成被控设备所能接收的电压或电流信号,再经输出电路驱动相应的外设。在下一个输出刷新阶段开始之前,输出锁存器的状态不会改变,从而相应输出端子的状态也不会改变。
PLC的编程语言
编程语言是PLC的重要组成部分,PLC为用户提供了完整的编程语言,以适应用户编制程序的需要。IEC61131-3为PLC制定了5种PLC的标准编程语言,其中有3种图形语言即梯形图(LAD)、功能块图(FBD)、顺序功能图(SFC);两种文本语言,即指令表(STL)和结构化文本(ST)。 梯形图是PLC*早使用的一种编程语言,也是PLC*普遍采用的编程语言。梯形图编程语言是从继电器控制系统原理图的基础上演变而来的,继承了继电器控制系统中的基本工作原理和电器逻辑关系的表达方法,梯形图语言与继电器控制系统梯形图的基本思想是一致的,只是在使用符号和表达方式上有一定的区别。 功能块图采用类似于数字逻辑门电路的图形符号,逻辑直观,使用方便,它没有梯形图语言中的触点和线圈,但拥有与之等价的指令。 顺序功能图亦称功能图。SFC编程方法是法国人开发的,是一种真正的图形化编程方法。SFC专用于描述工业顺序控制程序,使用它可以对具有并发、选择等复杂结构的系统进行编程,特别适合在复杂的顺序控制系统中使用。 指令表编程语言类似于计算机中的助记符汇编语言,它是PLC*基础的编程语言,所谓指令表编程,是用一个或几个容易记忆的字符来代表PLC的某种操作功能,按照一定的语法和句法编写出一行一行的程序,来实现所要求的控制任务的逻辑关系或运算。 结构化文本是一种**的文本语言,是一种较新的编程语言。结构化文本语言表面上与PASCAL语言很相似,但它是一个专门为工业控制应用开发的编程语言,具有很强的编程能力,与梯形图相比,它能实现复杂的数**算,编写的程序非常简洁和紧凑。