《基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)》7400字【論文】_第1頁
《基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)》7400字【論文】_第2頁
《基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)》7400字【論文】_第3頁
《基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)》7400字【論文】_第4頁
《基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)》7400字【論文】_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

論文題目(仿宋體五號(hào))1

摘要:在社會(huì)經(jīng)濟(jì)的推動(dòng)下空氣污染問題日漸增多,空氣污染不但會(huì)造成不良天氣等一系列問題,更會(huì)危害著廣大人民的健康,為了使人們能夠正確了解空氣質(zhì)量的有關(guān)參數(shù),可以設(shè)計(jì)一款空氣質(zhì)量檢測(cè)儀,方便人們可以隨時(shí)檢測(cè)室內(nèi)空氣質(zhì)量。針對(duì)空氣質(zhì)量問題本文以STC89C52單片微式計(jì)算機(jī)為核心芯片設(shè)計(jì)了空氣質(zhì)量檢測(cè)儀,并利用GP2Y1010AU0F粉塵感應(yīng)器采集室內(nèi)空氣中的PM2.5含量,隨后再經(jīng)過模數(shù)轉(zhuǎn)換器將檢測(cè)到的PM2.5濃度值顯示在LCD液晶顯示屏上,當(dāng)濃度值超過其設(shè)置的闕值時(shí),蜂鳴報(bào)警器就會(huì)發(fā)出報(bào)警提示。本設(shè)計(jì)具有結(jié)構(gòu)簡(jiǎn)單,成本低廉,小巧、輕便的優(yōu)點(diǎn),有助于我們了解與監(jiān)測(cè)空氣質(zhì)量,改善人類的生活品質(zhì),提高人類的環(huán)保意識(shí),以及幫助人類改善自然環(huán)境等有著重大的作用。關(guān)鍵詞:STC89C52單片機(jī);空氣質(zhì)量檢測(cè)系統(tǒng);報(bào)警系統(tǒng)1引言空氣動(dòng)力學(xué)孔徑低于二點(diǎn)五微米的粒子就叫做PM2.5,它含有大量的有毒、有害物質(zhì),在空氣中不僅可以傳播很遠(yuǎn)的距離,而且停留的時(shí)間很長(zhǎng)[1][2]。據(jù)調(diào)查表明,PM2.5的持續(xù)暴露是人群呼吸道疾病發(fā)作的重要風(fēng)險(xiǎn)因素。PM2.5濃度每升高10,人群支氣管炎發(fā)病增加29%,兒童的肺功能指標(biāo)下降近似1%。不僅如此,當(dāng)人們長(zhǎng)時(shí)間的處于污染的環(huán)境中,人體呼吸系統(tǒng)的抗干擾能力就會(huì)降低,并且還會(huì)增加人體呼吸系統(tǒng)對(duì)于細(xì)菌、病毒等的敏感性。PM2.5還會(huì)加重過敏性鼻炎的發(fā)病癥狀,且對(duì)于兒童肺功能的成長(zhǎng)具有抑制作用。由此可知PM2.5對(duì)人體的危害很大,長(zhǎng)時(shí)間的生活在受到污染的環(huán)境中,輕則使人們的工作效率以及日常生活受到影響,重則會(huì)引起各種疾病,甚至具有致死的風(fēng)險(xiǎn)[3]??諝赓|(zhì)量檢測(cè)裝置可以幫助人們實(shí)時(shí)地檢測(cè)室內(nèi)的空氣質(zhì)量,保障室內(nèi)的空氣質(zhì)量達(dá)標(biāo),同時(shí)也可以提升人們的健康水平,因此設(shè)計(jì)一款便攜的空氣質(zhì)量檢測(cè)裝置對(duì)于人類的生活具有重要意義。1.1研究背景現(xiàn)狀隨著人們的生活水平不斷提升,室內(nèi)空氣質(zhì)量問題日益引起人們的重視。據(jù)數(shù)據(jù)表明,我國(guó)每年將近有160萬人死于PM2.5污染,平均每天死于PM2.5污染的人數(shù)多達(dá)4400人,因此改善空氣環(huán)境變得刻不容緩。所以要設(shè)計(jì)一款空氣質(zhì)量檢測(cè)儀,以此來真實(shí)的反映室內(nèi)的空氣水平,提醒人們開啟凈化裝置,遠(yuǎn)離空氣污染。污染程度的上升引發(fā)了疾病的蔓延??諝馕廴緦?duì)健康的不利影響,推動(dòng)了室內(nèi)空氣質(zhì)量檢測(cè)儀市場(chǎng)的發(fā)展。樓俊君,趙永熙,甄蘭蘭等人,在2000年使用STC89C52芯片、GP2Yl010AUOF光學(xué)空氣質(zhì)量傳感器等設(shè)計(jì)了空氣質(zhì)量檢測(cè)儀,采集空氣中粉塵的濃度,將檢測(cè)到的PM2.5濃度數(shù)值顯示出來[4]。彭玲在2017年使用ATMEGA328P-PU芯片設(shè)計(jì)了空氣質(zhì)量檢測(cè)儀,在PM2.5的采集過程中,她提出了采用多種濾波算法相結(jié)合的軟濾波方法,把采集到的樣本值進(jìn)行有效的處理,從而獲得更加準(zhǔn)確客觀的PM2.5濃度值,實(shí)現(xiàn)空氣質(zhì)量的檢測(cè)[5]。郝海燕,龔杰等人通過結(jié)合單片機(jī)理論知識(shí)設(shè)計(jì)了空氣質(zhì)量檢測(cè)儀,他們選擇STC89C51單片機(jī)控制芯片作為主控芯片,由日本公司生產(chǎn)的夏普粉塵傳感器GP2Y1010AU0F作為傳感器模塊,美國(guó)公司生產(chǎn)的ADC0832轉(zhuǎn)換器作為模數(shù)轉(zhuǎn)換模塊,通過設(shè)定的報(bào)警值來判斷所測(cè)得的濃度是否符合報(bào)警值,并啟動(dòng)凈化裝置[6]??諝赓|(zhì)量檢測(cè)儀的應(yīng)用與發(fā)展,是我國(guó)環(huán)境保護(hù)領(lǐng)域的重要進(jìn)展,但我國(guó)目前在這一領(lǐng)域依然還存在著很多缺陷,面臨著很多挑戰(zhàn)。1.2系統(tǒng)的總體設(shè)計(jì)要求設(shè)計(jì)一款可以隨時(shí)檢測(cè)室內(nèi)PM2.5濃度值的空氣質(zhì)量檢測(cè)儀,并將檢測(cè)的濃度值顯示出來,當(dāng)檢測(cè)到的濃度值超過設(shè)置初值時(shí),蜂鳴報(bào)警器就會(huì)發(fā)出嘟嘟的報(bào)警提示聲,其具有構(gòu)造簡(jiǎn)單,輕巧實(shí)用的特點(diǎn)。根據(jù)單片機(jī)采用匯編和C混合編程的方法設(shè)計(jì)并制作空氣質(zhì)量檢測(cè)儀,利用KeilC及Proteus軟件,對(duì)空氣質(zhì)量檢測(cè)儀的控制系統(tǒng)進(jìn)行仿真設(shè)計(jì),最后對(duì)結(jié)果進(jìn)行分析。1.3系統(tǒng)組成及工作原理本設(shè)計(jì)以單片機(jī)為核心芯片設(shè)計(jì)空氣質(zhì)量檢測(cè)儀,應(yīng)用模塊化設(shè)計(jì),主要有主控芯片單元、蜂鳴報(bào)警模塊單元、PM2.5檢測(cè)模塊單元、液晶顯示模塊單元、模數(shù)轉(zhuǎn)換模塊單元、傳感器模塊單元,實(shí)現(xiàn)空氣質(zhì)量檢測(cè)功能[7]。在空氣質(zhì)量檢測(cè)儀工作的過程中,粉塵感受器將采集到的PM2.5的模擬信號(hào)量經(jīng)過A/D變換,轉(zhuǎn)化成MCU可以進(jìn)行處理的數(shù)字信號(hào)量,然后由MCU對(duì)蜂鳴器和LCD進(jìn)行控制,將檢測(cè)到的數(shù)據(jù)顯示出來。用戶可通過按鍵輸入來設(shè)置預(yù)警初值,當(dāng)空氣中的有害氣體濃度超過設(shè)置初值時(shí),蜂鳴報(bào)警器會(huì)發(fā)出報(bào)警提示,由此來提醒人們注意開窗通風(fēng)、開啟凈化裝置等來改善室內(nèi)空氣的質(zhì)量。1.4論文組織框架本文主要內(nèi)容共包含五大部分。第一部分為文章前言,對(duì)本論文的選題背景以及國(guó)內(nèi)外的研究狀況、系統(tǒng)的總體設(shè)計(jì)要求、系統(tǒng)組成及工作原理以及論文組織框架進(jìn)行敘述。第二部分主要介紹了單片機(jī)的最小系統(tǒng),LCD顯示器等空氣質(zhì)量檢測(cè)儀涉及的硬件設(shè)計(jì)以及系統(tǒng)硬件功能圖等。第三部分對(duì)系統(tǒng)的軟件設(shè)計(jì)進(jìn)行介紹,包括空氣質(zhì)量檢測(cè)系統(tǒng)的主程序設(shè)計(jì),PM2.5檢測(cè)子程序設(shè)計(jì)以及子程序與主程序流程圖等。第四部分對(duì)實(shí)現(xiàn)系統(tǒng)仿真的軟件進(jìn)行介紹,對(duì)空氣質(zhì)量檢測(cè)儀的電路圖進(jìn)行仿真,并繪制系統(tǒng)程序流程圖,最后對(duì)仿真結(jié)果進(jìn)行分析。第五部分結(jié)束語。2系統(tǒng)硬件設(shè)計(jì)2.1硬件設(shè)計(jì)總述本設(shè)計(jì)硬件采用STC89C52單片機(jī)作為主控芯片單元,由GP2Y1010AU0FPM2.5傳感器、LCD1602液晶顯示器、ADC0832模數(shù)轉(zhuǎn)換器、蜂鳴報(bào)警器、按鍵設(shè)置器等五大模塊共同構(gòu)成,以此來實(shí)現(xiàn)電路的設(shè)計(jì)。系統(tǒng)設(shè)計(jì)的總體框圖如圖2.1所示。模數(shù)轉(zhuǎn)換器時(shí)鐘電路STC89C52(單片機(jī))模數(shù)轉(zhuǎn)換器時(shí)鐘電路STC89C52(單片機(jī))LCD顯示器LCD顯示器復(fù)位電路復(fù)位電路蜂鳴報(bào)警器蜂鳴報(bào)警器按鍵設(shè)置器PM2.5傳感器按鍵設(shè)置器PM2.5傳感器圖2.1系統(tǒng)設(shè)計(jì)總體框圖2.2STC89C52單片機(jī)本設(shè)計(jì)采用的STC89C52系列的單片機(jī)在功能上比51系列更加強(qiáng)大,是51系列的增強(qiáng)型。STC系列的單片機(jī)是宏晶公司的產(chǎn)品,是使用CMOS工藝技術(shù)制作的8位微控制器,不僅具有高功能、低功耗的特點(diǎn),而且物美價(jià)廉,并在設(shè)計(jì)成本和性能上遵循了該設(shè)計(jì)原理。結(jié)構(gòu)圖如圖2.2所示。圖2.2STC89C52單片機(jī)結(jié)構(gòu)圖2.3單片機(jī)最小系統(tǒng)復(fù)位電路,系統(tǒng)時(shí)鐘,電源是STC89C52最小系統(tǒng)的三要素。如圖2.3所示。供電電路,單片機(jī)芯片的40引腳與20引腳為電源引腳。40引腳稱為VCC,通常外接+5V的電壓。20引腳為接地引腳,稱為GND。以時(shí)鐘電路為基準(zhǔn),單片機(jī)的各外圍部件的運(yùn)行可以有條不紊的工作。時(shí)鐘電路的好壞對(duì)單片機(jī)的穩(wěn)定性具有很大的影響,目前常見的時(shí)鐘電路有兩種,分別是內(nèi)部時(shí)鐘電路與外部時(shí)鐘電路。STC89C52內(nèi)置了一個(gè)高增益反相放大器,其輸入引腳為XTAL1,輸出引腳為XTAL2,通過將石英晶體振蕩器與微調(diào)電容連接到這兩個(gè)管腳上,就可以組成一個(gè)穩(wěn)定的自激式振蕩器,這種稱為內(nèi)部時(shí)鐘電路,因此內(nèi)部時(shí)鐘電路不需要采用外部振蕩器來產(chǎn)生時(shí)鐘信號(hào)。而外部時(shí)鐘電路則需要采用外部振蕩器來實(shí)現(xiàn),當(dāng)多個(gè)芯片同時(shí)工作時(shí),一般都會(huì)使用外部的時(shí)鐘電路,達(dá)到使多片單片機(jī)的同步更加便捷的目的。由此可見,本設(shè)計(jì)采用內(nèi)部時(shí)鐘的電路方式。復(fù)位電路是當(dāng)單片機(jī)系統(tǒng)處于“程序死機(jī)”或“程序干擾”時(shí),可以將單片機(jī)恢復(fù)到初始狀態(tài)。復(fù)位電路有人工復(fù)位與上電復(fù)位。人工復(fù)位是通過人工復(fù)位按鈕來使程序重新運(yùn)行,這個(gè)過程也成為手動(dòng)復(fù)位。上電復(fù)位是將電容C與單片機(jī)的RST復(fù)位引腳連接至Vcc,在連接一個(gè)電阻RK至GND,以實(shí)現(xiàn)給電容C充電[8]。因此,上電復(fù)位是利用電容的充電來實(shí)現(xiàn)的,復(fù)位時(shí)間由充電時(shí)間決定,可以通過增大電容或電阻來加長(zhǎng)充電時(shí)間,從而增加復(fù)位時(shí)間。圖2.4單片機(jī)最小系統(tǒng)示意圖2.5PM2.5粉塵傳感器2.5.1GP2Y1010AU0F簡(jiǎn)介本設(shè)計(jì)采用的PM2.5粉塵傳感器是由SHARP公司生產(chǎn)的GP2Y1010AU0F如圖2.4,此傳感器根據(jù)的是光的反射原理,可以檢測(cè)到灰塵在空中反射的光線,對(duì)大于空氣動(dòng)力學(xué)孔徑1微米以上的微小粒子具有很強(qiáng)的感應(yīng)能力。此傳感器尺寸小,方便安裝,廣泛應(yīng)用于空氣凈化器、新風(fēng)機(jī)等產(chǎn)品[9]。具有極低的電流消耗,輸出的是一個(gè)模擬電壓正比于所測(cè)得的粉塵濃度,敏感性為0.5/0.1/。圖2.5GP2Y1010AU0F粉塵傳感器實(shí)物圖2.5.2GP2Y1010AU0F各連接引腳定義引腳1,電源VCC連接+5V電壓源;引腳2,LED連接GDN;引腳3,LED懸空設(shè)置;引腳4,S連接GND;引腳5,VO;引腳6,VCC;GP2Y1010AU0F的引腳圖與電路圖如圖2.6和圖2.7所示。圖2.6GP2Y1010AU0F引腳定義圖及排線設(shè)置圖2.7GP2Y1010AU0F電路圖2.6ADC0832數(shù)模轉(zhuǎn)換器2.6.1ADC0832模塊概述設(shè)計(jì)采用的ADC0832,是一款帶有8個(gè)分辨率的模數(shù)轉(zhuǎn)換芯片,最高分辨率為二百五十六級(jí),具有廣泛的應(yīng)用領(lǐng)域。它有兩個(gè)數(shù)據(jù)通道,能夠?qū)?shù)據(jù)進(jìn)行嚴(yán)格的校驗(yàn),有效的減少了數(shù)據(jù)的錯(cuò)誤??梢园褟姆蹓m傳感器中收集到的圖像數(shù)據(jù),經(jīng)ADC0832數(shù)模轉(zhuǎn)換器后轉(zhuǎn)變?yōu)閱纹瑱C(jī)所能夠識(shí)別的數(shù)字信息。它同時(shí)還具備了體積小、兼容性強(qiáng)、物美價(jià)廉的特點(diǎn),所以可以廣泛的應(yīng)用于單片機(jī)之中。引腳圖如圖2.7所示。圖2.7ADC0832引腳圖ADC0832的各引腳功能如圖2.8所示。圖2.8ADC0832引腳功能圖2.7LCD1602液晶顯示LCD1602是字符型顯示模塊。1602表示LCD上顯示的內(nèi)容是16×2,也就是說,每一行可以顯示16個(gè)字符,總共可以顯示2行。這種顯示器以電壓來控制其顯示區(qū)域,在有電的情況下,顯示圖形。與其他顯示器相比,不但有體積更小,重量更輕,物美價(jià)廉的特點(diǎn)而且還功耗較低,顯示效果也較好,而且使用了數(shù)字式的接口技術(shù),操作簡(jiǎn)便,可以與STC89C52很好的連接在一起。LCD1602的引腳圖及電路圖如圖2.10和圖2.11所示。圖2.10LCD1602引腳圖圖2.11LCD1602電路圖2.8蜂鳴報(bào)警器蜂鳴器發(fā)音簡(jiǎn)單,主要用于提示或報(bào)警,蜂鳴報(bào)警器有無源與有源兩種。有源蜂鳴報(bào)警器本身就有一個(gè)振蕩器,只要一通電,電流通過振蕩系統(tǒng)的放大采樣電路,就會(huì)在共振裝置的作用下產(chǎn)生音頻信號(hào)。而無源蜂鳴報(bào)警器本身沒有振蕩器,所以在通電的狀態(tài)下無法令其發(fā)出聲音,需要采用方波信號(hào)來驅(qū)動(dòng)。由于有源蜂鳴報(bào)警器具有控制簡(jiǎn)單的優(yōu)點(diǎn),所以本設(shè)計(jì)采用有源自激型蜂鳴器。當(dāng)檢測(cè)到的有害氣體的濃度超過所設(shè)置的闕值時(shí),蜂鳴報(bào)警器發(fā)出滴滴聲。如圖2.12所示。圖2.12蜂鳴報(bào)警器原理圖2.9按鍵輸入模塊由于設(shè)計(jì)只用到三個(gè)按鍵端口,數(shù)量不大,所以采用獨(dú)立按鍵式即可。具有每個(gè)端口獨(dú)立工作,結(jié)構(gòu)簡(jiǎn)單、便于操作的特點(diǎn)。利用三個(gè)按鍵觸發(fā)分別設(shè)置為設(shè)置鍵,闕值加鍵,闕值減鍵。如圖2.13所示。圖2.13獨(dú)立式按鍵示意圖獨(dú)立式按鍵的1、2引腳是相通的,3、4引腳是相通的,所以在電路的連接過程中,只需兩組引腳彼此組合即可,列如,只接1、3引腳或只接2、4引腳等。引腳圖如圖2.14所示。圖2.14獨(dú)立式按鍵引腳圖2.10小結(jié)本部分主要對(duì)系統(tǒng)的硬件設(shè)計(jì)進(jìn)行了總體敘述,然后對(duì)系統(tǒng)的硬件功能圖進(jìn)行介紹,特別介紹了單片機(jī)的重要I/O引腳及其功能、以及單片機(jī)的最小系統(tǒng)等。

3系統(tǒng)的軟件設(shè)計(jì)3.1系統(tǒng)軟件設(shè)計(jì)總述本設(shè)計(jì)的系統(tǒng)包括兩部分:硬件部分和軟件部分。軟件設(shè)計(jì)的目的在于實(shí)現(xiàn)對(duì)系統(tǒng)與硬件系統(tǒng)的控制和驅(qū)動(dòng),根據(jù)設(shè)計(jì)模塊的不同,采用模塊化設(shè)計(jì),分別有主程序模塊設(shè)計(jì)、PM2.5檢測(cè)子程序模塊設(shè)計(jì)等。3.2主程序設(shè)計(jì)在啟動(dòng)電源后,單片機(jī)首先進(jìn)入主程序執(zhí)行初始化操作,初始化單片機(jī)子程序中的主要參數(shù),包括傳感器參數(shù)初始化、中斷程序初始化、時(shí)鐘初始化、LCD液晶顯示初始化。當(dāng)初始化完成后,單片機(jī)對(duì)傳感器中的PM2.5數(shù)據(jù)進(jìn)行采集,然后通過A/D轉(zhuǎn)換器將所檢測(cè)到的模擬量轉(zhuǎn)換為微處理器所能識(shí)別的數(shù)字量,并由LCD顯示。單片機(jī)將檢測(cè)到的數(shù)據(jù)與按鍵設(shè)置的初值進(jìn)行比較,如果數(shù)據(jù)超過設(shè)置的初值時(shí),蜂鳴報(bào)警器發(fā)出滴滴聲。這時(shí),按鍵操作會(huì)產(chǎn)生系統(tǒng)中斷,然后在執(zhí)行對(duì)應(yīng)的按鍵加減程序。主程序流程圖如圖3.1所示。

通電闕值加減按鍵中斷是蜂鳴器報(bào)警否蜂鳴器復(fù)位超過闕值?數(shù)據(jù)顯示模數(shù)轉(zhuǎn)換數(shù)據(jù)采集LCD初始化時(shí)鐘初始化中斷程序初始化傳感器初始化初始化通電闕值加減按鍵中斷是蜂鳴器報(bào)警否蜂鳴器復(fù)位超過闕值?數(shù)據(jù)顯示模數(shù)轉(zhuǎn)換數(shù)據(jù)采集LCD初始化時(shí)鐘初始化中斷程序初始化傳感器初始化初始化圖3.1主程序流程圖3.3PM2.5檢測(cè)子程序模塊設(shè)計(jì)PM2.5檢測(cè)裝置采用GP2Y1010AU0F型日本夏普粉塵傳感器。在單片機(jī)的輸出端,PM2.5傳感器要和它進(jìn)行通訊,由MCU對(duì)其傳輸?shù)臄?shù)據(jù)進(jìn)行檢驗(yàn),以確定其中是否包含PM2.5的數(shù)據(jù),并根據(jù)關(guān)鍵信息進(jìn)行識(shí)別,在進(jìn)行識(shí)別時(shí),如果出現(xiàn)“0xaa”,則會(huì)判定為包含PM2.5的數(shù)據(jù),隨后提取出PM2.5的數(shù)據(jù),并在LCD的屏幕上顯示,如果沒有“0xaa”,則會(huì)返回到傳感器中重新接收PM2.5的數(shù)據(jù),然后再次進(jìn)行測(cè)試。系統(tǒng)流程圖如圖3.2所示。否是PM2.5數(shù)據(jù)顯示是否含有0xaa關(guān)鍵字?數(shù)據(jù)識(shí)別傳感器采集數(shù)據(jù)否是PM2.5數(shù)據(jù)顯示是否含有0xaa關(guān)鍵字?數(shù)據(jù)識(shí)別傳感器采集數(shù)據(jù)圖3.2PM2.5檢測(cè)系統(tǒng)流程圖3.4小結(jié)本部分介紹了系統(tǒng)的軟件設(shè)計(jì),先介紹了系統(tǒng)的主程序設(shè)計(jì),得出了空氣質(zhì)量檢測(cè)系統(tǒng)的總體流程圖,再介紹了PM2.5檢測(cè)子程序設(shè)計(jì),得出了PM2.5檢測(cè)系統(tǒng)的流程圖。

4系統(tǒng)的仿真與實(shí)現(xiàn)4.1仿真軟件介紹4.1.1Proteus軟件英國(guó)LabcenterElectronics公司所設(shè)計(jì)的Proteus軟件即為EDA工具軟件。與其他EDA工具軟件相比,具有仿真處理器及其外圍電路的特點(diǎn)。此軟件可以實(shí)現(xiàn)本設(shè)計(jì)的系統(tǒng)仿真。本設(shè)計(jì)采用的是Proteus8版本,工作界面如圖4.1所示。圖4.1proteus工作界面圖4.1.2KeilC軟件KeilC51軟件具備編譯和調(diào)試以及仿真等多種功能,具有很強(qiáng)的仿真能力。可以使用Keil進(jìn)行程序的編譯,在與Proteus一起聯(lián)機(jī)來實(shí)現(xiàn)對(duì)單片機(jī)的控制與操作,使在線編程變得更加便捷。工作界面如圖4.2所示。圖4.2Keil工作界面圖4.2系統(tǒng)的仿真在進(jìn)行系統(tǒng)的仿真時(shí),采用C語言實(shí)現(xiàn)系統(tǒng)的程序編寫。利用KeilC軟件與Proteus兩個(gè)軟件的相互配合完成系統(tǒng)的仿真調(diào)試。采用STC89C52高功能、低功耗單片機(jī)作為空氣質(zhì)量檢測(cè)系統(tǒng)的主控單元,通過按鍵輸入模塊設(shè)置PM2.5的預(yù)警初值,通過串口發(fā)送的數(shù)據(jù)實(shí)現(xiàn)對(duì)傳感器的開機(jī),GP2Y1010AU0F粉塵傳感器讀取出當(dāng)前環(huán)境下PM2.5濃度值,傳感器輸出的模擬量需要經(jīng)過A/D轉(zhuǎn)換器才可以在LCD上顯示數(shù)據(jù),最后將LCD顯示的數(shù)據(jù)與設(shè)置的初值進(jìn)行對(duì)比,超過設(shè)置初值時(shí)蜂鳴報(bào)警器聲光報(bào)警,低于設(shè)置初值時(shí),蜂鳴報(bào)警器不進(jìn)行聲光報(bào)警。系統(tǒng)的仿真電路圖如圖4.3所示。圖4.3系統(tǒng)仿真電路圖

初始化4.3系統(tǒng)程序流程圖初始化發(fā)送傳感器開機(jī)指令發(fā)送傳感器開機(jī)指令讀取上次設(shè)置闕值數(shù)據(jù)讀取上次設(shè)置闕值數(shù)據(jù)蜂鳴器報(bào)警讀取當(dāng)前環(huán)境質(zhì)量數(shù)據(jù)蜂鳴器報(bào)警讀取當(dāng)前環(huán)境質(zhì)量數(shù)據(jù)是是是否超過闕值質(zhì)量等級(jí)劃分是否超過闕值質(zhì)量等級(jí)劃分否否蜂鳴器復(fù)位液晶顯示當(dāng)前值蜂鳴器復(fù)位液晶顯示當(dāng)前值是否按下設(shè)置鍵是否按下設(shè)置鍵否將闕值寫入存儲(chǔ)器是否將闕值寫入存儲(chǔ)器是是是液晶顯示設(shè)置界面液晶顯示設(shè)置界面KEY2闕值減一KEY3掃描按鍵KEY2闕值減一KEY3掃描按鍵KEY1KEY1闕值加一闕值加一圖4.4系統(tǒng)程序流程圖

4.4元件清單仿真電路圖所需要的元件如表4.1所示。表4.1元件清單元件型號(hào)元件名稱元件標(biāo)號(hào)數(shù)量蜂鳴器蜂鳴器B1110μf電容C1120pf電容C2、C32104電容C41220μf電容C51燈發(fā)光二極管D11LCD1602液晶LCD119012三極管Q1、Q222K電阻R1、R2、R3310K電阻R4、R72150電阻R81SW-PB按鍵S1、S2、S3、S44sw-灰色電源開關(guān)SW11單片機(jī)單片機(jī)U11ADC0832AD采集芯片U31PM2.5傳感器U4112M晶振Y114.5系統(tǒng)的仿真結(jié)果分析首先使用Keil軟件對(duì)系統(tǒng)的程序進(jìn)行編寫,再與Proteus聯(lián)機(jī)來實(shí)現(xiàn)系統(tǒng)的仿真。單擊設(shè)置按鈕后,通過闕值加一和闕值減一按鈕來設(shè)置空氣濃度的參考值,通過調(diào)節(jié)可變電阻來設(shè)置當(dāng)前的空氣濃度值,如果設(shè)置的當(dāng)前空氣濃度值大于空氣濃度參考值時(shí),蜂鳴報(bào)警器報(bào)警提示,并伴有紅色LED燈閃爍,此時(shí)表明空氣質(zhì)量差;如果設(shè)置的當(dāng)前空氣濃度值小于空氣濃度參考值時(shí),蜂鳴報(bào)警器不響,此時(shí)表明空氣質(zhì)量良好。4.6小結(jié)此部分主要介紹了系統(tǒng)的電路圖仿真、系統(tǒng)的程序流程圖,簡(jiǎn)要介紹了實(shí)現(xiàn)該功能電路所需要的仿真軟件,并對(duì)仿真的結(jié)果進(jìn)行了分析。5結(jié)束語長(zhǎng)期接觸PM2.5是導(dǎo)致人類呼吸疾病死亡的重要因素之一。PM2.5微粒會(huì)隨著人類的呼吸而進(jìn)入到人的肺部中,對(duì)人體有嚴(yán)重的健康危害。本設(shè)計(jì)以STC89C52單片機(jī)為主控芯片設(shè)計(jì)空氣質(zhì)量預(yù)警系統(tǒng),當(dāng)傳感器采集到的PM2.5濃度值超過設(shè)置初值時(shí),蜂鳴報(bào)警器進(jìn)行聲光報(bào)警,并且應(yīng)用了模塊化的設(shè)計(jì)方法,靈活性很強(qiáng),通過進(jìn)行模塊的添補(bǔ)來給系統(tǒng)增添一定的功能。此設(shè)計(jì)可以廣泛的應(yīng)用于室內(nèi)的空氣質(zhì)量檢測(cè),示意人們改善室內(nèi)空氣。但在設(shè)計(jì)過程中本設(shè)計(jì)還存在著些許不足,有待進(jìn)一步的發(fā)展,在檢測(cè)PM2.5氣體的精度上也存在著一定的偏差,但總的來說不影響裝置的正常使用。

參考文獻(xiàn)[1]陳博涵.單片機(jī)的空氣質(zhì)量檢測(cè)與報(bào)警系統(tǒng)設(shè)計(jì)探析[J].大學(xué),2020(48):68-71.[2]鄧然,朱英坤,林德洋.基于單片機(jī)的空氣質(zhì)量檢測(cè)系統(tǒng)設(shè)計(jì)[J].科學(xué)技術(shù)創(chuàng)新,2019(33):144-145.[3]胡俊賢,田秀云,賴錦松,李明燊,王倩.基于單片機(jī)的空氣質(zhì)量檢測(cè)與報(bào)警系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2020(19):34-36.DOI:10.16520/ki.1000-8519.2020.19.010.[4]樓俊君,趙永熹,甄蘭蘭.基于51單片機(jī)的PM2.5空氣質(zhì)量檢測(cè)儀的設(shè)計(jì)[J].福建電腦,2016,32(11):109+177.DOI:10.16707/ki.fjpc.2016.11.057.[5]彭玲.基于單片機(jī)的空氣質(zhì)量檢測(cè)儀的設(shè)計(jì)與實(shí)現(xiàn)[J].科學(xué)與信息化,2017(8):2.[6]郝海燕,龔杰.基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)[J].內(nèi)江科技,2021,42(09):40-41.[7]文彪,明立娟.基于單片機(jī)的空氣質(zhì)量檢測(cè)儀設(shè)計(jì)[J].科技創(chuàng)新與應(yīng)用,2018(13):97-98.[8]陳旦花.單片機(jī)最小系統(tǒng)的設(shè)計(jì)與應(yīng)用[J].無線互聯(lián)科技,2012(10):103-104.[9]劉少軍,王瑜瑜.基于單片機(jī)控制的空氣質(zhì)量檢測(cè)系統(tǒng)的設(shè)計(jì)[J].機(jī)械與電子,2015(01):53-56.

附錄系統(tǒng)程序#include<reg52.h> //調(diào)用單片機(jī)頭文件#defineucharunsignedchar#defineuintunsignedint sbitbeep=P1^4;uintflag_300ms; //300毫秒的變量sbitCS=P3^2; sbitCLK=P3^3; sbitDODI=P3^4; ucharpm,s_pm; //PM2.5變量uinttime_num1;ucharmenu_1;//設(shè)置不同參數(shù)的變量sbitGP2Y_LED=P1^3; //傳感器驅(qū)動(dòng)端口/****************************************************************名稱:delay_1ms()*功能:延時(shí)1ms函數(shù)*輸入:q*輸出:無****************************************************************/voiddelay_1ms(uintq){ uinti,j; for(i=0;i<q;i++) for(j=0;j<120;j++);}sbitrs=P1^0; sbitrw=P1^1; sbite=P1^2; /*********************************************************************名稱:delay_uint()*功能:小延時(shí)。*輸入:無*輸出:無***********************************************************************/voiddelay_uint(uintq){ while(q--);}/*********************************************************************名稱:write_com(ucharcom)*功能:1602命令函數(shù)*輸入:輸入的命令值*輸出:無***********************************************************************/voidwrite_com(ucharcom){ rs=0; //寫指令 rw=0; //對(duì)1602寫操作 P0=com; //P0口對(duì)1602寫指令 delay_uint(25); e=1; //e=1使能信號(hào) delay_uint(100);//延時(shí)一下等1602完成操作 e=0;}/*********************************************************************名稱:write_data(uchardat)*功能:1602寫數(shù)據(jù)函數(shù)*輸入:需要寫入1602的數(shù)據(jù)*輸出:無***********************************************************************/voidwrite_data(uchardat){ rs=1; //寫數(shù)據(jù) rw=0; //對(duì)1602寫操作 P0=dat; //P0口對(duì)1602寫數(shù)據(jù) delay_uint(25); e=1; //e=1使能信號(hào) delay_uint(100);//延時(shí)一下等1602完成操作 e=0; }/***********************lcd1602上顯示3位十進(jìn)制數(shù)************************/voidwrite_lcd_pm(ucharhang,ucharadd,uintdate){ if(hang==1) write_com(0x80+add); //寫1602第一行的地址 else write_com(0x80+0x40+add);//寫1602第二行的地址 if(date/100%10==0) write_data(''); else write_data(0x30+date/100%10); //顯示百位數(shù) write_data(0x30+date/10%10); write_data(0x30+date%10); }/***********************lcd1602上顯示這字符函數(shù)************************/voidwrite_string(ucharhang,ucharadd,uchar*p){ if(hang==1) write_com(0x80+add); //寫1602第一行的地址 else write_com(0x80+0x40+add);//寫1602第二行的地址 while(1) { if(*p=='\0')break; write_data(*p); //寫數(shù)據(jù) p++; //指針地址加1 } }/***********************lcd1602初始化設(shè)置************************/voidinit_1602() //lcd1602初始化{ write_com(0x38); write_com(0x0c);//開顯示不顯示光標(biāo) write_com(0x06); write_string(1,0,"PM2.5:000ug/m3"); //初始化1602顯示 write_string(2,0,"S-PM2.5:000ug/m3"); //初始化1602顯示 write_lcd_pm(2,8,s_pm); //顯示設(shè)置PM2.5}/***********讀數(shù)模轉(zhuǎn)換數(shù)據(jù)*******************/ unsignedcharad0832read(bitSGL,bitODD){ unsignedchari=0,value=0; CLK=0; DODI=1; CS=0; //開始 CLK=1; //第一個(gè)上升沿 CLK=0; DODI=SGL; //通道選擇 CLK=1; //第二個(gè)上升沿 CLK=0; DODI=ODD; //通道選擇 for(i=0;i<8;i++) { CLK=1;//下降沿接收數(shù)據(jù) value<<=1; //8位的數(shù)據(jù)高位在前 CLK=0; if(DODI==1) //如果DO為1 value++;//8位的數(shù)據(jù)低位置1 } returnvalue; //返回0832采集到的數(shù)據(jù)}/*************定時(shí)器0初始化程序***************/voidtime_init() { EA=1; //開總中斷 TMOD=0X02; TH0=116; TL0=116; ET0=1; //開定時(shí)器0中斷 TR0=0; //允許定時(shí)器0定時(shí)}sbitkey1=P3^5; //按鍵IO口定義sbitkey2=P3^6; //按鍵IO口定義sbitkey3=P3^7; //按鍵IO口定義/********************獨(dú)立按鍵程序*****************/ucharkey_can; //按鍵值voidkey() //獨(dú)立按鍵程序{ key_can=0;//按鍵值還原成0 if(key1==0||key2==0||key3==0) //有按鍵按下 { delay_1ms(1); //按鍵延時(shí)消抖動(dòng) if(key1==0) //確認(rèn)是按鍵按下 key_can=3; //得到按鍵值 if(key2==0) //確認(rèn)是按鍵按下 key_can=2; //得到按鍵值 if(key3==0) //確認(rèn)是按鍵按下 key_can=1; //得到按鍵值 }}/****************按鍵顯示函數(shù)***************/voidkey_with(){ if(key_can==1) //設(shè)置鍵 { menu_1++; if(menu_1>3) { menu_1=0; //menu_1=0退出設(shè)置了, init_1602();//1602初始化 } } if(menu_1==1) //設(shè)置PM2.5 { if(key_can==2) //加鍵 { s_pm++; //設(shè)置PM2.5加1 if(s_pm>=999) s_pm=999; } if(key_can==3) //減鍵 { s_pm--; //設(shè)置PM2.5減1 if(s_pm<=1) s_pm=1; }

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論