專利名稱:腿式機器人以及腿式機器人的行走控制方法
技術(shù)領域:
本發(fā)明涉及控制腿聯(lián)合體(腳リンク)可擺動地連結(jié)在軀體(軀干)上的機器(腿式機器人的機械系統(tǒng))并使其行走的技術(shù)。詳細地說,涉及即使在有意料之外的外部干擾力作用時也能夠穩(wěn)定地持續(xù)行走的腿式機器人、及其行走控制方法。
背景技術(shù):
目前正在開發(fā)通過改變左腿聯(lián)合體、軀體、以及右腿聯(lián)合體的相對姿勢來行走的腿式機器人。
為了行走,腿式機器人需要指示左腳、軀體以及右腳如何運動的數(shù)據(jù)。其中,軀體位置相對于腳部位置必須為適當?shù)闹?,如果該值不適當?shù)脑挘瑱C器人就會摔倒。
為了獲得腿式機器人不會摔倒的軀體位置,需要考慮機器人的動態(tài)并進行復雜的計算。該計算過程大致如下。
(1)指定指示機器人的左腳和右腳的位置的經(jīng)時數(shù)據(jù)。
(2)考慮腳部位置來指定機器人的ZMP必定存在的位置。ZMP(zero moment point,零力矩點)是指作用于機器人的重力、地面反作用力、慣性力的合力的力矩為零的地面上的點。如果ZMP位于著地腿的腳掌以內(nèi),機器人就不會摔倒。換言之,為了使機器人不摔倒,ZMP必須位于著地腿的腳掌以內(nèi)。因此,考慮著地腿的腳部位置來指定滿足下述關(guān)系的目標ZMP。即,指定以下ZMP在一只腿聯(lián)合體(例如左腿)懸空期間位于著地腿(右腿)的腳掌以內(nèi),當該腿(左腿)著地、從而變?yōu)閮赡_著地的狀態(tài)時,開始向新著地的腿(左腿)的腳掌以內(nèi)移動,至此,在著地的腿(右腿)懸空以前,完成向新著地的腿(左腿)的腳掌以內(nèi)的移動。這樣指定的ZMP被稱為目標ZMP。如果實際的ZMP像目標ZMP那樣移動,機器人就不會摔倒并可以持續(xù)行走下去。
(3)指定了腳部位置的變化和隨之改變的目標ZMP之后,假定軀體位置的經(jīng)時變化并計算機器人的動態(tài)。當進行計算時,由于指定了腳部軌跡,所以假定了機器人的軀體位置以后,機器人的姿勢就確定了。一旦機器人的姿勢確定了,就可以計算出該姿勢下的ZMP的位置。為了計算ZMP的位置,除了靜態(tài)要素以外,還必須考慮作用于機器人的慣性力的影響。通過在計算中包括假定的軀體位置的經(jīng)時變化,甚至能夠考慮機器人的動態(tài)來計算ZMP的位置。由于假定了軀體位置的經(jīng)時變化(軀體軌跡)后可以計算出ZMP的位置,因此可以求出實現(xiàn)與目標ZMP一致的ZMP的軀體軌跡(軀體位置的經(jīng)時變化)。
將通過上述而求出的表示軀體位置的經(jīng)時變化的數(shù)據(jù)稱為軀體步態(tài)數(shù)據(jù),將表示原來指定的腳部位置的經(jīng)時變化的數(shù)據(jù)稱為腳部步態(tài)數(shù)據(jù),將兩者統(tǒng)稱為步態(tài)數(shù)據(jù)。如果機器人按照步態(tài)數(shù)據(jù)來行走的話,實際的ZMP將與目標ZMP一致,機器人不會摔倒,從而可以持續(xù)行走。
作為步態(tài)數(shù)據(jù),給出的是位置相對于時間的變化,由于位置、速度和加速度相互關(guān)聯(lián),從其中的一個量可以計算出其他量,因此步態(tài)數(shù)據(jù)可以是位置、速度或加速度。在本說明書中,由于通過位置、速度、加速度中的某一個來描述步態(tài)數(shù)據(jù),因此將其稱為描述運動的數(shù)據(jù)。
作為對產(chǎn)生與目標ZMP一致的ZMP的軀體運動進行計算的方法,典型的例子是跟隨目標腳部運動的變化來計算使機器人能夠持續(xù)行走的目標軀體運動的經(jīng)時變化的方法,但不限于此。通常來說,腿式機器人具有軀體、以及可擺動地連結(jié)在軀體上的腿聯(lián)合體,一旦指示了描述目標腳部運動的經(jīng)時變化的腳部步態(tài)數(shù)據(jù),則跟隨目標腳部運動的變化計算出軀體步態(tài)數(shù)據(jù),并使用被指示的腳部步態(tài)數(shù)據(jù)和計算出的軀體步態(tài)數(shù)據(jù)來行走,其中所述軀體步態(tài)數(shù)據(jù)描述可以持續(xù)行走的目標軀體運動的經(jīng)時變化。計算出的軀體步態(tài)數(shù)據(jù)除了與軀體位置相關(guān)的數(shù)據(jù)以外,有時還包括與軀體的傾斜角度相關(guān)的數(shù)據(jù)(如果預先使軀體的傾斜角度遵循預定的模式,則不需要計算軀體的傾斜角度)。與軀體的位置或傾斜角度相關(guān)的數(shù)據(jù)可以是位置或角度自身,也可以是其變化速度,或是其加速度。
有時,有意料之外的外部干擾力作用于機器人。有時是意料之外的路面的凹凸所造成的意料之外的外部干擾力,有時是來自外界的推、拉機器人的外力。由于機器人的結(jié)構(gòu)上的撓曲、機器人的關(guān)節(jié)的松動、或機器人的響應延遲等造成偏離步態(tài)數(shù)據(jù)的情況與意料之外的外部干擾力作用在機器人上一樣。
如果有意料之外的外部干擾力的作用,有時機器人會失去平衡。因此,提出了記載于日本專利文獻特開平5-305579號公報中的行走控制裝置。
在日本專利文獻特開平5-305579號公報所記載的行走控制裝置中,通過測定作用于機器人的地面反作用力或地面反作用力的力矩來實際測定ZMP位置。通過對實際測定的ZMP位置和目標ZMP位置進行比較并將其偏差反饋給兩個腳掌的目標位置和姿勢來實現(xiàn)穩(wěn)定的行走。
發(fā)明內(nèi)容
在日本專利文獻特開平5-305579號公報所記載的行走控制裝置中,需要檢測地面反作用力或地面反作用力的力矩,為了檢測出地面反作用力或地面反作用力的力矩,需要在右腿和左腿的腳部附近安裝六軸力傳感器等高性能傳感器。
六軸力傳感器等高性能傳感器價格昂貴。另外,腳部是在機器人的行走過程中著地沖擊負荷重復作用的部位,因此如果在腳部附近安裝傳感器的話,傳感器由于沖擊負荷很容易產(chǎn)生故障。一旦安裝在腳部的力傳感器產(chǎn)生了故障,機器人就無法持續(xù)行走。另外,當在腳部安裝力傳感器時,需要很多部件以將信號從力傳感器傳至計算部。即使只有一個部件產(chǎn)生了故障,來自力傳感器的信號也無法正確地傳至計算部,結(jié)果將造成力傳感器陷入無法工作的狀態(tài)。
從上述背景看來,為了降低腿式機器人的制造成本并提高其可靠性,需要不必在腳上安裝力傳感器、而以更簡單的結(jié)構(gòu)來實現(xiàn)穩(wěn)定的行走的技術(shù)。
本發(fā)明是為了解決上述現(xiàn)有的技術(shù)問題而創(chuàng)造的,提供一種即使不在腳部安裝力傳感器也能夠穩(wěn)定地持續(xù)行走的腿式機器人、以及用于其的行走控制方法。
本發(fā)明所創(chuàng)造的腿式機器人具有軀體、以及可擺動地連結(jié)在軀體上的腿聯(lián)合體。并且,具有描述目標腳部運動的經(jīng)時變化的腳部步態(tài)數(shù)據(jù)的存儲裝置、以及描述目標軀體運動的經(jīng)時變化的軀體步態(tài)數(shù)據(jù)的存儲裝置。目標軀體運動被設定為能夠跟隨目的腳部運動的變化而持續(xù)行走。例如,存儲使實際的ZMP與跟隨目標腳部位置變化的目標ZMP相一致的軀體運動。
本發(fā)明的機器人還具有檢測實際的軀體運動的軀體運動檢測裝置、以及計算目標軀體運動與實際的軀體運動之間的偏差的偏差計算裝置。并且,還具有修正裝置,該修正裝置根據(jù)計算出的偏差和規(guī)定的傳遞函數(shù)求出修正量,并根據(jù)該修正量對存儲在軀體步態(tài)數(shù)據(jù)存儲裝置中的軀體步態(tài)數(shù)據(jù)進行修正。
也可以將本發(fā)明理解為行走控制方法。在本發(fā)明的行走控制方法中,執(zhí)行以下步驟存儲描述目標腳部運動的經(jīng)時變化的腳部步態(tài)數(shù)據(jù)的步驟;以及存儲描述目標軀體運動的經(jīng)時變化的軀體步態(tài)數(shù)據(jù)的步驟。目標軀體運動被設定為能夠跟隨目標腳部運動的變化而持續(xù)行走。例如,存儲使實際的ZMP與跟隨目標腳部位置的變化的目標ZMP一致的軀體運動。
在本發(fā)明的行走控制方法中,具有檢測實際的軀體運動的步驟、以及計算目標軀體運動與實際的軀體運動之間的偏差的步驟。并且,還執(zhí)行以下步驟,即根據(jù)計算出的偏差和規(guī)定的傳遞函數(shù)求出修正量,根據(jù)該修正量來修正軀體步態(tài)數(shù)據(jù),并向計算機器人的關(guān)節(jié)角度的裝置指示經(jīng)修正的軀體步態(tài)數(shù)據(jù)的步驟。在機器人中設置有對機器人的每個關(guān)節(jié)的關(guān)節(jié)角度進行計算的裝置。
在上述腿式機器人及其行走控制方法中,監(jiān)視機器人實際的軀體運動,并根據(jù)其與目標軀體運動的偏差求出描述目標軀體運動的軀體步態(tài)數(shù)據(jù)的修正量。由于直接對軀體運動進行反饋控制,所以能夠使軀體運動保持穩(wěn)定。因此,機器人不會失去平衡,從而能夠穩(wěn)定地持續(xù)行走下去。
通過實驗確認到的是通過監(jiān)視實際的軀體運動來進行反饋控制,即使不實際測定ZMP位置來進行反饋控制,也能夠持續(xù)行走。確認了即使有外部干擾力等的作用也能夠持續(xù)行走。
通過該控制方法,不需要實際測定ZMP位置,從而不需要用于該目的的力傳感器??梢詫崿F(xiàn)低價、高可靠性的行走機器人。
優(yōu)選通過偏差計算裝置計算目標軀體加速度和實際的軀體加速度的偏差。此時,可以根據(jù)加速度的偏差計算出作用于機器人的意料之外的外部干擾力的大小。因此,可以計算出使補償外部干擾力的力作用于機器人所需的目標軀體運動的修正量。在修正量計算過程中,根據(jù)通過加速度偏差計算出的外部干擾力和規(guī)定的傳遞函數(shù)求出修正量。
一旦向機器人指示了通過計算出的修正量修正后的目標軀體運動,機器人就可以在補償外部干擾力的影響的同時持續(xù)行走了。由于比較容易在軀體上安裝加速度傳感器,因此該方式非常實用。
當根據(jù)加速度偏差并利用傳遞函數(shù)來計算目標軀體位置的修正量時,傳遞函數(shù)優(yōu)選包括比例要素。在這種情況下,當實際的軀體位置偏離了目標軀體位置時,計算出與該偏離成比例的修正量,結(jié)果能夠獲得通過彈簧拉向目標軀體位置的現(xiàn)象。
并且,傳遞函數(shù)優(yōu)選除了比例要素之外還包括一次滯后要素或二次滯后要素或該兩者。此時,當實際的軀體位置偏離了目標軀體位置時,計算與位置的偏離的變化速度和/或加速度成比例的修正量,結(jié)果能夠獲得使其向目標軀體位置回歸的現(xiàn)象。
當能夠檢測出實際的軀體位置時,優(yōu)選使根據(jù)加速度偏差進行修正后的目標軀體位置與實際的軀體位置的偏差與進行反饋處理的量相加,由此對目標軀體位置再次進行修正。
此時,即使當機器人在不平整的地面上行走而造成機器人整體傾斜時,也能夠?qū)嶋H的軀體位置進行反饋控制以使其回歸到目標軀體位置,從而可以通過簡單的機構(gòu)而使機器人在不平整的地面上穩(wěn)定地行走。
根據(jù)本發(fā)明,能夠?qū)崿F(xiàn)不在腳部使用力傳感器就可以穩(wěn)定地持續(xù)行走的腿式機器人??梢詫崿F(xiàn)廉價且可靠性高的腿式機器人。
通過參照以下附圖可以更好地理解本發(fā)明。對于附圖的構(gòu)成要素,為了明確地示出本發(fā)明的原理,使用了強調(diào)的方式,而不都是固定的縮小比例尺。在附圖中,參照標號在不同的附圖中表示相對應的部分。
圖1是表示腿式移動機器人的行走概況的示意圖;圖2是模塊化表示第一實施例的計算機裝置的功能的示意圖;圖3是模塊化表示第一實施例的軀體步態(tài)數(shù)據(jù)修正計算部的功能的框圖;圖4是軀體的力學模型的示意圖;圖5是簡要示出作用于軀體的、向理想軌跡的回歸力的示意圖;圖6(a)和圖6(b)是簡要表示目標軀體運動的修正給軀體的運動帶來的效果的示意圖;圖7是表示第一實施例的機器人的行走控制方法的處理步驟的示意圖;圖8是表示第一實施例的軀體步態(tài)數(shù)據(jù)的修正計算的處理步驟的示意圖;圖9是模塊化表示第二實施例的計算機裝置的功能的示意圖;圖10是模塊化表示第二實施例的軀體步態(tài)數(shù)據(jù)修正計算部的功能的示意圖;圖11是表示第二實施例的軀體步態(tài)數(shù)據(jù)的修正計算的處理步驟的示意圖。
具體實施例方式
下面,通過實驗例來更加詳細地說明本發(fā)明,但這并不意味著本發(fā)明限定于實驗例。
(第一實施例)
使圖1所示的機器人6的左腿在其右腿著地期間懸空并沿軌跡7移動,然后當左腿著地后使右腿懸空并沿軌跡8移動,然后同樣地使左腿懸空并沿軌跡9移動,然后使右腿懸空并沿軌跡10移動,從而持續(xù)行走下去。
機器人6為了持續(xù)行走,需要由描述腳部基準點L、R的軌跡7、8、9、10的腳部軌跡數(shù)據(jù)、腕部軌跡數(shù)據(jù)、以及描述軀體12的基準點W的軌跡的軀體軌跡數(shù)據(jù)構(gòu)成的步態(tài)數(shù)據(jù)。腳部軌跡數(shù)據(jù)由操控者指定。與腳部軌跡數(shù)據(jù)相對應地計算出腕部軌跡數(shù)據(jù)。軀體軌跡數(shù)據(jù)被設定為使用機器人的力學模型計算出的ZMP軌跡與目標ZMP軌跡一致的關(guān)系。
為了控制機器人的行走,在機器人6的軀體12上安裝計算機裝置14。計算機裝置14具有CPU、ROM、RAM、硬盤等。計算機裝置14的硬件結(jié)構(gòu)與通用的計算機相同,因此省略其說明。計算機裝置14存儲有步態(tài)數(shù)據(jù),根據(jù)該數(shù)據(jù)來控制機器人6的各個關(guān)節(jié)組。
在本實施例中,如圖1所示,將機器人6的行走方向作為x軸,將身體側(cè)面方向作為y軸,將高度方向作為z軸。
圖2是將計算機裝置14的功能模塊化的示意圖。在圖2所示的元件中,機器人的機械系統(tǒng)216和軀體加速度傳感器218之外的部分是計算機裝置14的構(gòu)成元件。計算機裝置14在物理上既可以整體包括在一個裝置中,也可以分別容納在各個分離的裝置中。
在步態(tài)數(shù)據(jù)存儲裝置210中存儲有預先計算出的機器人6的步態(tài)數(shù)據(jù)。步態(tài)數(shù)據(jù)是指腕部軌跡數(shù)據(jù)(腕部步態(tài)數(shù)據(jù))、腳部軌跡數(shù)據(jù)(腳部步態(tài)數(shù)據(jù))以及軀體軌跡數(shù)據(jù)(軀體步態(tài)數(shù)據(jù))。在預先存儲的步態(tài)數(shù)據(jù)中,腕部軌跡數(shù)據(jù)和腳部軌跡數(shù)據(jù)直接輸入關(guān)節(jié)角組計算裝置212。軀體步態(tài)數(shù)據(jù)被輸入軀體步態(tài)數(shù)據(jù)修正計算部222,伴隨著機器人6的行走每次均被修正,表示經(jīng)修正的軀體軌跡的數(shù)據(jù)被輸入各關(guān)節(jié)角組計算裝置212。
各關(guān)節(jié)角組計算裝置212根據(jù)輸入的步態(tài)數(shù)據(jù)并通過解所謂的逆運動學來計算機器人6的各關(guān)節(jié)角度θ1(t)、θ2(t)、θ3(t)、…。將計算出的各關(guān)節(jié)角組數(shù)據(jù)輸入致動器控制部214。
致動器控制部214控制使圖1的機器人6的關(guān)節(jié)組旋轉(zhuǎn)的致動器組。致動器組位于機器人的機械系統(tǒng)216中。一旦控制了致動器組,就可以將機器人6的關(guān)節(jié)角度調(diào)節(jié)成所計算出的關(guān)節(jié)角度。機器人6按照步態(tài)數(shù)據(jù)來行走。
在軀體12上安裝有軀體加速度傳感器218,檢測軀體的x方向(行走方向)、y方向(軀體側(cè)面方向)和z方向(高度方向)的加速度。軀體加速度計算裝置220將通過軀體加速度傳感器218檢測出的實際軀體加速度axr、ayr、azr輸出給軀體步態(tài)數(shù)據(jù)修正計算部222。
軀體步態(tài)數(shù)據(jù)修正計算部222根據(jù)存儲在步態(tài)數(shù)據(jù)存儲裝置210中的軀體軌跡數(shù)據(jù)(軀體步態(tài)數(shù)據(jù))和軀體加速度計算裝置220計算出的機器人的實際軀體加速度,對軀體軌跡數(shù)據(jù)進行修正。后面將詳細地說明軀體軌跡數(shù)據(jù)的修正。經(jīng)修正的軀體軌跡數(shù)據(jù)被輸入各關(guān)節(jié)角組計算裝置212。
圖3是示出軀體步態(tài)數(shù)據(jù)修正計算部222的詳細情況的框圖。在圖3中,為了使圖示明確,僅示出了x方向的情況。y方向和z方向與其相同。腳部軌跡數(shù)據(jù)和腕部軌跡數(shù)據(jù)不經(jīng)修正而被直接指示給關(guān)節(jié)角組計算裝置212。
在軀體步態(tài)數(shù)據(jù)修正計算部222中,通過裝置304計算出目標軀體加速度axo、ayo、azo,該裝置304進行目標軀體位置xo、yo、zo(各自隨著時間而改變)對時間的二階微分運算,該目標軀體位置xo、yo、zo由存儲在步態(tài)數(shù)據(jù)存儲裝置210中的軀體步態(tài)數(shù)據(jù)表示。
在偏差計算裝置312中,從實際的軀體加速度axr、ayr、azr中減去目標軀體加速度axo、ayo、azo,從而計算出加速度偏差Δax、Δay、Δaz。
外部干擾力計算裝置310通過使計算出的加速度偏差Δax、Δay、Δaz與機器人的質(zhì)量M相乘來計算推定作用于機器人的外部干擾力Drx、Dry、Drz的大小。當機器人的關(guān)節(jié)等有松動、或有對控制的響應延遲、或有來自外部的外力作用時,實際的軀體加速度不是目標軀體加速度,由于意料之外的外部干擾力而產(chǎn)生了加速度偏差Δax、Δay、Δaz??梢愿鶕?jù)加速度偏差Δax、Δay、Δaz來計算作用于機器人的外部干擾力Drx、Dry、Drz的大小。
目標修正量計算裝置308輸入計算出的外部干擾力Drx、Dry、Drz,并根據(jù)傳遞函數(shù)1/G(s)求出目標軀體位置的修正量xd、yd、zd。傳遞函數(shù)1/G(s)由設二次項的系數(shù)為Mi、設一次項的系數(shù)為Ci、設零次項的系數(shù)為Ki的延遲要素構(gòu)成。Mi、Ci、Ki是期望的參數(shù),被預先指定。目標修正量計算裝置308的處理相當于例如針對x方向來解微分方程Drx=Mi·xd(2)+Ci·xd(1)+Ki·xd(0)而求出xd。在這里,(2)表示與時間相關(guān)的二階微分,(1)表示與時間相關(guān)的一階微分,(0)表示xd自身。
并且,根據(jù)修正量xd的符號的取法,有時以-Drx=Mi·xd(2)+Ci·xd(1)+Ki·xd(0)來表示也是正確的。
目標軀體位置修正裝置306使步態(tài)數(shù)據(jù)存儲裝置210所存儲的修正前的目標軀體位置xo、yo、zo與修正量xd、yd、zd相加,從而計算出修正后的目標軀體位置xref、yref、zref,并指示給關(guān)節(jié)角組計算裝置212。
下面對上述修正目標軀體軌跡數(shù)據(jù)的控制規(guī)則所起的作用進行說明。
圖4示出了機器人的力學模型。軀體12位于目標軀體位置時的軀體由402表示,偏離目標軀體位置時的軀體由404表示。
圖4的(1)式表示機器人的通常運動方程式。F表示作用于軀體的全部外力,M表示軀體的質(zhì)量,a表示軀體的加速度。
對于軀體來說,存在著適于行走的理想軌跡(目標軌跡)。目標軌跡是在外部干擾力不作用于機器人的情況下實現(xiàn)與目標ZMP一致的ZMP的軀體軌跡。
(2)式表示沿目標軀體軌跡運動的機器人的軀體402的運動方程式。Fo表示作用于軀體402的全部外力,ao表示軀體402的目標加速度。
Fo是沿目標軀體軌跡運動時作用于軀體402的全部外力,是機器人在進行理想的行走的狀態(tài)下從腿聯(lián)合體作用于軀體的內(nèi)力和作用于機器人的軀體的重力的合力。
由于實際的軀體的運動受無法預測的路面的凹凸、機器人的結(jié)構(gòu)上的撓曲等外部干擾力的影響,因此難以控制其沿目標軀體軌跡運動。將實際的軀體的運動稱為實際軌跡。
(3)式表示沿實際軌跡運動的機器人的軀體404的運動方程。Fr表示作用于軀體404的全部外力,ar表示軀體404的實際的加速度。
(4)式表示作用于機器人的軀體的外部干擾力的推算式。Dr表示將作用于機器人的外部干擾力對軀體運動的影響作為作用于軀體重心的外力來進行表現(xiàn)的外部干擾力。Fo是沿目標軀體軌跡運動時作用于軀體的全部外力,是機器人在進行理想的行走的狀態(tài)下從腿聯(lián)合體作用于軀體的內(nèi)力和作用于機器人的軀體的重力的合力。Fr是作用于沿實際軌跡運動的軀體的全部外力,是在機器人進行理想的行走的狀態(tài)下從腿聯(lián)合體作用于軀體的內(nèi)力、作用于機器人的軀體的重力、以及外部干擾力的合力。因此,通過取Fr和Fo的差,可以推定作用于軀體的外部干擾力Dr。
(5)式、(6)式是計算在實施例中使用的目標軀體位置的修正量xd的式子。傳遞函數(shù)g(s)描述圖5所示的“彈簧-質(zhì)點-減震器系統(tǒng)”。
圖5是表示通過對目標軀體位置進行修正,使其回歸到理想軌跡的力作用于機器人的軀體的關(guān)系的模式圖。
修正前的目標軀體位置510是實現(xiàn)與目標ZMP一致的ZMP的理想的軀體位置。
實際上,由于外部干擾力Dr的作用,實際的軀體位置512偏離目標軀體位置510。
修正后的目標軀體位置506是從修正前的目標軀體位置510偏離了xd的點。
通過(6)對目標軀體位置進行修正后,等價于如下的“彈簧-質(zhì)點-減震器系統(tǒng)”,即經(jīng)修正的目標軀體位置506與修正前的目標軀體位置510通過彈簧常數(shù)為Ki的彈簧502、衰減系數(shù)為Ci的減震器508而結(jié)合,在修正后的目標軀體位置506處具有質(zhì)量為Mi的質(zhì)點504,并在實際的軀體位置512上作用有外部干擾力Dr。“彈簧-質(zhì)點-減震器系統(tǒng)”的傳遞函數(shù)1/G(s)包括以二次項的系數(shù)Mi、一次項的系數(shù)Ci、零次項的系數(shù)Ki表示的延遲要素,對引起急劇變動的外部干擾力發(fā)揮向目標軀體位置回歸的回歸力,并且起抑制急劇的位置變動的減震器的作用。
零次的系數(shù)Ki導出與外部干擾力Dr成比例的目標軀體位置的修正量。一次系數(shù)Ci導出與外部干擾力Dr的一次滯后要素成比例的目標軀體位置的修正量。二次系數(shù)Mi導出與外部干擾力Dr的二次滯后要素成比例的目標軀體位置的修正量。
其中,比例要素的系數(shù)Ki不可缺少,但可以省略一次滯后要素的系數(shù)Ci和二次滯后要素的系數(shù)Mi中的一個或它們兩個??梢源_認的是即使使一次滯后要素的系數(shù)Ci和二次滯后要素的系數(shù)Mi中的一個或它們兩個為零,機器人也能夠穩(wěn)定地持續(xù)行走。
圖6(a)和圖6(b)簡要示出了對目標軀體運動進行修正的效果。
圖6(a)表示不對目標軀體運動進行修正的機器人行走的情況。如果外部干擾力Dr作用于軀體,則機器人的軀體位置602跟隨外部干擾力Dr而偏離理想軌跡。當外部干擾力引起急劇的變化時,由于實際的軀體運動也急劇地改變,因此行走變得不穩(wěn)定。
圖6(b)表示對目標軀體運動進行修正的機器人行走的情況。如果外部干擾力Dr作用于機器人,則使目標軀體位置向外部干擾力Dr的作用方向的相反一側(cè)修正xd。結(jié)果,產(chǎn)生與使質(zhì)量為Mi的質(zhì)點以加速度sd(2)向相反一側(cè)運動相同的力。在機器人上作用與通過彈簧常數(shù)為Ki的彈簧502和衰減系數(shù)為Ci的減震器508來結(jié)合機器人和質(zhì)量為Mi的質(zhì)點、并使質(zhì)量為Mi的質(zhì)點離開距離xd時相同的力。該力對外部干擾力Dr進行補償。機器人的軀體位置向目標軀體位置回歸。接近修正前的目標軀體位置后,修正量xd變小。通過對目標軀體位置進行修正,機器人的實際的軀體位置向修正前的目標軀體位置回歸。
從機器人的動力學特性方面來看,成為通過延遲要素610來補償外部干擾力Dr,相當于利用彈簧和減震器而將機器人維持在目標位置606附近。
由等價的動態(tài)系統(tǒng)明確可知,根據(jù)本實施例的控制技術(shù),可以通過用于補償外部干擾力的控制而除去急劇的變動,并通過普通性能的致動器就可應付。機器人能夠不急劇變動地,很好地跟隨目標軀體軌跡。經(jīng)過實際測試,可以確認機器人的軀體能夠穩(wěn)定地持續(xù)行走。觀測者可以放心地對機器人行走的情況進行觀測。
圖7表示機器人6的行走控制方法的處理步驟。
在步驟S2中,將描述目標腳部位置、腕部位置、以及軀體位置的經(jīng)時變化的步態(tài)數(shù)據(jù)存儲在步態(tài)數(shù)據(jù)存儲裝置210中。
在步驟S4中,機器人開始行走。開始行走后,機器人重復執(zhí)行步驟S8以下的步驟。即,每隔預定的時間(Δt)就重復執(zhí)行從步驟S8至步驟S16的處理。
在步驟S8中,根據(jù)目標軀體運動和實際軀體運動的差對描述目標軀體運動的數(shù)據(jù)(軀體步態(tài)數(shù)據(jù))進行修正,以使機器人穩(wěn)定地行走。后面將詳細說明在步驟S8中執(zhí)行的處理的情況。
在步驟S12中,向關(guān)節(jié)角組計算裝置214輸入步態(tài)數(shù)據(jù)存儲裝置210所存儲的腳部軌跡數(shù)據(jù)和腕部軌跡數(shù)據(jù)、以及通過步驟S8修正的軀體軌跡數(shù)據(jù)。
在步驟S14中,由關(guān)節(jié)角組計算裝置212根據(jù)輸入的步態(tài)數(shù)據(jù)來計算機器人6的各個關(guān)節(jié)的關(guān)節(jié)角度。計算出的關(guān)節(jié)角組數(shù)據(jù)被指示給機器人的致動器控制部214。致動器控制部214控制使機器人6的各個關(guān)節(jié)旋轉(zhuǎn)的致動器組。由此將機器人6的關(guān)節(jié)角度調(diào)節(jié)為計算值。
如上所述,每隔預定的時間(時間間隔Δt)就重復執(zhí)行從步驟S8至步驟S16的處理(步驟S6)。
圖8示出了步驟S8的軀體步態(tài)數(shù)據(jù)修正計算的處理步驟的詳細情況。
在步驟S22中,根據(jù)步態(tài)數(shù)據(jù)存儲裝置210所存儲的軀體步態(tài)數(shù)據(jù)來計算目標軀體加速度。
在步驟S24中,讀入軀體加速度傳感器218的檢測值。
在步驟S26中,由軀體加速度計算裝置220根據(jù)軀體加速度傳感器218的檢測值來求出實際軀體加速度。
在步驟S28中,由偏差計算裝置312求出目標軀體加速度和實際軀體加速度的偏差。
在步驟S30中,由外部干擾力計算裝置310根據(jù)計算出的加速度偏差求出導致該加速度偏差的外部干擾力Dr的大小。
在步驟S32中,由目標修正量計算裝置308根據(jù)外部干擾力Dr的大小和傳遞函數(shù)1/G(s)而計算出軀體位置修正量。
在步驟S34中,通過修正裝置306使步態(tài)數(shù)據(jù)存儲裝置210所存儲的修正前的目標軀體位置與軀體位置修正量相加,從而計算出修正后的目標軀體位置,并指示給關(guān)節(jié)角組計算裝置212。
也可以在機器人之外安裝計算機裝置14的一部分或全部。例如,可以在機器人以外設置步態(tài)數(shù)據(jù)存儲裝置210和軀體步態(tài)數(shù)據(jù)修正計算部222。此時,將檢測出的機器人的實際軀體加速度通過無線或有線信號傳給軀體步態(tài)數(shù)據(jù)修正計算部222,并將經(jīng)修正的步態(tài)數(shù)據(jù)通過無線或有線信號傳給機器人。也可以在機器人以外安裝關(guān)節(jié)角組計算裝置212。將計算出的關(guān)節(jié)角度數(shù)據(jù)通過有線或無線信號傳給致動器控制部214。
本實施例的行走機器人即使不在腳部安裝力傳感器也能夠抵抗外部干擾力而穩(wěn)定地持續(xù)行走。
在上述說明中,假定軀體的傾斜角度按照預定的變化模式而改變。當軀體的傾斜角度按照預定的變化模式而改變時,軀體步態(tài)數(shù)據(jù)僅包括與使實際的ZMP和目標ZMP一致的軀體位置相關(guān)的數(shù)據(jù)。對此,也可以計算出使實際的ZMP與目標ZMP一致的“軀體位置和軀體傾斜角度”并將其作為軀體步態(tài)數(shù)據(jù)。
對于軀體傾斜角度來說,既可以是預定的變化模式,也可以是計算出的變化模式,兩者均給出表示目標軀體傾斜角度的經(jīng)時變化的數(shù)據(jù)。在這里,軀體傾斜角度是指圍繞x軸的傾斜角度和圍繞y軸的傾斜角度。
本發(fā)明的技術(shù)不僅對軀體位置有效,而且對軀體角度也有效。如果計算出目標軀體角度對時間的二階微分值(角加速度)和實際軀體角度的角加速度的偏差,并計算出與該偏差成比例的角度、與偏差的一階微分成比例的角度、與偏差的二階微分成比例的角度,再根據(jù)這些計算出目標軀體角度的修正量,則可以對軀體角度由于外部干擾力的影響而偏離目標軀體角度進行補償。本發(fā)明通常可以適用于與軀體位置和軀體傾斜角度等軀體位置和姿勢相關(guān)的運動。
(第二實施例)有時在機器人上安裝檢測軀體位置的裝置。例如,如果安裝回轉(zhuǎn)儀的話,除了實際的軀體加速度以外,還可以檢測出實際的軀體位置。安裝GPS計測傳感器也可以檢測出實際的軀體位置。也可以通過對軀體加速度進行積分求出軀體速度,另外通過積分還可以檢測出軀體位置。
當能夠檢測出機器人的實際的軀體位置時,可以有效地利用反饋控制環(huán)路。一旦有效地利用了反饋控制環(huán)路,就可以應對機器人因在不平整的地面上行走而整體傾斜的情況了。下面說明第二實施例,但僅說明與第一圖9模塊化地示出了第二實施例的機器人的計算機裝置的功能,向軀體步態(tài)數(shù)據(jù)修正計算部224輸入實際的軀體加速度和實際的軀體位置。
圖10是示出軀體步態(tài)數(shù)據(jù)修正計算部224的詳細情況的框圖。在圖10中,為了圖示的明確化,僅示出了x方向的情況。y方向和z方向與其相同。
由于在機器人上安裝了軀體位置傳感器904,因而能夠計測實際的軀體位置。軀體加速度計算裝置220使實際的軀體位置對時間進行二階微分而求出實際的軀體加速度。根據(jù)求出的軀體加速度來執(zhí)行與第一實施例相同的處理,并計算出基于加速度偏差的修正量xd。
將通過基于加速度偏差的修正量xd對修正前的目標軀體位置xo進行修正后的目標軀體位置xo+xd輸入偏差計算裝置906,計算出其與實際的軀體位置xr之間的偏差xo+xd-xr。將軀體位置的偏差xo+xd-xr輸入反饋處理模塊908,使用傳遞函數(shù)C(s)對其進行處理。使用傳遞函數(shù)C(s)對偏差xo+xd-xr進行處理后得到的值C(s)(xo+xd-xr)與通過基于加速度偏差的修正量而修正了的目標軀體位置xo+xd相加,由此對目標軀體位置再次進行修正。被修正的目標軀體位置最終被修正為xo+xd+C(s)(xo+xd-xr)。
圖11示出了第二實施例的軀體步態(tài)數(shù)據(jù)修正計算的處理步驟。
在步驟S54中,讀入軀體位置傳感器904的檢測值。
在步驟S56中,根據(jù)軀體位置傳感器904的檢測值來檢測實際的軀體位置和實際的軀體加速度。
在步驟S58中,計算通過基于加速度偏差的修正量xd對修正前的目標軀體位置xo進行修正后得到的目標軀體位置xo+xd與實際的軀體位置xr的偏差xo+xd-xr。
在步驟S60中,通過傳遞函數(shù)C(s)對其進行處理,計算出反饋處理量C(s)(xo+xd-xr)。
在步驟S62中,將指示給關(guān)節(jié)角組計算裝置的目標軀體位置xref修正為xo+xd+C(s)(xo+xd-xr)。
對于第二實施例所示的腿式機器人,通過計算偏差xo+xd-xr并進行反饋控制以使該偏差變小,即使當機器人在不平整的地面上行走而導致機器人整體傾斜時,也能夠進行反饋控制以向目標軀體位置回歸。
軀體位置傳感器也可以是實際測定軀體的傾斜角度的回轉(zhuǎn)儀。一旦通過回轉(zhuǎn)儀判斷出軀體的實際的姿態(tài)角,就可以通過乘以從著地腿的腳掌中心到軀體的重心的距離R來實際測定相對于著地腿的腳掌中心的軀體位置了。
以上對本發(fā)明的實施方式進行了詳細的說明,但這些僅為例示,并不限定權(quán)利要求的范圍。例如對于步態(tài)數(shù)據(jù),雖然介紹是以時間和位置來描述經(jīng)時變化的實施例,但也可以是以時間與速度、或時間與加速度的關(guān)系來描述腳部、腕部、軀體的運動的經(jīng)時變化。權(quán)利要求所記載的技術(shù)包括對以上例示的具體例子進行的各種變形和變更。
另外,通過各個在本說明書或附圖中說明的技術(shù)要素或者其各種組合來發(fā)揮技術(shù)作用,但并不限于申請時記載于權(quán)利要求中的組合。另外,在本說明書或附圖中例示的技術(shù)可以同時達到多個目的,但達到其中的一個目的本身就具有技術(shù)效果了。
權(quán)利要求
1.一種腿式機器人,包括軀體;可擺動地連結(jié)在軀體上的腿聯(lián)合體;腳部步態(tài)數(shù)據(jù)的存儲裝置,其中該腳部步態(tài)數(shù)據(jù)描述目標腳部運動的經(jīng)時變化;軀體步態(tài)數(shù)據(jù)的存儲裝置,其中該軀體步態(tài)數(shù)據(jù)描述可以跟隨目標腳部運動的變化而行走的目標軀體運動的經(jīng)時變化;檢測實際的軀體運動的軀體運動檢測裝置;計算目標軀體運動與實際的軀體運動之間的偏差的偏差計算裝置;以及修正裝置,根據(jù)計算出的偏差和規(guī)定的傳遞函數(shù)求出修正量,根據(jù)該修正量對軀體步態(tài)數(shù)據(jù)的存儲裝置中存儲的軀體步態(tài)數(shù)據(jù)進行修正。
2.如權(quán)利要求1所述的腿式機器人,其特征在于,所述偏差計算裝置計算目標軀體加速度與實際的軀體加速度之間的偏差。
3.如權(quán)利要求2所述的腿式機器人,其特征在于,所述修正裝置根據(jù)由加速度偏差計算出的外部干擾力和規(guī)定的傳遞函數(shù)求出修正量。
4.如權(quán)利要求3所述的腿式機器人,其特征在于,所述傳遞函數(shù)包括比例要素。
5.如權(quán)利要求4所述的腿式機器人,其特征在于,所述傳遞函數(shù)包括一次滯后要素和/或二次滯后要素。
6.如權(quán)利要求3所述的腿式機器人,其特征在于,所述修正裝置在根據(jù)加速度偏差修正后的目標軀體位置與實際的軀體位置之間的偏差上加上實施反饋處理的量,由此對目標軀體位置再次進行修正。
7.如權(quán)利要求4所述的腿式機器人,其特征在于,所述修正裝置在根據(jù)加速度偏差修正后的目標軀體位置與實際的軀體位置之間的偏差上加上實施反饋處理的量,由此對目標軀體位置再次進行修正。
8.如權(quán)利要求5所述的腿式機器人,其特征在于,所述修正裝置使根據(jù)加速度偏差進行修正后的目標軀體位置與實際的軀體位置的偏差與進行反饋處理的量相加,并由此對目標軀體位置再次進行修正。
9.一種腿式機器人的行走控制方法,其特征在于,包括以下步驟存儲描述目標腳部運動的經(jīng)時變化的腳部步態(tài)數(shù)據(jù)的步驟;存儲軀體步態(tài)數(shù)據(jù)的步驟,其中該軀體步態(tài)數(shù)據(jù)描述可以跟隨目標腳部運動的變化而行走的目標軀體運動的經(jīng)時變化;檢測實際的軀體運動的步驟;計算目標軀體運動與實際的軀體運動之間的偏差的步驟;根據(jù)計算出的偏差和規(guī)定的傳遞函數(shù)求出修正量,根據(jù)該修正量對存儲的軀體步態(tài)數(shù)據(jù)進行修正的步驟;向機器人的各關(guān)節(jié)角組計算裝置指示經(jīng)修正的軀體步態(tài)數(shù)據(jù)的步驟。
10.如權(quán)利要求9所述的腿式機器人的行走控制方法,其特征在于,在所述計算偏差的步驟中,計算出目標軀體加速度與實際的軀體加速度之間的偏差,在所述修正步驟中,根據(jù)由加速度偏差計算出的外部干擾力和規(guī)定的傳遞函數(shù)求出修正量。
11.如權(quán)利要求10的腿式機器人的行走控制方法,其特征在于,在所述修正步驟中,在根據(jù)加速度偏差修正后的目標軀體位置與實際的軀體位置之間的偏差上加上實施反饋處理的量,由此對目標軀體位置再次進行修正。
全文摘要
在本發(fā)明中,計算出腿式機器人的目標軀體運動與實際的軀體運動的偏差,并根據(jù)計算出的偏差對所述目標軀體運動進行修正。
文檔編號B25J13/00GK1914009SQ200580003210
公開日2007年2月14日 申請日期2005年1月26日 優(yōu)先權(quán)日2004年1月28日
發(fā)明者山本貴史, 杉原久義, 菅敬介, 津坂祐司, 但馬龍介 申請人:豐田自動車株式會社