1 引言 雙足機器人樣機是研究雙足行走的實(shí)驗對象,為了研究的順利進(jìn)行,必須對機器人的自由度、驅動(dòng)方式、重量、高度等進(jìn)行合適的配置;這就需要自由度的分配簡(jiǎn)單合理、驅動(dòng)方案可靠易用以及機械結構輕便結實(shí)。為了得到可靠高效的控制系統,首先要選擇合適的主控芯片,然后針對實(shí)時(shí)控制中所需要的各種姿態(tài)信息,選擇可靠性高且方便和主控芯片連接的傳感器。 雙足步行機器人是一個(gè)多自由度、非線(xiàn)性、具有復雜動(dòng)力學(xué)特性的多體系統,本田公司、索尼公司以及北京理工大學(xué)等相繼推出了各自研制的雙足機器人樣機,其中以本田公司的ASIM0制作水平最高。本文在參考國內外相關(guān)研究的基礎上,從便于實(shí)現的角度出發(fā),設計研制了樣機,以TI公司的DSP TMS320F2812為核心設計了機器人驅動(dòng)、控制電路,分別采用了觸力傳感器FSSl500NST、微機械陀螺儀ADXRSl50來(lái)檢測足底接觸力信息和軀干角速度,并成功實(shí)現了機器人的穩定行走。 2 機械設計 為了實(shí)現機器人前后行走、上下臺階及爬斜坡等功能,機器人每條腿至少應有三個(gè)俯仰自由度;要實(shí)現質(zhì)心在左右腳之間轉移的功能,每條腿至少應有一個(gè)滾轉自由度;趯(shí)現預期功能而又盡量降低成本,精簡(jiǎn)機構的原則,我們設計的雙足機器人共有十個(gè)自由度,每條腿各有五個(gè)自由度,其中髖關(guān)節兩個(gè)(俯仰和滾轉),膝關(guān)節一個(gè)(俯仰),踝關(guān)節兩個(gè)(俯仰和滾轉)。這個(gè)十自由度的雙足機器人可以實(shí)現左右方向和前后方向上的多種運動(dòng)。 考慮到驅動(dòng)負載以及穩定性等因素,在設計時(shí)將腿長(cháng)取為28cm,其中大腿有效長(cháng)度(髖部俯仰方向舵機輸出軸到膝蓋舵機輸出軸的距離)為15cm,小腿有效長(cháng)度(膝蓋舵機輸出軸到踝部俯仰方向舵機輸出軸的距離)13cm,每個(gè)腳底板寬8cm,長(cháng)12cm,材料為2mm厚的電路板,上面安裝了四個(gè)觸力傳感器,每個(gè)角上一個(gè),用于檢測機器人行走時(shí)支撐腳和地面之間的壓力;電路板上還有四個(gè)傳感器的信號調理電路。大腿和小腿都由輕質(zhì)鋁合金板加工而成;兩條腿最上面的舵機通過(guò)u型件連在一根角鋁上,用螺栓螺母擰緊后,就構成了機器人的骨盆,在骨盆中央豎直方向上固定一根硬鋁板條,作為機器人的脊柱;電路板和為整個(gè)系統供電的鋰電池可以放在一個(gè)特制的盒子里,將盒子固連在豎直板條上,就構成了機器人的胸腹。 3 驅動(dòng)方案與控制系統設計 基于處理能力等多方面的考慮,我們選用TI公司的高性能數字信號處理器TMS320F2812為機器人控制系統的核心,來(lái)完成信號采集、處理、控制和驅動(dòng)等功能。 F2812是一種低功耗的32位定點(diǎn)數字信號處理器,在數字控制領(lǐng)域應用廣泛,采用哈佛總線(xiàn)結構,具有強大的計算能力、迅速的中斷響應和處理以及統一的寄存器編程模式。 3.1 驅動(dòng)方案 考慮到驅動(dòng)力大小以及可控性能,本機器人的關(guān)節采用漢庫HGl4舵機進(jìn)行驅動(dòng),該舵機采用閉環(huán)反饋位置控制,其部分技術(shù)指標如表1所示: ![]() 減速齒輪組由馬達驅動(dòng),其終端(輸出端)帶動(dòng)一個(gè)線(xiàn)性的比例電位器進(jìn)行位置檢測,該電位器把轉角坐標轉換為一比例電壓反饋給控制單元,控制單元將其與輸入的控制脈沖信號比較,產(chǎn)生糾正脈沖,并驅動(dòng)馬達正向或反向地轉動(dòng),使齒輪組的輸出位置與期望值相符,從而達到舵機精確定位的目的。 舵機的控制信號是脈沖位置調制(PPM)信號,是一種寬度可調的周期性方波脈沖信號,周期一般為20ms,當方波的脈沖寬度改變時(shí),舵機轉軸的角度發(fā)生變化,角度變化與脈沖寬度的變化成正比。一般舵機的輸出軸轉角與輸入信號的脈沖寬度之間的關(guān)系可用圖1表示。 ![]() 由于制作工藝等多方面的原因,舵機的輸出軸轉角并不是準確地遵循與控制信號的脈沖寬度對應的關(guān)系,但一般和控制信號脈沖寬度成比例關(guān)系。為了減小誤差,我們事先測出在額定脈寬下舵機的實(shí)際轉角,然后計算出和額定轉角的比例系數,在軟件中對控制信號脈寬予以調整,這樣可以將轉角誤差減小到0.5°以?xún)取?br /> 3.2 控制系統設計 TMS320F2812具有較高的處理速度,可以滿(mǎn)足雙足機器人步態(tài)規劃以及控制的算法的實(shí)現,另外還有著(zhù)集成豐富的外設,可滿(mǎn)足多個(gè)傳感器的信號采集的需要。為了避免每次改寫(xiě)程序都重新對片內FLASH進(jìn)行燒寫(xiě),我們采用如下方案:由DSP通過(guò)JZ864微功率無(wú)線(xiàn)數據傳輸模塊將由傳感器得到的機器人姿態(tài)信息送到上位機,然后上位機根據這些信息和動(dòng)作時(shí)序計算相應的控制指令,通過(guò)無(wú)線(xiàn)數傳模塊將指令發(fā)送回DSP,再由DSP的定時(shí)器生成相應的信號來(lái)控制舵機(如圖2所示)。這樣調試時(shí)只要在上位機里改寫(xiě)程序即可,動(dòng)作調試好以后再將相應的程序燒寫(xiě)到DSP芯片的FLASH中。 十個(gè)舵機的控制信號由F2812的通用I/0引腳A0到A9產(chǎn)生,這個(gè)過(guò)程由通用定時(shí)器l和通用定時(shí)器2的中斷服務(wù)程序來(lái)完成。 雙足機器人的實(shí)時(shí)控制系統需要實(shí)時(shí)測量機器人的一些信息,為此我們在每個(gè)足底安裝了四個(gè)霍尼韋爾觸力傳感器FSSl500NST,用于實(shí)時(shí)檢測雙足機器人腳面觸地情況,計算雙足機器人腳面壓力中心位置。這種觸力傳感器具使用專(zhuān)門(mén)設計的精制壓敏電阻硅傳感元件。硅壓阻元件在受到外力而發(fā)生彎曲變形的時(shí)候,電阻會(huì )相應增大。觸力傳感器通過(guò)不銹鋼柱塞,將所受外力直接傳遞到硅感應元件上,元件阻值就隨著(zhù)所受外力同比例增加。這種電阻值的變化將最終通過(guò)電橋電路以mv級電平輸出,靈敏度為0.12mY/g,直接接入DSP的模數轉換電路會(huì )導致測量精度不高,需要設計如圖3所示的信號調理電路。 在經(jīng)過(guò)調理電路放大以后,傳感器的電平輸出被放大到0—3V之間,可直接連到F2812的A/D轉換電路。 軀干的角速度包括滾轉、俯仰和偏航三個(gè)方向的分量,一般需要關(guān)注的是滾轉和俯仰方向的分量,即機器人是否會(huì )朝前后或左右方向摔倒。我們選擇ADI公司的微機械陀螺儀ADXRSl50,其參數如表3所示。 陀螺儀ADXRSl50具有Z一軸響應、工作頻帶寬、小而輕等特點(diǎn),能夠滿(mǎn)足機器人雙足行走過(guò)程中檢測軀干實(shí)時(shí)角速度的要求。 為了方便地控制機器人動(dòng)作,我們選用了紅外線(xiàn)遙控方式。選用集紅外線(xiàn)接收和放大于一體的HS0038芯片作為紅外線(xiàn)接收器,其中載波頻率為38kHz;電路中將HS0038芯片的輸出信號接到F2812事件管理器EVB的捕獲引腳上,通過(guò)捕獲中斷服務(wù)子程序來(lái)對遙控器的信號進(jìn)行接收和解碼,然后查表來(lái)確定相應的按鍵,執行相應的動(dòng)作。 4 行走試驗 通過(guò)在主控芯片中的步態(tài)規劃,雙足機器人在行走過(guò)程中的重心投影一直在支撐區域以?xún),試驗在平整地面上進(jìn)行,用7.4V的鋰電池給雙足機器人提供動(dòng)力,機器人獨立于上位機,用紅外遙控器控制他的行為。在行走實(shí)驗中,機器人收到指令后執行的一系列動(dòng)作如下: (1)雙腿彎曲,降低重心到一定高度; (2)身體左傾,重心投影移到左腳,抬右腿; (3)右腿前伸,沿設定軌跡著(zhù)地; (4)身體右傾,將重心投影轉移到右腳; (5)檢測最近收到的指令,若為停止命令,則以右腿為支撐腿,收左腿,回到直立狀態(tài),否則執行下一個(gè)的動(dòng)作; (6)左腿前伸,沿設定軌跡著(zhù)地; (7)身體左傾,將重心投影轉移到左腳上; (8)檢測最近收到的指令,若為停止命令,則以左腿為支撐腿,收右腿,回到立正狀態(tài),否則執行第3個(gè)的動(dòng)作。 行走時(shí)各桿件運動(dòng)的速度和加速度不能太大,運動(dòng)速度會(huì )比較慢。經(jīng)過(guò)多次試驗和研究發(fā)現,如果擺動(dòng)腿移動(dòng)得太慢,會(huì )增加單腿支撐的時(shí)間,若擺動(dòng)腿移動(dòng)得過(guò)快,會(huì )增加對身體的作用力,使機器人穩定性變差,比較容易摔倒;在雙腿支撐期,質(zhì)心投影由一只腳上轉移到另一只腳上,為了不讓兩腳相對地面滑動(dòng),必須較好地保持兩腳的相對位置和相對姿態(tài)不變,因此在這一過(guò)程中各個(gè)關(guān)節也不能轉得太快,而且擺動(dòng)腳著(zhù)地時(shí)會(huì )受到地面的沖擊力,使機器人的身體有些晃動(dòng),雙腿支撐期稍微長(cháng)一些能起到緩沖作用。經(jīng)過(guò)多次調整和試驗,發(fā)現在取雙腿支撐期2.5s、單腿支撐期1.5s時(shí),可以得到比較穩定的前向行走。 4 結束語(yǔ) 本文根據研究雙足機器人行走的需要,選擇大扭矩舵機作為各關(guān)節的驅動(dòng)電機,設計實(shí)現了十自由度的小型雙足機器人:以TI公司TMS320F2812 DSP作為主控芯片,為方便程序的調試,采用了JZ864微功率無(wú)線(xiàn)數據傳輸模塊來(lái)傳遞上位機與機器人之間的信息。選擇觸力傳感器FSSl500NST、微機械陀螺儀ADXRSl50來(lái)分別測量腳底板和地面接觸信息以及軀干的角速度,采用了紅外遙控的方式來(lái)控制機器人的行為,最后設計出機器人的整體控制系統并實(shí)現了穩定行走。 |