国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STC89C52單片機的超聲波測距儀設(shè)計

2020-10-21 06:00張春嶺梅彥平王靜
關(guān)鍵詞:傳感器

張春嶺 梅彥平 王靜

摘? ?要: 針對原有超聲波測距儀存在的精度不高、成本較高等問題,設(shè)計了以STC89C52單片機為核心控制單元,利用HC-SR04超聲波傳感器模塊進行超聲波檢測,同時引入溫度傳感器對環(huán)境溫度進行補償,并加入平均值濾波算法對測量過程中的隨機誤差進行修正的測距儀。對比實驗表明,融合了溫度補償和平均值濾波算法的超聲波測距儀在測量精度方面有很大改善,絕對誤差控制小于1 mm,平均相對百分誤差小于0.2%,儀器兼具結(jié)構(gòu)簡單、性能穩(wěn)定、成本低等優(yōu)勢。

關(guān)鍵詞: 超聲波測距;傳感器;STC89C52單片機;溫度補償;平均值濾波

中圖分類號:TP368.2? ? 文獻(xiàn)標(biāo)識碼:A? ? 文章編號:2095-8412 (2020) 01-033-05

工業(yè)技術(shù)創(chuàng)新 URL: http: //www.china-iti.com? ? DOI: 10.14103/j.issn.2095-8412.2020.01.007

引言

距離是控制系統(tǒng)中經(jīng)常使用的重要參數(shù),如何獲得準(zhǔn)確的距離成為相關(guān)領(lǐng)域研究的熱點問題。目前常用的測距方法有:激光測距、毫米波測距、紅外測距和超聲波測距等[1]。

超聲波測距是一種非接觸式測距方法。與其他方法相比,超聲波測距不受光線、被測對象顏色等因素的影響,對被測物體處于黑暗、電磁干擾等惡劣環(huán)境的情況也有一定的適應(yīng)能力[2]。此外,超聲波具有指向性強、方向性好、傳播能量大、傳播距離較遠(yuǎn)等優(yōu)勢。目前,超聲波測距技術(shù)已在工業(yè)控制、能源勘探、氣象測量、水利監(jiān)測等領(lǐng)域得到了廣泛應(yīng)用[3]。

當(dāng)前一般使用集成芯片實現(xiàn)測距儀設(shè)計,而這一方式存在成本較高、功能單一等問題[4]。本文設(shè)計了一種基于STC89C52單片機的超聲波測距儀,具有智能處理功能,可實現(xiàn)測量距離實時顯示、報警閾值設(shè)置等功能,且操作簡單、成本低、精度高,具有一定推廣應(yīng)用價值。

1? 總體方案

設(shè)計指標(biāo):準(zhǔn)確測量并顯示被測對象與測距儀的距離,當(dāng)被測距離小于系統(tǒng)預(yù)設(shè)值(安全距離)時,蜂鳴器報警。

為實現(xiàn)上述指標(biāo),系統(tǒng)結(jié)構(gòu)主要由三大部分構(gòu)成:控制部分、檢測部分和人機交互部分,如圖1所示。

控制部分采用STC89C52單片機;檢測部分采用HC-SR04超聲波傳感器模塊和DS18B20溫度傳感器模塊;人機交互部分包括顯示模塊、報警模塊及按鍵,其中顯示模塊采用LED顯示器,報警模塊采用蜂鳴器,按鍵采用獨立按鍵。

2? 檢測原理

2.1? 超聲波測距原理

采用時差法測距方法,測距原理如圖2所示。

將超聲波傳感器發(fā)射端對著被測對象進行發(fā)射,超聲波以空氣為媒介進行傳播,遇到障礙物后反射回超聲波傳感器的接收端,根據(jù)發(fā)射和接收的時間差就可以計算超聲波的傳播距離。計算公式如下:

(1)

(2)

由式(1)、式(2)可得

(3)

其中,為被測對象到傳感器接收端/發(fā)射端的距離,為被測對象到傳感器中心的距離,為超聲波發(fā)射時刻,為超聲波接收時刻,為超聲波傳播速度,為傳感器發(fā)射端和接收端到傳感器的中心距離。

由式(3)可知,傳感器與被測物體的直線距離與、、有關(guān),為固定值,因此可通過提高、、的測量精度,來提高的精度。

2.2? 溫度補償

超聲波作為聲波的一種,在空氣中傳播時的傳播速度受環(huán)境溫度的影響較大。為了提高測量精度,計算時必須根據(jù)環(huán)境因素對聲波速度進行修正。

系統(tǒng)中設(shè)置了溫度采集電路,利用DS18B20溫度傳感器可以直接獲得現(xiàn)場溫度。工業(yè)測量中,通常用式(4)進行計算[5]:

(4)

其中,為現(xiàn)場溫度,為溫度補償后的超聲波傳播速度。

3? 硬件設(shè)計

3.1? 控制部分

系統(tǒng)結(jié)構(gòu)中控制部分的主控芯片采用STC89C52單片機,它是宏晶科技生產(chǎn)的一種CMOS 8位微控制器,指令代碼完全兼容傳統(tǒng)8051單片機,具有高性能、低功耗、超強抗干擾、使用方便簡單的特點,是新一代8051單片機。其主頻可達(dá)35 MHz,定時器精度可達(dá)0.028 μs,由定時時間、帶來的誤差為0.009 7 mm,誤差值可忽略不計。

3.2? 檢測部分

3.2.1? 超聲波測距

采用HC-SR04超聲波傳感器模塊作為超聲波檢測模塊,此模塊性能穩(wěn)定,測量范圍為20~4 000 mm,測量精度高,盲區(qū)小。該模塊具有4個引腳——脈沖觸發(fā)引腳Trig、回波引腳Echo、VCC和GND。測距時Trig引腳接收到單片機發(fā)送的高電平信號(持續(xù)時間>10 μs);發(fā)射端發(fā)射8個頻率為40 kHz的方波,同時Echo引腳電平將由低變高;接收端收到回波信號后,Echo電平將自動由高變低。高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間。該高電平時間由STC89C52單片機測定。

該模塊發(fā)射電路如圖3所示,其基本組成為EM78P153、發(fā)射換能器T40和MAX232。單片機給Trig引腳發(fā)送高電平(持續(xù)時間>10 μs);經(jīng)EM78P153發(fā)送一段頻率為40 kHz的方波;通過MAX232電平轉(zhuǎn)換,提高發(fā)射功率;依靠換能器T40,將電脈沖信號轉(zhuǎn)換為超聲波發(fā)射。接收電路如圖4所示,其基本組成為TL074運放和接收換能器R40。接收換能器R40接收回波,將超聲波轉(zhuǎn)換為電信號,經(jīng)TL074運放送至單片機。

3.2.2? 溫度檢測

為了對超聲波傳播速度進行溫度補償,系統(tǒng)結(jié)構(gòu)中實時溫度檢測電路主要采用DS18B20溫度傳感器。

DS18B20是常用的數(shù)字溫度傳感器,輸出的是數(shù)字信號,具有體積小、成本低、抗干擾能力強、精度高的特點。該模塊測溫范圍為-55~+125℃,在-10~+85℃范圍內(nèi)精度為±0.5℃。由式(4)可知,其帶來的誤差對聲速的影響為±0.303 5 m/s,可忽略不計。

3.3? 人機交互部分

該部分顯示模塊采用4位共陽極數(shù)碼管。為節(jié)省IO口,采用動態(tài)顯示方式,同時加入三極管對單片機IO口電流進行放大,以驅(qū)動數(shù)碼管。報警模塊采用壓電蜂鳴器,其體積小、成本低、可靠性好、靈敏度高,當(dāng)測量距離小于預(yù)設(shè)值時蜂鳴器響,進行報警。預(yù)設(shè)值通過獨立按鍵“+”“-”鍵進行設(shè)置[6]。

4? 軟件設(shè)計

軟件設(shè)計流程圖如圖5所示。系統(tǒng)上電后對傳感器等進行初始化,超聲波發(fā)射,啟動定時器,一旦檢測到聲波返回,則關(guān)閉定時器,調(diào)用測溫子程序和距離計算程序。計算結(jié)果與預(yù)設(shè)值進行比較,若大于預(yù)設(shè)值則調(diào)用顯示子程序進行顯示,若小于預(yù)設(shè)值則蜂鳴器報警。實際測量中加入了平均值濾波算法,該算法是將采集的m個數(shù)求平均值,以該平均值作為測量結(jié)果。該算法可以消除隨機誤差,提高測量精度。

5? 功能測試

利用本設(shè)計在同一環(huán)境下,分別對未加入平均值濾波算法和加入平均值濾波算法時進行測距,測量數(shù)據(jù)如表1所示。為驗證溫度補償?shù)淖饔?,在不同溫度下進行測距,測量數(shù)據(jù)如表2所示。其中絕對誤差,平均相對百分誤差, (為實際距離,為測量值,為測量次數(shù),為測量總數(shù))。

由表1可以看出,經(jīng)過平均值濾波處理后的測量結(jié)果要明顯優(yōu)于未經(jīng)處理的測量結(jié)果,由此可知平均值濾波算法能夠有效提高測量精度。同時,由表2可知,未加入溫度補償時,隨著溫度變大,測量絕對誤差增大;而加入溫度補償后,溫度值改變幾乎不影響測量精度。表1和表2的數(shù)據(jù)顯示,無論單次測量絕對誤差,還是多次測量平均相對百分誤差,本文所設(shè)計的測距方法均具有明顯優(yōu)勢,儀器整體實現(xiàn)的測距性能的絕對誤差控制小于1 mm,平均相對百分誤差控制小于0.2%。

6? 結(jié)論

本文設(shè)計了基于STC89C52單片機的超聲波測距儀,該系統(tǒng)結(jié)構(gòu)簡單、成本低、性能穩(wěn)定、操作方便、精度高。設(shè)計中引入溫度補償和平均值濾波算法,提高了測量精度,并將誤差限制在合理范圍內(nèi)。該系統(tǒng)適用于液位測量、障礙物的識別以及車輛自動導(dǎo)航等領(lǐng)域,應(yīng)用前景良好。

參考文獻(xiàn)

[1] 張攀峰, 王玉萍, 張健, 等. 帶有溫度補償?shù)某暡y距儀的設(shè)計[J]. 計算機測量與控制, 2012, 20(6): 1717-1719.

[2] 趙珂. 時差法超聲測距儀的研制[J]. 國外電子元器件, 2005(1): 65-67.

[3] 朱旋. 超聲波測距儀的研究[J]. 工業(yè)儀表與自動化裝置, 2009(1): 196-197.

[4] 譚洪濤, 張學(xué)平. 單片機設(shè)計測距儀原理及其簡單應(yīng)用[J]. 現(xiàn)代電子技術(shù), 2004(18): 94-96.

[5] 安宗權(quán), 冷護基. 基于ATmega8單片機的超聲波測距儀[J]. 計算機測量與控制, 2005, 13(11): 1299-1300.

[6] 張毅剛, 劉旺, 鄧立寶. 單片機原理及接口技術(shù)[M]. 北京: 人民郵電出版社, 2016.

作者簡介:

張春嶺(1987—),通信作者,女,河北人,工學(xué)碩士,助教。從事自動化方面的研究與教學(xué)工作。

E-mail: chunling_zhang2013@163.com

(收稿日期:2020-02-17)

Design of Ultrasonic Range Measurement Instrument Based on STC89C52 MCU

ZHANG Chun-ling, MEI Yan-ping, WANG Jing

(City Institute, Dalian University of Technology, Dalian 116600, China)

Abstract: Focusing on the problems such as low precision and high cost existed in the original ultrasonic range measurement instrument, the STC89C52 MCU is taken as the core control unit, and the HC-SR04 ultrasonic sensor module is used to carry out the ultrasonic detection. Meanwhile, a temperature sensor is adopted to compensate the environmental temperature, and the average filtering algorithm is imported to correct the random error during the measurement process. The results of comparative experiments demonstrate that the ultrasonic range measurement instrument with temperature compensation and average filtering algorithm has an obvious improvement in the measurement accuracy. The absolute error is controlled by less than 1 mm, and the average relative error is controlled by less than 0.2%. The instrument also has the advantages such as simple structure, stable performance and low cost.

Key words: Ultrasonic Range Measurement; Sensor; STC89C52 MCU; Temperature Compensation; Average Filtering

猜你喜歡
傳感器
傳感器技術(shù)在國民經(jīng)濟中的地位
手機CMOS傳感器底蘊排行
新基建助力傳感器行業(yè) 高速發(fā)展
DEP推出量產(chǎn)內(nèi)燃機傳感器可提升效率減少排放
傳感器技術(shù)在化學(xué)教學(xué)中的應(yīng)用研究及啟示
跟蹤導(dǎo)練(三)2
工業(yè)互聯(lián)網(wǎng)引發(fā)傳感器產(chǎn)業(yè)革命
光纖與光纖傳感器
指紋掛鎖
用傳感器重現(xiàn)伽利略對自由落體運動的研究
西丰县| 兴宁市| 漾濞| 东乌| 京山县| 集安市| 云浮市| 乡宁县| 百色市| 沙河市| 葫芦岛市| 新源县| 永寿县| 鄂托克前旗| 尤溪县| 青州市| 晋宁县| 青阳县| 明水县| 射阳县| 赣榆县| 香港| 天全县| 宜阳县| 九江县| 岢岚县| 册亨县| 敖汉旗| 巴塘县| 休宁县| 新宾| 新化县| 屯留县| 博罗县| 读书| 罗山县| 长寿区| 永寿县| 晴隆县| 西昌市| 庆云县|