登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:请问什么是堆栈啊

点击:7520 回复:14

小弟最近在自学三菱plc,实在是搞不懂什么是堆栈。
MPS、MRD、MPP这些指令?
怎么说呢,就是不知道堆栈有什么用处?
请各位前辈指点指点,不胜感激...
09-04-28 22:09
还真是不怎么好说
也可以先不搞清楚MPS、MRD、MPP这几个指令,并不一定要用指令表编程
可以用梯形图编程
直接看梯形图,就是前面部分是一样的条件,后面又加上不同的条件控制不同的输出
09-04-28 22:15
比如说一台机床有很多动作,分别有不同的按钮控制,但是整个机床有一个总开关,那么在程序中是不是就可以认为这就是堆栈呢?
还有下列程序是不是可以认为一个堆栈?(网速太慢,梯形图传不上来,只好用指令表了)但是怎样才能体现堆栈“先进后出、后进先出”的原则呢?Y1\Y2\Y3\Y4这几个之间没有关系啊?
LD      X000
MPS
AND    X001
OUT   Y001
MRD    
AND   X002
OUT   Y002
MRD
ANI     X003
OUT   Y003
MPP
ANI     X004
OUT   Y004
END
最后修改:2009-4-28 22:36:46
09-04-28 22:31
不好理解,就先用梯形图画出来再转换成指令表,这样互相对照就好理解些,其实不理解根本就没什么关系用梯形图一样的。
09-04-28 22:43
那堆栈有什么用,可以用在什么地方呢?
09-04-28 22:52
这些指令,是在用指令表编程时才用到的,比如用手编器,而在电脑上编程就可以用梯形图来编了,也就是说因为手编器上看不到梯形图而在实际中又要用到那么就要用这些指令来表示了。
09-04-29 00:11
个人认为,堆栈这些概念只是一种数据的处理模式,并不一定非要用PLC中提供的指令来处理,你完全可以根据自己的要求来构造自己需要的形式,在我的概念中,堆栈这类数据处理都归结到数据表的处理,根据自己的需要构造自己的数据表,当你按需要,有顺序的将你所需要处理的数据存储起来并且处理的时候,那么堆栈的概念也就出来了,堆栈一般就应用在有多个请求但是由于处理速度的问题需要将这些请求记忆下来,以便后边处理的情况.可以举个例子:有5个位置,A~E,一个小车,没个位置有一个召唤小车的按钮,小车到达召唤的位置后停20S,然后再到下一个召唤的位置去!!假如同时5个位置都在召唤,按照先召唤先响应的原则,那么就是队列.按照先召唤后响应时,就是堆栈的概念,按照就近处理的原则,就是另外的一个模式,但是都可以归结为数据表的处理!!通俗的讲:堆栈队列这些的都是一个概念,具体怎么做那要看的是应用者是怎么实现的,不同的人有不同的处理模式!!!!!!不知道我说明白了没有????
09-04-29 09:32
下面的是一个2层栈的体形图,作为LS的补充
附件
09-04-29 10:42
学习了
09-04-29 12:51
用梯形图编程时可以不考虑这个;
09-04-29 14:20

上一页下一页

工控新闻

更多新闻资讯