双足机器人控制技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
雙足機器人控制技術
臺灣科技大學 施慶隆
一、簡介
雙足機器人或廣義的人形機器人的種類大致上可分為如真人般大小的人形機器人(human-size humanoid robot)以及小型的人形機器人(small-size humanoid robot)兩大類。如真人般大小的人形機器人通常具有二十多個致動器,身高介於120與180cm之間,體重大約50Kg左右。其致動器大多數是由直流或交流伺服馬達、編碼器、諧波減速機(100:1)以及皮帶輪(1~5:1)所組成。著名的範例有Honda ASIMO、日本HRP及HRP-2、早稻田大學WABIAN II、東京大學H6及UT-Theta、德國Jonnie、法國BIP、韓國KHR…等等。如真人般大小的人形機器人的開發成本十分昂貴,其最終的設計目標與用途不外乎作為人類的忠實僕人,取代人類從事單調、危險、耗體能以及冒險等工作。相對的,小型的人形機器人的開發成本相對低廉,其目標與用途為娛樂玩具市場與學校教育訓練。小型的人形機器人的身高通常低於50cm、重量少於3Kg,其致動器大都選用輸出力矩為10~20 kg-cm的伺服機(RC servo)。目前知名的小型人形機器人產品有SONY SDR-3x及QRIO、ZMP公司 NUVO及PINO…等等。本文之目的為介紹如人一般大小之二足機器人的控制技術與原理。
二足步行機器人的平衡與步行控制為發展可如人類自由行走之人形機器人的先決條件。二足步行機器人為多自由度機構複雜非線性而且大多屬於欠缺致動器的控制系統,而且一個步行週期存在多個不同動態模式以及需與環境進行碰撞接觸。二足步行機器人步行時之動態過程為單腳支撐期(single-support phase)及雙腳支撐期(double-support phase)交替互換之混合式動態系統(hybrid dynamic system)。單腳支撐期時一腳為支撐腳而另一腳則擺動前進至著地;然後進入雙腳支撐期。雙腳支撐期發生於當擺動腳著地與地面碰撞之瞬間;通常假設擺動腳著地時既不會反彈也不會在地面上滑動。雙腳支撐期間兩腳也一同互換角色。
簡單而言,二足機器人有二種維持步行平衡穩定的步行方法:靜態平衡步行(statically stable walking)以及動態平衡步行(dynamically stable walking)。靜態步行的特徵在於控制機器人的重心永遠落著地腳的內部,這種步行速度慢且笨拙。相反的,動態步行有較高速度的步行運動。然而,動態步行也存在著相當的複雜性與困難性,不論在運動軌跡的產生、數學模式與穩定平衡控制、控制器實現以及實驗機器人的建立都十分不易。二足步行機器人動態步行(dynamic walking)的控制方法可分為以零力矩點(ZMP based)為基礎的控制方法[1]以及以週期穩定性(periodic stability based) 為基礎的控制方法[2]兩大類方法。日本的二足步行機器人大都採用零力矩點的控制方法。從早期的早稻田大學的實驗用二足步行機器人到Honda公司的展示用人型機器人ASIMO,他
們著重的是實驗步行結果。然而,歐美各國的研究學者大都採用週期穩定性的方法,他們強調的是理論證明與步行週期穩定性的分析。以週期穩定性為基礎的動態平衡步行又稱為純動態步行(pure dynamic walking)以便與以零力矩點為基礎的動態步行有所區分。
二、雙足機器人運動自由度與致動器個數
首先定義世界參考座標之x軸為機器人正面之前進方向、z軸為垂直於地面方向向上之方向、y軸為使得座標軸x-y-z滿足右手定則之方向。機器人於x-y-z 三度空間座標的運動可以3個平面座標來描述。接著定義下列3個平面座標來說明二足步行機器人之運動。
(1)x-z側視平面(sagittal plane):二足機器人需維持前後平衡不傾倒以及機器人步行前進平面。
(2)y-z前視平面(frontal plane):二足機器人需維持左右平衡不傾倒。 (3)x-y頂視平面(transverse plane):二足機器人轉向運動平面。
二度空間(2D)步行機器人只需考慮x-z側視平面的平衡及行走運動。三度空間(3D)步行機器人除了需考慮x-z側視平面的平衡及行走運動之外,尚需考慮y-z前視平面的平衡以及x-y頂視平面的轉向運動。
二足機器人的步行方法及能力與其運動自由度以及致動器個數息息相關[3],二足機器人運動自由度的計算於單腳支撐期以及雙腳支撐期是不相同的;為易於討論以及機器人步行時絕大部分的過程為單腳支撐期,因此我們僅介紹單腳支撐期的運動自由度。機器人的運動自由度為機器人於空間中有可獨立運動的維度,二足機器人的運動自由度可從1個至12個運動自由度,二足機器人可視為身體及左右雙足3個串接的運動物體。一個運動物體在三度空間有3個旋轉自由度以及3個平移自由度;因此通常3D步行機器人為12運動自由度。同理,通常2D步行機器人則為6運動自由度。
機器人的致動器個數為安裝於機器人關節上的馬達個數,這些關節稱為主動關節;相對的,機器人未裝有致動器但可獨立自由運動的關節稱為被動關節。通常,機器人的運動自由度等於主動關節個數以及被動關節個數之和。當致動器的個數多於機器人的運動自由度,我們稱為多餘自由度的機器人;當致動器的個數少於機器人的運動自由度,我們稱為欠缺自由度的機器人。二足機器人的致動器個數可從零至15個致動器。
最簡單可行走的機器人為1個運動自由度與無致動器的被動式步行二足機器人[4],如圖1所示。此2D步行機器人僅能行走於向下的平坦斜面,因此只有1個運動自由度。此機器人無致動器其行走動力的來源為重力,從控制理論的觀點來看,因為此機器人系統存在有自主式的週期性穩定的解,因此它可以在無致動器下以適當的初始角度及初始角速度開始步行;以今日高度重視環境保護的時代而言,它是節能百分百的綠色機器人。
圖1 1個運動自由度及無致動器之被動式步行雙足機器人
最為標準及常見的二足機器人為12個運動自由度及12個致動器的機器人,以圖2所示之機器人為例,其左右雙腳各有6個致動器;通常在機器人的大腿處安裝3個致動器、膝蓋處安裝1個致動器、腳踝處安裝2個致動器以及一個腳底板。此結構之二足機器人可靜態步行及動態步行;可前進後退、轉變運動方向、上下階梯及斜坡。機器人的身軀可以額外的加上1至3個致動器來幫助機器人維持運動平衡。例如,圖3為身軀額外加入3個致動器之12個運動自由度及15個致動器的二足機器人。雖然致動器多可使得二足機器人行走動作更靈巧更擬人化,但是機構設計更為複雜,系統更難控制,而且機器人重量增加、更耗費能源。顯然在致動器與供電電池尚未有重大突破之前,設計一個12個運動自由度以及至少12個致動器的二足機器人不是一件簡單的工作。
圖2 12個運動自由度及12個致動器之雙足機器人