国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

球頭銑刀多軸銑削的刀具與工件切觸區(qū)域?qū)崟r計算方法

2019-12-31 08:44黎柏春王振宇楊建宇王宛山
中國工程機(jī)械學(xué)報 2019年6期
關(guān)鍵詞:球頭銑刀位姿

黎柏春,王振宇,楊建宇,王宛山

(1.中國民航大學(xué) 航空工程學(xué)院,天津 300300; 2.東北大學(xué) 機(jī)械工程與自動化學(xué)院,遼寧 沈陽 110819)

銑削力作為研究銑削過程的基礎(chǔ)和前提,近年來很多學(xué)者對其進(jìn)行了研究,而且理論建模和仿真已成為銑削力研究的重要手段[1].銑削力建模和仿真需要以銑削過程的幾何信息為基礎(chǔ),包括實(shí)時刀具運(yùn)動狀態(tài)、切觸區(qū)域等.其中,刀具與工件切觸區(qū)域是銑削力模型中確定積分邊界的重要依據(jù).尤其對于球頭銑刀的多軸銑削,由于刀具的球面形狀和刀軸方向改變使得切觸情況復(fù)雜、多變,其切觸區(qū)域計算成為相關(guān)研究需要解決的首要問題.

Yang等[2]提出了一種基于實(shí)體修剪的切觸區(qū)域求解方法.Taner等[3]提出了一種基于幾何投影的切觸區(qū)域求解方法.Gong等[4]將刀具和工件表示為三角形網(wǎng)格描述的實(shí)體后,通過減法布爾運(yùn)算不斷更新工件,確定切觸區(qū)域.Wei等[5]提出了一種改進(jìn)的Z-Map離散方法.Inui等[6]設(shè)計了基于圖形處理器(Graphics Processing Unit,GPU)加速和單向Dexel離散的幾何仿真算法,由此確定切觸區(qū)域.Li等[7]提出了一種計算切觸區(qū)域的解析方法.魏北成等[8]將球頭銑刀多軸銑削過程考慮為一系列的微小斜平面切削,從而確定多軸銑削時的切觸區(qū)域.Zhu等[9]將平底圓角銑刀多軸銑削的切觸區(qū)域邊界分為3種曲線,由此得到切觸區(qū)域符號化解析模型.

綜合上述研究,切觸區(qū)域的計算方法可總結(jié)為實(shí)體仿真方法、離散仿真方法和解析方法.實(shí)體仿真方法具有較高的計算精度,但需要大量空間,而且計算效率低,計算100個刀位點(diǎn)耗時數(shù)分鐘[2],不適用于多軸銑削復(fù)雜曲面.離散仿真方法降低了對存儲空間的需求,但存在計算精度和計算效率的平衡矛盾,一般只適用于三軸銑削的情況[8].解析法具有較好的計算精度和計算效率,但切觸區(qū)域邊界模型往往比較復(fù)雜,尤其是球頭銑刀多軸銑削復(fù)雜曲面時,難以建立準(zhǔn)確的邊界模型,因此,該方法只適用于工件輪廓可用數(shù)學(xué)模型描述的情況,不適用于銑削表面二次銑削以及多軸銑削復(fù)雜曲面的情況.鑒于此,本文針對球頭銑刀多軸銑削復(fù)雜曲面,提出一種實(shí)時計算刀具與工件切觸區(qū)域的方法.

1 切觸區(qū)域?qū)崟r計算的基本流程

切觸區(qū)域?qū)崟r計算方法的總體流程如圖1所示,該方法主要包括以下關(guān)鍵環(huán)節(jié):① 從數(shù)控程序中提取銑削工藝參數(shù)和刀具軌跡信息,計算每齒進(jìn)給量,并以此為基本長度離散刀具軌跡一系列位置和位姿數(shù)據(jù).② 根據(jù)刀具幾何參數(shù),構(gòu)建相距每齒進(jìn)給量大小的兩相鄰刀位的刀具掃描體模型.③ 體素化工件和刀具掃描體模型,以便將復(fù)雜的三維空間布爾運(yùn)算轉(zhuǎn)化為一維布爾運(yùn)算.④ 進(jìn)行布爾運(yùn)算,更新工件的體素化數(shù)據(jù),并標(biāo)記當(dāng)前更新的工件表面數(shù)據(jù).⑤ 從當(dāng)前更新的工件表面數(shù)據(jù)中篩選出切觸區(qū)域點(diǎn)數(shù)據(jù),進(jìn)行實(shí)時重建渲染.

圖1 總體流程Fig.1 Flow diagram

為了保證在高精度離散前提下,提高切觸區(qū)域計算效率,相關(guān)計算主要由GPU并行計算實(shí)現(xiàn).前期工作[10-11]已完成刀具掃描體建模和模型體素化研究.

2 面向切觸區(qū)域?qū)崟r計算的銑削加工幾何仿真

2.1 刀具位置和位姿

為了獲得刀具位置和位姿,需要模擬數(shù)控系統(tǒng)的譯碼和插補(bǔ)運(yùn)算.模擬數(shù)控系統(tǒng)的譯碼就是將數(shù)控程序讀取到內(nèi)存后,進(jìn)行分類處理和數(shù)值提取,插補(bǔ)就是對數(shù)值進(jìn)行分類插值.因此,可設(shè)計譯碼和插補(bǔ)的算法流程,如圖2所示.

圖2 數(shù)控程序譯碼和插補(bǔ)的模擬算法Fig.2 Algorithm for simulation of decoding numerical control codes and interpolation

不同數(shù)控程序的行數(shù)和程序段長度不同,譯碼時所需內(nèi)存存儲空間動態(tài)多變.為此,圖2的算法采用鏈表嵌套鏈表的數(shù)據(jù)結(jié)構(gòu)為其動態(tài)分配存儲空間,即將程序段以數(shù)據(jù)字為單元通過鏈表數(shù)據(jù)結(jié)構(gòu)形式存儲,而且程序段之間也使用鏈表形式有序地組織為一體,其邏輯結(jié)構(gòu)如圖3所示.

從數(shù)控程序中獲得刀具位置和機(jī)床旋轉(zhuǎn)軸角度后,還需要對其以每齒進(jìn)給量為基本長度進(jìn)行插值,并根據(jù)旋轉(zhuǎn)軸角度計算刀具位姿.數(shù)控系統(tǒng)實(shí)現(xiàn)多軸銑削時刀位和旋轉(zhuǎn)軸角度插補(bǔ)一般采用線性插值方式[12],據(jù)此可直接寫出刀尖位置的插值表達(dá)式為

(1)

圖3 數(shù)控程序存儲的邏輯結(jié)構(gòu)示意圖Fig.3 Diagram of logical constructs for storing numerical control codes

式中:pi-1,pi為插值得到的相鄰刀尖位置坐標(biāo);f為進(jìn)給速度(mm/min);n為主軸轉(zhuǎn)速(r/min);Nf切削刃數(shù);pj為從數(shù)控程序提取的離散刀具位置;條件1為pi-1∈[pj-1pj]且pi∈[pj-1pj];條件2為pi-1∈[pj-1pj]且pi∈[pjpj+1].

刀具位姿與機(jī)床結(jié)構(gòu)形式密切相關(guān),文中以回轉(zhuǎn)擺動形式的五軸機(jī)床為例,如圖4所示.

圖4 五軸機(jī)床Fig.4 5-axis machine tool

根據(jù)線性插值可得到刀位pi對應(yīng)的旋轉(zhuǎn)軸角度Bi和Ci為

(2)

(3)

式中:Bj和Cj分別為pj對應(yīng)的B,C旋轉(zhuǎn)軸角度,從數(shù)控程序中提取得到.

圖4中,om-xmymzm為機(jī)床坐標(biāo)系,ow-xwywzw為工件坐標(biāo)系,o-xyz為刀具坐標(biāo)系.其中,刀具坐標(biāo)系o-xyz以刀尖為原點(diǎn),刀軸方向?yàn)閦軸正方向,進(jìn)給方向在垂直于z軸平面內(nèi)的投影方向作為x軸正方向,y軸正方向則由笛卡爾坐標(biāo)系右手定確定.根據(jù)圖4坐標(biāo)系和B,C旋轉(zhuǎn)軸運(yùn)動關(guān)系,可寫出刀具位姿在工件坐標(biāo)系下的矢量形式為

(4)

2.2 GPU加速的布爾運(yùn)算

插值獲得刀具位置和位姿后,利用文獻(xiàn)[10]的方法可實(shí)時建立刀具掃描體模型.為了能夠計算每齒進(jìn)給量的切觸區(qū)域,必須將每相鄰的兩個刀具位置和位姿構(gòu)建為獨(dú)立的刀具掃描體模型.然后,利用文獻(xiàn)[11]的方法,將工件模型和刀具掃描體模型離散為3方向的Dexel體數(shù)據(jù),進(jìn)行布爾運(yùn)算.

為了實(shí)現(xiàn)布爾運(yùn)算的GPU并行加速,利用著色語言GLSL控制頂點(diǎn)著色器和transform feedback步驟實(shí)現(xiàn)在GPU上的布爾運(yùn)算.具體思路是將工件的Dexel數(shù)據(jù)以頂點(diǎn)屬性的形式存儲到transform feedback對象申請的顯卡緩存區(qū),需要存儲的每個Dexel數(shù)據(jù)主要包括網(wǎng)格坐標(biāo)、長度坐標(biāo)、法向量和切削狀態(tài)標(biāo)識符;而刀具掃描體的Dexel數(shù)據(jù)則以顏色紋理形式存儲,如圖5所示.紋理坐標(biāo)可作為Dexel數(shù)據(jù)的網(wǎng)格坐標(biāo),因此,顏色紋理只需存儲每個Dexel數(shù)據(jù)的長度坐標(biāo)和法向量.

工件、刀具掃描體離散后的布爾運(yùn)算和工件數(shù)據(jù)更新過程可分為6類,如圖6所示.為了方便表達(dá),將工件Dexel數(shù)據(jù)兩端的長度坐標(biāo)分別記為bw和tw(沿Dexel投射方向,bw為近端,tw為遠(yuǎn)端),對應(yīng)的表面法向量記為ξ1和ξ2.將掃描體Dexel數(shù)據(jù)兩端的長度坐標(biāo)分別記為bc和tc,對應(yīng)的表面法向量記為n1和n2.

圖5 刀具掃描體到顏色紋理的映射示意圖Fig.5 Schematic diagram of mapping cutter swept volume into color texture

圖6 布爾運(yùn)算和工件數(shù)據(jù)更新Fig.6 Boolean operation and workpiece update

(1) 圖6(a)中bc>tw,此時工件的Dexel線段未被切削,無更新.

(2) 圖6(b)中bw>tc,此時工件的Dexel線段未被切削,無更新.

(3) 圖6(c)中tc>tw>bc>bw,此時工件Dexel線段的遠(yuǎn)端被切削,即更新tw為bc,更新ξ2為-n1.

(4) 圖6(d)中tw>tc且bc>bw,此時工件Dexel線段的中間部分被切削,生成2個新Dexel線段.

(5) 圖6(e)中tc>tw且bw>bc,此時工件Dexel線段被全部切除.

(6) 圖6(f)中tw>tc>bw>bc,此時工件Dexel線段的近端被切削,即更新bw為tc,更新ξ1為-n2.

根據(jù)數(shù)據(jù)存儲、布爾運(yùn)算和工件數(shù)據(jù)更新,設(shè)計基于GPU并行計算的布爾運(yùn)算算法,如圖7所示.

3 切觸區(qū)域?qū)崟r重建

圖7所述算法能夠標(biāo)記每次新生成的點(diǎn)集,但布爾運(yùn)算是工件模型和刀具掃描體模型之間的布爾運(yùn)算,因此,標(biāo)記的離散點(diǎn)集并非完全位于刀具表面,不能直接作為構(gòu)建切觸區(qū)域的點(diǎn)集.為此,通過點(diǎn)和球心(球頭部分的球心)距離篩選刀具切觸區(qū)域點(diǎn)集.假設(shè)布爾運(yùn)算新生成的任意點(diǎn)坐標(biāo)為(wx,wy,wz),由前述可知該坐標(biāo)為工件坐標(biāo)系下坐標(biāo),為了計算方便將其變換到刀具坐標(biāo)系下為

(5)

(6)

其中,nx為刀具坐標(biāo)系x軸正方向單位矢量

(7)

nf為刀具瞬時進(jìn)給方向的單位矢量

(8)

球心在刀具坐標(biāo)系下坐標(biāo)為(0, 0,R),R為刀具半徑.由式(5)計算得到的坐標(biāo)和球心坐標(biāo),在考慮離散誤差情況下,可將刀具切觸區(qū)域點(diǎn)集表示為

圖7 GPU加速的布爾運(yùn)算算法Fig.7 Algorithm of Boolean operation based on GPU acceleration

(9)

式中:δ為三維模型的離散精度.

在Dexel結(jié)構(gòu)中,點(diǎn)數(shù)據(jù)包括點(diǎn)的位置坐標(biāo)和表面法向量.因此,可以通過在點(diǎn)位置坐標(biāo)中心創(chuàng)建基本圖元重建表面,例如:三角面片、四邊形等.但此時存在基本圖元之間融合問題,不能實(shí)現(xiàn)基本圖元無縫連接,形成光滑表面.為此,需要對點(diǎn)位置坐標(biāo)進(jìn)行微小調(diào)整,然后以各點(diǎn)為中心創(chuàng)建以離散精度δ為邊長的四邊形圖元,其原理如圖8所示.

圖8 切觸區(qū)域表面重建原理Fig.8 Surface reconstruction of cutter-workpiece engagement

點(diǎn)(cx,cy,cz)調(diào)整后的新點(diǎn)為

(10)

其中,(cx1,cy1,cz1)和(cx2,cy2,cz2)為

此外,渲染重建表面時,光照計算使用Dexel中的表面法向量cξ,以保證表面顯示的光滑連續(xù).

4 仿真分析和驗(yàn)證

為驗(yàn)證文中方法的可行性,利用C++語言、OpenGL 4.5圖形接口和GLSL著色語言開發(fā)實(shí)現(xiàn)切觸區(qū)域計算的相關(guān)算法,并通過模擬葉輪開粗銑削過程實(shí)時計算切觸區(qū)域.葉輪開粗銑削過程選擇半徑為R=4 mm的球頭銑刀作為刀具,主軸轉(zhuǎn)速6 000 r/min,進(jìn)給速度3 200 mm/min,其仿真結(jié)果如圖9所示.由圖9可以看出,文中方法適用于多軸銑削復(fù)雜曲面的切觸區(qū)域仿真計算,且切觸區(qū)域光滑連續(xù),具有良好的渲染顯示效果.

圖9 切觸區(qū)域的仿真計算結(jié)果Fig.9 Simulation results of cutter-workpiece engagement

為了驗(yàn)證文中方法的準(zhǔn)確性,通過三維建模軟件中實(shí)體布爾運(yùn)算功能(實(shí)體仿真方法),計算葉輪開粗銑削過程中某個刀位點(diǎn)的切觸區(qū)域,并將其與文中方法的計算結(jié)果進(jìn)行對比分析.為了便于比較,將切觸區(qū)域沿刀具坐標(biāo)系z軸負(fù)方向投影,如圖10所示.

圖10 切觸區(qū)域仿真結(jié)果對比分析Fig.10 Comparison and analysis of simulation results of cutter-workpiece engagement

由圖10可以看出:實(shí)體布爾運(yùn)算計算得到切觸區(qū)域具有清晰輪廓、較高精度,可作為驗(yàn)證文中方法的依據(jù).但其計算過程復(fù)雜、效率低,需要大存儲空間,實(shí)用性較差.此外,文中方法和實(shí)體布爾運(yùn)算方法分別計算得到的切觸區(qū)域具有較高吻合度,且偏差極小,從而驗(yàn)證了文中方法的準(zhǔn)確性.

對于文中方法的實(shí)時性,在普通PC機(jī)(Intel Core i3-7350K 4.2 GHz,內(nèi)存8 GB,顯卡Nvidia GeForce GTX 970)上仿真計算葉輪開粗銑削切觸區(qū)域時,幀率可達(dá)40 幀/s左右,即每分鐘大約能計算2 400個刀位點(diǎn)的切觸區(qū)域,具有良好的實(shí)時性.

5 結(jié)論

結(jié)合前期研究成果,以3方向離散方法和GPU并行計算為基礎(chǔ),提出了針對球頭銑刀多軸銑削復(fù)雜曲面的切觸區(qū)域?qū)崟r計算方法.給出了刀具與工件切觸區(qū)域?qū)崟r計算的基本流程,設(shè)計了模擬數(shù)控程序譯碼和插補(bǔ)過程的算法流程,推導(dǎo)了插值計算刀具位置和位姿的表達(dá)式,設(shè)計了GPU加速下面向切觸區(qū)域計算的工件和刀具掃描體布爾運(yùn)算算法,給出了并行重建切觸區(qū)域的方法.

為了驗(yàn)證文中方法和相關(guān)論述,開發(fā)實(shí)現(xiàn)了切觸區(qū)域計算的相關(guān)算法/方法.以典型的葉輪開粗銑削為例,進(jìn)行切觸區(qū)域仿真計算,并與三維建模軟件中的實(shí)體布爾運(yùn)算結(jié)果進(jìn)行對比分析.相關(guān)結(jié)果表明:文中方法不僅具有較好的可行性和良好的實(shí)時性,而且計算的切觸區(qū)域具有較高準(zhǔn)確度和精度.因此,文中的切觸區(qū)域計算方法具有較強(qiáng)的實(shí)用性和應(yīng)用價值,對球頭銑刀多軸銑削的進(jìn)一步研究和應(yīng)用具有重要意義.

猜你喜歡
球頭銑刀位姿
銑刀頭可正反轉(zhuǎn)的銑刀設(shè)計
木工榫槽機(jī)柄銑刀運(yùn)動力學(xué)特性分析
輸電線路球頭掛環(huán)銹蝕模擬研究
某500 k V輸電線路球頭掛環(huán)斷裂原因分析
無人機(jī)動平臺著陸慣性/視覺位姿歧義校正算法
船舶清理機(jī)器人定位基準(zhǔn)位姿測量技術(shù)研究
銑刀盤的5軸數(shù)控加工
優(yōu)化ORB 特征的視覺SLAM
錐面球頭銷設(shè)計
基于單目視覺的工件位姿六自由度測量方法研究