羅建軍,王嘉文,王明明,劉 聰
(1. 西北工業(yè)大學(xué)深圳研究院,深圳 518057;2. 西北工業(yè)大學(xué)航天學(xué)院航天飛行動(dòng)力學(xué)技術(shù)重點(diǎn)實(shí)驗(yàn)室,西安 710072)
隨著航天技術(shù)的進(jìn)步與應(yīng)用需求的拓展,代表國(guó)家科技實(shí)力的空間站、空間反射鏡、通信天線、太陽(yáng)能電站、地外基地等空間大型平臺(tái)和基礎(chǔ)設(shè)施的建設(shè)需求日益迫切??臻g在軌服務(wù)可以拓展人類的太空活動(dòng),幫助人類進(jìn)行更廣泛、更深入、更創(chuàng)新的空間探索活動(dòng)[1]。而一些體積或質(zhì)量較大的空間設(shè)施無(wú)法通過(guò)運(yùn)載火箭一次部署完成,需多次發(fā)射在空間中進(jìn)行組裝構(gòu)建。空間在軌裝配是指在太空中,將不同的部件連接起來(lái),構(gòu)建成為一個(gè)由結(jié)構(gòu)、子系統(tǒng)或子系統(tǒng)的單元體等組成的空間設(shè)施。在軌裝配擴(kuò)大了我們?cè)O(shè)計(jì)任務(wù)的空間,增加了人類太空活動(dòng)的多樣性[2-3]??臻g在軌裝配技術(shù)未來(lái)的發(fā)展方向是空間自主裝配,而智能裝配序列規(guī)劃是實(shí)現(xiàn)裝配智能化、自主化、自動(dòng)化的關(guān)鍵問(wèn)題。智能裝配序列規(guī)劃的意義在于檢測(cè)出可行的裝配序列,在考慮各種裝配過(guò)程約束的情況下,尋找最優(yōu)的裝配序列。根據(jù)裝配序列,對(duì)裝配過(guò)程的各個(gè)方面進(jìn)行更優(yōu)的設(shè)計(jì)和安排。另外,合理的裝配順序有利于提高裝配效率,降低裝配成本。裝配序列的自動(dòng)生成和優(yōu)化對(duì)于整個(gè)任務(wù)的進(jìn)行至關(guān)重要[4]。
從20世紀(jì)70年代開始,NASA蘭利研究中心就進(jìn)行了一系列的研究[5]。1980年,該中心在地面零重力模擬池中進(jìn)行了手動(dòng)裝配四面體的實(shí)驗(yàn)[6]。1985年11月,在“亞特蘭蒂斯”號(hào)航天飛機(jī)上,兩名航天員手動(dòng)裝配一個(gè)13.7 m的桁架結(jié)構(gòu),以此評(píng)價(jià)手動(dòng)裝配的有效性[7]。隨著機(jī)器人技術(shù)與空間機(jī)械臂的發(fā)展,自主裝配成為空間裝配更好的解決方式,也是未來(lái)發(fā)展的趨勢(shì)[8-14]。
針對(duì)空間結(jié)構(gòu)的在軌裝配序列規(guī)劃方法,目前已有一些研究工作。可以按照是否考慮機(jī)器人的運(yùn)動(dòng),將裝配序列規(guī)劃分為兩類。對(duì)于不考慮機(jī)器人運(yùn)動(dòng)裝配的問(wèn)題,通常利用圖論的方法建立可行解,采用軟計(jì)算的方法求最優(yōu)序列。其中,Bonneville等[15]使用了遺傳算法進(jìn)行求解。Chen等[16]對(duì)遺傳算法進(jìn)行了改進(jìn),加入交叉變異操作以解決算法陷入局部最優(yōu)的問(wèn)題。Lazzerini等[17]使用了分段編碼的遺傳算法,提高了求解速度。Hong等[18]提出了一種具有啟發(fā)式工作規(guī)則的三階段集成方法,以幫助計(jì)劃器生成最佳和最有效的裝配序列,最后使用反向神經(jīng)網(wǎng)絡(luò)方法進(jìn)行求解。Cao等[19]研究了一種新的免疫算法在裝配序列中的應(yīng)用。并將兩種人工免疫算法模型(骨髓模型與否定選擇算法)相結(jié)合,縮短了計(jì)算時(shí)間。Motavalli等[20]使用模擬退火算法給出了用于序列優(yōu)化的評(píng)價(jià)函數(shù)。Wang等[21]利用離散粒子群算法對(duì)裝配序列進(jìn)行求解。Bahubalendruni等[22]則考慮裝配過(guò)程中的機(jī)器人避撞與能量消耗,用粒子群算法求解最優(yōu)裝配序列。曾冰等[23]提出利用螢火蟲算法進(jìn)行序列規(guī)劃。Li等[24]對(duì)螢火蟲算法進(jìn)行了改進(jìn),賦予螢火蟲可變視距的能力,提升了螢火蟲算法的性能。Failli和Dini[25]首先使用螞蟻系統(tǒng)進(jìn)行序列檢測(cè)和優(yōu)化,Wang等[26]提出了一種新的蟻群算法來(lái)生成和優(yōu)化產(chǎn)品的裝配序列。郭繼峰等[27]將桁架系統(tǒng)進(jìn)行分層規(guī)劃,并用蟻群算法求解。梁麗芬等[28]結(jié)合基于模型定義技術(shù),采用混沌粒子群算法對(duì)裝配序列進(jìn)行求解。
利用機(jī)器人進(jìn)行裝配的序列規(guī)劃問(wèn)題與傳統(tǒng)的序列規(guī)劃不同,需要考慮機(jī)器人對(duì)整個(gè)裝配過(guò)程的影響。文獻(xiàn)[25]考慮了機(jī)器人的可抓捕性與裝配方向,并對(duì)可裝配性進(jìn)行定義,完成了考慮機(jī)器人的裝配單元裝配序列規(guī)劃。文獻(xiàn)[29]對(duì)多機(jī)器人裝配問(wèn)題進(jìn)行分析,將其轉(zhuǎn)化為約束滿足問(wèn)題。通過(guò)對(duì)可行的重抓取進(jìn)行假設(shè),將約束滿足問(wèn)題進(jìn)行解耦,分解為獨(dú)立的小問(wèn)題,使求解速度大幅度提高。文獻(xiàn)[25, 29]只考慮了機(jī)器人對(duì)裝配過(guò)程的影響,并沒(méi)有對(duì)各機(jī)器人的規(guī)劃與控制進(jìn)行具體設(shè)計(jì)與求解,而本文具體分析了機(jī)器人的運(yùn)動(dòng),并設(shè)計(jì)了關(guān)節(jié)軌跡與控制器。文獻(xiàn)[30]將機(jī)器人裝配序列規(guī)劃問(wèn)題分為兩層,邏輯層與物理層。在邏輯層中規(guī)劃序列,并通過(guò)物理層進(jìn)行檢測(cè)并反饋,對(duì)邏輯層規(guī)劃結(jié)果進(jìn)行改進(jìn)。引入了反饋機(jī)制,提高機(jī)器人裝配序列規(guī)劃效率,但是沒(méi)有考慮機(jī)器人在整個(gè)裝配過(guò)程中的控制問(wèn)題。文獻(xiàn)[31]分析了利用機(jī)器人構(gòu)建張拉結(jié)構(gòu)的序列規(guī)劃問(wèn)題,利用基于采樣的運(yùn)動(dòng)規(guī)劃方法。文獻(xiàn)[32]對(duì)機(jī)器人增材制造三維桁架的自動(dòng)序列和運(yùn)動(dòng)規(guī)劃問(wèn)題進(jìn)行了研究,并提出了一個(gè)新的層級(jí)式規(guī)劃框架,以解決通常規(guī)劃時(shí)間長(zhǎng)、配置復(fù)雜的擠出式序列和運(yùn)動(dòng)規(guī)劃問(wèn)題。文獻(xiàn)[31-32]中沒(méi)有考慮機(jī)器人的裝配操作,只對(duì)機(jī)器人的末端軌跡進(jìn)行了規(guī)劃。本文考慮裝配運(yùn)動(dòng)的特殊性,對(duì)機(jī)器人裝配動(dòng)作進(jìn)行了特殊設(shè)計(jì),引入力反饋設(shè)計(jì),增加了裝配的可靠性。文獻(xiàn)[33]針對(duì)裝配過(guò)程中機(jī)器人在桁架上的攀爬移動(dòng)問(wèn)題,對(duì)機(jī)器人的移動(dòng)步態(tài)進(jìn)行了分析。文獻(xiàn)[34]提出一種基于強(qiáng)化學(xué)習(xí)的自適應(yīng)方式,在四旋翼無(wú)人機(jī)裝配桁架結(jié)構(gòu)的背景下,求解了桁架裝配順序與無(wú)人機(jī)裝配時(shí)的路徑規(guī)劃問(wèn)題。
本文針對(duì)采用機(jī)器人在軌構(gòu)建空間桁架結(jié)構(gòu)的裝配序列規(guī)劃問(wèn)題,設(shè)計(jì)了機(jī)器人裝配系統(tǒng),并圍繞此系統(tǒng),提出了一種可同時(shí)求解機(jī)器人運(yùn)動(dòng)規(guī)劃與控制的序列規(guī)劃方法。在裝配系統(tǒng)設(shè)計(jì)方面,本文采用仿生設(shè)計(jì)方法,設(shè)計(jì)了具有雙末端執(zhí)行器的裝配機(jī)器人;在機(jī)器人運(yùn)動(dòng)規(guī)劃與控制方面,本文設(shè)計(jì)了機(jī)器人的攀爬運(yùn)動(dòng)規(guī)劃與軌跡跟蹤控制方法以及裝配運(yùn)動(dòng)規(guī)劃與力控制方法;在序列規(guī)劃尋優(yōu)方面,本文建立了考慮機(jī)器人運(yùn)動(dòng)路徑與控制能耗的評(píng)價(jià)指標(biāo),并采用離散粒子群算法對(duì)其進(jìn)行求解。在仿真方面,本文構(gòu)建了采用所設(shè)計(jì)機(jī)器人進(jìn)行空間桁架裝配的任務(wù)場(chǎng)景,求解得到裝配序列與機(jī)器人運(yùn)動(dòng)與控制,校驗(yàn)了本文方法的有效性與先進(jìn)性。
區(qū)別于之前的序列規(guī)劃方法,本文的方法具有如下三方面優(yōu)勢(shì):首先,分析了機(jī)器人在裝配過(guò)程中的運(yùn)動(dòng)與控制方法。第二,在傳統(tǒng)序列規(guī)劃求解裝配單元裝配序列的基礎(chǔ)上,還可以得到機(jī)器人運(yùn)動(dòng)等信息。第三,建立了考慮機(jī)器人的運(yùn)動(dòng)路徑與燃料消耗的裝配序列評(píng)價(jià)函數(shù),保證機(jī)器人運(yùn)動(dòng)路徑最短,能耗最低。
本文基于仿生學(xué)理念,參考蛇的構(gòu)型以及猴子等攀爬類動(dòng)物的動(dòng)作,設(shè)計(jì)了靈活、自由的裝配機(jī)器人。該機(jī)器人具有兩個(gè)末端執(zhí)行器,皆可抓持在空間桁架結(jié)構(gòu)上。抓持在空間桁架結(jié)構(gòu)上的末端執(zhí)行器即可視為基座。在進(jìn)行移動(dòng)操作時(shí),可通過(guò)改變機(jī)器人構(gòu)型,同時(shí)兩個(gè)末端執(zhí)行器輪流抓持空間桁架結(jié)構(gòu),完成機(jī)器人在空間桁架結(jié)構(gòu)上的移動(dòng)。在進(jìn)行裝配操作時(shí),可使機(jī)器人一端抓持住空間桁架結(jié)構(gòu)充當(dāng)基座,另一端完成裝配操作。
裝配機(jī)器人可根據(jù)任務(wù)要求設(shè)置自由度,一般采用六自由度或以上(見(jiàn)圖1),以增加機(jī)器人的靈活性。機(jī)器人采用模塊化的設(shè)計(jì)思想,各個(gè)關(guān)節(jié)由彼此獨(dú)立的模塊連接而成,可以根據(jù)不同的任務(wù)需求改變機(jī)器人的自由度以及構(gòu)型配置,也可以通過(guò)改變執(zhí)行器結(jié)構(gòu)以完成不同的任務(wù)。
圖1 機(jī)器人裝配空間桁架結(jié)構(gòu)示意圖Fig.1 Illustration of robot assembly space structure
(1)
圖2 裝配機(jī)器人的一般模型Fig.2 General model of assembly robot
(2)
(3)
式中:δt為求解步長(zhǎng)。當(dāng)裝配機(jī)器人末端執(zhí)行器切換充當(dāng)基座時(shí),機(jī)器人的廣義坐標(biāo)與D-H參數(shù)發(fā)生變化,需要重新進(jìn)行建模。為求解方便,裝配機(jī)器人一般采用對(duì)稱設(shè)計(jì),在末端執(zhí)行器切換時(shí),只需將對(duì)稱關(guān)節(jié)角進(jìn)行交換定義即可。
本文根據(jù)控制策略的不同,將機(jī)器人運(yùn)動(dòng)分為巡游運(yùn)動(dòng)與裝配運(yùn)動(dòng)兩類。巡游運(yùn)動(dòng)完成機(jī)器人在空間桁架結(jié)構(gòu)上的移動(dòng),裝配運(yùn)動(dòng)完成各裝配單元間的裝配。
由于機(jī)器人運(yùn)行在空間環(huán)境,因此,設(shè)計(jì)裝配機(jī)器人的運(yùn)動(dòng)步態(tài)時(shí),需確??煽啃浴?/p>
當(dāng)裝配機(jī)器人在同一根桿上需要向前移動(dòng)時(shí),本文設(shè)計(jì)了滑行運(yùn)動(dòng)步態(tài)(見(jiàn)圖3)。在受到干擾時(shí),兩個(gè)末端執(zhí)行器夾爪皆可迅速抓緊桿件,保證裝配機(jī)器人的安全?;羞\(yùn)動(dòng)步態(tài)具體運(yùn)動(dòng)步驟如下:
1)機(jī)器人位于初始位置,由夾爪1支撐整個(gè)機(jī)器人,夾爪2逐漸松開。
2)機(jī)器人開始收縮中間關(guān)節(jié),使夾爪2沿著桿件滑行移動(dòng)到預(yù)定位置。
3)夾爪2逐漸夾緊,夾爪1松開,完成機(jī)器人基座轉(zhuǎn)換。重復(fù)此動(dòng)作完成機(jī)器人的移動(dòng)。
圖3 滑行運(yùn)動(dòng)步態(tài)Fig.3 Sliding gait
圖4 翻轉(zhuǎn)運(yùn)動(dòng)步態(tài)Fig.4 Turnover gait
當(dāng)裝配機(jī)器人需要在兩根桿間完成跨越時(shí),要求裝配機(jī)器人步態(tài)較大,本文在此設(shè)計(jì)了翻轉(zhuǎn)運(yùn)動(dòng)步態(tài)(見(jiàn)圖4)。翻轉(zhuǎn)運(yùn)動(dòng)步態(tài)具體運(yùn)動(dòng)步驟如下:
1)機(jī)器人位于初始位置,由夾爪1支撐整個(gè)機(jī)器人,夾爪2逐漸松開。
2)機(jī)器人中間關(guān)節(jié)開始運(yùn)動(dòng),夾爪2慢慢遠(yuǎn)離桿件,使機(jī)器人完成整體翻轉(zhuǎn)。
3)夾爪2運(yùn)動(dòng)到預(yù)定位置,夾爪1松開,完成機(jī)器人基座轉(zhuǎn)換;重復(fù)此動(dòng)作完成機(jī)器人的移動(dòng)。
在設(shè)計(jì)機(jī)器人關(guān)節(jié)軌跡后,采用逆動(dòng)力學(xué)控制對(duì)所設(shè)計(jì)軌跡進(jìn)行跟蹤,關(guān)節(jié)控制律為:
(4)
式中:ν為輔助控制輸入。
(5)
求得誤差動(dòng)力學(xué)為:
(6)
選取合適的增益矩陣KVT與KPT即可保證控制系統(tǒng)穩(wěn)定。
當(dāng)裝配機(jī)器人需要執(zhí)行裝配操作時(shí),首先從初始狀態(tài)運(yùn)動(dòng)到裝配準(zhǔn)備狀態(tài),隨后夾持裝配單元桿件,開始進(jìn)行裝配運(yùn)動(dòng)(見(jiàn)圖5)。具體步驟如下:
1)機(jī)器人位于初始位置,由夾爪1支撐整個(gè)機(jī)器人,夾爪2逐漸松開。
2)機(jī)器人中間關(guān)節(jié)開始運(yùn)動(dòng),夾爪2慢慢遠(yuǎn)離桿件,機(jī)器人整體翻轉(zhuǎn),直到夾爪2運(yùn)動(dòng)到預(yù)定位置,機(jī)器人進(jìn)入裝配準(zhǔn)備狀態(tài)。
3)夾爪2夾緊裝配單元桿件,完成裝配運(yùn)動(dòng)。
圖5 裝配機(jī)器人裝配運(yùn)動(dòng)示意圖Fig.5 Illustration of assembly movement of assembly robot
機(jī)器人從初始狀態(tài)運(yùn)行至裝配準(zhǔn)備狀態(tài)時(shí),依然采用第2.1節(jié)的規(guī)劃與控制方法。在裝配開始后,首先完成機(jī)器人末端執(zhí)行器z軸方向上的力控制,然后再保持接觸力,完成x-y平面上的遍歷搜索。具體流程如圖6所示。
圖6 裝配運(yùn)動(dòng)流程圖Fig.6 Assembly motion flow chart
在建模時(shí),本文忽略機(jī)器人的柔性,將機(jī)器人建模為剛體,將機(jī)器人接觸的環(huán)境,也就是桁架結(jié)構(gòu)的桿件,建模為柔性體,其剛度用KP表示。當(dāng)機(jī)器人末端與環(huán)境接觸產(chǎn)生微小位移δx時(shí),所產(chǎn)生的彈性恢復(fù)力為:
F=-Kpδx
(7)
(8)
設(shè)計(jì)機(jī)器人在末端執(zhí)行器z軸方向上的柔順控制律為:
(9)
本文力位混合控制器采用R-C控制器,R-C控制器不考慮力控制與位置控制動(dòng)態(tài)耦合的影響。因此,機(jī)器人裝配過(guò)程中兩個(gè)階段的控制力為:
(10)
傳統(tǒng)裝配序列規(guī)劃只對(duì)裝配單元進(jìn)行建模,求解各裝配單元的裝配順序。而針對(duì)采用機(jī)器人進(jìn)行裝配的序列規(guī)劃問(wèn)題,還應(yīng)考慮機(jī)器人的規(guī)劃與控制。將傳統(tǒng)的裝配序列規(guī)劃問(wèn)題(ASP)轉(zhuǎn)變成任務(wù)與運(yùn)動(dòng)規(guī)劃問(wèn)題(TAMP)。
與傳統(tǒng)的裝配序列規(guī)劃相同,首先衡量裝配單元之間的關(guān)系。根據(jù)裝配桁架結(jié)構(gòu),計(jì)算裝配關(guān)系矩陣[36]。在本文中,裝配關(guān)系矩陣包括干涉矩陣、連接矩陣和支撐矩陣三種。
除此之外,本文所規(guī)劃的裝配序列考慮了機(jī)器人對(duì)裝配的影響,其中包括裝配過(guò)程中的機(jī)器人運(yùn)動(dòng)路徑最短,能耗最小,因此建立機(jī)器人裝配的運(yùn)動(dòng)模型。本文基于圖論理論將機(jī)器人運(yùn)動(dòng)環(huán)境建模為無(wú)向圖,隨后采用A*算法求解裝配路徑。因此本文假設(shè)機(jī)器人消耗的能量只有關(guān)節(jié)驅(qū)動(dòng)部分。根據(jù)第2節(jié)求出的機(jī)器人關(guān)節(jié)控制力矩,建立機(jī)器人絕對(duì)值形式的能量消耗評(píng)價(jià)函數(shù):
(11)
本文針對(duì)機(jī)器人裝配空間桁架結(jié)構(gòu)的特點(diǎn),采用四個(gè)評(píng)價(jià)指標(biāo):裝配可行性,裝配穩(wěn)定性,裝配路徑與裝配能耗。前兩個(gè)指標(biāo)描述裝配單元的裝配情況,文獻(xiàn)[37]已經(jīng)敘述了其計(jì)算方法。后兩個(gè)指標(biāo)描述裝配過(guò)程中機(jī)器人的情況,計(jì)算方法如下:
1)裝配路徑
裝配路徑表示在裝配過(guò)程中,各機(jī)器人所運(yùn)動(dòng)的路徑長(zhǎng)度之和。建模為無(wú)向圖G=(V,E),并計(jì)算SR(Σ)=[SR(Σ),SR0(Σ)],nl=nl+nl0。所有裝配單元檢測(cè)完成后,輸出各機(jī)器人路徑SR(Σ)與機(jī)器人運(yùn)動(dòng)路徑之和nl。顯然,nl越小,機(jī)器人行駛總路徑越短,裝配越優(yōu)。
2)裝配能耗
裝配能耗表示在裝配過(guò)程中,各機(jī)器人消耗能量之和,將其定義為ne。對(duì)于裝配序列{P1,P2,…,Pn},在計(jì)算完機(jī)器人路徑SR(Σ)后,根據(jù)4.4能耗計(jì)算方法,求解機(jī)器人能耗F,令ne=F,并輸出各機(jī)器人運(yùn)動(dòng)規(guī)劃qd與控制律τ。顯然,ne越小,機(jī)器人消耗總能量越小,對(duì)裝配有利。
將以上評(píng)價(jià)指標(biāo)進(jìn)行歸一處理,建立函數(shù)模型,準(zhǔn)確評(píng)價(jià)裝配序列的優(yōu)劣。對(duì)于序列{P1,P2,…,Pn},其評(píng)價(jià)函數(shù)為:
(12)
裝配評(píng)價(jià)指標(biāo)中,(1)、(2)兩個(gè)指標(biāo)為約束指標(biāo),不滿足該指標(biāo)的裝配序列無(wú)法完成裝配。因此,滿足裝配序列可行的約束條件為:
(13)
其中,nc代表裝配穩(wěn)定性,ns代表裝配支撐性,nl代表裝配路徑,ne代表裝配能耗。ω1,ω2,ω3,ω4分別代表各指標(biāo)權(quán)重系數(shù),且ω1+ω2+ω3+ω4=1。各權(quán)重系數(shù)可根據(jù)不同裝配的不同需求制定。而約束條件代表裝配序列滿足的前提條件,即在裝配每一步都需要是穩(wěn)定的且每一步都有可進(jìn)行裝配的方向,即與之前的裝配不發(fā)生干涉。
空間桁架在軌裝配序列規(guī)劃是一個(gè)離散整數(shù)組合優(yōu)化問(wèn)題。在此采用離散粒子群算法求解。在裝配序列規(guī)劃中,裝配序列為待優(yōu)化項(xiàng)。因此,用粒子i的位置表示裝配序列,粒子i的維數(shù)即為裝配單元個(gè)數(shù)。粒子i的位置表示如下:
Xi=(xi1,xi2,…,xin)
(14)
其中,xij為從1~n互斥的整數(shù),n為粒子i的維數(shù),即裝配單元個(gè)數(shù)。xij表示粒子i的j維分量,代表裝配序列Xi的第j個(gè)裝配單元。初始裝配序列可以隨機(jī)生成,也可以人為輔助給出。粒子的速度決定粒子位置的改變,與粒子位置維數(shù)相同。因粒子中所有元素互不相同,因此粒子速度可看成對(duì)粒子位置中元素位置的調(diào)整。粒子i的速度表示為:
在多方共贏的工學(xué)結(jié)合培養(yǎng)模式下,本專業(yè)教學(xué)水平全方面提升,教師專業(yè)技能得到鍛煉,近年來(lái)連續(xù)獲得省級(jí)技能競(jìng)賽二等獎(jiǎng),行業(yè)競(jìng)賽一等獎(jiǎng)等教學(xué)成果;課程內(nèi)容進(jìn)一步完善,不斷產(chǎn)生教學(xué)改革、課程改革等項(xiàng)目;學(xué)生就業(yè)率與對(duì)口率逐漸提高。學(xué)院在合作過(guò)程中大量減少校外實(shí)習(xí)基地建設(shè)精力與經(jīng)費(fèi),同時(shí)節(jié)約教師專業(yè)技能培訓(xùn)開支。通過(guò)技術(shù)工作室外包服務(wù)孵化學(xué)生創(chuàng)業(yè),產(chǎn)生校園創(chuàng)業(yè)項(xiàng)目,與企業(yè)合作范圍不斷擴(kuò)大過(guò)程中提高學(xué)院在行業(yè)中的知名度,提高相關(guān)專業(yè)就業(yè)情況。
Vi=(vi1,vi1,…,vin)
(15)
其中,vin表示粒子i第n個(gè)裝配單元的速度,初始粒子速度隨機(jī)生成。
由于裝配序列具有的特殊性質(zhì),需要對(duì)粒子速度與位置作出約束,粒子位置中的元素應(yīng)包含所有裝配單元編號(hào)且不能重復(fù)。因此對(duì)粒子與運(yùn)算準(zhǔn)則進(jìn)行重新定義[38],采用下式對(duì)粒子i的速度與位置進(jìn)行更新:
(16)
式中:w為參數(shù)慣性權(quán)重,其控制前一代速度Vi(t)對(duì)此時(shí)速度Vi(t+1)的影響;c1與c2為學(xué)習(xí)因子,c1控制個(gè)體歷史最優(yōu)位置Pi(t)對(duì)速度Vi(t+1)的影響;c2控制全局最優(yōu)位置Pg(t)對(duì)當(dāng)前速度Vi(t+1)的影響。
為了證實(shí)所提出的在軌裝配序列規(guī)劃的方法,本文以7自由度機(jī)器人裝配常用空間桁架結(jié)構(gòu)為仿真場(chǎng)景,在第4.1節(jié)中對(duì)機(jī)器人、桁架及仿真需要的各項(xiàng)參數(shù)進(jìn)行定義;在第4.2節(jié)中分析并驗(yàn)證了裝配過(guò)程中的機(jī)器人運(yùn)動(dòng)以及控制器設(shè)計(jì)的有效性;在第4.3節(jié)中驗(yàn)證了該桁架結(jié)構(gòu)的裝配序列,并最終給出機(jī)器人在整個(gè)裝配任務(wù)中的運(yùn)動(dòng)規(guī)劃與控制。
本文以文獻(xiàn)[39]中所述空間桁架基礎(chǔ)結(jié)構(gòu)為例設(shè)計(jì)仿真場(chǎng)景,圖7所示,該結(jié)構(gòu)在空間可進(jìn)行平鋪與擴(kuò)展,是空間眾多設(shè)施構(gòu)建的基礎(chǔ)結(jié)構(gòu)。因單個(gè)桿件安裝復(fù)雜度較高,本文將基礎(chǔ)結(jié)構(gòu)分解成三個(gè)四面體與六根單桿,一共九個(gè)裝配單元進(jìn)行研究,以減少裝配操作,提高裝配效率與可靠性。且四面體設(shè)計(jì)為可折疊結(jié)構(gòu),采用折疊與裝配共同構(gòu)建大型空間桁架的方法,綜合各方面的優(yōu)點(diǎn),既可減少裝配單元數(shù)量與裝配操作,也可以構(gòu)建大型結(jié)構(gòu)。
圖7 空間桁架基礎(chǔ)結(jié)構(gòu)示意圖Fig.7 Illustration of space truss foundation structure
機(jī)器人采用7自由度,具有兩個(gè)末端執(zhí)行器,機(jī)器人具體動(dòng)力學(xué)參數(shù)如表1所示。
機(jī)器人在整個(gè)裝配中的運(yùn)動(dòng)分為兩部分:同一根桿上的移動(dòng)與兩根桿之間的跨越。根據(jù)第2.1節(jié)規(guī)劃的滑行運(yùn)動(dòng)步態(tài),機(jī)器人規(guī)劃初始關(guān)節(jié)角q0=[0,π/3,0,π/3,0,π/3,0],切換末端執(zhí)行器時(shí)規(guī)劃目標(biāo)關(guān)節(jié)角為qt_s=[0,π/8,0,3π/4,0,π/8,0],本文采用三次多項(xiàng)式插值法規(guī)劃關(guān)節(jié)軌跡。在控制器設(shè)計(jì)中,為驗(yàn)證控制器性能,給出機(jī)器人關(guān)節(jié)角初始誤差eq0=[0.02,0.1,-0.01,-0.1,0.01,-0.1,-0.02],控制律中KPT=250E,KVT=10E,E為單位矩陣。機(jī)器人完成該動(dòng)作后,末端執(zhí)行器切換充當(dāng)基座,需要重新對(duì)關(guān)節(jié)角進(jìn)行編號(hào),此時(shí)機(jī)器人目標(biāo)關(guān)節(jié)角變?yōu)槌跏缄P(guān)節(jié)角,控制機(jī)器人回到初始狀態(tài)。至此,機(jī)器人滑行運(yùn)動(dòng)一次步態(tài)完成。
表1 裝配機(jī)器人的運(yùn)動(dòng)學(xué)與動(dòng)力學(xué)參數(shù)Table 1 Kinematic and dynamic parameters of assembly robot
圖8 滑行運(yùn)動(dòng)步態(tài)機(jī)器人關(guān)節(jié)角變化Fig.8 Joint angle of robot’s sliding gait
針對(duì)本文仿真場(chǎng)景,可將異桿跨越運(yùn)動(dòng)分為60°異桿跨越運(yùn)動(dòng)步態(tài)與90°異桿跨越運(yùn)動(dòng)步態(tài)。60°跨越運(yùn)動(dòng)中,切換末端執(zhí)行器時(shí)的目標(biāo)關(guān)節(jié)角為qt_60=[0,-π/9,0,-π/9,0,-π/9,0],90°跨越運(yùn)動(dòng)中為qt_90=[0,-π/6,0,-π/6,0,-π/6,0]。關(guān)節(jié)角初始誤差為eq0,控制律中KPT和KVT與同桿運(yùn)動(dòng)相同。完成該動(dòng)作后回到初始狀態(tài),異桿跨越步態(tài)完成。
圖9展示了60°異桿跨越運(yùn)動(dòng)步態(tài)下的關(guān)節(jié)角變化。從圖9可以看出,規(guī)劃關(guān)節(jié)角變化平滑,控制器性能優(yōu)越,跟蹤誤差較小。圖10展示了90°異桿跨越運(yùn)動(dòng)步態(tài)下的關(guān)節(jié)角變化,仿真結(jié)果與60°異桿跨越運(yùn)動(dòng)步態(tài)相近,效果良好。
第一階段仿真控制機(jī)器人末端與裝配單元期望接觸力為[0,0,-2],桁架桿件剛度為300 N/m。機(jī)器人初始末端相對(duì)基座位置為[3,1,1.6],相對(duì)基座姿態(tài)為[0,0,-π/2];實(shí)際裝配時(shí)機(jī)器人末端相對(duì)基座位置為[3,1,1],力控制律設(shè)計(jì)中KP=4E,KE=8E。圖11與圖12所示為z軸方向接觸深度與接觸力變化圖。從圖11~12可以看出,接觸深度最終穩(wěn)定在0.007 mm,接觸力穩(wěn)定在2 N,完成了裝配接觸力控制的目標(biāo)。
圖9 60°異桿跨越步態(tài)機(jī)器人關(guān)節(jié)角變化Fig.9 Joint angle of robot’s 60° stride over gait
圖10 90°異桿跨越步態(tài)機(jī)器人關(guān)節(jié)角變化Fig.10 Joint angle of robot’s 90° stride over gait
圖11 z軸接觸深度Fig.11 Contact depth of z-axis
圖12 z軸接觸力Fig.12 Contact force of z-axis
圖13展示了裝配第一階段下的關(guān)節(jié)控制力矩變化。從圖13可以看出,關(guān)節(jié)控制力矩最終趨于穩(wěn)定,但是不都為零,這是因?yàn)榇瞬糠株P(guān)節(jié)力矩用來(lái)保持接觸力穩(wěn)定。
圖13 裝配第一階段機(jī)器人關(guān)節(jié)控制力矩變化Fig.13 Joint control torque of assembly first stage
第一階段仿真控制機(jī)器人在z軸保持接觸力的同時(shí),在x-y平面進(jìn)行螺旋遍歷搜索。跟蹤控制律設(shè)計(jì)中KPT=300E,KET=20E。圖14所示為機(jī)器人末端軌跡圖。從圖14可以看出,所設(shè)計(jì)控制律跟蹤效果優(yōu)秀,允許裝配范圍覆蓋末端軌跡經(jīng)過(guò)的所有區(qū)域,在裝配出現(xiàn)誤差且無(wú)視覺(jué)輔助情況下,可消除誤差,成功裝配。
圖14 裝配第二階段機(jī)器人末端位置變化Fig.14 End-effector position of assembly second stage
本仿真中假設(shè)裝配單元之間皆為穩(wěn)定連接。在桁架標(biāo)注抓取點(diǎn)并建立無(wú)向圖如圖15所示。
圖15 抓取點(diǎn)編號(hào)及無(wú)向圖建模Fig.15 Grab point number and modelling graph model
本文中裝配能耗采用絕對(duì)值形式進(jìn)行計(jì)算,圖16展示了一次巡游運(yùn)動(dòng)與裝配運(yùn)動(dòng)下的機(jī)器人能耗變化圖。
圖16 巡游運(yùn)動(dòng)與裝配運(yùn)動(dòng)能耗變化Fig.16 Energy consumption of patrol and assembly movement
本文仿真在求解時(shí),假設(shè):1)裝配環(huán)境不存在重力,且各裝配單元之間連接都為穩(wěn)定連接;2)機(jī)器人在運(yùn)動(dòng)過(guò)程中無(wú)外界干擾,在裝配過(guò)程中無(wú)誤差;3)不考慮機(jī)器人運(yùn)輸與拾取裝配單元的操作;4)編號(hào)為1,2,3的四面體裝配單元,在每條邊上機(jī)器人只需要一步即可跨越至相鄰桿。而編號(hào)4,5,6,7,8,9的六個(gè)單桿裝配單元,機(jī)器人需要做一步同桿移動(dòng)的動(dòng)作,方可跨越至相鄰桿。
基于上述假設(shè),評(píng)價(jià)函數(shù)式(12)中ω1=ω2=0,考慮機(jī)器人路徑與能耗對(duì)裝配過(guò)程的影響,在此設(shè)置ω3=0.3,ω4=0.7。種群數(shù)量為20,進(jìn)化次數(shù)為500。學(xué)習(xí)因子c1=0.2,c2=0.8。取w=0.4,0.7,0.9時(shí),得到適應(yīng)度函數(shù)變化曲線,如圖17所示。
圖17 參數(shù)慣性權(quán)重w對(duì)適應(yīng)度的影響Fig.17 The influence of parameter inertial weight w on fitness function
從圖17可以看出,最終適應(yīng)度函數(shù)fmin=1.6111,與其對(duì)應(yīng)的最優(yōu)序列、機(jī)器人運(yùn)動(dòng)路徑、機(jī)器人動(dòng)作等裝配規(guī)劃如表2所示。
表2 機(jī)器人裝配桁架的序列規(guī)劃Table 2 Sequence planning of robot assembly truss
圖18展示了機(jī)器人在整個(gè)過(guò)程中的運(yùn)動(dòng)路徑變化,與表2中的機(jī)器人運(yùn)動(dòng)路徑一一對(duì)應(yīng)。
圖18 裝配中的機(jī)器人運(yùn)動(dòng)路徑規(guī)劃圖Fig.18 Robot motion path planning in the assembly process
圖19~圖21展示了整個(gè)裝配過(guò)程中的關(guān)節(jié)角、關(guān)節(jié)控制力矩以及能耗變化。橫坐標(biāo)的一個(gè)刻度代表機(jī)器人的一個(gè)動(dòng)作,與表2中規(guī)劃?rùn)C(jī)器人動(dòng)作一一對(duì)應(yīng)。點(diǎn)劃豎線代表末端執(zhí)行器切換時(shí)刻,與表2中是否需要切換末端執(zhí)行器一一對(duì)應(yīng)。圖19~21可看出機(jī)器人關(guān)節(jié)角運(yùn)動(dòng)曲線平滑,所設(shè)計(jì)控制律跟蹤誤差小,每個(gè)階段機(jī)器人運(yùn)動(dòng)后都回到初始狀態(tài)。關(guān)節(jié)控制力矩可用來(lái)指導(dǎo)各關(guān)節(jié)舵機(jī)的選擇。機(jī)器人能耗可用來(lái)指導(dǎo)機(jī)器人能量?jī)?chǔ)備規(guī)劃。
圖19 整個(gè)裝配過(guò)中的機(jī)器人關(guān)節(jié)角變化圖Fig.19 Joint angle in the whole assembly process
圖20 整個(gè)裝配過(guò)中的機(jī)器人關(guān)節(jié)控制力矩變化圖Fig.20 Joint control torque in the whole assembly process
圖21 整個(gè)裝配過(guò)中的機(jī)器人關(guān)節(jié)能耗變化圖Fig.21 Energy consumption in the whole assembly process
本文針對(duì)機(jī)器人在軌裝配空間桁架結(jié)構(gòu)的序列規(guī)劃問(wèn)題,提出了一種考慮機(jī)器人運(yùn)動(dòng)的序列規(guī)劃方法。在求解裝配單元最優(yōu)裝配序列的同時(shí),可給出機(jī)器人裝配過(guò)程中的規(guī)劃與控制序列。首先,設(shè)計(jì)了在軌裝配的機(jī)器人系統(tǒng)并對(duì)其建模;然后,設(shè)計(jì)了任務(wù)中機(jī)器人的運(yùn)動(dòng)規(guī)劃與控制器,對(duì)機(jī)器人滑行步態(tài)、異桿跨越步態(tài)進(jìn)行了仿真,關(guān)節(jié)角變化平穩(wěn)、控制器跟蹤準(zhǔn)確,跟蹤誤差小;并以軸孔裝配為目標(biāo),在裝配出現(xiàn)誤差且無(wú)視覺(jué)輔助的情況下,消除了誤差影響,成功裝配。隨后,建立機(jī)器人在軌裝配空間桁架結(jié)構(gòu)的評(píng)價(jià)指標(biāo)并尋優(yōu)。在考慮裝配可行性、裝配穩(wěn)定性、裝配路徑與裝配能耗的影響下,在得到裝配單元裝配序列的同時(shí),可得到機(jī)器人的運(yùn)動(dòng),這對(duì)裝配機(jī)器人設(shè)計(jì)與裝配任務(wù)規(guī)劃具有重要意義。