盧亞平,宋天麟
(蘇州大學(xué) 應(yīng)用技術(shù)學(xué)院,江蘇 蘇州215325)
隨著仿生學(xué)的發(fā)展,人們把目光對準(zhǔn)了生物界,探索新的運(yùn)動模式有了新的進(jìn)展。蛇是無四肢動物中最龐大的一類,在幾千年的進(jìn)化歷史中,它能進(jìn)行多種運(yùn)動以適應(yīng)不同的生活環(huán)境(如沙漠、水池、陸地、樹林等)。仿蛇形機(jī)器人就在這種背景下誕生了。蛇形機(jī)器人可適應(yīng)各種復(fù)雜地形的行走,如在戰(zhàn)場掃雷、偵測、爆破、礦井和廢墟中探測營救、管道維修以及外行星地表探測等[1],其性能優(yōu)于傳統(tǒng)的行走機(jī)構(gòu),在許多領(lǐng)域具有非常廣泛的應(yīng)用前景。本文通過對蛇的運(yùn)動方式進(jìn)行分析并就仿生蛇的關(guān)節(jié)結(jié)構(gòu)進(jìn)行設(shè)計,提出系統(tǒng)控制方案。
在自然界的不同環(huán)境中,生存著不同種類的蛇,它們的運(yùn)動方式也有所不同,大致可分為以下幾種:(1)蜿蜒運(yùn)動:蛇體擺動近似于正弦波的規(guī)律,依靠腹部蛇鱗與地面的摩擦作用產(chǎn)生推動力。蜿蜒運(yùn)動時,蛇體作橫向的波動,形成若干個波峰和波谷,在彎曲處的后邊施力于地面,沿從頭部到尾部方向傳播,由地面的反作用實(shí)現(xiàn)運(yùn)動。(2)伸縮運(yùn)動:在蛇通過長直的狹窄通道時常采用這種運(yùn)動方式。該運(yùn)動可分為兩個節(jié)拍,先以前部作支撐,收縮肌肉向前拉后部,再以后部作支撐,通過肌肉收縮向前推動前部。這種運(yùn)動的效率比較低。(3)側(cè)向移動:這種運(yùn)動常見于生存在沙漠中的蛇類。運(yùn)動中蛇腹始終都只有很小的部分與地面接觸,而相鄰接觸部分之間的軀體是抬起的,分順序接觸地面,然后抬起,依次循環(huán),產(chǎn)生一個側(cè)向的運(yùn)動。這種運(yùn)動的效率比較高,能獲得較大的加速度,適合在柔軟的沙地運(yùn)動。
在以上運(yùn)動方式中,最常見的是運(yùn)動效率最高的蜿蜒運(yùn)動,然后是伸縮運(yùn)動,側(cè)向運(yùn)動比較少見。通過對蛇的運(yùn)動分析可見,無論哪一種運(yùn)動方式,都可以看成是一系列的波形傳遞,如圖1所示。YZ平面沿Y方向上下運(yùn)動,實(shí)現(xiàn)伸縮運(yùn)動;XY平面沿Y方向左右運(yùn)動,實(shí)現(xiàn)蜿蜒運(yùn)動;如果YZ平面和XY平面沿Y方向進(jìn)行空間復(fù)合運(yùn)動,就產(chǎn)生所謂的側(cè)向移動[2]。
圖1 蛇運(yùn)動方式的波形傳遞
考慮仿生蛇設(shè)計的便利性,選擇蜿蜒的運(yùn)動方式,并假設(shè)以正弦波傳遞??梢灾涝诓ㄐ蝹鬟f過程中各個關(guān)節(jié)相對旋轉(zhuǎn)角度的變化,從而控制波形穩(wěn)定地向前推進(jìn)。蛇形機(jī)器人是一個多連桿系統(tǒng),通過各相鄰連桿的協(xié)調(diào)動作向前推進(jìn)。Serpenoid[3]曲線己經(jīng)被廣泛應(yīng)用到蛇形機(jī)器人上,以Serpenoid曲線為例對蛇形機(jī)器人的運(yùn)動步態(tài)進(jìn)行規(guī)劃。Serpenoid是指一個穿過X-Y坐標(biāo)系原點(diǎn)的曲線,如果滿足以下條件,就可以被稱為蜿蜒曲線:
其中a、b、c三個參數(shù)將決定曲線的形狀,通過改變Serpenoid曲線的這三個參數(shù),既可以改變蜿蜒曲線的傳播波型、傳播幅度,也可以改變曲線的傳播方向。由Serpenoid曲線的定義可得到N關(guān)節(jié)組成的近似Serpenoid曲線蛇型機(jī)器人蜿蜒運(yùn)動的角度。
設(shè)計了仿生蛇形機(jī)器人三個部分的關(guān)節(jié)模型,分別是頭部關(guān)節(jié)、驅(qū)動關(guān)節(jié)和尾部關(guān)節(jié),并用計算機(jī)輔助設(shè)計軟件UG NX7.0繪制出了各個關(guān)節(jié)的模型。蛇形機(jī)器人的加工材料有硬鋁、PVC塑料、ABS塑料、樹脂等,考慮到機(jī)械加工性能、塑性、韌性、強(qiáng)硬度等,最終選定了光敏樹脂。加工方法選擇快速成型加工,其核心思想是離散堆積成型。運(yùn)用激光快速成型技術(shù),加上最適合該技術(shù)的光敏樹脂材料,加工理想的關(guān)節(jié)實(shí)物[4]。
仿生蛇由13個關(guān)節(jié)串聯(lián)而成,每個關(guān)節(jié)都具有一個獨(dú)立的自由度,前3個關(guān)節(jié)(舵機(jī)11、12、8)負(fù)責(zé)蛇形機(jī)器人抬頭和搖頭動作,從第4個關(guān)節(jié)開始為驅(qū)動關(guān)節(jié),通過關(guān)節(jié)(舵機(jī))0、1、3、4、6、7、9、10相互配合完成蜿蜒運(yùn)動,模擬蛇形曲線推動整個蛇形機(jī)器人身體的前進(jìn)。關(guān)節(jié)(舵機(jī))2、5完成轉(zhuǎn)彎,蜷縮動作。圖2所示即是運(yùn)用UG NX7.0軟件繪制的仿生蛇形機(jī)器人驅(qū)動關(guān)節(jié)建模。
圖2 驅(qū)動關(guān)節(jié)的UG建模
仿生蛇形機(jī)器人尾部設(shè)計不僅要考慮外型,還要把它設(shè)計為整個系統(tǒng)的動力來源,因所需控制舵機(jī)較多,電源采用鋰聚合物電池。電池較重,為滿足運(yùn)動要求,需安放在蛇的尾部。圖3所示即為運(yùn)用UG NX軟件繪制的仿生蛇形機(jī)器人尾部關(guān)節(jié)建模。
圖3 尾部的UG建模
仿生蛇形機(jī)器人頭部設(shè)計是模仿人腦的功能,它集超聲波測距模塊(仿生蛇眼)、聲控電路模塊(仿生蛇耳)、MCU控制模塊(仿生蛇大腦)、32路舵機(jī)控制模塊(仿生蛇小腦)等重要控制單元為一體,如圖4所示。其中MCU控制模塊為上位機(jī),負(fù)責(zé)各信息的處理;舵機(jī)控制模塊為下位機(jī),負(fù)責(zé)各舵機(jī)角度的控制,完成基本動作要求。因各模塊結(jié)構(gòu)復(fù)雜且尺寸不一,因此無法通過快速成型加工得到較合適的蛇頭模型,只能采取手工加工完成頭部的設(shè)計,再用電路板直接拼裝而成。其中,采用U形金屬支架連接舵機(jī)和頭部,使蛇形機(jī)器人可以做到抬頭和低頭的動作。仿生蛇形機(jī)器人關(guān)節(jié)連接如圖5所示。
圖4 仿生蛇形機(jī)器人頭部結(jié)構(gòu)
圖5 仿生蛇形機(jī)器人關(guān)節(jié)連接
蛇形機(jī)器人基本的設(shè)計思想是通過改變各個關(guān)節(jié)之間相對運(yùn)動角度來使蛇體達(dá)到相應(yīng)的運(yùn)動姿態(tài),從而實(shí)現(xiàn)蛇體的運(yùn)動。通過對蛇類蜿蜒運(yùn)動的研究,計算出蛇在不同運(yùn)動形態(tài)的各個關(guān)節(jié)之間的相對轉(zhuǎn)角的公式,通過控制每個關(guān)節(jié)的轉(zhuǎn)角,實(shí)現(xiàn)蛇的連續(xù)蜿蜒運(yùn)動。整個控制系統(tǒng)設(shè)計框圖如圖6所示。即將主控單元通過擴(kuò)展板進(jìn)行擴(kuò)展,將32路舵機(jī)控制板、超聲波傳感器模塊和聲控模塊連接為一整體,通過擴(kuò)展板將各個模塊與主控單元協(xié)調(diào)控制,實(shí)現(xiàn)對機(jī)器人的控制。
圖6 控制系統(tǒng)框圖
蛇形機(jī)器人的主要控制流程包括聲控信號檢測、超聲波距離檢測、蜿蜒前進(jìn)模式、蜷縮模式、警覺模式等,如圖7所示。在系統(tǒng)運(yùn)行后,程序即進(jìn)入蜿蜒運(yùn)動控制狀態(tài),同時不斷掃描聲信號和分析超聲波測距傳感器所收集的距離信號,當(dāng)聲信號強(qiáng)度超過調(diào)定的閾值信號后,系統(tǒng)進(jìn)入蜷縮模式和警覺模式;當(dāng)超聲波測距傳感器采集到前方障礙物距離小于30 cm時,系統(tǒng)進(jìn)入避障模式,由蛇形機(jī)器人頸部的舵機(jī)控制頭部左右搖動,超聲波傳感器采集兩側(cè)的距離信號,通過比較后,轉(zhuǎn)彎避開障礙物,繼續(xù)做蜿蜒運(yùn)動前行。
圖7 蛇形機(jī)器人控制流程圖
主控單元采用Arduino的AVRmega168-20PU微控制器與32路伺服舵機(jī)控制器串口連接,通過主控單元上位機(jī)給伺服舵機(jī)控制器傳遞控制指令,即可實(shí)現(xiàn)多路伺服舵機(jī)的單獨(dú)控制或同時控制,控制指令精簡,控制轉(zhuǎn)角精度高,以至能夠完成蜿蜒前進(jìn)、轉(zhuǎn)彎、蜷縮等動作。
蜿蜒前進(jìn)根據(jù)Serpenoid曲線公式,設(shè)置蜿蜒舵機(jī)角度,各舵機(jī)角度如表1所示。舵機(jī)轉(zhuǎn)角范圍一般為180°,居中時角度為90°,控制舵機(jī)的PWM范圍一般為500~2 500,居中90°時的脈寬數(shù)為1 500[5]。
蜿蜒運(yùn)動程序編寫如下:
表1 蜿蜒舵機(jī)在各時刻角度表
注:#為舵機(jī)號,P為脈寬數(shù)(500~2 500),S為速度,T為動作完成時間。
本文所有設(shè)計圖都是在UG中完成的。歷時3個月完成實(shí)體,使用資金約15 000元,獲得江蘇省第四屆大學(xué)生機(jī)器人大賽創(chuàng)新設(shè)計組一等獎。整體組裝結(jié)構(gòu)如圖8所示。本設(shè)計雖然完成了基本動作但還存在許多不足之處,由于舵機(jī)的扭力大小關(guān)系,無法使仿生蛇的所有豎直方向上的關(guān)節(jié)都能夠完成預(yù)想的動作。但是還是能夠使仿生蛇大體上完成預(yù)想的動作,包括水平轉(zhuǎn)動、蜿蜒前進(jìn)、聲控后的動作等。建議以后改進(jìn)時把萬向輪安置在所有關(guān)節(jié)底部,使其保持在一條水平線上,然后使用一個大功率的驅(qū)動元件放置在蛇頭之后的一個關(guān)節(jié)上來單獨(dú)負(fù)責(zé)前進(jìn)的驅(qū)動力,舵機(jī)則負(fù)責(zé)水平和豎直的轉(zhuǎn)動。這樣就能使仿生蛇比較靈活地轉(zhuǎn)動,不受摩擦力的約束,同時又能使蛇正常前進(jìn)。
圖8 仿生蛇整體組裝結(jié)構(gòu)圖
[1]王立權(quán).機(jī)器人創(chuàng)新設(shè)計與制作[M].北京:清華大學(xué)出版社,2007.
[2]黃恒,顏國正,熊翔.蛇形機(jī)器人的運(yùn)動策略[J].電機(jī)與控制學(xué)報,2002,6(3):249-251.
[3]孫洪,馬培蓀.蛇形機(jī)器人一種基于serpenoid曲線的蠕動步態(tài)[J].機(jī)械設(shè)計與研究,2008,24(1):39-41.
[4]宋天麟,王立軍.蛇形機(jī)器人的研究與開發(fā)[J].機(jī)械制造與自動化,2005,34(6):120-121.
[5]盧亞平,宋天麟.基于舵機(jī)控制的防生魚設(shè)計[J].微型機(jī)與應(yīng)用,2011,30(14):72-74.