【图】西门子plc逻辑堆栈操作指令的类型与用法

作者:老电工时间:2015-11-03 14:23:55

西门子plc逻辑堆栈操作指令的类型与用法

西门子s7—200系列plc使用一个9层堆栈来处理所有逻辑操作,它和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是“先进后出”。每一次进行人栈操作,新值放人栈顶,栈底值丢失;每一次进行出栈操作,栈顶值弹出,栈底值补进随机数。逻辑堆栈指令主要用来处理对触点进行的复杂连接。

一、西门子plc逻辑堆栈操作指令的分类

逻辑堆栈指令:逻辑入栈LPS、逻辑读栈LRD和逻辑出栈LPP指令。

1、LPS(Logic Push):逻辑入栈指令(分支电路开始指令)。在梯形图中的分支结构中,可以形象地看出,它用于生成一条新的母线,其左侧为原来的主逻辑块;右侧为若干个新的从逻辑块。从堆栈使用上来讲,LPS指令的作用是把当前运算值复制后压人堆栈,以备后用。

对于右侧第一个新的从逻辑块,由于其之前的逻辑运算结果就是刚复制并入栈的运算值,因此可以直接在LPS指令之后继续编程。

2、LRD(Logic Read):逻辑读栈指令。在梯形图分支结构中,当新母线左侧为主逻辑块时,经过右侧第一个新的从逻辑块的运算,主逻辑块运算结果已经不存在(但在此之前已经被LPS指令复制到堆栈中),要进行后续的从逻辑块编程时,就需要使用LRD指令从堆栈中读回主逻辑块运算结果,所以LRD指令用于第二个以后的从逻辑块编程。从堆栈使用上来讲,LRD读取最近的LPS压人堆栈的内容,而不进行Push和Pop工作。

3、LPP(Logic Pop):逻辑出栈指令(分支电路结束指令)。在梯形图分支结构中,LPP用于LPS产生的新母线右侧的最后一个从逻辑块编程,它在读取完离它最近的LPS压入堆栈内容的同时复位该条新母线。从堆栈使用上来讲,LPP把堆栈弹出一级,堆栈内容依次上移。

西门子plc逻辑堆栈操作指令

图1 LPS、LRD、LPP指令

二、西门子plc逻辑堆栈操作指令的使用说明

1)由于受堆栈空间的限制(9层堆栈),LPS、LPP指令连续使用时应少于9次。

2)LPS和LPP指令必须成对使用,它们之间可以使用LRD指令。

3)LPS、LRD、LPP指令无操作数。

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > 西门子plc