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

?

多軸復(fù)雜體零件“降維打擊”的編程方式及其BP神經(jīng)網(wǎng)絡(luò)優(yōu)化

2022-09-16 07:25王鈞李瑋王周梅劉斌郭志偉魏新宇
機床與液壓 2022年14期
關(guān)鍵詞:降維后處理輪廓

王鈞,李瑋,王周梅,劉斌,郭志偉,魏新宇

(西南林業(yè)大學(xué)機械與交通學(xué)院,云南昆明 650224)

0 前言

在數(shù)控編程中,四五軸編程是解決復(fù)雜零件加工的有效手段,甚至是葉輪等零件加工的必備手段。但是多特征體零件在四軸和五軸編程中因為其復(fù)雜的特征關(guān)系和復(fù)雜的矢量控制,一直是編程工程師的難題。許多CAM軟件沒有針對多軸加工提供足夠完善的解決方案,大多都需要使用者憑經(jīng)驗進行變通處理,特別是復(fù)雜體零件。其主要原因就是四五軸的刀軸矢量不像三軸是固定不旋轉(zhuǎn)的,特別是五軸有兩個旋轉(zhuǎn)軸??刂坪眠@兩個軸的合理擺動,并且做到加工中不干涉、不碰撞就顯得尤為重要。特別是在具有上千個特征和奇特曲面的復(fù)雜體中,既要完成復(fù)雜的刀路設(shè)計,還要保證其安全、可靠、不過切,一旦出現(xiàn)失誤,其加工就會出現(xiàn)嚴(yán)重的過切或者失誤,嚴(yán)重的會造成刀具斷裂、工件破壞和機床損壞。所以如何解決這一問題一直是編程工程師要面對的痛點和難題?;谝陨蠁栴},針對復(fù)雜零件加工,本文作者提出了一種新型的編程思路,將多軸刀路在空間維度上降低為2D生成刀路后又轉(zhuǎn)回3D,實現(xiàn)良好的四五軸編程方式,具體實施過程如圖1所示。并且使用MATLAB構(gòu)建神經(jīng)網(wǎng)絡(luò)來解釋難以用公式表達和描述的空間曲線變化規(guī)律,以滿足深入學(xué)習(xí)和開發(fā)的實際需求。

1 降維編程方法及思路

四五軸編程為了更好地控制刀軸的變化,大多通過點、線、輔助曲線、曲面和外形輪廓的方式進行刀路驅(qū)動,以完成加工的刀軌設(shè)計,也可以理解為四五軸的刀路情況取決于做出來的輔助面(線)的質(zhì)量。但是對于一些體量較大、構(gòu)造面復(fù)雜需要制作很多輔助面(線)驅(qū)動的零件則顯得較為麻煩,并且多次的選用操作非常容易出錯。為了達到將復(fù)雜的刀路簡單化處理的目的,采用了如圖1所示的編程思路和方法,具體流程為:(1)使用投影法可以先將復(fù)雜零件的特征從模型上抽取下來,在二維平面展開,并根據(jù)展開曲線編制刀路路徑;(2)展開后將編制出的刀路路徑程序通過后處理轉(zhuǎn)換成樣條曲線,根據(jù)其空間坐標(biāo)關(guān)系再纏繞到復(fù)雜零件上;(3)根據(jù)纏繞回去的曲線,編制該多軸程序;(4)將程序傳輸至系統(tǒng),即可上機進行試切加工。

圖1 編程思路流程

2 展開刀路與纏繞刀路之間的轉(zhuǎn)換

為了進一步說明降維法編程之間各曲線和刀路路徑設(shè)置更深層次的關(guān)系和轉(zhuǎn)化機制,將對其曲線進行多方面研究。但是其整個曲線的點位多達30萬點,每個點又有3個坐標(biāo)值,數(shù)據(jù)量太大,很難進行數(shù)據(jù)分析與處理。為了更好地進行數(shù)據(jù)分析,故將其曲線提取出具有代表性的外層輪廓進行分析和研究。

2.1 各曲線之間的關(guān)系

圖2所示為各編程曲線之間的關(guān)系,纏繞曲線為一個空間中的立體3D曲線,它的3D空間刀軸矢量如圖2所示,其矢量并不固定,而且根據(jù)其法向的變化而變化,很難控制。在空間中垂直于該纏繞曲線的矢量做任意旋轉(zhuǎn)都能是該直線的刀軸矢量,所以就造成了在編程過程中多軸刀路的刀軸矢量不容易控制的狀況。任意方向的矢量都會造成刀軸錯亂,甚至導(dǎo)致進、退刀撞刀的事故。為了避免上述情況的發(fā)生,使用基準(zhǔn)坐標(biāo)系中的、、先將其展開為由多個點構(gòu)成的樣條曲線,如圖2中綠色路徑所示,其刀軸矢量在圖2所示的2D空間中都是垂直于展開平面的,編程就相對方便,編程時就不會再出現(xiàn)刀軸不確定、難固定等情況。完成編程后,因為該曲線與模型保持著相互聯(lián)系的特點,所以就可以根據(jù)其模型的自有特征和空間坐標(biāo)關(guān)系再纏繞回去。該操作可以保證每一個曲線的刀軸矢量都垂直于加工面的切線方向,不會出現(xiàn)錯亂,從而精確控制刀軸和投影矢量。但是由于2D平面的刀路曲線是不可以直接纏繞的,所以必須借助一個刀路路徑轉(zhuǎn)樣條曲線(.dat)的后處理工具,通過該后處理工具將刀路路徑轉(zhuǎn)換成樣條曲線,再將該樣條曲線根據(jù)其空間坐標(biāo)關(guān)系纏繞回復(fù)雜零件上。最后通過纏繞的曲線編制成四五軸程序,利用該加工程序?qū)崿F(xiàn)復(fù)雜四五軸零件的加工。

圖2 編程曲線關(guān)系

2.2 刀路路徑轉(zhuǎn)樣條曲線后處理的制作

除了上述的轉(zhuǎn)換關(guān)系,要完成降維編程,其關(guān)鍵的輔助工具就是上文中說到的刀路路徑轉(zhuǎn)樣條曲線的后處理工具。該后處理的作用是將刀路文件轉(zhuǎn)換為樣條曲線,方便降維纏繞。進入后處理編輯器中,如圖3所示,在UGPOST中首先創(chuàng)建一個通用后處理,設(shè)置完成后只保留M0M_set_seq_off(關(guān)閉所有行號),將所有代碼里面的G代碼和M代碼刪除,并強制輸出、、三個坐標(biāo)值,讓每個類型的坐標(biāo)中間用空格隔開,不允許出現(xiàn)“;、,?!钡忍厥夥?,程序結(jié)束時加入M0M_set_seq_off,要求linea output,保存輸出格式為.dat(樣條曲線的格式)。完成上述設(shè)置后就可以得到以下3個文件:(1)pui(用戶界面文件);(2)tcl(控制機床運動事件處理文件);(3)def(格式的定義文件)。這3個后處理程序是完成以上四五軸復(fù)雜零件編程中降維編程的關(guān)鍵工具。

圖3 后處理制作

3 降維與升維之間的關(guān)系及理論推導(dǎo)

在上述的表達中已經(jīng)闡述了如何運用升維和降維的思路解決四五軸編程中復(fù)雜零件的編程問題。但是具體應(yīng)用中該處理方法還是比較繁瑣的,如何將復(fù)雜零件加工中降維編程中所包含的數(shù)學(xué)關(guān)系及運用機制通過制作二次開發(fā)軟件甚至是專用的定制命令的方式呈現(xiàn)出來,更好地幫助廣大編程工程師解決實際問題,就是本文作者要解決并達到的重要目的。

但是由于3D空間曲線在投影過程中有較為復(fù)雜空間的轉(zhuǎn)換,一個坐標(biāo)點單一的變量要由多個變量通過某種規(guī)律轉(zhuǎn)換,但該規(guī)律很難用數(shù)學(xué)公式表達。BP神經(jīng)網(wǎng)絡(luò)模型是一種具有代表性的神經(jīng)元結(jié)構(gòu)化模型,是典型的多層神經(jīng)網(wǎng)絡(luò)。為了更好地解決該問題,采用MATLAB的神經(jīng)網(wǎng)絡(luò)構(gòu)建其輸入、輸出及其隱含內(nèi)容。通過算法的不斷學(xué)習(xí),選取特征參數(shù),離散化學(xué)習(xí)來擬合出其中的關(guān)系。

抽取出如圖2中展開曲線的坐標(biāo),具體數(shù)值如表1所示。為了使最后得到的擬合數(shù)據(jù)更接近實際值,在展開曲線和纏繞曲線中各取1 000個坐標(biāo)點,作為實驗數(shù)據(jù),進行BP神經(jīng)網(wǎng)絡(luò)的模擬學(xué)習(xí)。圖4所示為BP神經(jīng)網(wǎng)絡(luò)的算法關(guān)系,通過使用已知的兩組坐標(biāo)點進行神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)構(gòu)建,對展開曲線以及纏繞曲線的坐標(biāo)點進行分析,構(gòu)建輸入輸出層和隱含層。通過查詢相關(guān)研究成果,表明僅含有一個隱含層的BP神經(jīng)網(wǎng)絡(luò)可以任意精度逼近任意的非線性系統(tǒng)。因此,在該模型設(shè)計中選擇15層神經(jīng)網(wǎng)絡(luò)對相關(guān)數(shù)據(jù)進行預(yù)估,添加15個隱含層,通過前向信號傳播和誤差反向傳播的數(shù)據(jù)來動態(tài)調(diào)整每層的權(quán)重,權(quán)重調(diào)整的過程就是BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)和訓(xùn)練過程。通過BP神經(jīng)網(wǎng)絡(luò)的不斷模擬訓(xùn)練,就可以達到輸入任意的一組、、(展開坐標(biāo))值就可以輸出另外一組與之對應(yīng)的、、(纏繞坐標(biāo))數(shù)值,從而達到簡單的升維和降維操作,而不再需要復(fù)雜的關(guān)系轉(zhuǎn)換。

表1 展開纏繞曲線點位坐標(biāo)

圖4 算法關(guān)系圖

構(gòu)建完其輸入、輸出關(guān)系后,需要知道其中的原理及其過程。如式(1)所示,輸入值等于權(quán)重值(輸入到隱含層的權(quán)重)和輸入的具體數(shù)值的乘積,但是由于輸入值不是只有一個,單個表達式中為15。

(1)

如式(2)所示,隱含層的輸出等于公式(1)中的隱含層輸入值的激活函數(shù),故可表達為()。其中表示激活函數(shù),其作用是將包含的數(shù)值作非線性映射處理,net表示該數(shù)據(jù)為隱含層。

=()

(2)

如式(3)所示,已知以上兩個值后,就可以求出預(yù)測值等于權(quán)重(隱含層到輸出層)與隱含層輸出值的激活函數(shù)的乘積。

(3)

如式(4)所示,根據(jù)以上邏輯就可以推導(dǎo)其預(yù)測輸出值。但其預(yù)測輸出值還存在著一定的誤差。使用實際值和預(yù)測值進行一個對比,就可以得到其誤差函數(shù)。

(4)

如式(5)所示,其表示的是誤差函數(shù)對的敏感程度,其意義是求出對的影響程度的大小。故需要求出和的偏導(dǎo),但是數(shù)學(xué)中不能直接求出,故先對求導(dǎo),接著求對的偏導(dǎo),再求對的偏導(dǎo),最后求對的偏導(dǎo),公式中?為求偏導(dǎo)符號。

(5)

完成上述推導(dǎo)后,使用MATLAB對其點位進行處理,即可得到如圖5所示的對應(yīng)訓(xùn)練的訓(xùn)練值、驗證值、測試值、最佳值分布曲線。通過這種正向計算輸出、反向傳播誤差的多次迭代后,系統(tǒng)的性能指標(biāo)將隨著迭代次數(shù)的增加而減小,經(jīng)過不斷調(diào)整權(quán)值,性能指標(biāo)不斷降低,網(wǎng)絡(luò)最后達到穩(wěn)定狀態(tài)。從圖5可以看出:在訓(xùn)練到第5組時基本已經(jīng)進入理想狀態(tài),各條曲線變化率基本穩(wěn)定;當(dāng)在24組時達到最佳值網(wǎng)絡(luò)收斂,基本呈穩(wěn)定狀態(tài),訓(xùn)練結(jié)果良好。

圖5 訓(xùn)練情況分布曲線

將1 000組數(shù)據(jù)分成不同組別,分別作為訓(xùn)練、驗證、測試數(shù)據(jù),用這3組數(shù)據(jù)的結(jié)果分別同目標(biāo)的理想值進行對比。從圖6可以看出:3組對比數(shù)據(jù)的相似度均達到了0.97以上。根據(jù)經(jīng)驗值來說,一般達到0.8以上就已經(jīng)相似了,所以此次實驗結(jié)果非常理想。

圖6 預(yù)測值和真實值之間的關(guān)系

綜上所述,通過BP神經(jīng)網(wǎng)絡(luò)對1 000組數(shù)據(jù)的展開值和1 000組數(shù)據(jù)的纏繞值的坐標(biāo)點進行訓(xùn)練,獲得了滿足輸入、輸出之間隱含的邏輯關(guān)系。能夠輸入任意一個、、的坐標(biāo)值,就可以輸出與之相對應(yīng)的降維后的輪廓曲線的、、坐標(biāo)值,并且還能獲得其優(yōu)化解,為降維編程方法提供一個快捷有效的使用方案和方法。

4 造成編程難和過切的原因分析及解決方案

由于在多軸編程中經(jīng)常會出現(xiàn)細微的過切、抬刀、插刀、矢量不均勻等情況,是驅(qū)動曲線或者曲面提供的刀軸矢量不夠優(yōu)化導(dǎo)致的。為了說明該方案的刀路優(yōu)化性,文中也對刀路路徑的設(shè)置與優(yōu)化進行了分析。

由圖7可以看出:將多軸的原始編程輪廓取出來進行空間的曲線分析,發(fā)現(xiàn)該曲線有以下特點:

圖7 多軸輪廓3D空間分析圖

(1)過渡段曲線曲梳不平滑,突變較多。(這是造成跳刀、亂矢量主要原因)

(2)極點處相鄰曲率變化超過90°(這是選線時出現(xiàn)不連接或者產(chǎn)生跳刀的主要原因)。

(3)總體曲梳不順滑,過渡圓角處呈現(xiàn)非線性變化或者扇形遞增減少,很難實現(xiàn)其線性關(guān)系。

將四五軸的輪廓抽取進行“降維”展開以后,得到如圖8所示的降維處理后多軸輪廓3D空間分析圖,通過分析該曲線可以明顯得出整體曲線中部分曲梳短而平滑,過渡圓潤。在過渡角A、B、C、D、E、F處明顯有漸進的扇形過渡區(qū)域,標(biāo)志著該區(qū)域能夠良好地、漸進地進行過渡,從而提高機床的加工精度。這種現(xiàn)象在刀路路徑中表現(xiàn)為旋轉(zhuǎn)軸移動線性且順滑,無突變或跳刀。扇形區(qū)域呈逐漸增加后又減少的趨勢,G處雖然平滑,但是無劇烈突變,也呈線性增加,且不起主要作用。在刀路設(shè)計中符合編程工程師想要的等間距、精細節(jié)、緩過渡等原則,是解決復(fù)雜形狀四五軸編程的有效手段。

圖8 降維處理后多軸輪廓3D空間分析圖

通過分析以上造成編程時過切、抬刀、插刀、矢量不均勻等情況的主要原因后,可知在轉(zhuǎn)折點或接頭點處容易造成曲梳過大,導(dǎo)致曲線斷開,也是導(dǎo)致跳刀、振動和錯亂的主要原因。使用投影軸變化后生成的刀路驅(qū)動曲線平滑穩(wěn)定,是理想的四五軸編程驅(qū)動,對復(fù)雜類的四五軸曲面編程是一種很好的解決方式。

5 方法數(shù)據(jù)對比及其驗證

為了說明該方法的最終結(jié)果是可行的,是能夠保證精度的,本文作者將同一模型的普通多軸編程的NC代碼輪廓曲線、降維法編程的NC代碼輪廓曲線、MATLAB自動生成的NC代碼輪廓曲線分別取出,使用Origin軟件對其進行曲線擬合,再將擬合后的3條曲線進行同一坐標(biāo)系對比,說明該方法得到的曲線輪廓和使用普通方法得到的輪廓雖然在數(shù)值上截然不同,但是最終擬合的空間曲線完全相同,加工軌跡相同,加工尺寸和精度也相同。

通過上述說明,對于復(fù)雜體零件的編程一共有以下3種方式:(1)普通選線法得到的刀路路徑;(2)通過降維方法得到的刀路路徑;(3)通過MATLAB訓(xùn)練后得到的刀路路徑,且MATLAB得到的曲線又是在降維法的基礎(chǔ)上得到的。為了證明針對復(fù)雜零件編程中第二、第三種方法的可行性和正確性,開展了3種方式曲線擬合的對比實驗,獲得了如表 2 所示的展開纏繞曲線點位坐標(biāo)。對3種方法編程得到的刀路路徑曲線(由于數(shù)據(jù)過多,只選取一條輪廓刀路)進行數(shù)據(jù)分析,通過分析3組數(shù)據(jù)的相對誤差,來論證針對復(fù)雜零件編程中第二、第三種方法的可行性和正確性。

表2 展開纏繞曲線點位坐標(biāo)

數(shù)據(jù)分析所采用的軟件是Origin 2018 軟件。圖9就是利用Origin進行數(shù)據(jù)整理導(dǎo)入的結(jié)果,將采集好的3組數(shù)據(jù)分別導(dǎo)入到軟件中,對3組數(shù)據(jù)進行編排。3組數(shù)據(jù)的每一行分別由、、三個數(shù)據(jù)組成。一個、、坐標(biāo)在空間中分別代表一個點,所有的點擬合完成以后,組成了該條刀路路徑的空間曲線。

圖9 數(shù)據(jù)整理導(dǎo)入

將整理好的3組曲線分別擬合成空間曲線,完成后將3組曲線進行對比分析,并且添加投影線。如圖10所示,圖(a)、圖(b)、圖(c)分別為各組曲線擬合后的刀具路徑曲線,圖(d)為3組曲線擬合對比圖??梢钥闯觯浩浣Y(jié)果都保持一致,并且從投影曲線可以看出無錯位點,無不相交點。可以很好地說明3種方法最后達到的刀路路徑效果都是相同的。表明這3種編程方法均可達到相同的加工要求和加工效果,并且能夠保證復(fù)雜零件的加工精度。

圖10 3種刀路擬合及其投影對比曲線

6 結(jié)論

講述了使用降維方法如何將復(fù)雜體的編程通過將多軸刀路在空間維度上降低為2D生成刀路后又轉(zhuǎn)回3D,來解決復(fù)雜體編程的難題,其中主要敘述了其思路及其工具后處理的制作。為了更好地、更快捷地使用該方法,運用MATLAB對其進行分析,構(gòu)建BP神經(jīng)網(wǎng)絡(luò),通過訓(xùn)練達到能夠自動輸出需要的刀路路徑,從而免去中間較為繁瑣的步驟。并對輸出的刀路編程所用的曲線進行了曲率曲梳分析,說明該方法對于處理復(fù)雜體編程、優(yōu)化刀路、減少跳刀、增強平滑性、減少刀具切削力的變化等方面有非常好的效果。最后為了證明提出的方法是切實可行的,將普通編程的刀路曲線、降維法編程的刀路曲線、MATLAB自動生成的刀路曲線通過Origin分析軟件進行處理,分別進行擬合后又將3組曲線進行對比,得出3種方法雖然過程不同,得到的數(shù)據(jù)從數(shù)值上也各不相同,但是最后的擬合結(jié)果是一模一樣的,也證明了該方法是可行的、正確的。

猜你喜歡
降維后處理輪廓
混動成為降維打擊的實力 東風(fēng)風(fēng)神皓極
車身接附點動剛度后處理方法對比
果樹防凍措施及凍后處理
Helicobacter pylori-induced inflammation masks the underlying presence of low-grade dysplasia on gastric lesions
降維打擊
一種改進的稀疏保持投影算法在高光譜數(shù)據(jù)降維中的應(yīng)用
基于柴油機排氣后處理的排放控制技術(shù)應(yīng)用研究
發(fā)動機排氣后處理技術(shù)
兒童筒筆畫
創(chuàng)造早秋新輪廓
安阳市| 车致| 丽江市| 杭州市| 高陵县| 隆德县| 桂阳县| 溧水县| 昌黎县| 吉安县| 双鸭山市| 敦煌市| 呼玛县| 都兰县| 祁东县| 克拉玛依市| 仪陇县| 丹凤县| 平乡县| 六安市| 昌乐县| 甘南县| 洛阳市| 阳东县| 柘荣县| 邵东县| 阿拉善右旗| 永登县| 南溪县| 玉龙| 澄江县| 通化县| 工布江达县| 罗平县| 北宁市| 福泉市| 津南区| 鄂托克旗| 当阳市| 永福县| 无棣县|