4. 將記錄的數(shù)值輸入系統(tǒng)之內(nèi),系統(tǒng)會(huì)自動(dòng)生成X軸Z向的直線度誤差(圖2)
/ b! K: Z8 |, y9 g3 m% a* }
[attach]380275[/attach]
. i; G, C( V. ^( H
圖1 X軸Z向直線度檢測(cè)示意圖
, ~" [0 q; B2 {6 k; x) a
( a- u' w8 M6 ^6 ?
: e+ c' W* }8 y N8 A: i+ M
[attach]380277[/attach]
5 i+ V o6 @5 i: v1 I: U9 l! A4 m圖2 檢驗(yàn)結(jié)果樣例
) J. }1 B d- C, N
. f& ] F1 { ]) a& F8 l0 \$ r
問(wèn)題的提出:
* W; x8 W& I1 l B: }' w, f+ q公司規(guī)定的該處直線度誤差應(yīng)為11μm之內(nèi),,據(jù)車間及工藝反映:,,自從該機(jī)型量產(chǎn)后的幾十臺(tái)檢驗(yàn)結(jié)果,該處直線度誤差一直在超差邊緣,,機(jī)械調(diào)整非常困難,,公司內(nèi)部不允許在工廠階段進(jìn)行軟件優(yōu)化補(bǔ)償,因?yàn)楝F(xiàn)在我主管該產(chǎn)品了,,恰好之前按照總部的要求將導(dǎo)軌及絲杠都做了優(yōu)化改進(jìn),,鑄件也都做了更改,超差的兩臺(tái)機(jī)器正好是前兩臺(tái)樣機(jī),,于是質(zhì)量部門召開(kāi)了一次會(huì)議,,要求從機(jī)械上想辦法對(duì)該問(wèn)題做出一些分析,并提出改進(jìn)的辦法,。
- x5 x# E- H, m: G1 @7 M) @0 b; ?' W解決問(wèn)題的思路: & g# X' A; e6 C! E# {9 f
聯(lián)想到該機(jī)床的基本結(jié)構(gòu),,立柱中間為了放置轉(zhuǎn)臺(tái)開(kāi)了一個(gè)很大的口子,這必然影響到整個(gè)機(jī)床在此處的剛性,,反映到上面提到的x軸z方向直線度便是兩側(cè)高而中間低的情況,,這在軟件上也非常清楚的顯示了出來(lái)(圖3),解決的辦法就是在立柱的導(dǎo)軌上加工出一個(gè)中凸的曲線來(lái)抵消重力對(duì)直線度的影響,。- r8 o$ s: e9 l! P& p: c* T, B5 b! e' h
[attach]380278[/attach]
- W7 `: c9 ?1 |) a% y, M/ V圖3 直線度誤差曲線圖
@3 v+ v; Z( [- x" c
問(wèn)題的一般化:
4 w# [! Z3 q4 f9 s9 W. \( D我的雄心絕不僅僅是隨便給出一個(gè)結(jié)果這么簡(jiǎn)單,,我想把這個(gè)問(wèn)題更加一般化:
2 G8 @. j& O0 V5 H: \
1.如何根據(jù)輸入的幾個(gè)點(diǎn)求整條軸的直線度?
( N p2 G% q3 f
2.如果該直線度的走向有規(guī)律可循,如何找到該規(guī)律,?換言之,,該直線度的走向能否被一條曲線擬合,如果能,,那曲線的方程應(yīng)該是什么,?
+ @! b$ ~4 [! B
3.如果我手上有幾十臺(tái)該直線度的檢測(cè)數(shù)據(jù),我如何來(lái)求得最適合的一條擬合曲線,?
2 E; M/ w$ e* |' B0 L! W
4.如何求得3中提出來(lái)的擬合曲線的補(bǔ)償曲線,?
b1 n) e. `# p2 q5.補(bǔ)償曲線求好后,如何反推其正確性(通過(guò)已有的機(jī)床直線度數(shù)據(jù)反求)
, T7 E# t9 I1 i# ]) x$ n/ v具體的解決思路:! L& C o: W5 a& C( Q
為了便于理解,,我對(duì)機(jī)床軸和坐標(biāo)軸的對(duì)應(yīng)關(guān)系做一個(gè)描述:令機(jī)床軸X軸的中點(diǎn)作為坐標(biāo)的原點(diǎn),,坐標(biāo)軸X軸的正向?yàn)闄C(jī)床軸X軸行程的正向,這樣,,這個(gè)問(wèn)題中700mm的行程可以在坐標(biāo)軸上對(duì)應(yīng)為為X軸的-350,,-320,…,,0,,…,,320,350,,單位為毫米,,坐標(biāo)軸Y軸和機(jī)床Z軸重合,方向一直,,單位為微米,。
& A8 i; I5 n3 U. R0 o1.如何根據(jù)輸入的幾個(gè)點(diǎn)求整條軸的直線度?
" i7 f/ G: a% _# i
這個(gè)問(wèn)題比較簡(jiǎn)單,只要在坐標(biāo)軸上畫出每個(gè)點(diǎn)對(duì)應(yīng)的X軸Z方向的直線度測(cè)量數(shù)據(jù),,然后通過(guò)最小二乘法擬合出一條直線,,每個(gè)點(diǎn)與該直線的豎直距離(注意是Z方向差值的絕對(duì)值,而不是點(diǎn)到直線的垂直距離,,這個(gè)具體可以參考最小二乘法的定義及求法)的差值即為該點(diǎn)的偏差值,,這個(gè)行程上點(diǎn)與點(diǎn)之間偏差值的差的最大值就是X軸在Z方向的直線度。下面就以圖2的檢測(cè)數(shù)據(jù)為例編程求出該機(jī)床的X軸Z方向直線度(圖4),。
4 y9 Z4 ]5 R0 k9 Q( h) y+ `5 z. u
[attach]380279[/attach]
圖4 X軸Z方向的直線度求法模擬
7 d$ w/ u) N% g M8 k t由圖中可以看出,,用該方法求出的偏差值及直線度誤差與系統(tǒng)給出的完全一致,這里給出的精度甚至更高,。(具體的編程代碼我就不給出了,,熟悉編程的朋友可以自己去編個(gè)看看)
2.如果該直線度的走向有規(guī)律可循,如何找到該規(guī)律,?換言之,該直線度的走向能否被一條曲線擬合,,如果能,,那曲線的方程應(yīng)該是什么?
8 s0 z' y! x' K5 p/ H上面既然求出了每個(gè)點(diǎn)的實(shí)際偏差值,,問(wèn)題就簡(jiǎn)單了:把實(shí)際偏差值輸入到坐標(biāo)軸中,,用合適的曲線模擬出偏差的趨勢(shì)或走向,用的當(dāng)然還是最小二乘法,。至于擬合曲線的選取,,我這里選擇了二次曲線,當(dāng)然讀者也可以選更高次的曲線模擬,。(圖5)
$ U) k e8 ]3 } N \) Q
[attach]380280[/attach]
( f* {, o/ _! n7 Z/ k/ {
圖5 用二次曲線擬合直線度偏差點(diǎn)
! C3 K3 \* C( M5 W$ ?7 ] s
% w, C M7 X* d6 b2 U從圖中可見(jiàn),,模擬的效果還是不錯(cuò)的,點(diǎn)的位置基本上符合了二次曲線的規(guī)律,。
; l u3 ^, g [' U; C
: Z" j0 }7 n0 f; D3.如果我手上有幾十臺(tái)該直線度的檢測(cè)數(shù)據(jù),,我如何來(lái)求得最適合的一條擬合曲線?
$ ?/ y. }- d6 C從問(wèn)題2中我們可以求得每臺(tái)機(jī)床的直線度情況,,但是供應(yīng)商加工鑄件的精度在一定范圍內(nèi)是隨機(jī)的,,這就需要我們從大數(shù)據(jù)中求得最適合的一條曲線,,通過(guò)該條曲線的加工補(bǔ)償,可以使得每臺(tái)機(jī)床直線度都不至于偏離太遠(yuǎn),。這個(gè)最適合應(yīng)該怎么定義呢,?我還是使用最小二乘法的原理,在軸的每個(gè)特定位置求出剛剛擬合出的幾十條曲線的直線度偏差值,,然后找到該位置上的一個(gè)偏差值使得該值到其他機(jī)床在該位置偏差的距離的平方和最小,,如此再做最小二乘擬合,所得的二次曲線便是幾十臺(tái)機(jī)床直線度誤差的平均值了,。(圖6)% {8 I0 J" E% |* c
[attach]380281[/attach]
. D$ S4 A/ P" G) c. X
圖6 多臺(tái)機(jī)床直線度數(shù)據(jù)擬合
3 b/ S; Q5 i P4 Z3 g; A0 M' e# D% Z' P
本次我一共擬合了10臺(tái)的數(shù)據(jù),,得到了上述的表達(dá)式和函數(shù)圖像
5 X6 m5 T4 X4 a$ |! n8 f: O W4.如何求得3中提出來(lái)的擬合曲線的補(bǔ)償曲線?
( A5 {# ]! J4 M0 X6 s4 M' u" C' q
上面的曲線方程出來(lái)以后,,這一步也就可以順利解答了,,只要把上面的方程按X軸對(duì)稱即可得到補(bǔ)償函數(shù),當(dāng)然這個(gè)函數(shù)還不是我們要的,,為了方便加工,,給出的函數(shù)需要假設(shè)兩頭為0,中間高,,從而讓加工廠不必費(fèi)力再去計(jì)算各點(diǎn)的差值,,直接從函數(shù)中就可以計(jì)算出每個(gè)點(diǎn)的補(bǔ)償值。(圖7)當(dāng)然考慮的實(shí)際的精度,,中間一項(xiàng)可以刪除,。從而得到更加簡(jiǎn)潔的函數(shù)表達(dá)式。
[attach]380282[/attach]
2 ]1 ^3 a I& r2 [# [- B0 H
圖7 最終得到的可用于加工的補(bǔ)償函數(shù)及圖像
5 D* Z, H- Z2 m. p1 n " }' Q1 v( Q4 T2 F, K
5.補(bǔ)償曲線求好后,,如何反推其正確性(通過(guò)已有的機(jī)床直線度數(shù)據(jù)反求)
把上面求出的補(bǔ)償曲線與每臺(tái)機(jī)床的直線度誤差曲線合并后,,再使用步驟1的方法可以得到補(bǔ)償后的結(jié)果。(圖8)
1 |; s6 G, q: r( G+ H
[attach]380283[/attach]
. J Y3 I7 s; Y1 e# ]
圖8 補(bǔ)償前后直線度誤差對(duì)比
5 N/ o; W& Z1 O! I% i& Q1 o
9 D5 [ V5 [; R" \7 _& j7 [
由上圖可以看出,,補(bǔ)償后的直線度誤差沒(méi)有超過(guò)6微米的,,除了第5臺(tái)機(jī)床,其他的都要明顯好于補(bǔ)償前的結(jié)果,。
/ o5 | u; f( w1 g$ X0 b
結(jié)論:
- C- C: H% b2 E' e, Y; W0 w通過(guò)機(jī)械的補(bǔ)償可以達(dá)到預(yù)期的效果,,但是值得注意的是,補(bǔ)償后的誤差仍然可以通過(guò)系統(tǒng)插值法來(lái)進(jìn)一步補(bǔ)償,。而軟件補(bǔ)償是針對(duì)單臺(tái)機(jī)床來(lái)說(shuō)的,,從下圖可以看到,如果需要,,二次補(bǔ)償后直線度在1微米之內(nèi)甚至更高精度要求內(nèi)完全沒(méi)有問(wèn)題,。
' R' O: Q, O0 Y6 G, T+ ?[attach]380284[/attach]
1 K7 `- ~+ |+ N$ h! _0 `( w
圖9 補(bǔ)償后的偏差仍然可以通過(guò)二次曲線在軟件中補(bǔ)償
3 w6 m* p3 K1 X0 |- y% B6 e+ f+ B( z ^# S( f# {1 z
5 r. R5 [/ N, z1 n" N! }
1 i0 O6 L! n2 }& n' i* @' Y, @. P0 X- J* [8 R |