西门子plc位逻辑指令(stl)
- 格式:doc
- 大小:38.00 KB
- 文档页数:3


1 位逻辑指令综合实验
——————————————————————————————
实验目的:
1. 体会PLC的工作过程,尤其是扫描工作方式对程序执行的影响;
2. 体会P触点“能流导通一个周期”的实用意义;
3. 体会SR锁存器的作用、实际应用;
项目要求:按下瞬动按钮I0.6,Q0.0接通;再按下I0.6,Q0.0断开,如此反复。
项目过程:新建项目→添加新设备→编写指令→仿真检验
程序如下:
2
SR锁存器③的M0.0用于存储置位或复位的结果;
P触点①用于捕捉I0.6被按下去时的正跳变;
常闭触点②用于实现④Q0.0为0时,按下I0.6后Q0.0置位为1;
常开触点⑥用于实现④Q0.0为1时,按下I0.6后Q0.0复位为0;
————————————————————————————————
过程解释:
周期扫描时间极短,短于按钮按下-松开所用时间,因此可以将过程细分为几步,便于观察
1.打开程序监控。未按下I0.6。
2.按下I0.6(不松开)
扫描输入端口,读入I0.6状态,上升沿,P触点后面能流导通,S=1,R=0,则M0.0置1、Q端输出能流,Q0.0置1,相应的常闭断开、常开闭合。
此时SR锁存器会复位吗?
同一个周期内后面指令的逻辑运算结果不影响前面的逻辑关系(指令已经被运行了,一个周期内不会重复执行第二次),此时,Q0.0常开闭合、常闭断开,这是锁存器指令段逻辑运算的结果,这些结果被保存下来供下一次循环时使用。PLC从上往下扫描,不会再执行锁存器指令段,因此本周期内锁存器并不会复位,Q0.0输出不会被复位。
当一个扫描周期结束后,两个P触点后面的能流都断开,S=0、R=0,SR锁存器进入保持状态,锁存器仍旧不会复位。 闭合
断开
3
有的教材称SR锁存器体现复位优先是通过“先置位后复位”,此说不准确。使用锁存器时一定是同时比较S、R两端的信号,按下表得出结果,不存在先什么后什么。
西门子PLC置位与复位指令图解
本文介绍西门子s7-200 plc的置位与复位,这两个位操作的指令在我们的程序编写中,作用也是很大,它能完成一些,常规常开常闭触点编程无法完成的程序,可以使我们编写的PLC程序条理更加清晰,步骤更加简单。
它们两个在每次使用时99%的情况下都是成对出现的,只要我们在程序一个地方使用了置位,在程序的另一个地方就会用到复位。所以永远都是你等着我,我等着你,只要你要不来我就不老。置位与复位的大体意思就是,置位是对一个位写1(有输出),复位就是写0(没有输出)。下面介绍使用法。
图1
如图1,是西门子s7200 PLC的,启动,保持,停止的控制电路和程序,我们知道右边的这个程序,它是用单纯的常开和常闭的位操作指令编写的,可以完成自锁的功能。大家不太明白的再看一下上一节。但除了以上介绍的,这个自锁功能还能用我们今天讲的置位和复位操作来完成。程序如下。
图2
图2,左边就是使用置位复位编写的PLC程序,感觉是不是比以前编写的程序,清晰简单多了,右边是置位复位操作指令的每一个部分的分解说明,已经写的很明白了就不用讲了。如果还是没看明白就接着往下看,看一看PLC置位复位程序的执行过程就明白了。
图3
如图3,这个是PLC置位复位程序的置位执行步骤:
1,外部常开按钮没有按下时I0.0没有接通,Q0.1置位线圈就没有输出。
2,外部常开按钮按下时I0.0接通,Q0.1置位线圈就有了输出。
3,松开外部常开按钮时I0.0断开没有接通,虽然I0.0已经断开没有了接通,但Q0.1置位线圈依然还是有输出,实现了自锁功能。直到有复位信号时它才会没有输出,这就是置位操作指令的特点。
简单不。接下来看复位的操作。
图4
如图4,这个是PLC置位复位程序的复位执行步骤:
4,外部常闭按钮没有按下时I0.5没有接通,Q0.1复位线圈就没有输出。
5,当外部常闭按钮按下时I0.5接通,Q0.1复位线圈就有了输出。它就会复位置位线圈Q0.1,这样Q0.1就没有了输出。
S7-300/400语句表指令
助记符 分类 说 明
+ 整数算术运算指令 加上一个整数常数(16 位,32 位)
= 位逻辑指令 赋值
) 位逻辑指令 嵌套闭合
+AR1 累加器指令 AR1 加累加器 1 至地址寄存器 1
+AR2 累加器指令 AR2 加累加器 1 至地址寄存器 2
+D 整数算术运算指令 作为双整数(32 位),将累加器 1 和累加器 2 中的内容相加
–D 整数算术运算指令 作为双整数(32 位),将累加器 2 中的内容减去累加器 1
中的内容
*D 整数算术运算指令 作为双整数(32 位),将累加器 1 和累加器 2 中的内容相乘
/D 整数算术运算指令 作为双整数(32 位),将累加器 2 中的内容除以累加器 1
中的内容
D 比较指令双整数(32 位)比较 ==,<>,>,<,>=,<=
+I 整数算术运算指令 作为整数(16 位),将累加器 1 和累加器 2中的内容相加
–I 整数算术运算指令 作为整数(16 位),将累加器 2 中的内容减去累加器 1 中的内容
*I 整数算术运算指令 作为整数(16 位),将累加器 1 和累加器 2中的内容相乘
/I 整数算术运算指令 作为整数(16 位),将累加器 2 中的内容除以累加器 1 中的内容
I 比较指令 整数(16 位)比较 ==,<>,>,<,>=,<=
S7-200PLCSTL指令表(按字母顺序排列)
STL 页码 STL 页码 STL 页码 STL 页码 STL 页码
= 73 AW>= 96 IBCD 99 MOVB 164 RLW 179
+D 140 AW<> 96 INCB 144 MOVD 164 ROUND 99
--D 140 BCDI 99 INCD 144 MOVR 164 RRB 179
*D 140 BIR 165 INCW 144 MOVW 164 RRD 179
/D 140 BITIM 196 INVB 161 MUL 142 RRW 179
+I 140 BIW 165 INVD 161 NEXT 169 RTA 103
--I 140 BMB 166 INVW 161 NETR 81 RTS 107
=I 73 BMD 166 ITA 103 NETW 81 S 73
*I 140 BMW 166 ITB 99 NOT 70 SCAT 184
/I 140 BTI 99 ITD 99 O 70 SCPY 184
+R 140 CALL 204 ITS 107 OB= 96 SCRE 172
--R 140 CEVNT 153 JMP 171 OB>= 96 SCRT 172
*R 140 CFND 187 LBL 171 OB> 96 SEG 99
/R 140 CITIM 196 LD 70 OB< 96 SFND 187
A 70 COS 143 LDB<= 96 OB<= 96 SHRB 181
AB<= 96 CRET 204 LDB= 96 OB<> 96 SI 73
AB= 96 CRETI 153 LDB>= 96 OD< 96 SIN 143
AB> 96 CSCRE 172 LDB> 96 OD<= 96 SLB 179
AB< 96 CTD 113 LDB< 96 OD= 96 SLD 179