吳東明,王麗娟
(焦作師范高等??茖W(xué)校 計(jì)算機(jī)與信息工程學(xué)院,河南 焦作 454000)
農(nóng)業(yè)是經(jīng)濟(jì)發(fā)展的基礎(chǔ)和保障,一直都備受各個(gè)國家的重視。目前,我國不斷通過通過加快農(nóng)業(yè)機(jī)械化的方式,積極提升自身的現(xiàn)代農(nóng)業(yè)水平。其中,農(nóng)業(yè)機(jī)器人的出現(xiàn)和應(yīng)用極大地改變了傳統(tǒng)耕作模式,給我國的現(xiàn)代農(nóng)業(yè)發(fā)展帶來了全新改變。果實(shí)采摘作為農(nóng)業(yè)種植中繁瑣度、復(fù)雜度最大的步驟,這類機(jī)器人發(fā)展?jié)摿薮?。為?基于ARM+DSP和視覺傳感器,結(jié)合圖像處理技術(shù),設(shè)計(jì)了一套采摘機(jī)器人避障控制系統(tǒng),能夠?qū)崿F(xiàn)采摘機(jī)器人的實(shí)時(shí)避障和路徑規(guī)劃。
機(jī)器視覺系統(tǒng)一般由視覺傳感器、圖像采集卡、光源、PC機(jī)、目標(biāo)工件和運(yùn)動(dòng)控制系統(tǒng)組成,如圖1所示。
圖1 機(jī)器視覺應(yīng)用系統(tǒng)框架圖Fig.1 The framework of machine vision application system
目前,基于視覺的目標(biāo)識(shí)別和產(chǎn)品檢測技術(shù)已經(jīng)得到了深入的研究和廣泛的應(yīng)用,如康耐視、美國國家儀器(NI)、基恩士等知名公司在機(jī)器視覺領(lǐng)域具有很深入的研究。機(jī)器視覺在商品包裝、零部件檢測、提取書本文字、水果分級(jí)、半導(dǎo)體行業(yè)及自動(dòng)駕駛等等都已成功應(yīng)用,其工作框架如圖2所示。
圖2 機(jī)器視覺系統(tǒng)工作框架圖Fig.2 The working frame diagram of machine vision system
機(jī)器視覺系統(tǒng)利用視覺傳感器,結(jié)合圖像處理、智能決策和智能控制,實(shí)現(xiàn)眼睛的視覺功能。其將目標(biāo)對(duì)象的圖像Analog信號(hào)轉(zhuǎn)化為Digital信號(hào),在智能決策模塊加入人類的情感,去處理和決策圖像,完成對(duì)目標(biāo)對(duì)象的檢測和識(shí)別,實(shí)現(xiàn)讓機(jī)械看到世界的視覺功能。采摘機(jī)器人避障控制系統(tǒng)ARM+DSP雙核的總體設(shè)計(jì)方案,如圖3所示。
圖3 采摘機(jī)器人避障控制系統(tǒng)總體框架Fig.3 The overall framework of obstacle avoidance control system for picking robot
系統(tǒng)首先通過視覺傳感器獲取采摘機(jī)器人作業(yè)環(huán)境信息,通過圖像處理,實(shí)現(xiàn)對(duì)環(huán)境障礙物的檢測;通過3D建模等視覺差計(jì)算障礙物距離,然后進(jìn)行避障規(guī)劃,驅(qū)動(dòng)前進(jìn)電機(jī)和轉(zhuǎn)向電機(jī)進(jìn)行行駛控制,達(dá)到躲避障礙物、到達(dá)目的地的目標(biāo)。
基于ARM+DSP和視覺傳感器的采摘機(jī)器人避障控制系統(tǒng)的主要任務(wù)是:在移動(dòng)作業(yè)過程中,判斷前方是否有障礙物,是否可以正常前行。因此,需要完成圖像采集、圖像處理、數(shù)據(jù)通信及結(jié)果展現(xiàn)等功能。
由于數(shù)字圖像具有數(shù)據(jù)量大、精度高和耗時(shí)長的特點(diǎn),需要具有強(qiáng)大運(yùn)算能力的處理器進(jìn)行圖像處理,因此本文采用了德州儀器公司生產(chǎn)的ARM+DSP雙核HiRel達(dá)芬奇SM320DM6446-HIREL系列處理器作為處理核心。達(dá)芬奇平臺(tái)是基于共享內(nèi)存的嵌入式多處理(ARM、DSP、視頻前端和后端)環(huán)境,其關(guān)鍵是片內(nèi)多通道的交換中心資源(Switch Central Resource SCR)?;赟CR的達(dá)芬奇平臺(tái)中的多個(gè)處理器可以實(shí)現(xiàn)典型的C/S結(jié)構(gòu),ARM系列處理器有體積小、可靠性高、外圍設(shè)備接口豐富的特點(diǎn),能夠支持多路圖像采集,主要負(fù)責(zé)實(shí)時(shí)控制圖像采集和圖像處理。DSP系列處理器是一種經(jīng)過專門設(shè)計(jì)、結(jié)構(gòu)特殊的微處理器,具有專門的硬件乘法器,可以用來快速地實(shí)現(xiàn)各種數(shù)字信號(hào)處理算法,主要負(fù)責(zé)實(shí)時(shí)圖像采集和靜態(tài)圖像處理。采摘機(jī)器人避障控制系統(tǒng)總體框架如圖4所示。
圖4 ARM+DSP雙核的總體設(shè)計(jì)方案Fig.4 The overall design plan of ARM and DSP dual core
基于ARM+DSP和視覺傳感器的采摘機(jī)器人避障控制系統(tǒng)核心處理模塊采用了標(biāo)準(zhǔn)的達(dá)芬奇系統(tǒng)結(jié)構(gòu),主要包含ARM子系統(tǒng)、DSP子系統(tǒng)、圖像處理子系統(tǒng)、數(shù)據(jù)交換中心資源系統(tǒng)及外設(shè)等。系統(tǒng)硬件控制框架如圖5所示。
圖5 系統(tǒng)硬件控制框架Fig.5 The control framework of system hardware
視頻解碼模塊采用美國Fairchild Semiconductor的TMC22151AKHC視頻解碼芯片。該芯片是一款性能高、成本低、功耗低的混合信號(hào)解碼芯片,最高采樣率為18MHz,可以進(jìn)行8、10bit并行處理,具有支持NTSC / PAL字段和基于NTSC幀的模擬信號(hào)解碼,CCIR-601/624(D1)、CVBS和YC的輸入,以及CCIR-601/624(D1)、RGB和YC的輸入等優(yōu)點(diǎn)。TMC22151AKHC解碼的過程分為3個(gè)階段:①分離亮度和色度;②將內(nèi)部產(chǎn)生的正弦和余弦波形,鎖定在脈沖解碼和解調(diào)的色度信號(hào)上,然后濾波色度信號(hào)以產(chǎn)生色差信號(hào);③縮放亮度和顏色差異信號(hào),將它們轉(zhuǎn)換為紅色、綠色和藍(lán)色分量視頻信號(hào)。 TMC22151AKHC解碼的過程示意如圖6所示。
圖6 TMC22151AKHC解碼的過程示意圖Fig.6 The schematic diagram of TMC22151AKHC decoding process
1)ARM+DSP雙核內(nèi)部通信設(shè)計(jì)。達(dá)芬奇SM320DM6446平臺(tái)使用的是ARM+DSP雙核,內(nèi)部需要通訊機(jī)制來協(xié)調(diào)程序的同步運(yùn)行。內(nèi)部通訊有中斷與查詢兩種方法。查詢方法會(huì)占用大量的系統(tǒng)資源,而且在實(shí)時(shí)性較差,因而在實(shí)際使用中采用了中斷方法。其原理是:兩個(gè)CPU通過來共享數(shù)據(jù)實(shí)現(xiàn)數(shù)據(jù)交互,首先一方通過發(fā)送中斷信號(hào)來通知對(duì)方取走數(shù)據(jù),另一方進(jìn)入中斷服務(wù)程序完成接收數(shù)據(jù)。ARM+DSP雙核內(nèi)部通信程序流程如圖7所示。
圖7 ARM+DSP雙核內(nèi)部通信程序流程圖Fig.7 The internal communication program flow chart of ARM+DSP dual core
2)圖像采集及處理軟件設(shè)計(jì)。首先ARM端發(fā)送啟動(dòng)圖像采集指令到DSP端,DSP調(diào)用圖像采集函數(shù),采集一幀圖像放入DDR2內(nèi)存中,產(chǎn)生一個(gè)圖像采集完畢中斷到ARM;ARM端檢測到圖像采集完畢中斷之后,再次發(fā)送數(shù)據(jù)處理中斷到DSP,DSP對(duì)采集到的數(shù)據(jù)進(jìn)行識(shí)別,將識(shí)別結(jié)果存入DDR2內(nèi)存中,并啟動(dòng)識(shí)別結(jié)束中斷通知ARM;ARM收到中斷之后讀取識(shí)別結(jié)果,通過以太網(wǎng)將結(jié)果發(fā)送到客戶端進(jìn)行顯示。圖像采集與處理流程如圖8所示。
圖8 圖像采集與處理流程圖Fig.8 The flow chart of image acquisition and processing
采摘機(jī)器人在實(shí)際的作業(yè)中可能會(huì)經(jīng)常會(huì)碰到障礙物,因此需要進(jìn)行避障處理。采摘機(jī)器人避障控制系統(tǒng)是通過避免機(jī)器人在其路徑中與障礙物(其本質(zhì)上是靜態(tài)的)碰撞來確定機(jī)器人從其工作空間中的當(dāng)前位置到目的位置。本文進(jìn)行的采摘機(jī)器人避障系統(tǒng)統(tǒng)一采用以下假設(shè)進(jìn)行分析處理:
1)對(duì)于采摘機(jī)器人,當(dāng)前位置和目標(biāo)位置在給定的參考坐標(biāo)系中是已知的。
2)采摘機(jī)器人可以從一組固定的動(dòng)作中選擇給定時(shí)間內(nèi)的任何移動(dòng)策略。
3)采摘機(jī)器人分步執(zhí)行其操作,直到氣機(jī)器人到達(dá)目標(biāo)位置。
為滿足給定的假設(shè),避障系統(tǒng)遵循以下原則:
1)首先,為了確定下一個(gè)目標(biāo)位置,采摘機(jī)器人會(huì)嘗試將其前進(jìn)方向與目標(biāo)對(duì)齊。
2)在對(duì)準(zhǔn)過程中,可能導(dǎo)致與前進(jìn)道路中的障礙物碰撞,因此采摘機(jī)器人必須將其前進(jìn)方向向左或向右轉(zhuǎn)動(dòng)預(yù)定角度以避開障礙物。
3)若采摘機(jī)器人可以在沒有碰撞的情況下與目標(biāo)位置對(duì)齊,那么將不需要進(jìn)行避障。
4)如果向左或向右旋轉(zhuǎn)航向方向,則需要機(jī)器人圍繞z軸旋轉(zhuǎn)相同的角度;如果它被捆綁,則隨機(jī)打破。
圖9 采摘機(jī)器人從當(dāng)前位置i到下一個(gè)位置Fig.9 Picking robot from the current location i to the next location
由圖9可以看出:采摘機(jī)器人下一個(gè)目標(biāo)位置(xi(t+δt),yi(t+δt))的表達(dá)式為
xi(t+δt)=xi(t)+vi(t)cosθiδt
(1)
yi(t+δt)=yi(t)+vi(t)sinθiδt
(2)
當(dāng)δt=1時(shí),式(1)和式(2)可以轉(zhuǎn)換為
xi(t+1)=xi(t)+vi(t)cosθi
(3)
yi(t+1)=yi(t)+vi(t)sinθi
(4)
采摘機(jī)器人當(dāng)前位置為(xi(t),yi(t)),下一個(gè)目標(biāo)位置為(xi(t+δt),yi(t+δt)),這樣應(yīng)首先考慮在兩點(diǎn)之間的連接不觸及地圖中的障礙物,如圖10所示。
圖10 采摘機(jī)器人避障示意圖Fig.10 The sketch of obstacle avoidance for picking robot
通過形成約束來最小化從當(dāng)前位置到目標(biāo)位置的總路徑長度,而不觸及障礙物;然后,根據(jù)目標(biāo)函數(shù)fit1確定采摘機(jī)器人的軌跡長度。fit1計(jì)算公式為
fit1=
(5)
公式(5)為線性模糊的目標(biāo)函數(shù)約束,可以防止采摘機(jī)器人與障礙物的碰撞,用于評(píng)估路徑中存在的障礙物。
為了驗(yàn)證基于ARM+DSP和視覺傳感器的采摘機(jī)器人避障控制系統(tǒng)的可行性,利用MatLab 7.0進(jìn)行避障仿真實(shí)驗(yàn),結(jié)果如圖11所示。
圖11 仿真結(jié)果圖Fig.11 Simulation results diagram
圖11中,start為采摘機(jī)器人的起點(diǎn),goal為采摘機(jī)器人的目的終點(diǎn),黑色方框區(qū)域?yàn)檎系K物,白色區(qū)域?yàn)椴烧獧C(jī)器人可移動(dòng)區(qū)域,黑色線路為采摘機(jī)器人避障過程中的路徑。由圖11可以看出:該避障控制系統(tǒng)可以實(shí)現(xiàn)避障和路徑規(guī)劃,且在避障過程中規(guī)劃的路徑耗時(shí)最少,運(yùn)動(dòng)代價(jià)最小;在整個(gè)移動(dòng)過程中,成功避開所有障礙物,達(dá)到了目的終點(diǎn),證明了該避障控制系統(tǒng)的有效性和可行性。
以采摘機(jī)器人移動(dòng)路徑中躲避障礙物為研究對(duì)象,設(shè)計(jì)了基于ARM+DSP和視覺傳感器的采摘機(jī)器人避障控制系統(tǒng)。系統(tǒng)采用視覺傳感器,利用圖像處理技術(shù)及躲避障礙物的策略,并利用MatLab 7.0進(jìn)行避障路徑優(yōu)化仿真驗(yàn)證。實(shí)驗(yàn)結(jié)果表明:該避障控制系統(tǒng)可以實(shí)現(xiàn)避障和路徑規(guī)劃,且在避障過程中規(guī)劃的路徑耗時(shí)最少,運(yùn)動(dòng)代價(jià)最小、證明了該避障控制系統(tǒng)的有效性和可行性。