兩個循環(huán)的問題
劉玉蓉
發(fā)布于2014-12-10 17:31
25
0
標簽:
在做一個除塵控制程序,控制提升閥和脈沖閥動作,提升閥組和脈沖閥組各做一個循環(huán),提升閥動作循環(huán)嵌套脈沖閥動作循環(huán),想用FOR NEXT來做,或者指針來做,一直沒有好的思路,請指點一下吧。
Network 1 // 網(wǎng)絡標題
// 網(wǎng)絡注釋
LD M0.1
FOR VW0, 1, 3
Network 2
LD M0.2
TON T101, 100
Network 3
LD T101
= M0.3
Network 4
NEXT
Network 5
LD M0.4
= M0.5
做了一個測試程序,發(fā)現(xiàn)T101始終等不到延時循環(huán)就結束了。
佳答案
建議里仔細看看幫助里關于定時器的內(nèi)容,100ms分辨率的定時器,不應該在一個掃描周期里多次執(zhí)行,所以不應該放在循環(huán)里,以下內(nèi)容摘自幫助
100毫秒分辨率
100毫秒定時器記錄自現(xiàn)用100毫秒定時器上一次更新以來100毫秒定時器間隔的數(shù)目。這種定時器的更新方法是在執(zhí)行定時器指令時以當前值加上積累的100毫秒間隔的數(shù)目(自前一次掃描開始算起)。
只有在執(zhí)行定時器指令時才對100毫秒定時器的當前值進行更新。因此,如果啟用了100毫秒定時器但并未對各掃描循環(huán)執(zhí)行定時器指令,則仍不能更新定時器當前值并將喪失時間。同樣,如果在單個掃描循環(huán)內(nèi)多次執(zhí)行100毫秒定時器指令,將向定時器的當前值多次增加100毫秒間隔數(shù),贏得時間。只有在每次掃描循環(huán)僅僅執(zhí)行一次定時器指令時,才應該使用100毫秒定時器。
因為可在100毫秒內(nèi)的任意時刻啟動定時器,預設值必須設為比小要求定時器間隔大一個時間間隔。例如,使用100毫秒定時器時,為了保證時間間隔至少為2100毫秒,則預設時間值應設為22。