王元鈺,劉勇,王軍義,徐志剛,楊嘯,武琳豐
(1.沈陽航空航天大學(xué)機(jī)電工程學(xué)院,遼寧沈陽 110135;2.中國科學(xué)院沈陽自動化研究所機(jī)器人學(xué)國家重點(diǎn)實(shí)驗(yàn)室,遼寧沈陽 110016;3.中國科學(xué)院機(jī)器人與智能制造創(chuàng)新研究院,遼寧沈陽 110169)
近年來,我國國防事業(yè)的發(fā)展日新月異,每年都以遠(yuǎn)超大眾想象的速度生產(chǎn)制造新型裝備。航空發(fā)動機(jī)作為航空航天與國防等領(lǐng)域的核心引擎,是國家硬實(shí)力提升的主推力。發(fā)動機(jī)裝配是其穩(wěn)定運(yùn)行的基礎(chǔ),螺栓擰緊是發(fā)動機(jī)裝配中必不可少的一個(gè)工序。隨著機(jī)器人剛度及精度的提升,機(jī)器人逐漸被應(yīng)用在發(fā)動機(jī)的螺栓擰緊領(lǐng)域。使用機(jī)器人擰緊發(fā)動機(jī)螺栓時(shí),傳統(tǒng)的示教編程剛性裝配存在需要投入大量人力物力、調(diào)試時(shí)間長、編程效率低等缺點(diǎn),因此示教編程不適用于中小批量多品種的發(fā)動機(jī)生產(chǎn)。
針對上述問題,不同學(xué)者對編程方法進(jìn)行了研究。李科霖[1]提出了一種機(jī)器人自動控制拋光方法,該方法以人機(jī)演示輔助編程為基礎(chǔ),研究了人-機(jī)器人演示柔順性和機(jī)器人環(huán)境接觸力控制兩項(xiàng)關(guān)鍵技術(shù),但演示過程耗時(shí)較長且編程難度較高。葛科迪等[2]使用示教曲面流形離線構(gòu)造先驗(yàn)虛擬夾具,根據(jù)待加工表面與先驗(yàn)虛擬夾具的吻合情況判斷使用彈簧阻尼系統(tǒng)在線補(bǔ)償示教路徑偏差,或者通過虛擬夾具剛?cè)嵝宰赃m應(yīng)調(diào)整實(shí)現(xiàn)迭代修正,但結(jié)果的正確與否過于依賴虛擬夾具構(gòu)建。趙罡等人[3]提出一種工業(yè)機(jī)器人離線示教編程的并聯(lián)測量平臺,采用測量平臺與工業(yè)機(jī)器人之間的坐標(biāo)變換得到控制機(jī)器人運(yùn)動所需的位姿數(shù)據(jù)。劉朱偉[4]結(jié)合了工業(yè)機(jī)器人的示教編程和虛擬現(xiàn)實(shí)技術(shù),研究基于虛擬現(xiàn)實(shí)的工業(yè)機(jī)器人示教編程平臺的關(guān)鍵技術(shù)。夏姝[5]基于Blockly設(shè)計(jì)并實(shí)現(xiàn)了一套圖形化示教編程語言,降低了機(jī)器人示教難度,提高了示教效率,但僅僅在示教編程層面提高了效率。倪自強(qiáng)等[6]提出了一種示教編程方法,通過雙目視覺系統(tǒng)識別并提取示教工具的末端位姿,通過奇異值分解法建立視覺系統(tǒng)與機(jī)器人之間的坐標(biāo)映射關(guān)系,最終獲得規(guī)劃機(jī)器人運(yùn)動所需的位姿數(shù)據(jù),并將位姿數(shù)據(jù)轉(zhuǎn)換為機(jī)器人的可執(zhí)行文件。遲明善等[7]提出了一種利用示教編程方法的新方案,基于示教編程技術(shù)控制共融機(jī)器人,使其完成復(fù)雜的日常操作,但機(jī)器人完成一次操作的時(shí)間較長。沈靖皓[8]提出一種特殊的示教方法,該方法通過手勢引導(dǎo)操控機(jī)器人的同時(shí),使示教者專注于任務(wù)本身,稀釋學(xué)習(xí)指令和示教流程的作用,進(jìn)而減少了示教編程的難度。張連新等[9]提出一種機(jī)器人示教編程設(shè)計(jì)方法,該方法以嵌入式CPU模塊為基礎(chǔ),開發(fā)的示教編程器可以增強(qiáng)程序編輯能力,進(jìn)而控制機(jī)器人完成所需操作,但并未減少采用示教方法編程的工作量。LEE等[10]開發(fā)了一種無源外骨骼作為遠(yuǎn)程操作系統(tǒng)的主器件,通過對軌跡點(diǎn)示教,采用操作空間框架來控制從臂,結(jié)果驗(yàn)證了所提出的基于遠(yuǎn)程操作的機(jī)器人編程方法的有效性。
以上研究的示教編程方法編程時(shí)間長、工作效率低,不適用于中小批量多品種的發(fā)動機(jī)螺栓擰緊。本文作者提出一種基于數(shù)字孿生平臺、機(jī)器人柔性擰緊發(fā)動機(jī)螺栓的方法。通過數(shù)字孿生平臺實(shí)現(xiàn)離線編程,通過物理空間與數(shù)字空間標(biāo)定修訂程序,最終快速柔性地完成發(fā)動機(jī)的螺栓擰緊工作。
針對中小批量多品種的發(fā)動機(jī)螺栓擰緊問題,基于數(shù)字孿生平臺建立柔性螺栓擰緊系統(tǒng)。系統(tǒng)包含螺栓擰緊過程數(shù)字孿生仿真、物理空間與數(shù)字空間一致性標(biāo)定等部分,如圖1所示。通過數(shù)字孿生仿真驗(yàn)證螺栓擰緊系統(tǒng)的可行性,通過物理空間與數(shù)字空間一致性標(biāo)定控制機(jī)器人精準(zhǔn)完成操作,結(jié)果證明:通過文中提出的方法,機(jī)器人能快速柔性地?cái)Q緊發(fā)動機(jī)的螺栓。
圖1 基于數(shù)字孿生的柔性螺栓擰緊方法
為了確保機(jī)器人在擰緊過程中可達(dá)且保持良好姿態(tài),過程中使用2臺機(jī)器人配合完成螺栓擰緊,如圖2(a)所示。2臺機(jī)器人分別從螺栓放置架中取螺栓,設(shè)置干涉查看器,確保兩臺機(jī)器人擰緊發(fā)動機(jī)螺栓時(shí)不會干涉。操控機(jī)器人先選徑向的2個(gè)螺栓孔擰緊螺栓,再擰緊正交方向上的2個(gè)螺栓孔,隨后對余下螺栓孔徑向依次成對擰緊。為了保證擰緊精度以及擰緊效率,設(shè)計(jì)機(jī)構(gòu)——螺栓擰緊工作頭,如圖2(b)所示。螺栓擰緊工作頭是擰緊螺栓的工具,也可以控制螺栓擰緊扭矩。擰緊工作頭使用連接法蘭和連接支座將機(jī)器人和擰緊機(jī)進(jìn)行定位固連,連接支座上再集成視覺相機(jī)和配套相機(jī)光源,確保擰緊頭能夠精準(zhǔn)識別螺栓和螺栓孔。針對不同型號的螺栓,設(shè)計(jì)自適應(yīng)螺栓擰緊套筒來穩(wěn)定抓取與擰緊螺栓。自適應(yīng)螺栓套筒是與擰緊機(jī)相連且直接與螺栓接觸的機(jī)構(gòu),具備與擰緊機(jī)之間的手動快換能力,可根據(jù)使用需求人工更換套筒,快捷方便。套筒與擰緊頭連接部分設(shè)計(jì)一個(gè)彈性卡珠結(jié)構(gòu),保證套筒更換方便,更換后套筒與擰緊機(jī)連接緊固,螺栓擰緊過程安全。螺栓擰緊過程中使用視覺相機(jī)輔助監(jiān)測。
圖2 機(jī)器人螺栓擰緊設(shè)備
構(gòu)建數(shù)字孿生模型是實(shí)現(xiàn)發(fā)動機(jī)快速柔性螺栓擰緊的首要步驟。建立機(jī)器人運(yùn)動學(xué)模型進(jìn)而求得機(jī)器人正、逆解,以機(jī)器人與零部件不產(chǎn)生任何干涉為前提,使用五次多項(xiàng)式插值對機(jī)器人進(jìn)行軌跡規(guī)劃。在Process simulate中建立模型,依據(jù)零件類型定義模型為資源或者零件(螺栓為零件,其余為資源)。建立操作,控制機(jī)器人完成發(fā)動機(jī)的螺栓擰緊工作并輸出離線程序。因物理空間與數(shù)字空間的坐標(biāo)值不匹配,所以對物理空間與數(shù)字空間的坐標(biāo)進(jìn)行標(biāo)定。標(biāo)定后修改程序,將修改后的程序傳入機(jī)器人控制器中,操控機(jī)器人擰緊發(fā)動機(jī)螺栓。
此方法同樣適用其他型號、形狀的發(fā)動機(jī)螺栓擰緊。不同的發(fā)動機(jī)型號對應(yīng)的螺栓型號不同,更換螺栓擰緊工具頭完成不同型號螺栓的擰緊任務(wù),最終可滿足直徑φ750 mm~φ1 200 mm及φ1 400 mm~φ2 000 mm產(chǎn)品的柔性裝配。
為了在數(shù)字孿生平臺中實(shí)現(xiàn)機(jī)器人對航空發(fā)動機(jī)螺栓的擰緊,并確保擰緊工作的效率及安全性,因此對機(jī)器人進(jìn)行軌跡規(guī)劃。軌跡規(guī)劃的前提是對機(jī)器人進(jìn)行運(yùn)動學(xué)計(jì)算,將路徑點(diǎn)轉(zhuǎn)化為關(guān)節(jié)矢量角度值,而后利用五次多項(xiàng)式插值擬合出機(jī)器人的軌跡。
2.1.1 機(jī)器人運(yùn)動學(xué)求解
機(jī)器人運(yùn)動學(xué)求解是機(jī)器人進(jìn)行離線編程軌跡規(guī)劃的基礎(chǔ)[11],描述了機(jī)器人關(guān)節(jié)空間與操作空間的關(guān)系,通過對機(jī)器人進(jìn)行運(yùn)動學(xué)求解來獲得運(yùn)動過程中機(jī)器人的各個(gè)關(guān)節(jié)數(shù)據(jù)以及機(jī)器人末端點(diǎn)位置。在程序轉(zhuǎn)換和運(yùn)動仿真過程中,需要使用機(jī)器人運(yùn)動過程中的各個(gè)關(guān)節(jié)角度數(shù)據(jù),因此首先對機(jī)器人進(jìn)行正、逆運(yùn)動學(xué)建模[12-14]。D-H法利用變換矩陣對相鄰連桿空間關(guān)系加以闡述,經(jīng)過矩陣依次變換后得到機(jī)器人末端執(zhí)行器相對于基坐標(biāo)系的位置信息,因此采用D-H參數(shù)法對機(jī)器人進(jìn)行數(shù)學(xué)建模。建立機(jī)器人連桿坐標(biāo)系如圖3所示。
圖3 機(jī)器人連桿坐標(biāo)系
根據(jù)連桿坐標(biāo)系與機(jī)器人參數(shù)列出KR210機(jī)器人的D-H參數(shù),如表1所示。
表1 KR210機(jī)器人的D-H 參數(shù)
基于D-H參數(shù)在MATLAB中建立機(jī)器人運(yùn)動學(xué)模型,使用Link函數(shù)建立機(jī)器人6個(gè)連桿,用SerialLink函數(shù)串聯(lián)連桿,qlim函數(shù)設(shè)置各個(gè)轉(zhuǎn)角的旋轉(zhuǎn)角度范圍,生成機(jī)器人模型如圖4所示。
圖4 機(jī)器人模型
當(dāng)機(jī)器人6個(gè)關(guān)節(jié)分別轉(zhuǎn)過相應(yīng)角度θi后,通過各關(guān)節(jié)間的旋轉(zhuǎn)平移變換得到各個(gè)連桿的變換矩陣:
(2)
軌跡規(guī)劃過程中,要根據(jù)機(jī)器人末端到達(dá)的某位姿求解對應(yīng)關(guān)節(jié)的角度值,即求解機(jī)器人逆運(yùn)動學(xué)方程[15]。
(3)
令等式第三行第四列兩邊相等,則有:
(4)
同理,可用同樣方法繼續(xù)求出關(guān)節(jié)角θ2-θ6,文中不再贅述。
由式(4)可看出θ1有2組解,六自由度機(jī)器人理論上有16組逆解。以機(jī)器人各關(guān)節(jié)運(yùn)動角度絕對值之和最小作為評價(jià)函數(shù)即式(5),確定唯一逆解。
(5)
其中:θi0為機(jī)器人運(yùn)動前的關(guān)節(jié)角。
2.1.2 機(jī)器人軌跡規(guī)劃
機(jī)器人裝配過程中,機(jī)器人的運(yùn)動軌跡對其運(yùn)行穩(wěn)定性和效率有重要影響[16-17]。使用五次多項(xiàng)式插值進(jìn)行軌跡擬合,增加機(jī)器人在運(yùn)動過程中的平順性和連續(xù)性。五次多項(xiàng)式通式為
(6)
式中:時(shí)間t∈[0,tm];θ(t)、θ′(t)、θ″(t)分別為t時(shí)刻對應(yīng)的關(guān)節(jié)角度、角速度、角加速度;A、B、…、F為多項(xiàng)式系數(shù),由以下約束條件求得:
(7)
根據(jù)式(7)的約束條件,即可求出多項(xiàng)式系數(shù):
(8)
根據(jù)式(6)、(8)可確定機(jī)器人各關(guān)節(jié)在時(shí)間t的位置、角速度以及角加速度。
基于五次多項(xiàng)式的軌跡規(guī)劃,使機(jī)器人關(guān)節(jié)速度、加速度以及運(yùn)動軌跡曲線均連續(xù)且光滑,運(yùn)動相對平穩(wěn),因此機(jī)器人在發(fā)動機(jī)的螺栓擰緊過程中不會產(chǎn)生較大振動,裝配質(zhì)量更牢靠。
設(shè)定起始點(diǎn)和終止點(diǎn),起始點(diǎn)S1(-2 098,2 264,1 396),終止點(diǎn)S2(-145,2 737,309)。對機(jī)器人進(jìn)行軌跡規(guī)劃仿真。確定規(guī)劃標(biāo)準(zhǔn):(1)機(jī)器人不發(fā)生干涉;(2)機(jī)器人不能處于不良的姿態(tài);(3)在擰緊螺栓以及取出螺栓位置之前有一段直線路徑,在直線路徑中控制機(jī)器人直線運(yùn)動等。按標(biāo)準(zhǔn)規(guī)劃軌跡,將仿真出的軌跡應(yīng)用到Process simulate中,如圖5所示。
圖5 機(jī)器人軌跡仿真
關(guān)節(jié)角度、角速度、角加速度曲線如圖6所示,可以看出:機(jī)器人按照圖5路徑工作,既能安全完成螺栓擰緊任務(wù),又能光滑平穩(wěn)地運(yùn)動,且無振動現(xiàn)象。
圖6 機(jī)器人關(guān)節(jié)角度(a)、角速度(b)、角加速度(c)
在Process simulate中對機(jī)器人進(jìn)行運(yùn)動學(xué)編輯和姿態(tài)編輯。機(jī)器人共有6個(gè)自由度,先創(chuàng)建6個(gè)連桿,除此之外,機(jī)器人上還有其他可動部件,因此共創(chuàng)建9個(gè)連桿。在連桿中添加運(yùn)動關(guān)系,包括旋轉(zhuǎn)、移動等。重新建立機(jī)器人的TCP坐標(biāo),粗建立螺栓坐標(biāo)以及被擰緊點(diǎn)的坐標(biāo),使機(jī)器人可以到達(dá)擰緊位置。操控機(jī)器人到達(dá)該位置,精確調(diào)整坐標(biāo)方向,依據(jù)機(jī)器人姿態(tài)是否良好以及機(jī)器人是否可達(dá)來調(diào)整該位置的X、Y、Z坐標(biāo)方向。數(shù)字孿生模型如圖7所示。
圖7 螺栓擰緊機(jī)構(gòu)數(shù)字孿生模型
在數(shù)字孿生模型中新建操作,控制機(jī)器人完成螺栓擰緊工作。在工作路徑中,當(dāng)機(jī)器人的運(yùn)動線路為直線時(shí)(規(guī)劃標(biāo)準(zhǔn)(3)),將此段路經(jīng)的Motion Type從PTP改為LIN,并將Zone由Fine改為Medium。發(fā)動機(jī)螺栓擰緊過程中,機(jī)器人的速度定為300 mm/s。添加干涉檢查并對機(jī)器人進(jìn)行可達(dá)范圍測試。對機(jī)器人、螺栓擰緊頭、螺栓放置器以及發(fā)動機(jī)兩兩(除螺栓放置器及發(fā)動機(jī)外)建立干涉檢查,設(shè)置發(fā)生干涉時(shí)停止操作,依據(jù)結(jié)果判斷是否需要修改機(jī)器人擰緊路徑。
新建復(fù)合操作,包括拾放操作以及設(shè)備操作。在機(jī)器人到達(dá)拾取點(diǎn)及放置點(diǎn)前,將gun的狀態(tài)設(shè)置為wait。進(jìn)行設(shè)備操作,控制設(shè)備取出以及擰緊螺栓。待整個(gè)操作完成,設(shè)置機(jī)器人回到初始位置,便于進(jìn)行下一次操作。確認(rèn)各個(gè)點(diǎn)的坐標(biāo)以及機(jī)器人的各個(gè)姿態(tài)后,生成機(jī)器人程序如圖8所示。使用2臺機(jī)器人同時(shí)進(jìn)行發(fā)動機(jī)螺栓的擰緊工作。完成一次螺栓的擰緊后,繼續(xù)擰緊其他螺栓,生成程序并將離線生成的程序暫存到模板中。
圖8 機(jī)器人離線程序
在基于數(shù)字孿生的柔性螺栓擰緊機(jī)器人研究過程中,仿真環(huán)境與實(shí)際現(xiàn)場坐標(biāo)存在一定偏差,為保證螺栓擰緊精度,物理空間與數(shù)字空間一致性標(biāo)定成為發(fā)動機(jī)快速柔性螺栓擰緊研究實(shí)用化的關(guān)鍵。
建立坐標(biāo)系:{B}為工業(yè)機(jī)器人坐標(biāo)系;{T}為激光跟蹤儀測量坐標(biāo)系;{W}為標(biāo)定系統(tǒng)世界坐標(biāo)系。使用基于多點(diǎn)擬合與軸線矢量測量融合的方法[18]對數(shù)字空間與物理空間進(jìn)行一致性標(biāo)定,如圖9所示。
圖9 物理空間與數(shù)字空間機(jī)器人坐標(biāo)一致性轉(zhuǎn)換
機(jī)器人基座標(biāo)原點(diǎn)OB為軌跡圓C1軸線與機(jī)器人安裝平面的交點(diǎn)。工業(yè)機(jī)器人回到Home點(diǎn),使用激光跟蹤儀測量關(guān)節(jié)1和2 的軌跡點(diǎn),生成軌跡圓C1、C2,旋轉(zhuǎn)機(jī)器人關(guān)節(jié)1、2并記錄SMR坐標(biāo),擬合獲得基坐標(biāo)系Z軸與X軸的軸向單位矢量nC1和nC2,根據(jù)式(9):
R=(nC2,nC1×nC2,nC1)
(9)
(10)
(11)
機(jī)器人示教編程的缺點(diǎn)有編程技術(shù)門檻高、編程效率低、安全性差等[19]。將機(jī)器人示教編程與離線編程進(jìn)行對比,如表2所示。
表2 示教編程與離線編程對比
示教編程內(nèi)容包括:選擇坐標(biāo)系、添加移動指令、插入運(yùn)動動作(PTP、LIN等)、移動機(jī)器人、添加擰緊指令、選擇示教速度等。完成編程后對程序進(jìn)行手動檢查,確認(rèn)無誤后,才可擰緊發(fā)動機(jī)螺栓。在使用示教編程擰緊發(fā)動機(jī)的一顆螺栓時(shí),僅在選擇坐標(biāo)系一項(xiàng)工作上,示教編程就需要建立8~10個(gè)平面。而此次需要對發(fā)動機(jī)擰緊44個(gè)螺栓,所以示教編程不適用于中小批量多品種的發(fā)動機(jī)螺栓擰緊工作。因此文中使用離線編程方法完成發(fā)動機(jī)的螺栓擰緊工作。
首先構(gòu)建基于實(shí)測數(shù)據(jù)的數(shù)字孿生模型,為快速柔性擰緊發(fā)動機(jī)螺栓提供高精度模型。通過數(shù)字空間與物理空間的虛實(shí)交互實(shí)現(xiàn)發(fā)動機(jī)柔性快速螺栓擰緊,在數(shù)字空間規(guī)劃的擰緊軌跡通過離線程序輸出至擰緊機(jī)器人,機(jī)器人按規(guī)劃軌跡進(jìn)行螺栓擰緊。設(shè)計(jì)以下擰緊順序:孔1-22由機(jī)器人1完成擰緊,順序?yàn)?→22→2→21→3→……→11;孔23-44由機(jī)器人2完成擰緊,擰緊順序?yàn)?3→44→24→43→25→……→34,如圖10所示。
圖10 機(jī)器人柔性螺栓擰緊現(xiàn)場
圖10 螺栓擰緊順序
在物理空間與數(shù)字空間坐標(biāo)標(biāo)定后,在Process simulate中查看是否有擰緊偏差,若有,則向物理空間設(shè)備反饋偏差信息,物理空間設(shè)備以反饋的數(shù)字空間偏差信息為基礎(chǔ),進(jìn)行閉環(huán)控制調(diào)整;若沒有,則控制機(jī)器人完成發(fā)動機(jī)螺栓擰緊工作,如圖11所示。
進(jìn)行3次擰緊實(shí)驗(yàn),每次分別擰緊44顆螺栓,結(jié)果如表3所示。
表3 離線編程與示教編程擰緊對比
如表3所示,使用文中提出的機(jī)器人離線編程方法無論是速度、效率、安全性較示教編程都大大提高。
文中主要研究基于數(shù)字孿生的快速、柔性擰緊發(fā)動機(jī)螺栓的方法,解決了示教編程剛性裝配引起的螺栓擰緊效率低下、不能應(yīng)對中小批量多類型的發(fā)動機(jī)螺栓擰緊問題。通過螺栓擰緊過程數(shù)字孿生仿真離線生成機(jī)器人程序,利用物理空間與數(shù)字空間一致性標(biāo)定消除仿真環(huán)境與現(xiàn)場坐標(biāo)的偏差。消除偏差后修改程序,而后套入模板將它導(dǎo)入至機(jī)器人控制器中,操控機(jī)器人完成航空發(fā)動機(jī)的螺栓擰緊工作。研究結(jié)果表明:文中提出的方法無論是安全性還是工作效率,都遠(yuǎn)遠(yuǎn)優(yōu)于傳統(tǒng)的示教編程方法,研究的方法更為不同型號的航空發(fā)動機(jī)螺栓擰緊提供了決策級新手段,提高了擰緊效率,從而為研究中小批量多類型的發(fā)動機(jī)柔性快速螺栓擰緊技術(shù)提供了理論依據(jù)和技術(shù)參考。
在今后的研究中,將對使用此方法擰緊的螺栓以及航空發(fā)動機(jī)噴管、燃燒室的變形以及應(yīng)力進(jìn)行研究,更深入地研究航空發(fā)動機(jī)的螺栓擰緊問題。