曾 欣,宋愛國?,周永輝,李會軍
(1. 東南大學儀器科學與工程學院,南京210096; 2. 北京空間飛行器總體設計部,北京100094)
空間站機械臂是集空間感知、機動性和操作能力于一身的大型空間設備[1],在空間站建設、在軌任務執行、觀測檢查,故障維修等方面發揮了重要的作用[2]。 傳統的機械臂控制系統通過圖像回傳和按鍵式控制面板、手柄等設備對機械臂進行控制。 這些控制系統依靠視覺圖像技術向操作者反饋機械臂的控制狀態,缺乏力覺反饋[3],容易受到艙外環境的遮擋影響,系統的安全性和可靠性較低,難以完成精細的操作任務[4]。
力反饋技術通過在機械臂上集成測力傳感器,利用力反饋設備將機械臂采集到的接觸力信息反饋給操作者,為操作者提供逼真的力覺臨場感[5-6],是空間站機械臂遙操作系統的關鍵技術。通過力反饋設備來控制機械臂,搭建具有力覺反饋的高臨場感空間站機械臂遙操作控制系統,融合視覺、聽覺、力覺等多種感官反饋信息,從而增強人機耦合度和人機協同操作的精度,可以幫助操作者更加快速、準確地控制機械臂,完成艙外操作任務[7]。
NASA 開發了機器人航天員R2 系統[8],航天員利用數據手套等力反饋設備進行遙操作,并通過該系統成功捕獲了一個在國際空間站實驗艙內自由漂浮的物體[9]。 力反饋數據手套等設備可以控制遠端機器人的運動姿態并反饋遠端的接觸力感給航天員,但數據手套的反饋力較小,穿戴繁瑣,通用性不高[10]。 Force Dimension 公司研制了基于Delta 結構的Delta、Omega、Sigma 系列力反饋手控器[11],最大可達7 個自由度,結構穩定,具備抓取操作自由度,但其運動空間和反饋力較小,適合在虛擬手術和虛擬游戲中應用。 韓國Kyungnam 大學Vu 等[12]針對遙操作系統設計了新型六自由度力反饋裝置,設備采用六連桿并聯結構,具有低慣性、大扭矩的特點,具有高度臨場感,但機構耦合度高、解算復雜、控制難度大,并缺乏夾取自由度。 日本名古屋大學Arata 等[13-14]設計了DeltA-4 冗余式手控器,與Delta 機構相比,提升了工作空間范圍,在反饋力和操作性能方面有較大的優勢,但機構耦合度高、解算復雜度高。國內鄧樂等[15]設計了六自由度力反饋手控器,采用液壓驅動的方式,具有較大的剛度和較高的承載能力,動力性能比較好,但游隙非線性特性容易產生系統振蕩的問題。 秦歡歡等[16]設計了雙手混聯式力反饋手控器,通過雙手協同操作擴展了手控器任務的多樣性,但占地面積較大,缺乏對不同材質的辨識。
綜上,需要設計一種機械耦合度低、力反饋性能高、具有抓取自由度、對不同材質辨識度高的力反饋設備,以提升空間站機械臂控制系統的精確性、安全性和穩定性。 本文面向空間站機械臂遙操作控制,提出一種基于混聯式七自由度力反饋手控器的虛擬人機交互系統方案,并完成了相關性能試驗。
混聯式七自由度力反饋手控器的機械結構如圖1 所示,力反饋手控器由平行連桿結構、菱形拉伸結構、末端三維旋轉手柄、支架、配重塊、手指扳機結構、直流伺服電機及絕對值編碼器組成。

圖1 混聯式力反饋手控器組成Fig.1 Configuration of hybrid force feedback hand controller
操作人員的手固定在末端手柄處,編碼器實時采集手控器各個自由度的角度信息,并傳遞給系統控制箱;電機采用Maxon 公司RE 系列312970 型稀有金屬電刷直流電機,該型號電機具有良好靜態性能以及散熱能力,適用于低速大轉矩的力反饋設備;配重塊用于保持手控器平衡;手控器通過平行連桿結構、菱形拉伸結構和末端三維轉動結構相串聯,實現了三維平動自由度和三維轉動自由度的機械解耦,降低了解算的復雜度和控制難度。 混聯式設計能夠在較大的工作空間內保證足夠的剛度以及輸出能力。
對操作人員手部的位置和姿態進行精確跟蹤是手控器的主要性能之一,也是遙操作任務精確控制的重要保障[17]。 圖2 是力反饋手控器平動結構原理圖,力反饋手控器通過將菱形拉伸結構串聯安裝在平行連桿結構的末端平面上,實現空間中的三維平動,并可以保證圖中3個平面永遠保持平行,不會耦合多余的轉動自由度,其末端位置為菱形拉伸結構末端平面的中點O2。 平行連桿結構和菱形拉伸結構有3 個運動自由度,分別繞軸1、軸2 和軸3 轉動。 力反饋手控器末端位置的正向求解過程就是在已知繞軸1、軸2 和軸3 轉動角度的情況下,求解點O2在空間中的位置。

圖2 平動結構原理圖Fig.2 Schematic diagram of the translation structure
設平行四連桿桿長均為L1,菱形拉伸結構桿長均為L2,平行連桿結構中點為原點O,z軸垂直于平面ABCD向外為正方向。 為方便描述,設平行連桿繞軸1、軸2、軸3 旋轉的角度分別為α、β、γ,順時針方向為正方向。 手控器初始位置為平行連桿機構與平面ABCD垂直,菱形拉伸結構的初始位置沿z軸負方向壓縮到底,由于存在機械限制,令菱形機構初始角度為γ0。
平行連桿機構的末端點O1的運動軌跡是原點為點O, 半徑為L1的球形弧面,又因為面A1B1C1D1與面A2B2C2D2平行,所以手控器末端O2點與平動機構末端O1點的x、y軸坐標相同,末端O2點x、y軸的坐標可以通過OO1與軸1、軸2轉動的角度α、β的幾何關系進行求解。
如圖3 所示,當平動機構末端O1點位于空間任一位置時,手控器末端O2點x、y軸坐標如式(1)所示:

由于平動機構末端在x、y軸方向上的運動軌跡呈球面,會導致手控器末端位置沿著z軸負方向發生一定移動。 為避免x、y軸方向上的運動對z軸位置解算產生耦合影響,手控器末端O2點的z軸坐標采用相對于O1的坐標,而x、y軸的位置采用相對于原點O的坐標。 由于平面A1B1C1D1與平面A2B2C2D2相互平行,通過軸3轉動的角度γ和菱形結構的幾何關系可以得到z軸的坐標。

圖3 位移計算示意圖Fig.3 Schematic diagram of displacement calculation
由上述分析可解得手控器末端O2的位置坐標為式(2):

其中α∈(-45°~45°)、β∈(-45°~45°)、γ∈(0°~80°)、γ0=80°。
由于建立的理想幾何模型與真實機械結構的參數存在一定誤差[18],可以通過逆向解算的方式,利用高精度三維電動滑軌對位置計算公式做進一步標定修正,以消除機械結構參數造成的公式參數誤差。 測試前需對手控器的位置零點與電動滑軌的位置零點進行標定,以消除標定過程中手控器與電動滑軌的相對位置誤差。 由式(2)可知,角度α、β、γ由高精度的絕對值編碼器測得,末端位置x,y,z( ) 由高精度三維電動滑軌測得,其精度遠高于手控器要求的精度,在經過位置零點標定后,可認為位置解算誤差主要來自于手控器平行連桿結構桿長L1、菱形拉伸結構桿長L2以及菱形初始角度γ0。 通過逆向解算將測得的真實角度值和末端位置值代入式(2)中求解,可得到實際值L1real、L2real、γ0real。
首先求解L1real,利用電動滑軌在x或者y軸上帶動手控器進行移動,直至手控器位置極限。以x軸為例,在運動范圍內等間距取線性度較好的三點x1、x2、x3, 將對應的α、β角度值帶入式(2)得到方程組(3),對式(3)進行求解,取L1的平均值可得實際值L1real。

然后求解L2real、γ0real,在z軸運動范圍內等間距取線性度較好的3 點z1、z2、z3, 將對應的γ角度值帶入公式(2)得到方程組(4),求解該方程組可以求得L2、γ0的實際值L2real、γ0real。

將經過逆向標定后的真實參數重新帶入位置解算公式(2),得到最終的位置解算公式(5):

圖4 為手控器末端轉動機構原理圖,轉動機構串聯安裝在平動機構的末端平面上,保證了轉動部分不會耦合多余的平動自由度。 轉動機構俯仰軸、偏航軸和橫滾軸兩兩相互垂直并相交于一點,所以轉動自由度相互之間不會發生耦合。
操作者握住末端手柄進行操作,手部的三維旋轉角度直接由俯仰軸、偏航軸和橫滾軸旋轉的角度直接獲得。 手柄還配有符合人機功效學的手指扳機結構,用于控制虛擬夾具的開合,其開合角度也可由扳機旋轉的角度獲得。

圖4 手控器轉動結構原理圖Fig.4 Schematic diagram of the rotation structure of hand controller
獲得手控器末端需要反饋的力與力矩后,需逆向求解每個電機的控制參數,從而驅動手控器輸出相應的反饋力。 力反饋手控器通過串并聯相結合的機構設計,實現了力與力矩的解耦,即只需要求得對應自由度的力臂大小。 如圖2 所示,手控器產生的平動力矩由直流電機1#、2#、3#提供,設為τ1、τ2、τ3,點O2與面ABCD在z軸方向的垂直距離為X、Y軸電機的力臂大小。 而z軸采用虛位移原理進行分析,可以解得手控器平動力為式(6):

如圖4 所示,手控器產生的轉動力矩由安裝在轉動機構俯仰軸、偏航軸和橫滾軸三軸上的直流電機4#、5#、6#提供,設為τ4、τ5、τ6, 其力臂長度與機構設計參數決定,幾乎不變,可由機械參數獲取到,設其力臂長度分別為L4、L5、L6。 手指扳機結構的力矩由扳機上的電機7#提供,設為τ7,其力臂為L7,通過公式F=τ/L即可求得施加給操作人員的轉動力。
手控器系統控制模塊包括位置檢測模塊、電源模塊、微處理器模塊、以太網模塊、觸摸屏模塊及電機驅動模塊,系統框圖如圖5 所示。

圖5 控制系統框圖Fig.5 Block diagram of the control system
力反饋手控器各自由度轉動的角度通過安裝在轉動軸上的絕對值編碼器進行測量,通過FPGA 并行讀取,并由微處理器模塊解算成末端位置數據。 微處理器模塊將位置數據發送到觸摸屏和計算機的上位機中,實現手控器的位置捕獲與數據傳輸。 計算機中的虛擬場景軟件計算反饋力大小,并將反饋力數據發送回微處理器模塊。 由FPGA 產生對應的PWM 波控制信號并發送給電機驅動模塊,驅動手控器各自由度電機輸出反饋力矩。
理想的直流電機的電磁轉矩僅與電樞電流和氣隙磁通成正比,而氣隙磁通一般為定值,所以直流電機驅動轉矩與電樞電流呈線性關系[19-20]。由于手控器主要工作在低速狀態,慣性轉矩較小,可以忽略。 而空載轉矩為定值,并且力反饋手控器的對力輸出的精度要求不高,所以可以通過穩定控制電樞電流的方法來實現扭矩的控制輸出。
控制系統利用電流傳感器對輸出電流進行采樣,利用編碼器采集速度和位置,搭建位置-速度-電流串級PID 算法,實現了對輸出電流、運動速度、末端位置的閉環控制,從而實現了對末端輸出反饋力的穩定控制。
為了驗證人機交互系統的正向位置求解精度,使用高精度三維電動滑軌對力反饋手控器x、y、z三軸進行位移測試。 如圖6 為標定系統組成圖。

圖6 標定系統組成 Fig.6 Configuration of the calibration system
首先測量力反饋手控器的工作空間,將力反饋手控器末端三維旋轉手柄卸除,將菱形結構末端平面固定在三維電動滑軌y軸平面上。 仔細調整電動滑軌位置至手控器的位置零點處,確保手控器平行連桿結構垂直于電動滑軌y軸平面,菱形拉伸結構的初始位置沿z軸負方向壓縮到底,調整完成后,將電動滑軌位置歸零,使得手控器和電動滑軌之間無相對位置誤差,然后利用電動滑軌帶動手控器末端分別沿x、y、z三軸運動到手控器工作空間的極限位置,記錄極限位置的電動滑軌的坐標。 試驗結果如表1 所示,力反饋手控器的工作空間略大于250 mm × 250 mm × 250 mm。

表1 手控器末端實際運動范圍Table 1 Actual movement range of the hand controller end
在工作空間范圍內,進行力反饋手控器位置跟蹤精度測試。 試驗起始點與工作空間測試相同,將電動滑軌零點位置調整至手控器零點位置處,利用三維電動滑軌帶動手控器末端以1 mm的步距在x、y、z三軸上,從起點到工作空間極限位置進行一次往返位移。 共進行3 次測試,取3次測試數據的平均值作為測試結果。 因為手控器工作空間是對稱的,只需對x、y軸進行正方向往返方向測試即可,即位置精度測試范圍為x軸:0~125 mm,y軸:0~125 mm,z軸:0~250 mm。
利用經過標定修正,消除了機械誤差的位置解算公式對手控器末端進行解算,得出手控器位置數據,并與三維電動滑軌的位置數據進行比較,可計算出本系統中手控器的位置跟蹤精度。
力反饋手控器各軸位置跟蹤精度標定結果如圖7~圖9 所示。 手控器x軸(圖7)3 次往返測試的平均位置誤差為0.01 mm, 最大誤差為-0.59 mm,誤差方差為0.034 mm2。 手控器y軸(圖8) 3 次往返測試的平均位置誤差為0.012 mm,最大誤差-0.478 mm,誤差方差為0.035 mm2。 手控器z軸(圖9)3 次往返測試的平均位置誤差為-0.21 mm,最大誤差-0.58 mm,誤差方差為0.051 mm2。 結果表明,經過標定后,雙手裝置三軸的位置跟蹤誤差小于0.6 mm。

圖7 x 軸位置跟蹤精度 Fig.7 Accuracy of position tracking in x-axis

圖8 y 軸位置跟蹤精度 Fig.8 Accuracy of position tracking in y-axis

圖9 z 軸位置跟蹤精度 Fig.9 Accuracy of position tracking in z-axis
力反饋手控器的輸出性能可以利用三維電動滑軌和六維力測量裝置進行測試(圖10)。 六維力裝置內置6 個單向的壓力傳感器,固定在三維電動滑軌軸上,力反饋手控器菱形結構末端平面固定在六維力傳感器裝置之中,通過給力反饋手控器施加電流信號,可由末端的六維力傳感器裝置的上位機讀取出末端的三維平動反饋力大小。

圖10 輸出力測試裝置Fig.10 Test device for output force
通過控制箱給手控器輸入電機最大工作電流作為參考電流信號,利用六維力傳感器裝置記錄手控器末端三軸的輸出力情況,共進行了3 次試驗。 試驗表明:力反饋手控器末端x軸3 次穩定輸出力分別為16. 62 N,16.57 N,16.63 N,平均輸出力為16.60 N。y軸3 次穩定輸出力分別為16.23 N,16.17 N,16.21 N,平均穩定輸出力為16.20 N。z軸3 次穩定輸出力分別為15. 55 N,15.52 N,15.56 N,平均穩定輸出力為15.54 N。綜上,力反饋手控器末端輸出力可達15 N。
為驗證人機交互系統對機械臂控制的性能,系統利用CHAI3D 平臺設計了虛擬夾取物塊試驗場景(圖11)。 虛擬場景中有3 種不同材質的物塊和一只虛擬手,操作者通過手控器控制虛擬手的移動、旋轉、張開與閉合,模擬虛擬機械臂的夾取動作。

圖11 虛擬夾取試驗場景Fig.11 Experiment scene of virtual clamping
虛擬場景中的物體采用沿坐標軸包圍盒AABB 碰撞檢測算法[21]進行碰撞檢測,該算法具有計算時間短且檢測精度高的特點。 虛擬場景采用基于God-Object 算法[22-23]來計算虛擬代理與虛擬物體發生接觸后的相互作用力,由于力反饋手控器自由度有限,難以反饋模擬面接觸時的觸感,所以在虛擬場景中虛擬手的觸碰點放在虛擬手的各個手指的指尖處,通過點接觸來計算物體間相互作用力。
虛擬場景中3 個物塊分別具有軟、硬、脆不同材質屬性。 通過彈簧-質子模型算法和柔性物體反饋算法模擬出剛性、脆性、軟性物體的材質質感的力學模型,使得操作者可以通過手控器觸摸時感受到不同材質的區別。 如果抓握軟的和脆的物塊時力過大,會導致物塊形變或破碎,物塊一旦形變程度過大會逐漸變成紅色,破碎則直接變為紅色,但依然能夠繼續進行操作。 在開啟力反饋后,抓握的過程中會感受到持續的反饋力感。
本試驗的任務是在隨機指定的區域內通過操縱虛擬手夾取3 個物塊,并把物塊按一定順序拼到一起,以模擬機械臂拼接物體任務。 在夾住物塊的過程中不能將物塊損壞,也不能在拼接過程中將其他物體損壞。
試驗選取10 名受試者(5 男5 女)參加,試驗前受試者允許提前熟悉系統的操作。 試驗時,受試者隨機編號,并按編號順序依次進行試驗。 每位受試者分別進行2 組操作:無力反饋操作和開啟力反饋操作。 受試者每組操作需完成3 次,記錄每次操作的完成時間和損壞情況,取3 組完成時間的平均值作為該組操作的完成時間,3 組損壞次數的平均值作為該組操作的損壞次數。 具體如圖12 所示。

圖12 虛擬夾取實物操作實例Fig.12 Example of virtual clamping operation
試驗結果如圖13、14 所示,從整體上看,操作者對3 種材質的物塊可明顯感受到不同的力覺反饋,能夠幫助操作者對抓握力度進行調整。 有力反饋的試驗均比無力反饋的試驗完成的時間要快,并且僅有一次出現損壞虛擬物體的情況,而無力反饋損壞次數較多。 有力反饋的試驗平均完成時長為9.45 s,最長耗時12.1 s,最短耗時8.2 s,平均損壞次數0.1 次,損壞概率為10%;無力反饋的試驗平均完成時長12.39 s,最長耗時16.2 s,最短耗時10.8 s,平均損壞次數0.8 次,損壞概率為60%。 試驗結果表明,有力反饋的試驗比無力反饋的試驗平均完成時間縮短了23%,損壞率降低了50%,大幅提高了抓取操作任務的準確性和安全性。

圖13 完成時間試驗結果Fig.13 Results of completion time in the experiment

圖14 損壞情況試驗結果Fig.14 Results of damage in the experiment
本文構建了一套面向空間站機械臂遙操作的虛擬人機交互系統。
1)其中力反饋手控器通過混聯式設計,實現了三維平動自由度和三維轉動自由度的機械解耦,并通過標定修正了存在誤差的機械參數,提高了位置精度。 通過對手控器進行了靜力學分析,解耦結構降低了力與力矩解算的復雜度。
2)控制系統搭建位置-速度-電流串級PID算法實現了對輸出電流、運動速度、末端位置的閉環控制,實現了對末端輸出反饋力的穩定控制。
3)試驗驗證了人機交互系統可以為操作者提供250 mm×250 mm×250 mm 的工作空間和大于15 N 的反饋力,末端三維位置精度可達0.6 mm。 相較于無力反饋的系統,操作者平均完成時間縮短了23%,損壞率降低了50%,可以更加快速、準確、安全地完成抓取操作任務,提升了操作效率和系統的安全性。