引用
引用樓主slik于2024-11-07 20:02發(fā)表的 在如下的梯形圖中為什么要用M404的下降沿才能保證M908的可靠觸發(fā) :
如題,在如下的梯形圖中,為什么用LD M404不能觸發(fā)M908,而需要改為M404的下降沿,即LDF M404,按理說,因為M908回路在M404回路的前面,所以程序上個周期掃描時如果
X10012還是正常的(OFF),M404為ON,因為輸入輸出映像刷新是在程序掃描的最前頭的,所以,當(dāng)要到下一個周期掃描的前端,刷新輸入點,這時X10012變?yōu)镺N,那么因為上個掃描周期中保存的M404還是為ON,所以,這時是可以觸發(fā)M908為ON的,理論分析是這樣的,但是實際上是不行的,用
LD M404
AND X10012
SET M908 不行,而需要改為
.......
有結(jié)果嗎?看了這個PLC的手冊,輸入輸出掃描很常規(guī)。輸入信號是在程序執(zhí)行前掃描的,整個周期都不會變化。輸出信號是程序執(zhí)行完畢再輸出的,會一直保持,直到下個周期輸出。
所以你說的這個情況有點詭異,建議單獨寫幾個指令,然后把PLC清除內(nèi)存再恢復(fù)出廠值,測試一下。
另外,PLC邊沿觸發(fā)并不是直接用這個觸點(原觸點),而是自動分配一個(或多個)其它的內(nèi)存單元(邊沿觸點),系統(tǒng)根據(jù)原觸點去置邊沿觸點。那么就會存在2種方法,一是在程序開始前或執(zhí)行完畢來進(jìn)行這個計算,就是一個周期只變化一次。另一種是實時計算(也就是一個周期可能變化多次),這種對PLC資源要求大。
這個PLC,兩種都在用,如果用指定位或BIT類型變量,會滯后一個周期。用BOOL類型變量就是當(dāng)個周期有效。