![物聯(lián)網(wǎng)工程-基于stm32的智能環(huán)境噪音監(jiān)測系統(tǒng)_第1頁](http://file4.renrendoc.com/view/d79fa12fb98271a670b7cd60e14b78bb/d79fa12fb98271a670b7cd60e14b78bb1.gif)
![物聯(lián)網(wǎng)工程-基于stm32的智能環(huán)境噪音監(jiān)測系統(tǒng)_第2頁](http://file4.renrendoc.com/view/d79fa12fb98271a670b7cd60e14b78bb/d79fa12fb98271a670b7cd60e14b78bb2.gif)
![物聯(lián)網(wǎng)工程-基于stm32的智能環(huán)境噪音監(jiān)測系統(tǒng)_第3頁](http://file4.renrendoc.com/view/d79fa12fb98271a670b7cd60e14b78bb/d79fa12fb98271a670b7cd60e14b78bb3.gif)
![物聯(lián)網(wǎng)工程-基于stm32的智能環(huán)境噪音監(jiān)測系統(tǒng)_第4頁](http://file4.renrendoc.com/view/d79fa12fb98271a670b7cd60e14b78bb/d79fa12fb98271a670b7cd60e14b78bb4.gif)
![物聯(lián)網(wǎng)工程-基于stm32的智能環(huán)境噪音監(jiān)測系統(tǒng)_第5頁](http://file4.renrendoc.com/view/d79fa12fb98271a670b7cd60e14b78bb/d79fa12fb98271a670b7cd60e14b78bb5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGE 基于STM32的智能噪音監(jiān)測系統(tǒng)摘要:在國家逐漸發(fā)展壯大的今天,工業(yè)發(fā)展使我國經(jīng)濟快速增長,但也導致了各種在發(fā)展壯大之前沒有被發(fā)現(xiàn)的問題日益浮現(xiàn),噪音污染就是其中之一。環(huán)境噪音會給環(huán)境或周圍人造成不良影響,嚴重的甚至會破壞環(huán)境或給人們的身心健康造成很大的影響,因此我們需要一種簡易的噪音監(jiān)測儀器,可以很方便地監(jiān)測出當前環(huán)境的噪音分貝值是否適合人們生活,從而達到監(jiān)控的目的。為了對環(huán)境噪音進行監(jiān)測,本次畢業(yè)設計選題是對環(huán)境噪音監(jiān)測系統(tǒng),單片機采用的價格成本低、但功能性強大且穩(wěn)定的STM32單片機芯片,用以對聲音進行信號處理后得出當前環(huán)境分貝值。本設計還將增加一個環(huán)境粉塵濃度監(jiān)測功能,用以模擬在工地上使用的揚塵噪聲監(jiān)測設備,將得到的分貝值和環(huán)境PM2.5濃度值顯示在液晶屏中。最終通過藍牙技術,將噪音分貝值和PM2.5濃度值發(fā)送給安卓手機的應用程序中,可以更加便捷地監(jiān)測當前環(huán)境的情況。關鍵詞:噪音監(jiān)測,PM2.5,STM32,藍牙
IntelligentEnvironmentalNoiseMonitoringSystemBasedonSTM32Abstract:Inrecentyears,withthecountryisgraduallydevelopingandexpanding,industrialdevelopmentmakesourcountry'seconomygrowrapidly,butitalsoleadstovariousproblemsthatwerenotdiscoveredbeforethedevelopmentrapidlyofthecountry.Noisepollutionisoneofthem.Ambientnoiseaffectontheenvironmentoraroundpeople,seriousevencandamagetheenvironmentortopeople'sphysicalandmentalhealthcausedgreatinfluence.Therefore,weneedasimplenoisemonitoringinstrument,whichcaneasilydetectwhetherthecurrentenvironmentalnoisedecibelvalueissuitableforpeople'slife,soastoachievethepurposeofmonitoring.Tomonitortheenvironmentalnoise,thegraduationprojecttopicistomonitortheenvironmentalnoisesystem,thesingle-chipmicrocomputerusedlowcost,butpowerfulandstablefunctionofSTM32single-chipmicrocomputerchip,usedforthesoundsignalprocessingtoobtainthecurrentenvironmentdecibelvalue.Thisdesignwillalsoaddanenvironmentaldustconcentrationmonitoringfunction,whichisusedtosimulatethedustnoisemonitoringequipmentusedontheconstructionsite.TheobtaineddecibelvalueandenvironmentalPM2.5concentrationvaluearedisplayedontheLCDscreen.Inaddition,thenoisedecibelvalueandPM2.5concentrationvaluewillbesendtotheandroidphoneappthroughbluetoothtechnology,whichcanmoreeasilymonitorthecurrentenvironment.Keywords:Noisemonitoring,PM2.5,Bluetooth,STM32
目錄255671緒論 165751.11.1研究背景和意義 1267871.1.1噪音監(jiān)測系統(tǒng)的背景分析 1149901.1.2本課題的研究意義 263121.2課題研究方法和內容題研究 246591.2.1研究方法 2316721.2.2研究內容 3183432系統(tǒng)分析 4270252.1系統(tǒng)背景及現(xiàn)狀分析 4217952.2需求分析 4141282.3可行性分析 563153系統(tǒng)總體設計及硬件實現(xiàn) 7152373.1系統(tǒng)總體設計 788383.2系統(tǒng)硬件實現(xiàn) 8200993.2.1STM32單片機模塊 8308463.2.2聲音監(jiān)測模塊 9158483.2.3PM2.5監(jiān)測模塊 9317513.2.4藍牙通信模塊 10197763.2.5液晶顯示屏模塊 11211873.2.6ADC0832模數(shù)轉換模塊 11171243.2.7硬件實現(xiàn)效果 12276414系統(tǒng)軟件設計與實現(xiàn) 13209944.1開發(fā)工具的介紹 13212444.1.1KeiluVision4單片機開發(fā)工具 13291814.1.2AndroidStudio開發(fā)工具 13157684.2軟件設計總體思路 13301114.3硬件控制代碼設計 14324994.3.1Main主控函數(shù) 1422844.3.2AD轉換模塊 1527064.3.3分貝采集傳感器模塊 17129624.3.4粉塵傳感器模塊 19205704.3.5蜂鳴器模塊 2178504.4客戶端APP設計 22168384.4.1客戶端APP總體設計思路 22248284.4.2邏輯流程 2345264.4.3數(shù)據(jù)接收并顯示程序 2373714.5系統(tǒng)實現(xiàn)效果 2628915總結 286646參考文獻: 29609致謝 30PAGE30緒論1.1研究背景和意義噪音監(jiān)測系統(tǒng)的背景分析在科技飛速發(fā)展的21世紀,世界各國的經(jīng)濟情況也以快速的形式發(fā)展起來,人們一邊享受著科技發(fā)達帶來的摩登生活,一邊也要承受著隨它附來的各種問題,如氣候的惡劣變化、溫室效應、全球變暖、各類自然災害等等,其中,環(huán)境噪音問題是我們如今所不能再回避的問題,尤其是生活在城市中的人們或近于施工處所的人們。環(huán)境對我們生活中的方方面面都有著巨大的影響,而環(huán)境因素又是隨著環(huán)境時時刻刻變化的,聲音本是無害的,甚至可以是悅耳的,但是過大嘈雜的聲音卻有時候會使人感到不舒適,即環(huán)境噪音,它會引起人們煩躁,如果音量過大或音調過高的高噪聲環(huán)境,則可能危害到人們的生理和心理上的健康。其造成的危害可能是:1.對聽力造成損害2.對視力造成損害3.對人們的心血管造成損害4.對神經(jīng)系統(tǒng)造成損害,即容易憤怒、激動甚至失去理智5.對睡眠造成影響,即容易疲倦、睡眠不足等等。因此對環(huán)境噪音的監(jiān)測與控制在對人的身體健康和身心健康方面有著十分重要的作用,而加強對環(huán)境噪音的檢測與控制則顯得尤其重要。百度百科[z]百度百科[z].\t"C:/Users/Administrator/Desktop/%E3%80%8A%E5%9F%BA%E4%BA%8ESTM32%E7%9A%84%E6%99%BA%E8%83%BD%E5%99%AA%E9%9F%B3%E7%9B%91%E6%B5%8B%E7%B3%BB%E7%BB%9F%E3%80%8BPaperTime%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/sentence_detail/_blank"/p-161811482.html我國對噪音污染的關注開始于二十世紀70年代,1979年,第一期噪聲訓練班被舉辦,明確了培養(yǎng)噪聲監(jiān)測人員的決定,噪聲監(jiān)控從簡單的噪音監(jiān)測往多功能、便捷式、小型化發(fā)展,直至現(xiàn)在,噪音監(jiān)控技術現(xiàn)在發(fā)展的已經(jīng)相當成熟,并且衍生出多種功能。工地揚塵噪聲監(jiān)測設備就是這么一款多功能、應用性強的環(huán)境保護設備,它不僅能做到噪聲的監(jiān)測,還可監(jiān)控工地揚塵濃度以及溫濕度監(jiān)控和圖像抓拍與錄制。不僅解決了民眾對施工工地質疑的問題,也為工地環(huán)境奠定了良好自查基礎。隨著時代的發(fā)展,工業(yè)的發(fā)展規(guī)模也逐步擴大,因此很多為了發(fā)展而建造的場所如高樓、立交、地鐵等的數(shù)量也逐漸增多,因此噪音防治迫在眉睫,而要進行防治,則必須從技術、經(jīng)濟和效果等方面進行綜合權衡,具體問題具體分析。本文就是一款針對環(huán)境分貝值簡易測量設計方案,用于監(jiān)測當前環(huán)境分貝值是是否達到人們適宜居住的一個健康環(huán)境。本課題的研究意義隨著國家政策的引導,城市的發(fā)展、交通、建筑工業(yè)和社會生活的規(guī)模不斷擴大,就很容易導致各種污染問題叢生,環(huán)境噪聲污染即是其中之一,它會對人體構成許多影響,如生理或心理上的,說它是人們最容易直觀感受到的自然環(huán)境污染因素之一的原因是不同人類活動對環(huán)境分貝的要求也不盡相同。長期的處于噪音環(huán)境中生活容易導致人們會過激行動,甚至引發(fā)一些群發(fā)性事件從而影響社會的和諧和穩(wěn)定。因此我們應該對聲源進行控制和整治,而噪聲監(jiān)控系統(tǒng)則是助我們對環(huán)境噪聲污染進行監(jiān)控和改善的有力幫手,通過從噪聲監(jiān)控系統(tǒng)中得回的數(shù)據(jù),我們可以知道當前環(huán)境質量是否良好,從而做出是否改變或改善當前環(huán)境使得人們生活更舒適的決策。本課題研究實現(xiàn)一個對噪音和空氣質量值進行檢測的系統(tǒng),它具備監(jiān)控當前環(huán)境的分貝噪音值和空氣PM2.5濃度值功能,用于提示當前生活環(huán)境是否舒適,同時滿足攜帶方便、價格低廉、操作簡便等方法,希望能夠對地球的環(huán)境健康保護有一定的幫助。課題研究方法和內容題研究研究方法本論文在編寫過程中主要采用了以下的研究方法:文獻研究法:通過網(wǎng)絡、查閱書籍和相關的文獻來取得一些對于課題有用的資料和前人設計的結果,從中獲取其中有用的信息,論證其可行性,從而科學、客觀、全面地了解所要研究的問題,找出問題的本質屬性,更高效的尋找解決問題的辦法。實驗法:通過對問題的研究和分析,從已得出的結論和經(jīng)驗出發(fā),形成一種新的假設,再將形成的假設計劃出一個可控的實驗方法,通過多次的科學實驗驗證,觀察自變量在變化過程中因變量的變化,從而的得出自變量和因變量的關系,最后統(tǒng)計得出假設是否成立。研究內容本論文總共分為五個部分,每個部分內容安排如下::緒論。主要闡述本論文的研究內容和背景的,以及講述研究過程中使用的方法。:系統(tǒng)分析。主要對系統(tǒng)進行需求分析,從經(jīng)濟,技術等方面對噪音檢測系統(tǒng)進行可行性分析。:系統(tǒng)總體設計及硬件環(huán)境搭建設計。主要介紹硬件模塊的描述及功能,邏輯流程,模塊設計以及硬件模塊的設計思路。:系統(tǒng)軟件功能設計與實現(xiàn)。主要介紹系統(tǒng)的全部模塊的實現(xiàn)代碼以及邏輯流程和APP端是如何實現(xiàn)從而得出運行效果。:總結。主要對系統(tǒng)所實現(xiàn)的效果進行總結,并對系統(tǒng)存在的問題和可改進之處作出說明。最后是參考文獻以及致謝內容。
系統(tǒng)分析隨著噪音污染日益對人們的生活造成困擾,在經(jīng)過對相關資料的收集整理之后,對智能噪音監(jiān)測系統(tǒng)的現(xiàn)狀以及系統(tǒng)的需求進行分析,包括對智能噪音監(jiān)測系統(tǒng)的用戶需求和功能需求,和對智能噪音監(jiān)測系統(tǒng)的完成進行可行性的分析。系統(tǒng)背景及現(xiàn)狀分析隨著社會經(jīng)濟的發(fā)展,各大城市的建設發(fā)展進程加快,城市交通的擴建、人口基數(shù)的增大、各類施工項目持續(xù)增長等造成的噪音污染已然成為當今社會環(huán)境污染的四大污染之一,人們對噪音污染的看法與關注度也越來越高,其對人類健康的危害也引起了極大關注。因此為了減少這種污染帶來的危害,人們便想出通過了解周圍環(huán)境的聲音的分貝值來知道當前環(huán)境的聲音是否屬于噪音污染,檢測噪音的儀器便應運而生。噪音檢測儀器從最初的指針式人工讀數(shù)聲級計發(fā)展到數(shù)字式聲級計,再到后來的能夠自動采集、存貯、處理數(shù)據(jù)等功能的自動監(jiān)測環(huán)境噪音的儀器,到現(xiàn)在的小型化、便攜式、多功能使用儀器,環(huán)境噪音監(jiān)測技術發(fā)展的十分迅速也越加成熟。本設計擬采用聲音傳感器LM386作為分貝采集傳感器。它可以將采集到的聲音進行放大,再通過AD轉換電路對信號進行處理,從模擬信號轉換成數(shù)字信號,再通過藍牙連接手機并在APP中顯示出具體分貝值。需求分析用戶需求對于智能噪音檢測系統(tǒng),用戶需求基本分析如下:設備:低功耗、低成本方、操作簡單且便于攜帶。檢測功能:系統(tǒng)在正常情況下能測出當前環(huán)境分貝值和PM2.5濃度值。報警:一旦PM2.5濃度值高于設置的報警值馬上點亮LED燈與蜂鳴器報警提示用戶。手機應用程序:能實時查看監(jiān)測系統(tǒng)的測量出的噪音值和PM2.5濃度值,并且可以通過手機應用修改PM2.5報警閾值。功能需求系統(tǒng)要實現(xiàn)的功能內容包括:環(huán)境聲音分貝值的測量、環(huán)境中PM2.5濃度值的測量、模數(shù)轉換的處理、PM2.5超標警報,與手機數(shù)據(jù)共享等功能。為了實現(xiàn)以上功能,本次設計將采用STM32F103C8T6單片機作為控制核心,其具有低功耗、低成本、微型化、便于操控,便于攜帶且性能穩(wěn)定等優(yōu)點,用以測量出分貝值、PM2.5值,超標報警,與手機數(shù)據(jù)共享的基本功能。采用聲音傳感器LM386作為分貝采集傳感器,GP2Y1010AU0F粉塵傳感器作為PM2.5濃度值測量傳感器,實現(xiàn)將分貝和PM2.5的模擬量以電流形式輸出,再用模數(shù)轉換器將兩個傳感器輸出的電流信號變成能與單片機正常輸入輸出的電平??尚行苑治鼋?jīng)濟可行性分析隨著人們對環(huán)境污染的關注度增高,噪音污染問題也越被人們所注意,因此用來監(jiān)測噪音分貝的儀器也層出不窮且功能越發(fā)多樣化地被應用于社會生活中,目前復雜的多功能噪音監(jiān)測系統(tǒng)--噪聲揚塵監(jiān)測系統(tǒng)被廣泛應用于工地施工監(jiān)測上,在普通生活中也隨處可見簡易的噪音監(jiān)測系統(tǒng)的使用,如公園里,靠近馬路的小區(qū)中,需要環(huán)境安靜的圖書館中等等。當下,市面上使用的智能噪音監(jiān)測系統(tǒng)功能性多,且針對場所較為專業(yè),用在家用有小題大做。本系統(tǒng)設計結合單片機,降低成本實現(xiàn)資源利用最大化,每個家庭都能買得起。因此本次設計的智能噪音監(jiān)測系統(tǒng)則是生活中便于人們操作使用的、成本也較為低廉的STM32單片機和傳感器所組成,為普通生活中測量環(huán)境噪音和PM2.5濃度值提供便利。技術可行性分析以STM32F103C8T6單片機和分貝采集傳感器、粉塵采集傳感器為核心設計出的噪音監(jiān)測系統(tǒng)能夠嚴格控制系統(tǒng)的體積大小,模塊價格,以及單片機的耗能和穩(wěn)定性,使用傳感器來實現(xiàn)對環(huán)境的噪音和粉塵濃度檢測,邏輯電路簡單易懂,編程難度也不算高,還能夠依照實際的使用情況對系統(tǒng)的部分功能做出改進,如加入溫濕度檢測模塊等。綜上敘述再結合現(xiàn)實中已經(jīng)實現(xiàn)過的案例系統(tǒng)可知,本次設計方案以STM32F103C8T6和分貝采集傳感器、粉塵采集傳感器為核心設計出噪音監(jiān)測系統(tǒng)是可行的。
系統(tǒng)總體設計及硬件實現(xiàn)系統(tǒng)總體設計經(jīng)過前面系統(tǒng)分析,初步確定系統(tǒng)需要實現(xiàn)噪音和PM2.5監(jiān)測功能以及PM2.5超值報警功能,系統(tǒng)組成分為硬件和軟件部分,構成如下:1、硬件部分STM32F103C8T6單片機分貝采集傳感器GP2Y1010AU0F粉塵傳感器MLT-BT054.0藍牙模塊和串口2、軟件部分STM32的初始化;數(shù)據(jù)的采集、發(fā)送、接收;LCD顯示;客戶端APP顯示等。系統(tǒng)總體組成如圖3-1所示,其中傳感器和STM32通過GPIO口通信并將數(shù)據(jù)輸出到LCD1602中顯示出來,從而實現(xiàn)實時監(jiān)測當前環(huán)境中噪音值、環(huán)境PM2.5濃度值;也可以通過藍牙MLT-BT054.0與單片中的串口相接,從而實現(xiàn)與手機藍牙通信,實現(xiàn)數(shù)據(jù)實時同步;用戶可以手動設置報警閥值,當環(huán)境PM2.5濃度值超過閥值時蜂鳴器產(chǎn)生警報。藍牙分貝采集傳感器藍牙分貝采集傳感器數(shù)據(jù)GPIOLCD顯示屏手機客戶端STM32單片機數(shù)據(jù)GPIOLCD顯示屏手機客戶端STM32單片機粉塵粉塵傳感器GPIOGPIO圖3-1系統(tǒng)總體組成框圖系統(tǒng)硬件實現(xiàn)硬件部份包含功能模塊分別是:STM32單片機、LM386分貝測量傳感器、GP2Y1010AU0F粉塵傳感器、1286LCD顯示器、蜂鳴器、無線藍牙收發(fā)器。將各個硬件模塊線連成整一個硬件設計部分。STM32單片機模塊STM32單片機是由美國意發(fā)半導體公司研發(fā)的基于ARMCortex?-M處理器的微控制器芯片,它的功能比傳統(tǒng)8位單片機更加完善和穩(wěn)定,不僅可以使用寄存器進行編程,還可以使用官方提供的庫文件進行編程,集高性能、實時功能、數(shù)字信號處理、低功耗與低電壓操作等特性于一身,同時還保持了集成度高和易于開發(fā)的特點。百度百科[z].\t"C:/Users/Administrator/Desktop/%E3%80%8A%E5%9F%BA%E4%BA%8ESTM32%E7%9A%84%E6%99%BA%E8%83%BD%E5%99%AA%E9%9F%B3%E7%9B%91%E6%B5%8B%E7%B3%BB%E7%BB%9F%E3%80%8BPaperTime%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/sentence_detail/_blank"/article/585701.html本課題的主控芯片使用到的STM32F103C8T6微控制器就是一款典型的STM32單片機,它采用了Cortex-M3內核,使用的RISC精簡指令集擁有更高的代碼運行效率和更大的Flash,CPU最高速度可達72MHz,且可兼容市面上所有的ARM工具和軟件。主控模塊跟其他模塊的接線電路如下所示:圖3-2主控芯片電路圖聲音監(jiān)測模塊聲音監(jiān)測模塊采用了LM386聲音傳感器,用于周圍環(huán)境聲音進行采集,它是一種音頻集成功率放大器,可以對采集到的微小聲音進行集成放大且功耗低。聲音采集傳感器的引腳3與單片機P30引腳(數(shù)據(jù)接收RX)、引腳2與P31引腳(數(shù)據(jù)發(fā)送TX)相連,解調后的音頻信號經(jīng)濾波后進入LM386的引腳3,經(jīng)過偏置電路再進入AD轉換電路轉換后將模擬量顯示在LCD屏上。圖3-3分貝測量模塊電路圖PM2.5監(jiān)測模塊PM2.5監(jiān)測模塊使用的是型號為GP2Y1010AU0F的粉塵傳感器,用于檢測周圍環(huán)境粉塵濃度值,中間有小孔可讓空氣自由流過,紅外光發(fā)射二極管和光電晶體管斜置于其內部,通過檢測經(jīng)過空氣中灰塵折射過后的光線來判斷灰塵的含量。圖3-4粉塵傳感器實物圖該模塊電源正極接單片機P20引腳端口,負極接地,驅使傳感器紅外二極管及LED開始工作。P20端口是輸出端,用于檢測粉塵濃度電壓模擬量,LED端是輸入端,用于串行數(shù)據(jù)輸入,從輸出電壓模擬量的大小來判定環(huán)境的PM2.5濃度值。圖3-5粉塵傳感器電路圖藍牙通信模塊為了使單片機硬件與手機APP客戶端之間進行通信,藍牙模塊采用了MLT-BT054.0芯片,它可支持與蘋果程序端或安卓程序端通信或主從一體。用戶可以通過串口和藍牙芯片進行通信,串口使用TX,RX兩根信號線對接入單片機P21(串行輸入口)、P22(串行輸出口)接口。圖3-6藍牙模塊電路圖在單片機引腳中:SIMRX(ReceiveData)是P21,SIMTX(TransmitData)是P22。藍牙串口協(xié)議中:RXD引腳為接收數(shù)據(jù),TXD引腳為發(fā)送數(shù)據(jù)。所以用用藍牙端的數(shù)據(jù)輸出,輸出到單片機的數(shù)據(jù)接收處,反之亦然來完成藍牙端口跟單片機端之間的直接數(shù)據(jù)傳輸。液晶顯示屏模塊圖3-7LCD液晶顯示屏模塊電路圖本次設計采用的是點陣式圖形液晶顯示屏12864LCD,它主要由行或列驅動器及128×64?全點陣液晶顯示器組成。使用通信模式為串行通信,與單片機P5-9,P12-15引腳相連,可完成圖形顯示,也可通過模塊內部的RAM提供64×16的顯示空間,顯示4行8字(32個漢字)或64個ASCII碼字符。ADC0832模數(shù)轉換模塊模擬信號只有轉化為數(shù)字信號后才能使用軟件進行處理,而信號的轉化得借助轉換器來實現(xiàn),本設計所使用的轉換器為ADC0832,CS端為輸入端,未工作時處于高電平狀態(tài),時鐘信號(CLK)和數(shù)字地/數(shù)字信號輸出(DI/O)可任意電平,當配置位的2位數(shù)據(jù)為1、0時,CH0進行單通道轉換。ADC0832與單片機的接口分別是CS、CLK、DO、DI。由于DO與DI端與單片機的接口是雙向的,在通信時不能同時有效,所以將DO和DI可并聯(lián)在一根數(shù)據(jù)線上使用,即電路圖中整合為DI/O接口。圖3-8ADC0832電路圖硬件實現(xiàn)效果經(jīng)過努力,最終硬件實現(xiàn)效果如下所示:圖3-9硬件實現(xiàn)效果圖
系統(tǒng)軟件設計與實現(xiàn)開發(fā)工具的介紹KeiluVision4單片機開發(fā)工具KeilC51開發(fā)工具旨在解決嵌入式軟件開發(fā)商面臨的復雜問題,它提供了包括標準的C編譯器、宏匯編器、調試器、鏈接器、存儲器和一個功能強大的仿真器等在內的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μVisionIDE)將這些部分組合在一起。百度百科[z].\t"C:/Users/Administrator/Desktop/%E3%80%8A%E5%9F%BA%E4%BA%8ESTM32%E7%9A%84%E6%99%BA%E8%83%BD%E5%99%AA%E9%9F%B3%E7%9B%91%E6%B5%8B%E7%B3%BB%E7%BB%9F%E3%80%8BPaperTime%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/sentence_detail/_blank"/item/keil/4082184?ivk_sa=1本設計采用KeilμVision4C語言軟件開發(fā)系統(tǒng),可使用多個窗口進行代碼編程,使得代碼環(huán)境視覺上整潔,運行上也更為高效,具有的RealViewMDK集成開發(fā)環(huán)境,使得編譯器、調試工具與ARM完美匹配。AndroidStudio開發(fā)工具Android從面世以來已經(jīng)發(fā)布了二十幾個版本,Android系統(tǒng)的蓬勃發(fā)展,離不開手機廠商、開發(fā)者、用戶,其中,開發(fā)者扮演著不可或缺的角色,AndroidStudio則是他們用來進行軟件開發(fā)的工具。它是一個Android集成開發(fā)工具EclipseADT,提供了集成的開發(fā)工具用于開發(fā)和調試。在Java語言集成環(huán)境(IDEA)的基礎上,它具備的功能有:支持基于Gradle的構建;重構和快速修復;支持ProGuard和應用簽名;可基于模板來生成Android應用設計和組件;以及可以對UI控件進行操作和效果預覽的布局編輯器。軟件設計總體思路以STM32單片機開發(fā)板為控制核心,通過函數(shù)初始化,包括串口,引腳等的初始化,傳感器函數(shù)的編寫來實現(xiàn)應該呈現(xiàn)的功能,包括模數(shù)轉換子程序、IIC串口總線子程序、PM檢測子程序、噪音檢測子程序、LCD顯示子程序、警報子程序等。單片機端:實現(xiàn)串口收發(fā)功能噪音值經(jīng)過AD轉換由程序輸出分貝值功能PM2.5濃度檢測功能LCD顯示屏顯示功能APP端:接收單片機傳送的數(shù)據(jù)功能粉塵濃度檢測閾值可調功能硬件控制代碼設計Main主控函數(shù)Main主控函數(shù)主要完成以下功能:完成定時器、計數(shù)器、中斷系統(tǒng)、串口以及按鍵的初始化,對功能實現(xiàn)所需要使用到的函數(shù)進行配置調用,包括:LCD顯示、粉塵傳感器初始化和報警、聲音傳感器讀取數(shù)據(jù),并循環(huán)工作和顯示子程序所得數(shù)據(jù)。主函數(shù)代碼如下:#include"head.h"floatg_MeasureDitan=0.0;intmain(void){ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//配置中斷向量表 delay_init(); Key_GPIO_Config(); LED_GPIO_Config(); USART1_Config(); USART3_Config(); AppInitKey();GPIO_Configuration_12864LCD(); Initial_LCD_ST7684(); TIM4_Configuration(); InitGP2Y1010AU0F(); StartBeep(); ReadInitPassDatae();g_MsgPage=1; while(1){DisplayWindow(); delay_ms(10);}}AD轉換模塊ADC0832共有18個通道,可測量16個外部和2個內部信號源,各通道的A/D轉換的模式執(zhí)行可以是單次、連續(xù)、掃描或間斷,模式執(zhí)行結果可以左、右對齊方式存儲在16位數(shù)據(jù)寄存器中。噪聲的采集采用聲音傳感器LM386,它是一種音頻集成功率放大器,輸出的是模擬信號,同樣粉塵傳感器輸出也是模擬信號,因此需要使用轉換電路將模擬信號轉換為數(shù)字信號,即使用A/D模數(shù)轉換器。聲音傳感器將環(huán)境中的信號采集后,經(jīng)過放大電路,收集到的微小的噪音信號值放大,粉塵傳感器則是將采集到的空氣中灰塵經(jīng)過折射光線計算出模擬量值,兩者再通過ADC0832轉換電路,對信號進行放大、量化,再通過單片機的內部程序將得到的分貝值和空氣PM2.5濃度值輸出到LCD液晶顯示屏。輸入通道控制字輸入通道控制字產(chǎn)生時鐘信號開始使能芯片讀取2字節(jié)數(shù)據(jù)字節(jié)數(shù)據(jù)校驗將值傳入指定寄存器結束圖4-1ADC0832數(shù)據(jù)讀取程序流程圖其中A/D轉換電路通道選擇代碼實現(xiàn)如下://ADC0832讀取函數(shù)讀取ADC0832轉換值函數(shù)//入口函數(shù):channel選擇通道ucharADC0832_Read(ucharchannel){ uchari=0; uchartmp=0; //高字節(jié)數(shù)據(jù) uchartmp1=0; //低字節(jié)數(shù)據(jù) //開始標志位 ADC0832_DODI=1; _nop_();_nop_(); ADC0832_CS=0; //片選信號 ADC0832_CLK=1; _nop_();_nop_(); ADC0832_CLK=0; _nop_();_nop_(); //選擇通道 switch(channel) { case0: //通道0 ADC0832_DODI=1; //SGL=1; _nop_();_nop_(); ADC0832_CLK=1; _nop_();_nop_(); ADC0832_CLK=0; _nop_();_nop_(); ADC0832_DODI=0; //ODD=0; _nop_();_nop_(); ADC0832_CLK=1; _nop_();_nop_(); ADC0832_CLK=0; _nop_();_nop_(); break; case1: //通道1 ADC0832_DODI=1; //SGL=1; _nop_();_nop_(); ADC0832_CLK=1; _nop_();_nop_(); ADC0832_CLK=0; _nop_();_nop_(); ADC0832_DODI=1; //ODD=1; _nop_();_nop_(); ADC0832_CLK=1; _nop_();_nop_(); ADC0832_CLK=0; _nop_();_nop_(); break; default: break; }分貝采集傳感器模塊分貝采集的流程大致分為5步:獲取聲音的數(shù)據(jù),通過MIC(麥克風)檢測電壓,對輸出電平進行放大后經(jīng)過AD采樣和量化得到聲音的波形數(shù)據(jù),為時域離散信號。進行時域變換,使用頻譜,把時域信號轉換為頻域信號,可使用FFT/DFT算法。分貝計算,聲音分貝值是由各個頻率分量的聲音分量組成的,通過劃分倍頻程把頻域信號絕對量轉換為相對量(db)。計算dba,引用A聲級計量聲壓,讓測量得到的分貝值值更符合人體主觀感覺。因為人耳對不同頻率的聲音的敏感度不同,如當聲音的分貝值相同時,3kHz比300Hz聽起來更響亮一些。顯示噪音值,把經(jīng)過聲級處理后得到的噪音值通過程序在液晶顯示屏顯示出來。頻域信號頻域信號分貝計算波形數(shù)據(jù)聲音AD采樣和量化頻譜處理計算出的分貝值噪音值A率加權后計算dbaA級計權下噪音分貝值圖4-2分貝采集傳感器采集流程圖AD信號的采集在定時器中斷中進行,每采集100次取一次平均值,通過調用已經(jīng)寫好的顯示函數(shù)顯示在LCD顯示屏中,顯示的噪音值為全局變量,當每次采集并取平均值后,噪音值會被重新更新并顯示出來。主要控制代碼實現(xiàn)如下://計算分貝值voiddb_count(){ ad=ad/100; //采集100次ad值后計算平均值,均值濾波 V=VCC*ad/255.0; //計算所測電壓,V/ad=VCC/255 low_V=(low_V+V)/2; //與上一次測量電壓值求平均值 low_V=V; //記錄分貝電壓值 db=35+V/4.0; //根據(jù)電壓對應計算分貝值}voidmain(){ uinti=0; if(key_jian==0) { delayms(100); if(key_jian==0) AT24C02_write_date(0,120);//存儲分貝值限值 } db_up=AT24C02_read_date(0); LCD_init(); while(1) { scan(); if(set_f==0) { i++; ad+=ADC0832_read(0);//讀取AD值,并累加記錄到ad上 if(i>=100) { i=0; db_count(); display(); ad=0; } delay_n40us(80); } else display2(); }}粉塵傳感器模塊圖4-3粉塵傳感器內部原理圖從原理圖可以看到,粉塵和煙霧粒子從圓孔進入,通過空氣傳導設備使進入圓孔的空氣流通,紅外發(fā)光二極管和光電晶體管斜置傳感器內部,發(fā)光二極管發(fā)射光線,晶體管接受二極管發(fā)射出來的光,引起電壓的變化,電壓的變化經(jīng)過放大電路進行放大處理,通過A/D數(shù)模轉換電路將模擬量轉換成數(shù)字量,再通過單片機內部程序使得LCD屏幕顯示檢測到的空氣粉塵濃度值。模塊主要涉及三個函數(shù):傳感器初始化函數(shù)、濃度值計算函數(shù)、取均值函數(shù)。傳感器初始化函數(shù):使用串行通信,對紅外二極管進行配置,GP2Y_Low打開紅外開關,以及調用配置好的ADC初始化函數(shù)。濃度值計算函數(shù):通過ADC函數(shù)采集到的電壓值經(jīng)過計算得到粉塵濃度值g_GP2yNumber。取均值函數(shù):由于采樣點只有圓孔內部一處,為了使計算出的濃度值產(chǎn)生的誤差較小,對該采樣點進行多次采集再取均值,即計算循環(huán)times次后得到的濃度值的均值g_GP2yNumber=pm_val/times。粉塵傳感器相關控制函數(shù)如下:voidInitGP2Y1010AU0F(void)//傳感器初始化{ GPIO_InitTypeDefGPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); //GPIOA時鐘 GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0; //PA1--二極管控制 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOB,&GPIO_InitStructure); GPIO_SetBits(GPIOB,GPIO_Pin_0); GP2Y_Low; ADC_Configuration(); }floatTestGP2Y1010AU0F(void){ uint16_tAD_PM; floatpm; GP2Y_High;//關閉紅外二極管 delay_us(280); AD_PM=Get_Adc();//采樣,讀取AD值 delay_us(40); GP2Y_Low;//打開 delay_us(9680); pm=0.17*AD_PM-0.1; g_GP2yNumber=pm-50; returng_GP2yNumber;}voidGet_GP2Y_Average(u8times){uint32_tpm_val=0;uint8_tt; for(t=0;t<times;t++){pm_val+=TestGP2Y1010AU0F();delay_ms(5);}g_GP2yNumber=pm_val/times;}蜂鳴器模塊蜂鳴器模塊與STM32103單片機的P19引腳和蜂鳴器的b級相接,用于報警處理。當P19輸出1蜂鳴器不工作,P19輸出0時蜂鳴器開始工作。即當采集到環(huán)境PM2.5濃度值大于設置好的值時,蜂鳴器報警,單片機采用三極管來放大電流驅動蜂鳴器工作,是因為蜂鳴器工作電流較大,I/O口無法直接驅動。圖4-4蜂鳴器模塊電路圖蜂鳴器控制代碼如下。當采集到環(huán)境PM2.5濃度值大于預設值的時候就會調用該函數(shù)啟動蜂鳴器發(fā)聲。voidBeep(){ if(g_GP2yNumber<=AD_PM) beep1=1; elsebeep1=0;}客戶端APP設計客戶端APP總體設計思路設計開發(fā)工具:(1)androidstudio開發(fā)軟件 (2)計算機 (3)安卓手機按照總體設計思路,客戶端APP需要實現(xiàn)一個簡單的藍牙數(shù)據(jù)接收客戶端,藍牙設備的啟用以及其搜索功能均要開啟,為軟件接受外界信號作一個必要準備。在系統(tǒng)內設計一個簡單的數(shù)據(jù)顯示功能,將在單片機上得到的數(shù)據(jù),通過藍牙通信傳輸數(shù)據(jù)到手機APP端并顯示出來,可設置單片機上PM2.5濃度閾值同步。具體可分為以下幾部分:1.硬件物理訪問地址顯示與單片機上藍牙模塊連接的MAC地址。2.噪音值顯示當前程序發(fā)送過來的噪音值數(shù)據(jù)。3.PM2.5值顯示當前程序發(fā)送過來的PM2.5數(shù)據(jù)。設置上限值系統(tǒng)設置上限值為80ug/m3,可手動修改,單片機掉電保存。邏輯流程圖4-5手機端軟件邏輯流程圖數(shù)據(jù)接收并顯示程序先檢測設備是否支持藍牙,支持后檢查藍牙是否開啟,當用戶沒有開啟藍牙時提示用戶是否開啟藍牙,開啟藍牙后對設備進行掃描,以連接到所需單片機上的藍牙,掃描有周期限制,到達時間后不管是否掃除新設備都停止掃描,添加初始參數(shù)unknow-device,自動獲取設備地址,但無法連接設備,用戶設置設備為R.id.device_name,通過掃描得到,MAC地址即單片機藍牙的數(shù)據(jù)鏈路地址。設置藍牙初始配置代碼如下:檢查是否支持藍牙設備,并咨詢用戶是否打開藍牙//檢查來確定設備上是否支持BLUEif(!getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE)){Toast.makeText(this,R.string.ble_not_supported,Toast.LENGTH_SHORT).show();finish();}//藍牙適配器通過藍牙管理器初始化finalBluetoothManagerbluetoothManager=(BluetoothManager)getSystemService(Context.BLUETOOTH_SERVICE);mBluetoothAdapter=bluetoothManager.getAdapter();if(mBluetoothAdapter==null){Toast.makeText(this,R.string.error_bluetooth_not_supported,Toast.LENGTH_SHORT).show();finish();return;}if(!mBluetoothAdapter.isEnabled()){IntentmIntent=newIntent(BluetoothAdapter.ACTION_REQUEST_ENABLE);startActivityForResult(mIntent,1);//通過startActivityForResult()方法發(fā)起的Intent將會在onActivityResult()回調方法中獲取用戶的選擇,開啟,收到RESULT_OK,拒絕,則RESULT_CANCELED}設備掃描,檢測創(chuàng)建的用戶mLeScanCallback是否被掃描出來,掃描結果為false,周期掃描后停止,為true,調用方法打開菜單。privatevoidscanLeDevice(finalbooleanenable){if(enable){//在預先定義的掃描周期后停止掃描mHandler.postDelayed(newRunnable(){@Overridepublicvoidrun(){mScanning=false;mBluetoothAdapter.stopLeScan(mLeScanCallback);invalidateOptionsMenu();}},SCAN_PERIOD);mScanning=true;mBluetoothAdapter.startLeScan(mLeScanCallback);}else{mScanning=false;mBluetoothAdapter.stopLeScan(mLeScanCallback);}invalidateOptionsMenu();}獲取藍牙傳輸過來的設備參數(shù),使用getView()方法,傳入一個convertView的參數(shù),返回的TextView就是單片機中藍牙的數(shù)據(jù),以及設備初始參數(shù)unknow-device配置。classDeviceListAdapterextendsBaseAdapter{
@Override//獲取實例,單片機藍牙傳輸
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){
if(convertView==null){
convertView=LayoutInflater.from(DeviceScanActivity.this).inflate(
R.layout.listitem_device,null);
viewHolder=newViewHolder();
viewHolder.tv_devName=(TextView)convertView
.findViewById(R.id.device_name);
viewHolder.tv_devAddress=(TextView)convertView
.findViewById(R.id.device_address);
convertView.setTag(viewHolder);
}else{
convertView.getTag();
}//添加初始參數(shù)
BluetoothDevicedevice=mBleArray.get(position);
StringdevName=device.getName();
if(devName!=null&&devName.length()>0){
viewHolder.tv_devName.setText(devName);
}else{
viewHolder.tv_devName.setText("unknow-device");
}
viewHolder.tv_devAddress.setText(device.getAddress());
returnconvertView;
}
}系統(tǒng)實現(xiàn)效果打開手機APP,打開藍牙搜索功能,搜索并且連接上單片機。圖4-6手機APP連接單片
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文旅項目可行性研究報告
- 2020-2025年中國原子吸收光譜儀行業(yè)市場調查研究及投資前景預測報告
- 上市企業(yè)可行性研究報告
- 水利項目評估報告范文
- 社會團體成立申請書
- 廣東奧飛金發(fā)數(shù)據(jù)中心新建工程建設項目建設項目環(huán)境影響報告表
- 2020-2025年中國沿海運輸行業(yè)投資潛力分析及行業(yè)發(fā)展趨勢報告
- 2025年中國乙烯利原藥行業(yè)市場深度分析及發(fā)展前景預測報告
- 中國工業(yè)機械橡膠項目投資可行性研究報告
- 2025年中國鐵路貨車轉向架行業(yè)市場調研及投資戰(zhàn)略規(guī)劃報告
- GB/T 9386-2008計算機軟件測試文檔編制規(guī)范
- 2023年青島遠洋船員職業(yè)學院高職單招(數(shù)學)試題庫含答案解析
- 2023年衛(wèi)生院崗位大練兵大比武競賽活動實施方案
- 2023年浙江省初中學生化學競賽初賽試卷
- 遼海版小學五年級美術下冊全套課件
- 專題7閱讀理解之文化藝術類-備戰(zhàn)205高考英語6年真題分項版精解精析原卷
- 真空泵日常操作標準作業(yè)指導書
- 2022年廣東省10月自考藝術概論00504試題及答案
- 中國石油大學(華東)-朱超-答辯通用PPT模板
- 隧道二襯承包合同參考
- 空氣能熱泵系統(tǒng)
評論
0/150
提交評論