謝 瑋,陳家明,陳 軍,孫 華
(1.哈爾濱工業大學(威海) 信息科學與工程學院,山東 威海 264209;2. 哈爾濱工業大學(威海) 船舶與海洋工程學院,山東 威海 264209;3. 上海化學工業區公共管廊有限公司,上海 201424)
隨著機器人技術的發展,其應用越來越廣泛,特別是在許多人類難以到達或者危險性較高的場合[1],如救災、巡檢、深海探測和核電廠維護等,機器代人勢在必行。同時,隨著人工智能技術的發展,機器人系統已經逐步具有較高的環境適應能力和自主決策能力,因此在特定場合替代人工巡檢具有很多優勢。與輪式和履帶式巡檢機器人相比較,仿生足式機器人對復雜地形的適應能力更強,工作效率更高,具有靈活度好、可靠性高、適應性強的獨特優勢[2]。
六足仿生機器人由于肢體冗余度較高,其穩定性和負載能力比一般機器人更高,具有豐富的步態和一定的故障容錯能力,一直以來都是國內外機器人研究的熱點[3]。如何進行合理有效的步態規劃、實現各肢體的協調運動,以及六足機器人模型的簡化工作,仍是目前研究的重點和難點。國外許多研究機構開發出了多種先進的六足機器人,如美國加州理工大學設計的采用超輕晶圓電池提供動力的小型六足機器人Spider-bot[4],日本大阪大學研制的手腳兩用的機器人asterisk[5]和德國卡爾斯魯厄大學研發的六足機器人Lauron IV[6]等。國內典型的有上海交通大學研制的用于災難救援和環境探測的“六爪章魚”機器人[7],北京航空航天大學開發的圓周對稱分布結構的NOROS機器人[8],哈爾濱工業大學設計的以竹節蟲為參考模型的六足機器人HIT-Spider和HITCR-II[9-10]等。由此可見,國內外均已在六足仿生機器人的研制上取得了較大突破,在巡檢方面的應用將會向實用性、輕量化和智能化的方向發展。
對于機器人愛好者或者初級研究者來說,要做一個實用化的六足仿生機器人還是會面臨很多困難。本文以一種六足仿生巡檢機器人的系統設計為例,從結構設計、步態規劃、系統仿真和實物構建等各方面,探索一般意義上的六足仿生機器人系統的設計和實現方法[11-12]。
根據仿生學原理,六足機器人的六條步行腿在其身體的兩側呈對稱分布,每條腿都具有3個關節,分別稱為髖關節、膝關節和踝關節,如圖1所示。因此,機器人的每條腿都有3個旋轉自由度。

圖1 六足機器人步行腿分布及單腿關節分布
從仿生的角度來看,動物在運動過程中腿的運動狀態可分為支撐和擺動兩個過程。類比到足式機器人身上,則機器人的腿部運動也可分為支撐相和擺動相。為了使機器人快速而穩定地運動,就需要協調各步行腿之間的運動。從機器人左前腿開始編號,分別將左前腿、左中腿、左后腿、右后腿、右中腿、右前腿編為1號到6號,如圖1所示。結構設計的要點是要模擬動物的一種穩定步態,即在行走過程中,始終有三條腿支撐在地面上,構成穩定的三角形結構支撐身體運動。對于圖1的六足機器人來說,會選擇1號、3號和5號即左前腿、左后腿和右中腿這三條腿同步運動,同時選擇2號、4號和6號即左中腿、右后腿和右前腿這三條腿同步運動。對于單個腿而言,為保證擺動相和支撐相時間相同,增加行進中位和靜止這兩個中間過程,則單個步行腿的運動過程按時間順序分為抬腿、邁腿、放腿、行進中位、收腿和靜止6個狀態。機器人依靠腿部的擺動和肢體的協調來維持身體平衡和實現行走。
從運動學的角度看,圖1所設計的仿生機器人的腿更像是一個機械臂。因此可用一個三軸串聯關節型機器人的建模和分析方法來設計。可用標準D-H參數法建立機器人的單腿數學模型,這樣就可以把抬腿、邁腿、放腿、行進中位、收腿和靜止6個狀態轉化為運動學模型的求解和規劃,實現更加精準的步態控制。
將六足機器人的單腿當作一個三關節串聯機械臂結構進行分析和建模。首先為一個三關節的機械臂規劃路徑,即為機器人的一條腿規劃軌跡,根據足端的運動軌跡求解逆運動學問題得到各關節的關節角變化,進而根據相位關系得到其他腿的軌跡和關節角,并將它們組合成一個整體,即可得到六足機器人的步態。
對單腿進行建模,首先要建立坐標系,將坐標系的原點建立在機器人髖關節的中心處,如圖2所示。為了方便研究腿的抬起和放下,令Z軸朝下,X軸朝向機器人前方,因此Y軸就指向圖示右側,即機器人的外側。使用標準D-H參數法對機器人的腿機構建立數學模型,機械臂的3個關節分別實現機器人髖關節、膝關節和踝關節的轉動,而3個連桿則按照實際長度設計,其D-H參數如表1所示。其中,j表示關節編號,theta為關節角,d為連桿偏移,a為連桿長度,alpha為連桿扭轉角;offset為關節偏置量,用來調整各關節的初始位置。表中負值表示與標準D-H參數法定義的坐標系正方向相反,所有參數單位為標準國際單位。

圖2 機器人腿部模型及其坐標系

表1 機器人腿部D-H參數表
根據D-H參數,就可求出機器人每個腿的關節角度與末端位姿之間的對應關系。而且為仿真和步態規劃提供理論基礎。
對于面向巡檢類的機器人來說,步態規劃是路徑規劃的充分條件。描述動物的步態除了支撐相和擺動相之外,還有步態周期T、占空系數β、步幅和支撐多邊形等,其中T和β尤為重要。步態規劃的核心要義就是在行走過程中,始終有三條腿支撐在地面上,構成穩定的三角形結構支撐身體運動。
步態周期T主要是指完成一個步態所需要的時間,也就是機器人所有腿依次按順序完成抬腿、邁腿、放腿、行進中位、收腿和靜止動作所花費的時間,在此過程中機器人機體也完成相應運動。
占空系數β是指機器人的某個步行腿在地面上支撐身體所用的時間占整個運動周期所需時間的比例,具體定義如式(1)所示:
(1)
式中,Tst為單腿在一個步態周期內處于支撐相的時間,Tsw為單腿在一個步態周期內處于擺動相的時間。
六足仿生機器人的步態隨占空系數β的不同而變化。大多數研究者認為,當β=1/2時,六足機器人在整個運動過程中始終有三條腿在地面上支撐身體,且單個步行腿擺動相和支撐相的時間相同,運動的效率較高。
基于上述原理,六足機器人的縱向行走包括前進、后退、轉彎等運動,六足機器人的橫向行走是一種類似螃蟹步態的行走運動,因此可采用重心隨動的三角步態規劃方法來設計機器人的運動步態。
將足式機器人各支撐腿與地面的接觸點按順序依次連接起來,以此構成的封閉凸多邊形在水平面上的投影,稱為多足機器人的支撐多邊形。在運動過程中,若機器人質心的投影始終位于其支撐多邊形內,則認為其在運動過程中始終具有運動的穩定性。在此引入穩定裕度的量化方法來衡量相對穩定性的大小。
忽略單腿擺動對質心位置變化的影響,即認為機器人在行走過程中,質心始終落在其幾何中心上。質心投影到支撐多邊形各邊的距離為d1、d2和d3,則可按式(2)來定義機器人的穩定裕度:
S=min{d1,d2,d3}
(2)
穩定裕度描述了機器人在運動過程中相對穩定性的大小,穩定裕度越大,運動的靜態穩定性越高,機器人不容易發生傾倒側翻等故障。因此在一些復雜的環境中,需要根據穩定性分析,選擇合適的步態,統籌兼顧運動的快速性和穩定性要求。
根據2.1的步態規劃原理,我們把圖1的多腿分布分成兩組。把1、3、5號腿作為A組,將2、4、6號腿作為B組,同組的各步行腿在整個運動過程中始終保持同步動作。先令A組腿支撐在地面上,B組腿向前邁一步,與此同時A組腿向后擺動,推動機器人前進;然后 B組腿支撐在地面上,A組腿向前邁一步,與此同時B組腿向后擺動,推動機器人前進。在此過程中機器人的重心隨運動過程發生變化,因此稱之為重心隨動的三角步態。
單個步行腿的運動過程,按照具體運動細分為抬腿,邁腿,放腿,收腿。同時,為保證擺動相和支撐相時間相同,增加行進中位和靜止這兩個中間過程,則單個步行腿的運動過程按時間順序依次為:
1)抬腿:將腿豎直抬起離開地面,為腿的移動做準備;
2)邁腿:在水平方向移動腿,使腿運動到目標位置的正上方;
3)放腿:將處于目標位置的腿放下,起到支撐的作用;
4)行進中位:使腿部擺到目標位置和起始位置的中間位置,利用摩擦力移動身體。增加這一中間過程能使步態更加穩定協調;
5)收腿:使腿進一步擺動,回到開始運動時的動作,利用摩擦力使身體前進;
6)靜止:腿保持不動。
兩組腿之間的運動順序如表2所示,按時間先后從左到右進行。兩組腿分別按照表2的順序動作,即可實現穩定而協調的三角步態。

表2 步行腿運動過程
使用Peter Corke編寫的Robotics工具箱進行仿真測試。具體根據表1的D-H參數進行系統運動學建模,依據2.3給出的典型步態規劃方法從以下兩個方面進行仿真測試。
按照2.3的方法規劃機器人向前縱向行走時的單腿足端運動軌跡。首先根據三足步態和實際數學模型,定義足端各方向的運動極限,計算出足端運動軌跡的起點、中間點和終點的相對位置,解算出機器人每條腿部動作對應足端相對坐標。圖3是在實現期望步態的過程中,單腿關節角的變化過程,圖4為六條腿協調運行時的仿真運行位姿。

圖3 關節角隨時間變化的曲線

圖4 機器人向前縱行仿真動畫
圖4中,設機器人的運動周期的起點為A組(0.08, 0.13, 0.1),B組(0, 0.13, 0.1)。由于兩側的腿都沿直線運動,且各支撐點相對身體平面的距離都相等且保持不變,因此機器人的身體會沿直線平穩前進,繼而實現了平穩的縱行步態。
由于三角形的重心始終位于三角形內,且很容易求得,所以只需比較機器人質心與支撐多邊形的重心是否位于三條直線(三條邊所在直線)的同一側即可。經過驗證,機器人質心位置始終滿足要求,本實驗中實現的六足機器人縱向直線行走步態滿足靜態穩定性的要求。運動過程中按照式(2)定義的穩定裕度數值如圖5所示。

圖5 穩定裕度隨時間變化的曲線
基于三角步態實現的橫向行走,相較于縱向行走只是改變了運動方向,只需對關節空間的運動軌跡進行調整即可實現。除此之外,兩側腿在y方向上的坐標變化不再相同,但仍是對稱的,因為機器人需要平穩運動。仍然將六條腿分為A、B兩組,以機器人身體右側腿的運動為例,按照處理縱向行走步態的方法,定義足端各方向的運動極限和解算機器人右腿動作對應足端坐標。得到腿部各關節的角度變化,如圖6所示。按照3.3中的方法進行仿真,運動周期的起點為A組(0, 0.17, 0.1),B組(0, 0.13, 0.1),運動過程中的某個截圖如圖7所示。仿真實現了平穩的橫行步態。

圖6 右腿關節角隨時間變化的曲線

圖7 機器人向右橫行仿真動畫
運動過程中按照式(2)定義的穩定裕度數值如圖8所示。可以看出,整個運動過程中穩定裕度都較大,且穩定性要比向前縱行時要好。經過驗證,機器人質心位置始終滿足要求,本實驗中實現的六足機器人橫向直線行走步態滿足靜態穩定性的要求。

圖8 穩定裕度隨時間變化的曲線
通過3.1和3.2的仿真測試表明,2.3給出的步態規劃方法可以實現機器人的縱向運動和橫向運動,基本能滿足系統的設計要求。
按照仿真驗證的系統功能要求,我們采用了博創尚和公司的創意之星配件和控制器,選擇CDS 5500系列舵機作為關節構件,搭建的六足機器人實物,測試得到六足機器人縱行和橫行運動的數據。由于有避障的要求,六足機器人可能需要走復雜曲線,因此可以在仿真理論數據的基礎上稍加改動即可。同時,為了提高機器人運動的穩定性,應在運動交替的時候加入一段共同的支撐時間。實驗數據如表3所示,其中1、3、5為A組,2、4、6為B組,11、

表3 縱向行走的實驗數據 (°)
12和13分別代表左前腿髖關節、膝關節和踝關節的舵機輸出角度,以此類推。表中的數據已按照實際情況增加了180°,且分別對應各動作的起點位置。
運動過程如圖9所示。

圖9 運動過程圖
機器人向右橫向行走的結果如表4所示。

表4 橫向行走的實驗數據 (°)
在實物上進行了測試,并且能滿足設計要求,很好地實現了三足步態的縱行運動和橫行運動,且避障性能良好,符合預期目標。
近年來,由于人類探測環境越來越復雜和惡劣,六足仿生機器人獲得了更廣闊的應用,其靈活度好、可靠性高、適應性強的特點具有很大的實際意義。本文以一種六足仿生巡檢機器人的系統設計為例,從結構設計、步態規劃、系統仿真和實物構建等各方面,給出了一般意義上的六足仿生機器人系統的設計和實現方法。最后搭建了六足仿生巡檢機器人樣機,證明了三足步態規劃的合理性。這個機器人系統分析和設計流程完全可以推廣到其它類型的機器人系統設計流程中去。
另外,在本文實現的三足步態的基礎上,還可以實現其他步態,如四足步態、五足步態、轉彎步態等。本文主要采用運動學建模的方法,未來要考慮如何采用動力學補償方法精準的控制機器人的位姿和關節力矩。當然,可以在本文搭建的六足仿生巡檢機器人樣機的基礎上,為機器人增加攝像頭、無線遙控和巡檢檢測傳感器,以適應更多的巡檢應用場合,比如公共管廊檢測等,這些都有待于未來進一步的研究。