【摘要】隨著經(jīng)濟(jì)的發(fā)展和人民生活水平的提高,人們對(duì)汽車使用的要求越來(lái)越高,為了保證駕駛員倒車和泊車時(shí)的安全,在汽車上都安裝了倒車?yán)走_(dá),本文設(shè)計(jì)一種以51單片機(jī)為主控制器,利用超聲波模塊HC-SR04,設(shè)計(jì)出一套可在1602液晶上實(shí)時(shí)顯示障礙物距離的超聲波測(cè)距儀,并通過(guò)在恒溫條件下采集大量數(shù)據(jù),與實(shí)際距離進(jìn)行比較,通過(guò)matlab擬合出曲線,了解它的測(cè)量精度和誤差。
【關(guān)鍵詞】超聲波;測(cè)距;誤差分析;matlab
1.超聲波測(cè)距的原理
通過(guò)超聲波發(fā)射裝置發(fā)出超聲波,根據(jù)接收到超聲波的時(shí)間差就可以知道距離了。我們選用的是HC-SR04模塊,通過(guò)時(shí)序圖可知,只要提供一個(gè)10us以上的觸發(fā)電平,該模塊內(nèi)部將自動(dòng)發(fā)出8個(gè)40kHZ的方波并檢測(cè)回波。一旦檢測(cè)到有回波信號(hào)則輸出回響信號(hào)。由此通過(guò)發(fā)射信號(hào)到收到的回響信號(hào)時(shí)間間隔可以計(jì)算得到距離。距離=高電平時(shí)間*聲速/2;為防止發(fā)射信號(hào)對(duì)回響信號(hào)的影響,測(cè)量周期在60ms以上。由于超聲波也是一種聲波,其聲速與溫度有關(guān),表1列出了不同溫度下的聲速。
圖1
圖2
圖3
圖4
圖5
由表1可知,溫度每升高1攝氏度,聲速增加0.6米/秒,為了分析誤差方便,在恒溫條件下采用了30攝氏度來(lái)測(cè)量。
2.硬件電路設(shè)計(jì)
2.1 單片機(jī)最小系統(tǒng)模塊設(shè)計(jì)
我采用的是51單片機(jī),單片機(jī)最小系統(tǒng)包括晶振電路,復(fù)位電路和晶振電路,其中電源電路用來(lái)提供單片機(jī)運(yùn)行所需的5V直流電,晶振電路為單片機(jī)提供振蕩源,為單片機(jī)正常工作提供保證,復(fù)位電路是防止單片機(jī)在運(yùn)行程序時(shí)跑飛,當(dāng)程序跑飛時(shí),按下復(fù)位鍵,程序從頭開始執(zhí)行,圖1是用protel畫的原理圖。
2.2 液晶動(dòng)態(tài)顯示模塊
我們采用的是1602液晶,液晶體積小,功耗低,顯示操作簡(jiǎn)單,只能顯示ASCⅡ碼,液晶的原理圖和測(cè)試距離時(shí)的顯示如圖2、3所示。
2.3 超聲波測(cè)距模塊
HC-SR04超聲波測(cè)距模塊可測(cè)2cm-400cm,精度3mm,模塊包括超聲波發(fā)射器,接收器與控制電路,我用于測(cè)量距離的實(shí)物圖和在示波器上的回波如圖4、5所示。
3.系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)采用了模塊化設(shè)計(jì),分為主程序,超聲波程序,中斷與定時(shí)程序,液晶顯示程序等。程序具體執(zhí)行過(guò)程如圖6所示。
4.設(shè)計(jì)結(jié)果
在實(shí)驗(yàn)室恒溫條件下(聲速為定值),測(cè)量了2cm-315cm,利用直尺,箱子(用來(lái)做障礙物),用直尺來(lái)測(cè)量障礙物距離超聲波傳感器的距離,1602液晶顯示測(cè)得的距離,使箱子不斷移動(dòng)來(lái)測(cè)得大量數(shù)據(jù)并取平均值,測(cè)量的數(shù)據(jù)如表2所示:表2中數(shù)據(jù)的單位為厘米(cm)。
表1 不同溫度下的聲速
溫度(℃) -30 -20 -10 0 10 20 30
聲速(米/秒) 313 319 325 323 338 344 349
表2
實(shí)際距離 2 4 6 8 10 12 14 16 18 20 22
測(cè)試距離 2.6 4.3 5.8 7.2 10.2 11.7 13.2 15.8 18.3 20.6 22.1
誤差 0.6 0.3 0.2 0.8 0.2 0.3 0.8 0.2 0.3 0.6 0.1
實(shí)際距離 24 26 28 30 32 34 36 38 40 42 44
測(cè)試距離 23.9 25.4 27.6 29.5 31.7 33.2 36.1 38 39.8 41.7 43.6
誤差 0.1 0.6 0.4 0.5 0.3 0.8 0.1 0 0.2 0.3 0.4
實(shí)際距離 46 48 50 52 54 56 58 60 62 64 66
測(cè)試距離 45.5 47.4 49.2 52.4 54.1 55.9 58.1 59.7 62.1 63.8 65.7
誤差 0.5 0.6 0.8 0.4 0.1 0.1 0.1 0.3 0.1 0.2 0.3
實(shí)際距離 68 70 72 74 76 78 80 82 84 86 88
測(cè)試距離 67.5 70.1 72 73.7 75.6 77.8 79.4 81.7 83.6 85.4 87.9
誤差 0.5 0.1 0 0.3 0.4 0.2 0.6 0.3 0.4 0.6 0.1
實(shí)際距離 90 92 94 96 98 100 102 104 106 108 110
測(cè)試距離 89.8 91.7 93.6 95.9 97.6 99.5 101.4 103.2 105.8 107.7 109.8
誤差 0.2 0.3 0.4 0.1 0.4 0.5 0.6 0.8 0.2 0.3 0.2
實(shí)際距離 112 114 116 118 120 122 124 126 128 130 132
測(cè)試距離 111.9 113.6 115.2 117.4 119.7 122.9 124.4 125.5 128.3 129.3 131.6
誤差 0.1 0.4 0.8 0.6 0.3 0.9 0.4 0.5 0.3 0.7 0.4
實(shí)際距離 134 136 138 140 142 144 146 148 150 160 170
測(cè)試距離 133 134.5 137.1 140.1 142.1 144.6 145.8 147.7 149.6 159.4 169.4
誤差 1 0.5 0.9 0.1 0.1 0.6 0.2 0.3 0.4 0.6 0.6
實(shí)際距離 180 190 200 210 220 230 240 250 260 270 280
測(cè)試距離 179.7 189.4 199.3 211.8 219.6 230.2 240.2 250.5 260.4 270.6 279.9
誤差 0.3 0.6 0.7 1.8 0.4 0.2 0.2 0.5 0.4 0.6 0.1
實(shí)際距離 290 300 302 304 306 310 315
測(cè)試距離 290.4 301.4 303.2 304.2 308.8 307 307
aa誤差 0.4 0.4 1.2 0.2 2.2 3 8
當(dāng)距離超過(guò)310cm時(shí),一是精度下降,二是進(jìn)入其測(cè)量盲區(qū),不能識(shí)別,這是因?yàn)閷?duì)于長(zhǎng)距離的測(cè)量,需要低頻率的超聲波才可以。在測(cè)量時(shí)。我們采用邊長(zhǎng)為80cm的正方形紙箱做障礙物,并且表面平整,測(cè)量效果比較好,上邊的數(shù)據(jù)是經(jīng)過(guò)多次測(cè)量求的平均值。
圖6
圖7
把上述數(shù)據(jù)通過(guò)matlab讀入,來(lái)分析誤差,如圖7所示。
5.結(jié)語(yǔ)
通過(guò)大量的做實(shí)驗(yàn)并求平均值,可以看出本系統(tǒng)工作穩(wěn)定,誤差較小,成本低,性價(jià)比高,在距離超過(guò)100cm后測(cè)得的數(shù)據(jù)變化較大,上表中的數(shù)據(jù)都是通過(guò)多次測(cè)量求得平均值,誤差基本在1cm之內(nèi),精度可達(dá)3mm,基本滿足倒車?yán)走_(dá)的要求。
參考文獻(xiàn)
[1]李朝青.單片機(jī)原理與接口技術(shù)[M].北京航空航天大學(xué)出版社,2008.
[2]郭天祥.51單片機(jī)C語(yǔ)言教程[M].電子工業(yè)出版社, 2012.