摘要 將仿生學與機器人相結合,是根據(jù)生物界蜘蛛的生理結構和行為舉止,設計了一種能夠運用6足穩(wěn)定,實現(xiàn)行走、轉彎、攻擊、趴下等系列動作的仿生蜘蛛機器人,并添加了睡眠模式、聲音啟動、遙控操作等功能。不僅在硬件方面模仿生物蜘蛛的外觀,而且在軟件上設計了其生物行為,實現(xiàn)了機器人的生物特性。
關鍵詞 仿生蜘蛛機器人;Dynamixel AX-12+;Dynamixel AX-S1;舵機
近幾年,仿生學已經(jīng)從一個鮮為人知的邊緣學科走進人們視野,運用于生活中的各個領域。生物學機理與機器人的結合,形成仿生機器人,成為廣大研究人員關注的一個焦點。仿生機器人是機器人技術領域中一個新興的發(fā)展分支,是指模仿生物、能根據(jù)生物的外部形狀,運動原理和行為方式等進行模仿,并能從事生物特點工作的機器人。仿生機器人的種類多樣,涵蓋了天上、地上、水中等活動領域的各類機器人,其中地上行走的機器人,根據(jù)其行走方式的不同,還可以分為跳躍機器人、輪式機器人、足式機器人以及爬行機器人。文中主要對蜘蛛機器人進行設計,目標是基于生物界中蜘蛛的生理結構,運用其生物行為,設計出能平衡行走、判斷方向、感受外界刺激的機器人;另外,仿生蜘蛛機器人在結構上有別于人型或輪式機器人,使其在較差路況下行走成為可能,可以執(zhí)行在廢墟中搜救等任務。因此仿生蜘蛛機器人的設計與實現(xiàn)具有較高的研究價值和實際意義。
1 機器人本體設計
生物界蜘蛛的特點是擁有8條腿,在行走時,總會有4條腿著地,用以保持自身的平衡。其生物行為除了行走,還有轉彎、攻擊、趴下等,每個行為作業(yè)都靠腳部的運動來實現(xiàn),因此對腿部的靈活度要求較高;其次,要使機器人具有生物的特性,需對外界的刺激做出正確的判斷和及時的響應,所以感覺器官的模擬也至關重要。
1.1 軀干設計
考慮到蜘蛛機器人軀干部位對靈活度基本沒有要求,無需搭建活動關節(jié),且整機控制器不宜受到關節(jié)活動干擾,于是將整機控制器作為軀干部位,完全符合要求,并且便于操控。控制器采用16位高性能低功耗的AVR單片機,頻率最高為16 MHz,運算速度最快為16 MI·s-1。對于小型仿生蜘蛛機器人的運動解算和規(guī)劃,該運算能力足以滿足控制和在線規(guī)劃的運算要求。
1.2 腿部設計
腿部設計是實現(xiàn)蜘蛛機器人功能的關鍵。機器人設計有6足,行走時依靠兩兩間隔的3條腿構成穩(wěn)定的三角形支撐地板,每只腿設計為3個關節(jié),即具有3個自由度。并且將軸向分布成x軸、y軸、z軸,實現(xiàn)前后、左右、上下的三維活動空間。選取18個Robotis公司的Dynamixel AX-12+機器人專用伺服電機充當肢體關節(jié)。
Dynamixel AX-12+是機器人專用的伺服電機,充當機器人的關節(jié)。首先,Dynamixel系列機器人驅動器是一個較流行的模塊化驅動器,由齒輪減速器、精密直流電機和具有串聯(lián)功能的電路板封裝組成。盡管它體積小巧緊湊,但它可以產(chǎn)生較大的扭矩,加上高品質材料制造并具有一定的強度,可以抵御一定外部沖擊。同時它還是雙向的伺服控制系統(tǒng),具有回授功能,且具有檢測內(nèi)部溫度功能,例如改變內(nèi)部溫度和供電電壓。具有報警功能:當內(nèi)部溫度,扭矩,供電電壓等超過額定范圍時,它主動反饋這種情況并閃動LED燈或關閉舵機扭矩來通知用戶,達到報警效果。
Dynamixel AX-12+的位置和速度控制精度可達1 024級(0~1 023),關節(jié)型舵機對應最大轉角為300℃,控制角度分辨率為300/1024= 0.29°/步。如圖1所示,位置值0是0°,位置值512是150°,位置值1 023是300°等。通信波特率為7 343 bif·s-1~1 Mbit·s-1,命令信號是數(shù)字型數(shù)據(jù)包,通信協(xié)議類型為半雙工異步串口通信,不同舵機之間通過唯一的ID進行識別,最大有254個ID。每個Dynamixel AX-12+舵機都有一個控制表存儲舵機的狀態(tài)和控制信息,這個控制表由一個RAM區(qū)和E2PROM區(qū)組成,對舵機的控制實際是通過向其控制表中寫指令;而要獲取舵機當前狀態(tài)實際就是讀取控制表相應的值。
1.3 感覺器官設計
設計蜘蛛機器人的感官系統(tǒng)時,如果每個感官對應一個傳感器模塊,那么對蜘蛛機器人關節(jié)活動便會增加許多牽絆與阻礙。于是,設計采用1個集超聲測距傳感器、聲音檢測傳感器、亮度傳感器、溫度傳感器和紅外線接收器于一身的Robotis公司的DynamixelAX-S1模塊來充當機器人的感官系統(tǒng)。并且AX-S1與AX-12+機器人專用伺服電機在通信方式上一致,以便于通信和控制器統(tǒng)一管理;在機械上結構相同,外觀上也可以達到統(tǒng)一、美觀。
1.4 本體結構
根據(jù)生物蜘蛛外形,設計總體結構為:以控制器作為身體部位,連接6足,將傳感器模塊作為頭部。選取合適的連接件,最終拼裝連接得到小型仿生蜘蛛機器人樣機,如圖2所示。
2 機器人行為設計
控制系統(tǒng)采用模塊化設計,將整個工作流程劃分為:系統(tǒng)初始化、啟動模式、生物行為等。圖3是系統(tǒng)流程圖。
2.1 系統(tǒng)初始化
機器人的初始化需要做兩部分工作,一是初始化每個伺服器的功能模式,并將每個伺服器切換到位置控制狀態(tài);二是初始化機器人的初始動作,也就是初始狀態(tài),將機器人復位。
2.1.1 伺服器初始化
初始化伺服器的功能模式是因為AX-12+具有多種功能,如果沒有將其初始化,它將記憶之前的設置,按照之前的設置模式完成此次控制,則AX-12+不會正確工作。AX-12+的每個功能對應地址[ADDRESS]的固有號碼,可以通過選擇地址的方法來控制各個功能。例如:要設定AX-12+的位置控制狀態(tài),首先要選定所要設置伺服器的ID。ID=1的伺服器,令address=8,則進入其運轉模式更改,設置mode變量,mode只有兩種狀態(tài):mode=0是無線旋轉模式,mode=1 023是正常位置控制狀態(tài)。此處設計所用的18個伺服器被用作蜘蛛機器人的6足,其位置控制狀態(tài)應該設置為mode=1 023,且每一個伺服器都要初始化為此狀態(tài)。
2.1.2 動作初始化
動作初始化部分相對較簡單,但要建立在伺服器初始化之后,方能進行。原理上是將每個伺服器旋轉角度調整到一定的位置上,使之呈現(xiàn)一個定型姿態(tài),作為機器人的待機動作。通過改變整個系統(tǒng)結構的全局變量play_motion來完成動作初始化,表1對該參數(shù)進行了對照解說,再調用Load函數(shù)執(zhí)行該動作頁面來實現(xiàn)功能。
2.2 啟動模式
2.2.1 睡眠模式
當機器人電源開關開啟,進行初始化之后,蜘蛛機器人進入睡眠狀態(tài)。設計對睡眠模式的定義為:令機器人處于一個靜止姿勢,不做任何行為,等待被啟動。這里設定一個無限循環(huán),當判斷收到喚醒命令時,跳出循環(huán),開啟定時器,執(zhí)行正常行為舉止后,通過定時器的超時機制,回到睡眠模式。定時器時間值的量化級為:輸入的值每0.125 s減1,即當定時器設置為8,便是1 s,具體實現(xiàn)中設置定時器為240,即30 s的正常行為活動后回到睡眠模式。
2.2.2 聲音啟動
在睡眠狀態(tài)中,采用兩種不同的方式:無線遙控模式和聲音啟動模式。對于聲音啟動模式,設定一個閾值,若采集的數(shù)據(jù)超過閾值時,則開始正常行為活動。閾值的選擇根據(jù)傳感器AX-S1對聲音自定義的一個數(shù)量級,當周圍沒有聲音輸出約為128的數(shù)值,聲音越大數(shù)值越接近255,聲音大小每秒輸入約為3 800次。當檢測到像掌聲一樣一定大小以上的聲音時計一次數(shù),為避免把一次擊掌誤認為多次,在一次計數(shù)后,采用延時方式,約為80μs后繼續(xù)計數(shù)。
2.3 生物行為
正常行為舉止:蜘蛛機器人的生物行為即自行通過傳感器采集數(shù)據(jù),對數(shù)據(jù)進行判斷,然后進行處理的一個仿生過程。設計過程將該生物行為定義為正常行為舉止,即正常模式。該模式下,主要研究的是蜘蛛機器人對障礙物的判斷,通過AX-S1采集到的distance_u和distance _f兩個參數(shù)進行分析。當上方障礙物所測距離distance_u≤20時,即認為感應到上方有障礙物,蜘蛛則產(chǎn)生坐下的動作。當前方障礙物所測距離distance_f≤100時,再次檢測一下距離是否distance_f≤20,如果<20,則退后,向左轉,回到正常模式;如果>20,則采取攻擊,攻擊結束后,回到正常模式。值得注意的是,distance_u與distance_f所采集數(shù)據(jù)也不是實際的距離,也是通過量化后的數(shù)值。
3 結束語
在自然界中,蜘蛛因其獨特的爬行機制可以在垂直的墻壁甚至倒立在天花板上行走。運用仿生學原理設計制作的6足蜘蛛仿生機器人系統(tǒng),可以完成行走、轉彎、攻擊、趴下等系列動作,并且具有較好的人機交互功能,使蜘蛛機器人達到了仿生的效果,為進一步研究蜘蛛機器人在危險環(huán)境中或艱難路況中作業(yè)提供了一個基礎測試平臺和設計方案。