99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

電子設(shè)計 ? 作者:電子設(shè)計 ? 2018-11-02 08:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著科技的發(fā)展與進(jìn)步,出現(xiàn)了具有特殊功能的智能機(jī)器,如索尼公司生產(chǎn)的能夠以自我“意識”來“感覺”“學(xué)習(xí)”和“飼養(yǎng)”的寵物機(jī)器狗,以弗吉尼亞理工大學(xué)研制的CHARLI-L1機(jī)器人為基礎(chǔ)進(jìn)行升級改造的SAFFIR的消防機(jī)器人等。機(jī)器魚作為一項比較新的產(chǎn)品,涉及到機(jī)器魚的智能開發(fā)并不深,因此機(jī)器魚的智能化程度并不高,但隨著機(jī)器魚研究的加深,相信機(jī)器魚的智能度會大大提高,功能也會更趨完善。目前的機(jī)器魚類型主要有遙控機(jī)器魚和語音控制機(jī)器魚,例如曾在德國漢諾威電子展上展現(xiàn)的通過機(jī)器魚體內(nèi)收縮來提供動力的遙控式機(jī)器魚和在西南民族大學(xué)誕生的國內(nèi)首個的聲控機(jī)器魚等。

據(jù)調(diào)查顯示同內(nèi)涉及到具有自主避障與自主視覺功能的智能機(jī)器魚的研究與開發(fā)并不多。由于技術(shù)等諸多原因我們選擇了設(shè)計自主避障的機(jī)器魚。由于機(jī)器魚具有機(jī)動性、高效性、低噪性等優(yōu)點,所以高智能的機(jī)器魚適合去完成如探測污染物質(zhì)、繪制港口的實時立體圖和對海底資源進(jìn)行探測等具有一定難度和危險的任務(wù)。由于國內(nèi)涉及到機(jī)器魚智能的開發(fā)程度不高,所以高智能的機(jī)器魚研發(fā)有較大的空間。

1 硬件系統(tǒng)設(shè)計

1.1 工作原理

機(jī)器魚主硬件原理如圖1所示。機(jī)器魚的自主避障功能是通過以ARM芯片、LINUX嵌入式系統(tǒng)、紅外傳感器等結(jié)合實現(xiàn)的。機(jī)器魚在水中分別通過攝像頭、紅外傳感器、LCD進(jìn)行畫面采集、自主避障和畫而顯示。攝像頭采集到圖片后,圖像被緩存于SDRAM中。ARM芯片通過紅外傳感器的AD管腳向發(fā)射器傳送命令,使探測器的發(fā)射模塊不斷地向外發(fā)送紅外線,當(dāng)接收器接收到返回的紅外線后會立刻通過AD管腳向ARM芯片傳送與紅外線返回的光強(qiáng)相應(yīng)的電壓,電壓經(jīng)過ARM芯片的A/D轉(zhuǎn)換器轉(zhuǎn)變成十位的二進(jìn)制數(shù)字量,通過一定的公式計算出此時與障礙物的距離。當(dāng)計算出來的距離小于預(yù)設(shè)量時,ARM芯片的控制軟件執(zhí)行一個串行中斷指令改變脈沖的脈寬即改變改PWM波的占空比變,進(jìn)而改變機(jī)器魚的游向從而避開障礙物。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

1.2 ARM芯片模塊設(shè)計

ARM處理器擁有16/32Bit內(nèi)核和具有450MIPS運(yùn)算能力。400MHz的標(biāo)準(zhǔn)工作頻率可滿足高速的應(yīng)用要求。ARM主芯片有內(nèi)置數(shù)字?jǐn)z像頭接口,可選配130萬像素CMOS號業(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)的所有可用資源可通過200pin引腳引出。接口核心板可以單獨(dú)構(gòu)成系統(tǒng),無需外圍器件。

嵌入式Linux (Embedded Linux)是指對標(biāo)準(zhǔn)Linux經(jīng)過小型化裁剪處理之后,能夠固化在容量只有幾KB或者幾MB字節(jié)的存儲器芯片或單片機(jī)中。它具有成本低、源代碼開放和移植性好的優(yōu)點。在工程中得到了廣泛的應(yīng)用,適合于特定嵌入式的應(yīng)用場合。

1.3 紅外模塊

紅外線是介于可見光和微波之間的一種電磁波。它兼具可見光折射、反射、直線傳播以及微波的貫穿一些不透明物質(zhì)和較強(qiáng)的穿透的能力。紅外傳感器包括紅外發(fā)射模塊和紅外接收模塊??茖W(xué)實驗表明溫度高于絕對零度的任何物體均可產(chǎn)生紅外輻射,因此紅外傳感器要有更強(qiáng)的發(fā)射紅外的能力。

距離探測器的類型主要有激光探測器、視覺探測器、超聲波傳感器和紅外傳感器。由于激光探測器和視覺探測器比較昂貴而且對控制器的要求很高,所以不選為機(jī)器魚的避障器。超聲波傳感器測距范圍一般在30~300 cm,可見短距離測距是超聲波傳感器的盲區(qū)。能“看”到幾米之外障礙物對于機(jī)器魚的意義并不大,而紅外傳感器的測距距離一般在幾十厘米之內(nèi),因此我們選擇紅外傳感器作為機(jī)器魚的避障器。

GP2YOA21YK0F是夏普的一款距離測量傳感器。它由PSD(position sensitive detector)、IRFD(infrared emitting diode)以及信號處理電路三部分組成。由于采用了三角測量方法,所以被測環(huán)境溫度、物體的材質(zhì)以及測量時間均不會影響傳感器的測量結(jié)果的精確度。接收到反射回來的紅外線后,傳感器輸出一個與返回光強(qiáng)成正比模擬電壓。輸出的模擬電壓經(jīng)過ARM的A/D轉(zhuǎn)換器變成數(shù)字量,數(shù)字量傳到MCU后以一定的算法計算出機(jī)器魚與障礙物之間的距離。將探測的結(jié)果與預(yù)設(shè)值比較,若大于預(yù)設(shè)值則不執(zhí)行中斷即繼續(xù)前進(jìn),否則執(zhí)行中斷進(jìn)行避障。紅外傳感器硬件原理如圖2所示。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

1.4 攝像頭模塊

為機(jī)器魚配備的攝像頭是CMOS數(shù)字圖象傳感器。采用的是Ommvision公司的OV9650,OV9650具有130萬的像素、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)行傳輸,兩路格式不同的信號分別進(jìn)入不同的幀存儲單元進(jìn)行存貯,之后根據(jù)ARM控制器的指令通過視頻DMA通道進(jìn)行傳輸。攝像頭原理如圖3所示。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

1.5 LCD模塊

LCD液品顯示器是(Liquid Crystal Display)的簡稱,LCD的構(gòu)造是在兩片平行的玻璃當(dāng)中放置液態(tài)的晶體,兩片玻璃中間有許多垂直和水平的細(xì)小電線,透過通電與否來控制桿狀水晶分子改變方向,將光線折射出來產(chǎn)生畫面。LCD有扭轉(zhuǎn)式向列型(Super Twisted Nematic,簡稱STN)和薄膜式晶體管型(Thin Film Transistor,簡稱TFT)兩種主流類型。因為TFT有反應(yīng)速度快、可視角度大、色彩豐富、分辨率高、對比度、亮度高等優(yōu)點,所以我們選擇TFT的LCD。LCD硬件原理、LCD控制器功能如圖4所示。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

LCD的工作受其控制器控制完成,圖5為LCD控制器功能圖。通過LCD控制器的寄存器組REGBANK來對LCD控制器的各項參數(shù)進(jìn)行設(shè)置。而LCDCDMA則是LCD控制器專用的DMA通道,負(fù)責(zé)將視頻數(shù)據(jù)從顯存(顯存是SDRAM中的一塊區(qū)域,可利用REGBANK編程設(shè)定)中取出,并從VIDPRCS從VD[23:0]發(fā)送給LCD屏。同時LPC3600和TIMECEN負(fù)責(zé)產(chǎn)生LCD屏所需的控制時,然后從VIDEOMUX送給LCD屏。TIMEGEN包含可編程邏輯,可通過程序進(jìn)行設(shè)定。TIMEGEN能產(chǎn)生不同LCD屏驅(qū)動電路所需要的時序信號。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

LCD部分接口介紹。VFRAME/VSYNC/STV接口:傳送LCD控制器和LCD驅(qū)動器之間的幀同步信號。

VLINE/HSYNC/CPV接口:傳送LCD控制器和LCD驅(qū)動器之間的同步脈沖信號。

VCLK/LCD_HCLK接口:傳送LCD控制器和LCD驅(qū)動器之間的像素時鐘信號。

VM/VDEN/TP接口:傳送LCD驅(qū)動器使用的交流信號。

VD [23:0]接口:LCD的像素數(shù)據(jù)輸出端即RGB信號線。

2 系統(tǒng)軟件設(shè)計

2.1 主程序流程

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

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

2.2 紅外模塊

在ARM的A/D進(jìn)行轉(zhuǎn)換時,首先要對ADC控制寄存器進(jìn)行初始化,選擇進(jìn)行轉(zhuǎn)換的模擬輸入端,進(jìn)行A/D轉(zhuǎn)換,并從ADCDAT0讀取轉(zhuǎn)換結(jié)果。探測的結(jié)果小于預(yù)設(shè)值時ARM芯片執(zhí)行中斷,改變PWM波的占空比使機(jī)器魚轉(zhuǎn)向進(jìn)行避障,反之繼續(xù)前進(jìn)。紅外模塊流程如圖7所示。

2.3 攝像頭模塊

攝像頭屬于字符類設(shè)備,所以能夠像字節(jié)流一樣被程序訪問,而且只能夠按順序讀寫。Linux內(nèi)核程序通過設(shè)備的位號來尋找攝像頭。Linux內(nèi)核發(fā)送測試信號到地址0X9650,以檢測攝像頭是否存在。OV9650擁有多組寄存器,圖像的輸出編碼方式和分辨率等參數(shù)取決于OV9650的寄存器。IIC (Inter Integration Circuit)是指內(nèi)部整合電路,是常用的標(biāo)準(zhǔn)串行接口。系統(tǒng)是通過IIC總線對寄存器進(jìn)行整體配置,所以此過程不會占用系統(tǒng)數(shù)據(jù)總線??紤]到圖像傳輸?shù)男?,所以攝像頭與ARM芯片之間的Data[0]~Data[7]的通道僅用以傳輸圖像數(shù)據(jù)。以下為攝像頭的部分初始化代碼。

SrcWidth=640-WinHorOffset*2;//CAM_SRC_HSIZE為640,CAM_SRC_VSIZE為480

SrcHeight=480-WinVerOffset*2;//計算得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);//計算并設(shè)置突發(fā)長度

Calculate Prescaler RatioShift (SrcHeight,PrDstHeight,&PreVerRatio,&V_Shift);//計算水平和垂直縮放比率和位移量、水平和垂直比率

攝像頭模塊流程如圖8所示。

采用ARM芯片和LINUX嵌入式系統(tǒng)實現(xiàn)自主避障機(jī)器魚的設(shè)計

3 結(jié)束語

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2566

    文章

    53008

    瀏覽量

    767534
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9353

    瀏覽量

    377628
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317642
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213837
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    公網(wǎng)訪問ARM嵌入式Linux系統(tǒng)具體的實現(xiàn)步驟介紹

    公網(wǎng)訪問ARM嵌入式Linux系統(tǒng)實驗室里的ARM嵌入式Li
    發(fā)表于 12-14 06:34

    公網(wǎng)訪問ARM嵌入式Linux系統(tǒng)的方法

    公網(wǎng)訪問ARM嵌入式Linux系統(tǒng)實驗室里的ARM嵌入式Li
    發(fā)表于 12-16 07:07

    Holer外網(wǎng)訪問ARM嵌入式Linux系統(tǒng)的方法

    公網(wǎng)訪問ARM嵌入式Linux系統(tǒng)實驗室里的ARM嵌入式Li
    發(fā)表于 12-16 07:18

    嵌入式linux、arm嵌入式操作系統(tǒng)的相關(guān)資料分享

    嵌入式linuxarm嵌入式操作系統(tǒng)嵌入式系統(tǒng)應(yīng)用
    發(fā)表于 12-27 07:35

    基于嵌入式Linux的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)

    提出一種基于嵌入式Linux 系統(tǒng)的遠(yuǎn)程數(shù)據(jù)采集的設(shè)計方案,采用ARM9 體系結(jié)構(gòu)的嵌入式處理
    發(fā)表于 12-31 14:04 ?17次下載

    嵌入式ARM芯片linux操作系統(tǒng)

    關(guān)于嵌入式arm的一些介紹,包括嵌入式概念和linux操作系統(tǒng)的若干概念。
    發(fā)表于 04-05 16:20 ?7次下載

    自主機(jī)器方法研究

    電子開發(fā)機(jī)器人相關(guān)教程資料——自主機(jī)器方法研究
    發(fā)表于 09-06 16:42 ?0次下載

    基于ARM-Linux自主機(jī)器設(shè)計

    機(jī)器人等。機(jī)器作為一項比較新的產(chǎn)品,涉及到機(jī)器的智能開發(fā)并不深,因此機(jī)器
    發(fā)表于 11-30 07:22 ?429次閱讀
     基于<b class='flag-5'>ARM-Linux</b>的<b class='flag-5'>自主</b><b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>機(jī)器</b><b class='flag-5'>魚</b>設(shè)計

    如何使用ARM進(jìn)行嵌入式linux系統(tǒng)設(shè)計

    本文簡要介紹了ARM處理器的特點及其基本結(jié)構(gòu),詳細(xì)論述了基于ARM嵌入式linux系統(tǒng)的關(guān)鍵技術(shù),包括引導(dǎo)加載程序、
    發(fā)表于 05-06 18:22 ?10次下載
    如何使用<b class='flag-5'>ARM</b>進(jìn)行<b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>的<b class='flag-5'>系統(tǒng)</b>設(shè)計

    新型變壓器機(jī)器時延信息估計仿真

    新型變壓器機(jī)器時延信息估計仿真
    發(fā)表于 07-05 16:16 ?5次下載

    基于arm11的嵌入式linux中nrf24l01驅(qū)動的實現(xiàn)

    基于arm11的嵌入式linux中nrf24l01驅(qū)動的實現(xiàn)(嵌入式開發(fā)找哪家)-基于arm11
    發(fā)表于 07-30 14:36 ?15次下載
    基于<b class='flag-5'>arm</b>11的<b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>中nrf24l01驅(qū)動的<b class='flag-5'>實現(xiàn)</b>

    ARM11嵌入式系統(tǒng)Linux下LCD的驅(qū)動的設(shè)計

    ARM11嵌入式系統(tǒng)Linux下LCD的驅(qū)動的設(shè)計(嵌入式開發(fā)啥意思)-ARM11
    發(fā)表于 07-30 14:53 ?24次下載
    <b class='flag-5'>ARM</b>11<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>Linux</b>下LCD的驅(qū)動的設(shè)計

    ARM11嵌入式系統(tǒng)Linux下液晶顯示的實現(xiàn)

    ARM11嵌入式系統(tǒng)Linux下液晶顯示的實現(xiàn)(市面流行的嵌入式開發(fā)板)-
    發(fā)表于 07-30 15:08 ?8次下載
    <b class='flag-5'>ARM</b>11<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>Linux</b>下液晶顯示的<b class='flag-5'>實現(xiàn)</b>

    基于ARM嵌入式Linux的GPRS無線通訊系統(tǒng)

    基于ARM嵌入式Linux的GPRS無線通訊系統(tǒng)(國際嵌入式開發(fā)工程師)-文檔為基于ARM
    發(fā)表于 08-04 15:02 ?12次下載
    基于<b class='flag-5'>ARM</b>與<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>的GPRS無線通訊<b class='flag-5'>系統(tǒng)</b>

    嵌入式】基于ARM嵌入式Linux開發(fā)總結(jié)

    --arm-linux進(jìn)程編程嵌入式知識點復(fù)習(xí)六 --arm-linux網(wǎng)絡(luò)編程嵌入式知識點復(fù)習(xí)七 --linux字符型設(shè)備驅(qū)動初步
    發(fā)表于 10-19 18:32 ?28次下載
    【<b class='flag-5'>嵌入式</b>】基于<b class='flag-5'>ARM</b>的<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>開發(fā)總結(jié)