梁 碩
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南 南陽(yáng) 473000)
隨著人工智能、多傳感技術(shù)、圖像處理技術(shù)和智能控制等技術(shù)的快速發(fā)展和廣泛應(yīng)用,移動(dòng)機(jī)器人獲得了很大的進(jìn)步和發(fā)展。我國(guó)作為一個(gè)農(nóng)業(yè)大國(guó),需要采摘機(jī)器人這種具有一定智慧能力的農(nóng)業(yè)機(jī)器人,以提高農(nóng)業(yè)種植效率、減少人工勞動(dòng)力。該路徑規(guī)劃系統(tǒng)將能大大減少機(jī)器人在相同區(qū)域行走的次數(shù),極大程度地提高機(jī)器人效率,為采摘機(jī)器人的實(shí)時(shí)路徑規(guī)劃提供強(qiáng)大助力。
MiroSot機(jī)器人在比賽過程的任務(wù)是將球踢進(jìn)對(duì)方球門,而使本方盡量少失球。MiroSot機(jī)器人不僅包括復(fù)雜的控制軟件,硬件設(shè)備的復(fù)雜程度也較高,包括計(jì)算機(jī)系統(tǒng)、決策系統(tǒng)、視覺系統(tǒng)和通訊系統(tǒng)。因此,MiroSot機(jī)器人路徑規(guī)劃系統(tǒng)由很多簡(jiǎn)單的模塊組成,各個(gè)子模塊(系統(tǒng))依靠各自的傳感器設(shè)備感知環(huán)境信息,并配合機(jī)器人執(zhí)行器進(jìn)行避障、路徑規(guī)劃等操作,在復(fù)雜的環(huán)境中共同為機(jī)器人的運(yùn)動(dòng)保駕護(hù)航。MiroSot機(jī)器人路徑規(guī)劃系統(tǒng)如圖1所示。該路徑規(guī)劃系統(tǒng)的各個(gè)子系統(tǒng)相對(duì)比較復(fù)雜,其核心部分包括決策、視覺和通訊3個(gè)子系統(tǒng)。其中,視覺系統(tǒng)由CCD攝像頭和視頻解碼器構(gòu)成,任務(wù)是充當(dāng)機(jī)器人的眼睛,主要是獲取場(chǎng)地上所有機(jī)器人包括自身及球的位置關(guān)系;決策系統(tǒng)根式根據(jù)CCD攝像頭采集的圖像信息進(jìn)行信息的提煉,并結(jié)合動(dòng)作策略庫(kù),規(guī)劃出機(jī)器人的移動(dòng)的路徑,從而決定各個(gè)機(jī)器人的運(yùn)動(dòng)控制命令;通訊系統(tǒng)采用ZigBee無線傳輸模式,計(jì)算機(jī)控制系統(tǒng)作為ZigBee協(xié)調(diào)器,而己方MiroSot機(jī)器人機(jī)身上搭載有ZigBee終端節(jié)點(diǎn),計(jì)算機(jī)系統(tǒng)指令通過協(xié)調(diào)器發(fā)送給終端節(jié)點(diǎn),然后由其控制器進(jìn)行處理和響應(yīng)。
圖1 MiroSot機(jī)器人路徑規(guī)劃系統(tǒng)
機(jī)器人路徑規(guī)劃實(shí)質(zhì)是:在復(fù)雜的環(huán)境中,根據(jù)傳感器獲得的環(huán)境信息、目標(biāo)物及障礙物之間的位置信息,實(shí)時(shí)對(duì)移動(dòng)路徑進(jìn)行規(guī)劃,尋找一條從機(jī)器人起始位置到目標(biāo)位置的無碰撞路徑。在機(jī)器人移動(dòng)過程中,環(huán)境中機(jī)器人群、障礙物位置和目標(biāo)位置的分布情況會(huì)很大程度地影響機(jī)器人的路徑規(guī)劃。
柵格法是指將機(jī)器人的移動(dòng)環(huán)境按機(jī)器人的大小分割成若干網(wǎng)絡(luò)格子,且假定在機(jī)器人移動(dòng)過程中,環(huán)境信息不會(huì)有變化。在路徑規(guī)劃前,根據(jù)已經(jīng)獲取到的環(huán)境信息,給每個(gè)柵格做上標(biāo)記:若柵格單元有障礙物,用1表示;反之,用0表示。這樣,柵格塊可以分為自由空間和障礙物兩種。自由空間可以隨便進(jìn)行移動(dòng),而障礙物柵格則需要避開。在實(shí)際應(yīng)用中,柵格的標(biāo)識(shí)分為直角坐標(biāo)和序號(hào)兩種方法。直角坐標(biāo)標(biāo)識(shí)法是以柵格左上角為原點(diǎn)建立坐標(biāo)系[見圖2(a)],一個(gè)柵格單元與直角坐標(biāo)(x,y)對(duì)應(yīng)。序號(hào)法是按從左至右、從上至下順序?qū)鸥駟卧M(jìn)行編號(hào)[見圖2(b)]。
圖2 柵格法標(biāo)識(shí)的兩種方法
軟件編程過程中,序號(hào)法只需要1個(gè)一維數(shù)組便可以將環(huán)境信息全部存儲(chǔ)下來,而直角坐標(biāo)法則需要1個(gè)二維數(shù)組。相比而言,序號(hào)法計(jì)算更加簡(jiǎn)單,運(yùn)行效率也比較高。
局部路徑規(guī)劃控制方法主要有人工勢(shì)場(chǎng)、遺傳算法、神經(jīng)網(wǎng)絡(luò)和模糊控制4種方法。其中,遺傳算法有比較強(qiáng)的全局搜索能力,適合求解離散問題。因此,根據(jù)MiroSot機(jī)器人在比賽中的運(yùn)動(dòng)特性,在局部路徑規(guī)劃中采用遺傳算法方法。下面主要介紹遺傳算法。
遺傳算法是模擬生物自然選擇和遺傳生物進(jìn)化過程中的繁殖、雜交、變異、競(jìng)爭(zhēng)和選擇等操作的計(jì)算模型,是一種路徑搜索最優(yōu)解的方法。該方法以遺傳和進(jìn)化理論為基礎(chǔ),構(gòu)造一類隨機(jī)的搜索算法,具有適用面廣、多點(diǎn)搜索、魯棒性好、自適應(yīng)強(qiáng)及并行性高的特點(diǎn)。遺傳算法解決機(jī)器人局部路徑規(guī)劃的流程如圖3所示。
圖3 遺傳算法流程
蘋果采摘機(jī)器人路徑規(guī)劃控制系統(tǒng)以意法半導(dǎo)體ST公司的STM32F103處理器為核心。該處理器內(nèi)核采用32位的Cortex-M3的CPU,能夠兼容16位和32位的Thumb-2指令集架構(gòu),芯片片上資源豐富,多達(dá)80個(gè)I/O口、16個(gè)外部中斷、7個(gè)定時(shí)器、2個(gè)ADC及9個(gè)通信接口。本文根據(jù)蘋果采摘機(jī)器人特殊需求,設(shè)計(jì)了該路徑規(guī)劃控制系統(tǒng)。系統(tǒng)總體方案框架如圖4所示。
圖4 系統(tǒng)總體方案框架圖
視頻解碼器是微處理器獲取CCD傳感器信息途徑中重要的一個(gè)器件,本文的采摘機(jī)器人路徑規(guī)劃系統(tǒng)采用TI公司的TVP5150視頻解碼芯片。該芯片采用四面32腳封裝,在實(shí)際開發(fā)中電路板布局比較簡(jiǎn)單;另外,該芯片具有超低功耗的特點(diǎn),在正常使用過程中功耗只有115mW左右,適用于電池供電的移動(dòng)設(shè)備。TVP5150視頻解碼電路框圖如圖5所示。
圖5 TVP5150視頻解碼電路框圖
視頻圖像信號(hào)進(jìn)入芯片AIPLH管腳輸入,經(jīng)過TVP5150視頻解碼芯片,將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),然后發(fā)送給STM32微處理器進(jìn)行特征值和二值化等圖像處理,對(duì)采摘機(jī)器人周邊環(huán)境狀況進(jìn)行判斷,進(jìn)而進(jìn)行路徑規(guī)劃。
本文研究的蘋果采摘機(jī)器人路徑規(guī)劃系統(tǒng)軟件采用模塊化編程的方法,進(jìn)行各個(gè)子系統(tǒng)軟件的開發(fā)。在開發(fā)中,軟件開發(fā)環(huán)境采用Keil MDK平臺(tái),該平臺(tái)提供了包括C編譯器、匯編器、鏈接,以及動(dòng)態(tài)、靜態(tài)庫(kù)管理的開發(fā)方案。平臺(tái)界面友好,簡(jiǎn)單易學(xué),具有強(qiáng)大的在線仿真和調(diào)試功能。蘋果采摘機(jī)器人路徑規(guī)劃系統(tǒng)軟件主流程如圖6所示。系統(tǒng)上電后,軟件首先會(huì)進(jìn)行一系列的初始化,然后對(duì)CCD攝像機(jī)獲取的圖像信息進(jìn)行處理,并依靠決策系統(tǒng)對(duì)機(jī)器人將要走的路徑進(jìn)行有效規(guī)劃;得到路徑規(guī)劃結(jié)果后,根據(jù)結(jié)果驅(qū)動(dòng)電機(jī)進(jìn)行運(yùn)動(dòng)操作,使機(jī)器人能夠及時(shí)躲避障礙物并到達(dá)目的地。
機(jī)器人進(jìn)行路徑規(guī)劃時(shí),首先需要將作業(yè)環(huán)境模型轉(zhuǎn)為合適的離散坐標(biāo)圖,即將機(jī)器人位置、環(huán)境中障礙物位置等空間進(jìn)行有效描述,方便控制系統(tǒng)判斷機(jī)器人和障礙物的位姿,從而進(jìn)行路徑規(guī)劃。現(xiàn)實(shí)環(huán)境空間轉(zhuǎn)換為結(jié)構(gòu)空間示意圖如圖7所示。
現(xiàn)實(shí)環(huán)境空間轉(zhuǎn)換為結(jié)構(gòu)空間的方法很多,其中柵格法使用較多。由于在柵格地圖中一定存在從機(jī)器人起點(diǎn)到終點(diǎn)的路徑,因此利用該柵格法一定可以建模并求出機(jī)器人移動(dòng)路徑的最優(yōu)路線。為了簡(jiǎn)化機(jī)器人路徑規(guī)劃算法,本文采用柵格法進(jìn)行環(huán)境建模,如圖8所示。
圖6 路徑規(guī)劃系統(tǒng)軟件主流程圖
圖7 現(xiàn)實(shí)環(huán)境空間轉(zhuǎn)換為結(jié)構(gòu)空間示意圖
圖8 建立柵格法環(huán)境模型
建立柵格法環(huán)境模型,其實(shí)是在環(huán)境空間中疊加一個(gè)平面網(wǎng)格。如果環(huán)境區(qū)域有障礙物或其他目標(biāo)物體,則相應(yīng)的位置上被標(biāo)記為1,其他可運(yùn)動(dòng)位置則標(biāo)記為0;最后將網(wǎng)格的每個(gè)中心點(diǎn)連接起來,就形成了一個(gè)連接圖。
建立柵格法環(huán)境模型的步驟流程為:
1)根據(jù)采摘機(jī)器人與其作業(yè)區(qū)域進(jìn)行柵格劃分;
2)對(duì)柵格區(qū)域進(jìn)行排序;
3)假設(shè)機(jī)器人能夠從8個(gè)方向進(jìn)行移動(dòng),其當(dāng)前機(jī)器人所在柵格為中心柵格,順時(shí)針從8個(gè)方向探測(cè)環(huán)境信息;
4)建立柵格法環(huán)境模型后,開始對(duì)障礙物物質(zhì)進(jìn)行檢測(cè)和判斷,并根據(jù)結(jié)果對(duì)應(yīng)的柵格的序號(hào)值進(jìn)行“0”或“1”的標(biāo)識(shí);
5)采用全局和局部的方法進(jìn)行安全的最優(yōu)路徑規(guī)劃。
為了驗(yàn)證蘋果采摘機(jī)器人路徑規(guī)劃系統(tǒng)的實(shí)時(shí)性和可靠性,在Win7系統(tǒng)下利用MatLab仿真軟件實(shí)現(xiàn)了該算法的程序設(shè)計(jì),并對(duì)其進(jìn)行了仿真實(shí)驗(yàn)。實(shí)驗(yàn)環(huán)境參數(shù)設(shè)置如下:
1)作業(yè)區(qū)域環(huán)境參數(shù)。將區(qū)域分為10×10的正方形的柵格,假設(shè)障礙物大小的最小單位為一個(gè)柵格大小。
2)迭代步長(zhǎng)設(shè)置為0.03,次數(shù)為200次。
3)左下方區(qū)域?yàn)槠瘘c(diǎn),右上方區(qū)域?yàn)榻K點(diǎn)。
4)實(shí)驗(yàn)?zāi)康氖窃谧鳂I(yè)區(qū)域,機(jī)器人經(jīng)過改變執(zhí)行和迭代次數(shù),實(shí)現(xiàn)無碰撞的從起點(diǎn)到達(dá)終點(diǎn)。試驗(yàn)仿真結(jié)果如圖9所示。
圖9 仿真結(jié)果圖Fig.9 The simulation results
由圖9可以看出:經(jīng)過多次的執(zhí)行和迭代,機(jī)器人能夠成功地實(shí)現(xiàn)從出發(fā)點(diǎn)到目標(biāo)點(diǎn)的無碰撞移動(dòng),達(dá)到了設(shè)計(jì)要求;系統(tǒng)可以實(shí)現(xiàn)采摘機(jī)器人的路徑規(guī)劃及無碰撞的最優(yōu)路徑規(guī)劃,證實(shí)了該系統(tǒng)具有很強(qiáng)的避障、全局和局部的路徑規(guī)劃能力。
為了解決蘋果采摘機(jī)器人在實(shí)際應(yīng)用中路徑規(guī)劃難度大、最優(yōu)解求解困難等問題,將MiroSot機(jī)器人路徑規(guī)劃系統(tǒng)應(yīng)用于蘋果采摘機(jī)器人中,采用了MiroSot機(jī)器人全局和局部路徑規(guī)劃算法,提高了采摘機(jī)器人對(duì)環(huán)境的感知、避障和決策的能力。實(shí)驗(yàn)結(jié)果表明:系統(tǒng)可以實(shí)現(xiàn)無碰撞的最優(yōu)路徑規(guī)劃,并能夠根據(jù)環(huán)境變化實(shí)時(shí)地進(jìn)行局部路徑規(guī)劃,證明了系統(tǒng)的實(shí)時(shí)性、有效性和可行性。