基于51單片機的風(fēng)速測量?jì)x設計*
*基金項目:國家自然科學(xué)基金項目(61462015)
作者簡(jiǎn)介:劉熙明(1993—),男貴州畢節人,碩士,助理工程師,主要從事自動(dòng)控制、嵌入式控制、物聯(lián)網(wǎng)、大數據方面研究。
路世揚(1991—),男,貴州畢節人,主要從事智慧礦山和智慧物聯(lián)網(wǎng)技術(shù)方面研究。
引言
風(fēng)速是農業(yè)及工業(yè)生產(chǎn)中重要的氣象觀(guān)測數據,傳統的依靠人為手段去觀(guān)測和采集風(fēng)速的方法并不十分準確,數據采集實(shí)時(shí)性不高,尤其是在惡劣條件下,很難實(shí)現依靠人為手段去觀(guān)測和獲取風(fēng)力數據,利用自動(dòng)化技術(shù)制作自動(dòng)測量風(fēng)速的測量?jì)x器不僅僅是科技進(jìn)步的要求,同時(shí)也是工農業(yè)發(fā)展和生產(chǎn)過(guò)程中的內在需要。
風(fēng)速的測量對于預測與農業(yè)生產(chǎn)、工業(yè)生產(chǎn)息息相關(guān)的天氣變化至關(guān)重要。在臺風(fēng)、地震、海嘯等發(fā)生的時(shí)候,人們無(wú)法實(shí)地觀(guān)測到風(fēng)速數據,只能通過(guò)自動(dòng)氣象站實(shí)現對風(fēng)速的觀(guān)測和采集,預測和規避自然災害,盡可能降低自然災害對人類(lèi)生產(chǎn)活動(dòng)的影響。
目前對于風(fēng)速的觀(guān)測手段有人工觀(guān)察和自動(dòng)氣象站測量?jì)深?lèi),人工觀(guān)察有很多缺點(diǎn)和不足,例如實(shí)時(shí)性差,精度低等,而且無(wú)法克服惡劣的氣候條件。自動(dòng)氣象站則是通過(guò)熱式風(fēng)速傳感器、三杯式風(fēng)速傳感器、光耦感應三杯式傳感器等傳感器來(lái)實(shí)現風(fēng)速測量[1]。
1 系統方案及硬件電路設計
1.1 整體系統方案
整個(gè)系統要能實(shí)時(shí)測量(0.2~30) m/s 范圍內的風(fēng)速,并把所測量到的風(fēng)速實(shí)時(shí)顯示出來(lái)。通過(guò)分析,選用了FS 系列三杯風(fēng)速傳感器作為風(fēng)速傳感器。該傳感器使用24 V 直流電源供電,使用LCD1602 液晶顯示器顯示風(fēng)速,利用微處理器進(jìn)行數據處理[2-3]。整個(gè)系統由風(fēng)速測量模塊、單片機模塊、風(fēng)速顯示模塊、供電模塊組成,整個(gè)系統的硬件框圖如圖1所示。
1.2 電源電路方案
系統電源電路部分需要為單片機最小系統提供+5 V 直流電源,同時(shí)需要為三杯風(fēng)速傳感器提供24 V直流電源,考慮到整個(gè)電路的+5 V部分需求功率較小,且整體功耗均不高的情況,直接使用市場(chǎng)上現有的直流+24 V/+5 V 開(kāi)關(guān)電源作為供電電源,經(jīng)過(guò)測試完全能夠滿(mǎn)足系統需求。
1.3 主控制器設計方案
本系統需要處理的數據不多,運算程度不復雜,使用STM32 系列32 位微控制器會(huì )造成資源浪費,而且STM32 方案外圍電路比較復雜,需要比較精準的電源,這些都將會(huì )造成系統實(shí)用性和性?xún)r(jià)比降低,因此采用8位微控制器STC89C51 單片機作為主控制器即可[4]。
單片機最小系統主要由主芯片、時(shí)鐘發(fā)生電路,復位電路組成,時(shí)鐘發(fā)生電路主要為整個(gè)單片機的運行提供精準的時(shí)鐘信號,使單片機的程序運行不會(huì )出現混亂。
1.4 風(fēng)速測量方案設計
風(fēng)速測量模塊主要實(shí)現對風(fēng)力數據的采樣和輸出。三杯風(fēng)速測量傳感器是一種用于測量風(fēng)速的傳感器,通過(guò)查閱數據手冊可知,該傳感器在有風(fēng)的時(shí)候吹動(dòng)風(fēng)杯帶動(dòng)轉軸轉動(dòng),其傳感器內集成的電路可把風(fēng)速轉換成為0~5 V 的模擬信號輸出,其模擬電壓?jiǎn)纹瑱C無(wú)法直接處理,因此需要在傳感器的信號輸出和單片機輸入之間接入ADC 轉換電路,把傳感器輸出的模擬信號轉換為數字信號,方便單片機處理。從表1 可以看到不同的風(fēng)速對應的風(fēng)級和強度[5-7]。
ADC 轉換電路選用ADC0832 作為轉換芯片,無(wú)需外圍電路,結構簡(jiǎn)單。風(fēng)速變換裝置的風(fēng)速測量最小值Vmin=0.2 m/s,測量最大值Vmax=30 m/s,而其模擬量輸出最小值Umin=0 V,Umax=5 V。
因此風(fēng)速v 和電壓U 之間具有以下對應關(guān)系:
由此可換算出v 和U 之間的函數關(guān)系為:
通過(guò)該式(1)、(2)即可換算出風(fēng)速大小。但是由于傳感器本身需要至少在風(fēng)速為0.2 m/s 的時(shí)候才能開(kāi)始工作,因此上式所計算出的實(shí)際值應該加上0.2 m/s,最終v 和U的關(guān)系見(jiàn)式(3)。
風(fēng)速測量模塊接口電路如圖3 所示,三杯風(fēng)速測量傳感器采用+24 V 直流供電,另外一根為數據線(xiàn),輸出0~+5 V 的模擬量信號,輸出的信號通過(guò)ADC0832模數轉換電路把風(fēng)速傳感器輸出的模擬量變換為數字量,送到單片機進(jìn)行顯示,ADC0832 和單片機之間則使用SPI 總線(xiàn)進(jìn)行通信傳輸風(fēng)速數據。
1.5 顯示電路方案設計
顯示電路在本設計中主要用于顯示風(fēng)速和風(fēng)力等級,所需顯示的數據格式如下:SPEED:XX.XXm/s,wind scale:x。例如,SPEED: 23.5 m/s,wind scale:9,表示當前風(fēng)速是23.5 m/s,風(fēng)力等級為9 級。
利用LCD1602 顯示風(fēng)速,LCD1602 是一種能夠同時(shí)顯示16 個(gè)×2 行字符的液晶顯示器,能顯示的數據格式有:數字,字母,ASCII 字符等等。該液晶通過(guò)三位控制總線(xiàn)和8 位并行數據總線(xiàn)進(jìn)行控制顯示。
如圖4 所示,液晶顯示電路用LCD1602 作為顯示器件,具有電路接口簡(jiǎn)單的特點(diǎn),圖4 中的液晶接口分為電源接口、讀寫(xiě)控制接口、讀寫(xiě)數據接口,八位并行數據總線(xiàn)和單片機的P0 口相連接,而讀寫(xiě)控制線(xiàn)和單片機的P2 口連接?;瑒?dòng)變阻器的作用是調節液晶對比度,便于優(yōu)化顯示效果。
2 軟件程序設計
整個(gè)系統由單片機控制ADC0832 將風(fēng)速傳感器輸出的模擬量變?yōu)閿底至?,然后把數字量換算出相應的數值并發(fā)送到LCD1602 上顯示出來(lái)。因此整個(gè)系統的軟件程序分為系統初始化子程序模塊、ADC 轉換子程序模塊、液晶顯示控制模塊,整個(gè)系統上電之后,單片機先調用初始化函數,完成對液晶屏和ADC0832 的硬件初始化,讓液晶顯示器顯示出相應數據,初始化完畢后,控制ADC0832 完成ADC 轉換并計算出速度,并對風(fēng)速進(jìn)行分級,傳送數據到LCD1602 顯示出來(lái),主程序流程見(jiàn)圖5。
3 系統調試
系統組裝完畢后,需要對軟硬件的各項功能進(jìn)行調試。先進(jìn)行硬件調試,硬件調試完畢后再進(jìn)行軟件調試。
3.1 硬件測試
首先分別對各電路模塊做功能性驗證,第一步是進(jìn)行單片機最小系統的功能調試,硬件焊接完成之后,通過(guò)下載一個(gè)LCD1602 的初始化顯示程序到單片機中觀(guān)察液晶顯示器是否正常顯示字符。燒錄程序后能夠正常顯示字符,說(shuō)明單片機最小系統及液晶顯示模塊能夠正常運行。隨后測量三杯風(fēng)速傳感器的信號輸出,通過(guò)測試,傳感器能正常輸出0~+5 V 模擬信號。之后測試ADC0832 的功能,ADC0832 功能測試是利用一個(gè)電位器產(chǎn)生模擬量輸入,把ADC0832 的驅動(dòng)程序燒錄進(jìn)去,能夠正常讀取電壓值,再將傳感器輸出信號作為ADC083 的輸入,綜合測試能夠采集風(fēng)速傳感器的電壓值并通過(guò)液晶顯示出來(lái)。因此整個(gè)硬件測試基本通過(guò),圖6 是整個(gè)硬件系統組裝完成的電路實(shí)物圖。
3.2軟件調試
因為系統不涉及到精確的時(shí)序控制,且無(wú)需實(shí)現比較復雜的數學(xué)運算,所以使用C 語(yǔ)言編寫(xiě)程序,開(kāi)發(fā)環(huán)境采用Keil。在開(kāi)發(fā)環(huán)境中建立好工程之后,編寫(xiě)代碼,把編譯通過(guò)的代碼通過(guò)USB下載線(xiàn)下載到單片機中即可運行。在整個(gè)系統的各功能模塊子程序測試通過(guò)之后,即可把所有功能模塊組裝在一起,然后根據系統流程圖和設計思想,把整個(gè)系統的軟件按照流程圖和算法指引,逐步調用子程序,完成系統功能。
4 測試與總結
4.1 實(shí)驗結果
為了驗證所設計風(fēng)速采集記錄儀測量風(fēng)速的準確性,在相同環(huán)境下利用標準風(fēng)速測量?jì)x和所設計的風(fēng)速采集儀進(jìn)行對照實(shí)驗,因實(shí)際條件限制,無(wú)法產(chǎn)生14 m/s 以上的大風(fēng),實(shí)驗結果見(jiàn)表2。
4.2 結果討論
從表2 的實(shí)驗結果中可以看出,所設計的風(fēng)速測量?jì)x風(fēng)速測量結果和標準儀器測量結果一致性好,最大誤差為0.71%,具有較高精度,能夠滿(mǎn)足農業(yè)、工業(yè)、生產(chǎn)及生活所需,具有較強實(shí)用價(jià)值。
參考文獻:
[1] 張浩然,肖東岳.基于單片機的風(fēng)能密度測試儀設計[J].電子制作,2018(15):23-24+50.
[2] 吳啟強.超聲波三維風(fēng)速測量系統的設計與實(shí)現[D].南京:東南大學(xué),2019.
[3] 高培嚴,田明,陳銀峰,等.電磁式風(fēng)速儀的設計制作[J].大學(xué)物理實(shí)驗,2018,31(4):73-76.
[4] 陳為星,劉為國.基于STM32的風(fēng)速風(fēng)向測量系統設計[J].傳感器與微系統,2018,37(10):85-88.
[5] 王凱,蔣曙光,吳征艷,等.煤礦井下便攜式智能風(fēng)速測量?jì)x的設計[J].礦山機械,2009,37(14):31-33.
[6] 崔文婷,.基于STM32的風(fēng)機測速儀的設計[J].電子測量技術(shù),2014(8):107-111.
[7] YIN X,LI X,LV J,et al.Design of Hot-bulb Probe Low-Pressure Wind Speed Calibration System[J]. Journal of Physics: Conference Series, 2019(2):022098
(本文來(lái)源于《電子產(chǎn)品世界》雜志2021年4月期)
評論