王 坤, 馮靜安, 王衛(wèi)兵
(石河子大學 機械電器工程學院,新疆 石河子 832000)
隨著科技的進步,人們越來越關(guān)注水下世界,特別是在能源和軍事方面。由于人類身體自身條件的限制很難完成一些特定任務(wù),但是魚類可以很輕松地完成。經(jīng)過上億年的進化,魚類有很多無法比擬的優(yōu)點,例如高機動性、低噪音、高速性和水下隱蔽等,這些優(yōu)點為人類在水下世界進行探索提供了一種新的思路?,F(xiàn)今仿生機器魚的研制已經(jīng)成為熱點問題[1],多個國家相繼研制出了不同功能、不同機構(gòu)的仿生機器魚。美國麻省理工大學在1994年成功研制了世界第一條真正有意義的仿生機器魚(仿生金槍魚 Robotuna)[2]。隨后,為了解決一些特定的問題出現(xiàn)了各種各樣的仿生機器魚。日本N.Kato設(shè)計了仿黑鱸的、依靠胸鰭波動實現(xiàn)推動的游動機器魚,可實現(xiàn)前進、轉(zhuǎn)向以及跟蹤預(yù)定的軌跡[3]。美國西北大學M.Epstein等研究了依靠背鰭波動運動的裸背鰻科魚類black Ghost knifefish,給出了長鰭波動推進裝置的設(shè)計方案、運動機構(gòu)的基本分析[4]。國內(nèi)中國科學院自動化研究所針對具有機械胸鰭、能實現(xiàn)三維運動的單關(guān)節(jié)仿鰰科魚的建模、控制以及多機器魚的協(xié)調(diào)控制開展了一系列的研究工作[5]。華中理工大學開展了柔性尾鰭推進裝置的實驗與理論研究,初步探討了尾鰭參數(shù)與推進效率之間的關(guān)系,并對魚的尾部結(jié)構(gòu)進行了水下實驗以驗證與尾部機構(gòu)設(shè)計的可行性[6-7]。哈爾濱工業(yè)大學開展了仿機器章魚和仿生金槍魚的研究,建立了利用彈性組件提高驅(qū)動效率的實驗平臺[8]。北京航空航天大學也對仿生機器魚做了研究,提出了“波動推進理論”及分析的方法,研制出來速度達到0.6m/s的仿生鰻魚實驗?zāi)P?,之后又研制了“仿生機器海豚”,并在北京航空航天大學實驗室進行了速度、功率參數(shù)的測定、魚體流動顯示實驗和魚體阻力測定實驗,獲得了魚的擺動推進深層次機理[9]。中科院自動化所根據(jù)機器魚的運動學模型,研究了仿生機器魚的控制問題,開展了多仿生機器魚的控制與協(xié)調(diào)研究,建成了多仿生機器魚協(xié)調(diào)系統(tǒng)(Multiple Biomimetic RobotFish Coordinate System,簡 稱 MRFS)平臺[10]。
計算機技術(shù)、自動化技術(shù)和材料技術(shù)的發(fā)展推動了仿生機器魚技術(shù)水平的提升,通過對魚體游動規(guī)律的觀察和研究,結(jié)合運動學和動力學的發(fā)展,研究者提出了具有綜合性能的仿生機器魚,但是當前的仿生機器魚主要要求能夠?qū)崿F(xiàn)以下功能:自動躲避障礙物、水下環(huán)境探測、信息交互能力、自動續(xù)航等。為了實現(xiàn)上述功能必須給機器魚的機構(gòu)進行全面的設(shè)計,給機器魚配置多種傳感器、CMOS攝像機、定位器等,使機器魚能夠通過傳感器和攝像機采集的信息進行自主游動,實現(xiàn)仿生機器魚的智能控制。本文主要是給魚體制定了多種傳感器、CMOS攝像頭、GPS定位器,通過采集到的信息進行水下避障和探測,設(shè)計了機器魚避障規(guī)則,提出了一種智能的避障控制方法,并進行實驗驗證。
傳感器網(wǎng)絡(luò)由GP2YOA21YK型號紅外測距傳感器、GPS定位器、CMOS攝像頭組成。GP2YOA21YK傳感器采用三角測量方法,被測物體的材質(zhì)、環(huán)境溫度以及測量時間都不會影響傳感器的測量精度,測量的距離范圍為10~100cm,因此采用型號為GP2YOA21YK紅外測距傳感器進行避障。紅外測距傳感器主要由紅外發(fā)射頭、紅外接收頭、紅外發(fā)射電路、紅外接收電路組成。其具體的工作原理如下:紅外發(fā)射驅(qū)動電路驅(qū)動發(fā)射頭的紅外二極管發(fā)出紅外光,當紅外光遇到障礙物時被反射回來,反射回來的紅外光由紅外接收驅(qū)動電路驅(qū)動紅外接收頭的光敏二極管接收到,通過電壓轉(zhuǎn)換轉(zhuǎn)換成可測量的電壓值;因為紅外光的強度會隨著距離的縮小而增強,紅外接收電路轉(zhuǎn)化的電壓值會隨之增強,又因為電壓與距離成比例,所以可以通過對電壓的計算,得出機器魚與障礙物之間的距離并發(fā)出信號。GPS定位器有非常強大的功能,在不同的場合都能實現(xiàn)定位功能,在機器人領(lǐng)域應(yīng)用也非常普遍。在機器魚遇到障礙物時,紅外傳感器會發(fā)出信號,這時GPS定位傳感器可以通過紅外測距傳感器發(fā)出的信息得出障礙物的具體位置,與CMOS攝像頭拍攝的機器魚周圍環(huán)境的畫面一起傳給上位機從而完成避障和探測的任務(wù)。
由于單個傳感器的局限性,制定多傳感器系統(tǒng),可以得到機器魚周圍詳盡的信息,在魚體上分布了多種傳感器和定位器:上部紅外測距傳感器UP、左部紅外測距傳感器LE、右部紅外測距傳感器RI、下部紅外測距傳感器DO、前部紅外測距傳感器FR、后部紅外測距傳感器RE和內(nèi)部GPS定位器IN。這7種傳感器能夠探測到仿生機器魚周圍的上方、下部、左側(cè)、右側(cè)、后方的所有障礙物信息并且能夠?qū)@些障礙物進行定位。在安裝這些不同傳感器時要根據(jù)紅外測距傳感器的分辨率來確定,確保其之間沒有相互干擾。機器魚通過傳感器反饋的信息,依據(jù)規(guī)定的運動規(guī)則實現(xiàn)自主游動,傳感器在魚體上的分布如圖1所示。
圖1 傳感器網(wǎng)絡(luò)
仿生機器魚的結(jié)構(gòu)主要由控制部分(主芯片控制系統(tǒng)、外圍組建)、支撐部分(魚骨架和魚頭)、通訊部分、驅(qū)動部分(舵機)、其他(塑料薄膜材質(zhì)的防水魚皮和電池)5個基本部分組成,其中防水采用機械密封進行防水。機器魚魚體的主要構(gòu)成部分如圖2所示,魚頭部位是整個機器魚的核心部分,包括電路板、通訊模塊CMOS攝像頭等,如圖3所示。
在控制模塊中采用ARM微處理器S3C2440作為板載主芯片(三星公司產(chǎn)品資料《S3C24401》)??刂颇K中舵機主要由微處理器控制,機器魚通過微處理器控制產(chǎn)生PWM信號,控制各個舵機的轉(zhuǎn)角,從而實現(xiàn)各個關(guān)節(jié)的協(xié)調(diào)擺動模仿魚類的身體擺動。機器魚的轉(zhuǎn)彎主要靠改變各個關(guān)節(jié)的角度來實現(xiàn)。機器魚的速度通過改變關(guān)節(jié)的擺動頻率來控制。在機器魚的一個游動周期內(nèi)通過改變不同的偏移量,可以實現(xiàn)不同的轉(zhuǎn)彎。仿生機器魚的主要參數(shù)見表1所列。
圖2 魚 體
圖3 魚 頭
表1 技術(shù)參數(shù)
基于對魚類游動的觀察以及考慮到水下世界的復(fù)雜性,給機器魚定義10種基本運動:直行(STRAIGHT)、懸停(STATIC)、加速(QUICKEN)、減 速 (SLOW DOWN)、倒 行 (RETROACT)、左轉(zhuǎn)彎(LEFT-TURN)、右轉(zhuǎn)彎(TURNRIGHT)、上?。≧ISE)、下潛(DESCEND)、平動(HORIZON)。
根據(jù)機器魚在水下環(huán)境的復(fù)雜性,定義速度等級和轉(zhuǎn)彎檔次。速度分為7級,0級機器魚懸停,7級時達到最大。轉(zhuǎn)彎檔次分為7檔,左轉(zhuǎn)3檔,右轉(zhuǎn)3檔,4檔為直行。通過設(shè)定的10種基本運動、速度等級、轉(zhuǎn)彎檔次的組合能夠完成各種避障運動,例如加速逃跑、減速轉(zhuǎn)彎、加速轉(zhuǎn)彎、加速上浮等運動。直行:魚身平直,機器魚只靠尾鰭推進,尾鰭左右擺動的幅度一致,尾部的擺動中心在魚體的中心線上;懸停:胸鰭直立(魚體的綜合密度為1);加速:機器魚從較慢的速度快速轉(zhuǎn)到高等級的速度;減速:機器魚從高等級速度轉(zhuǎn)到低等級速度;倒行:機器魚在胸鰭推進直游時,胸鰭旋轉(zhuǎn)180°;左轉(zhuǎn)彎:給機器魚的尾鰭逐步增大向左的偏移量,可以實現(xiàn)左轉(zhuǎn)彎;右轉(zhuǎn)彎:給機器魚的尾鰭逐步增大向右的偏移量,可以實現(xiàn)右轉(zhuǎn)彎;上浮:通過改變胸鰭的擺動角度實現(xiàn)機器魚的上?。幌聺摚和ㄟ^改變胸鰭的擺動角度實現(xiàn)機器魚的下潛;平動:當機器魚的胸鰭保持平行時,機器魚在水面上漂動為平動。
幾種游動模式如圖4所示。
圖4 幾種游動模式
在機器魚的設(shè)計中還添加了幾種轉(zhuǎn)彎模式,文獻[11-12]對尾鰭擺動的轉(zhuǎn)彎模式進行了定義,主要為3種模式,結(jié)合這3種模式分別進行了實驗。闡述如下:
(1)前進中轉(zhuǎn)彎。當機器魚在游動中給尾鰭逐步地增加幾何偏移量可以使機器魚在游動中以不同的速度進行轉(zhuǎn)彎,是最基本的轉(zhuǎn)彎模式。
(2)急轉(zhuǎn)彎。當機器魚在游動時,突然將尾部的幾何偏移量加到最大可以使機器魚的身體呈“C”狀,然后實現(xiàn)大幅度急轉(zhuǎn)彎。
(3)靜止轉(zhuǎn)彎。當機器魚在靜止的狀態(tài)下,給尾鰭增加幾何偏移量,這樣可以使機器魚在靜止狀態(tài)下實現(xiàn)轉(zhuǎn)彎。
本文所采用的是產(chǎn)生式系統(tǒng),產(chǎn)生式就是使用事實的邏輯值產(chǎn)生先決條件,然后得到滿足這些條件所產(chǎn)生的結(jié)果,其形式就是if-then。把6個方向的傳感器和10種基本運動相組合,再加上GPS定位器和CMOS攝像頭設(shè)計了一種新的控制規(guī)則。規(guī)則庫包括2個子庫分別為機器魚在橫向和縱向的避障規(guī)則,見表2、表3所列。
表2 規(guī)則庫1
表3 規(guī)則庫2
從表2、表3可以得出,機器魚的轉(zhuǎn)彎和減速運動只與FR、LE、RI、RE 4個變量有關(guān),而上升下潛和加速運動只與UP、DO 2個變量有關(guān),所以在解決加速與減速時只需關(guān)注這幾個變量即可。當規(guī)則庫中的加速運動和減速運動相沖突時優(yōu)先采用規(guī)則庫1。
上面的規(guī)則庫中設(shè)定了機器魚游動路徑與傳感器之間的關(guān)系,定性地描述了機器魚的游動規(guī)則,但沒有定量地描述。推理機制就是對機器魚的游動進行定量地描述,即機器魚離障礙物多遠時開始轉(zhuǎn)彎、轉(zhuǎn)彎等級、轉(zhuǎn)彎速度等。
本文設(shè)計的推理機制就是根據(jù)機器魚在水下探測到的信息推出相應(yīng)的結(jié)論。首先讀取機器魚探測到的信息,根據(jù)探測的信息推出機器魚的轉(zhuǎn)彎等級、加速等級和轉(zhuǎn)彎模式。
下面定義2個參數(shù):碰撞危險度和上升下潛意愿強度[13]。當機器魚探測到有障礙物便根據(jù)探測到的距離信息對危險碰撞度和上升下潛意愿度進行量化,量化規(guī)則見表4、表5所列。
表4 危險碰撞度
表5 上升下潛意愿度
定義速度等級為7級,0級時是靜止的,速度從0~7級依次增加。4級直行,1、2、3級為減速,5、6、7級為加速。轉(zhuǎn)彎等級為7級,中間檔為4,左轉(zhuǎn)彎為1、2、3,右轉(zhuǎn)彎為5、6、7。從規(guī)則庫中可以看出機器魚的減速運動和轉(zhuǎn)彎等級只與危險碰撞度有關(guān),規(guī)定當機器魚離障礙物越近(危險碰撞度越?。┑臅r候轉(zhuǎn)彎等級越大,速度越慢。機器魚的加速運動只與上升下潛意愿度有關(guān),離障礙物越遠(上升下潛意愿度越大),速度越快。
根據(jù)設(shè)計的規(guī)則和方法設(shè)計了2組實驗,即機器魚在簡單水環(huán)境下和在復(fù)雜水環(huán)境下進行的避障。
實驗中的機器魚集成了4個傳感器和1個GPS定位器:前部、后部、左側(cè)、右側(cè)。實驗的場景為一個長方形水池,障礙物為長方形小木塊。
在簡單水環(huán)境下進行避障,機器魚先是探測到有障礙物并且探測到距離為45cm,減低速度向左游動,這時遇到池子邊緣又進行轉(zhuǎn)彎避過池子邊緣。整個過程機器魚先是避過障礙物之后又避過池子邊緣都沒有發(fā)生碰撞現(xiàn)象,而且游動速度平穩(wěn)反應(yīng)靈敏,如圖5所示。
圖5 簡單環(huán)境下機器人避障路徑
復(fù)雜情況下,當機器魚探測到距第1個障礙物有80cm時執(zhí)行減速轉(zhuǎn)彎運動,之后開始直游,又探測到距第2個障礙物還有65cm時又開始執(zhí)行減速轉(zhuǎn)彎運動,在逃離障礙物后執(zhí)行加速游動,直到遠離障礙物,在整個過程中機器魚游動較好,能夠根據(jù)探測到的距離判別怎樣轉(zhuǎn)彎,并且能夠定位障礙物的位置,探測水下的環(huán)境,如圖6所示。
圖6 復(fù)雜環(huán)境下機器人避障路徑
這2組實驗的結(jié)果表明,本文提出的控制方法是有效可行的,能夠使機器魚完成避障和探測的任務(wù)。
本文基于紅外測距傳感器和定位器設(shè)計了一種具有自主避障和探測功能的仿生機器魚,設(shè)計了避障規(guī)則并進行了實驗,實驗結(jié)果表明這種方法的有效性。由于水下力學問題,機器魚潛入水下的深度有限,只有60cm,并且紅外測距傳感器探測距離比較短而且探測范圍比較窄,存在一些盲區(qū),所以在以后的研究中可以對這些問題進行改進。
[1]錢朋安,莢濟民.機器人運動學仿真教學軟件研究 [J].合肥工業(yè)大學學報:自然科學版,2005,28(7):760-763.
[2]Triantafyllou MS,Triantafyllou G S.An efficient swimming machine[J].Scientific American,1995,272(3):64-70.
[3]Kato N.Control performance in the horizontal plane of a fish robot with mechanical pectoralfins[J].IEEE Journal of Oceanic Engineering,2000,25(1):121-129.
[4]王 凱.具有嵌入式視覺功能的機器魚設(shè)計與控制[D].北京:中國科學院研究生院,2011.
[5]汪 明,喻俊志,王 碩,等.多關(guān)節(jié)仿生魚推進機構(gòu)的設(shè)計與實現(xiàn) [J].中國造船,2005,46(1):22-28.
[6]向忠祥,張向明,劉令勛.尾鰭推進裝置的研究 [J].武漢造船,1994,99(6):23-26.
[7]張向明,李玉江.水下柔性魚形機構(gòu)原理及單尾鰭板水運力試驗研究 [J].海洋工程,2002,20(1):84-90.
[8]劉軍考.仿魚水下推進器理論與實驗研究 [D].哈爾濱:哈爾濱工業(yè)大學,2001.
[9]梁建宏,王田苗,魏洪興,等.水下仿生機器魚的研究進展2:小型實驗機器魚的研制 [J].機器人,2002,24(3):234-238.
[10]喻俊志,陳爾奎,王 碩,等.一種多仿生機器魚協(xié)作系統(tǒng)的設(shè)計與初步實現(xiàn) [J].系統(tǒng)仿真學報,2002,14(10):1316-1320.
[11]Hirata K,Takimoto T,Tamura K.Study on turning performance of a fish robot[C]//First International SymposiuMon Aqua Bio-Mechanisms,2000:287-292.
[12]喻俊志.多仿生機器魚控制與協(xié)調(diào)研究 [D].北京:中國科學院研究生院,2003.
[13]桑海泉,王 碩,譚 民,等.基于紅外傳感器的仿生機器魚自主避障控制[J].系統(tǒng)仿真學報,2005,17(6):1400-1404.