金 龍 張 凡 劉佰陽 鄭 宇
機器人從自由度上可分為非冗余機器人和冗余機器人[1].非冗余機器人是指關節自由度小于或等于任務空間維度的機器人.不同于非冗余機器人,冗余機器人的關節自由度大于任務空間維度,其額外的關節自由度提升了控制過程中的靈活性,使機器人能夠實現障礙物躲避等其他附加任務的能力[2-4].現存的大多數冗余機器人控制方案都需要準確的機器人模型信息,如機器人出廠標定的DH (Denavit-Hartenberg)參數[5].它通過4 個參數確定關節與連桿間的轉化關系,輔助科研人員實現機器人的精確建模.文獻[6]提出一種復雜工作空間下的機器人實時規劃方法,使機器人在跟蹤目標運動的同時,實現了躲避障礙物的功能.為提高移動機器人搬運物品的效率,文獻[7]提出一種基于雙向采樣的方案,用于為給定的移動機器人移動拾取和運輸線路生成期望軌跡.實驗表明該方案能夠降低35%的移動時間并提升16 倍的計算速度.一種正交投影機器人重復運動方案在文獻[8]中提出,解決了現有的重復運動方案存在的因關節角度誤差而導致的位置誤差問題.上述冗余機器人的控制方案都是在假定機器人模型已知的情況下,設計并構建控制方案驅動機器人完成目標任務.然而,機器人的模型信息通常會因實際使用過程中配備不同類型的末端執行器而發生改變.這會導致此類方案控制精度降低,甚至導致任務的失敗.
數據驅動技術自提出以來就受到了國內外的高度重視[9-10].其主要思想是通過收集并利用系統運行過程中大量的在線、離線數據,實現對系統有效、魯棒、穩定的建模與控制[11-12].數據驅動技術的提出有效地解決了模型不確定或者模型發生改變時的系統控制問題.已有學者將數據驅動的思想應用于機器人控制領域,并取得了卓越的成果.針對機器人在實際使用過程中出現的模型不確定問題,文獻[13]提出一種基于數據驅動的位置/力控制方案,從運動學的角度解決了模型未知的機器人位置/力控制問題.文獻[14]提出一種加速度層數據驅動的重復運動規劃方案,并構造了相應的遞歸神經網絡,對模型未知的冗余機器人提供了一種新的加速度層解決方案.大量研究表明數據驅動技術能夠對模型未知的機器人進行有效控制,具有較強的應用價值.
冗余機器人的軌跡跟蹤控制同樣是一個重要的研究方向.機器人面臨的大多數任務需要控制機器人的末端執行器沿預定的軌跡運動.基于速度層、加速度層的算法被提出用于求解冗余機器人的最優解.值得指出的是,目前大多數從運動學和優化角度建模的方法存在兩方面的不足[15-17].一方面,這些方法基于機器人結構信息已知的情況實現對機器人的控制.例如,文獻[18]基于冗余機器人的模型構建了一個動態神經網絡方法,實現了良好的控制性能.然而,結構信息不準確或未知的機器人是可能存在的.例如,物流機器人可能會受到貨物形狀、重量等因素的影響,導致其結構信息不準確.同樣地,自研機器人的設計和制造過程中也可能因人為疏忽或技術限制等原因導致其結構信息錯誤.因此,面向結構信息不準確或未知的機器人,上述基于準確結構信息的方法將無法被應用.另一方面,這些方法僅考慮機器人末端執行器的位置跟蹤,忽略了其姿態控制的重要性.例如,文獻[14]構建了一個可應用于結構信息未知機器人的重復運動控制方案,但其僅考慮了末端執行器的位置跟蹤,在一定程度上限制了其應用場景.事實上,機器人末端執行器的姿態控制在大多數應用場景下都是不可或缺的,在機器人執行任務的同時,還需對其末端執行器姿態加以控制.例如醫療手術、工業制造等領域[19-20].為彌補現有方法以上兩方面的不足,本文構建了基于數據驅動的冗余機器人末端執行器位姿控制方案.該方案從機器人的運動學出發,用四元數表示了末端執行器的姿態,實現了對末端執行器位姿的控制.此外,一種神經動力學求解器被設計用于方案求解.相關的理論分析與仿真實驗均驗證了方案的有效性與可行性,與現有冗余機器人位姿控制方案的比較結果體現了所提方案的新穎性.
本節從冗余機器人的運動學出發,給出機器人末端執行器位姿與關節角間的關系,并推導了四元數的表示方法以控制末端執行器的姿態.此外,設計了估計雅可比矩陣的數據驅動算法.值得注意的是,所提機器人末端執行器位姿控制方案所涉及到的符號含義在表1 作具體解釋.

表1 所提冗余機器人控制方案的符號含義Table 1 Definitions of variables of the proposed scheme for redundant manipulators
冗余機器人的冗余度解析在其控制過程中十分重要.冗余機器人的a維自由度能夠通過非線性映射函數轉化到b維的末端笛卡爾坐標系空間,具體的數學表達式為
進一步,對式(1)關于時間求導,可得
冗余機器人的末端執行器在任務空間中通常需要保持特定角度,因此需要對末端執行器的位姿加以控制.機器人末端執行器的姿態信息通常用旋轉矩陣M表示,即
其中,aij(i,j∈1,2,3)表示矩陣M中的第i行j列個元素.四元數由實數加上三個虛數單位組成,主要用于在三維空間中表示旋轉操作.末端執行器的四元數可以看作是將基坐標系繞向量旋轉得到的一個新的坐標系.因此,本文使用四元數表示末端執行器的姿態.定義一個歸一化四元數為
其中,?表示旋轉角度;n表示旋轉軸向量.由式(4)可得
式(5)中四元數的復數形式可以表示為q=?+vxi+vyj+vzk.符號 i,j,k 分別表示x軸,y軸,z軸方向的虛數單位.根據四元數的定義,可得
對于基坐標系的向量s=[sx,sy,sz]T,可以通過旋轉運算寫為四元數的形式=[0,sx,sy,sz]T.在此基礎上,變換后的坐標可以表示為sw=q·s·q?.其中“ · ”表示四元數的乘法,q?為q的共軛形式.給定四元數q的旋轉矩陣排列可以表示為
聯立式(3),(6),(7),機器人末端執行器的方向可以用四元數表示為
對式(8)關于時間求導,可得運動學控制式為
在此基礎上,機器人末端執行器的方向由旋轉矩陣M(θ)控制,進一步可以推廣到四元數的實時跟蹤即旋轉矩陣R(q)的收斂問題.由于旋轉矩陣M(θ)為正交矩陣,其行、列均為正交的單位向量,旋轉矩陣M(θ)中任意2 階子矩陣即可唯一確定旋轉矩陣M(θ).此外需要一個額外元素來確認正負,方向向量(θ)可以表示為
對于給定的四元數q,其旋轉矩陣R(q)對應的方向向量期望值可以表示為
為跟蹤所需的方向向量,設計誤差函數為e=(θ)-,對該式求導可得
冗余機器人的控制方案需要使用機器人的雅可比矩陣.機器人制造商生產機器人時,為機器人標定了標準的結構參數,通過這些參數可以計算出機器人的雅可比矩陣.然而,機器人的結構信息通常會因實際使用過程中裝配不同類型的末端執行器而發生改變,并且機器人結構參數的測量是復雜且費時的.
數據驅動技術能夠將系統參數作為輸入量,動態地更新系統的未知量.通過數據驅動技術,機器人能夠學習自身結構信息,并利用學習到的信息協助完成給定的任務.本文結合數據驅動技術,提出一種雅可比矩陣實時更新的學習方案以控制模型未知的冗余機器人.設計誤差函數,其中=通過梯度下降法可以得到
其中,σ>0 代表控制收斂速率.值得指出的是,式(13)中的關節角速度和末端執行器速度為真實的測量數據,本文以和為核心進行雅可比矩陣的學習.和可通過RGB-D 傳感器、慣性運動單元、動作捕捉系統等途徑獲得.在此基礎上,冗余機器人估計的雅可比矩陣能夠收斂到真實的雅可比矩陣J,從而實現對機器人的控制.
本節首先構建一種基于數據驅動技術的冗余機器人末端執行器位姿控制方案,其考慮了速度層的控制誤差反饋.隨后設計了相應的神經動力學求解器對所提方案進行求解,能有效控制模型未知的機器人進行末端執行器位置與姿態的同步跟蹤.此外,相關的理論分析證明了方案的收斂性.
冗余機器人末端執行器的位姿精確度是評價方案的重要因素.為保證機器人軌跡跟蹤任務的順利執行,末端執行器通常需要與任務平面保持特定的角度.本文提出一種基于數據驅動的冗余機器人末端執行器位姿控制方案,其表述為
設計誤差函數為E=‖v-vd‖2.由梯度下降法可得,其沿負梯度下降方向可以表示為
其中,η>0 為設計參數.為修正式(15)求解過程中的滯后誤差問題,添加補償項φ可得
對式(16)兩邊同乘A,可得
當系統趨于穩態時,應有vd-v=0 成立.則式(17)可重寫為
對于式(18),考慮最小化函數(14a),并應用最小二乘法可以得到φ=A?,其中,A?=AT(AAT)-1.為避免接近奇異時求矩陣偽逆結果極大的問題,設計具有輔助參數的遞歸過程為
其中,μ>0 為收斂系數,β為設計參數.聯立式(16)和式(19),可得
其中,P?(·)表示對機器人施加物理約束的投影函數,具體地,.至此,面向基于數據驅動的冗余機器人末端執行器位姿控制方案的神經動力學求解器為
通過神經動力學求解器(21)能夠得到機器人執行任務時各關節角速度,從而實現機器人末端執行器姿態的有效控制.
本節對所提的基于數據驅動的冗余機器人末端執行器位姿控制方案的收斂性進行分析證明.
定理1.當ATβ∈?時,面向基于數據驅動的冗余機器人末端執行器位姿控制方案(式(14))的神經動力學求解器(21)的控制誤差?=v-vd全局收斂至 0.
證明.首先對含有存儲狀態信息β的式(21b)進行收斂性分析,設計李雅普諾夫函數如下:
以參數β為決策變量,式(22)關于時間求導,可得
其中,?min表示AAT的最小特征值.根據拉薩爾不變集原理[21],當=0 時,參數β指數收斂至(AAT)-1.將參數β的穩態值代入(20a),可得
為分析控制誤差?的穩定性,設計李雅普諾夫函數為N2=?T?/2,其時間導數可以表示為
對于投影函數P?,假定其區間下(上)界為c-(c+),則當c+∈?時,應有‖P?(c-)-c-‖≤‖c+-c-‖恒成立.令c-=-ηAT?+A?,c+=A?,則有以下關系成立
不等式(27)左側展開,可得
進一步地,對式(27)和式(28)微分,可得
聯立式(26)和式(29),可得
當ATβ∈?時,可得 -ηAT?=0,因此?=0.綜上,本文所提方案(式(14))的控制誤差全局收斂至 0.
為驗證本文所提方案對機器人雅可比矩陣估計的準確性及末端執行器位姿控制的有效性,本節基于德國7 自由度Franka Emika Panda 冗余機器人分別給出末端執行器姿態保持和姿態跟蹤的兩組仿真結果.
值得指出的是,仿真過程中的相關參數設置如下: 冗余機器人的初始關節角度被設置為[0,-π/4,0,-3π/4,0,π/2,3π/4]Trad;收斂系數μ=500;設計參數η=500 ;控制學習的收斂參數σ=1 000;估計雅可比矩陣初始值為 [-1,1] 區間內的隨機數;設計參數β=[0,0,0,0,0,0,0,0]T.值得注意的是,很難通過分析或者直觀的設計步驟選擇這些參數,本文則是通過多次仿真確定它們的值.
圖1 是一組機器人末端執行器展示姿態保持功能的仿真結果.具體而言,給定機器人末端執行器跟蹤四葉草任務.圖1(a)描繪了機器人執行跟蹤任務的整體運動軌跡,綠色曲線為任務過程中末端執行器的姿態變化,紅色曲線為末端執行器跟蹤預定的四葉草圖案.圖1(b)和圖1(c)分別展示了機器人在執行任務過程中關節角度、關節角速度的變化曲線.可以看出曲線變化平滑,機器人關節角度、關節角速度均在合理的范圍內.圖1(d)展示了機器人在執行任務過程中估計的雅可比矩陣與實際的雅可比矩陣誤差.隨著任務時間的持續,其誤差迅速小于 10-3,證明本文所提方案(14)能夠有效地估計雅可比矩陣,從而實現機器人的準確控制;圖1(e)給出了機器人任務過程中的四元數誤差變化趨勢,可以看出四元數誤差小于 10-5,證明機器人實現了末端執行器姿態保持的功能;圖1(f)給出了機器人在執行任務過程中末端執行器的空間位置誤差,沿三個坐標軸的誤差均小于 1 0-4m.

圖1 采用所提方案(14)實現冗余機器人末端執行器位置跟蹤與姿態保持的仿真結果Fig.1 Simulation results of the redundant manipulator using the proposed scheme (14)to achieve position tracking and orientation maintenance
圖2 為一組機器人末端執行器展示姿態跟蹤功能的仿真結果.具體而言,機器人末端執行器沿著圓錐體表面進行打磨、焊接等任務.值得指出的是,在任務執行期間,機器人末端執行器的方向需要一直保持在圓錐體表面的法線方向.不同于圖1 中姿態保持的仿真結果,圖2(a)展示了機器人執行跟蹤任務的整體運動軌跡,綠色曲線描繪了機器人末端執行器位姿,可見末端執行器位姿是不斷變化的.圖2(b)和圖2(c)中關節角度和關節角速度的變化曲線表明了機器人執行過程中關節運行平滑.圖2(d)、圖2(e)和圖2(f)展示了機器人任務過程中雅可比矩陣誤差、冗余機器人末端執行器的姿態與位置誤差變化趨勢,證明了由所提方案(14)驅動的機器人在未知機器人結構信息情況下成功地執行了位姿跟蹤任務.此外,為更好地說明本方案對末端執行器位姿的控制過程,考慮圖2 的應用場景,圖3 給出了基于CoppeliaSim 仿真平臺所提方案(14)與文獻[22]方案的對比仿真實驗.CoppeliaSim 是一款功能強大的動力學仿真軟件,它可以根據物體的物理特性計算運動、旋轉和碰撞,因此許多研究應用CoppeliaSim 以快速驗證算法.對比仿真實驗中,由所提方案(14)驅動的機器人在執行任務的過程中,其末端執行器的方向始終保持在圓錐體表面的法線方向.相比之下,由文獻[22]方案驅動的機器人在執行過程中因無法控制其末端執行器方向而導致任務失敗.由此可見,機器人末端執行器的姿態跟蹤在一些要求姿態不斷變化的應用場景中具備重要的作用.

圖2 采用所提方案(14)實現冗余機器人位置與姿態跟蹤的仿真結果Fig.2 Simulation results of the redundant manipulator using the proposed scheme (14)to achieve position and orientation tracking

圖3 基于CoppeliaSim 平臺冗余機器人實現位置與姿態跟蹤的對比結果Fig.3 Comparison results of the redundant manipulator achieving position and orientation tracking based on CoppeliaSim platform
此外,表2 給出了所提方案(14)與其他5 種方案的對比.具體而言,所提方案(14)與對比方案使用同樣的機器人執行相同的任務,即圖2 中的應用場景,同時選取方案層級、末端執行器控制模式、結構信息是否已知以及跟蹤誤差等多個指標對方案進行了評價.值得指出的是,每個方案參數的選擇都基于其對應的文獻.從表2 可看出,文獻[13]為基于數據驅動的速度層控制方案,該方案能夠實現末端執行器姿態保持的功能;文獻[22]和文獻[23]為加速度層的控制方案,需要已知機器人的模型信息;文獻[24]和文獻[25]為速度層的控制方案,同樣需要已知機器人的模型信息.此外,從位置跟蹤誤差方面來看,每個方案的跟蹤誤差均維持在 1 0-3m數量級.在姿態跟蹤誤差方面,多數方案不支持姿態跟蹤,文獻[13]和文獻[25]的方案的跟蹤精度高于所提方案(14).然而,文獻[13]方案僅具備簡單的姿態保持功能,文獻[25]方案則無法應用于結構信息不準確或未知的機器人.綜上,本文所提方案(14)能夠有效地控制結構信息未知的機器人進行軌跡跟蹤任務,在對末端執行器姿態有約束的情況下具有一定優勢.

表2 冗余機器人不同軌跡跟蹤控制方案對比Table 2 Comparison of different trajectory tracking control schemes for redundant manipulators
本文針對模型未知的冗余機器人提出了一種基于數據驅動的末端執行器位姿控制方案.該方案從機器人運動學出發,用四元數表示末端執行器的姿態,進而實現了對末端執行器位姿控制.通過引入數據驅動技術,本文所提方案能夠有效地控制模型未知的冗余機器人,且估計的雅可比矩陣能夠收斂至真實值.此外,設計了一種神經動力學方案用于本方案的求解.理論分析證明了所提求解器的收斂性,方案對比和仿真實驗體現了所提方案對機器人末端執行器控制的優越性和有效性.