课程中心
HOME
课程中心
正文内容
plc堆栈编程 PLC中的堆栈与嵌套是什么?有什么作用?
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC中的堆栈与嵌套是什么?有什么作用?

堆栈和嵌套是在PLC应用程序设计中经常碰到的两个术语。

1、堆栈

堆栈就是货仓,这是数字电子技术中借用的一个名词。具体到PLC来说,堆栈就是在PLC中的一个特定存储区,用来存储某些中间运算结果和存放程序断点及数据。堆栈操作的特点是:先进后出,后进先出。

如图为一具有11个存储单元的堆栈,最下面为栈底,最上面为栈顶。把一个数据

或运算结果送入堆栈,叫进栈或压栈;把运算结果取出叫出栈。进栈时,后来的永远在栈顶,原先栈中的数则依序向下移动一个单元。出栈时,栈顶的数从栈中弹出(不在栈中了)而下面的数则依序向上移动一个单元。这就和家中的米箱类似,先进米箱的米最后吃,最后倒进去的米先吃。进栈和出栈是对堆栈的两种操作,还有一种操作叫读栈。读栈只是读出栈顶的数据,而不会把数据从栈弹出。

上面介绍的是三菱FX2N的有关堆栈知识,在计算机中,堆栈是一个非常重要的概念,他可以帮助我们正确理解许多程序运行的过程

2、嵌套

嵌套就是套中套。例如,在一个大循环中,进入循环后发现其中还有一个小循环要先做,而且每一次大循环都要先做这个小循环,直到大循环做完,这就叫做循环嵌套。再如调用子程序,子程序是一段公共程序,可以在主程序的任何地方进行调用,调用完后又回到主程序继续往下运行。如果一个程序在调用子程序时,子程序在运行中,又去调用另一个子程序,这就叫子程序嵌套。从上面二个例子可以说明,在PLC中,所谓嵌套是指在执行某种功能操作的过程中,再次执行这种类型的功能操作,(当然操作内容已经不同)就叫做这种操作的嵌套。PLC对各种内容的嵌套的层数都有一定的规定。三菱FX2N对主控指令的嵌套应用最多8层,而对子程序调用嵌套最多5层等等。(技成培训原创,未经授权不得转载,违者必究!)

往期优秀文章回顾:

PLC顺序控制,行业大牛的图文案例讲述

PLC的FX系列的堆栈指令讲解

今天给大家分享的文章是关于PLC-FX系列的堆栈指令问题,具体是怎么样的呢?我们一起往下阅读。

FX2N的共有27条基本逻辑指令,其中包含了有些子系列PLC的20条基本逻辑指令。

堆栈指令(MPS/MRD/MPP)

堆栈指令是FX系列中新增的基本指令,用于多重输出电路,为编程带来便利。在FX系列PLC中有11个存储单元,它们专门用来存储程序运算的中间结果,被称为栈存储器。

(1)MPS(进栈指令) 将运算结果送入栈存储器的第一段,同时将先前送入的数据依次移到栈的下一段。

(2)MRD(读栈指令) 将栈存储器的第一段数据(最后进栈的数据)读出且该数据继续保存在栈存储器的第一段,栈内的数据不发生移动。

(3)MPP(出栈指令) 将栈存储器的第一段数据(最后进栈的数据)读出且该数据从栈中消失,同时将栈中其它数据依次上移。

堆栈指令的使用如图1所示,其中图1a为一层栈,进栈后的信息可无限使用,最后一次使用MPP指令弹出信号;图1b为二层栈,它用了二个栈单元。

堆栈指令的使用

(a)一层栈

(b)二层栈

堆栈指令的使用说明:

(1)堆栈指令没有目标元件。

(2) MPS和MPP必须配对使用。

(3)由于栈存储单元只有11个,所以栈的层次最多为11层。

更多三菱自动化文章分享,请点击下方“了解更多”阅读,或者关注小编,回复“进群”,加入三菱PLC技术微信交流群。

相关问答

plc设置堆栈指令?

1.堆栈指令是FX系列中新增的基本指令,用于多重输出电路,为编程带来便利、在FX系列PLC中有11个存储单元,它们专门用来存储程序运算的中间结果,被称为栈存储器...

plc堆栈指令通俗解释?

在讨论PLC(可编程逻辑控制器)的堆栈指令之前,让我们先了解一下堆栈的概念。堆栈是一种数据结构,它遵循"先进后出"(LastInFirstOut,LIFO)的原则。就像.....

PLC中堆栈指令具体怎么用?

如果你是用梯形图编程我觉得你只需要理解下堆栈指令就行了,一般梯形图编程都不用关于堆栈的东西。如果你是用梯形图编程我觉得你只需要理解下堆栈指令就行了,...

plc进栈指令怎么用?

先把分支处的状态保存在堆栈里,然后执行第一个分支程序,结束了,再从客栈里取出分支处的状态,执行下一个分支程序。如果没有保存堆栈,就要把分支处之前的程序...

plc什么时候用栈指令?

先把分支处的状态保存在堆栈里,然后执行第一个分支程序,结束了,再从客栈里取出分支处的状态,执行下一个分支程序。如果没有保存堆栈,就要把分支处之前的程...

堆栈是一个什么概念?求通俗一点的解释?

跟所有汇编语言一样,PLC的堆栈也是用于处理用户程序过程的中间数据的。1、当电路块串联或并联时,用于存储中间运算结果。2、当触点与线圈,或触点与其他输出...

怎样在程序里写入三菱PLC的进栈和读栈出栈指令.在这先谢谢了?

在程序中写入三菱PLC的进栈指令可以使用指令格式:X(寄存器地址)Y(数据),其中X表示进栈的寄存器地址,Y表示要进栈的数据。而读栈出栈指令可以使用指令格式:Y...

谁帮我解释一下DIST和COLL指令?(欧姆龙PLC)?

DIST(080)—单字分配指令:用作单字分配或根据控制字C的内容用于堆栈操作。指令:COLL(081)—数据收集指令:根据控制字C的内容来进行数据收集、一个FIFO...D...

stl指令?

三菱plcstl指令用法:1、STL指令可以使编程者生成流程和工作与顺序功能图非常接近的程序。STL指令的意义为激活某个步(即状态),在梯形图上体现为从主母线...

PLC编程提高效率和准确率的方法?

系统判断该提问价值不高,回答后预期流量较低!!呵呵,这种问题判断价值不高?那什么问题判断价值高??是零基础如何快速学会PLC,还是本人精通S7-1200,多久能...既...

 传奇3g  保加利亚新娘集市 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部