purshro
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 108 個
工控威望: 228 點
下載積分: 8583 分
在線時間: 227(小時)
注冊時間: 2014-05-07
最后登錄: 2018-01-29
查看purshro的 主題 / 回貼
樓主  發(fā)表于: 2014-06-06 22:10
高速中斷的問題請教各位。信捷XC3高速定長切斷。最高速120米每分鐘。用的400線的編碼器計數(shù),1倍頻。高速計數(shù)中斷方式切斷。當(dāng)?shù)竭_(dá)設(shè)定長度脈沖后,立刻進(jìn)入中斷,復(fù)位高速數(shù)器C630,F(xiàn)在的問題是發(fā)現(xiàn)復(fù)位C630時,丟脈沖導(dǎo)致計數(shù)不準(zhǔn)。感覺復(fù)位時間太長導(dǎo)致編碼器在走了不少距離才又歸的零。幾試過1024線的也差不多。低速誤差還好,高速相差較大。編碼器沒問題,只要復(fù)位就有誤差。
purshro
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 108 個
工控威望: 228 點
下載積分: 8583 分
在線時間: 227(小時)
注冊時間: 2014-05-07
最后登錄: 2018-01-29
查看purshro的 主題 / 回貼
1樓  發(fā)表于: 2014-06-07 08:19
再說一下檢測思路。編碼器400線,1倍頻。在編碼器上設(shè)置一標(biāo)志位,那么轉(zhuǎn)一周剛好轉(zhuǎn)回標(biāo)志位對齊。比如80000個脈沖,那么剛好20轉(zhuǎn)對齊標(biāo)志位。但當(dāng)設(shè)置比如40000個脈沖進(jìn)入中斷時,應(yīng)該就是轉(zhuǎn)10圈進(jìn)入中斷。立即對C630復(fù)位。第二個也40000個脈沖進(jìn)入第二次中斷,當(dāng)?shù)诙谌齻……中斷來的時候,就越來越偏離標(biāo)志位了。按理說應(yīng)該每轉(zhuǎn)一圈400個脈沖都應(yīng)該對得上標(biāo)志位置,實際上復(fù)位就不行。不復(fù)位怎么都行,標(biāo)志位上監(jiān)控的數(shù)也都是400的整倍數(shù)。
purshro
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 108 個
工控威望: 228 點
下載積分: 8583 分
在線時間: 227(小時)
注冊時間: 2014-05-07
最后登錄: 2018-01-29
查看purshro的 主題 / 回貼
2樓  發(fā)表于: 2014-06-07 18:27
機(jī)械沒有問題的,PLC速度應(yīng)該也不是問題。中斷不就是立即處理不受掃描周期影響的么?就算是最高速度1ms也才是運行2mm而已。我現(xiàn)在關(guān)心的是C630進(jìn)入中斷后立刻復(fù)位C630,那么它是不是馬上復(fù)位。復(fù)位后又是否馬上計數(shù)。因為程序的思路就是C630到達(dá)設(shè)定的脈沖數(shù)(長度)后進(jìn)入中斷,復(fù)位C630。那么C630應(yīng)該立即從0開始計數(shù)。到達(dá)設(shè)定脈沖數(shù)后進(jìn)入中斷,復(fù)位C630……如此循環(huán)。
purshro
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 108 個
工控威望: 228 點
下載積分: 8583 分
在線時間: 227(小時)
注冊時間: 2014-05-07
最后登錄: 2018-01-29
查看purshro的 主題 / 回貼
3樓  發(fā)表于: 2014-06-08 19:03
引用
引用第8樓niningtt于2014-06-08 15:42發(fā)表的  :
首先你要知道PLC的掃描周期。你使用的高速計數(shù)器計數(shù)不會丟(相信一般的PLC都可以做得到),那么就是你的程序的問題了,在告訴處理的程序,應(yīng)該避免因為掃描周期造成的誤差。比如本次掃描,讀取告訴計數(shù)器值,小于目標(biāo)值哪怕是1,也不會輸出。但是當(dāng)下一個掃描周期,這一個周期有可能過了數(shù)個,數(shù)十個,脈沖。原因大多是你這個指令用的不對。信捷的沒用過,但是應(yīng)該有個高速比較指令。這個就是高速計數(shù)器達(dá)到指定值就直接進(jìn)入中斷,就像高速計數(shù)后臺處理,這樣就可以避免一個掃描周期內(nèi)的不確定性
r
謝謝指導(dǎo)。信捷好象沒有類似HSCS,HSCR 這類指令。它的HSCR只是讀取高速計數(shù)的值。所以才用的中斷處理,所以第一根總是準(zhǔn)的。當(dāng)C630到達(dá)指定長度后進(jìn)入中斷。RST -C630,問題是只要一復(fù)位C630計數(shù)器,就不準(zhǔn)了。RST是非高速指令,不知道會不會是這個問題。信捷好象也沒有高速計數(shù)器比較復(fù)位HSCR這樣的指令。