![西门子PLC从入门到精通](https://wfqqreader-1252317822.image.myqcloud.com/cover/666/27126666/b_27126666.jpg)
2.2 位逻辑指令
位逻辑指令主要指对PLC存储器中的某一位进行操作的指令,它的操作数是位。位逻辑指令包括触点指令和线圈指令两大类,常见的触点指令有触点取用指令、触点串、并联指令、电路块串、并联指令等;常见的线圈指令有线圈输出指令、置位复位指令等。
位逻辑指令是依靠1、0两个数进行工作的,1表示触点或线圈的通电状态,0表示触点或线圈的断电状态。利用位逻辑指令可以实现位逻辑运算和控制,在继电器系统的控制中应用较多。
编者心语
① 在位逻辑指令中,每个指令的常见语言表达形式均有两种:一种是梯形图;另一种是语句表。
② 语句表的基本表达形式为操作码+操作数,其中操作数以位地址格式形式出现。
2.2.1 触点的取用指令与线圈输出指令
(1)指令格式及功能说明
触点取用指令与线圈指令格式及功能说明如表2-5所示。
表2-5 触点取用指令与线圈指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/8.jpg?sign=1738849612-CJ8seTEzdcjoOivgjnSGCmtmR1nV8PLz-0-608b2c159e1ba0dbbc1edd88170c7ae9)
(2)应用举例
触点取用指令与线圈指令应用举例如图2-25所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d25.jpg?sign=1738849612-IKgv7LjzFZzaUH3jIU2o62PZQOX1Pr4Q-0-ba7de74519a1b38a4ed7f73480796893)
图2-25 触点取用指令与线圈指令应用举例
2.2.2 触点串联指令
(1)指令格式及功能说明
触点串联指令格式及功能说明如表2-6所示。
表2-6 触点串联指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/9.jpg?sign=1738849612-pEPcmzUjy3JYU9I2drkh3fhZCkKYENQD-0-83f92dcb999d6d42d2072b73a3e86a14)
(2)应用举例
触点串联指令应用举例如图2-26所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d26.jpg?sign=1738849612-QQZfqaNrLlXWFg1Ki2DPJhagdYlT8Dd7-0-6a051c21b96a462b105e10501706f156)
图2-26 触点串联指令应用举例
2.2.3 触点并联指令
(1)指令格式及功能说明
触点并联指令格式及功能说明如表2-7所示。
表2-7 触点并联指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/10.jpg?sign=1738849612-WpJoF20MHLg6TaLicnpV0l9HGaU6yInF-0-05e8063ee36f265c7048663f85c77cfd)
(2)应用举例
触点并联指令应用举例如图2-27所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d27.jpg?sign=1738849612-u7AHI5IP4bH5l0BqPmyU9kCbJ6T4dWbc-0-e0671c762121c211100056a35b021ad3)
图2-27 触点并联指令应用举例
2.2.4 电路块串联指令
(1)指令格式及功能说明
电路块串联指令格式及功能说明如表2-8所示。
表2-8 电路块串联指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/111.jpg?sign=1738849612-oLuCDFE1CoYYgvqNfIbzk4BR6eDV5He7-0-b3bc03ab13f343afdae1bb537f62c6ed)
(2)应用举例
电路块串联指令应用举例如图2-28所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d28.jpg?sign=1738849612-4QMtcElKfDkhCQxBuOGgHth4x44fcPdD-0-f2de7017f71e6b3a3fc5959383bf2861)
图2-28 电路块串联指令应用举例
2.2.5 电路块并联指令
(1)指令格式及功能说明
电路块并联指令格式及功能说明如表2-9所示。
表2-9 电路块并联指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/121.jpg?sign=1738849612-l4dDreQF8SgHKml2yNza2Uw4rRTDUsJa-0-2b219cec35f2b2759c3c0998e56ff36f)
(2)应用举例
电路块并联指令应用举例如图2-29所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d29.jpg?sign=1738849612-Wug6sIVCegVtGkn44DMwnw2sKeYaUHyq-0-5687ebe9c23cf8698c8e1ac4a2e59eef)
图2-29 电路块并联指令应用举例
2.2.6 置位与复位指令
(1)指令格式及功能说明
置位与复位指令格式及功能说明如表2-10所示。
表2-10 置位与复位指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/131.jpg?sign=1738849612-Wvj5a0eJjXADBTdaHv2sMfouNTybHrXZ-0-7d47992fed95deb8321e2e1a21c7f8dc)
(2)应用举例
置位与复位指令应用举例如图2-30所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d30.jpg?sign=1738849612-rApipZuyEGu0UrBLb9w24RwyRgMRLQv5-0-6dda81178df2eee83b4656addd64d5ae)
图2-30 置位与复位指令应用举例
2.2.7 脉冲生成指令
(1)指令格式及功能说明
脉冲生成指令格式及功能说明如表2-11所示。
表2-11 脉冲生成指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/14.jpg?sign=1738849612-W41LejMbvMR2EkfRC0A7RNGTlcZgp5k5-0-b413a2928159533e89d23e037ddcbc14)
(2)应用举例
脉冲生成指令应用举例如图2-31所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d31.jpg?sign=1738849612-8PXxQUNL6qgbC9JWJt4mt708l4cZORj1-0-f10639f08a3e1befac5152ba20f2135d)
图2-31 脉冲生成指令应用举例
(3)由特殊内部标志位存储器构成的脉冲发生电路举例
脉冲发生电路是应用广泛的一种控制电路,它的构成形式很多,如图2-32所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d32.jpg?sign=1738849612-JJYjrp5EnxkUCHG99VmdaRCk3svP54xX-0-1907bcbba6eaa68005b4eed1942ce4c9)
图2-32 由SM0.4和SM0.5构成的脉冲发生电路
SM0.4和SM0.5构成的脉冲发生电路最为简单,SM0.4和SM0.5是最为常用的特殊内部标志位存储器。SM0.4为分脉冲,在一个周期内接通30s、断开30s,SM0.5为秒脉冲,在一个周期内接通0.5s、断开0.5s。
2.2.8 触发器指令
(1)指令格式及功能说明
触发器指令格式及功能说明如表2-12所示。
表2-12 触发器指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/15.jpg?sign=1738849612-XnFdLbRu3ZRIzEoSKbIoHQCBvyGTkvLr-0-5e9235aeba6157e099e862e4be52fa9c)
(2)应用举例
触发器指令应用举例如图2-33所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d33.jpg?sign=1738849612-KV3MPlPRaTwz5HkA4XnIDCoBlyalWjVo-0-29faee395dcd22d128f291f65446ed36)
图2-33 触发器指令应用举例
2.2.9 取反指令与空操作指令
(1)指令格式及功能说明
取反指令与空操作指令格式及功能说明如表2-13所示。
表2-13 取反指令与空操作指令格式及功能说明
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/16.jpg?sign=1738849612-PR4udwj9myM2J6CvgdQz2m59zTrZI2Wm-0-6391b71f52cc2efbc2e2cdcdff17b5ca)
(2)应用举例
取反指令与空操作指令应用举例如图2-34所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d34.jpg?sign=1738849612-K5WZO9ibhNOrXyVf49RGasxWoqRgDwHM-0-b1b58499687cd6276f1fbca09fdfb769)
图2-34 取反指令与空操作指令应用举例
2.2.10 逻辑堆栈指令
堆栈是一组能够存储和取出数据的暂存单元。在S7-200PLC中,堆栈有9层,顶层叫栈顶,底层叫栈底。堆栈的存取特点是“后进先出”,每次进行入栈操作时,新值都放在栈顶,栈底值丢失;每次进行出栈操作时,栈顶值弹出,栈底值补进随机数。
逻辑堆栈指令主要用来完成对触点进行复杂连接,配合ALD、OLD指令使用,逻辑堆栈指令主要有逻辑入栈指令、逻辑读栈指令和逻辑出栈指令,具体如下。
(1)逻辑入栈(LPS)指令
逻辑入栈(LPS)指令又称分支指令或主控指令,执行逻辑入栈指令时,把栈顶值复制后压入堆栈,原堆栈中各层栈值依次下压一层,栈底值被压出丢失。逻辑入栈(LPS)指令的执行情况如图2-35(a)所示。
(2)逻辑读栈(LRD)指令
执行逻辑读栈(LRD)指令时,把堆栈中第2层的值复制到栈顶,2~9层数据不变,堆栈没有压入和弹出,但原来的栈顶值被新的复制值取代。逻辑读栈(LRD)指令的执行情况如图2-35(b)所示。
(3)逻辑出栈(LPP)指令
逻辑出栈(LPP)指令又称分支结束指令或主控复位指令,执行逻辑出栈(LPP)指令时,堆栈做弹出栈操作,将栈顶值弹出,原堆栈各级栈值依次上弹一级,原堆栈第2级的值成为栈顶值,原栈顶值从栈内丢失。逻辑出栈(LPP)指令的执行情况如图2-35(c)所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d35.jpg?sign=1738849612-gJo0gnAO0twuwlhmOaeJSNsqldCuct4t-0-54ee898c314451037301e55f01a6cc15)
图2-35 堆栈操作过程
(4)使用说明
① LPS指令和LPP指令必须成对出现。
② 受堆栈空间的限制,LPS指令和LPP指令连续使用不得超过9次。
③ 堆栈指令LPS、LRD、LPP无操作数。
(5)应用举例
堆栈指令应用举例如图2-36所示。
![](https://epubservercos.yuewen.com/F85FDE/15489090305496506/epubprivate/OEBPS/Images/2d36.jpg?sign=1738849612-vGiWGOJ8Uzr6MLbeI8Ot0VAy2LlD8q1Q-0-5933e648bf101cfa8f9f953b6336c13e)
图2-36 堆栈指令应用举例