cd_looper
好想放飛自我
級別: 工控俠客
|
最近有點閑,閑來無事逛論壇看到關于編碼器測速度的問題,因為之前都是用的SPD指令,但是看到說用定時中斷會更精確。本來最近無事就動手研究研究,接了個編碼器測試。 使用I28定時中斷,時間設為1000ms,I28里面就是一個很簡單的把QD62通道1的值DMOV到D20。然后監控觀察到I28是按1S的周期再執行,但是D20一直是零。因為不知道原因所以 特意在下面加了個INC D100,然后這個指令也沒有執行,D100一直為0。SD716.C為1表示I28中斷允許執行,C28為I28執行計數。請大佬指教一下哪里有問題。 |
|
---|---|---|
|
焦劉吉
緊跟時代發展,努力做好時代青年
級別: 工控俠客
|
中斷開了嗎? |
|
---|---|---|
|
cd_looper
好想放飛自我
級別: 工控俠客
|
開了,C28里的計數就是記錄I28執行次數的,一直是按照我設定的1000ms的周期再執行啊 |
|
---|---|---|
|
焦劉吉
緊跟時代發展,努力做好時代青年
級別: 工控俠客
|
我疑惑你的D100沒有計數 |
|
---|---|---|
|
cd_looper
好想放飛自我
級別: 工控俠客
|
我也是相當疑惑,不知道問題出在哪里?按照編程手冊說的SD716的每一位就代表I16-I32中斷的開啟狀態,對應I28的SD716.C已經為1了。然后PLC參數里設置中斷計數器也是從C0開始的,對應I28的應該也是C28沒錯,而且計數的脈沖目測確實是按照為設置的1S鐘執行一次。然后I28里面的程序就是不執行啊 |
|
---|---|---|
|
焦劉吉
緊跟時代發展,努力做好時代青年
級別: 工控俠客
|
我做過這個實驗的時候是可以的,我沒有用特殊寄存器,就用的EI IMASK DI別的也沒啥,就可以 |
|
---|---|---|
|
cd_looper
好想放飛自我
級別: 工控俠客
|
EI指令在前面,有的。中斷允許指令已經允許中斷執行了,不然中斷執行計數也不會不計數。 |
|
---|---|---|
|