S7中輸入和輸出的OW有什么區(qū)別
劉玉蓉
發(fā)布于2014-10-13 17:38
1
0
標簽:
L MB75
L IB2
OW
T IB2
L MB76
L QB2
OW
T QB2
當MB75和IB2或的時候,IB2的輸入信號值為0時,M75.0為1的時候程序中I2.0為1,為什么MB76和QB2或的時候,QB0的輸出信號值為0時,M76.0為1時,Q2.0輸出為0不為1,當然程序中Q2.0-Q2.7都有線圈輸出,I2.0-I2.7 也有光電信號輸入,
佳答案
1、 OW指令是一個字(16 位)“或”邏輯運算。將累加器 1 低字中的內(nèi)容與累加器 2 低字中的內(nèi)容進行“或”運算;結(jié)果保存到累加器 1 低字中。
2、 MB75與IB2的“或”邏輯運算結(jié)果,存入IB2中了。
當IB2的輸入信號值為0時,M75.0為1的時,“或”邏輯運算結(jié)果存入IB2中,此時I2.0為1.
3、 MB76與QB2的“或”邏輯運算結(jié)果,存入QB2中了。
為什么MB76和QB2或的時候,QB0的輸出信號值為0時,M76.0為1時,Q2.0輸出為0不為1,當然程序中Q2.0-Q2.7都有線圈輸出,I2.0-I2.7 也有光電信號輸入,?
解釋這個問題要結(jié)合雙線圈特性來講:
、在程序中有 MB76與QB2的“或”邏輯運算結(jié)果存入QB2中的指令,又有Q2.0-Q2.7其他的有線圈輸出指令,這就是雙線圈問題。
、在一個周期中,指令的執(zhí)行是自上而下的,首先執(zhí)行的是MB76與QB2的“或”邏輯運算結(jié)果,
M76.0為1時,Q2.0為1(注意此時并沒有真正輸出)。程序又執(zhí)行另外對于Q2.0-Q2.7邏輯指令
,如果在這些指令中的邏輯結(jié)果使得Q2.0為0。那么在在這個周期結(jié)束時,Q2.0的終結(jié)果為0。
4、按樓主所述,這樣編制程序是有問題的,就是雙線圈問題,即對同一輸出點兩次或多次進行賦值,按照周期I/O映像區(qū)刷新的特性,只有程序的后掃描的邏輯結(jié)果被輸出。