gxworks2使用指令手册_三菱MPS、MRD、MPP指令细说

MPS、MRD、MPP是三菱PLC的堆栈指令,也叫多重输出指令。

由于梯形图编程可以不涉及语句表,所以大多数人仅仅是知道有这么几条指令而已,市面上编的大多数教材也是一知半解,甚至以讹传讹。因为都是从三菱编程手册上抄来的。

先看下面实例:

f33a75c0f1347ad20e8631ff480f10d6.png

这是三菱编程手册(参上面台头)P205页的内容,有谁怀疑过上面语句表的正确性吗?有谁知道最后一句中“但是MPS指令和MPP指令的数量差小于11”是什么意思吗?

       先说第一个问题。我们在软件GX Works2中输入上述程序,然后将其转换为语句表(右键点程序段开始,编辑-梯形图块列表编辑或写入到SCV文件)

067c32ff290db1edbd183d86063a4ac4.png
看到的是这样的语句表:

920f832f53ecf4f172ac8c9294c562c7.png

和编程手册上的有什么不同,我们对比一下:

d96ec3d73d12dedf3c3a2bd9d8c30c5a.png

问题来了:是手册上的正确还是实际的PLC程序语句表正确?

关于此问题的展开,看看下面的内容:

43975234581e306a332475d14ee517a4.png

直接输出Y4(前面无触点)位置不同,程序步数也不同

再看第二个问题:“ .....但是MPS指令和MPP指令的数量差小于11”。有多少教科书都是从这一句话演绎,比如我手头两本再版或改版多次的比较有名的教材,一个解释成:
“MPS、MPP指令必须成对使用,而且连续使用的次数应少于11次”。另一个演绎为:“逻辑堆栈指令可以嵌套使用,最多11层”。

     首先,原文的解释:“MPS指令和MPP指令的数量差小于11”究竟是什么意思?
从日文版的编程手册看,翻译成汉语没什么问题:

17704f48ff4e2288dec3c07408ad80a9.png

f9cbd9537c9644c964591481d15ab4c8.png

那日文的描述就概念不清了:“MPS指令和MPP指令的数量差小于11”,MPS-MPP=11?但从后面的说明,MPS和MPP配对使用,数量当然是相同的。其实这里指的是MPS和MPP配对的多重输出的“重数”。但是数量11又不对,也不是小于,而是不大于12!


请看下面的程序:

55934c4dd7e4cedf4e75a3b3b2abde28.png

其对应的语句表为:

8867313fe55588e9affa8eefc0e93b24.png

里面的MPS和MPP对数为12对。因此编程手册中的“11”,以及我们的教材中的解释都是没有根据的!

堆栈指令或者说多重输出指令,在实际编程时几乎无需关注,但是同样的程序如何使程序步数最少,MPS、MRD、MPP指令的用法就必须搞清楚。上述内容希望对PLC有兴趣的网友读者有所帮助。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值