秋秋
有志者事競成
級別: 家園常客
|
是的 像你說的 用DRVA 正轉應該寫 DRVA K數 K數 Y0 Y2 反轉脈沖數寫K負數 想要在觸摸屏顯示負值是嗎 那你就寫 SUB K0 D50 D50 師傅,在原點位置0MM,如果是手動正轉就要顯示正數 在原點位置0MM, 如果是手動反轉就要顯示負數, 我可以這樣子編嗎, LD >= D8140 K0 AND M1 OUT M2 LD M2 OUT MOV D210 D220 式中, M1是手動正轉 輔助中繼 D210是當前位置 數值,D220是觸摸屏上顯示 LD<=D8140 K0 AND M2 OUT M3 LD M3 OUT SUB KO D210 D220 式中, M2是手動反轉 輔助中繼 D210是當前位置 數值,D220是觸摸屏上顯示 可以這樣編寫嗎,還是有更好的思路沒有?我編程思路不怎么清晰,還望師傅指點,再 |
---|---|
|
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指令,程序在原點之后過程值清零,而在往負限方向走時,過程值自然變為負值,以上請參考! |
---|---|
本帖最近評分記錄: |
zjcw0419
級別: 略有小成
|
在程序里,設置JOG的速度,和移動量。。用寫的指令,寫入緩沖器內。。。 |
---|---|
本帖最近評分記錄: |
gali1120107
漫漫長路,吾將上下而求索。
級別: 家園常客
|
這個其實很簡單,在開機上電時手可以推動馬達,是因為寫程序的人剛開始沒讓他使能。按回原點先使能后再作回原點操作。一般PLC感應到原點信號時都會把脈沖現在值清零。也就是D8140低位, 應該是這個三菱很久沒用了。再屏中顯示只用低位 32位數 有符號型。看到這個給了我一個啟示其實 上電開機時也可以不讓機器勵磁,要求回原點后才能啟動機器自動運行,避免了開機運行沒回原點的情況。 |
---|---|
本帖最近評分記錄: |
zhanggobo
級別: 略有小成
|
不知道你那原點是在什么位置?是在左右限位的中間還是靠一邊?用絕對或相對定位指令應該很容易實現在HMI上監視其運動位置 |
---|---|
|
秋秋
有志者事競成
級別: 家園常客
|
請問M8340和M8348有什么區別?是不是像手冊說的,M8340是表明Y0脈沖輸出已經結束了,如果這時接通PLSY D300 D302 Y0 Y3,那么,是不是接通沒有斷開的話,M8340都在ON的狀態,而一旦接通斷開,則M8340馬上OFF,而M8348是定位結束的標志,即如果DDRVI D302 D300 Y0 Y3,如果D302的脈沖數還沒發送完畢并且驅動沒有斷開的話,則M8348接通,直到D302的脈沖數發送完畢則M8348斷開,是這樣的嗎? 即M8340是監控普通脈沖輸出指令的指令執行是否結束,而M8348是專門監控定位指令DDRVI,DDRVA的指令是否正常執行結束的標志? 謝謝! |
---|---|
|