大家都很清楚plc的程序掃描時由頭到尾的依次執(zhí)行的,所以,在我們自己編寫程序或修改程序時,一定要重視語句的執(zhí)行順序?qū)壿嬤\算結(jié)果的影響,這是我們常常會犯的錯誤,下面我就舉個小小的示例來看看。
上圖是一個很簡單的小程序,本意呢就是想通過定時器t0每秒導通一次,那么c0和c1也會每隔1s就會加1。那么大家看看我上面的程序的結(jié)果會是什么樣的?
下圖就是運算的結(jié)果,c0計數(shù)正常而c1并未繼續(xù)計數(shù)。
那么為什么會出現(xiàn)如上的結(jié)果呢?這就是本文前面提到的運算順序的問題了?
簡單分析下過程:為了更直觀我們講上面的lad轉(zhuǎn)換成stl來看看程序
當如下圖所示紅框中的第一個邏輯,定時器t0計時時間到后則重新計時,c0得到上升沿而進行計數(shù)。
當如下圖所示籃框內(nèi)的將開始重新的邏輯,t0不會產(chǎn)生上升沿,所示c1也就不進行計數(shù)。
那么針對本例,怎么修改呢?如下圖所示即可。
再來看看修改后的stl程序:
修改后的程序更加精簡。
當然了本文只是舉個例子,提醒大家在編寫程序或修改程序時,一定要遵循plc程序執(zhí)行的最基本原則。不要出現(xiàn)本文第一段程序中的“畫蛇添足”。