衛(wèi) 馳 宋家賓 黃家盛 尚曉宇 陳健超 / 上海工程技術(shù)大學
基于多舵機協(xié)同操作的避障蜘蛛機器人設計
衛(wèi) 馳 宋家賓 黃家盛 尚曉宇 陳健超 / 上海工程技術(shù)大學
本文針對多舵機協(xié)同操作的蜘蛛機器人設計,提出蜘蛛機器人的行走與避障方案,利用紅外傳感器,實現(xiàn)了蜘蛛機器人的穩(wěn)定行走與避障。
機器人;傳感器算法;機械臂控制
隨著科技的進步以及人類對于智能化的需求,智能科學和機器視覺成為近些年研究的熱點。機器人相比于人工操作有著巨大的優(yōu)勢。首先,機器人將人類從繁雜的任務中解放出來,且機器人的效率更高,效果更好,成本更低;其次,某些領域的工作可能會有一定的危險,使用機器人可以有效地避免人類受到傷害。
而小型機器人可以為驗證大型機器人的相關(guān)算法提供平臺,因此全球各地涌現(xiàn)出了大批機器人粉,通過機器人實現(xiàn)了很多奇思妙想。而市面上已有的機器人產(chǎn)品,多為輪式或履帶式機器人。這兩種類型的機器人的運動功能實現(xiàn)起來較為簡單,但是遇到階梯、沙地等非常規(guī)場地時,行動會受到極大限制。為此,我們小組在仿生學的基礎上,通過對蜘蛛運動的觀察,決定設計出一款六足機器人,并以此機器人為平臺,利用紅外傳感器,實現(xiàn)蜘蛛機器人的避障功能。
蜘蛛機器人的運動控制是通過觀察并模仿蜘蛛行走時的腿部運動姿態(tài),用單片機輸出特定的 PWM波形傳給18個舵機,以實現(xiàn)蜘蛛機器人六條腿的相互配合工作使得蜘蛛機器人的穩(wěn)定行走??刂葡到y(tǒng)的軟件設計基于IAR Embedded Workbench編程環(huán)境,單片機使用飛思卡爾公司K64F芯片,程序使用C 語言實現(xiàn)。
自然界中,六足昆蟲在行走時大部分都不是六條腿同時前進,而是將六條腿分為兩組,用穩(wěn)定的三角型支撐結(jié)構(gòu),互相交替前進,其中三角步態(tài)最為常見。蜘蛛在運動過程中始終保持一邊一條腿和另一邊的兩條腿同時著地,形成穩(wěn)定的三角形結(jié)構(gòu),保持身體平衡。
如圖1所示,我們標定蜘蛛的左邊三條腿從前到后的順序分別為左一、左二、左三,右邊三條腿從前到后的順序分別為右一、右二、右三。蜘蛛直行時的腿部運動為,步驟一:左一、左三、右二下部關(guān)節(jié)向內(nèi)轉(zhuǎn)動抬起,左二、右一、右三支撐身體,左一、左三、右二上部關(guān)節(jié)正向轉(zhuǎn)動使腿向前,然后下部關(guān)節(jié)向下轉(zhuǎn)動落地;步驟二、左二、右一、右三下部關(guān)節(jié)向內(nèi)轉(zhuǎn)動抬起,左一、左三、右二支撐身體,同時上部關(guān)節(jié)反向轉(zhuǎn)動將蜘蛛身體重心前移,左二、右一、右三下部關(guān)節(jié)向外轉(zhuǎn)動落地。,步驟一步驟二如此反復,依靠上部關(guān)節(jié)前后劃動來實現(xiàn)直行過程;蜘蛛橫向運動時與直行時抬腿順序一致,依靠中部關(guān)節(jié)左右轉(zhuǎn)動實現(xiàn)橫向運動,模仿了最典型的三角步態(tài)的行走方式,重心低,穩(wěn)定性好。
蜘蛛機器人的每條腿由三個舵機和若干支撐桿組成,一個蜘蛛機器人裝有六條腿,每條腿上有3個舵機。通過18個舵機的偏轉(zhuǎn)來模仿蜘蛛腿的邁動以實現(xiàn)機器人的運動功能。蜘蛛機器人腿部關(guān)節(jié)示意圖如圖2所示。
圖1
圖2
我們在機器人四個方向均安裝一個紅外傳感器來實現(xiàn)避障功能。在這里我們選用了GP2Y0A02YK0F紅外距離測量傳感器單元,由PSD集成組合(位置敏感探測器) 、IRED(紅外發(fā)光二極管)和信號處理電路。各種物體反射利率,對環(huán)境溫度和運行時間不易受到影響的距離檢測。由于采用三角測量方法,該裝置輸出對應的電壓檢測距離,所以這種傳感器還可以用來作為接近傳感器。紅外傳感器檢測到的值與障礙物之間的距離之間的關(guān)系如圖3所示。
圖3
這里存在一個問題,從曲線上來看一個電壓值會對應兩個距離值。但由于左半邊的上升曲線斜率過大,電壓變化速度過快,在實際測試過程中發(fā)現(xiàn)在此段距離內(nèi)采集到的電壓數(shù)據(jù)很不穩(wěn)定,所以為了避免采集到的電壓數(shù)據(jù)出現(xiàn)在曲線峰值左半邊的情況,在機械設計時只考慮利用曲線峰值的右半邊,通過簡單的加減換算,就能將采集到的電壓數(shù)據(jù)對應到唯一的距離上,故當返回電壓值大于2v 時我們可以判斷前方有障礙物,從而讓蜘蛛機器人進行橫向運動。
經(jīng)過調(diào)試,蜘蛛機器人可以穩(wěn)定的運行并完成前進后退左右移動等動作。在前方30cm左右遇到障礙物,可以識別出前方的障礙物,若左右兩側(cè)無障礙物,則向左移動直到前方無障礙物繼續(xù)前行,同時檢測右側(cè),直到右側(cè)無障礙物,向右移動回到原定路線繼續(xù)前行。
該蜘蛛機器人使用飛思卡爾K64F單片機作為核心控制單元,編寫了蜘蛛機器人的控制和避障程序,最終實現(xiàn)了目標。
[1]陳懇等.機器人技術(shù)與應用[M].北京:清華大學出版社,2006.
[2]林良明.仿生機械學[M].上海:上海交通大學出版社,1991,4:21-23.
[3]GP2Y0A02YK0F DATASTEET,2006.
[4]錢晉武.六足步行機靜態(tài)穩(wěn)定的必要性與充分性[J].上??萍即髮W學報,1992 Voll5 No4:200-203.
[5]蔡自興.機器人學[M].北京:清華大學出版社,2000.
[6]馬惠欽.昆蟲與仿生學淺談[J].昆蟲知識.2003,03:12-13.