吳劍威,崔繼文,史士財,譚久彬
(1.哈爾濱工業(yè)大學(xué)超精密光電儀器工程研究所,150080哈爾濱;2.機器人技術(shù)與系統(tǒng)國家重點實驗室(哈爾濱工業(yè)大學(xué)),150080哈爾濱)
隨著空間技術(shù)的不斷發(fā)展,對于未來航天器長壽命周期和高可靠性的要求將越發(fā)趨于嚴格.為保證航天器在復(fù)雜的空間環(huán)境中運行更加持久穩(wěn)定,在軌檢測目前已成為航天器故障診斷與威脅警告的關(guān)鍵技術(shù)手段.同時,在空間組裝、系統(tǒng)升級和后勤支持等領(lǐng)域中,在軌檢測技術(shù)也具有非常廣泛的需求[1].美國的多項研究計劃如 XSS 計劃[2]、MiniAERCam計劃[3]等都促進了在軌檢測領(lǐng)域相關(guān)技術(shù)的發(fā)展.由于空間機器人在軌具有良好的機動性,并往往搭載帶有傳感器的多自由度機械臂系統(tǒng),因此可作為待測航天器貼近與伴飛的新型檢測平臺,利用機械手攜帶的多種非接觸傳感器,如電磁檢測傳感器等,通過專門設(shè)計空間伴飛機器人的測量軌跡,可實現(xiàn)安全、可行、有效的近距離檢測,獲得特定的檢測結(jié)果.根據(jù)檢測任務(wù)需求,空間機械臂在軌檢測過程主要包括如下4個過程:1)空間機器人系統(tǒng)飛行接近航天器使空間機械臂貼近待測航天器表面;2)機械臂跟蹤檢測軌跡并進行航天器待測表面的測量;3)完成測量任務(wù),機械臂???4)載體姿態(tài)的重穩(wěn)定.為了節(jié)約能源、避免碰撞,機械臂在跟蹤檢測軌跡的過程中通常需要關(guān)閉載體的姿控系統(tǒng)使載體處于自由漂浮狀態(tài).
目前很多學(xué)者對自由漂浮空間機器人末端軌跡規(guī)劃方法進行了相關(guān)研究,如文獻[4-9],這些文獻中對于軌跡規(guī)劃方法中數(shù)學(xué)模型都是建立在簡單連桿機構(gòu)基礎(chǔ)上的,方法的仿真驗證也都是采用不直觀的數(shù)值曲線仿真.而對于實際在軌檢測的空間伴飛機器人系統(tǒng),機械臂每一個連桿都具有復(fù)雜的結(jié)構(gòu),并不是簡單連桿所能表示的.當機械臂末端探測器跟蹤上述方法所規(guī)劃的測量軌跡時,很可能造成臂桿之間或機械臂與載體之間發(fā)生碰撞.因此在機械臂所規(guī)劃的運動執(zhí)行之前必須利用三維圖形仿真驗證以保證機械臂的安全工作.另外利用三維圖形仿真還可以對新提出的軌跡規(guī)劃算法進行可行性驗證,與單純的數(shù)值仿真相比,仿真結(jié)果更加直觀.本文基于虛擬現(xiàn)實方法,提出一種高真實感空間機器人三維仿真系統(tǒng),該系統(tǒng)可實現(xiàn)仿真數(shù)據(jù)與虛擬環(huán)境實時交互等多種操作.
虛擬現(xiàn)實技術(shù)是一種可以創(chuàng)建和體驗虛擬世界的計算機仿真系統(tǒng)[10].該技術(shù)是三維仿真領(lǐng)域的一個重要發(fā)展趨勢,其中包含了多媒體技術(shù)、傳感器設(shè)備、網(wǎng)絡(luò)、人機接口技術(shù)、仿真技術(shù)及電腦圖形設(shè)計等多個前沿技術(shù)領(lǐng)域,這種多個技術(shù)領(lǐng)域交互配合的前沿技術(shù)領(lǐng)域是很具有挑戰(zhàn)性的.在機器人研究領(lǐng)域中虛擬現(xiàn)實技術(shù)通常應(yīng)用于空間機器人的遙操作系統(tǒng)[11].本文空間機器人三維仿真平臺的開發(fā)就是基于虛擬現(xiàn)實技術(shù),依靠計算機系統(tǒng)生成的一種模擬環(huán)境.
三維仿真實體的整個建模過程總體來說就是對其進行詳細的數(shù)學(xué)分析描述,盡量把實體信息化和數(shù)字化,這樣有益于計算機程序讀取分析,然后由處理器創(chuàng)建一個盡量貼近實體的虛擬幾何模型.詳細來講此過程可分為實體建模、框架搭建、表面處理這3種不同細致程度的類型[12].其中實體建模更符合計算機平臺的需求.由于該模型是真實物體具體的計算機數(shù)字描述,因此能由內(nèi)到外的表現(xiàn)出原實體形狀,進而解決了三維實體現(xiàn)實感官的二維顯示問題.本文以實體建模軟件對空間機器人系統(tǒng)進行實體建模,見圖1.該模型為串聯(lián)機器人運動連桿結(jié)構(gòu),可以劃分為7個模塊.包括1個載體模塊、3個雙關(guān)節(jié)模塊(連桿1、連桿3、連桿5)、兩個臂桿模塊(連桿2、連桿3),1個末端探測器模塊.
圖1 空間伴飛機器人實體建模
機械臂圖形仿真系統(tǒng)的設(shè)計中單單能實現(xiàn)高仿真視覺效果是遠遠不夠的,必須還要具有實體的運動功能.在Open Inventor標準的動態(tài)虛擬仿真場景設(shè)計中,機械臂的運動是根據(jù)一系列數(shù)字化指令所產(chǎn)生的,而指令需要借助坐標系作為參考來實現(xiàn).因此每個需要活動的實體都要有一個相應(yīng)的參考點,否則運動指令不會有效.為了建立與實體運動相關(guān)的坐標系,通常采用的方法是在機械臂的旋轉(zhuǎn)軸位置處引入一個定位模塊.根據(jù)定位模塊,使得仿真系統(tǒng)可以拾取運動部件參考系,從而通過指令驅(qū)動實體產(chǎn)生運動.定位模塊雖然不是機械臂零部件,但卻是必需的,一般都是軸對稱或者中心對稱的幾何實體.
仿真系統(tǒng)設(shè)計的定位模塊見圖2.該定位模塊只能是通過拉伸創(chuàng)建實體特征.雖然從幾何的角度看,旋轉(zhuǎn)特征也能夠建立對稱實體,但是在Open Inventor環(huán)境下系統(tǒng)無法識別旋轉(zhuǎn)特征的中心軸,從而無法建立相應(yīng)的坐標系.
將建立的三維實體幾何模型導(dǎo)入Open Inventor構(gòu)建的虛擬場景中,完成機器人系統(tǒng)邏輯位置的組裝,其邏輯結(jié)構(gòu)見圖3.虛擬現(xiàn)實場景中,各實體模塊邏輯位置的確定也可以說是創(chuàng)建場景所有基本節(jié)點的過程.本系統(tǒng)中每個節(jié)點分別對應(yīng)機械臂的一個零部件(包括定位部件),整體來說都是上層節(jié)點管理下層節(jié)點,而定位部件的運動坐標的參考點的確定和變換也是由這種分隔符群組節(jié)點來決定.由上述邏輯關(guān)系建立的三維仿真場景見圖4.
圖2 定位模塊建模
圖3 虛擬環(huán)境中機械臂組裝的邏輯結(jié)構(gòu)
圖4 基于虛擬現(xiàn)實技術(shù)的空間伴飛機器人三維仿真場景
圖5為自由漂浮空間機械臂一般模型,其中n自由度的機械臂和機械臂自身的載體航天器構(gòu)成了整個平臺.該系統(tǒng)由n+1個剛體桿組件構(gòu)成.其中桿件0表示空間機器人的載體,轉(zhuǎn)動關(guān)節(jié)i+1連接第i和第i+1個桿件.
由空間機器人的一般模型可知,機械臂各桿件質(zhì)心和機械臂末端的位置矢量可以分別為
式中:ai為從關(guān)節(jié)i指向桿件i質(zhì)心的位置矢量,ai∈R3;bi為從桿件i質(zhì)心指向關(guān)節(jié)i+1的位置矢量,bi∈R3.
由此微分可得各桿件質(zhì)心線速度為
式中:v0為載體質(zhì)心的線速度矢量,v0∈R3;ω0為載體質(zhì)心的角速度矢量,ω0∈R3;θ為關(guān)節(jié)i的旋轉(zhuǎn)角度,θ∈Rn;k為關(guān)節(jié)i旋轉(zhuǎn)方向的單位矢量.
圖5 漂浮基空間機械臂的一般模型
機械臂末端的線速度為
各桿件質(zhì)心角速度為
機械臂末端姿態(tài)的角速度為將式(4)和式(6)寫成矩陣形式,有
式(7)為空間機器人的運動學(xué)方程.其中Js為與載體運動有關(guān)聯(lián)的雅可比矩陣;Jsv,Jsω分別為Js關(guān)于載體速度和角速度的分塊矩陣;E為單位矩陣;0m×n為m×n的零矩陣.其中定義向量r=[x,y,z]的操作m可表達為而Jm為與機械臂運動相關(guān)的雅可比矩陣,
Jmv、Jmω分別為Jm關(guān)于速度和角速度的分塊矩陣.
Jm與地面固定基座機器人雅可比矩陣相同,Jm可表達為
仿真系統(tǒng)的通信程序采用消息機制的異步套接字阻塞與非阻塞的工作方式作為底層接口,然后按照客戶端模式進行開發(fā).如果把阻塞工作模式應(yīng)用于機械臂三維仿真平臺中,那么在實現(xiàn)I/O操作前,執(zhí)行數(shù)據(jù)傳輸操作的通信模塊不會立刻把程序運行的結(jié)果返回調(diào)用進程或者是主線進程,從而使得上層程序得到控制權(quán),而是從始至終在進程中運行直到網(wǎng)絡(luò)上實時仿真數(shù)據(jù)出來.例如,在客戶端上接收網(wǎng)絡(luò)傳遞的數(shù)據(jù)時,通常情況下程序常常采用的recv函數(shù)傳遞往來的數(shù)據(jù).如果經(jīng)過一段時間后,數(shù)據(jù)包仍沒有通過網(wǎng)絡(luò)傳遞過來,那么該客戶端中的上層程序就會一直阻塞在該函數(shù)的進程中,其他模塊的程序也將不會繼續(xù)執(zhí)行,該客戶端的主線程也將會被暫停運行.不止如此,在許多情況下使用阻塞工作方式也將會影響網(wǎng)絡(luò)通信的性能.如果采用Winsock函數(shù)的客戶端在非阻塞工作模式下工作,不管網(wǎng)絡(luò)狀態(tài)如何,程序往往都立即檢測并把數(shù)據(jù)傳遞的狀態(tài)返回.另外,在采用Winsock函數(shù)傳遞時,不僅僅可以獲得操作結(jié)果的通知,也可以通過該通知檢驗數(shù)據(jù)傳遞的正確性.
本文所建立的空間機器人三維仿真平臺網(wǎng)絡(luò)通信程序采用非阻塞工作方式,如圖6所示.綜合運用了消息傳遞與異步套接字響應(yīng)機制所需具有的網(wǎng)絡(luò)事件篩選功能,注冊一些FD-WRITE、FDREAD、FD-CLOSE FD-ACCEPT等常用的網(wǎng)絡(luò)事件,利用多線程技術(shù)盡可能減少阻塞的可能性.
另外,三維仿真系統(tǒng)設(shè)計了本地文件存儲模塊.該模塊主要用于離線作業(yè)和在線實時仿真運算的存儲、輸出、交流演示等.存儲文件以文本文件保存.每次進行數(shù)據(jù)存儲時,文本文件以追加的方式打開.如果是第一次存儲或者原存儲文件已刪除,則重新創(chuàng)建存儲文件.
圖6 虛擬現(xiàn)實三維仿真平臺的網(wǎng)絡(luò)通信客戶端模塊
仿真的任務(wù)是對機械臂末端探測器跟蹤圓軌跡進行三維虛擬現(xiàn)實仿真.這是空間檢測機器人的一種常規(guī)任務(wù).
對于空間機器人圓弧軌跡的跟蹤,需要規(guī)劃末端的速度.定義圓弧軌跡的圓心坐標系為{Ⅰc},其原點定義在圓心處,圓弧軌跡位于坐標系{Ⅰc}的x,y軸所在平面內(nèi).{Ⅰc}到慣性坐標系的旋轉(zhuǎn)矩陣為Tc.規(guī)劃軌跡的圓周角隨時間變化函數(shù)為θc(t),如果機械臂末端跟蹤軌跡為一個閉合的圓軌跡,則邊界條件應(yīng)滿足
為了滿足跟蹤軌跡的平滑性,·θc(t)也采用梯形規(guī)劃.空間機械臂末端線速度為位置pe的微分pe,位置矢量為
式中:rc為圓軌跡的半徑.
機械臂末端的初始笛卡爾位姿為(2.18,-0.15,0.88,-3.09,-0.52,-2.95),初始關(guān)節(jié)角為(175°,-40°,-120°,0°,240°,5°).在跟蹤的過程中令機械臂末端的姿態(tài)保持不變,圓軌跡半徑rc=0.35 m,圓心坐標系到慣性系的轉(zhuǎn)移矩陣為
因此將末端速度pe代入1.3節(jié)的運動學(xué)模型,可規(guī)劃出空間伴飛機器人末端探測器跟蹤上述圓軌跡時機械臂各關(guān)節(jié)的角位移,如圖7所示.
上述機器人運動規(guī)劃的虛擬現(xiàn)實三維模擬仿真如圖8所示,根據(jù)該的仿真結(jié)果可以方便地看出當機械臂末端探測器實現(xiàn)從初始位置跟蹤封閉的圓軌跡直到回到初始位置的運動后,其載體的位置和姿態(tài)并沒有回到初始狀態(tài),也就是說載體的位置與姿態(tài)與機械臂末端位置沒有關(guān)系,而與機械臂運動的歷史有關(guān),即呈現(xiàn)出典型的非完整特性[13].根據(jù)該仿真結(jié)果,可使研發(fā)人員在空間伴飛機器人的圓測量軌跡設(shè)計、仿真中對機械臂實際工作狀態(tài)(如軌跡跟蹤、載體姿態(tài)變化等)得出更為直觀的結(jié)果.
圖7 末端探測器跟蹤圓軌跡時機械臂各關(guān)節(jié)的角位移
圖8 空間伴飛機器人對圓測量軌跡跟蹤的仿真
1)基于虛擬現(xiàn)實技術(shù),建立了空間伴飛機器人三維實體模型,并針對模型的運動坐標系建立了模型的定位模塊,構(gòu)建了仿真平臺的三維場景.該仿真系統(tǒng)可實現(xiàn)空間伴飛機器人在軌測量的可視化仿真.
2)建立了三維仿真系統(tǒng)的數(shù)據(jù)傳輸與文件存取模塊,實現(xiàn)在線或離線仿真時,仿真數(shù)據(jù)與圖形界面的實時交互.
3)基于空間機器人運動學(xué)模型對空間伴飛機器人跟蹤圓軌跡進行軌跡規(guī)劃,并利用本文建立的三維仿真系統(tǒng)對該軌跡規(guī)劃進行了仿真.通過仿真可以直觀地得到空間伴飛機器人跟蹤圓軌跡時的運動規(guī)律,驗證了三維仿真系統(tǒng)的有效性.
[1]史建偉,蔡遠文,李巖.在軌檢測研究綜述[J].兵工自動化,2011,30(6):59-62,83.
[2]MADISON R W.Micro-satellitebased, on-orbit servicing work at the air force research[C]//Aerospace Conference Proceedings.Big Sky, Montana:IEEE,2000:215-225.
[3]FREDRICKSON S E,DURAN S,MITCHELL J D.MiniAERCam inspection robot for human space missions[C]//Space 2004 Conference and Exhibit.San Diego,California:IEEE,2004.
[4]ZARAFSHAN P,ALI S,MOOSAVIAN A.Dynamics modelling and hybrid suppression control of space robots performing cooperative object manipulation [J].Communi-cations in Nonlinear Science and Numerical Simulation,2013,18(10):2807-2824.
[5]AMIT K,PUSHPARAJ M P,SUKAVANAMA N.Trajectory control of a two DOF rigid-flexible space robot by a virtual space vehicle[J].Robotics and Autonomous Systems,2013,61(5):473-482.
[6]TORTOPIDIS I,PAPADOPOULOS E.On point-to-point motion planning for underactuated space manipulator systems[J].Robotics and Autonomous Systems,2007,55(2):122-131.
[7]HU Xiaoping,ZUO Fuyong.Research and simulation of robot trajectory planning in joint space[J].Applied Mechanics and Materials,2012,103:372-377.
[8]KANDIL A A,BADREDDIN E.A new method for direct and point-to-point robot trajectory planning in narrow spaces[C]//IEEE International Conference on Control Applications/International Symposium on Intelligent Control.St Petersburg,Russia:IEEE,2009:1738-1743.
[9]徐文富,強文義,李成,等.自由漂浮空間機器人路徑規(guī)劃研究進展[J].哈爾濱工業(yè)大學(xué)學(xué)報,2009,41(11):1-12.
[10]鄒湘軍,孫健,何漢武,等.虛擬現(xiàn)實技術(shù)的演變發(fā)展與展望[J].系統(tǒng)仿真學(xué)報,2004,16(9):1905-1909.
[11]胡海鷹,李家煒,王濱,等.虛擬現(xiàn)實技術(shù)在機器人臂/靈巧手遙操作中的應(yīng)用[J].系統(tǒng)仿真學(xué)報,2004,16(10):2305-2308.
[12]KANG K,TAREL J,F(xiàn)ISHMANET R,et al.A linear dual-space approach to 3D surface reeonstruction from occluding contoursusing algebraic surface[C]//Proceedings of International Conference on Computer Vision(ICCV).Vancouver,BC,Canada:IEEE,2009:356-364.
[13]NAKAMURA Y,MUKHERJEE R.Nonholonomic path planning of space robots via a bidirectional approach[J].IEEE Transactions on Robotics and Automation,1991,7(4):500-514.