西门子PLC的逻辑堆栈操作指令

    西门子S7—200系列使用一个9层堆栈来处理所有逻辑操作,它和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是“先进后出”。每一次进行人栈操作,新值放人栈顶,栈底值丢失;每一次进行出栈操作,栈顶值弹出,栈底值补进随机数。逻辑堆栈指令主要用来处理对触点进行的复杂连接。 ,    LPS(Logic Push):逻辑入栈指令(分支电路开始指令)。在梯形图中的分支结构中,可以形象地看出,它用于生成一条新的母线,其左侧为原来的主逻辑块;右侧为若干个新的从逻辑块。从堆栈使用上来讲,LPS指令的作用是把当前运算值复制后压人堆栈,以备后用。对于右侧第一个新的从逻辑块,由于其之前的逻辑运算结果就是刚复制并入栈的运算值,因此可以直接在LPS指令之后继续编程。 ,    西门子S7—200系列使用一个9层堆栈来处理所有逻辑操作,它和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是“先进后出”。每一次进行人栈操作,新值放人栈顶,栈底值丢失;每一次进行出栈操作,栈顶值弹出,栈底值补进随机数。逻辑堆栈指令主要用来处理对触点进行的复杂连接。      逻辑堆栈指令有:逻辑入栈LPS、逻辑读栈LRD和逻辑出栈LPP指令。上述三条指令的用法如图所示。      LPS(Logic Push):逻辑入栈指令(分支电路开始指令)。在梯形图中的分支结构中,可以形象地看出,它用于生成一条新的母线,其左侧为原来的主逻辑块;右侧为若干个新的从逻辑块。从堆栈使用上来讲,LPS指令的作用是把当前运算值复制后压人堆栈,以备后用。对于右侧第一个新的从逻辑块,由于其之前的逻辑运算结果就是刚复制并入栈的运算值,因此可以直接在LPS指令之后继续编程。      LRD(Logic Read):逻辑读栈指令。在梯形图分支结构中,当新母线左侧为主逻辑块时, 经过右侧第一个新的从逻辑块的运算,主逻辑块运算结果已经不存在(但在此之前已经被LPS指令复制到堆栈中),要进行后续的从逻辑块编程时,就需要使用LRD指令从堆栈中读回主逻辑块运算结果,所以LRD指令用于第二个以后的从逻辑块编程。从堆栈使用上来讲,LRD读取最近的LPS压人堆栈的内容,而不进行Push和Pop工作。      LPP(Logic Pop):逻辑出栈指令(分支电路结束指令)。在梯形图分支结构中,LPP用于LPS产生的新母线右侧的最后一个从逻辑块编程,它在读取完离它最近的LPS压入堆栈内容的同时复位该条新母线。从堆栈使用上来讲,LPP把堆栈弹出一级,堆栈内容依次上移。 

图 LPS、LRD、LPP指令      使用说明:      (1)由于受堆栈空间的限制(9层堆栈),LPS、LPP指令连续使用时应少于9次。      (2)LPS和LPP指令必须成对使用,它们之间可以使用LRD指令。      (3)LPS、LRD、LPP指令无操作数。 

西门子PLC的逻辑堆栈操作指令

相关文章:

你感兴趣的文章:

标签云: