6ES7317-6FF04-0AB0现货供应
CP1H的指令由助记符和操作数两部分组成。指令的格式可以表示为
助记符(功能码)操作数1
操作数2
操作数3
助记符表示指令的功能,表明执行该指令能够实现的操作。助记符通常是一些简洁易记的字母(如LD、TIM、MOV等)或符号(如-、+等)。
功能码是指令的代码,CP1H指令的功能码用三位十进制(000~891)表示。功能码用于手持式编程器进行编程时输入应用指令。基本指令没有功能码,应用指令均有功能代码,如MOV(021)。
操作数是预设的指令参数,这些参数用于指定I/O存储区的数据或常数。在操作数中,通过输入地址或者常数,指令可以执行运算。
操作数分为源操作数、目标操作数及数值操作数,如图1所示。表1列出了各种操作数的标记和含义。
图1 操作数分类示意
表1 CP1H指令的操作数类型及含义
在plc里,有些指令不带操作数,如取指令(LD)。有些指令带一个操作数,如跳转指令(JMP),还有的指令带两个(如MOV、CMP)或两个以上的操作数。
操作数可以是继电器号、通道号(地址)或是常数。为了区分一个操作数是常数还是通道号,在作为操作数的常数前面要加前缀#或&。如图2所示,个MOV指令传送的是常数0,第二个MOV传送的是0通道号里的数据。操作数为常数时,可以是十六进制或十进制,这取决于指令的要求。一般地,十六进制前加#,十进制前加&。
图2 常数操作数和地址操作数示意
plc有多种编程语言,根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3),PLC的编程语言包括以下五种:梯形图语言(LD)、助记符语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。常用的编程语言是梯形图和助记符两种方式。梯形图源于继电器控制电路图,具有直观易懂的特点,需要计算机及相应的编程软件;助记符编程只需要一台简易编程器,而不必用昂贵的图形编程器或计算机来编程,便于现场调试实验。梯形图和助记符设计语言有一一对应关系,便于相互转换和程序检查。 梯形图由左右母线、连接线、节点、输出线圈、应用指令组成。程序由多个电路构成。所谓电路是指切断母线时可以分割的单位,电路由以LD/LDNOT指令为前端的电路块构成。在梯形图里电路也叫梯级。 助记符程序又称语句或语句程序,是用指令语言记述梯形图的一系列程序,具有程序地址。 梯形图程序编制过程中注意以下事项: (1)PLC执行梯形图程序时,信号(功率流)的流向为左→右。 (2)输入输出继电器、内部辅助继电器、定时器等节点的使用次数没有限制,但应尽量简化电路结构。 (3)在串联、并联电路中,构成串联的节点数和构成并联的节点数没有限制。 (4)能够并联连接两个以上输出线圈或输出系指令。如图1所示,图(a)并联两个输出线圈,图(b)并联一个输出线圈一个输出系指令。
图1 并联输出梯形图 (5)输出线圈能够作为节点使用,参与逻辑运算。如图2所示,输出线圈Q:102.00作为下一个线圈动作的条件,箭头所指的是它作常开触点用的符号及地址。线圈Q:102.00得电,则它的常开触点为“ON”,常闭触点为“OFF”。
图2 线圈作触点用 (6)必须按照从左母线的信号(功率流)向右母线流动一样的顺序来关闭梯形图程序。没有关闭时为“电路出错”。 (7)不能直接通过左母线来连接输出线圈、定时器、计数器等输出指令,直连时电路出错。 (8)输出线圈等输出指令的后面不能插入节点。节点必须插到输出线圈等输出指令的前面。 (9)不能重复使用输出线圈的继电器编号。一个周期中由于梯形图程序按照从高位电路到低位电路的顺序来执行。重复使用时,位于后面的电路动作会把前面的动作结果覆盖,得不到正确结果所示。 (10)在各任务和子程序的结束处插入END指令。程序中有多个END指令时,仅执行到初的END指令为止的程序。调试程序时,可为每个时序电路的分段插入END指令,便于调试。 |
FX系列 plc的步进指令有两条:步进触点驱动指令STL和步进返回指令RET。 表1 步进阶梯指令助记符与功能 步进接点指令只有常开接点,连接步进接点的其它继电器接点用指令LD或LDI开始。步进返回指令(RET)用于状态(S)流程结束时,返回主程序(母线)。步进指令在状态转移图和状态梯形图中的表示如图1所示。 图1步进指令表示方法 图3-2-4(b)中每个状态的内母线上都将提供三种功能: ①驱动负载(OUT Yi); ②指定转移条件(LD/LDI Xi); ③指定转移目标(SET Si)。称为状态的三要素。后两个功能是必不可少的。 **行驱动动作处理,进行状态转移处理,不能颠倒。 驱动步进触点用STL指令,驱动动作用OUT指令。若某一动作在连续的几步中都需要被驱动,则用SET/RST指令。 单一的转换条件用LD/LDI指令,多个条件用LD/LDI后面接AND(ANI)/OR(ORI)指令。 连续向下的状态转换用SET指令,否则用OUT指令。 相邻两步的动作若不能被驱动,则需要安排相互制约的联锁环节。 步进顺控的结尾必须使用RET指令 1、栈操作指令MPS/MRD/MPP在状态内不能直接与步进接点指令后的新母线连接,应接在LD或LDI指令之后。 图3 栈操作指令在状态内的正确使用 2、允许同一编号元件的线圈在不同的STL接点后面多次使用。应注意,同一编号的定时器线圈不能在相邻的状态中出现。在同一个程序段中,同一状态继电器地址号只能使用一次。 3、为了控制电机正反转时避免两个线圈接通短路,在状态内可实现输出线圈互锁。 4、状态程序的起始必须使用初始状态S0~S9。在SFC中初始状态要用双线矩形框表示,并要由其它条件或M8002激发启动它运行。如图(a)(b)所示。 |