秋秋
有志者事競成
級別: 家園常客
|
師傅們好,運臺是靠伺服電機來帶動的,為什么電控箱上電的時候,運臺上可以任意移動,當按下原點回歸按鈕,以一定的速度反轉,當碰到近點開關時,再以更低的速度正轉,直到找到Z相后停止,此點就是原點,停止后我用手去移動運臺,不管怎么移都移不動運臺,這是怎么回事啊?是不是此時伺服必須靠程序來控制才會轉 還有一個問題,就是在原點位置的時候,觸摸屏上顯示的當前位置是0mm,當按下手動反轉,觸摸屏上的數值變成了負的數值,再按手動正轉,數值由負mm的到原點位置0mm變成正的數值顯示,這個程序是怎么編寫的。是不是在原點位置0MM時,如果是反轉的話,位置的當前值用減法指令SUB K0 D10 D20 D10當前值, D20 顯示在觸摸屏上/ 具體編寫要怎么編,求指點 D8140用不用派上用場?請師傅們指點一下,小弟在此感謝了 , |
---|---|
|
slik
級別: 論壇先鋒
|
伺服on的時候即有servo on信號時,伺服就推不動了, |
---|---|
本帖最近評分記錄: |
slik
級別: 論壇先鋒
|
看你用什么指令,比如說是用DRVI,DRVA指令做寸動的話,則脈沖過程值保存在D8340,D8341(雙字,對應Y0),D8350,D8351(對應Y1),D8360,D8361(對應Y2),如果是還有擴展的話,還有D8370,D8371(對應Y3),而如果是使用PLSY和PLSR的話,則過程值保存在D8140,D8141(對應Y0)和D8142,D8143(對應Y1),這些值對應的都是脈沖數,要轉換顯示mm還要幾個數據,比如說電機轉一周模塊發出10000個脈沖,螺桿的螺距是10mm,轉速比為1:1,電機反饋的脈沖數是131072,那么脈沖當量是1微米,即用1000個脈沖表示1mm,所以程序可以這么做:LD M8000 DMOV D8340 D30 ,DFLT D30 D32,DEDIV K10 K10000 D34,DEMUL D32 D34 D36 ,DINT D36 D38,那么這時候的D38,D39就是你屏幕里出現的顯示值,出現負數,那并不要使用SUB指令,程序在原點之后過程值清零,而在往負限方向走時,過程值自然變為負值,以上請參考! |
---|---|
本帖最近評分記錄: |