第3章编程语言和逻辑指令.ppt

上传人:本田雅阁 文档编号:2979523 上传时间:2019-06-17 格式:PPT 页数:34 大小:657.01KB
返回 下载 相关 举报
第3章编程语言和逻辑指令.ppt_第1页
第1页 / 共34页
第3章编程语言和逻辑指令.ppt_第2页
第2页 / 共34页
第3章编程语言和逻辑指令.ppt_第3页
第3页 / 共34页
第3章编程语言和逻辑指令.ppt_第4页
第4页 / 共34页
第3章编程语言和逻辑指令.ppt_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《第3章编程语言和逻辑指令.ppt》由会员分享,可在线阅读,更多相关《第3章编程语言和逻辑指令.ppt(34页珍藏版)》请在三一文库上搜索。

1、第3章 PLC编程语言与基本逻辑指令,3.1 PLC的编程语言 3.1.1 PLC编程语言国际标准 IEC(国际电工委员会)于1994年5月公布了PLC标准IEC1131,该标准由以下5个部分组成:通用信息,设备与测试要求,编程语言,用户指南和通信。 其中,有5种编程语言表达方式: a.顺序功能图(Sequential function chart) b.梯形图(Ladder diagram) c.功能块图(Function block diagram) d.指令表(Instruction list) e.结构文本(Structured text),第3章 PLC编程语言与基本逻辑指令,3.1

2、 PLC的编程语言 1、顺序功能图(SFC) 顺序功能图是一种组织程序的图形方式(如右图所示),它由步、转换和动作组成。 步是一种逻辑块,对应于特定的控制任务;动作是控制任务的独立部分;转换是从一个任务到另一个任务的原因。,顺控功能图,第3章 PLC编程语言与基本逻辑指令,3.1 PLC的编程语言 2、梯形图(LD) 梯形图是使用最多的PLC编程语言,因为与继电器接触器控制图相似,梯形图也是最受电气工程技术人员欢迎的编程语言。 梯形图(如右图所示)是通过PLC内部器件如输入、输出、辅助继电器、定时器/计数器等实现控制的,是一种图形语言。,梯形图示例,第3章 PLC编程语言与基本逻辑指令,3.1

3、 PLC的编程语言 3、指令表(IL) 指令表语言类似于计算机的汇编语言,以助记符指令为基础。它由若干条指令组成 。 如: LD X0 OR Y0 ANI X1 OUT Y0 指令表程序的逻辑关系不明显,阅读比较困难,所以在设计时一般用梯形图语言。如果使用编程软件编程,可以直接将梯形图写入PLC,但如果使用简易编程器编程,则必须将梯形图转换成指令表后才能写入PLC。,第3章 PLC编程语言与基本逻辑指令,3.1 PLC的编程语言 4、功能块图 功能块图类似于数字逻辑电路,它用类似与门、或门的方框来表示逻辑关系,方框的左侧为输入变量,右侧为输出变量,信号自左向右流动。在与控制元件之间的信息、数据

4、流动有关的高级应用场合。,5、结构文本(ST) 结构文本是为IEC1131-3标准创建的一种专用的高级编程语言(如Pascal,Basic,C语言等),与梯形图相比,结构文本有两大优点,其一是能实现复杂的数学运算,其二是非常简洁和紧凑,用结构文本编制的极其复杂的程序可能只占一页纸。,功能块图,第3章 PLC编程语言与基本逻辑指令,3.1 PLC的编程语言 3.1.2 梯形图的主要特点 某些元件沿用了继电器的名称,如输入继电器、输出继电器、内部辅助继电器等,但它们不是真实的物理继电器,而是在软件中使用的编程元件; 梯形图两侧的垂直公共母线称为公共母线。可以想象左右两侧母线之间有一个左正右负的直流

5、电源电压,当某回路连通时,有一个假想的“概念电流”或“能流”从左向右流动。 根据梯形图中各触点的状态和逻辑关系,求出与图中线圈对应的编程元件的ON/OFF状态,称为梯形图的逻辑解算。逻辑解算是按梯形图中从上到下、从左到右的顺序进行的。 梯形图中各编程元件的常开触点和常闭触点均可以无限多次地使用。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 PLC内部有许多具有不同功能的器件,用于实现数据的传输、运算、处理和存储。由于PLC的初始设计在很大程度上是为了电气工程师使用方便,许多器件的名称沿用了电气工程中常用的名称,如“继电器”、“母线”等。为了与通常的物理器件区分开,我

6、们将这些编程元件称为“软器件”或“软继电器”。每一个“软继电器”都有一个线圈(输入继电器除外)和无数个“常开触点”和“常闭触点”供用户编程使用。 FX2N系列PLC中的软元件有输入继电器X、输出继电器Y、辅助继电器M、状态元件S、定时器T、计数器C、指针P/I、常数K/H、数据寄存器D和变址寄存器V/Z。本节只对常用元件作简单介绍。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 1、输入继电器(X) 输入继电器与PLC的输入端子相连,其功能是接收和暂存现场输入开关的状态值。它有常开和常闭触点,但无线圈。输入继电器只能由外部开关驱动,不能用程序驱动。 2、输出继电器(Y

7、) 输出继电器是PLC向外部负载发送信号的窗口,其功能是将PLC的输出信号传送给输出模块,再由输出模块驱动外部负载。输出继电器由内部程序驱动。每个输出继电器有许多常开和常闭触点供编程使用,但只有一个外部输出的常开触点,即只有一个常开触点连接到PLC的输出端。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 FX2N系列PLC的输入继电器和输出继电器的元件编号均用八进制数表示,如下表所示。,FX2N系列PLC输入/输出继电器元件号表,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 3、辅助继电器(M) 辅助继电器是用软件来实现其逻辑功能的。它们不能

8、接收外部输入信号,出不能直接驱动外部负载,相当于继电器控制系统中的中间继电器。 根据其功能可分为: 通用辅助继电器M0M499 断电保持辅助继电器M500M3071 特殊辅助继电器(256个),第3章 PLC编程语言与基本逻辑指令,(1)通用辅助继电器M0M499 共500点,采用十进制编号,如PLC断电,该继电器中的内容全变为OFF。 (2)断电保持辅助继电器M500M3071 共有2572点,它们能记忆电源中断瞬时的状态,并在电源恢复时再现其状态,其中M500M1023(524点)可用软件设定,变为非断电保持辅助继电器。 (3)特殊辅助继电器(256个) 共有256点。用来表示PLC的某些

9、状态,提供时钟脉冲和标志(如进、借位标志),设定PLC的运行方式或用于步进顺控、禁止中断、设定计数器等。 触点利用型: M8000(运行监视):当PLC运行时,M8000为ON;当停止运行时,M8000为OFF; M8002(初始化脉冲):M8002仅在M8000由OFF变为ON时的一个扫描周期内为ON,常用于对具有断电保持功能的元件进行初始化复位或清零; M8005(锂电池电压降低):电池电压下降至规定值时变为ON; M8011M8014:分别是10ms、100ms、1s和1min的时钟脉冲。 线圈驱动型: M8030(电池关灯指令):当M8030为ON时,PLC面板上的“电池电压降低”发光

10、二极管熄灭; M8033(存储保存停止):当M8033为ON时,PLC由RUN进入STOP状态,映像寄存器和数据寄存器的内容保持不变; M8034(全输出禁止):当M8034为ON时,禁止输出; M8039(恒定扫描方式):当M8039为ON时,PLC以D8039中指定的扫描时间工作。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 4、状态(S) 状态元件是用于编制顺序控制程序用的编程元件,与STL指令配合使用;它也可以作为普通的辅助继电器使用,也可作信号器,用于外部故障诊断的输出。 FX2N系列PLC有状态元件S0S999,共1000点。S0S499为通用状态元件,

11、没有断电保持功能,其中S0S9供初始状态用,S10S19供返回原点用。S500S899有断电保持功能,S900S999供程序流程故障诊断用。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 5、定时器(T) PLC中的定时器相当于继电器接触器控制系统中的时间继电器。FX2N系列PLC的定时器为T0T255,共256点,分为通用定时器和积算定时器两种。常数K作为定时器的设定值,设定范围为132767。 通用定时器T0T245共246点,其中T0T199为100ms定时器,定时范围为0.13276.7s,T192T199为子程序和中断服务程序专用的定时器;T200T245为

12、10ms定时器(共46点),定时范围为0.01327.67s。 积算定时器T246T255,其中T246T249为1ms积算定时器,定时范围为0.00132.767s;T250T255为100ms积算定时器,定时范围为0.13276.7s。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 通用与积算定时器的区别: 通用定时器在计数当中若驱动输入(如X0)断开或发生停电,计数器及输出接点复位,而积算定时器在计数中途若驱动输入(如X1)断开或断电,当前值可保持,当输入再次接通或恢复供电时,计数仍继续进行,直到累积时间达到设定值,输出接点动作。如右图所示。,(a)通用定时器,

13、(b)积算定时器,通用定时器和积算定时器的动作时序,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 6、计数器(C) FX2N系列PLC的计数器共有256个,从C0C255。 根据目的和用途分为两种: 内部计数器 16位加计数器 32位加/减计数器 高速计数器 内部计数器用来对PLC的内部信号X、Y、M、S等计数,其响应速度通常为10Hz以下。内部计数器输入信号的接通与断开的持续时间应大于PLC的扫描周期。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 6、计数器(C) 16位加计数器从C0C199,共200点,其中C0C99为通用型,C100

14、C199为断电保持型,其设定值为132767。右图为加计数器的工作过程。,计数器的用法与时序,32位加/减计数器的设定值为-2147483648 +2147483647, 其中C200C219为通用型,C220C234为断电保持型。C200C234的加/减计数方式由特殊辅助继电器M8200M8234设定,如为 ON,为减计数器,反之为加计数器。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 7、数据寄存器(D) 数据寄存器(D) 用来存储数据和参数,为16位数据宽度,两个合并起来可以存放32位数据。 根据目的和用途分为: 通用数据寄存器D0D199 断电保持数据寄存器

15、D200D7999 特殊数据寄存器D8000D8255 变址寄存器V0V7和Z0Z7 用来改变编程元件的元件号,当V0=8时,数据寄存器元件号D5V0相当于D13,在32位操作时将V,Z合并使用,Z为低位。,第3章 PLC编程语言与基本逻辑指令,3.2 FX系列PLC的编程元件 8、指针P/I 分枝用指针P0P127 用来指示跳转指令的跳步目标和子程序的入口地址。 中断用指针I 用来指明某一中断源的中断程序入口标号。,分支用指针的使用,FX系列PLC共有27条基本逻辑指令,此外还有一百多条功能指令。 3.3.1 逻辑取及输出线圈( LD 、 LD1 、 OUT ) LD(Load):取指令,常

16、开触点与母线连接的指令。 LDI(Load Inverse):取反指令,常闭触点与母线连接的指令。 OUT(Out):驱动线圈的输出指令。,3.3 FX系列PLC的基本逻辑指令,LD、LDI、OUT 指令的用法,3.3.2单个触点串联指令AND、ANI AND(And):与指令,常开触点串联连接指令。 ANI(And Inverse):与反指令,常闭触点串联连接指令。 AND、ANI均用于单个触点的串联,串联数目没有限制,该指令可以重复使用多次,其目标元件为X、Y、M、T、C、S。,3.3 FX系列PLC的基本逻辑指令,AND、ANI指令的使用,OUT指令后,通过触点对其它线圈使用OUT指令称

17、为连续输出,在顺序正确的前提下,可以多次使用。,3.3.3触点并联指令OR、ORI OR(Or):或指令,单个常开触点的并联连接指令。 ORI(Or Inverse):或反指令,单个常闭触点的并联连接指令。 OR 、ORI指令的目标元件为X、Y、M、T、C、S。,3.3 FX系列PLC的基本逻辑指令,OR、ORI指令的使用,OR、ORI指令紧接在LD、LDI指令后使用,亦即对LD、LDI指令规定的触点再并联一个触点,并联的次数无限制,但限于编程器和打印机的幅面限制,尽量做到24行以下。,3.3.4上升沿、下降沿检测触点LDP、LDF、ANDP、ANDF、ORP和ORF LDP、ANDP和ORP

18、是用来作上升沿检测的触点指令。 它们仅在指定元件的上升沿时接通一个扫描周期。 LDF、ANDF和ORF是用来作下降沿检测的触点指令。 它们仅在指定元件的下降沿时接通一个扫描周期。,检测指令的使用,3.3.5串联电路块的并联指令ORB ORB(Or Block):串联电路块的并联连接指令。 两个以上的触点串联连接而成的电路块称为“串联电路块”。将“串联电路块”并联连接时用ORB指令。ORB指令是一个独立指令,后无操作元件。,3.3 FX系列PLC的基本逻辑指令,ORB指令的使用,若有多条并联电路时,在每个电路块后使用ORB指令,对并联电路数没有限制,但考虑到LD、LDI指令只能连续使用8次,OR

19、B指令的使用次数也应限制在8次。,3.3.6并联电路块的串联指令ANB ANB(And Block):并联电路块的串联连接指令。 两个以上的触点并联连接而成的电路块称为“并联电路块”。ANB用于“并联电路块”的串联连接。同ORB一样,ANB后无操作元件。,3.3 FX系列PLC的基本逻辑指令,ANB指令的使用,ANB指令原则上可以无限制使用,但受LD、LDI指令只能连续使用8次影响,ANB指令的使用次数也应限制在8次。,3.3.7多重输出指令MPS、MRD、MPP FX系列PLC中有个栈存储器,用于存放中间运算结果。,3.3 FX系列PLC的基本逻辑指令,MPS、MRS、MPP指令的使用,使用

20、一次MPS时,当时的运算结果被压入栈的第一层,栈中原来的数据依次向栈的下一层推移;MPS用于读出第一层所存放数据,栈内的数据不发生移动;使用MPP指令时,各层的数据向上移动一层。MPS、MPP必须配对使用,而且MPS、MPP连续使用不得超过11次。MPS、MRD、MPP指令是三个独立指令,后无操元件。,3.3.8主控及主控复位指令MC、MCR 在编程时,经常遇到许多线圈同时受一个或多个接点控制的情况。如果每个线圈的扩展电路中都串入同样的接点,将多占用存储单元,使用主控指令可以解决这一问题。,3.3 FX系列PLC的基本逻辑指令,MC、MCR指令的使用,MC(Master Control):主控

21、指令,用于公共串联接点的连接。 MCR(Master Control Reset):主控复位指令,即MC的复位指令。,MC、 MCR的目的操作元件为Y、M(不包括特殊辅助继电器),N为嵌套级数,选择范围为N0-N7。MC指令后,母线移至MC触点后,返回原来母线用MCR,且MC、MCR必须成对使用。,3.3.9 取反指令INV INV(Inverse)指令:将执行该指令之前的运算结果取反。不需指定元件号。,3.3 FX系列PLC的基本逻辑指令,INV指令的使用,3.3.10脉冲输出指令PLS、PLF PLS(Pulse):上升沿微分输出,专用于操作元件的短时间脉冲输出。 PLF:下降沿微分输出,

22、控制线路由闭合到断开。 PLS和PLF只能用于元件Y和M,使用PLS指令, Y、M仅在驱动输入接通后的一个扫描周期内动作;使用PLF指令, Y、M仅在驱动输入断开后的一个扫描周期内动作。,3.3 FX系列PLC的基本逻辑指令,PLS和PLF指令的使用,3.3.11置位指令和复位指令SET、RST SET(Set):置位指令,使操作保持的指令。 RST(Reset):复位指令,使操作保持复位的指令。,3.3 FX系列PLC的基本逻辑指令,SET和RST指令的应用,SET用于M、Y、S的置位;RST用于对M、Y、S的复位,并用于对T、C的复位,使它们的当前计时值和计数值清零。SET、RST指令具有

23、自保持功能。SET、RST指令的使用没有顺序限制,SET和RST之间可以插入别的程序。,3.3.12空操作指令和程序结束指令 NOP、END NOP(Non Processing):空操作指令,用于程序的修改。 NOP指令使该步序作空操作,在程序中只占一个步序,没有元件编号。在程序中加入NOP指令,改动或追加程序时,可以减少步序号的改变,另外,用NOP指令替换已写入的指令,也可改变电路。LD、LDI、AND、ORB等指令若换成NOP指令,电路构成将有大幅度变化。执行程序全清操作后,全部指令变成NOP。 END(End):程序结束指令。 END指令用于程序的结束,是无元件编号的独立指令。用户程序

24、结束时,若不写入END程序,PLC将从用户程序存储器的第一步执行到最后一步,若加上END指令,则只执行第一步到END之间的程序,因此,使用END指令可以缩短扫描周期。某些PLC要求在用户程序结束时必须使用END指令。,3.3 FX系列PLC的基本逻辑指令,3.4 编程注意事项,1.双线圈输出 如在同一个程序中,同一元件的线圈使用了两次或多次,称为双线圈输出。这时前面的结果是临时的,最后一次输出才是有效的。 注意:双线圈输出并不违反编程规则,但由于其逻辑复杂,在实际使用中应尽量回避,可将多个回路进行合并。,3.4 编程注意事项,2.程序优化 在设计并联回路时,应将单触点的支路放在下面;设计串联回路时,应将单触点放在右边,否则将多使用一条指令。,3.4 编程注意事项,3.不能编程的回路 a.桥式回路,b.线圈不能放在元件的左测,3.4 编程注意事项,记住四句话: 水平不垂直 多上串右 线圈右边无触点 双线圈输出不可用,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1