引用
引用第26樓風(fēng)再起時于2023-08-01 10:19發(fā)表的 :
各位大師,這個程序基本能實現(xiàn)所有功能,也能切換(頭、中、尾之間部分要切與不切轉(zhuǎn)換),只要時間只能用100ms速度達(dá)不到,如果程序中100ms定時器能全部換成10ms定時器就好啦,可惜10ms定時器不夠用,大師有辦法 嗎?麻煩路過大師指導(dǎo)一下,十分感謝。
軟件定時器,有兩種做法
1、用1ms定時器(或者10ms定時中斷)給自定義的時基寄存器做累加,兩個寄存器+一個布爾量做輸出就行了,這個基本上你內(nèi)存有多大,就能做多少個,無限的
2、用子函數(shù)或者塊什么的,做延時輸出函數(shù),其實和上面差不多,但是這個要更簡單一些,幾乎所有的小型plc都有公共的時基寄存器,啟動延時的時候把目標(biāo)值+時基鎖存起來,然后用時基和目標(biāo)值比較做輸出
上面的要準(zhǔn)一些,下面的方便一些,看實際情況,結(jié)合具體程序的掃描周期來確定,畢竟大部分小型PLC速度在ms這個量級下還是比較慢的,10ms定時器的意義不大