rz_2009
級別: *
|
圖片:
我的目的是達到測旋轉軸的角度,從-135°~-30°~-10°~10°~+30°~-135°,正反轉旋轉 我用的是三菱PLC的FX2N,這里有A、B、Z相的HK38系列的增量式旋轉編碼器,將PLC的X0,X1,X2分別接編碼器的A相和B相及Z相,用PLC的雙相計數器C252計數,雖然我知道A相超過B相90°為順時針轉,滯后就逆時針轉,但不知道如何具體編程,能否指點一二?謝謝 這里附上一個簡單的程序圖,但是PLC上X0, X1,根據編碼器的旋轉進行閃爍,但X2一直是亮著的,無變化,而且C252也不計數,這是為什么 [ 此帖被rz_2009在2009-07-30 13:02重新編輯 ] |
---|---|
|
rz_2009
級別: *
|
最好有這樣的編程實例,可能對各位來說太簡單,但仍望各位高手施以援手 [ 此帖被rz_2009在2009-07-30 13:05重新編輯 ] |
---|---|
|
rz_2009
級別: *
|
原因是找到了,原因是因為接X2端的Z相一直使得 X2亮著,導致一直處于復位狀態,所以C252沒有計數,但我用示波器測了,轉一圈還是有一個Z相脈沖的,在沒轉一圈前,Z相脈沖處于低電平狀態,那為什么接上X2端子會一直使它亮呢? 應該是轉一圈亮 一次啊,不知道為什么 |
---|---|
|
plcbb
落花人獨立,微雨燕雙飛。
級別: 探索解密
|
我用的時候一般只接AB兩相,Z相不接。 |
|
---|---|---|
|
jsmymcn
級別: 略有小成
|
看一下你的PLC電源是源型輸入還是漏型輸入,還有就是編碼器的輸入方式是源型還是漏型,這要對應的 |
---|---|
|
rz_2009
級別: *
|
如何判別啊? 現在不僅是接X2端, C252不計數,我接到其他PLC沒有規定的端子如X5,也一直亮,C252也不計數 |
---|---|
|
回憶依然最美
一不小心混進社會, 浪子回頭已經白費... ...
級別: 工控俠客
|
圖片:
這段程序錯誤多多呀,不知樓主為何要編寫以上這段程序,C252是硬件復位的,不需要編寫程序將其復位,請把以上程序段刪除!十分不解樓主用M8000來驅動MOVP指令將C252的當前值傳送到D10,C252是32位的計數器,而樓主用了16位傳送指令,而且是脈沖執行型,這顯然是錯誤的,C252的當前值不可能傳送到D10,請改為32位的傳送指令“DMOV”,程序執行的時候用電腦監視一下X5的輸入點是否處于“1”狀態,處于“1”狀態把C252復位也不可能計數,以上錯誤排除后仍然不計數的話可以肯定地說樓主選用的編碼器的脈沖頻率超出PLC的最高響應頻率,請選用合適的編碼器。 以上~~ [ 此帖被回憶依然最美在2009-07-30 19:38重新編輯 ] |
---|---|
|
回憶依然最美
一不小心混進社會, 浪子回頭已經白費... ...
級別: 工控俠客
|
曾經做過實驗,用FX2N來接1024脈沖的編碼器出現不計數的問題,而改用512和256脈沖的編碼器則計數正常。供樓主參考~ |
---|---|
|
rz_2009
級別: *
|
圖片:
多謝各位,我改了一下,但仍舊沒找到問題原因,但測試中發現,接X2和X5都能使C252復位,盡管手冊上說只有X2復位,但由于以上提到的Z相接入任何一個輸入端都使之ON,所以我就避開了接X2和X5端子,改接其他的端子,比如X3,這并不是因為它是高速輸入端的一種才選,其他端也一樣,因此我采用了軟件復位,也沒辦法了,效果倒是達到了想要的, 至于7樓提出的十分對,所以改過來了,當時只是隨手寫寫,只看計數器是否計數,謝謝7樓的編程糾正。只要Z相位不接X2和X5,因為這使得它們都為“1”,即ON, 其他就能計數,正反轉對應增減數,但我是想要復位一下 我選用的編碼器分辨率是600pulses/r的,而且轉軸轉速也很低,2r/min, 所以應該不是響應頻率超出的問題 [ 此帖被rz_2009在2009-07-30 20:07重新編輯 ] |
---|---|
|