我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:2019跑狗图高清彩图 > 指令栈 >

PLC中 LPP和LPS是什么指令

归档日期:07-29       文本归类:指令栈      文章编辑:爱尚语录

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部plc提供一个9位的堆栈,栈顶存放当前的运算值,其他八位存放中间的结果,按照先进后出的原则进行存放。

  有关堆栈的指令有6个,除了你上面的两个LPS(逻辑进栈,复制栈顶的值并把它压入栈的下一层,栈底值溢出),

  LPP(逻辑出栈,即各层数据向上移一层,第二层成为新的栈顶,栈底多出一随即值),

  还有 OLD(栈装载与,电路块串联连接),ALD(栈装载或,电路块并联连接),

  LDS N(将堆栈的第N位装载与栈顶,其他位依次下移,栈的第九位丢失,其中:N=0-8)。

  plc程序皆以常开或常闭触点装载开始,程序开始前堆栈的值是随即存在的,当执行程序,将触点状态装载与栈顶中(即栈顶值被改变),

  然后栈顶值与别的元件进行逻辑运算,再将得到的新值存于栈顶中(假设现在栈顶的值为S0)。

  当栈顶当前值暂时不参与运算(如:两个功能块相与或),开始运算另一个功能块,得到第一个结果将进入堆栈,原本堆栈的值将下移一位,成为中间结果,

  如果另一个逻辑运算最终结果为 S1.然后执行指令OLD 或ALD,就有:栈顶值变为其运算值,其他各位上移一位。

  当一个结果要多次应用时(至少两次),则需用LPS,LRD,LPP三个指令。

  LPS:先将当前栈顶值复制到当二层,用栈顶值与后面的进行运算,运行到最终结果,意味着得出逻辑输出。这时在调用堆栈,即逻辑读栈,进行下一步运算。

  LRD 逻辑读栈,是将位于栈第二位的值复制到栈顶,如果只调用两次,该指令不需要。直接用逻辑出栈就行。

  LPP逻辑出栈,即各层数据向上移一层,第二层成为新的栈顶,到只剩下最后一次运算时,直接用此指令。

  展开全部估计你也就是指令的堆栈工作原理不清楚,找本介绍堆栈这块详细点的书看看吧,也不难,挺简单的LD I0.1

  将以上触点的逻辑运算的结果(根据I0.0和I0.1的状态只可能是0或1)执行逻辑入栈操作,也就是说将存入第0级堆栈存储器的I0.0与I0.1串联的值复制后由堆栈栈顶压入,使0级堆栈和1级堆栈的值相同

  执行逻辑出栈指令时将栈顶值弹出堆栈,1级堆栈的值上升到0级堆栈中(1级堆栈的值实际上就是I0.0与I0.1串联之后的结果)

本文链接:http://egao-p.com/zhilingzhan/429.html