kevin-q
一天加一分,總有一天可以達到100分。
級別: 家園常客
|
圖片:
我最近寫了一個控制行程的程序,但是在設備上運行時,行程的誤差太大了,偏差有一兩mm(有時候還不更大),請教了別的師傅,他們說是我寫的程序有問題,所以想請教一下各位大神,幫幫忙,要怎么修改會好些。 |
---|---|
|
shuai3982
二十歲到三十歲這段時間,是人生中艱苦的一段歲月——承擔著漸長
級別: 論壇先鋒
|
從上面看也看不出什么問題 |
|
---|---|---|
|
祥子_lead
級別: 探索解密
|
上位機只是命令者,具體精度需要執行者去實現,程序只是負責發出了脈沖,但是機構運動是否滿足要求還需要去看具體的執行者。機械結構,伺服參數都很重要,甚至于超過程序! |
---|---|
|
wu32u2
耐得住挫折的打磨,我們將迸發出比鉆石還璀璨的光芒——
級別: 論壇先鋒
|
單從程序上看,不會引起定位不準,樓主可以調整下加減速時間試試,伺服在行進過程中如果突然遇到阻力變大但又沒達到伺服過載報警的界限值,此時會產生丟步現象,樓主可以監控伺服的峰值負載率,波動是否特別大;還有就是干擾問題了,是否是干擾引起的也好判斷,監控伺服驅動器實際接收到的脈沖數是否與發送的一致;最后就剩下機械問題了,聯軸器是否松動打滑,機械結構是否松動? |
|
---|---|---|
|
fengrunsheng
生活中本不缺少美,缺少的是發現美的眼睛!
級別: 網絡英雄
|
最簡單的辦法就是監控編碼器反饋回來的脈沖和程序所發出的脈沖是否一致. 就能區分出來是程序的問題,還是機械問題. |
---|---|
|
jicjic111
進步
級別: 略有小成
|
看了樓主的程序,我也覺得這程序有問題,最大問題是M10,和M1,和PLC是什么工作方式的,理解了,你也不會這樣寫程序了,記住 上三點,你的程序問題可以解決 |
---|---|
|
jicjic111
進步
級別: 略有小成
|
有兩種辦法可以解決:一種是按你這種,加上個M8000 加M ,用M再加上M10,可解決。第二種,DDIV寫成一個,用MOV指令,就分出了次序,也可解決你這個程序問題。只說程序,不說其它 |
---|---|
|