王 偉 謝 堂 梁 浩 沈瑞雪 周學(xué)成 陶建華
(廣州大學(xué)機(jī)械與電氣工程學(xué)院,廣東 廣州 510006)
木材加工數(shù)控技術(shù)由金屬加工數(shù)控技術(shù)逐漸發(fā)展轉(zhuǎn)變而來(lái),是根據(jù)木材機(jī)械加工工藝要求,使用電子計(jì)算機(jī)對(duì)整個(gè)加工過(guò)程進(jìn)行信息處理與控制,解決復(fù)雜、精密、多品種和中小批量木質(zhì)產(chǎn)品加工問(wèn)題,實(shí)現(xiàn)生產(chǎn)過(guò)程的自動(dòng)化,是木工機(jī)械設(shè)備中最復(fù)雜、科技含量最高的技術(shù)。數(shù)控技術(shù)在木工機(jī)械中的廣泛應(yīng)用是推動(dòng)木材加工技術(shù)進(jìn)步的重要途徑,是實(shí)現(xiàn)生產(chǎn)自動(dòng)化、柔性化、集成化與網(wǎng)絡(luò)化的基礎(chǔ)[1]。木工數(shù)控機(jī)床是數(shù)控技術(shù)應(yīng)用于木工機(jī)械的典型,研究數(shù)控機(jī)床對(duì)提高產(chǎn)品質(zhì)量、增強(qiáng)我國(guó)木工機(jī)械在國(guó)際市場(chǎng)上的競(jìng)爭(zhēng)力具有重要意義[2-4]。
特征技術(shù)是CAD/CAPP/CAM集成的核心技術(shù),是集成過(guò)程中信息傳遞的載體,通過(guò)該載體封裝各個(gè)模塊需要的參數(shù)信息,實(shí)現(xiàn)三者的最終集成,該技術(shù)已成為新一代智能化、集成化產(chǎn)品建模系統(tǒng)的核心技術(shù)[5-11]。本文研究了一種基于特征技術(shù)的木工數(shù)控自動(dòng)編程系統(tǒng),在木工構(gòu)件特征分析的基礎(chǔ)上,歸納出木工榫頭特征的基本單元,并對(duì)基本單元進(jìn)行劃分和模塊封裝,從而實(shí)現(xiàn)木工數(shù)控中榫頭快速編程與加工的目的。
木工數(shù)控編程系統(tǒng)分為五大功能模塊,各功能模塊之間相互獨(dú)立。系統(tǒng)的功能模塊包括:文件管理、系統(tǒng)設(shè)置、特征建模、加工仿真和后置處理。木工數(shù)控編程系統(tǒng)的架構(gòu)設(shè)計(jì)如圖1 所示。文件管理模塊主要用于對(duì)工程項(xiàng)目與數(shù)據(jù)文件的處理。系統(tǒng)設(shè)置模塊主要用于對(duì)加工工藝參數(shù)的設(shè)置。特征模塊主要用于CAD模型的構(gòu)建。加工仿真模塊具有刀路軌跡仿真與機(jī)床仿真功能。后置處理模塊用于對(duì)刀位點(diǎn)數(shù)據(jù)的后置處理與格式轉(zhuǎn)換。該系統(tǒng)各功能模塊都編譯成獨(dú)立的DLL文件,各功能模塊在組織結(jié)構(gòu)上是相互獨(dú)立的,主程序在執(zhí)行某功能時(shí)只需直接調(diào)用相應(yīng)的DLL文件。
圖1 系統(tǒng)架構(gòu)設(shè)計(jì)圖Fig.1 System architecture design drawing
在構(gòu)建特征模型前,木工數(shù)控編程系統(tǒng)需設(shè)置刀具和加工工藝參數(shù),若未設(shè)置,則按照默認(rèn)數(shù)據(jù)處理。特征模塊根據(jù)木工機(jī)床實(shí)際加工需求進(jìn)行開(kāi)發(fā)設(shè)計(jì),在操作特征模塊前需提前設(shè)置加工方法,若未設(shè)置加工方法,則將按照默認(rèn)的刀路軌跡規(guī)劃處理并生成刀位點(diǎn)數(shù)據(jù)。用戶(hù)通過(guò)屬性頁(yè)的選擇框來(lái)交互式選擇加工面與定位邊對(duì)象。每新建一個(gè)工程項(xiàng)目,系統(tǒng)就會(huì)自動(dòng)生成一個(gè)特征樹(shù)對(duì)話(huà)框,通過(guò)特征樹(shù)節(jié)點(diǎn)可修改和刪除特征模型的外形尺寸和數(shù)據(jù),也可進(jìn)行參數(shù)化設(shè)計(jì)與調(diào)整特征樹(shù)的節(jié)點(diǎn)順序。數(shù)控編程系統(tǒng)自上而下讀取特征樹(shù)上特征節(jié)點(diǎn)的名稱(chēng),并按照節(jié)點(diǎn)名稱(chēng)順序?qū)⑻卣鞯臄?shù)據(jù)保存在特征模型數(shù)據(jù)文件中。加工仿真模塊包括刀路軌跡仿真和機(jī)床仿真。后置處理模塊是根據(jù)刀位點(diǎn)數(shù)據(jù)、刀具和加工工藝參數(shù)等進(jìn)行數(shù)據(jù)處理,轉(zhuǎn)換輸出可用于實(shí)際加工的G代碼[12-14]。系統(tǒng)操作流程如圖2 所示。
圖2 系統(tǒng)操作流程圖Fig.2 System operation flow chart
特征信息主要包括三部分:工藝信息、形狀信息和加工信息。形狀信息包括幾何參數(shù)和約束關(guān)系,是描述榫頭特征最重要的一種信息[15-19]。木工榫頭工藝性分析是數(shù)控編程規(guī)劃的第一步,在此基礎(chǔ)上,方可確定榫頭在數(shù)控加工過(guò)程中所需的機(jī)床類(lèi)型、工藝裝備、刀具類(lèi)型、切削用量及數(shù)控加工工藝路線(xiàn),從而獲得最佳的加工工藝方案,滿(mǎn)足榫頭工程圖紙和有關(guān)技術(shù)文件的要求[20-25]。
通過(guò)對(duì)木工構(gòu)件中榫頭特征分析,得出榫頭特征可分為倒角、圓榫、腰圓榫、方榫、L-形槽、圓槽、腰圓槽、方槽、等腰三角形槽、倒圓角和L-型榫頭等(圖3),這些特征相互組合,可以形成復(fù)雜多樣的加工模型。將每類(lèi)特征開(kāi)發(fā)設(shè)計(jì)為獨(dú)立的加工功能模塊,并且擁有獨(dú)立的屬性頁(yè)和封裝函數(shù)。為了在毛坯上實(shí)現(xiàn)榫頭的加工,需要用到交互界面(圖4),榫頭特征成功生成后,都會(huì)在右上角的特征樹(shù)顯示相對(duì)應(yīng)的特征名,雙擊特征樹(shù)中的特征名,相對(duì)應(yīng)的榫頭特征會(huì)高亮顯示,也可以右鍵修改和刪除特征樹(shù)中的節(jié)點(diǎn),在修改功能模塊做參數(shù)化設(shè)計(jì)(圖5)。右上角的特征樹(shù)代表木工構(gòu)件的加工工序,即機(jī)床加工這些特征的先后順序,由上至下依次加工。每類(lèi)特征都有相應(yīng)的刀路軌跡規(guī)劃,用戶(hù)也可以通過(guò)設(shè)置不同的加工方法實(shí)現(xiàn)指定榫頭特征的開(kāi)發(fā)(圖6)。
圖3 特征功能模塊示意圖Fig.3 Feature function module diagram
圖4 特征交互界面示意圖Fig.4 Schematic diagram of feature interaction interface
圖5 特征的高亮顯示和參數(shù)化修改示意圖Fig.5 Highlights and parametric changes to features
圖6 特征的刀路軌跡示意圖Fig.6 Schematic diagram of tool path of feature
木工數(shù)控編程系統(tǒng)的加工仿真模塊用于仿真模擬木工榫頭的加工過(guò)程,以檢驗(yàn)加工過(guò)程中的干涉與碰撞。它由刀路軌跡仿真和機(jī)床加工仿真兩個(gè)功能模塊組成。該系統(tǒng)的機(jī)床仿真模塊需在SolidWorks裝配環(huán)境中進(jìn)行,在裝配環(huán)境中每增添一個(gè)零部件,系統(tǒng)均會(huì)自動(dòng)設(shè)定整體裝配體的坐標(biāo)系和零部件的局部坐標(biāo)系。木工數(shù)控編程系統(tǒng)加工仿真的本質(zhì)實(shí)際是進(jìn)行各部件坐標(biāo)系之間的幾何變換。在加工仿真前,需提前設(shè)定刀具與機(jī)床裝配模型的坐標(biāo)原點(diǎn)。加工仿真流程在于運(yùn)用刀位軌跡點(diǎn)數(shù)據(jù),設(shè)置每個(gè)木工機(jī)床構(gòu)件的位姿并進(jìn)行幾何變換,通過(guò)刀位點(diǎn)數(shù)據(jù)刷新屏幕和重構(gòu)模型位姿以達(dá)到運(yùn)動(dòng)仿真的功能。
2.2.1 刀路仿真
刀路仿真在于驗(yàn)證獲取刀路軌跡點(diǎn)數(shù)據(jù)的正確性以及模擬刀具加工的走刀過(guò)程。刀路軌跡數(shù)據(jù)即刀位點(diǎn)的位置軌跡,刀路軌跡仿真即按照刀位點(diǎn)的位姿顯示軌跡(圖7)。刀路仿真用于模擬刀具的實(shí)際切削過(guò)程,通過(guò)刀路仿真可以判別刀位點(diǎn)計(jì)算、進(jìn)退刀方法及進(jìn)給路線(xiàn)是否合理,觀(guān)察是否會(huì)發(fā)生刀具過(guò)切以及刀具與約束面發(fā)生干涉或碰撞等情況。
圖7 刀路軌跡仿真示意圖Fig.7 Schematic diagram of tool path simulation
2.2.2 機(jī)床仿真
機(jī)床仿真是應(yīng)用實(shí)體造型技術(shù)建立木工機(jī)床、木工榫頭、刀具以及夾具的實(shí)體幾何模型,并運(yùn)用真實(shí)感圖形顯示技術(shù)顯示加工過(guò)程中的機(jī)床模型、木工榫頭、刀具模型以及夾具模型動(dòng)態(tài),模擬木工榫頭的實(shí)際加工過(guò)程。機(jī)床仿真過(guò)程綜合考慮了機(jī)床控制器的特點(diǎn)和刀具配置,可以驗(yàn)證刀路軌跡數(shù)據(jù)的正確性,檢驗(yàn)機(jī)床部件、刀具、夾具和木工榫頭之間相互運(yùn)動(dòng)關(guān)系以及相互間的碰撞可能,并對(duì)加工后的木工榫頭與期望的木工榫頭進(jìn)行比較,以提高加工過(guò)程的質(zhì)量,減少操作者不規(guī)范操作導(dǎo)致的誤差,降低機(jī)床、夾具和工件損壞的風(fēng)險(xiǎn)。
木工數(shù)控機(jī)床仿真模塊需將以刀路軌跡算法計(jì)算的刀位點(diǎn)數(shù)據(jù)轉(zhuǎn)換成刀軸運(yùn)動(dòng)量,循環(huán)輸入刀位點(diǎn)轉(zhuǎn)換的刀軸運(yùn)動(dòng)量,并設(shè)置機(jī)床各部件的位姿矩陣,不斷刷新屏幕和模型重構(gòu),從而達(dá)到機(jī)床運(yùn)動(dòng)仿真的目的。在木工機(jī)床加工仿真前,需將被加工工件添加至機(jī)床仿真的裝配文件中;為達(dá)到更好的仿真效果,需根據(jù)刀具參數(shù)和機(jī)床參數(shù)對(duì)裝配模型進(jìn)行重構(gòu);同時(shí)將加工模型原點(diǎn)設(shè)置與木工機(jī)床裝配環(huán)境的原點(diǎn)重合以減少刀位點(diǎn)計(jì)算量。
后置處理模塊是將前置處理模塊中獲取的刀位點(diǎn)數(shù)據(jù)、刀具和加工工藝等相關(guān)數(shù)據(jù)轉(zhuǎn)換成能被數(shù)控機(jī)床直接識(shí)別的數(shù)控程序。后置處理計(jì)算流程如圖8 所示,首先應(yīng)輸入機(jī)床的結(jié)構(gòu)參數(shù)與加工工藝參數(shù),并獲取相關(guān)的輔助工藝參數(shù),之后逐步讀取由刀路軌跡算法計(jì)算的刀位點(diǎn)數(shù)據(jù),并進(jìn)行運(yùn)動(dòng)學(xué)求解,計(jì)算刀位點(diǎn)數(shù)據(jù)相對(duì)應(yīng)的機(jī)床各軸運(yùn)動(dòng)量,直到刀位點(diǎn)文件讀取結(jié)束;最后,將每個(gè)刀路軌跡點(diǎn)數(shù)據(jù)對(duì)應(yīng)的各軸運(yùn)動(dòng)量逐個(gè)存入數(shù)據(jù)中。后置處理計(jì)算模塊所需的機(jī)床和工藝參數(shù)包括刀具偏置、工件偏置、主軸轉(zhuǎn)速、吃刀量等。木工數(shù)控系統(tǒng)生成的刀位數(shù)據(jù)包括刀位點(diǎn)數(shù)據(jù)與加工面法矢量,刀位點(diǎn)數(shù)據(jù)是刀具相對(duì)于工件坐標(biāo)系的刀心位置;加工面法矢量是刀具相對(duì)于工件坐標(biāo)系的刀軸矢量數(shù)據(jù)。運(yùn)動(dòng)學(xué)求解的作用就是根據(jù)具體的機(jī)床運(yùn)動(dòng)結(jié)構(gòu)將刀位文件中的刀位數(shù)據(jù)轉(zhuǎn)換成機(jī)床各運(yùn)動(dòng)軸的運(yùn)動(dòng)數(shù)據(jù)。
圖8 后置處理計(jì)算流程圖Fig.8 Post processing calculation flow chart
將獲得的各軸運(yùn)動(dòng)量數(shù)據(jù)和加工工藝數(shù)據(jù)轉(zhuǎn)換成適用于特定數(shù)控系統(tǒng)類(lèi)型的數(shù)控程序。加工工藝參數(shù)包括平面參數(shù)、位置參數(shù)、尺寸參數(shù)和加工參數(shù)等。刀具參數(shù)包括刀具類(lèi)型(T1~T4)、刀具直徑、刀具長(zhǎng)度、主軸轉(zhuǎn)速和切削速度等。將以上數(shù)據(jù)信息儲(chǔ)存為刀位文件數(shù)據(jù),再通過(guò)后置處理模塊,將刀位文件數(shù)據(jù)轉(zhuǎn)換為加工數(shù)據(jù),此加工數(shù)據(jù)可以被HUST數(shù)控控制器識(shí)別。
以某公司研制的木工數(shù)控機(jī)床為應(yīng)用平臺(tái),將木工數(shù)控自動(dòng)編程系統(tǒng)應(yīng)用于木工榫頭的加工。如圖9所示,木工榫頭的加工軌跡被分為形切刀路軌跡和環(huán)切刀路軌跡,通過(guò)木工數(shù)控自動(dòng)編程系統(tǒng)中的特征加工與軌跡生成模塊,在其平面形成凹槽和加工軌跡,在非曲線(xiàn)邊界的平面內(nèi)形成平行加工軌跡,曲線(xiàn)邊界的平面形成環(huán)形加工軌跡;通過(guò)刀路軌跡規(guī)劃算法計(jì)算刀位點(diǎn)數(shù)據(jù)并將刀位點(diǎn)數(shù)據(jù)保存在刀具鏈表數(shù)據(jù)結(jié)構(gòu)中;刀位點(diǎn)數(shù)據(jù)經(jīng)后置處理與優(yōu)化后,輸出可用于木工數(shù)控機(jī)床加工的G代碼。
圖9 木工榫頭加工軌跡示意圖Fig.9 Sketch map of woodworking tenon processing track
本文介紹了木工數(shù)控自動(dòng)編程系統(tǒng)的總體設(shè)計(jì)過(guò)程,包括系統(tǒng)的需求分析與架構(gòu)設(shè)計(jì)。根據(jù)系統(tǒng)的需求分析,參照典型CAM軟件對(duì)功能模塊進(jìn)行劃分,設(shè)計(jì)了各功能模塊交互界面,并將系統(tǒng)各功能模塊分為文件管理模塊、系統(tǒng)設(shè)置模塊、特征模塊、加工仿真模塊與后置處理模塊。該系統(tǒng)利用SolidWorks二次開(kāi)發(fā)技術(shù)采用插件方式進(jìn)行開(kāi)發(fā)設(shè)計(jì),各功能模塊之間相互獨(dú)立。將該系統(tǒng)應(yīng)用于某公司研制的木工數(shù)控機(jī)床上進(jìn)行測(cè)試,用于對(duì)榫頭的現(xiàn)場(chǎng)加工,測(cè)試表明:木工數(shù)控編程系統(tǒng)提高了加工效率和產(chǎn)品的一致性,產(chǎn)品加工質(zhì)量符合加工精度要求,實(shí)現(xiàn)了木工數(shù)控自動(dòng)編程系統(tǒng)的開(kāi)發(fā)。