孫 曉 蔣 明 陳 聰 高 明 曾曉雁
(華中科技大學(xué)武漢光電國(guó)家實(shí)驗(yàn)室,湖北 武漢430074)
隨著激光加工技術(shù)與裝備制造業(yè)的不斷發(fā)展,激光切割已經(jīng)廣泛應(yīng)用于航空航天、汽車制造、鈑金加工等重點(diǎn)行業(yè)。三維激光切割技術(shù)代表著激光加工技術(shù)的一個(gè)發(fā)展前沿方向,也逐漸受到廣泛關(guān)注,三維激光切割最大的特點(diǎn)就是柔性高,適合三維鈑金材料的切割[1],在實(shí)際生產(chǎn)中,三維激光切割能夠明顯提高產(chǎn)品質(zhì)量和生產(chǎn)效率,縮短產(chǎn)品開發(fā)周期,降低勞動(dòng)強(qiáng)度,節(jié)約原材料。因此,如何能夠在傳統(tǒng)機(jī)械加工機(jī)床中便捷地加入激光加工功能,形成高集成化的機(jī)械與激光復(fù)合加工設(shè)備,這在當(dāng)前加工技術(shù)研究中是非常有意義的。
目前三維激光切割技術(shù)研究在硬件方面,三維激光加工裝備朝高精度、高速度、高柔性、高集成化等方向發(fā)展;在軟件方面,如何縮短編程和示教時(shí)間、建立激光切割工藝數(shù)據(jù)庫等也是必不可少的[2],同時(shí)由于三維五軸激光切割數(shù)控系統(tǒng)可選范圍小,如何基于數(shù)控系統(tǒng)進(jìn)行面向激光切割工藝API(應(yīng)用程序函數(shù)接口)的二次開發(fā)也是控制軟件設(shè)計(jì)中的一個(gè)難點(diǎn)[3-4]。
本文將主要介紹在沈陽中捷機(jī)床廠的五軸龍門機(jī)床GMC3580u 上如何實(shí)現(xiàn)三維激光切割功能,主要包括三維激光切割系統(tǒng)硬件集成、激光切割控制軟件設(shè)計(jì)。
在硬件集成中,我們?cè)O(shè)計(jì)了可拆卸的兩坐標(biāo)激光切割頭機(jī)械結(jié)構(gòu),可以在機(jī)床中實(shí)現(xiàn)激光切割頭和機(jī)械加工裝置的快速更換。光纖激光器產(chǎn)生高功率密度的激光直接通過光纖進(jìn)入激光切割頭,不用對(duì)原有的機(jī)床結(jié)構(gòu)進(jìn)行任何改造,具有較高的靈活性。三維激光切割裝備圍繞五軸機(jī)床原有西門子840Dsl 數(shù)控系統(tǒng)來進(jìn)行集成設(shè)計(jì),充分利用840Dsl 提供的各種硬件接口來實(shí)現(xiàn)激光切割的整體控制功能[5]。
如圖1 所示,工控機(jī)PC 上的激光切割控制軟件通過以太網(wǎng)接口與840Dsl 數(shù)控系統(tǒng)進(jìn)行人機(jī)交互,實(shí)現(xiàn)激光切割NC 零件程序傳遞、加工部件控制以及加工狀態(tài)檢測(cè);同時(shí)當(dāng)激光切割控制軟件離線編程得到的激光切割工件程序?qū)隢CU 中以后,在數(shù)控系統(tǒng)的PCU 中也可選擇執(zhí)行激光切割NC 工件程序,并通過工藝數(shù)據(jù)庫選擇、設(shè)置所需的切割工藝參數(shù),直接實(shí)現(xiàn)整個(gè)激光切割加工過程。840Dsl 數(shù)控系統(tǒng)與各加工控制部件通過相應(yīng)硬件接口相連接:通過DRIVE -CLiQ 接口連接高功率驅(qū)動(dòng)系統(tǒng)SINAMIC S120 控制五軸機(jī)床(XYZAC)運(yùn)動(dòng),通過S7 -300 PLC 進(jìn)行I/O 口擴(kuò)展來實(shí)現(xiàn)激光切割頭整體控制、激光器初始化控制以及激光切割時(shí)冷卻氣和保護(hù)氣開關(guān)控制,同時(shí)利用NCU 中的高速模擬量輸出模塊控制激光器出光功率的快速調(diào)節(jié),利用NCU 中高速I/O 模塊控制激光出關(guān)光的快速調(diào)節(jié),從而實(shí)現(xiàn)三維激光切割的工藝參數(shù)調(diào)節(jié)要求。
同時(shí)添加加工輔助設(shè)備(位移傳感器、數(shù)字?jǐn)z像機(jī)等)用于校正誤差、實(shí)時(shí)監(jiān)測(cè)加工過程;提高加工精度,開展多軸激光加工系統(tǒng)誤差及加工速度影響因素研究,建立綜合系統(tǒng)誤差模型及評(píng)估方法,同時(shí)研究設(shè)計(jì)出實(shí)用的加工誤差環(huán)節(jié)診斷技術(shù)方案以及實(shí)際工件尺寸與三維設(shè)計(jì)圖形存在失真條件下激光加工的誤差矯正技術(shù)方案。
結(jié)合三維激光切割系統(tǒng)集成及項(xiàng)目軟件開發(fā)需求,控制軟件主要有3 大功能模塊組成,如圖2 所示,分別是離線編程模塊、加工控制模塊以及工藝數(shù)據(jù)庫模塊[6]。
.其中由離線編程模塊和加工控制模塊組成的激光切割控制軟件運(yùn)行在工控機(jī)PC 上,而工藝數(shù)據(jù)庫模塊以O(shè)EM 的形式嵌入PCU 的HMI 軟件中。
在離線編程模塊中,首先實(shí)現(xiàn)三維工件建模,加工工件CAD 模型的導(dǎo)入,對(duì)激光切割路徑原始數(shù)據(jù)的處理;然后根據(jù)工件切割路徑特點(diǎn),優(yōu)化切割路徑,選擇最優(yōu)化的加工方法,實(shí)現(xiàn)可視化路徑編輯;之后模擬仿真激光加工整體流程,來觀察檢測(cè)加工過程中是否存在碰撞等情況;最后生成用于加工的數(shù)控代碼。
在加工控制模塊中,結(jié)合840Dsl 數(shù)控系統(tǒng)的基于C+ +的二次開發(fā),設(shè)計(jì)了用于本項(xiàng)目加工系統(tǒng)的激光切割工藝API(接下來將在第三章中詳細(xì)介紹)。該API 可用于設(shè)置激光切割工藝參數(shù)(切割速度、激光功率、切割頭至工件表面距離等),并將離線編程模塊中生成的NC 工件程序?qū)霐?shù)控系統(tǒng)NCU 中,然后執(zhí)行該NC 工件程序?qū)崿F(xiàn)整個(gè)激光切割過程的控制。同時(shí)該API 中也可實(shí)現(xiàn)直接單獨(dú)對(duì)激光切割各加工部件控制,其中包括五軸機(jī)床運(yùn)動(dòng)控制、激光器出光及功率控制以及激光切割頭控制。該加工控制模塊設(shè)計(jì)結(jié)合較為成熟的基于C + +開發(fā)的離線編程技術(shù),有效地縮短了項(xiàng)目軟件開發(fā)周期,也方便激光切割系統(tǒng)裝備整體調(diào)試。
在工藝數(shù)據(jù)庫模塊中,針對(duì)不同的加工材質(zhì)厚度和加工工藝要求,建立激光加工工藝數(shù)據(jù)庫,采用SQLite 小型數(shù)據(jù)庫作為工藝參數(shù)存儲(chǔ)數(shù)據(jù)源,實(shí)現(xiàn)工藝數(shù)據(jù)保存、添加、刪除、修改、查詢等功能。同時(shí),工藝數(shù)據(jù)庫與加工參數(shù)設(shè)置相關(guān)聯(lián),這樣利用含R 參數(shù)的NC 工件程序,可以實(shí)現(xiàn)對(duì)同一切割路徑,一個(gè)NC工件程序可用于不同工藝參數(shù)組合的激光切割加工,這為加工裝備整體調(diào)試以及后期三維激光切割工藝研究提供便捷的操作方式。
控制軟件設(shè)計(jì)架構(gòu)如圖3 所示;該部分主要介紹與數(shù)控系統(tǒng)相關(guān)的三維激光切割控制模塊以及激光切割工藝數(shù)據(jù)庫設(shè)計(jì)。
在本次控制軟件設(shè)計(jì)中,由于西門子840Dsl 數(shù)控系統(tǒng)沒有提供可直接應(yīng)用于激光加工工藝的C+ + API接口,因此需要對(duì)840Dsl 數(shù)控系統(tǒng)進(jìn)行二次開發(fā),設(shè)計(jì)適用于本項(xiàng)目選用加工部件的激光切割工藝API。
西門子數(shù)控系統(tǒng)提供了多種人機(jī)界面二次開發(fā)的方法[7],可由用戶根據(jù)項(xiàng)目開發(fā)需要進(jìn)行選擇。在本次設(shè)計(jì)中選用了Operator Programming Package 開發(fā)方式對(duì)840Dsl 數(shù)控系統(tǒng)進(jìn)行二次開發(fā)。該開發(fā)方式中,840Dsl 數(shù)控系統(tǒng)提供了基于C+ +開發(fā)的底層通訊接口類[8-9],可直接訪問數(shù)控系統(tǒng)底層硬件,其中包含讀寫NC 系統(tǒng)變量(如R 參數(shù),PLC 內(nèi)部數(shù)據(jù)塊等)、直接訪問NC、PLC 中數(shù)字量和模擬量輸入輸出以及執(zhí)行NC 加工程序;同時(shí)支持?jǐn)?shù)據(jù)庫訪問,便于進(jìn)行數(shù)據(jù)交互,用于加工過程中實(shí)時(shí)的狀態(tài)監(jiān)測(cè),該方法完全滿足項(xiàng)目激光切割工藝API 的設(shè)計(jì)需求。
利用Operator Programming Package 提供的底層通訊接口類,設(shè)計(jì)開發(fā)三維激光切割工藝API 接口。該API 接口直接應(yīng)用于三維激光切割控制軟件的加工部件控制模塊中,利用S7 -300 PLC 中I/O 來進(jìn)行激光器、激光切割頭、輔助氣、冷卻氣等激光切割控制部件初始化控制,利用NC 系統(tǒng)變量R 參數(shù)設(shè)置并存儲(chǔ)激光切割工藝參數(shù)(如激光功率、切割速度、噴嘴與工件表面距離等),然后啟動(dòng)NC 工件程序,并在加工過程中對(duì)激光切割控制部件運(yùn)行狀態(tài)進(jìn)行檢測(cè);在切割過程中,NCU 通過執(zhí)行NC 工件程序來控制五軸機(jī)床末端激光切割頭運(yùn)動(dòng)、激光器開關(guān)光及出光功率,PCU與工控平臺(tái)PC 進(jìn)行實(shí)時(shí)的狀態(tài)監(jiān)測(cè)(如機(jī)床實(shí)時(shí)位置、激光功率、切割頭碰撞檢測(cè)等),實(shí)現(xiàn)整體激光切割加工流程。
以下介紹基于840Dsl 底層通訊接口類開發(fā)的激光切割工藝API 接口。先介紹下面用到的幾個(gè)840Dsl底層通訊接口類:
3.1.1 SlDataSvc 類
數(shù)控系統(tǒng)中NC 和PLC 里面的數(shù)據(jù)訪問都是通過SlDataSvc 對(duì)象來實(shí)現(xiàn)的??刂圃O(shè)計(jì)用到的系統(tǒng)變量主要包括R 參數(shù)、NCU 中高速模擬量及數(shù)字量輸出、PLC 數(shù)字量輸入輸出。
3.1.2 SlPiSvc 類
在控制軟件與NCU 通訊時(shí),可用PiService 類對(duì)象來啟動(dòng)執(zhí)行NC 工件程序。
3.1.3 SlFileSvc 類
利用SlFileSvc 對(duì)象可實(shí)現(xiàn)對(duì)文件和目錄的操作。本次設(shè)計(jì)中主要利用其選擇要執(zhí)行的工件程序并導(dǎo)入NCU 中。
基于上述840Dsl 二次開發(fā)中提供的底層通訊接口類,設(shè)計(jì)了激光切割工藝API 接口,分別包含以下幾個(gè)類函數(shù):
(1)840Dsl 數(shù)控系統(tǒng)控制函數(shù)類CSinumerik840Dsl
該類直接調(diào)用底層通訊接口類對(duì)象,用于提供840Dsl 數(shù)控系統(tǒng)中R 參數(shù)、軸位置反饋、NC 高速模擬量及數(shù)字量接口、PLC I/O 讀寫操作,NC 工件程序?qū)隢CU 中以及NC 工件程序啟動(dòng)執(zhí)行等用于實(shí)現(xiàn)三維激光切割加工的基礎(chǔ)控制功能。
class CSinumerik840Dsl
{
public:
CSinumerik840Dsl(void);
long WriteR(char* item,double r);//對(duì)NC 中R 參數(shù)變量item 寫入數(shù)據(jù)r
long ReadR(char* item,double& value);//讀取R 參數(shù)
long WriteToPLC(char* item,int status);
//向PLC I/O 寫數(shù)據(jù),控制加工設(shè)備
long ReadFromPLC(char* item,int& value);
//從PLC I/O 讀取數(shù)據(jù)用于監(jiān)測(cè)設(shè)備運(yùn)行情況
long StartNCProgram(char* item1,char* item2,char* item3,char* item4);
//啟動(dòng)PI 服務(wù),用于執(zhí)行NC 代碼
public:
SlPiSvc piSvc ;//定義NC 代碼操作類對(duì)象piSvc
SlDataSvc writer;// 定義變量讀寫類對(duì)象writer
SlDataSvc reader;// 定義變量讀寫類對(duì)象reader
SlFileSvc fs;//定義NC 代碼復(fù)制類對(duì)象fs
};
(2)激光器控制函數(shù)類CIPGLaser
激光器控制類是在840Dsl 數(shù)控系統(tǒng)控制函數(shù)類CSinumerik840Dsl 的基礎(chǔ)上進(jìn)行設(shè)計(jì)的,用于實(shí)現(xiàn)加工過程中IPG10 kW 激光器的控制。其中利用PLC I/O 實(shí)現(xiàn)激光器控制初始化以及激光引導(dǎo)光開關(guān),利用NCU 中高速模擬量輸出(0 ~10 V)控制激光輸出功率,高速數(shù)字量輸出用于控制激光出關(guān)光。同時(shí)在激光切割過程中,對(duì)激光器工作狀態(tài)、實(shí)時(shí)功率進(jìn)行監(jiān)測(cè),并在緊急情況下急停激光器。
class CIPGLaser
{
public:
CIPGLaser(void);
long LaserOn(void);// 激光開
long LaserOff(void);// 激光關(guān)
long LaserOnInit(int value);//激光器初始化
long GuideLightOn(void);//指示光開
long GuideLightOff(void);//指示光關(guān)
long SetLaserPower(double power);//設(shè)置激光功率
public:
CSinumerik840Dsl IPGTo840Dsl;
};
(3)激光切割頭控制函數(shù)類CPrecitecHead
激光切割頭控制函數(shù)類也是在840Dsl 數(shù)控系統(tǒng)控制函數(shù)類CSinumerik840Dsl 的基礎(chǔ)上進(jìn)行設(shè)計(jì)的。實(shí)現(xiàn)加工過程中PRICITEC 激光切割頭系統(tǒng)控制。其中利用PLC I/O 實(shí)現(xiàn)Z 浮隨動(dòng)調(diào)節(jié)模式開關(guān),利用NCU 中高速模擬量輸出(0 ~10 V)控制切割頭噴嘴至工件表面距離。
class CPrecitecHead
{
public:
CPrecitecHead(void);
long ZStandoffAutoOn(void);//開啟Z 浮隨動(dòng)調(diào)節(jié)模式
long ZStandoffAutoOff(void);//關(guān)閉Z 浮隨動(dòng)調(diào)節(jié)模式
long SetZStandoff(double z);//設(shè)置Z 浮距離
public:
CSinumerik840Dsl PrecitecTo840Dsl;
};
根據(jù)項(xiàng)目需求,本次開發(fā)的激光切割工藝數(shù)據(jù)庫包含2 mm、4 mm、8 mm 3 個(gè)規(guī)格的鋁合金材料激光切割的切割工藝參數(shù)以及切割質(zhì)量參數(shù),其中切割工藝參數(shù)包括激光功率、切割速度、氣體壓力、氣體類型、切割頭噴嘴開口直徑及噴嘴至工件表面距離等,切割質(zhì)量參數(shù)包括粗糙度、切口寬度、切口垂直度、掛渣量、重熔區(qū)和熱影響區(qū)寬度等)。
軟件設(shè)計(jì)中,基于Qt 開發(fā)框架利用VS2008 進(jìn)行軟件編譯,利用Qt Designer 進(jìn)行圖形界面設(shè)計(jì),編譯完成后以O(shè)EM 形式嵌入到數(shù)控系統(tǒng)PCU 的HMI 操作軟件中[9-10],軟件界面如圖4 所示,后臺(tái)數(shù)據(jù)庫采用SQLite3 輕型數(shù)據(jù)庫進(jìn)行數(shù)據(jù)存儲(chǔ)。該數(shù)據(jù)庫支持跨平臺(tái),操作簡(jiǎn)單,可以使用多種語言直接創(chuàng)建數(shù)據(jù)庫,不需要后臺(tái)應(yīng)用軟件支持,支持SQL 語句指令實(shí)現(xiàn)各種數(shù)據(jù)庫操作功能,并且源碼完全開放,可以用于數(shù)據(jù)庫系統(tǒng)的深度開發(fā)[11]。
該激光切割工藝數(shù)據(jù)庫具備不同厚度板材加工數(shù)據(jù)庫選擇查詢、修改、添加以及刪除數(shù)據(jù)等操作功能,同時(shí)結(jié)合激光切割加工應(yīng)用,可直接選擇數(shù)據(jù)庫中某一組工藝參數(shù)進(jìn)行設(shè)置,利用含R 參數(shù)的NC 工件程序,實(shí)現(xiàn)在同一切割路徑時(shí),一個(gè)工件程序可用于不同工藝參數(shù)組合的激光切割加工,方便NC 工件程序中工藝參數(shù)設(shè)置,可直接用于下一次激光切割。
(1)通過在沈陽中捷的五軸龍門機(jī)床測(cè)試結(jié)果證明,三維激光切割控制軟件設(shè)計(jì)很好的實(shí)現(xiàn)了在三維激光切割過程中各加工部件控制,激光功率、切割速度、切割頭與工件表面距離等激光切割工藝參數(shù)實(shí)時(shí)可調(diào),滿足三維激光切割技術(shù)要求。
(2)項(xiàng)目還在繼續(xù)研究,目前處于設(shè)備整體調(diào)試階段,設(shè)備裝配調(diào)試正常,但該復(fù)合加工設(shè)備尚未加工實(shí)體工件,激光切割工藝以及加工精度、誤差分析等研究將是下一步工作重點(diǎn)。
(3)該項(xiàng)目研究中選用的數(shù)控系統(tǒng)具有一定普遍性,研究?jī)?nèi)容也可用于現(xiàn)有的機(jī)床改造工作中,將原有的機(jī)械加工機(jī)床改進(jìn)為機(jī)械與激光復(fù)合加工設(shè)備。
[1]陳根余,曹茂林,黃豐杰. 三維激光切割的應(yīng)用和研究[J]. 激光與光電子學(xué)進(jìn)展,2007,44(3):38 -42.
[2]黃開金,謝長(zhǎng)生. 三維激光切割的發(fā)展現(xiàn)狀[J]. 激光技術(shù),1998,22(6):352 -356.
[3]葉建斌,戴春祥. 激光切割技術(shù)[M]. 上海:上??茖W(xué)科技出版社,2012:94 -95.
[4]羅敬文. 三維數(shù)控激光切割機(jī)[J]. 激光與光電子學(xué)進(jìn)展,2009(9):29 -31.
[5]徐光. SINUMERIK 840D sl 完美勝任各種應(yīng)用需求[J]. 航空制造技術(shù),2010 (19):56 -58.
[6]蔣明. 激光飛行標(biāo)刻系統(tǒng)及激光加工機(jī)器人控制與仿真研究[D].武漢:華中科技大學(xué),2011.
[7]邴旭,化春雷,李焱,等. 西門子數(shù)控系統(tǒng)人機(jī)界面二次開發(fā)方法研究[J]. 制造技術(shù)與機(jī)床,2011(10):163 -167.
[8]SIEMENS. SINUMERIK 840Dsl SINUMERIK Operate CPP API Interface[Z].2012.
[9]SIEMENS. SINUMERIK 840Dsl SINUMERIK Operate Programming Package[Z].2012.
[10]王照亮,于會(huì)龍,邢雨. 基于840D sl OEM 開發(fā)組件的數(shù)控系統(tǒng)電氣調(diào)試方法[J]. 制造技術(shù)與機(jī)床,2012 (5):161 -165.
[11]潘學(xué)文,文漢云. 基于Qt4 的SQLite 數(shù)據(jù)庫應(yīng)用編程[J]. 電腦編程技巧與維護(hù),2011 (4):49 -50.