本文主要是介绍c语言中两个按键互锁,欧姆龙cp1h常用指令学习(十五)多重互锁指令MILH,MILC...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
多重互锁指令是允许相互嵌套的,如下图所示:
其中,编号并非是必须全部是唯一的,而是保证两两MILH之间不一样即可。
也就是说,编号可以0,1,0,1这样嵌套使用下去。
为了解释清楚多重互锁的意义,勇哥编写了下面的例程。
这里我做了两把锁,编号为0,状态位为W100.00
编号为1,状态位为W100.01
如果我不导通W0.00的话,你会发现你直接导通w0.01是没有效果的。实际上,如果你不导通W0.00,
那么直到第9步之前的任何一步都不会被执行。即使你人工导通1.07, 1.09也没用,MOV指导根本不执行!
如果想按下1.09后的mov指令执行,你先是先导通W0.00, 再导通W0.01,然后才可以。
童鞋你实验完成了没有?
有什么觉悟? 那么究竟这对指令能用来做什么?
其实这种指令可以算是一种步进指令,当你需要实现:第一步做什么,然后第二步做什么(如果第一步不做,第二步也做不了)这样的关系的时候就用得着这种指令。
由于plc的指令中的每一条都会在每个周期被调用一次,因此往往我们在plc程序的主控制逻辑中使用这种指令来组织代码。
例如下面的代码段中,画红框的代码段中,就使用了多重互锁指令,它使用了两把锁,全部机器自动运行的逻辑控制部分都分布在5个程序段中,且受到2把锁的先后序列的控制。
红框这外的程序段,则是事先写好的资源,比如报警、与B站PLC通讯、复位、轴运动等等。这些资源被红框处的程序段所调用。
使用这种方式划分后,程序的运行逻辑代码与资源代码就可以划分清楚了。
其实,从这个意义上来说,这个多重互锁指令也有些像子程序的作用。
---------------------
作者:hackpig
来源:www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!
其它相关文章:
#转载请注明出处 www.skcircle.com 《少有人走的路》勇哥的工业自动化技术网站。如果需要本贴图片源码等资源,请向勇哥索取。
收藏 | 0点赞 | 0打赏作者
这篇关于c语言中两个按键互锁,欧姆龙cp1h常用指令学习(十五)多重互锁指令MILH,MILC...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!