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