PAULCHAN
如题!
另外三菱FIFO指令,当输入点部分有信号时,是否能做到依次输出且依次关闭已动作了的。假设X0~X17任意一点先变化,
则先变化的对应输出点Y0~Y17动作。如:X0—>ON接着X13->ON,再接着X4->ON......依次输出Y0,Y13(Y0不动作),Y4(Y0,Y13均不动作)。哪位大侠有精简的指令写法,请说说,谢谢~!
楼主最近还看过
miy_gongkong
那你 Y0,Y4,Y13 , 动作 持续时间宽度是多少? 怎么指定?
当然是需要有读取要求时,也就是说当Y0动作后,此时下一个读取指令到来时,Y13动作,Y0自动关闭,这个条件也是不固定的时间,是依据读取条件的满足与否来确定的
芳季
LDD<> K8X0 D0
OUT M0
LD M8000
DMOV K8X0 D0
为什么呢?说说看。
你举个例子看哪个点不动作?
你是不是想举X40之后的不动作?
wanggq
我同意四楼的意见。三楼的“程序片断”确实不能做到实现楼主提出的“目标功能”!
楼主这个题目的“目标功能”是指“X0~X17 中任意一点由OFF状态动作为ON状态时,都无一例外的能够触发Y0~Y17中与其对应的那一点输出继电器状态变为ON ,且当新一轮触发的同时将前一轮次触发的结果抹掉”!并没有提到X20之后任何点!当然也不考虑X40之后的点!
O Ye
我光看了题目。
原来是文不对题。
文中说的是另一个事情了。
wyb2866255
楼主说:“。。如:X0—>ON接着X13->ON,再接着X4->ON......依次输出Y0,Y13(Y0不动作),Y4(Y0,Y13均不动作)。”
回复:用比较与传递指令就可完成。三菱PLC不熟悉,我用S7-200编写一段程序供参考:
如:I0.0=1,对应输出Q0.0=1,如I0.7=1,对应输出Q0.7=1,而Q0.0=0,在输入I1.1=1,对应Q1.1=1,而Q0.7=0。。。。
嘿嘿,英雄所见略同!
我用三菱的语言来表达:
LD<> K0 K4X0
MOVP K4X0 K4Y0
照顾一下只习惯于看梯形图的网友:
winter938
凑个热闹,用S7 200做了一下
大话东游
10楼最精简了,已经达到楼主的要求!只是对楼主的要求还有一个疑问,就是假如X0接通,当想x13接通时,x0是接通状态还是断开状态?
对于题目不同的理解就有不同的答案。
我们应该注意到楼主的题目中有一个关键词----触发
触发、触发,一触即发!在这个题目里,我认为触发信号只需要信号的“前沿”起触发的作用,触发的事件出现之后就与触发信号的存在与否就不相干了。所以,我可以这样认为:楼主所说的“X0—>ON接着X13->ON,再接着X4->ON...... ”应该是 先X0 ON一下(短暂时间)之后X13 再ON一下(短暂时间)再之后又有X4 ON一下(短暂时间)……
我们用梯形图片断举例来说明“触发”的意义:
先看片断1 片断1所表达的是典型的“触发例子”
X1 刚一出现ON ,Y1 的状态立即被触发为ON 。之后Y1 的ON 状态存在与否完全不依赖于X1 的状态!
片断2 这也是符合“触发”意义的例子:
还有一些“触发”功能的例子我就不一一介绍了。
下面我们看一个“非触发”功能的例子:
片断3
在片断3中,Y1 的状态是完全依赖于X1 之状态的。如果X1 的ON状态一消失,Y1的ON 状态立马就消失!
10楼用3条指令;11楼(12楼)用2条指令来写成的功能片断就是以下面这个“理解”来做“目标功能”的:
用“时序波形图”来表达“目标功能”不容易让人产生理解上的“歧义”!
用3条指令或用2条指令来写成答案虽然精简,但是这两个精简的答案并不严谨!如果楼主的本意是:输入信号并不限制时值宽度,如“大话东游”所说的“当想x13接通时”,x0仍然是接通状态,则“ winter938 ”用6条指令所写的答案片断才是考虑周全的!
所以,我认为截止现在,13楼“ winter938 ”的答案最好!!