李 卓,葉天遲,時(shí)巖松
(吉林工程技術(shù)師范學(xué)院,吉林 長春 130052)
在如今這個(gè)人工智能的時(shí)代,隨著電子、傳感器、通信、以及控制等方面技術(shù)的發(fā)展,越來越多種類的機(jī)器人進(jìn)入到人類的生產(chǎn)生活中。固定式機(jī)器人與移動(dòng)式機(jī)器人的區(qū)別在于二者的結(jié)構(gòu)以及功能不同。本文涉及到的雙足行走機(jī)器人屬于移動(dòng)式機(jī)器人。其相較于其他移動(dòng)方式的機(jī)器人來說,他可以實(shí)現(xiàn)在坑洼路面行走,并且功耗消耗較小。
本次課題的目標(biāo)是實(shí)現(xiàn)雙足行走機(jī)器人步態(tài)穩(wěn)定控制。設(shè)計(jì)了雙足行走機(jī)器人步態(tài)穩(wěn)定控制系統(tǒng),研究了雙足行走機(jī)器人的姿態(tài)算法和穩(wěn)定性判據(jù)。即使機(jī)器人能夠穩(wěn)定進(jìn)行快速動(dòng)態(tài)步行,又使機(jī)器人在受到干擾時(shí)可以進(jìn)行自身姿態(tài)調(diào)節(jié)。
雙足行走機(jī)器人是機(jī)器人技術(shù)的一個(gè)制高點(diǎn),其作為模仿人類行走方式的一種機(jī)器人,它的靈活性和運(yùn)動(dòng)能力都很突出,它可以在地面條件惡劣的環(huán)境下進(jìn)行移動(dòng),適應(yīng)性強(qiáng)。機(jī)器人步態(tài)穩(wěn)定控制系統(tǒng)決定著雙足行走機(jī)器人性能的好壞,因此,機(jī)器人的步態(tài)穩(wěn)定控制系統(tǒng)要滿足以下幾個(gè)要求:
一是集成度較高的控制系統(tǒng);二是數(shù)據(jù)處理的能力要非常高效;三是要采用更加便于擴(kuò)展和修復(fù)的模塊;四是當(dāng)系統(tǒng)某一模塊發(fā)生故障時(shí)不影響其他模塊工作,即系統(tǒng)的魯棒性要高;五是要有便于連接的接口,方便進(jìn)行系統(tǒng)的升級(jí)和維護(hù)。
機(jī)器人步態(tài)穩(wěn)定控制系統(tǒng)分為以下幾個(gè)部分:主控板、舵機(jī)模塊、平衡調(diào)節(jié)模塊、通信模塊、上位機(jī)、電源模塊。整個(gè)控制系統(tǒng)如圖1所示。
圖1 系統(tǒng)總體框圖
系統(tǒng)硬件電路主要包括主控電路、舵機(jī)控制電路、傳感器電路、電源電路等。選擇的控制器是STM32F103RBT6,舵機(jī)選用的是LDX-218數(shù)字舵機(jī)和LDX-227數(shù)字舵機(jī)。當(dāng)舵機(jī)控制板接收到主控板發(fā)送的各個(gè)舵機(jī)角度、轉(zhuǎn)動(dòng)時(shí)間等信息后,將其轉(zhuǎn)化為PWM脈沖信號(hào),然后將PWM脈沖信號(hào)傳輸給舵機(jī),舵機(jī)旋轉(zhuǎn)至相應(yīng)角度。傳感器電路選用六軸傳感器MPU6050獲取機(jī)器人在空間中的位置姿態(tài)信息,然后通過IIC總線將數(shù)據(jù)傳輸給主控器。這樣設(shè)計(jì)能夠?qū)﹄p足行走機(jī)器人進(jìn)行實(shí)時(shí)的姿態(tài)檢測,并且使雙足行走機(jī)器人具有重力感應(yīng)功能,能夠在擾動(dòng)下實(shí)現(xiàn)自身平衡,實(shí)時(shí)監(jiān)測機(jī)器人在空間中的位置姿態(tài)信息以及加速度。
1.軟件系統(tǒng)總體設(shè)計(jì)。系統(tǒng)初始化完成后,位置姿態(tài)轉(zhuǎn)檢測程序啟動(dòng),對(duì)機(jī)器人在運(yùn)動(dòng)過程中的位置自姿態(tài)信息進(jìn)行檢測,檢測到的信息通過IIC總線傳送給主控板。主控板利用姿態(tài)解算算法進(jìn)行姿態(tài)解算,根據(jù)穩(wěn)定性判據(jù)查詢其是否處于穩(wěn)定狀態(tài)。如果處于穩(wěn)定狀態(tài),主控制板將發(fā)送動(dòng)作指令給舵機(jī)控制板,舵機(jī)控制板與主控板通過串口進(jìn)行通信。如果舵機(jī)控制板與主控板成功通信,則舵機(jī)控制板執(zhí)行動(dòng)作指令,控制舵機(jī)進(jìn)行轉(zhuǎn)動(dòng),從而將動(dòng)作指令執(zhí)行完畢。動(dòng)作指令執(zhí)行完畢一次后將周期性重復(fù)進(jìn)行。如果不處于穩(wěn)定狀態(tài),將自動(dòng)對(duì)其步態(tài)的參數(shù)進(jìn)行調(diào)整,調(diào)整完畢后會(huì)出現(xiàn)調(diào)整標(biāo)志,如果調(diào)整標(biāo)志有效,則表示機(jī)器人已經(jīng)重新恢復(fù)穩(wěn)定狀態(tài)。主控制板將調(diào)整后的步態(tài)參數(shù)傳送給舵機(jī)控制板。然后舵機(jī)控制板執(zhí)行動(dòng)作指令控制舵機(jī)轉(zhuǎn)動(dòng)完成動(dòng)作。動(dòng)作完成一次后進(jìn)行周期性重復(fù)。
2.RCG姿態(tài)解算算法。在RCG姿態(tài)解算算法中,角度數(shù)據(jù)φ是通過將陀螺儀采集到的角速度進(jìn)行積分變換得到的。將角速度發(fā)送到卡爾曼濾波器進(jìn)行求解是為了更好地清除計(jì)算中的總偏差,然后獲得更準(zhǔn)確的角度數(shù)據(jù)。根據(jù)加速度計(jì)采集的加速度通過去重力分量和方向余弦矩陣處理得到的加速度來表示機(jī)器人本身的加速度。最后,將角速度,角度和加速度用作機(jī)器人的步態(tài)參數(shù)信息輸入到機(jī)器人的主控板中。將角速度送入卡爾曼濾波器進(jìn)行處理是為了消除計(jì)算中的累計(jì)的誤差,從而得到更加精確的角度數(shù)據(jù)。機(jī)器人自身的加速度是通過將加速度計(jì)采集到的加速度經(jīng)過去重力分量和方向余弦矩陣處理得到的。最后,角速度、角度、加速度共同作為機(jī)器人空間位置姿態(tài)信息輸入機(jī)器人主控制器。
3.ZMP穩(wěn)定性判據(jù)。ZMP穩(wěn)定性判據(jù)的主要內(nèi)容是:機(jī)器人行走時(shí),零力矩點(diǎn)始終在支撐多邊形內(nèi),水平翻彎扭矩為零,則機(jī)器人處于穩(wěn)定狀態(tài)。為了更好地避免ZMP位于支撐多邊形邊界上的情況,通常將距支撐多邊形邊界一定距離用作穩(wěn)定裕度。在整個(gè)行走過程中,機(jī)器人的ZMP點(diǎn)會(huì)隨著時(shí)間不斷變化位置。穩(wěn)定性裕度定義為從ZMP點(diǎn)到支撐表面邊緣的最短路徑。如果ZMP點(diǎn)落在支撐的平行表面上,則穩(wěn)定裕度為正,機(jī)器人狀態(tài)穩(wěn)定,否則穩(wěn)定裕度為負(fù),行走不穩(wěn)定。
根據(jù)simulink中的整體步態(tài)規(guī)劃來構(gòu)建控制系統(tǒng)實(shí)體模型。ADAMS提供了機(jī)器人的3D模型、運(yùn)動(dòng)學(xué)、動(dòng)力學(xué)模型和動(dòng)畫仿真;Matlab提供控制算法并輸出每個(gè)舵機(jī)的旋轉(zhuǎn)角度。根據(jù)ADAMS/Controls提供的接口,Matlab將舵機(jī)的控制命令傳遞給ADAMS。ADAMS會(huì)將反映虛擬樣機(jī)的虛擬傳感器的信息內(nèi)容實(shí)時(shí)反饋到Matlab,并生成閉環(huán)控制系統(tǒng)。并在ADMAS中,通過數(shù)據(jù)、繪圖和動(dòng)畫顯示和保存結(jié)果。
在此處的系統(tǒng)軟件中,機(jī)器人高約35厘米,每步高約1厘米,步行周期為90秒。首先,右腿是支撐腿,左腿是搖擺腿,然后重心移到左腳。在此,整個(gè)過程都使用機(jī)器人手臂的搖晃使重心發(fā)生移動(dòng)并調(diào)整了整體平衡,然后第一步成功,圖2顯示了虛擬樣機(jī)左、右腿上樓梯的動(dòng)作序列。
圖2 機(jī)器人邁右腿、邁左腿動(dòng)作序列
使用ADAMS的內(nèi)置ADAMS / PostProcessor控制模塊,模擬機(jī)器人的虛擬樣機(jī)質(zhì)心和踝關(guān)節(jié)上的支撐點(diǎn)在3D空間中的運(yùn)動(dòng)軌跡。為了更好地觀察和分析每個(gè)方向機(jī)器人的運(yùn)動(dòng)狀態(tài),將ADAMS數(shù)據(jù)信息導(dǎo)出到Matlab,從而生成x、y和z方向的步行軌跡。左腳踝的軌跡如圖3所示。
圖3 左腳踝運(yùn)動(dòng)軌跡
機(jī)器人主體的軌跡沿x軸規(guī)則變化。y軸和z軸方向之間的偏差穩(wěn)定且有所改善,并且有輕微的振動(dòng)。一方面,機(jī)器人本身必須穩(wěn)定,并且根據(jù)調(diào)整后的姿勢可以提高整個(gè)步行過程的整體可靠性。另一方面,機(jī)器人腳底和地板的材料都設(shè)置為剛體,即虛擬樣機(jī)的腳底與路面碰撞后,外觀和尺寸保持不變。并且肯定了剛體在現(xiàn)實(shí)生活中實(shí)際上并不可用,它們只是一個(gè)理想化的概念模型。由于所有物體在受到力作用后都會(huì)或多或少地變形,因此在物理原型中,機(jī)器人腳底的輕微變形可以起到調(diào)節(jié)作用,從而提高行走的穩(wěn)定性。
為了檢測機(jī)器人在正常行走時(shí)突然受到外力干擾打破原來穩(wěn)定狀態(tài)后能否很迅速地進(jìn)行姿態(tài)調(diào)整,設(shè)計(jì)進(jìn)行了直立行走狀態(tài)下的外力干擾實(shí)驗(yàn)。
機(jī)器人從站立狀態(tài)進(jìn)入向前行走狀態(tài),然后受到外力干擾失去穩(wěn)定狀態(tài)。當(dāng)步態(tài)穩(wěn)定控制系統(tǒng)檢測到姿勢變化時(shí),進(jìn)行姿勢調(diào)整。調(diào)整完成后,恢復(fù)穩(wěn)定狀態(tài),最后恢復(fù)站立狀態(tài)。根據(jù)圖4中數(shù)據(jù),可以看出,使用RCG姿態(tài)解算算法進(jìn)行步態(tài)穩(wěn)定控制,能夠及時(shí)檢測到機(jī)器人的姿態(tài)變化并且迅速進(jìn)行調(diào)節(jié),恢復(fù)穩(wěn)定狀態(tài)。
圖4 角度數(shù)據(jù)變化圖
機(jī)器人上樓梯實(shí)驗(yàn)的測試成功的驗(yàn)證了本次步態(tài)穩(wěn)定控制系統(tǒng)的有效性,緊接著又進(jìn)行了平坦路面直立行走實(shí)驗(yàn)、研究加速度參量作用實(shí)驗(yàn)、直立行走狀態(tài)下的外力干擾實(shí)驗(yàn)三個(gè)實(shí)驗(yàn),測試了RCG姿態(tài)解算算法修正機(jī)器人步態(tài)偏差的能力。實(shí)驗(yàn)結(jié)果有力地證實(shí)了RCG姿態(tài)解算算法能夠及時(shí)修正姿態(tài)偏差,具有較高的可靠性和可行性,也充分的體現(xiàn)了本次設(shè)計(jì)的步態(tài)穩(wěn)定控制系統(tǒng)的性能是良好的。
在機(jī)器人步態(tài)穩(wěn)定控制系統(tǒng)為了更好地提高解決不平衡情況的機(jī)器人的時(shí)效性,明確提出了一種消除重力分量的機(jī)器人姿態(tài)控制優(yōu)化算法—RCG姿態(tài)算法,數(shù)據(jù)處理方法在整個(gè)過程中都使用加速度傳感器和卡爾曼濾波修正角度偏差。并使用定向余弦矩陣將機(jī)器人傳感器的平面坐標(biāo)下的數(shù)據(jù)信息轉(zhuǎn)換至世界坐標(biāo)系下。
使用ADAMS進(jìn)行即時(shí)動(dòng)態(tài)模型仿真,構(gòu)建MATLAB和ADAMS協(xié)同仿真服務(wù)平臺(tái),在兩個(gè)仿真軟件之間建立橋梁,完成所有測試階段的閉環(huán)控制結(jié)構(gòu),并在協(xié)作仿真模擬服務(wù)平臺(tái)下進(jìn)行機(jī)器人在總體步態(tài)計(jì)劃模式下的運(yùn)動(dòng),轉(zhuǎn)換成相關(guān)曲線,從而比較總體步態(tài)實(shí)際效果。最終進(jìn)行測試,證明系統(tǒng)采用的方法可以提高機(jī)器人對(duì)不平衡情況的響應(yīng)速度和準(zhǔn)確性。
吉林工程技術(shù)師范學(xué)院學(xué)報(bào)2022年1期