基于ARM-Linux的自主避障機(jī)器魚(yú)設(shè)計(jì)
1 硬件系統(tǒng)設(shè)計(jì)
1.1 工作原理
機(jī)器魚(yú)主硬件原理如圖1所示。機(jī)器魚(yú)的自主避障功能是通過(guò)以ARM芯片、LINUX嵌入式系統(tǒng)、紅外傳感器等結(jié)合實(shí)現(xiàn)的。機(jī)器魚(yú)在水中分別通過(guò)攝像頭、紅外傳感器、LCD進(jìn)行畫(huà)面采集、自主避障和畫(huà)而顯示。攝像頭采集到圖片后,圖像被緩存于SDRAM中。ARM芯片通過(guò)紅外傳感器的AD管腳向發(fā)射器傳送命令,使探測(cè)器的發(fā)射模塊不斷地向外發(fā)送紅外線,當(dāng)接收器接收到返回的紅外線后會(huì)立刻通過(guò)AD管腳向ARM芯片傳送與紅外線返回的光強(qiáng)相應(yīng)的電壓,電壓經(jīng)過(guò)ARM芯片的A/D轉(zhuǎn)換器轉(zhuǎn)變成十位的二進(jìn)制數(shù)字量,通過(guò)一定的公式計(jì)算出此時(shí)與障礙物的距離。當(dāng)計(jì)算出來(lái)的距離小于預(yù)設(shè)量時(shí),ARM芯片的控制軟件執(zhí)行一個(gè)串行中斷指令改變脈沖的脈寬即改變改PWM波的占空比變,進(jìn)而改變機(jī)器魚(yú)的游向從而避開(kāi)障礙物。
1.2 ARM芯片模塊設(shè)計(jì)
ARM處理器擁有16/32Bit內(nèi)核和具有450MIPS運(yùn)算能力。400MHz的標(biāo)準(zhǔn)工作頻率可滿足高速的應(yīng)用要求。ARM主芯片有內(nèi)置數(shù)字?jǐn)z像頭接口,可選配130萬(wàn)像素CMOS號(hào)業(yè)攝像頭進(jìn)行圖像采集。ARM處理器的外圍擴(kuò)展了64M的SDRAM和FLASH,ARM主芯片支持Linux、uCOS-II、WINCE等操作系統(tǒng)。ARM芯片高度集成,主芯片擁有CPU、Nand flash、Nor flash、Ethernet controller等資源。CPU內(nèi)的所有可用資源可通過(guò)200pin引腳引出。接口核心板可以單獨(dú)構(gòu)成系統(tǒng),無(wú)需外圍器件。
嵌入式Linux (Embedded Linux)是指對(duì)標(biāo)準(zhǔn)Linux經(jīng)過(guò)小型化裁剪處理之后,能夠固化在容量只有幾KB或者幾MB字節(jié)的存儲(chǔ)器芯片或單片機(jī)中。它具有成本低、源代碼開(kāi)放和移植性好的優(yōu)點(diǎn)。在工程中得到了廣泛的應(yīng)用,適合于特定嵌入式的應(yīng)用場(chǎng)合。
1.3 紅外模塊
紅外線是介于可見(jiàn)光和微波之間的一種電磁波。它兼具可見(jiàn)光折射、反射、直線傳播以及微波的貫穿一些不透明物質(zhì)和較強(qiáng)的穿透的能力。紅外傳感器包括紅外發(fā)射模塊和紅外接收模塊??茖W(xué)實(shí)驗(yàn)表明溫度高于絕對(duì)零度的任何物體均可產(chǎn)生紅外輻射,因此紅外傳感器要有更強(qiáng)的發(fā)射紅外的能力。
距離探測(cè)器的類型主要有激光探測(cè)器、視覺(jué)探測(cè)器、超聲波傳感器和紅外傳感器。由于激光探測(cè)器和視覺(jué)探測(cè)器比較昂貴而且對(duì)控制器的要求很高,所以不選為機(jī)器魚(yú)的避障器。超聲波傳感器測(cè)距范圍一般在30~300 cm,可見(jiàn)短距離測(cè)距是超聲波傳感器的盲區(qū)。能“看”到幾米之外障礙物對(duì)于機(jī)器魚(yú)的意義并不大,而紅外傳感器的測(cè)距距離一般在幾十厘米之內(nèi),因此我們選擇紅外傳感器作為機(jī)器魚(yú)的避障器。
GP2YOA21YK0F是夏普的一款距離測(cè)量傳感器。它由PSD(position sensitive detector)、IRFD(infrared emitting diode)以及信號(hào)處理電路三部分組成。由于采用了三角測(cè)量方法,所以被測(cè)環(huán)境溫度、物體的材質(zhì)以及測(cè)量時(shí)間均不會(huì)影響傳感器的測(cè)量結(jié)果的精確度。接收到反射回來(lái)的紅外線后,傳感器輸出一個(gè)與返回光強(qiáng)成正比模擬電壓。輸出的模擬電壓經(jīng)過(guò)ARM的A/D轉(zhuǎn)換器變成數(shù)字量,數(shù)字量傳到MCU后以一定的算法計(jì)算出機(jī)器魚(yú)與障礙物之間的距離。將探測(cè)的結(jié)果與預(yù)設(shè)值比較,若大于預(yù)設(shè)值則不執(zhí)行中斷即繼續(xù)前進(jìn),否則執(zhí)行中斷進(jìn)行避障。紅外傳感器硬件原理如圖2所示。
1.4 攝像頭模塊
為機(jī)器魚(yú)配備的攝像頭是CMOS數(shù)字圖象傳感器。采用的是Ommvision公司的OV9650,OV9650具有130萬(wàn)的像素、10Bit的數(shù)據(jù)接口與標(biāo)準(zhǔn)SCCB接口,其分辨率達(dá)1280x1024并采用CSP-28封裝該攝像頭用類似于IIc總線的Secb總線連接到ARM主芯片的IIc接口進(jìn)行通信。在ARM芯片中,攝像頭的接口控制模塊(CAMIF)由圖像采集模塊、視頻預(yù)覽尺度模塊、模式混合模塊、特殊功能寄存器(SFR)模塊、碼流尺度模塊、視頻預(yù)覽DMA模塊以及碼流DMA模塊構(gòu)成。COMS攝像頭OV9650輸出的ITU-656格式視頻碼流,經(jīng)CAMIF處理后,將采集到的視頻碼流成兩路不同的格式進(jìn)行傳輸,兩路格式不同的信號(hào)分別進(jìn)入不同的幀存儲(chǔ)單元進(jìn)行存貯,之后根據(jù)ARM控制器的指令通過(guò)視頻DMA通道進(jìn)行傳輸。攝像頭原理如圖3所示。
1.5 LCD模塊
LCD液品顯示器是(Liquid Crystal Display)的簡(jiǎn)稱,LCD的構(gòu)造是在兩片平行的玻璃當(dāng)中放置液態(tài)的晶體,兩片玻璃中間有許多垂直和水平的細(xì)小電線,透過(guò)通電與否來(lái)控制桿狀水晶分子改變方向,將光線折射出來(lái)產(chǎn)生畫(huà)面。LCD有扭轉(zhuǎn)式向列型(Super Twisted Nematic,簡(jiǎn)稱STN)和薄膜式晶體管型(Thin Film Transistor,簡(jiǎn)稱TFT)兩種主流類型。因?yàn)門(mén)FT有反應(yīng)速度快、可視角度大、色彩豐富、分辨率高、對(duì)比度、亮度高等優(yōu)點(diǎn),所以我們選擇TFT的LCD。LCD硬件原理、LCD控制器功能如圖4所示。
LCD的工作受其控制器控制完成,圖5為L(zhǎng)CD控制器功能圖。通過(guò)LCD控制器的寄存器組REGBANK來(lái)對(duì)LCD控制器的各項(xiàng)參數(shù)進(jìn)行設(shè)置。而LCDCDMA則是LCD控制器專用的DMA通道,負(fù)責(zé)將視頻數(shù)據(jù)從顯存(顯存是SDRAM中的一塊區(qū)域,可利用REGBANK編程設(shè)定)中取出,并從VIDPRCS從VD[23:0]發(fā)送給LCD屏。同時(shí)LPC3600和TIMECEN負(fù)責(zé)產(chǎn)生LCD屏所需的控制時(shí),然后從VIDEOMUX送給LCD屏。TIMEGEN包含可編程邏輯,可通過(guò)程序進(jìn)行設(shè)定。TIMEGEN能產(chǎn)生不同LCD屏驅(qū)動(dòng)電路所需要的時(shí)序信號(hào)。
linux相關(guān)文章:linux教程
聲控?zé)粝嚓P(guān)文章:聲控?zé)粼?/a> 攝像頭相關(guān)文章:攝像頭原理
評(píng)論