李維臣,沙 偉,孫德志,李瀟霖
(大連四達(dá)高技術(shù)發(fā)展有限公司,遼寧 大連 116023)
飛機(jī)制造業(yè)是高技術(shù)戰(zhàn)略產(chǎn)業(yè),其對(duì)科技進(jìn)步和創(chuàng)新具有廣泛持久的牽引作用[1-2]。為有效地保證制造精度和提升加工效率,目前在飛機(jī)制造業(yè)發(fā)達(dá)國(guó)家,普遍采用了性能先進(jìn)、功能完善的大型數(shù)控機(jī)床進(jìn)行重要零部件的加工,與之相比,我國(guó)在該領(lǐng)域的加工裝備水平還存在一定的差距。
國(guó)內(nèi)某飛機(jī)大型復(fù)雜結(jié)構(gòu)件數(shù)字化車間,已配備了大型五坐標(biāo)數(shù)控機(jī)床,該機(jī)床配置西門子SINUMERIK 840D Powerline數(shù)控系統(tǒng)以及安裝于機(jī)床本體外的鏈?zhǔn)降稁?kù),但未使用840D系統(tǒng)刀具管理功能,刀具管理信息單一,同時(shí)該刀庫(kù)采用液壓換刀機(jī)構(gòu),存在運(yùn)動(dòng)速率慢,換刀時(shí)間長(zhǎng)等問(wèn)題,已經(jīng)不能滿足高效的數(shù)字化加工要求,因而對(duì)刀庫(kù)的升級(jí)迫在眉睫。
本文根據(jù)飛機(jī)大型復(fù)雜結(jié)構(gòu)件數(shù)字化車間的實(shí)際情況,提出采用KUKA工業(yè)機(jī)器人結(jié)合840D刀具管理實(shí)現(xiàn)換刀功能。數(shù)控系統(tǒng)連接機(jī)器人并且通過(guò)NC代碼啟動(dòng)換刀[3]。使用機(jī)器人換刀其優(yōu)點(diǎn)在于刀庫(kù)結(jié)構(gòu)簡(jiǎn)單,能夠承載大型刀具,針對(duì)尺寸長(zhǎng)的刀具還便于實(shí)現(xiàn)路徑避讓,因而使換刀更加靈活快捷。升級(jí)后將KUKA機(jī)器人應(yīng)用于西門子840D刀庫(kù)管理系統(tǒng)中,取得了良好的效果,解決了換刀卡頓等問(wèn)題,機(jī)器人結(jié)合AGV車取代了以往人工裝卸刀及運(yùn)輸,可完全實(shí)現(xiàn)刀具的自動(dòng)化裝卸和運(yùn)輸,減少人力成本,滿足了數(shù)字化加工要求。
升級(jí)前機(jī)床加工系統(tǒng)只與ERP服務(wù)器組網(wǎng)連接;無(wú)MES、管控物流、機(jī)床上下料及AGV;機(jī)床采用包含20個(gè)刀位的鏈?zhǔn)降稁?kù)但無(wú)刀具管理功能;物料及刀具均人工裝卸。刀庫(kù)驅(qū)動(dòng)裝置由電機(jī)、液壓組成,它們?cè)跀?shù)控系統(tǒng)控制下,驅(qū)動(dòng)刀庫(kù)和機(jī)械手,實(shí)現(xiàn)刀具的選擇與交換[4]。
升級(jí)改進(jìn)后機(jī)床加工系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)網(wǎng)絡(luò)拓?fù)?/p>
針對(duì)系統(tǒng)中主要的3個(gè)構(gòu)成部分,簡(jiǎn)要說(shuō)明如下:
(1)機(jī)床系統(tǒng):配置840DPL的大型數(shù)控機(jī)床,使用刀具管理功能。
(2)刀具室:包含配刀系統(tǒng),刀具AGV車以及光通訊模塊。
(3)機(jī)床上下料/刀庫(kù)單元:新增刀庫(kù)組件和自動(dòng)上下料裝置,與機(jī)床系統(tǒng)的連接采用DP/DP COUPLER進(jìn)行DP通訊連接,與KUKA機(jī)器人網(wǎng)絡(luò)連接使用倍福模塊EL6695進(jìn)行ETHERCAT通訊連接。刀庫(kù)1采用壁掛刀架式結(jié)構(gòu),無(wú)驅(qū)動(dòng)裝置,包含36個(gè)刀位以及3個(gè)裝載位置;刀庫(kù)2(刀架)包含12個(gè)刀位由AGV運(yùn)輸;系統(tǒng)采用KUKA 7軸機(jī)器人實(shí)現(xiàn)裝卸刀和換刀;換刀機(jī)構(gòu)采用單爪氣動(dòng)夾持機(jī)構(gòu);系統(tǒng)和刀具AGV車采用光通訊方式通訊。
刀庫(kù)的結(jié)構(gòu)如圖2所示。
圖2 刀庫(kù)三維結(jié)構(gòu)
使用西門子840D刀具管理功能需要對(duì)數(shù)控系統(tǒng)參數(shù)進(jìn)行設(shè)定[5-8]。按照刀庫(kù)配置表(見(jiàn)表1),對(duì)參數(shù)進(jìn)行設(shè)定。
表1 刀庫(kù)配置表
參數(shù)的設(shè)定只是給NC分配了相應(yīng)的內(nèi)存空間用于刀具管理,還需對(duì)刀庫(kù)的配置進(jìn)行組態(tài)。對(duì)于刀庫(kù)配置組態(tài)有兩種方式,一種方式是通過(guò)運(yùn)行NC程序?qū)ο到y(tǒng)變量進(jìn)行賦值,另外一種方式是通過(guò)HMI-Advanced的主畫(huà)面中按軟鍵“啟動(dòng)”(Start-up),進(jìn)入啟動(dòng)調(diào)試子界面,按下右下角軟鍵“刀具管理”(Tool management)進(jìn)入刀庫(kù)組態(tài)界面,根據(jù)刀庫(kù)配置對(duì)刀庫(kù)進(jìn)行組態(tài)。本項(xiàng)目使用第一種方式。
刀庫(kù)配置程序運(yùn)行后還需要在PLC中設(shè)定刀庫(kù)接口數(shù)據(jù)塊DB4,建議在OB100中編寫(xiě)DB4的程序。按照刀庫(kù)配置,對(duì)DB4進(jìn)行賦值。
刀具管理的操作信息通過(guò)數(shù)據(jù)接口傳遞到PLC,PLC通過(guò)數(shù)據(jù)接口響應(yīng)刀具管理的請(qǐng)求。刀庫(kù)配置程序及DB4設(shè)定完成之后會(huì)在PLC中生成相應(yīng)的PLC接口信號(hào)(DB71、DB72等),通過(guò)采集這些數(shù)據(jù)接口的信號(hào),編寫(xiě)相應(yīng)的PLC程序,控制刀庫(kù)動(dòng)作,再通過(guò)使用FC8功能塊刷新刀具信息。
2.3.1 PLC-NCK數(shù)據(jù)接口說(shuō)明
刀具管理的PLC-NCK數(shù)據(jù)接口如圖3所示,其中:
(1)DB71:DB71是用于刀具裝載、卸載、重新定位、定位至換刀點(diǎn)時(shí)需要的接口信號(hào)數(shù)據(jù)塊,其數(shù)據(jù)塊長(zhǎng)度與裝載點(diǎn)的組態(tài)數(shù)量有關(guān)。
(2)DB72:DB72是刀具交換(包括手動(dòng)裝刀、手動(dòng)卸刀、自動(dòng)刀具準(zhǔn)備、自動(dòng)刀具交換)時(shí)需要的接口信號(hào)數(shù)據(jù)塊,該塊的數(shù)據(jù)長(zhǎng)度與組態(tài)的主軸數(shù)量有關(guān)。
(3)FC8:刀具管理的傳遞塊[9]。當(dāng)狀態(tài)發(fā)生變化時(shí)(裝刀/卸刀、換刀),使用該功能塊。“多刀”情況下使用 FC6。FC6 與 FC8 的功能相同,但它還具有多刀功能。
圖3 刀具管理接口
2.3.2 PLC響應(yīng)流程
第1步:要判斷刀具管理PLC接口信號(hào)哪個(gè)信號(hào)有請(qǐng)求?
第2步:根據(jù)有請(qǐng)求的接口信號(hào)提供的數(shù)據(jù)通知KUKA機(jī)器人做相應(yīng)的動(dòng)作。
第3步:等待KUKA機(jī)器人的相關(guān)動(dòng)作完成信號(hào)。
第4步:通過(guò)FC6或FC8功能塊響應(yīng)NC,通知NC動(dòng)作已完成,繼續(xù)下一步。
KUKA機(jī)器人使用KRC4系列KR60,相當(dāng)于刀庫(kù)的換刀機(jī)構(gòu),配置第7軸用于擴(kuò)大運(yùn)動(dòng)空間,配置EtherCAT接口用于和倍福PC通訊, KUKA機(jī)器人要實(shí)現(xiàn)在刀庫(kù)中的使用必須要配置KUKA外部自動(dòng)程序。在倍福PC側(cè)編寫(xiě)外部自動(dòng)程序來(lái)控制KUKA機(jī)器人進(jìn)程,在KUKA機(jī)器人側(cè)需要配置CELL.SRC程序及外部自動(dòng)運(yùn)行輸入輸出接口。KUKA側(cè)配置外部自動(dòng)運(yùn)行程序后,按照刀具操作的任務(wù)在外部程序中進(jìn)行各個(gè)任務(wù)的模塊化程序編程,控制KUKA機(jī)器人做相應(yīng)的動(dòng)作及響應(yīng),實(shí)現(xiàn)刀具操作的動(dòng)作流程。
配置外部PLC(倍福PC)與機(jī)器人自動(dòng)啟動(dòng)信號(hào)之前,需要了解PLC與機(jī)器人有哪些接口信號(hào),這些信號(hào)都有哪些作用,接口信號(hào)的控制原理。通過(guò)外部PLC對(duì)機(jī)器人自動(dòng)運(yùn)行進(jìn)行控制,其控制原理是:外部PLC(倍福PC)通過(guò)外部自動(dòng)運(yùn)行接口向機(jī)器人控制系統(tǒng)發(fā)出機(jī)器人進(jìn)程的相關(guān)信號(hào)(如:運(yùn)行許可、故障確認(rèn)、程序啟動(dòng)等),機(jī)器人控制系統(tǒng)向外部PLC(倍福PC)系統(tǒng)發(fā)送有關(guān)運(yùn)行狀態(tài)和故障狀態(tài)的信息。
機(jī)器人與倍福PLC IO交互信號(hào)配置好后,按照啟動(dòng)時(shí)序在PC側(cè)編寫(xiě)相應(yīng)的PLC程序,機(jī)器人的啟動(dòng)時(shí)序主要分為4步。
(1)接通驅(qū)動(dòng)裝置 。
(2)確認(rèn)報(bào)警信息 。
(3)啟動(dòng) Cell 程序 。
(4)傳遞程序號(hào)并處理應(yīng)用程序 。
刀具管理的任務(wù)分為刀庫(kù)裝刀任務(wù),刀庫(kù)卸刀任務(wù),刀庫(kù)刀具移位任務(wù),夾爪排空任務(wù),主軸無(wú)刀換新刀任務(wù),主軸有刀換新刀任務(wù),主軸有刀卸舊刀任務(wù),刀庫(kù)與AGV刀具移位任務(wù)。KUKA機(jī)器人程序按照動(dòng)作流程對(duì)這些任務(wù)進(jìn)行模塊化編程。執(zhí)行任務(wù)時(shí)調(diào)用相應(yīng)程序模塊,每一步的動(dòng)作完成都通過(guò)交互信號(hào)反饋到數(shù)控系統(tǒng)中,數(shù)控系統(tǒng)再根據(jù)反饋信號(hào)刷新刀具表,保證動(dòng)作和刀具表的數(shù)據(jù)一致。除此之外KUKA機(jī)器人程序還包括中斷程序用于處理急停故障等情況。
表2列出了機(jī)器人的主要交互數(shù)據(jù)信號(hào)。
表2 刀庫(kù)主要交互信號(hào)表
刀庫(kù)的裝刀,缷刀,重新定位功能在PLC中編好程序,結(jié)合數(shù)控的HMI中的刀庫(kù)管理界面操作就可實(shí)現(xiàn)相應(yīng)的動(dòng)作及功能。對(duì)于換刀的功能還要編寫(xiě)名稱為L(zhǎng)6的換刀子程序,當(dāng)NC程序中執(zhí)行M6代碼時(shí)會(huì)自動(dòng)調(diào)用L6換刀子程序。在編寫(xiě)L6換刀NC程序時(shí)可以使用西門子840D數(shù)控系統(tǒng)中的M代碼、H代碼、邏輯控制、系統(tǒng)變量、跳轉(zhuǎn)、R參數(shù)、通用接口信號(hào)等來(lái)實(shí)現(xiàn)換刀過(guò)程中的邏輯控制及刀庫(kù)刀具表刷新的相關(guān)操作。L6換刀程序的編寫(xiě)需要考慮到程序控制中的各種情況諸如計(jì)算搜索、模擬、測(cè)試,當(dāng)執(zhí)行這些程序操作時(shí),刀庫(kù)不進(jìn)行動(dòng)作,防止誤動(dòng)作。
L6換刀流程如圖4所示。
圖4 L6換刀流程
根據(jù)換刀流程編寫(xiě)L6的程序,L6中會(huì)用到一些840D系統(tǒng)的NC變量和指令(見(jiàn)表3),利用這些NC變量和指令就可以實(shí)現(xiàn)L6換刀程序中的各種條件判斷和動(dòng)作處理[10]。
表3 NC變量及指令表
L6換刀子程序中按照換刀的流程分成主軸無(wú)刀換新刀任務(wù)、主軸有刀換新刀任務(wù)、主軸有刀卸舊刀任務(wù)。每個(gè)任務(wù)都是按照動(dòng)作順序進(jìn)行執(zhí)行,動(dòng)作不執(zhí)行完成NC程序處于等待狀態(tài),動(dòng)作完成信號(hào)響應(yīng)后再執(zhí)行下一步NC程序,這樣處理避免了誤動(dòng)作的發(fā)生,保證了刀具表的準(zhǔn)確性。
刀具的自動(dòng)裝卸功能,需要管控系統(tǒng)(ERP/MES)、刀具AGV車、機(jī)床系統(tǒng)、KUKA機(jī)器人協(xié)調(diào)工作才能完成。具體操作步驟分6步。
第1步:首先管控系統(tǒng)采集現(xiàn)場(chǎng)機(jī)床與設(shè)備的信息,生成刀具裝載或卸載機(jī)床NC子程序文件,下發(fā)至機(jī)床系統(tǒng)。
第2步:物流系統(tǒng)調(diào)度AGV車執(zhí)行運(yùn)輸任務(wù)。
第3步:AGV運(yùn)輸?shù)都艿轿缓蟾嬷獧C(jī)床執(zhí)行裝卸主程序。
第4步:機(jī)床裝卸主程序中調(diào)用管控下發(fā)的裝卸子程序,告知KUKA機(jī)器人執(zhí)行任務(wù)與啟動(dòng)信號(hào)。
第5步:KUKA機(jī)器人按照動(dòng)作執(zhí)行裝卸刀動(dòng)作,數(shù)控系統(tǒng)刷新刀庫(kù)數(shù)據(jù)表。
第6步:裝卸完成后告知AGV離開(kāi)。
管控系統(tǒng)需要生成兩個(gè)子程序分別為裝刀程序和卸刀程序。子程序的生成通過(guò)Visual Studio編程的軟件實(shí)現(xiàn)。生成的子程序中包含刀庫(kù)數(shù)據(jù)、刀具數(shù)據(jù)、刀沿?cái)?shù)據(jù)等系統(tǒng)變量。
要實(shí)現(xiàn)自動(dòng)裝卸刀功能,機(jī)床840D系統(tǒng)要編輯兩個(gè)NC主程序,分別為裝刀程序和卸刀程序。當(dāng)?shù)毒逜GV到位且管控系統(tǒng)下發(fā)執(zhí)行命令時(shí),840D系統(tǒng)分別調(diào)用相應(yīng)的主程序,執(zhí)行裝卸刀動(dòng)作。主程序的編制要使用刀庫(kù)數(shù)據(jù)系統(tǒng)變量、$A_DBW 變量及GETFREELOC等系統(tǒng)命令實(shí)現(xiàn)。裝卸刀程序的編寫(xiě)要按照動(dòng)作流程編寫(xiě),防止誤動(dòng)作發(fā)生,保證設(shè)備安全。
本文提出了KUKA機(jī)器人機(jī)構(gòu)結(jié)合840D系統(tǒng)針對(duì)老舊機(jī)床實(shí)現(xiàn)自動(dòng)換刀的改造升級(jí)方案,詳細(xì)論述了840D刀具管理功能的實(shí)現(xiàn),KUKA機(jī)器人配置,換刀子程序的編制等技術(shù)要點(diǎn)及實(shí)現(xiàn)過(guò)程。該升級(jí)方案的實(shí)施不僅實(shí)現(xiàn)了高效的自動(dòng)裝卸刀具及運(yùn)輸功能,還減少了人力成本,避免了人工操作錯(cuò)誤帶來(lái)的影響,滿足了數(shù)字化加工要求;同時(shí)對(duì)國(guó)內(nèi)大型老舊機(jī)床的刀庫(kù)改造升級(jí)提供了現(xiàn)實(shí)可行的思路和方法。