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