鄧 君,鐘耀鵬,郭鴻楨,李銳圳,譚凱元
(1.東莞理工學(xué)院機(jī)械工程學(xué)院,廣東東莞 523000 2.東莞理工學(xué)院電子工程與智能化學(xué)院,廣東東莞 523000)
仿生技術(shù)是近些年在工程技術(shù)與生物科學(xué)發(fā)展起來(lái)的學(xué)科。仿生學(xué)思想在生物學(xué)和技術(shù)之間架起了橋梁,為解決技術(shù)問(wèn)題提供了幫助。通過(guò)模仿生物學(xué)原理,人類不僅找到了技術(shù)解決方案,還完全適應(yīng)了大自然的需要。
目前仿生技術(shù)主要研究方向包括仿生機(jī)器人技術(shù)、智能系統(tǒng)群體通信技術(shù)、仿生感知與信息處理技術(shù)、合成生物學(xué)仿生技術(shù)。仿生機(jī)器人在軍事、工業(yè)、農(nóng)業(yè)、醫(yī)學(xué)等諸多領(lǐng)域被廣泛應(yīng)用。爬行機(jī)器人作為特種機(jī)器人的一種,可以在環(huán)境復(fù)雜的條件下進(jìn)行特定的作業(yè),受到人們的重視,為完善該領(lǐng)域技術(shù),對(duì)仿生爬行機(jī)器人的研究已成為機(jī)器人技術(shù)發(fā)展的重要方向[1]。
四足爬行機(jī)器人能夠在許多崎嶇地形爬行,與其他類型的爬行機(jī)器人相比,它在行走時(shí)有更好的穩(wěn)定性以及更強(qiáng)大的負(fù)載能力,具有結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性高等優(yōu)點(diǎn),而四足動(dòng)物是四足仿生機(jī)器人的重要靈感來(lái)源。瑞士EPFL機(jī)器人專家以火蜥蜴為模型,設(shè)計(jì)了一種仿生機(jī)器人Pleurobot。瑞士團(tuán)隊(duì)通過(guò)設(shè)計(jì)Pleurobot[2]提供了所有活動(dòng)的關(guān)節(jié)轉(zhuǎn)矩控制,這使得可以應(yīng)用神經(jīng)網(wǎng)絡(luò)模型的脊髓神經(jīng)回路的蠑螈和激活虛擬肌肉模擬記錄動(dòng)物運(yùn)動(dòng)以及現(xiàn)實(shí)的粘彈性性質(zhì),了解脊椎動(dòng)物運(yùn)動(dòng)控制原理。
本文作者團(tuán)隊(duì)將以仿生機(jī)器人Pleurobot 為原型,從機(jī)械結(jié)構(gòu)、電氣控制兩個(gè)部分設(shè)計(jì)制作“變色龍機(jī)器人”。在SolidWorks 建立機(jī)器人機(jī)械模型,最后將實(shí)物組裝出來(lái),驗(yàn)證其能動(dòng)性。
根據(jù)實(shí)現(xiàn)舵機(jī)驅(qū)動(dòng)和變色的兩個(gè)效果,控制邏輯如圖1所示。
圖1 控制邏輯
舵機(jī)是一種位置(角度)伺服的驅(qū)動(dòng)器,適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。在高檔遙控玩具,如飛機(jī)、潛艇模型,遙控機(jī)器人中已經(jīng)得到了普遍應(yīng)用。爬行機(jī)器人的運(yùn)動(dòng)由各個(gè)關(guān)節(jié)一定幅度的轉(zhuǎn)動(dòng)帶動(dòng),同時(shí)普通的舵機(jī)具有扭矩大的特點(diǎn),能夠支撐起帶動(dòng)機(jī)器人。因此在設(shè)計(jì)變色龍機(jī)器人時(shí),每個(gè)關(guān)節(jié)由舵機(jī)及其打印件組成。
變色龍選用的舵機(jī)是20 kg的直流伺服舵機(jī),用傳統(tǒng)的PWM 協(xié)議,對(duì)PWM 信號(hào)要求較低,在接受一次信號(hào)后可以位置自鎖,減少控制板的CPU 負(fù)載[3]。舵機(jī)控制器讀取輸出電壓,確定轉(zhuǎn)動(dòng)角度,將該角度和目的角度作對(duì)比,如果有角度偏差就再次輸出PWM 信號(hào)重新調(diào)整。數(shù)字舵機(jī)是由一定占空比的PWM 信號(hào)來(lái)驅(qū)動(dòng)的,驅(qū)動(dòng)舵機(jī)旋轉(zhuǎn)的PWM 信號(hào)一般是周期為20 ms 左右的脈沖信號(hào)。舵機(jī)的角度是由PWM信號(hào)的高電平占空比來(lái)決定的,舵機(jī)的轉(zhuǎn)速度取決于PWM 信號(hào)的頻率,頻率越高,舵機(jī)轉(zhuǎn)速越快[4]。采用市面上的舵機(jī)控制板來(lái)對(duì)變色龍進(jìn)行控制。
變色龍是蜥蜴中的一種,而跟其他品種的蜥蜴相比較,最為突出的特征就是其變色能力,適應(yīng)環(huán)境的生存能力極強(qiáng),通過(guò)改變體色來(lái)隱藏自己。
自然界中,變色龍因?yàn)槠溲劬κ芡饨绻饩€的刺激后,它的中樞神經(jīng)能夠?qū)⒐饩€的刺激傳給體內(nèi),變色龍?bào)w內(nèi)貯存著黃、綠、藍(lán)、紫、黑等各種不同色素細(xì)胞,一旦周圍的光線、溫度和濕度發(fā)生了巨大變化,變色龍的表皮組織結(jié)構(gòu)也會(huì)隨之發(fā)生變化。這時(shí)變色龍看到什么顏色,身體表面就會(huì)變成什么顏色。
選用Arduino作為控制主板,還有TCS3200顏色傳感器以及RGB 燈WS2812 構(gòu)成變色龍的變色系統(tǒng)。Ws2812b 是集控制電路和發(fā)光電路于一體的智能外控LED 光源。像素點(diǎn)內(nèi)部包含了智能發(fā)展數(shù)字接口數(shù)據(jù)鎖存信號(hào)整形放大驅(qū)動(dòng)系統(tǒng)電路,還包含有高精度的內(nèi)部控制振蕩器,有效保證了像素點(diǎn)光的顏色準(zhǔn)確度,Arduino 可以通過(guò)輸出RGB 數(shù)值,控制該模塊的顏色狀態(tài),從而實(shí)現(xiàn)變色的效果。
通常各種顏色能夠根據(jù)三基色理論,將紅綠藍(lán)三基色按不同比例混合制成其他各種顏色。
根據(jù)上述原理,只要知道了3 個(gè)顏色各自的顏色數(shù)值,就能得出對(duì)應(yīng)的顏色。對(duì)于TCS3200 來(lái)說(shuō),當(dāng)選定一個(gè)不同顏色濾波器時(shí),它只允許特定的原色通過(guò),阻止其他原色通過(guò)。例如,在選擇紅色濾光片時(shí),只有紅色才能通過(guò),藍(lán)色和綠色被阻擋,從而得到紅光的強(qiáng)度;同理可獲得藍(lán)光和綠光的強(qiáng)度。通過(guò)分析這3 個(gè)不同光強(qiáng)值,就可以分析出反射到TCS3200D 傳感器上的光的顏色。TCS3200D 傳感器有4 個(gè)濾光片,紅色、綠色和藍(lán)色,并且是透明的。濾光片模式可以通過(guò)其引腳S2和S3的高電平和低電平來(lái)選擇,如圖2所示[5]。
圖2 S2、S3通道與濾波片關(guān)系
TCS3200D有可編程的彩色光到電信號(hào)進(jìn)行頻率的轉(zhuǎn)換器,當(dāng)被測(cè)物體反射光的紅、綠、藍(lán)三色光線分別到達(dá)TAOS TCS3200RGB感應(yīng)芯片時(shí),其內(nèi)置的振蕩器會(huì)輸出一個(gè)方波,方波信號(hào)頻率與所感應(yīng)的光強(qiáng)成比例之間關(guān)系,光線作用越強(qiáng),內(nèi)置的振蕩器產(chǎn)生方波出現(xiàn)頻率越來(lái)越高。TCS3200 傳感器具有OUT 引腳,其輸出信號(hào)的頻率也與內(nèi)置振蕩器的頻率成比例,其比率因子可以通過(guò)其引腳S0和S1的高電平和低電平來(lái)選擇,如圖3所示。
圖3 S2、S3通道與輸出信號(hào)頻率關(guān)系
通過(guò)白平衡校正來(lái)得到RGB 比例因子。反射光中紅、綠、藍(lán)三色光對(duì)應(yīng)的TCS3200 輸出信號(hào)1 s 內(nèi)脈沖數(shù)分別乘以R、G、B 比例因子,就可換算出了被測(cè)物體的RGB標(biāo)準(zhǔn)值了。因此能夠通過(guò)TCS3200 傳感器傳入數(shù)據(jù)到控制板計(jì)算出傳感器的RGB 數(shù)值,再由控制板輸出該數(shù)值到WS2818B 上,實(shí)現(xiàn)檢測(cè)到什么顏色就轉(zhuǎn)變成什么顏色,如圖4所示。
圖4 變色流程
本節(jié)首先要解決的就是生物行為特征模仿及其結(jié)構(gòu)設(shè)計(jì)的問(wèn)題,因變色龍與蜥蜴同屬一個(gè)亞目,以蜥蜴作為參考方向。
與變色龍的尾部不同,大多數(shù)蜥蜴擁有圓長(zhǎng)且末端尖細(xì)的尾部,能作屈曲運(yùn)動(dòng),吸引敵害的注意力,變色龍的尾巴相比于大部分蜥蜴,更加靈活且功能性強(qiáng),經(jīng)常呈現(xiàn)蜷曲的狀態(tài),能夠保持身體平衡,幫助其纏繞樹枝,在樹枝上爬行。
2.1.1 齒輪設(shè)計(jì)
結(jié)構(gòu)設(shè)計(jì)上,假如尾部既需要協(xié)調(diào)脊椎和四足的擺動(dòng),又要滿足變色龍尾部蜷曲的特征,光靠二維方向上運(yùn)動(dòng)的電機(jī)來(lái)說(shuō),無(wú)疑是一個(gè)難點(diǎn),為了實(shí)現(xiàn)結(jié)構(gòu)的分部設(shè)計(jì),采用能夠協(xié)調(diào)脊椎和四肢運(yùn)動(dòng)的尾部齒輪結(jié)構(gòu),而暫時(shí)不考慮變色龍尾部蜷曲的特性,待水平方向擺動(dòng)結(jié)構(gòu)設(shè)計(jì)完成以后,再加以改進(jìn),添加變色龍尾部蜷曲的特征結(jié)構(gòu),因此目前先討論水平方向的擺動(dòng)結(jié)構(gòu)。
為了尾部長(zhǎng)度大小適宜,用3D 打印技術(shù)獲得了一系列的齒輪零件,齒輪采用模數(shù)為2,齒數(shù)14 的齒輪,另一部分配合的零件同樣是該尺寸的齒輪,只不過(guò)這些零件是由兩個(gè)相同大小的齒輪拼在一起,具體如圖5所示。
圖5 齒輪零件
該部件的特點(diǎn)是,兩個(gè)齒輪圓心距剛好為齒輪半徑的2 倍,尾部只用到一個(gè)單齒輪零件作為原動(dòng)件,由電機(jī)帶動(dòng)齒輪的轉(zhuǎn)動(dòng),其余都是雙齒輪零部件,作為尾部的從動(dòng)件,齒輪裝配如圖6 所示。特點(diǎn):上下每個(gè)齒輪時(shí)刻都保持同軸心,且上下層的齒輪與齒輪之間的圓心距始終保持不變,為齒輪半徑的兩倍,電機(jī)帶動(dòng)單齒輪零件轉(zhuǎn)動(dòng)的同時(shí),后面的齒輪也隨之轉(zhuǎn)動(dòng),且單齒輪零件與雙齒輪零件轉(zhuǎn)動(dòng)方向相反,雙齒輪零件之間的轉(zhuǎn)動(dòng)方向相同,從整體上來(lái)看,能夠產(chǎn)生擺動(dòng)的效果。只要控制電機(jī)轉(zhuǎn)動(dòng)的方向和時(shí)間,就能實(shí)現(xiàn)左右來(lái)回?cái)[動(dòng)。
圖6 齒輪擺尾
2.1.2 齒輪圓心分析
先討論該結(jié)構(gòu)向一側(cè)擺動(dòng)的情況,假設(shè)原動(dòng)件轉(zhuǎn)動(dòng)角速度為W,半徑為R,線速度為V,線位移為S,轉(zhuǎn)動(dòng)角度θ,轉(zhuǎn)動(dòng)時(shí)間t→0,裝配圖有5 個(gè)齒輪零部件,以轉(zhuǎn)動(dòng)齒輪軸心為原點(diǎn)建立平面坐標(biāo)系,初始時(shí)刻呈直線位于坐標(biāo)系X軸上,計(jì)算5 個(gè)齒輪軸心向一側(cè)擺動(dòng)不同時(shí)刻的坐標(biāo)位置。
W1上R=W2上R軸心O2,O3相對(duì)X軸角位移α23=W2上·t=W1上·t,O1(0,0)、O2(2R,0)、O3(2R(1+cosα),2Rsinα)
由齒輪1∶1線性傳動(dòng)關(guān)系公式:
可知W1上=W3下,因此可以推出該機(jī)械結(jié)構(gòu),每一個(gè)齒輪的角速度和線速度相同,OnOn-1與On-1On-2的夾角,即相對(duì)轉(zhuǎn)角β相同,且α23=W1上·t=α=β,α34=2β,αnn+1=(n-1)β,X4=2R(1+cosβ+cos2β),Y4=2R(sinβ+sin2β)。
第4 個(gè)軸心坐標(biāo):O4(2R(1+cosβ+cos2β),2R(sinβ+sin2β))。
同時(shí)根據(jù)尾部齒輪結(jié)構(gòu)特性,要想實(shí)現(xiàn)擺尾功能,至少需要3個(gè)零件,也就是說(shuō),齒輪軸心坐標(biāo)至少有3個(gè)以上。為了更加直觀地了解結(jié)構(gòu)的幾何關(guān)系,證明上述坐標(biāo)計(jì)算的正確性,以原動(dòng)件軸心O1為圓心,建立X、Y坐標(biāo)系。如圖7所示。
圖7 齒輪圓心坐標(biāo)
根據(jù)上面的計(jì)算,設(shè)Φ1=α23、Φ5=α34、Φ1=W1上·t=β,根據(jù)幾何關(guān)系可得Φ1=Φ2=Φ3=β,由于每個(gè)齒輪角速度相等,故Φ4=Φ1=β、Φ5=α34=2β,由此可以算出第n個(gè)軸心的坐標(biāo)On。
2.1.3 圓心n與傅里葉公式
按照尾部結(jié)構(gòu)來(lái)回?cái)[動(dòng)的運(yùn)動(dòng)過(guò)程,將最后一個(gè)齒輪距離坐標(biāo)原點(diǎn)最遠(yuǎn)距離處的軸心點(diǎn)在X,Y坐標(biāo)系上描出,作出了尾巴擺動(dòng)的運(yùn)動(dòng)軌跡點(diǎn)畫線,如圖8所示。
圖8 擺尾軌跡
通過(guò)觀察軸心坐標(biāo)On的一般式,很容易發(fā)現(xiàn),其Xn+Yn形式與傅里葉級(jí)數(shù)方程十分相似,對(duì)于實(shí)值函數(shù),函數(shù)的傅里葉級(jí)數(shù)可以寫成:
式(2)與式(3)比較a0=4R,an、bn恒等于2R,W1=2π/T
當(dāng)軸心坐標(biāo)數(shù)n→∞,n-2→∞時(shí),式(4)為傅里葉級(jí)數(shù)形式。
脊椎是爬行類動(dòng)物是十分重要的身體結(jié)構(gòu),尤其是對(duì)蜥蜴來(lái)說(shuō),能夠支撐身體,完成各種復(fù)雜的生命活動(dòng),同時(shí),脊椎與四肢的協(xié)調(diào)運(yùn)動(dòng),有助于蜥蜴快速移動(dòng),提高自身存活率。變色龍也不例外,很多身體結(jié)構(gòu)都有相似之處。在仿生機(jī)器人設(shè)計(jì)中,四足機(jī)器人的四足與脊椎的運(yùn)動(dòng)協(xié)調(diào),步態(tài)設(shè)計(jì)都很關(guān)鍵,能夠解決這兩個(gè)問(wèn)題,仿生項(xiàng)目就算完成了一半,這里涉及到機(jī)械結(jié)構(gòu)設(shè)計(jì)和電機(jī)步態(tài)程序設(shè)計(jì)兩個(gè)難點(diǎn)。脊椎的設(shè)計(jì)對(duì)步態(tài)穩(wěn)定裕度有相當(dāng)大的影響。
通過(guò)觀察爬行類動(dòng)物的行為特征,不難發(fā)現(xiàn),像蜥蜴在爬行的過(guò)程中,脊椎始終處于S型曲線擺動(dòng)的狀態(tài),通過(guò)來(lái)回?cái)[動(dòng),協(xié)調(diào)四肢的運(yùn)動(dòng),并且擺動(dòng)只局限于水平方向,這使得結(jié)構(gòu)設(shè)計(jì)能夠簡(jiǎn)單化,也想到了用舵機(jī)相繼連接的方法實(shí)現(xiàn)脊椎的曲線擺動(dòng)。對(duì)于舵機(jī)的要求,選擇動(dòng)力參數(shù)為20 kg 的直流伺服舵機(jī),該舵機(jī)質(zhì)量輕巧,且該動(dòng)力能夠支撐,并在設(shè)計(jì)脊椎底盤時(shí),采用加厚和牢固的三角結(jié)構(gòu)達(dá)到脊椎支撐的目的。然后就是考慮如何使身體部分外表更加美觀,擺動(dòng)時(shí)各個(gè)脊椎關(guān)節(jié)不會(huì)發(fā)生相互擠壓,剩下的在實(shí)物調(diào)試中進(jìn)行檢測(cè)。圖9所示為團(tuán)隊(duì)設(shè)計(jì)的脊椎骨架。
圖9 變色龍主要骨架
四足機(jī)器人在爬行過(guò)程中,腿部結(jié)構(gòu)遵循一定的規(guī)律進(jìn)行運(yùn)動(dòng),每個(gè)舵機(jī)都具有一定的運(yùn)動(dòng)規(guī)律,通過(guò)腿部在時(shí)間與空間的協(xié)調(diào)過(guò)程實(shí)現(xiàn)了機(jī)器人語(yǔ)氣的步行運(yùn)動(dòng),這就是四足機(jī)器人的步態(tài)。步態(tài)是四足機(jī)器人各條腿相互配合,協(xié)調(diào)運(yùn)動(dòng)的方式,是機(jī)器人運(yùn)動(dòng)的研究基礎(chǔ)[6]。
首先,通過(guò)蜥蜴運(yùn)動(dòng)的俯視圖分析,得知蜥蜴運(yùn)動(dòng)大致可分為4 種狀態(tài),圖10 所示為行進(jìn)過(guò)程簡(jiǎn)圖。幀1:軀干微微左彎,為右前肢與左后肢的前擺做準(zhǔn)備。幀2:軀干左彎,右前肢與左后肢向前擺動(dòng),左前肢與右后肢向后蹬地。幀3:軀干微微右彎,為左前肢與右后肢的前擺做準(zhǔn)備,與幀1互為鏡面對(duì)稱。幀4:軀干右彎,右前肢與左后肢向前擺動(dòng),左前肢與右后肢向后蹬地,與幀2互為鏡面對(duì)稱[7]。
圖10 爬行過(guò)程4種狀態(tài)
圖11 四足機(jī)器人腿分布
四足機(jī)器人步態(tài)可分為靜態(tài)步態(tài)和動(dòng)態(tài)步態(tài)。靜態(tài)步態(tài)指每一時(shí)刻機(jī)器人至少有3 條以上支撐腿(立于地面的腿)的行走步態(tài)。動(dòng)態(tài)步態(tài)指每一時(shí)刻有少于3 條支撐腿的行走步態(tài)。靜態(tài)步態(tài)穩(wěn)定性較高,控制較為簡(jiǎn)單,但是移動(dòng)速度較慢。動(dòng)態(tài)步態(tài)穩(wěn)定性較差,控制復(fù)雜,但移動(dòng)較快[8]。
McGhee 和Frank[9]在1968 年研究了靜態(tài)步態(tài)中四足機(jī)器人的步態(tài)順序,指出四足機(jī)器人在第一條邁腿確定的情況下,一共有6個(gè)可行的邁腿序列。
如果先邁4 號(hào)腿,則邁腿序列4-1-2-3、4-1-3-2、4-2-1-3、4-2-3-1、4-3-1-2、4-3-2-1。McGhee 和Frank 對(duì)比了四足機(jī)器人上述6 種邁腿序列的穩(wěn)定性,發(fā)現(xiàn)采用4-2-3-1 這種邁腿序列時(shí)機(jī)器人能達(dá)到最大穩(wěn)定性。
結(jié)合3.1節(jié)蜥蜴運(yùn)動(dòng)仰視圖分析和上述邁腿序列,在程序編寫上控制舵機(jī),模擬出了變色龍機(jī)器人行走步態(tài),如圖12所示。
圖12 四足機(jī)器人爬行過(guò)程的4種狀態(tài)
四足機(jī)器人行走時(shí),經(jīng)常會(huì)有腿懸空,造成機(jī)器人失去重心的情況。對(duì)于分析四足機(jī)器人穩(wěn)定性有很多種方法,其中,最常用的是穩(wěn)定裕度方法[10]。1985 年Messuri[11]提出能量穩(wěn)定裕度,他的定義是為將機(jī)器人繞著支撐多邊形的某條邊界線翻倒所需要的最小能量,公式為:
式中:i為支撐多邊形的編號(hào);hi為繞著對(duì)應(yīng)支撐多邊形翻轉(zhuǎn)時(shí)機(jī)器人質(zhì)心的高度變化量。猶豫考慮了質(zhì)心在空間上的位置變化情況和機(jī)器人所能應(yīng)對(duì)的外界干擾能量。
Hirose[12]將能量穩(wěn)定裕度與機(jī)器人自身重力的比值定義為正則化的能量穩(wěn)定裕度(Normalized Energy Stability Margin,NESM),即:
由式(6)可得正規(guī)化的能量穩(wěn)定裕度最小值(NESM)為質(zhì)點(diǎn)到支撐多邊形的最短距離。如圖13所示。
圖13 質(zhì)心到支撐多邊形的距離
錢玉恒等[7]證明,可得結(jié)論可得縱向穩(wěn)定裕度的增量部分隨軀干扭動(dòng)角度的增大而單調(diào)增加。因此靈巧扭動(dòng)軀干能夠提升四足機(jī)器人的穩(wěn)定性裕度,也說(shuō)明為什么蜥蜴等四足動(dòng)物為何經(jīng)常扭動(dòng)軀干。
本文較為詳細(xì)地介紹了變色龍機(jī)器人結(jié)構(gòu)設(shè)計(jì)、電路控制等內(nèi)容,分析了齒輪擺尾在坐標(biāo)系中的數(shù)學(xué)式,討論了式子與傅里葉函數(shù)的數(shù)學(xué)關(guān)系,解決了機(jī)器人如何在爬行過(guò)程根據(jù)環(huán)境變色,以及討論了變色龍靜止步態(tài)下它的穩(wěn)定裕度和按照什么順序邁腿行走最穩(wěn)定。最終通過(guò)對(duì)機(jī)器人實(shí)際運(yùn)行流暢,證明了該變色龍機(jī)器人的正常運(yùn)行,爬行穩(wěn)定和擺尾結(jié)構(gòu)能夠在四足爬行機(jī)器人身上得到應(yīng)用。最后針對(duì)變色龍機(jī)器人在各個(gè)領(lǐng)域的運(yùn)用,比如生態(tài)領(lǐng)域等運(yùn)用,可以繼續(xù)開展變色龍機(jī)器人在如何作為檢測(cè)設(shè)備方面的研究。