秦博晟



摘要 介紹基于Arduino的一種倒車雷達設計方案,包括系統的設計原理、實驗材料、硬件設計、軟件設計及測試流程。該設計基于超聲測距原理,以Arduino為主控板,應用HC-SR04超聲波測距模塊、無源蜂嗚器報警模塊及共陰數碼管顯示模塊,以超聲波實現倒車雷達實時顯示距離數據、距離過近報警等功能。經測試所有功能系統運行穩定,該設計簡單、易行、成本低廉,具有一定的實用價值。
【關鍵詞】Arduino開發板 倒車雷達 超聲測距
Arduino是2005年1月由米蘭交互設計學院的兩位教師David Cuartielles和MassimoBanzi聯合創建,一塊基于開放原始代碼的Simple I/O平臺。現己成為較為流行的電子互動平臺。其基于單片機系統開發,具有使用簡單、功能多樣、價格低廉等優點,廣泛應用于電子系統設計和互動產品開發等方面。它的功能極其豐富,能進行多種開發,制作出多種簡易模型。Arduino硬件被封裝為多個單獨的模塊,各個模塊間使用杜邦線進行連接,擁有較為簡易的硬件組裝方式。Arduino的IDE軟件開發環境擁有類似于C語言的開發環境和語言習慣,使其更容易上手進行編程,實現各種功能。
本文介紹使用Arduino開發板實現簡易倒車雷達系統,該系統基于超聲波測距原理實現并輔以實時顯示距離數據、距離過近報警等功能,有利于提升車輛的行車安全,在倒車時對司機進行一定的輔助,降低因車輛的視野盲區而發生交通事故的幾率。
1 設計原理
本倒車雷達系統使用Arduino開發板連接超聲波發射及接受器、數碼管及蜂鳴器實現車輛與障礙物間距離的測量、顯示及在距離過近時進行報警。Arduino開發板根據超聲波發射及接受器所傳入的時間差數據,計算出障礙物與車輛之間的距離,并將此數據中的分米整數值取出,傳出至數碼管顯示,同時對計算出的距離值進行判斷,若小于臨界值,則觸發蜂鳴器進行報警。
2 實驗材料
共陰數碼管*1、面包板*1、面包板跳線若干、無源蜂鳴器*1、Ariduino開發板*1、超聲波發射器+l、超聲波接受器+l。
3 硬件設計
3.1 超聲波測距
超聲波是一種超出人類聽覺極限的聲波,即其振動頻率高于20 kHz。其具有頻率高、波長短、衍射小、方向性好等優點,且傳播時的能量消耗緩慢、有利于實現測距。
本實驗使用HC-SR04超聲波測距模塊,其分為超聲波發射器、接收器與控制電路,可提供2cm-400cm的非接觸式距離感測,測距精度高達jmm。
用于測距的超聲波頻率應取合適值,大約40kHz為益。若所用超聲波頻率過高,則其在空氣中傳播時,會加劇空氣分子的摩擦,導致其有較大的能量損耗,使同功率下測距的最大距離較短;若所用超聲波頻率過低,則其易受使用環境中噪聲干擾,且受其定向性及波長較長產生的衍射影響,會導致測量精度的下降。
超聲波測距的原理:先向超聲波模塊脈沖觸發引腳(trig)加高電平,觸發超聲波發射器向某一方向定向發射超聲波,在發射超聲波的同時開始計時,同時回波檢測引腳(echo)變為高電平;超聲波經空氣傳播,在遇到障礙物時因反射立即返回;利用超聲波接收器接收返回的超聲波,當返回的超聲波被模塊接收時,回波檢測引腳(echo)變為低電平,觸發計時器立刻停止計時,利用所記錄的時間差和當前環境下的聲速即可計算出超聲波源與障礙物之間的距離,如圖1所示。常溫下超聲波在空氣中的傳播速度為v = 340 m/s,計時器記錄的時間差為At,可計算出發射點距障礙物的距離S,公式即:
S=v*△t/2
高頻率重復上述過程,即可實現超聲波的連續測距。
3.2 共陰數碼管
基本組成單元是LED。所有LED的陰極共同連接形成公共陰極(COM)。使用時公共極COM接地,當某一字段LED的陽極為高電平時點亮;為低電平時熄滅。
使用共陰數碼管作為倒車雷達的距離顯示裝置,具有成本低廉、功耗較低,體積較小等優點,且數據直觀易于快速讀取。
3.3 無源蜂鳴器
是內部不帶震蕩源的一種蜂鳴器,須用音頻信號驅動,只通直流電源無法令其嗚叫。
使用無源蜂鳴器作為倒車雷達的距離過近的報警裝置,具有成本低廉、功耗較低,體積較小等優點,且將距離數據轉換成為音頻信號利于司機對危險的快速反應。
3.4 硬件接線示意圖
如圖2所示。
4 軟件設計
4.1 共陰數碼管顯示距離
顯示數字時,只要將相應筆段點亮即可。將每個數字需要點亮的筆段寫入程序中,將數字所需點亮的筆段輸出高電平,其他筆段輸出低電平,即可顯示數字。根據超聲波測量距離的大小,對距離保存到分米單位,并將其輸入至共陰數碼管中,即可顯示距離。
4.2 蜂鳴器報警
對每次測量的距離進行判斷,若小于預設距離,則對蜂鳴器加高電平,否則加低電平,即可實現報警功能。
5 測試流程
本系統通電初始化后,超聲波發射器先發射超聲波,同時記錄發射超聲波的時刻;超聲波遇到障礙物后,會因反射立即返回,由超聲波接收器接收返回的超聲波,同時記錄接收到返回波的時刻。將記錄的時刻通過超聲波測距的算法,計算出倒車雷達與障礙物之間的距離,輸入至Arduino開發板中,并取分米整數值輸出至共陰數碼管上進行顯示,同時對所測定的距離大小與所設置的臨界值進行比較,若小于臨界值,則觸發蜂鳴器進行報警(圖3)。高頻率重復上述過程,即可實現即可實現倒車雷達連續測距、顯示及報警等功能。
6 結論
所設計的簡易倒車雷達系統能夠準確計算出車距離障礙物的遠近,為司機倒車提供了很大幫助,超聲波測距設備可以準確測量距離并且在數碼管上顯示。當車到障礙物的距離小于預設距離時,系統的蜂鳴器就會發出蜂鳴聲報警。本文提出的方案能對希望使用Arduino開發板實現上述功能的人員提供一定的思路,對Arduino開發環境的應用有一定的參考價值。
參考文獻
[1]甘本祓,微波傳輸線設計手冊[M].北京:人民郵電出版社,1981.
[2]甘本祓,吳萬春.現代微波濾波器的結構與設計[M].北京:科學出版社,1973.
[3]蔡睿妍.Arduino的原理及應用[J],電子設計工程,2012,20 (16):1.
[4] HC-SR04超聲波測距模塊說明書[K].2017.