PLC指令集整理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西门子PLC S7-200指令集
一、基本位操作指令
1. 逻辑取(装载)及线圈驱动指令
(1)LD(load):常开触点逻辑运算的开始。
LDN(load not):常闭触点逻辑运算的开始(对操作数的状态取反)=(OUT):线圈驱动(赋值指令)。对同一元件只能使用一次。
(2)指令格式
2. 触点串联指令A(And),AN(And not)
(1)A(And):串联连接常开触点。
AN(And not)串联连接常闭触点。
(2)指令格式
3. 触点并联指令:O(OR),ON(ORNOT)
(1)O(OR):并联连接常开触点。
ON:并联连接常闭触点。
(2)指令格式
4. 逻辑环节(电路块)的串联指令ALD
(1)ALD(And load) :用于串联连接并联触点组成的电路块。(2)指令格式
5. 逻辑环节(电路块)的并联指令OLD
(1)OLD(OR load) :用于并联连接串联触点组成的电路块。(2)指令格式
6. 置位/复位指令S/R
(1)置位指令S:使能输入有效后从起始位S-bit开始的N个位置“1”并保持。
复位指令R:使能输入有效后从起始位S-bit开始的N个位清“0”并保持。
(2)指令格式
7. 脉冲生成指令EU/ED
(1)EU指令:在EU指令前的逻辑运算结果有一个上升沿时(由OFF→ON)产生一个宽度为一个扫描周期的脉冲,驱动后面的输出线圈。
ED指令:在ED指令前有一个下降沿时产生一个宽度为一个扫描周期的脉冲,驱动其后线圈。
(2)指令格式
8. 定时器指令
(1)通电延时定时器(TON)、有记忆的通电延时定时器(TONR)和失电延时定时器(TOF)
(2)指令格式
9. 计数器指令
(1)增计数器(CTU)、减计数器(CTD)和增/减计数器(CTUD)。
(2)指令格式
10. 比较触点指令
(1)比较指令与基本逻辑指令LD、A、O进行组合后编程,当比较结果为真时,将栈顶值置为1。
== 等于
>= 大于等于
<= 小于等于
>大于
<小于
<>不等于
(2)指令格式
11.循环指令
(1)使能输入端(EN)有效,循环体开始执行,执行到NEXT指令时返回。每执行一次循环体,当前计数器加1,达到终值(FINAL)时,结束循环。
(2)指令格式
(3)使用说明
(A)FOR和NEXT必须成对使用
(B)必须给FOR指令指定循环计数器(INDX)、初值(INIT)和
终值(FINAL)。
(C)FOR和NEXT之间的程序步称为循环体,每执行一次循环体,计数器加1,并将其结果与循环终止比较,如果大于终值则停止循环。
(D)FOR和NEXT指令可以嵌套,但最多嵌套8层,但各嵌套层不可交叉。
(E)如初值大于终值时,循环体不被执行。
(4)指令举例
12.子程序操作(调用)指令
(1)在程序的实际应用中,有些程序内容可能被反复使用,对这些被反复使用的程序可编成一个单独的程序块。执行程序时可随时调用这些程序块,这类程序块叫做子程序。
(2)子程序操作指令
(3)指令使用说明
(A)主程序可以用CALL指令来调用一个子程序,该指令把程序控制权
交给子程序n。
(B)当执行子程序时,子程序将执行全部指令直至满足返回条件才返
回,或执行到子程序末尾而返回。
(C)子程序返回时,返回到原主程序出口的下一条指令执行,继续往下扫描程序。(D)在中断程序、子程序这可以调用子程序,但子程序不能调用自己。
子程序的嵌套深度为8层。子程序的调用还可以带参数。
(4)指令举例
13.传送指令
(1)数据传送指令
字节传送字传送双字节传送实数传送(2)数据块传送指令
14.数学运算指令
1.加法指令
2.减法指令
3.乘法指令
4.除法指令
15.转换指令
1.BCD码与整数的转换:
BCD码转为整数(BCDI)指令,将输入端(IN)指定的BCD码转换成整数,并将结果存放到输出端(OUT)指定的存储单元中去。输入数据的范围是0到9999(BCD码)。
整数转为BCD码(IBCD)指令,将输入端(IN)指定的整数转换成BCD码,并将结果存放到输出端(OUT)指定的存储单元中去。输入数据的范围是0到9999。
2.双字整数与实数的转换:
实数转为双字整数指令可分为四舍五入取整(ROUND)和舍去尾数后取整(TRUNC)指令。双字整数转为实数(DTR)指令:将输入端(IN)指定的32位有符号整数转换成32位实数ROUND取整指令,转换时实数的小数部分四舍五入。
TRUNC取整指令,实数舍去小数部分后,转换成32位有符号整数。
3.双整数与整数的转换:
输入端(IN)的有符号双整数转换成整数,并存入OUT。被转换的输入值应是有效的双整数,否则溢出位(SM1.1)被置位。
欲将整数转换为实数,可先用ITD指令把整数转换为双整数,然后再用DTR指令把双整数转换为实数。
4.圆整与取整:
圆整是将实数转换成双整数,并存入OUT。如果小数部分大于0.5就进一。
取整是将实数变为带符号的双整数,小数部分佘弃。
5.译码与编码:
译码是将输入字节的低4位所表示的数在输出字中对应位置1。
编码是将输入字的最低有效位(=1)的位号写入输出字节的低4位。