首页 理论教育 逻辑堆栈操作指令

逻辑堆栈操作指令

时间:2023-06-17 理论教育 版权反馈
【摘要】:S7-200 PLC使用了一个9层堆栈来处理所有逻辑操作。逻辑堆栈指令主要用来完成对触点的复杂连接,配合ALD、OLD指令使用。逻辑堆栈指令只用于语句表编程。指令①逻辑入栈指令·指令格式:LPS·功能:又称为分支电路开始指令。②逻辑读栈指令·指令格式:LRD。④装入堆栈指令。图5-20 堆栈操作原理示意图逻辑堆栈指令应用 如图5-21所示为一层堆栈电路。图5-23 四层堆栈电路堆栈指令使用说明如下。②堆栈层数应少于9层。

逻辑堆栈操作指令

堆栈是一组能够存储和取出数据的暂存单元,其特点是“后进先出”。每一次执行入栈操作,新值放入栈顶,栈底值丢失;每一次执行出栈操作,栈顶值弹出,栈底值补进随机数。S7-200 PLC使用了一个9层堆栈来处理所有逻辑操作。逻辑堆栈指令主要用来完成对触点的复杂连接,配合ALD、OLD指令使用。

逻辑堆栈指令只用于语句表(STL指令)编程。使用梯形图(LAD)、功能块图(FBD)编程时,梯形图(LAD)、功能图块(FBD)编辑器会自动插入相关的指令处理堆栈操作。

(1)指令

①逻辑入栈指令

·指令格式:LPS

·功能:又称为分支电路开始指令。从梯形图中的分支结构中可以形象地看出,它用于生成一条新的母线,其左侧为原来的主逻辑块,右侧为新的从逻辑块,因此可以直接编程。从堆栈使用上来讲,LPS指令的作用是把栈顶值复制后压入堆栈,栈底值丢失。

②逻辑读栈指令

·指令格式:LRD。

·功能:当新母线左侧为主逻辑块时,LPS开始右侧的第一个从逻辑块编程是第二个以后的从逻辑块编程。从堆栈使用来讲,LRD读取最近的LPS压入堆栈的内容,而堆栈本身不执行压入和弹出操作。

③逻辑出栈指令

·指令格式:LPP。

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

④装入堆栈指令。

·指令格式:LDS n。

n的范围是0~8的整数。

·功能:复制堆栈中的第n个值到栈顶,而栈底丢失,是逻辑推入栈指令的加强。该指令在编程中使用较少。

如图5-20所示为说明执行逻辑入栈、读栈、出栈和“LDS2”装入栈的原理示意图。(www.xing528.com)

图5-20 堆栈操作原理示意图

(2)逻辑堆栈指令应用

【例5-9】 如图5-21所示为一层堆栈电路。

图5-21 一层堆栈电路

【例5-10】 如图5-22所示为二层堆栈电路。

图5-22 二层堆栈电路

【例5-11】 如图5-23所示为四层堆栈电路。

图5-23 四层堆栈电路

堆栈指令使用说明如下。

①LPS和LPP指令必须成对使用。

②堆栈层数应少于9层。也就是说,LPS、IPP指令连续使用时应少于9次。

③LPS、LRD、LPP指令无操作数

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈