為什么不要頻繁使用置位和復位指令編程?
王曾
發(fā)布于2023-03-02 15:44
283
2
標簽:西門子PLC
剛?cè)胄械臅r候,我最喜歡的就是置位與復位這兩個指令,可以說沒有之一。不管是氣缸控制,還是燈的控制,使用置位和復位兩個指令就可以輕松搞定。但是隨著編程時間越長,慢慢發(fā)現(xiàn)了它們的一些弊端,所以我越來越不喜歡用置位與復位指令編程了。這是為什么呢?一條條講給你聽。
1. 執(zhí)行效率不高。
我們以最典型的電機啟??刂瞥绦蜻M行舉例,置位復位方式編程如圖所示:
為什么說這個程序執(zhí)行效率不高,因為這個程序如果條件滿足時,一個掃描周期內(nèi)會對Q0.0進行二次寫入操作,一次是置1操作,一次是置0操作。
2. 編程容易遺漏
置位與復位指令,通常是成對使用的,在編程的時候,如果遺漏了,則可能讓程序處于一個狀態(tài)。如果遺漏掉了置位指令,則會導致處于0的狀態(tài);如果遺漏掉了復位指令,則會導致處于1的狀態(tài)。
3. 設備未全掃描
置位復位指令,本質(zhì)上是一種條件判斷。在一個掃描周期內(nèi),如果啟動和停止按鈕都沒有按下的狀態(tài),則會跳過對Q0.0的寫入操作,即不寫入0,也不寫入1。如果處于這種狀態(tài),可能會導致不可預知的情況發(fā)生。
4. 程序邏輯不嚴密
當置位操作與復位操作之間,存在多條程序時,會占用一定的掃描時間。如果這個時間存在時間足夠長,可能存在一個極短的過渡階段。當兩個條件都滿足時,可能在一個掃描周期內(nèi),電機先啟動了,又停止了。
最后簡單總結(jié)一下。雖然置位復位指令非常的簡單,但是由于存在一些問題,所以對于邏輯控制的程序,不采用這種方法編程。那么采用什么方法實現(xiàn)呢?可以采用程序自鎖的方式來進行邏輯控制。如圖所示: