purshro
級別: 略有小成
|
圖片:
今天試了下臺達的,程序和上次信捷的類似。編碼器400線,1倍頻。轉一圈400個脈沖。8000個進入中斷剛好20圈,復位高速計數器。現在的問題是進入中斷復位高速計數器的時間是多少?在復位到0到重新計數的這段時間編碼器一直在轉,丟脈沖不知道該如何避免了。從監控上看知道一共是進了10次中斷再加一圈整的也就是400個脈沖。實際上編碼器已經走了一圈多一點了。也就是說RST C251這段時間沒有計數。 這個程序是定長用的。設定長度轉成脈沖數,當到達設定脈沖(長度)時進入中斷復位高速計數器,同時輸出動作。設備高速運轉不停機的。低速誤差還可以,高速較大。用單片機(STC12c5a60s2 或者stm32f103)情況比用PLC好些。 麻煩各位高手指點下這樣的思路有沒有問題。或者有更好的方法。 [ 此帖被purshro在2014-06-14 21:41重新編輯 ] |
---|---|
|
sicsuilyijun
工控路上學習中
級別: 略有小成
|
這么復雜,如果你定長都是8千的話。你就把C251設為8千。當計到8千時,由C251給自己復位。試一下看如何,我這么搞過,誤差不大,當然不知道你的速度有好高。 |
---|---|
|
無人值班
級別: 探索解密
|
我不是做機械控制的 但這個問題在過程控制中不是問題啊 高速計數不存在什么補償 復位漏計的問題 高速計數模塊本身就是帶寄存器的 我們用的PLC是這樣 比如設400次進一個高位給PLC處理器計數 處理器收到的數據就是高位計數圈+計數器中地位脈沖數 不會有什么誤差 當然行業不同 不知道硬件有沒有區別 但是高低端PLC原理應該都是一樣的 |
---|---|
|
purshro
級別: 略有小成
|
主要是機器速度變化太大20-120米/分。難以把握。 |
---|---|
|
purshro
級別: 略有小成
|
謝謝指點!c251的計數值到8000還是會一直加啊,要復位還是要dhscr吧。原來在機器上試時低速誤差還算可以,高速差點。后來沒在機器上,單獨拿編碼器試才發現編碼器在轉整圈后回標記點脈沖數不對。 |
---|---|
|
purshro
級別: 略有小成
|
謝謝指點!就是覺得比如400進入中斷處理的時候,編碼器實際已經到了401才復位的。所以才有累計誤差。還好機器誤差也不算大。 |
---|---|
|