最常見的思路就是先設(shè)立一個(gè)基準(zhǔn),然后從這個(gè)基準(zhǔn)開始往后累加,因?yàn)閮煞N孔距都是變量,需要寫一個(gè)可以動(dòng)態(tài)求目標(biāo)位置的算法,簡(jiǎn)單來(lái)說(shuō)就是分別對(duì)兩種孔距在下一個(gè)沖孔位置做取整后求差值,把這個(gè)差值走掉以后就可以沖孔,然后再走下一個(gè)
最終的效果就是看哪個(gè)孔在前,先走到這個(gè)位置沖一下,再走下一個(gè)位置再?zèng)_,至于具體沖哪一個(gè),根據(jù)計(jì)算結(jié)果來(lái)定
設(shè)X為總基準(zhǔn),大孔定位間距是a,小孔定位間距是b,動(dòng)態(tài)位置是XΔ,
起始狀態(tài)XΔ = X
大孔定位目標(biāo)位置Ya = na*a
小孔定位目標(biāo)位置Yb = nb*b
if(Ya<Yb)
go Ya
沖大孔
na+1
XΔ = Ya
else
go Yb
沖小孔
nb+1
XΔ = Yb
endif
可能還需要處理一下Ya=Yb的情況,就是倆都沖一下,建議是整個(gè)系統(tǒng)的數(shù)值計(jì)算都用一個(gè)實(shí)際位移單位比如0.01mm進(jìn)行規(guī)格化
當(dāng)(XΔ-X) >= 設(shè)定目標(biāo)長(zhǎng)度+固定偏移,裁切動(dòng)作,這里的固定偏移是一個(gè)固定的值,一般是設(shè)備長(zhǎng)度之類的