當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于A(yíng)RM自主避障機(jī)器魚(yú)設(shè)計(jì)

摘要:研究設(shè)計(jì)了基于ARM芯片和LINUX嵌入式系統(tǒng)具有自主避障功能的機(jī)器魚(yú)。首先搭建了基于ARM芯片的硬件平臺(tái),然后對(duì)圖像采集、圖像顯示和紅外測(cè)距進(jìn)行實(shí)現(xiàn)。通過(guò)紅外傳感器實(shí)現(xiàn)機(jī)器魚(yú)的自主避障的功能。實(shí)驗(yàn)表明基于該方案設(shè)計(jì)的機(jī)器魚(yú)能流暢地進(jìn)行實(shí)時(shí)自主避障與圖像顯示。可以作為后續(xù)機(jī)器魚(yú)的自主視覺(jué)功能開(kāi)發(fā)的基礎(chǔ),提高了機(jī)器魚(yú)的智能度。
關(guān)鍵詞:自主避障;ARM;紅外測(cè)距;LINUX嵌入式系統(tǒng)

    隨著科技的發(fā)展與進(jìn)步,出現(xiàn)了具有特殊功能的智能機(jī)器,如索尼公司生產(chǎn)的能夠以自我“意識(shí)”來(lái)“感覺(jué)”“學(xué)習(xí)”和“飼養(yǎng)”的寵物機(jī)器狗,以弗吉尼亞理工大學(xué)研制的CHARLI-L1機(jī)器人為基礎(chǔ)進(jìn)行升級(jí)改造的SAFFIR的消防機(jī)器人等。機(jī)器魚(yú)作為一項(xiàng)比較新的產(chǎn)品,涉及到機(jī)器魚(yú)的智能開(kāi)發(fā)并不深,因此機(jī)器魚(yú)的智能化程度并不高,但隨著機(jī)器魚(yú)研究的加深,相信機(jī)器魚(yú)的智能度會(huì)大大提高,功能也會(huì)更趨完善。目前的機(jī)器魚(yú)類(lèi)型主要有遙控機(jī)器魚(yú)和語(yǔ)音控制機(jī)器魚(yú),例如曾在德國(guó)漢諾威電子展上展現(xiàn)的通過(guò)機(jī)器魚(yú)體內(nèi)收縮來(lái)提供動(dòng)力的遙控式機(jī)器魚(yú)和在西南民族大學(xué)誕生的國(guó)內(nèi)首個(gè)的聲控機(jī)器魚(yú)等。據(jù)調(diào)查顯示同內(nèi)涉及到具有自主避障與自主視覺(jué)功能的智能機(jī)器魚(yú)的研究與開(kāi)發(fā)并不多。由于技術(shù)等諸多原因我們選擇了設(shè)計(jì)自主避障的機(jī)器魚(yú)。由于機(jī)器魚(yú)具有機(jī)動(dòng)性、高效性、低噪性等優(yōu)點(diǎn),所以高智能的機(jī)器魚(yú)適合去完成如探測(cè)污染物質(zhì)、繪制港口的實(shí)時(shí)立體圖和對(duì)海底資源進(jìn)行探測(cè)等具有一定難度和危險(xiǎn)的任務(wù)。由于國(guó)內(nèi)涉及到機(jī)器魚(yú)智能的開(kāi)發(fā)程度不高,所以高智能的機(jī)器魚(yú)研發(fā)有較大的空間。

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ā)送紅外線(xiàn),當(dāng)接收器接收到返回的紅外線(xiàn)后會(huì)立刻通過(guò)AD管腳向ARM芯片傳送與紅外線(xiàn)返回的光強(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)障礙物。

[!--empirenews.page--]
1.2 ARM芯片模塊設(shè)計(jì)
    ARM處理器擁有16/32Bit內(nèi)核和具有450MIPS運(yùn)算能力。400MHz的標(biāo)準(zhǔn)工作頻率可滿(mǎ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 紅外模塊
    紅外線(xiàn)是介于可見(jiàn)光和微波之間的一種電磁波。它兼具可見(jiàn)光折射、反射、直線(xiàn)傳播以及微波的貫穿一些不透明物質(zhì)和較強(qiáng)的穿透的能力。紅外傳感器包括紅外發(fā)射模塊和紅外接收模塊。科學(xué)實(shí)驗(yàn)表明溫度高于絕對(duì)零度的任何物體均可產(chǎn)生紅外輻射,因此紅外傳感器要有更強(qiáng)的發(fā)射紅外的能力。
    距離探測(cè)器的類(lèi)型主要有激光探測(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)的紅外線(xiàn)后,傳感器輸出一個(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封裝該攝像頭用類(lèi)似于IIc總線(xiàn)的Secb總線(xiàn)連接到ARM主芯片的IIc接口進(jìn)行通信。在A(yíng)RM芯片中,攝像頭的接口控制模塊(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)稱(chēng),LCD的構(gòu)造是在兩片平行的玻璃當(dāng)中放置液態(tài)的晶體,兩片玻璃中間有許多垂直和水平的細(xì)小電線(xiàn),透過(guò)通電與否來(lái)控制桿狀水晶分子改變方向,將光線(xiàn)折射出來(lái)產(chǎn)生畫(huà)面。LCD有扭轉(zhuǎn)式向列型(Super Twisted Nematic,簡(jiǎn)稱(chēng)STN)和薄膜式晶體管型(Thin Film Transistor,簡(jiǎn)稱(chēng)TFT)兩種主流類(lèi)型。因?yàn)門(mén)FT有反應(yīng)速度快、可視角度大、色彩豐富、分辨率高、對(duì)比度、亮度高等優(yōu)點(diǎn),所以我們選擇TFT的LCD。LCD硬件原理、LCD控制器功能如圖4所示。

[!--empirenews.page--]
    LCD的工作受其控制器控制完成,圖5為L(zhǎng)CD控制器功能圖。通過(guò)LCD控制器的寄存器組REGBANK來(lái)對(duì)LCD控制器的各項(xiàng)參數(shù)進(jìn)行設(shè)置。而LCDCDMA則是LCD控制器專(zhuān)用的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)。


    LCD部分接口介紹。VFRAME/VSYNC/STV接口:傳送LCD控制器和LCD驅(qū)動(dòng)器之間的幀同步信號(hào)。
    VLINE/HSYNC/CPV接口:傳送LCD控制器和LCD驅(qū)動(dòng)器之間的同步脈沖信號(hào)。
    VCLK/LCD_HCLK接口:傳送LCD控制器和LCD驅(qū)動(dòng)器之間的像素時(shí)鐘信號(hào)。
    VM/VDEN/TP接口:傳送LCD驅(qū)動(dòng)器使用的交流信號(hào)。
    VD [23:0]接口:LCD的像素?cái)?shù)據(jù)輸出端即RGB信號(hào)線(xiàn)。

2 系統(tǒng)軟件設(shè)計(jì)
2.1 主程序流程
    ARM芯片通過(guò)AD管腳對(duì)紅外傳感器的發(fā)射模塊傳送命令。發(fā)射模塊發(fā)射紅外線(xiàn),接收模塊接收遇到障礙物反射回來(lái)的紅外線(xiàn),根據(jù)返回光強(qiáng)產(chǎn)生相應(yīng)的模擬電壓,經(jīng)過(guò)A/D轉(zhuǎn)換器后變成十位的二進(jìn)制數(shù)據(jù)量,通過(guò)一定算法計(jì)算出到障礙物的距離。ARM芯片判斷計(jì)算出的距離與預(yù)設(shè)值的邏輯關(guān)系,根據(jù)結(jié)果判斷是否進(jìn)行避障。攝像頭采集圖片后,將圖片緩存于SDRAM中,LCD讀取數(shù)據(jù)并將圖像顯示出來(lái)。主程序流程如圖6所示。

[!--empirenews.page--]


2.2 紅外模塊
    在A(yíng)RM的A/D進(jìn)行轉(zhuǎn)換時(shí),首先要對(duì)ADC控制寄存器進(jìn)行初始化,選擇進(jìn)行轉(zhuǎn)換的模擬輸入端,進(jìn)行A/D轉(zhuǎn)換,并從ADCDAT0讀取轉(zhuǎn)換結(jié)果。探測(cè)的結(jié)果小于預(yù)設(shè)值時(shí)ARM芯片執(zhí)行中斷,改變PWM波的占空比使機(jī)器魚(yú)轉(zhuǎn)向進(jìn)行避障,反之繼續(xù)前進(jìn)。紅外模塊流程如圖7所示。
2.3 攝像頭模塊
    攝像頭屬于字符類(lèi)設(shè)備,所以能夠像字節(jié)流一樣被程序訪(fǎng)問(wèn),而且只能夠按順序讀寫(xiě)。Linux內(nèi)核程序通過(guò)設(shè)備的位號(hào)來(lái)尋找攝像頭。Linux內(nèi)核發(fā)送測(cè)試信號(hào)到地址0X9650,以檢測(cè)攝像頭是否存在。OV9650擁有多組寄存器,圖像的輸出編碼方式和分辨率等參數(shù)取決于OV9650的寄存器。IIC (Inter Integration Circuit)是指內(nèi)部整合電路,是常用的標(biāo)準(zhǔn)串行接口。系統(tǒng)是通過(guò)IIC總線(xiàn)對(duì)寄存器進(jìn)行整體配置,所以此過(guò)程不會(huì)占用系統(tǒng)數(shù)據(jù)總線(xiàn)。考慮到圖像傳輸?shù)男?,所以攝像頭與ARM芯片之間的Data[0]~Data[7]的通道僅用以傳輸圖像數(shù)據(jù)。以下為攝像頭的部分初始化代碼。
    SrcWidth=640-WinHorOffset*2;//CAM_SRC_HSIZE為640,CAM_SRC_VSIZE為480
    SrcHeight=480-WinVerOffset*2;//計(jì)算得SrcWidth=440,SrcHeight=280
    rCIWDOFST=0;//窗口垂直偏移為0
    rCIWDOFST=(WinOfsEn<<31) | (WinHorOffset<<16) | (WinVerOffset);//水平偏移為100,垂直偏移為100
    rCISRCFMT=(1<<31) | (0<<30) | (0<<29) |(640<<16) | (0<<14) | (480);//30位設(shè)置為1后,圖像顏色失真,偏彩色
    Calculate Prescaler RatioShift (SreWidth,PrDstWidth,&PreHorRatio,&H_Shin);//計(jì)算并設(shè)置突發(fā)長(zhǎng)度
    Calculate Prescaler RatioShift (SrcHeight,PrDstHeight,&PreVerRatio,&V_Shift);//計(jì)算水平和垂直縮放比率和位移量、水平和垂直比率
    攝像頭模塊流程如圖8所示。

 

3 結(jié)束語(yǔ)
    本文介紹了紅外探測(cè)器在機(jī)器魚(yú)上的應(yīng)用以及畫(huà)面的實(shí)時(shí)顯示。通過(guò)紅外傳感器使機(jī)器魚(yú)具有了自主避障的功能。實(shí)驗(yàn)表明基于ARM芯片和LINUX嵌入式系統(tǒng)平臺(tái)開(kāi)發(fā)的自主避障功能的機(jī)器魚(yú)具有較高的實(shí)時(shí)避障功能,表明該機(jī)器魚(yú)具有靈敏度較高的自主避障功能。此設(shè)計(jì)提高了機(jī)器魚(yú)智能度,可作為后續(xù)自主視覺(jué)機(jī)器魚(yú)開(kāi)發(fā)的基礎(chǔ)。相信隨著高智能的機(jī)器魚(yú)的研究與設(shè)計(jì)會(huì)給人類(lèi)探索、開(kāi)發(fā)海洋提供更多的幫助與便利。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉