大家都很清楚PLC的程序掃描時由頭到尾的依次執行的,所以,在我們自己編寫程序或修改程序時,一定要重視語句的執行順序對邏輯運算結果的影響,這是我們常常會犯的錯誤,下面我就舉個小小的示例來看看。
上圖是一個很簡單的小程序,本意呢就是想通過定時器T0每秒導通一次,那麼C0和C1也會每隔1s就會加1。那麼大家看看我上面的程序的結果會是什麼樣的?
下圖就是運算的結果,C0計數正常而C1並未繼續計數。
那麼為什麼會出現如上的結果呢?這就是本文前面提到的運算順序的問題了?
簡單分析下過程:為了更直觀我們講上面的LAD轉換成STL來看看程序
當如下圖所示紅框中的第一個邏輯,定時器T0計時時間到後則重新計時,C0得到上升沿而進行計數。
當如下圖所示籃框內的將開始重新的邏輯,T0不會產生上升沿,所示C1也就不進行計數。
那麼針對本例,怎麼修改呢?如下圖所示即可。
再來看看修改後的STL程序:
修改後的程序更加精簡。
當然了本文只是舉個例子,提醒大家在編寫程序或修改程序時,一定要遵循PLC程序執行的最基本原則。不要出現本文第一段程序中的“畫蛇添足”。
閱讀更多 跟我動手學電氣 的文章