新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式技術(shù)的智能機(jī)器人系統(tǒng)研究

基于嵌入式技術(shù)的智能機(jī)器人系統(tǒng)研究

作者: 時(shí)間:2010-06-23 來(lái)源:網(wǎng)絡(luò) 收藏

  近年來(lái),機(jī)器人技術(shù)的應(yīng)用開(kāi)始從制造業(yè)向非制造領(lǐng)域擴(kuò)展,如宇宙探索、海底探查、管道鋪設(shè)和檢修、醫(yī)療、軍事、服務(wù)、娛樂(lè)等,基于非結(jié)構(gòu)環(huán)境、極限環(huán)境的先進(jìn)機(jī)器人技術(shù)及應(yīng)用研究已成為機(jī)器人技術(shù)研究和發(fā)展的主要方向。同時(shí),隨著嵌入式處理器的高度發(fā)展,嵌入式系統(tǒng)在體積、價(jià)格、功耗、性能、穩(wěn)定性等方面表現(xiàn)出明顯的優(yōu)勢(shì)。如果將嵌入式系統(tǒng)很好地與機(jī)器人技術(shù)融合,前景不可估量,因此,研究在嵌入式條件下的機(jī)器人技術(shù)也更有現(xiàn)實(shí)意義。

  本設(shè)計(jì)將應(yīng)用于機(jī)器人系統(tǒng),采用基于ARM920T核的S3C2410芯片作為主控CPU,使用實(shí)時(shí)嵌入式操作系統(tǒng)μC/OS-Ⅱ作為操作系統(tǒng),并集成必要的中間件μC/GUI和相應(yīng)的驅(qū)動(dòng)程序與應(yīng)用程序,構(gòu)建成一個(gè)完整的智能移動(dòng)機(jī)器人系統(tǒng),完成周?chē)h(huán)境的圖像、聲音等信息的采集,實(shí)現(xiàn)機(jī)器人的越障等功能。系統(tǒng)具有廣闊的發(fā)展空間和應(yīng)用前景,將來(lái)可用于在惡劣條件下的軍事偵察攻擊及反恐防爆等領(lǐng)域。

1 系統(tǒng)機(jī)械平臺(tái)的搭建

  對(duì)國(guó)內(nèi)外移動(dòng)機(jī)器人及仿生機(jī)器人的研究發(fā)現(xiàn),智能移動(dòng)機(jī)器人系統(tǒng)機(jī)械機(jī)構(gòu)大致分為三類(lèi),分別為輪式、履帶式和腿式,這三種機(jī)械模型各有優(yōu)缺點(diǎn)。其中,輪式移動(dòng)機(jī)器人以其地面適應(yīng)性強(qiáng)、運(yùn)行可靠和控制方便而成為移動(dòng)機(jī)器人首要的選擇方案,也是本文所介紹機(jī)器人采用的結(jié)構(gòu)。

  該機(jī)器人由前部機(jī)構(gòu)、主體機(jī)構(gòu)、側(cè)向機(jī)構(gòu)、后部機(jī)構(gòu)四部分組成。系統(tǒng)共配有6個(gè)車(chē)輪,每個(gè)直徑均為100 mm,均為主動(dòng)輪。其中,前后輪上各安裝有兩個(gè)電機(jī),一個(gè)電機(jī)驅(qū)動(dòng)轉(zhuǎn)向,另一個(gè)驅(qū)動(dòng)機(jī)器人的前進(jìn)后退;其余四個(gè)車(chē)輪分布在主體的兩側(cè),每個(gè)輪上各有一個(gè)電機(jī)驅(qū)動(dòng)前進(jìn)后退。

  機(jī)器人前部為一四桿機(jī)構(gòu),使前輪能夠在一定范圍內(nèi)調(diào)節(jié)其高度,主要功能是在機(jī)器人前部遇障礙時(shí),前向連桿機(jī)構(gòu)隨車(chē)輪上抬,而遇到下凹障礙時(shí)前車(chē)輪先下降著地,以減小震動(dòng),提高整機(jī)平穩(wěn)性。在主體的左右兩側(cè),分別配置了平行四邊形側(cè)向被動(dòng)適應(yīng)機(jī)構(gòu),該平行四邊形機(jī)構(gòu)與主體之間通過(guò)鉸鏈與其相連接,是小車(chē)行進(jìn)的主要?jiǎng)恿?lái)源。利用兩側(cè)平行四邊形可任意角度變形的特點(diǎn),實(shí)現(xiàn)自適應(yīng)各種障礙路面的效果。改變平行四邊形機(jī)構(gòu)的角度,可使左右兩側(cè)車(chē)輪充分與地面接觸,使機(jī)器人的6個(gè)輪子受力盡量均勻,加強(qiáng)機(jī)器人對(duì)不同路面的適應(yīng)能力,更加平穩(wěn)地越過(guò)障礙,并且更好地保證整車(chē)的平衡性。主體機(jī)構(gòu)主要起到支撐與連接機(jī)器人各個(gè)部分的作用,同時(shí),整個(gè)機(jī)器人的控制系統(tǒng)就安裝在主體之中。后部機(jī)構(gòu)與主體剛性連接,配備有電機(jī)驅(qū)動(dòng)車(chē)輪,主要起支撐作用,并配合前輪實(shí)現(xiàn)轉(zhuǎn)向。

2 控制系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)

2.1 控制系統(tǒng)總體硬件結(jié)構(gòu)

  控制系統(tǒng)的硬件系統(tǒng)方案設(shè)計(jì)如圖1所示。遠(yuǎn)程監(jiān)控端由臺(tái)式PC主機(jī)通過(guò)RS232或網(wǎng)絡(luò)接口連接無(wú)線收發(fā)模塊,完成圖像、語(yǔ)音的收集和顯示播放再現(xiàn),監(jiān)視現(xiàn)場(chǎng)機(jī)器人的周?chē)h(huán)境,必要時(shí)可以通過(guò)無(wú)線收發(fā)模塊發(fā)送控制命令,完成控制任務(wù)。由于研制的進(jìn)度,本部分即虛線框內(nèi)的功能正在開(kāi)發(fā),是今后研究的重點(diǎn);現(xiàn)場(chǎng)機(jī)器人控制端由核心控制板模塊、視頻采集模塊、語(yǔ)音采集模塊、人機(jī)交互模塊、程序下載模塊、電機(jī)驅(qū)動(dòng)模塊、電源模塊、無(wú)線收發(fā)模塊等組成。

2.2 語(yǔ)音視頻采集模塊

  因?yàn)闄C(jī)器人需要收集周?chē)h(huán)境的信息,監(jiān)聽(tīng)周?chē)那闆r,提供與圖像信息同步的語(yǔ)音信息,以便控制人員準(zhǔn)確地掌握周?chē)l(fā)生的情況,及時(shí)做出決策,所以設(shè)計(jì)了語(yǔ)音采集模塊以完成此項(xiàng)功能。本設(shè)計(jì)采用了Philips公司的UDA1341TS芯片與微處理器S3C2410相連,提供了完整的語(yǔ)音錄制和播放功能。S3C2410提供了IIS接口,能夠讀取IIS總線上的數(shù)據(jù),同時(shí)也為FIFO數(shù)據(jù)提供DMA的傳輸模式,這樣能夠同時(shí)傳送和接收數(shù)據(jù)。在S3C2410處理器中,音頻數(shù)據(jù)的傳輸可以使用兩個(gè)DMA通道。如聲音播放,先將數(shù)據(jù)送到內(nèi)存,然后傳到DMA控制器通道2,再通過(guò)IIS控制器寫(xiě)入IIS總線并傳輸給音頻芯片,而通道1則主要用于錄音功能。

  本系統(tǒng)采用基于CMOS圖像傳感器直接輸出數(shù)字信號(hào)的方案設(shè)計(jì)視頻采集模塊。此方案具有模塊簡(jiǎn)單、外圍電路少、直接輸出數(shù)字信號(hào)、不用經(jīng)過(guò)中間轉(zhuǎn)換就可以提供進(jìn)一步的圖像處理的諸多特點(diǎn)。本課題選用C3188A攝像頭構(gòu)成視頻采集模塊。C3188A是1/3″鏡頭的彩色數(shù)字輸出的攝像頭模塊,攝像頭芯片采用OmniVision公司的CMOS圖像傳感器OV7620。C3188A攝像頭模塊采用數(shù)字和模擬信號(hào)輸出接口,并提供8/16的數(shù)據(jù)總線寬度,通過(guò)I2C串行通信協(xié)議,可以對(duì)OV7620內(nèi)部的寄存器進(jìn)行編程,如修改曝光率、白平衡、窗口大小、飽和度、色調(diào)和圖像輸出格式等。

2.3 電機(jī)驅(qū)動(dòng)和電源模塊

  驅(qū)動(dòng)部分是機(jī)器人的重要組成部分,它和電機(jī)組成機(jī)器人的執(zhí)行機(jī)構(gòu),完成機(jī)器人行走運(yùn)動(dòng)。直流電機(jī)具有良好的線性調(diào)速特性、簡(jiǎn)單的控制功能、較高的效率、優(yōu)異的動(dòng)態(tài)特性,被廣泛應(yīng)用在控制系統(tǒng)中。本系統(tǒng)將采用4片L298N電機(jī)驅(qū)動(dòng)芯片驅(qū)動(dòng)8個(gè)直流電機(jī),采用PWM調(diào)速原理控制直流電機(jī)達(dá)到控制機(jī)器人的速度。

  為了消除電機(jī)運(yùn)轉(zhuǎn)對(duì)系統(tǒng)核心開(kāi)發(fā)板SBC2410的干擾,從核心開(kāi)發(fā)板的控制引腳輸出的信號(hào),經(jīng)過(guò)16路光電耦合器(需4片TLP521-4)進(jìn)行信號(hào)隔離,脈寬調(diào)制PWM控制光電耦合器的開(kāi)關(guān),以達(dá)到控制L298N驅(qū)動(dòng)芯片的目的,并驅(qū)動(dòng)電機(jī)按照所需的速度運(yùn)轉(zhuǎn)。

  在電源方面,設(shè)計(jì)的系統(tǒng)電源主要供給核心控制板模塊、電機(jī)驅(qū)動(dòng)模塊、人機(jī)交互模塊所用的640?鄢480TFT/LCD顯示器、視頻采集模塊、無(wú)線收發(fā)模塊(預(yù)留擴(kuò)展)和語(yǔ)音采集模塊。系統(tǒng)最終選用12 V的電瓶供電,可直接給電機(jī)驅(qū)動(dòng)芯片和LCD顯示器供電。但由于系統(tǒng)模塊多,所需電流大,所以在提供12 V轉(zhuǎn)5 V電壓時(shí),選擇開(kāi)關(guān)電源芯片LM2576作為電壓變換核心器件,它能承受最大3 A的電流輸出。

3 智能機(jī)器人控制系統(tǒng)軟件結(jié)構(gòu)設(shè)計(jì)

  機(jī)器人控制系統(tǒng)的實(shí)時(shí)性好壞對(duì)于整個(gè)機(jī)器人系統(tǒng)的性能極其重要,控制系統(tǒng)的實(shí)時(shí)性越強(qiáng),機(jī)器人處理異常情況的能力越強(qiáng)。由于μC/OS-Ⅱ是一種源代碼公開(kāi)、可移植、可固化、可裁剪、占先式的實(shí)時(shí)多任務(wù)操作系統(tǒng),所以本設(shè)計(jì)就采用μC/OS-Ⅱ提供多任務(wù)支持,再整合人機(jī)界面μC/GUI和底層驅(qū)動(dòng)程序及應(yīng)用程序等構(gòu)建機(jī)器人軟件控制系統(tǒng),實(shí)現(xiàn)對(duì)整個(gè)機(jī)器人的實(shí)時(shí)控制,完成智能控制任務(wù)。

3.1 控制系統(tǒng)總體軟件結(jié)構(gòu)

  軟件系統(tǒng)主要由應(yīng)用軟件、內(nèi)核、系統(tǒng)服務(wù)、驅(qū)動(dòng)程序等組成。其構(gòu)成示意圖如圖2。


  圖2中硬件平臺(tái)是指核心控制模塊及其外圍擴(kuò)展模塊,如視頻采集模塊、語(yǔ)音采集模塊等;驅(qū)動(dòng)程序是指系統(tǒng)對(duì)LCD、直流電機(jī)、攝像頭模塊、語(yǔ)音采集模塊等程序;內(nèi)核是指嵌入式操作系統(tǒng),本系統(tǒng)采用的是μC/OS-Ⅱ操作系統(tǒng);系統(tǒng)服務(wù)是指圖形界面μC/GUI和文件系統(tǒng)等;應(yīng)用程序是指為完成控制系統(tǒng)所規(guī)劃的任務(wù)等程序。

3.2 基于μC/GUI的界面設(shè)計(jì)

  本設(shè)計(jì)中,在嵌入式GUI方面選擇了Micrium公司開(kāi)發(fā)的通用的嵌入式圖形用戶(hù)界面軟件μC/GUI,它是μC/OS-Ⅱ的專(zhuān)用GUI,可以實(shí)現(xiàn)與μC/OS-Ⅱ的完美結(jié)合。使用它可以方便地定制自己的圖形用戶(hù)界面,完成各種應(yīng)用程序的開(kāi)發(fā)。

  中間件μC/GUI界面應(yīng)用程序向用戶(hù)提供了豐富的API接口函數(shù),為窗口設(shè)計(jì)提供了方便。在設(shè)計(jì)中,為了繪制一幅背景圖片,首先使用位圖轉(zhuǎn)換工具把bmp格式的位圖轉(zhuǎn)換成μC/GUI支持的C文件,供μC/GUI函數(shù)調(diào)用。然后根據(jù)μC/GUI提供的API函數(shù)設(shè)計(jì)系統(tǒng)界面。用到的API函數(shù)主要有位圖顯示函數(shù)、窗口創(chuàng)建函數(shù)、窗口客戶(hù)區(qū)句柄獲取函數(shù)、按鈕創(chuàng)建函數(shù)、文本框創(chuàng)建函數(shù)和滑動(dòng)進(jìn)度條創(chuàng)建函數(shù)等。設(shè)計(jì)的界面最終在8英寸LCD液晶屏上顯示。本系統(tǒng)設(shè)計(jì)的窗口主要由兩個(gè)子窗口組成:上方窗口主要用于視頻顯示,可以通過(guò)觸摸屏點(diǎn)擊開(kāi)始或結(jié)束,視頻數(shù)據(jù)將自動(dòng)存入規(guī)劃好的內(nèi)存圖像存儲(chǔ)區(qū),以便進(jìn)一步處理利用,并可選擇機(jī)器人所處環(huán)境的特定算法程序,且運(yùn)行相應(yīng)的程序;下方的窗口工具條主要完成機(jī)器人現(xiàn)場(chǎng)音頻數(shù)據(jù)的收集、播放及停止采集,錄制的音頻信息將自動(dòng)存入規(guī)劃好的內(nèi)存音頻數(shù)據(jù)存儲(chǔ)區(qū)Sound_Buffer中,而播放的音頻數(shù)據(jù)放在內(nèi)存Play_Buffer中,它們采用的都是內(nèi)存映射技術(shù)。

3.3 用戶(hù)任務(wù)設(shè)計(jì)

  基于μC/OS-Ⅱ的任務(wù)管理機(jī)制,根據(jù)系統(tǒng)的功能要求,劃分為6個(gè)系統(tǒng)任務(wù),并設(shè)置每個(gè)任務(wù)的優(yōu)先級(jí),如表1所示。

  (1)Motor_Drive_Task——定時(shí)中斷節(jié)拍進(jìn)行計(jì)時(shí),在任務(wù)循環(huán)塊中,接收?qǐng)D像處理控制算法中形成的電機(jī)驅(qū)動(dòng)參數(shù),即Image_Analyze_Task任務(wù)中產(chǎn)生的電機(jī)驅(qū)動(dòng)參數(shù),更新PWM輸出,完成機(jī)器人所需運(yùn)動(dòng)軌跡姿態(tài)的調(diào)整,隨后掛起自身。

  (2)Image_Analyze_Task——獲取在內(nèi)存循環(huán)隊(duì)列中的圖像數(shù)據(jù),在任務(wù)循環(huán)塊中檢測(cè)圖像信號(hào)量。如果沒(méi)有在一定時(shí)期內(nèi)進(jìn)行任務(wù)調(diào)度,則掛起自身;若有則對(duì)獲取內(nèi)存循壞隊(duì)列中的圖像數(shù)據(jù)進(jìn)行分析處理,得出電機(jī)驅(qū)動(dòng)參數(shù)并發(fā)送該信息至消息隊(duì)列中,然后釋放圖像信號(hào)量,再掛起自身。

  (3)Sound_Record_Task——用于采集、存儲(chǔ)機(jī)器人周?chē)h(huán)境聲音信息數(shù)據(jù)到聲音隊(duì)列中。

  (4)Sound_Play_Task——定時(shí)從內(nèi)存聲音播放存儲(chǔ)處,即Play_Buffer中提取數(shù)據(jù)放到隊(duì)列中進(jìn)行播放。

  (5)Image_Collect_Task——建立窗口界面,在任務(wù)循壞塊中檢測(cè)圖像信號(hào)量。如果沒(méi)有在一定時(shí)期內(nèi)進(jìn)行任務(wù)調(diào)度,則掛起自身;如果檢測(cè)到圖像信號(hào)量,則采集一幅圖像到圖像存儲(chǔ)循壞隊(duì)列中,采集完成,再釋放圖像信號(hào)量,掛起自身。

  (6)GUI_Update_Task——按照μC/GUI手冊(cè)規(guī)定,當(dāng)其使用窗口回調(diào)機(jī)制,建議把它設(shè)為最低優(yōu)先級(jí)別的任務(wù),用來(lái)更新回調(diào)信息,并且該任務(wù)必須實(shí)現(xiàn),且要定期調(diào)用。

4 試驗(yàn)研究分析

  設(shè)計(jì)并完成裝配的機(jī)器人的樣機(jī)如圖3所示,其中A為攝像頭模塊,B為麥克風(fēng),C為液晶屏,D為喇叭,E為12 V電瓶。攝像頭離地的高度為450 mm,攝像頭光軸與水平面角度為60°。

4.1 視頻圖像采集試驗(yàn)

  由于本文采用的核心控制板的I/O口資源有限,因此,對(duì)圖像采集的控制信號(hào)線用普通的I/O口,而不是用中斷I/O口與其攝像頭模塊相連,因此只能用軟件實(shí)時(shí)檢測(cè)I/O的電平狀態(tài),決定何時(shí)采集開(kāi)始,何時(shí)讀數(shù)據(jù),何時(shí)結(jié)束。為了能夠采集到圖像數(shù)據(jù)并能分辨出來(lái),必須能夠跟蹤控制信號(hào)的變化狀態(tài),如果不對(duì)攝像頭模塊進(jìn)行降頻處理,則由于I/O口電平的變化頻率遠(yuǎn)低于攝像頭控制信號(hào)的變化頻率,將導(dǎo)致I/O口無(wú)法跟蹤控制信號(hào)變化,即將無(wú)法判斷幀、行、點(diǎn)何時(shí)開(kāi)始與結(jié)束這些狀態(tài)信息。當(dāng)攝像頭的最高頻率(點(diǎn)像素頻率最高)降到1 MHz左右,系統(tǒng)就能跟蹤并完整地采集到圖像信息,并進(jìn)一步處理之后完好地顯示出來(lái)。采集到的實(shí)驗(yàn)數(shù)據(jù)如表2所示(示波器采用x10檔)。

  從以上的圖與表可以清楚地看出:系統(tǒng)的控制信號(hào)非常完整和穩(wěn)定,沒(méi)有出現(xiàn)毛刺、變形等情況,給檢測(cè)讀取帶來(lái)了方便。Y0數(shù)據(jù)信號(hào)也很規(guī)整,其他數(shù)據(jù)信號(hào),如Y1~Y7也是如此。Y0的波形圖中有些段是低電平,出現(xiàn)的位置不一樣,這是因?yàn)閿z像頭移動(dòng)的時(shí)候,環(huán)境光發(fā)生了變化,引起整個(gè)Y數(shù)據(jù)變化,從Y0數(shù)據(jù)也可以清楚看出這一點(diǎn),并且從圖像上也能很明顯地感到圖像在實(shí)時(shí)移動(dòng)變化著。

4.2 直線爬坡試驗(yàn)

  對(duì)于移動(dòng)機(jī)器人來(lái)說(shuō),在非結(jié)構(gòu)化環(huán)境中,最典型的情況就是平地、斜坡與臺(tái)階,對(duì)其走直線與爬坡的試驗(yàn)如圖4所示。

  實(shí)驗(yàn)場(chǎng)地是綠色毛毯狀物質(zhì)。機(jī)器人上電工作之后,就開(kāi)始在控制算法下運(yùn)行電機(jī)控制任務(wù),輸出控制信號(hào),驅(qū)動(dòng)電機(jī)運(yùn)行,機(jī)器人就沿著直線方向以0.17 m/s(理論計(jì)算值最高可達(dá)0.183 m/s)的速度前進(jìn)。反復(fù)進(jìn)行10次路徑長(zhǎng)為5 m的直線行走實(shí)驗(yàn),發(fā)現(xiàn)最大偏差為0.25 m,最小偏差為0.08 m,平均偏差為0.184 m。分析其原因,是由于電機(jī)的負(fù)載能力、啟動(dòng)特性、機(jī)械結(jié)構(gòu)、機(jī)器人的重心位置及輪子與地面的摩擦阻力等因素所造成的。

  在爬坡實(shí)驗(yàn)中,主要測(cè)試的是機(jī)器人單側(cè)爬坡的能力和效果。斜坡的傾斜角度是可調(diào)整的。對(duì)其進(jìn)行了9次的爬坡實(shí)驗(yàn),角度從20°~60°的范圍變化,發(fā)現(xiàn)隨著角度每增加,爬坡的難度將變得越來(lái)越困難。當(dāng)在36°左右時(shí),機(jī)器人還能夠保持整體結(jié)構(gòu)平衡,能夠沿著斜坡運(yùn)動(dòng)前進(jìn)并能越過(guò)障礙,而在41°左右時(shí)就無(wú)法前進(jìn)。這些結(jié)果顯示,機(jī)器人爬坡能力較強(qiáng),能夠翻越比較大的斜坡。但有些地方需要改進(jìn),如運(yùn)動(dòng)輪子摩擦不夠,輪子寬度較窄,后輪驅(qū)動(dòng)力稍有不足,與其相連的機(jī)械結(jié)構(gòu)臂剛度不夠等。今后需對(duì)其進(jìn)行仿真優(yōu)化。

4.3 智能巡線試驗(yàn)

  機(jī)器人的巡線可用于機(jī)器人比賽、自動(dòng)化無(wú)人工廠、倉(cāng)庫(kù)、服務(wù)機(jī)器人等領(lǐng)域,因此研究巡線實(shí)現(xiàn)過(guò)程有一定的現(xiàn)實(shí)意義。試驗(yàn)如圖5所示。


  實(shí)驗(yàn)場(chǎng)地是綠色毛毯狀物質(zhì),其中白線寬度為30 mm。在啟動(dòng)試驗(yàn)平臺(tái)之前要調(diào)整攝像頭視角,如果視角太大,則循線精度很難保證,甚至?xí)撾x預(yù)期的軌跡。經(jīng)過(guò)試驗(yàn)驗(yàn)證,當(dāng)攝像頭光軸與地面夾角大約為60°左右時(shí),其循線可靠性及精度能夠得到很好的保證。

  (1)控制算法描述:機(jī)器人的動(dòng)態(tài)巡線過(guò)程,需要提取并能檢測(cè)判斷機(jī)器人相對(duì)白線的位置情況,形成控制策略,完成機(jī)器人的運(yùn)動(dòng)姿態(tài)調(diào)整。其算法實(shí)現(xiàn)流程如圖6所示,巡線偏移情況如圖7所示。


  (2)特征匹配:圖像匹配技術(shù)是數(shù)字圖像處理領(lǐng)域中的一項(xiàng)重要研究,基本原理就是根據(jù)已知模式(模板圖),到另一幅圖中搜索相匹配的子圖像,該過(guò)程被稱(chēng)為模板匹配。通常,圖像的模板匹配技術(shù)可以分成直接基于灰度值的方法以及基于特征提取的方法兩大類(lèi)。

  這兩種算法共同的缺陷是時(shí)間復(fù)雜度高,不利于實(shí)時(shí)操作,特別是在在線檢測(cè)、機(jī)器人視覺(jué)伺服等需要從大量視頻信號(hào)實(shí)現(xiàn)數(shù)字處理海量圖像的匹配場(chǎng)合。由于本課題采用的處理器S3C2410硬件不支持浮點(diǎn)運(yùn)算,無(wú)法采用上述方法識(shí)別機(jī)器人相對(duì)于白線的位置是左偏還是右偏。為此,結(jié)合機(jī)器人應(yīng)用環(huán)境的特殊情況,對(duì)二維圖像匹配算法進(jìn)行了改進(jìn)與簡(jiǎn)化,其基本思路和實(shí)現(xiàn)過(guò)程如下:

  ①在現(xiàn)場(chǎng)采集一幅圖像,如圖8(a)所示(理想情況),大小為320×240像素。


 ?、诎褕D像分成三個(gè)圖像帶:A0,像素從L0~L1;A1,像素從L2~L3;A2,像素從L4~L5;再把每個(gè)帶分成左右兩半,其像素從中間開(kāi)始向兩邊遞增,即從p0~p159,并分別給出權(quán)值,求其每點(diǎn)的灰度值與相應(yīng)點(diǎn)權(quán)值并求出總和,其表達(dá)式為:

  Sj=V1*1+V2*2+…+Vi*i+…+Vn*n
(Vi為灰度值,i為權(quán)值;0≤n≤159,n為整數(shù);L0≤j≤L1或L2≤j≤L3,j整數(shù))

③用Ai右邊區(qū)的總和減去Ai左邊區(qū)的總和的差值,看是否落在誤差的允許范圍[-δ,δ]之內(nèi),即表達(dá)式為:
Tm=(Sj右-Sj左)∈[-δ,δ] (m=0、1、2)

④根據(jù)Tm值的大小就可以確定機(jī)器人的位置是左偏、右偏,或在誤差范圍之內(nèi),隨之就能產(chǎn)生機(jī)器人的控制策略。

由于本圖像識(shí)別是特定情況的應(yīng)用,圖像處理數(shù)據(jù)量少、處理快、巡線穩(wěn)定、可靠性高,經(jīng)過(guò)現(xiàn)場(chǎng)的實(shí)驗(yàn)驗(yàn)證,相對(duì)于模板在整個(gè)搜索圖中搜索匹配效率高,避免了復(fù)雜的運(yùn)算,具有很高的實(shí)時(shí)性。

實(shí)驗(yàn)結(jié)果表明,本課題設(shè)計(jì)的機(jī)器人能夠很好地實(shí)現(xiàn)直線爬坡、巡線行走等功能,并可以實(shí)時(shí)采集聲音和圖像信息。在數(shù)據(jù)處理上,采用ARM9核的S3C2410處理器,數(shù)據(jù)處理快、實(shí)時(shí)性強(qiáng)、穩(wěn)定可靠、效率高。本文所設(shè)計(jì)的嵌入式智能機(jī)器人系統(tǒng),對(duì)研究和機(jī)器人技術(shù)有一定的參考意義。該技術(shù)也可以應(yīng)用于機(jī)器人比賽、自動(dòng)化無(wú)人工廠、倉(cāng)庫(kù)、服務(wù)機(jī)器人等領(lǐng)域。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉