西門子S7-200PLC高速計數(shù)編程的問題 。
我的旋轉(zhuǎn)編碼器(1000脈沖\轉(zhuǎn)),我是用向?qū)Ь幍母咚儆嫈?shù)程序,程序已經(jīng)在項目中使用了,但還有不少地方?jīng)]搞清楚,向?qū)瓿珊笞詣由梢粋€HSC0_INT,在主程序里我用SM0.1調(diào)用它進行初始化處理。在主程序我用MOV_DW 將HC0脈沖實時讀到VD100中,但我感覺對脈沖VD100處理的有問題,我是用脈沖數(shù)除以普通定時器時間得出轉(zhuǎn)速。同事和我講要用中斷處理讀到的脈沖算速度,普通定時器受掃描周期影響(實際應(yīng)用感覺速度誤差不是很大),不清楚中斷具體怎么用???
答:使用定時器的誤差受到定時器分辨率,定時設(shè)定時間及程序掃描周期的影響,樓主可以看看手冊第六章中關(guān)于不同分辨率定時器差別的介紹。
在這些處理方法中,使用定時中斷的做法應(yīng)該是最準(zhǔn)確的。
答:使用定時器的誤差受到定時器分辨率,定時設(shè)定時間及程序掃描周期的影響,樓主可以看看手冊第六章中關(guān)于不同分辨率定時器差別的介紹。
在這些處理方法中,使用定時中斷的做法應(yīng)該是最準(zhǔn)確的。
定時器受到程序掃描周期和定時器時基及指令使用的位置影響會產(chǎn)生誤差,而定時中斷不受這些影響,每次執(zhí)行的時間間隔誤差很小。
下面是軟件的幫助中的一個時間中斷的例子 100毫秒定時中斷
NETWORK 1 // 主程序
// 在首次掃描時,調(diào)用子程序0
LD SM0.1
CALL SBR_0
NETWORK 1 // 子程序0
LD SM0.0
MOVB 100 SMB34 // 將間隔設(shè)為定時中斷0至100毫秒
ATCH INT_0 10 // 將定時中斷0(事件10)附加在INT_0上
ENI // 全局中斷啟用
NETWORK 1 // 中斷0
// 每100毫秒讀取AIW4數(shù)值
LD SM0.0
MOVW AIW4 VW100
本文標(biāo)簽:西門子S7-200PLC高速計數(shù)編程的問題 。
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《西門子S7-200PLC高速計數(shù)編程的問題 ?!废嚓P(guān)權(quán)利人與機電之家網(wǎng)取得聯(lián)系。
關(guān)于“西門子S7-200PLC高速計數(shù)編程的問題 。”的更多資訊










