• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      超聲測距模塊HC-SR04的超聲波測距儀設計

      2011-06-25 02:45:38李軍申俊澤
      關鍵詞:驅(qū)動程序測距應用程序

      李軍,申俊澤

      (東北石油大學 計算機與信息技術學院 嵌入式實驗室,大慶 163318)

      引 言

      隨著國民經(jīng)濟的迅速發(fā)展,超聲波在機械制造、石油化工、航空航天等領域發(fā)揮著越來越重要的作用。

      超聲波測距作為一種非接觸式距離測量方法,具有不受外界光及電磁場等因素影響的優(yōu)點,實現(xiàn)電路簡單,成本低;同時,還具有易于定向發(fā)射、方向性好、對人體傷害小等特點。上述優(yōu)勢使得與超聲波測距領域相關的儀器設備在數(shù)據(jù)處理、檢測性能和工程設計系統(tǒng)化等方面有了更大的發(fā)展空間。

      1 總體設計

      本系統(tǒng)利用三星公司的S3C2410及超聲波測距模塊HC-SR04構造了一個嵌入式系統(tǒng)平臺。整個系統(tǒng)由3部分組成:底層硬件平臺、系統(tǒng)軟件層和應用軟件層。系統(tǒng)硬件結(jié)構如圖1所示。

      圖1 系統(tǒng)硬件結(jié)構圖

      超聲波測距儀的軟件層由驅(qū)動及應用程序組成。其中,應用程序包括數(shù)據(jù)采集程序及圖形用戶界面;而驅(qū)動程序的設計是本系統(tǒng)的重點。

      2 硬件設計

      2.1 S3C2410處理器

      S3C2410處理器是三星公司的一款基于ARM920T內(nèi)核的16/32位RISC嵌入式微處理器。ARM920T由ARM9TDMI、存儲管理單元(MMU)和高速緩存3部分組成,主頻可達200MHz;外圍硬件資源包括64MB SDRAM、64MB NAND Flash、2個五線異步串行口、1個10M網(wǎng)口及用戶擴展口等。本系統(tǒng)利用開發(fā)板提供的GPIO擴展資源,實現(xiàn)對超聲波測距模塊HC-SR04的數(shù)據(jù)采集及控制,同時在LCD屏上顯示精確的距離數(shù)值。

      2.2 超聲波測距模塊

      超聲波測距是借助于超聲脈沖回波渡越時間法來實現(xiàn)的。設超聲波脈沖由傳感器發(fā)出到接收所經(jīng)歷的時間為t,超聲波在空氣中的傳播速度為c,則從傳感器到目標物體的距離D可用下式求出:

      超聲波測距模塊HC-SR04可提供2~400cm的非接觸式距離感測功能,測距精度可高達3mm。模塊包括超聲波發(fā)器、接收器與控制電路。圖2為HC-SR04的引腳圖。

      各引腳功能如下:

      ①VCC是5V電源,GND為地。

      ②TRIG是觸發(fā)測距引腳,給至少10μs的高電平信號。

      ③ECHO是信號接收引腳。有信號返回時,通過I/O口ECHO輸出一個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間。

      圖2 HC-SR04引腳圖

      3 軟件設計

      在軟件開發(fā)之前,首先要完成軟件開發(fā)環(huán)境的搭建,接下來最重要的工作就是設備驅(qū)動程序的開發(fā)。當軟件系統(tǒng)底層的程序完成之后,就可以著手上層的與設備無關的應用程序。最后就是系統(tǒng)的圖形界面的設計,并將應用程序燒寫到S3C2410開發(fā)板上。

      3.1 系統(tǒng)開發(fā)環(huán)境的建立

      (1)交叉編譯環(huán)境的建立

      交叉編譯是嵌入式開發(fā)過程中的一項重要技術,是編譯技術發(fā)展過程中的一個重要分支。本系統(tǒng)采用的交叉編譯器是cross-3.3.2.tar.bz2。安裝此編譯器只需要在/usr/local目錄下建一個arm的目錄,將cross-3.3.2.tar.bz2拷貝到arm目錄下,然后進入該目錄進行解壓,并設置相應的環(huán)境變量。

      (2)Qt/Embedded和Qtopia開發(fā)環(huán)境的建立

      建立Qt/Embedded和Qtopia開發(fā)環(huán)境的具體步驟如下:首先,下載tmake、Qt/Embedded、Qtopia的源碼包,注意版本之間的向后兼容性;其次,把這3個源碼包分別解壓到不同的目錄下;最后,編輯/etc/bashrc文件,設置環(huán)境變量,并利用交叉編譯器編譯Qt/Embedded。

      3.2 超聲波測距模塊程序設計

      超聲波測距模塊程序由驅(qū)動及應用程序組成。應用程序傳送給超聲波測距模塊驅(qū)動控制參數(shù),具體測距由驅(qū)動程序完成。在用戶態(tài)應用程序中讀取超聲波設備,可獲得所需的信息。

      Linux系統(tǒng)訪問設備就像訪問文件一樣。字符設備使用struct file_operation結(jié)構來定義設備的各種操作集合,結(jié)構中的各個函數(shù)分別響應同名或類似名稱的系統(tǒng)調(diào)用。它是操作外設的函數(shù)接口,又稱設備驅(qū)動程序接口。編寫字符設備驅(qū)動程序,主要實現(xiàn)struct file_operation結(jié)構中的各個函數(shù)。當然,驅(qū)動程序并不是要實現(xiàn)所有的這些函數(shù),可以根據(jù)實際設備需要實現(xiàn)必要的函數(shù)。超聲波傳感器設備驅(qū)動中定義的數(shù)據(jù)結(jié)構為:

      函數(shù)gpio_init用于初始化GPIO設備。函數(shù)gpio_setup_cdev創(chuàng)建并注冊字符設備,動態(tài)分配設備號。函數(shù)gpio_open用于打開并配置為輸入口。函數(shù)gpio_read用于讀取超聲波測距模塊輸出的距離數(shù)據(jù)。函數(shù)gpio_release用于關閉GPIO設備。

      超聲波測距系統(tǒng)的應用程序主要由測距程序、超聲波發(fā)生子程序、超聲波接收程序及顯示子程序組成。測距程序流程如圖3所示。

      圖3 測距程序流程

      3.3 圖形界面設計及應用程序燒寫

      圖形用戶界面(GUI)是系統(tǒng)的一個至關重要的方面,用戶通過GUI與系統(tǒng)進行交互,所以GUI應該易于使用并且可靠。本系統(tǒng)圖形界面的主要功能有:調(diào)用相應驅(qū)動程序,顯示距離,處理觸摸屏點擊事件等。

      將應用程序燒寫到S3C2410開發(fā)板。首先將驅(qū)動程序的可執(zhí)行文件復制到根文件系統(tǒng)的/usr目錄下;其次把Qt\Embedded二進制庫和應用程序的二進制代碼復制到某個目錄下;然后把這個目錄制成某種類型的根文件系統(tǒng);最后把這個根文件系統(tǒng)燒寫到S3C2410的Flash存儲器上。這個過程可能需要一些制作根文件系統(tǒng)的工具,如mkcramfs。

      4 超聲波測距儀數(shù)據(jù)測量結(jié)果

      在系統(tǒng)設計并實現(xiàn)后,為了驗證測距儀的準確性與穩(wěn)定性,測試了12組數(shù)據(jù),并對測距結(jié)果與實際距離進行了比較。距離測試結(jié)果如表1所列。

      表1 距離測試結(jié)果 cm

      由實驗數(shù)據(jù)可知,該超聲波測距器的盲區(qū)(超聲波傳感器檢測到墻壁的最近距離)為2cm;而最遠測量距離為400cm。電路程序設計時,為了避免超聲波從發(fā)射器直接傳送到接收器引起的直射波觸發(fā),延時約為0.1ms,所以超聲波測距器會有一個最小可測距離。而由于超聲波在傳播過程中會產(chǎn)生衰減且發(fā)射功率有限,導致遠距離回波很難檢測到,所以會有一個最遠測量距離。另外,通過溫度補償可以提高測量精度。

      5 結(jié) 論

      利用超聲波測距原理,系統(tǒng)在S3C2410+Linux的平臺上,實現(xiàn)了自動測距和實時顯示功能。該系統(tǒng)所有運算、處理、顯示都實現(xiàn)數(shù)字化;操作簡單,使用方便,測量速度快、準確,結(jié)果顯示直觀;體積小,攜帶方便,適用于各種水文液位測量、障礙物的識別以及車輛自動導航等領域,具有良好的應用前景。

      [1]石秀民.嵌入式系統(tǒng)原理與應用[M].北京:北京航空航天大學出版社,2007.

      [2]王宜懷.嵌入式技術基礎與實踐[M].北京:清華大學出版社,2009.

      [3]優(yōu)龍科技發(fā)展公司.YLP2410使用手冊,2007.

      [4]宋寶華.Linux設備驅(qū)動開發(fā)詳解[M].北京:人民郵電出版社,2008.

      [5]歐文盛.ARM嵌入式Linux應用實例開發(fā)[M].北京:中國電力出版社,2008.

      [6]Xteam(中國)軟件技術有限公司.Qt程序設計[M].北京:清華大學出版社,2002.

      猜你喜歡
      驅(qū)動程序測距應用程序
      類星體的精準測距
      科學(2020年3期)2020-01-06 04:02:51
      刪除Win10中自帶的應用程序
      電腦報(2019年12期)2019-09-10 05:08:20
      淺談超聲波測距
      電子制作(2017年7期)2017-06-05 09:36:13
      基于PSOC超聲測距系統(tǒng)設計
      相對差分單項測距△DOR
      太空探索(2014年1期)2014-07-10 13:41:50
      關閉應用程序更新提醒
      電腦迷(2012年15期)2012-04-29 17:09:47
      三星電子將開設應用程序下載商店
      微軟軟件商店開始接受應用程序
      驅(qū)動程序更新與推薦
      驅(qū)動程序更新與推薦
      邢台市| 麟游县| 鄂托克前旗| 宝山区| 阿鲁科尔沁旗| 高尔夫| 电白县| 长春市| 兴山县| 双流县| 金堂县| 江永县| 怀集县| 托克逊县| 苏尼特右旗| 北辰区| 西贡区| 溆浦县| 岫岩| 丰城市| 大余县| 温州市| 嘉义县| 教育| 历史| 德令哈市| 龙口市| 德化县| 岳西县| 五河县| 济阳县| 仙游县| 绥江县| 茌平县| 慈溪市| 文昌市| 库伦旗| 北川| 柳江县| 彰化县| 开封市|