蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc

上傳人:good****022 文檔編號:116600437 上傳時間:2022-07-06 格式:DOC 頁數(shù):59 大小:3.96MB
收藏 版權(quán)申訴 舉報 下載
蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc_第1頁
第1頁 / 共59頁
蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc_第2頁
第2頁 / 共59頁
蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc_第3頁
第3頁 / 共59頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc》由會員分享,可在線閱讀,更多相關(guān)《蔬菜大棚種植環(huán)境檢測系統(tǒng)畢業(yè)論文設(shè)計.doc(59頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、沈陽航空航天大學(xué)電子信息工程學(xué)院畢業(yè)設(shè)計(論文)第1章 緒論1.1 選題的依據(jù)和意義現(xiàn)代農(nóng)業(yè)生態(tài)園發(fā)展迅速,不僅種植品種更多、規(guī)模更大,而且種植區(qū)域也更加集中,這給農(nóng)業(yè)人員的管理和優(yōu)化種植增加了難度和成本。為了解決這些問題,我國的蔬菜大棚種植正在向信息化和智能化的方向發(fā)展。只有應(yīng)用先進(jìn)的較低成本的信息采集手段,實時、精確地獲取大棚環(huán)境信息,制定科學(xué)的管理決策,最后通過智能設(shè)備或人工控制等措施,才能提高種植作物的經(jīng)濟(jì)效益,本設(shè)計就是設(shè)計一個生態(tài)園的環(huán)境監(jiān)測系統(tǒng)。在當(dāng)今社會,我們的經(jīng)濟(jì)、農(nóng)業(yè)和工業(yè)都趨向于信息話、科技化,尤其是農(nóng)業(yè)生產(chǎn)和農(nóng)業(yè)養(yǎng)殖更是借助了很多現(xiàn)代先進(jìn)的科技力量。在蔬菜、水果的大棚種

2、植中,大棚中的溫度、濕度和光照強(qiáng)度都會對農(nóng)作物的生長的產(chǎn)生影響,如果我們對大棚中的這三個參數(shù)進(jìn)行監(jiān)控和有效的調(diào)節(jié),那么農(nóng)作物的數(shù)量和質(zhì)量都會得到上升,一旦我們的農(nóng)作物的質(zhì)量和數(shù)量有大幅度的提高,那么就標(biāo)志著我們的農(nóng)業(yè)生產(chǎn)水平上了一個大臺階,所以對生態(tài)園環(huán)境監(jiān)測系統(tǒng)的研究是十分有必要的。選題的意義在于這個系統(tǒng)具有以下三個優(yōu)點:1、可以實時采集周圍的溫度、濕度和光照強(qiáng)度,分別進(jìn)行顯示,可以人為的直觀的觀測到,了解生態(tài)園的現(xiàn)況。2、該監(jiān)測系統(tǒng)具有自動設(shè)置上下限功能,并配有聲光報警功能,一旦所監(jiān)測的值不在自行設(shè)置的上限和下限的范圍之內(nèi),報警部分就會讓人們知道這一情況,工作人員可以作出相應(yīng)的措施。3、該

3、系統(tǒng)可以將數(shù)據(jù)傳送到上位機(jī)上,一旦配置上無線發(fā)射模塊,再在接收端配置上無線接收模塊,這樣可以實現(xiàn)遠(yuǎn)距離傳輸,接收端的上位機(jī)上可以顯示出生態(tài)園的溫度、濕度和光照強(qiáng)度。就以上三點可以充分地表達(dá)出這一選題是十分有意思的,一旦我們將這一系統(tǒng)研究到位,應(yīng)用合理,那么會對我們的農(nóng)業(yè)生產(chǎn)有很大的幫助。1.2 選題研究的基本內(nèi)容 本課題根據(jù)生態(tài)園發(fā)展需要,設(shè)計一種蔬菜大棚種植環(huán)境檢測系統(tǒng),利用傳感器對棚內(nèi)作物生長情況進(jìn)行監(jiān)測,采集其在生長周期內(nèi)溫度、濕度和光強(qiáng)的數(shù)據(jù),以便及時調(diào)整棚內(nèi)環(huán)境達(dá)到作物生長的適宜條件,實現(xiàn)蔬菜大棚的優(yōu)化種植。具體需要做的任務(wù)首先要按照實際應(yīng)用背景完成主控電路的設(shè)計,然后要設(shè)計利用傳感

4、器采集生態(tài)園大氣環(huán)境中的溫度、濕度和光照強(qiáng)度的電路,將數(shù)據(jù)傳送到單片機(jī),設(shè)計的顯示電路要將采集的數(shù)據(jù)顯示,顯示精度1,被監(jiān)測溫度范圍10-35、被監(jiān)測濕度范圍50-90%RH,不在預(yù)置的上下限范圍之內(nèi)要進(jìn)行聲光報警。最后要設(shè)計通信電路,將采集完成的數(shù)據(jù)傳送到上位機(jī),并進(jìn)行顯示。 首先要對溫度、濕度和光照強(qiáng)度進(jìn)行采集,然后送入單片機(jī),再經(jīng)數(shù)碼管進(jìn)行顯示,最后送入無線發(fā)射模塊,將數(shù)據(jù)無線傳輸?shù)竭h(yuǎn)端的上位機(jī)上進(jìn)行顯示。主要需要研究以下兩種器件: 傳感器:溫度傳感器是指能感受溫度并轉(zhuǎn)換成可用輸出信號的傳感器。按照傳感器材料及電子元件特性分為熱電阻和熱電偶兩類;濕度傳感器類似,電容式、電阻式和濕漲式濕敏

5、元器件分別是根據(jù)其高分子材料吸濕后的介電常數(shù)、電阻率和體積隨之發(fā)生變化而進(jìn)行濕度測量的;光強(qiáng)傳感器一般都選用光敏電阻,是一種因光照強(qiáng)度的改變而導(dǎo)致其電阻值改變的器件。這三種傳感器分別在三路信息的采集電路上起到了重要的作用。 下位機(jī)、上位機(jī):上位機(jī)是指可以直接發(fā)出操控命令的計算機(jī),一般是PC,屏幕上顯示各種信號變化(液壓,水位,溫度等)。下位機(jī)是直接控制設(shè)備獲取設(shè)備狀況的計算機(jī),一般是單片機(jī)之類的。上位機(jī)發(fā)出的命令首先給下位機(jī),下位機(jī)再根據(jù)此命令解釋成相應(yīng)時序信號直接控制相應(yīng)設(shè)備。下位機(jī)不時讀取設(shè)備狀態(tài)數(shù)據(jù),一般為模擬量,轉(zhuǎn)換成數(shù)字信號反饋給上位機(jī)。本系統(tǒng)是下位機(jī)將采集的溫度、濕度和光照強(qiáng)度這三

6、個量傳輸?shù)缴衔粰C(jī)上進(jìn)行顯示。1.3 課題分析本課題主要是利用單片機(jī)對生態(tài)環(huán)境中的溫度、濕度和光照強(qiáng)度進(jìn)行采集和顯示,并且無線傳輸?shù)竭h(yuǎn)端的監(jiān)控地點再進(jìn)行顯示?;舅悸肥峭ㄟ^對這三個采集量感應(yīng)的傳感器同時采集這三種數(shù)據(jù),將數(shù)據(jù)傳送到單片機(jī),單片機(jī)通過程序控制實現(xiàn)用數(shù)碼管循環(huán)顯示這三種數(shù)據(jù)的值,再將數(shù)據(jù)通過24L01無線發(fā)射模塊發(fā)射,遠(yuǎn)端的24L01無線接收模塊接收到數(shù)據(jù),將數(shù)據(jù)傳送到單片機(jī),單片機(jī)通過程序控制實現(xiàn)遠(yuǎn)端數(shù)碼管對這三個數(shù)據(jù)的顯示。第2章 方案分析2.1 系統(tǒng)工作原理測量空氣濕度的方式很多,其原理是根據(jù)某種物質(zhì)從其周圍的空氣中吸收水分后引起的物理或化學(xué)性質(zhì)的變化,間接地獲得該物質(zhì)的吸水量

7、及周圍空氣的濕度。電容式、電阻式和濕漲式濕敏元器件分別是根據(jù)其高分子材料吸濕后的介電常數(shù)、電阻率和體積隨之發(fā)生變化而進(jìn)行濕度測量的。測量溫度和光照強(qiáng)度的方式也很多,和濕度類似。測溫元件主要有熱電偶和熱敏電阻,通過與電源構(gòu)成測溫電路,隨著溫度的變化導(dǎo)致輸出的電壓量變化,再經(jīng)過ADC0809模數(shù)轉(zhuǎn)換器,將電壓這個模擬量的變化變成數(shù)字量的變化,這樣再將變化的數(shù)字量傳輸?shù)絾纹瑱C(jī)中,通過程序控制,進(jìn)行顯示,這樣就能讀出此時的溫度值了。感光元件主要就是光敏電阻和光敏二極管,隨著光照強(qiáng)度的改變,光敏電阻的阻值會發(fā)生變化,通過光敏二極管的光電流則會發(fā)生變化,和溫度類似,也將其通過外圍電路轉(zhuǎn)化為電壓的改變,再經(jīng)

8、過模數(shù)轉(zhuǎn)換器將數(shù)據(jù)數(shù)據(jù)送入單片機(jī),從而控制數(shù)碼管顯示。AT89C51控制系統(tǒng),常用的單片機(jī)的類型主要有AT89C51,AT89C52以及AT89C2051等等,本系統(tǒng)選用的單片機(jī)類型為AT89C51,相對其他同類產(chǎn)品而言,此芯片具有超強(qiáng)的抗干擾、高速、低功耗、指令代碼完全兼容傳統(tǒng)8951單片機(jī)、12時鐘/機(jī)器周期和6時鐘/機(jī)器周期可以任意選擇等特點,綜合本系統(tǒng)的諸多情況及設(shè)計要求,故選用單片機(jī)AT89C51。無線發(fā)射和接受部分,接受采集信號的單片機(jī)作為下位機(jī),將采集后的數(shù)據(jù)通過無線發(fā)射模塊進(jìn)行發(fā)射。在遠(yuǎn)端的接收部分,通過無線接收模塊將數(shù)據(jù)傳送給上位機(jī),同樣上位機(jī)也是一個單片機(jī),上位機(jī)再將接收的

9、數(shù)據(jù)傳送到數(shù)碼管進(jìn)行顯示。2.2 方案設(shè)計本方案中的濕度采集和溫度采集部分共同利用一種器件完成,DHT11是一種數(shù)字量輸出的溫度、濕度傳感器,其內(nèi)部采集工作原理是利用電阻式的濕敏元件和NTC感溫元件分別對濕度和溫度進(jìn)行采集。電阻式濕敏元件主要使用高分子固體電解質(zhì)材料作為感濕膜,由于膜中存在可動離子而產(chǎn)生導(dǎo)電性,隨著濕度的增大,其電離作用增強(qiáng),便可動離子的濃度增大,電極間的阻值減小,當(dāng)濕度減小時,電離作用也相應(yīng)減弱,可動離子的濃度也減小,電極間的電阻值增大,這樣,濕敏元件對水分子的吸附和釋放情況,可通過電極間電阻值的變化檢測出來,從而得到相應(yīng)的濕度值。NTC感溫元件是一種熱敏電阻,溫度越高熱敏電

10、阻阻值越小,溫度越低熱敏電阻阻值越大,從而通過對電阻值得變化檢測出響應(yīng)的溫度值。DHT11可以同時采集溫度和濕度,其內(nèi)部自帶模數(shù)轉(zhuǎn)換器和一個高性能的8位單片機(jī),可以直接輸出數(shù)字量給單片機(jī),達(dá)到對溫度和濕度的采集。一般的溫濕度采集還可以采用熱敏電阻和HS1101電容式的濕度傳感器進(jìn)行,溫度改變,熱敏電阻的阻值則改變,這樣通過外圍電路就可以轉(zhuǎn)換為電壓的變化,再接一個模數(shù)轉(zhuǎn)換器,這樣就可以完成溫度的采集了。HS1101的電容值會根據(jù)濕度的變化而變化,這樣外圍用555芯片搭建一個多諧振蕩電路,這樣可以將濕度的變化轉(zhuǎn)換為多諧振蕩器輸出信號頻率的變化,這樣單片機(jī)計頻就可以采集出當(dāng)時的濕度了。但是,與這種方

11、法相比,DHT11溫濕度傳感器方便簡潔,且能高效的同時采集出這兩種量,所以在溫濕度采集部分選用DHT11溫濕度傳感器。光照強(qiáng)度采集部分和溫濕度類似,也采用數(shù)字量輸出的傳感器,BH1750FVI是一種高性能的數(shù)字量輸出的光照強(qiáng)度傳感器,其內(nèi)部是一個光敏元件和一個模數(shù)轉(zhuǎn)換器,其光敏元件為一個光敏二極管,當(dāng)有光照時,光敏二極管會產(chǎn)生光電流,光照強(qiáng)度不同,這個電流就不同,而后再經(jīng)過一個集成運(yùn)放將電流轉(zhuǎn)化為電壓,再經(jīng)過一個模數(shù)轉(zhuǎn)換器,從而對光照強(qiáng)度感知后就可以直接輸出數(shù)字量的光照強(qiáng)度值,單片機(jī)讀取采集量的數(shù)值后進(jìn)行顯示。無線發(fā)射和接收部分,接受采集信號的單片機(jī)作為下位機(jī),將采集后的數(shù)據(jù)通過無線發(fā)射模塊進(jìn)

12、行發(fā)射。在遠(yuǎn)端的接收部分,通過無線接收模塊將數(shù)據(jù)傳送給上位機(jī),同樣上位機(jī)也是一個單片機(jī),上位機(jī)再將接收的數(shù)據(jù)傳送到數(shù)碼管進(jìn)行顯示。此方案采用nrf24L01無線收發(fā)模塊,該模塊工作頻率2.4GHz2.525GHz,可以將采集的數(shù)據(jù)進(jìn)行無線發(fā)射和接受,從而達(dá)到無線發(fā)射和接受的要求。此外,本系統(tǒng)在發(fā)射部分還設(shè)計了鍵盤輸入和聲光報警部分,鍵控部分采用開關(guān)和按鍵的結(jié)合,聲光報警部分的設(shè)計是在發(fā)射端的單片機(jī)上連接一個發(fā)光二極管和一個蜂鳴器。手動設(shè)置濕度、濕度和光強(qiáng)的上限和下限,首先選擇需要設(shè)置的量,然后再選擇設(shè)置上限或下限,最后分別設(shè)置每一位的值。當(dāng)溫度、濕度和光照強(qiáng)度的值不在所設(shè)定的上下限之內(nèi),則啟動

13、聲光報警部分,這時二極管發(fā)光,蜂鳴器響,從而達(dá)到監(jiān)控報警的作用,這樣更能方便工作人員對生態(tài)園的檢測和管理。這方案中直接使用DHT11和BH1750FVI這兩個數(shù)字量輸出的傳感器,可以高效的對三個量進(jìn)行采集并將采集的數(shù)據(jù)直接傳送至單片機(jī),完成對溫度、濕度和光照強(qiáng)度這三個量的采集。集部分簡單高效,硬件調(diào)試不易出錯,可以按照預(yù)期完成數(shù)據(jù)采集和無線發(fā)射。圖2.1是整個系統(tǒng)的發(fā)射部分的原理框圖,圖2.2是系統(tǒng)的接收部分的原理框圖。時鐘電路溫濕度傳感器DHT11鍵盤輸入單 片 機(jī)顯示電路光強(qiáng)傳感器BH1750FVI無線發(fā)射模塊聲光報警復(fù)位電路圖2.1 系統(tǒng)的發(fā)射部分原理框圖顯示電路無線接收模塊上位機(jī) 圖2

14、.2 系統(tǒng)的接收部分原理框圖第3章 硬件電路設(shè)計本章圍繞整體設(shè)計方案進(jìn)行設(shè)計分析,著重介紹硬件電路的設(shè)計原理,各部分的組成以及元器件的性能。本設(shè)計的硬件電路主要包括AT89C51單片機(jī)的時鐘電路和復(fù)位電路的設(shè)計、溫濕度采集電路的設(shè)計、光照強(qiáng)度采集電路的設(shè)計、顯示電路的設(shè)計、無線發(fā)射電路的設(shè)計、無線接收電路的設(shè)計、發(fā)射端鍵控電路的設(shè)計以及聲光報警電路的設(shè)計。3.1 單片機(jī)控制電路3.1.1 AT89C51單片機(jī)簡介AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指

15、令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。1 主要性能本系統(tǒng)選用并設(shè)定的單片機(jī)采用12時鐘/機(jī)器周期,工作電壓5V。在AT89C51單片機(jī)的40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,兩個16位定時器/計數(shù)器,中斷口線與P3口線復(fù)用,可編程串行通道,低功耗的閑置和掉電模式,片內(nèi)振蕩器和時鐘電路。2管腳說明 VCC:供電電壓;VSS:接地。 P0口:P0口為一個8位漏極開路雙向I/O口,每腳可吸收8個TTL門電流。當(dāng)P1口的管

16、腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的低8位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗時,P0輸出原碼,此時P0外部必須被拉高。 P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4個TTL門電流。P0口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第8位地址接收。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉

17、電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高8位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部8位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高8位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT8

18、9C51的一些特殊功能口,如下所示: P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(計時器0外部輸入)P3.5 T1(計時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用

19、于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。 EA/VPP:當(dāng)EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時,此

20、間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。AT89C51芯片管腳圖如圖3.1所示。圖3.1 AT89C51管腳圖3.1.2 時鐘電路單片機(jī)各功能部件的運(yùn)行都是以時鐘控制信號為基準(zhǔn),有條不紊地一拍一拍地工作。因此,時鐘頻率直接影響單片機(jī)的速度,時鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。時鐘電路的兩根線分別接到單片機(jī)的X1端和X2端,電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準(zhǔn)頻率的。通過基準(zhǔn)頻率來控制電路中的頻率的準(zhǔn)確性。同時,它還可以產(chǎn)生振蕩電流,向單片機(jī)發(fā)出時鐘信號。XT

21、AL1接外部晶體的一個引腳,XTAL2接外晶體的另一端,在單片機(jī)內(nèi)部,接至上述振蕩器的反相放大器的輸出端。石英晶振起振后要能在XTAL2線上輸出一個3V左右的正弦波,以便使MCS-51片內(nèi)的OSC電路按石英晶振相同頻率自激振蕩。常用的時鐘電路設(shè)計有兩種方式,一種是內(nèi)部時鐘方式,另一種是外部時鐘方式,本設(shè)計中采用的是內(nèi)部時鐘方式。OSC的輸出時鐘頻率fosc為0.5MHz-16MHz,典型值為12MHz或者11.0592MHz。電容C1和C2可以幫助起振,典型值為30pF,調(diào)節(jié)它們可以達(dá)到微調(diào)fosc的目的。時鐘電路如圖3.2所示。圖3.2 時鐘電路3.1.3 復(fù)位電路復(fù)位電路的主要功能是使單片

22、機(jī)進(jìn)行初始化,在初始化的過程中需要在復(fù)位引腳上加大于2個機(jī)器周期的高電平。復(fù)位后的單片機(jī)地址初始化為0000H,然后繼續(xù)從0000H單元開始執(zhí)行程序。在復(fù)位電路中提供復(fù)位信號,等到系統(tǒng)電源穩(wěn)定后,再撤銷復(fù)位信號。但是為了在復(fù)位按鍵穩(wěn)定的前提下,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防在按鍵過程中引起的抖動而影響復(fù)位。單片機(jī)的復(fù)位電路如圖3.3所示。圖3.3 復(fù)位電路在單片機(jī)系統(tǒng)中,系統(tǒng)上電啟動的時候復(fù)位一次,當(dāng)按鍵按下的時候系統(tǒng)再次復(fù)位,如果釋放后再按下,系統(tǒng)還會復(fù)位。在剛開機(jī)時,這時按鍵沒有按下,電容充電,在這充電過程中電容兩端的電壓從0V迅速上升到5V,這時10K電阻的兩端電壓從5V

23、下降到0V,所以在剛開機(jī)時,10K電阻兩端電壓還沒有下降到2.5V以前,RES管腳為高電平,完成開機(jī)復(fù)位,電容充滿電后,10K電阻兩端電壓始終接近為0V,單片機(jī)RES管腳就始終為低電平。按下按鍵時,此時相當(dāng)于1K電阻和充好電的電容組成了一個回路,電容將瞬間放電,隨著電容兩端的電壓減小,10K電阻兩端的電壓逐漸增大,當(dāng)達(dá)到2.5V時,單片機(jī)RES管腳就為高電平,完成對單片機(jī)的復(fù)位。而后電容開始充電,10K電阻兩端電壓下降,RES管腳變回低電平,如需再次復(fù)位,則再次按下按鍵即可。3.2 溫濕度采集電路3.2.1 溫濕度傳感器簡介本設(shè)計的溫度采集和濕度采集選用DHT11溫濕度傳感器完成采集。DHT1

24、1數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價比極高等優(yōu)點。每個DHT11傳感器都在極為精確的濕度校驗室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲存在OTP內(nèi)存中,傳感器內(nèi)部在檢測信號的處理過程中要調(diào)用這些校準(zhǔn)系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場合的最佳選擇,產(chǎn)品為

25、4 針單排引腳封裝。圖3.4為DHT11器件圖。圖3.4 DHT11DATA 用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當(dāng)前小數(shù)部分用于以后擴(kuò)展,現(xiàn)讀出為零。操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗和數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。用戶MCU發(fā)送一次開始信號后,DHT11從低功耗模

26、式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束后,DHT11發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分?jǐn)?shù)據(jù)。從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機(jī)發(fā)送開始信號,DHT11不會主動進(jìn)行溫濕度采集,采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。總線為低電平,說明DHT11發(fā)送響應(yīng)信號,DHT11發(fā)送響應(yīng)信號后,再把總線拉高80us,準(zhǔn)備發(fā)送數(shù)據(jù),每一bit數(shù)據(jù)都以50us低電平時隙開始,高電平的長短定了數(shù)據(jù)位是0還是1。如果讀取響應(yīng)信號為高電平,則DHT11沒有響應(yīng),則檢查線路是否連接正常。當(dāng)最后一bit數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上

27、拉電阻拉高進(jìn)入空閑狀態(tài)。圖3.5為數(shù)字0信號表示方法。圖3.6為數(shù)字1信號表示方法。圖3.5 數(shù)字0信號表示方法圖3.6 數(shù)字1信號表示方法3.2.2 電路設(shè)計DHT11溫濕度傳感器一共有四個管腳,DHT11的供電電壓為35.5V,傳感器上電后,要等待1s 以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(VDD,GND)之間可增加一個100nF 的電容,用以去耦濾波。連接線長度短于20米時用5K上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻。由于本設(shè)計中DHT11溫濕度傳感器的連接線短于20米,所以選用4.7K的上拉電阻。傳感器的VCC端接5V電源,DATA端連接單片機(jī)的P1.2管腳

28、,這樣DHT11采集到的數(shù)據(jù)就可以通過P1.2管腳傳送到單片機(jī)里,單片機(jī)讀出數(shù)據(jù),再進(jìn)行后續(xù)的顯示和發(fā)射。在傳感器的DATA端和單片機(jī)的P1.2口的連線上接4.7K上拉電阻連接到電源,傳感器的NC端懸空,GND端接地,這樣,溫濕度采集電路就設(shè)計完成了。DHT11溫濕度傳感器的引腳說明如表3.1所示。溫濕度采集電路如圖3.7所示。表3.1 DHT11溫濕度傳感器的引腳說明Pin名稱注釋1VDD供電3-5.5VDC2DATA串行數(shù)據(jù)單總線3NC空腳,請懸空4GND接地,電源負(fù)極圖3.7 溫濕度采集電路其內(nèi)部采集工作原理是利用電阻式的濕敏元件和NTC感溫元件分別對濕度和溫度進(jìn)行采集。電阻式濕敏元件主

29、要使用高分子固體電解質(zhì)材料作為感濕膜,由于膜中存在可動離子而產(chǎn)生導(dǎo)電性,隨著濕度的增大,其電離作用增強(qiáng),便可動離子的濃度增大,電極間的阻值減小,當(dāng)濕度減小時,電離作用也相應(yīng)減弱,可動離子的濃度也減小,電極間的電阻值增大,這樣,濕敏元件對水分子的吸附和釋放情況,可通過電極間電阻值的變化檢測出來,從而得到相應(yīng)的濕度值。NTC感溫元件是一種熱敏電阻,溫度越高熱敏電阻阻值越小,溫度越低熱敏電阻阻值越大,從而通過對電阻值得變化檢測出響應(yīng)的溫度值。當(dāng)單片機(jī)通過DATA管腳給出開始采集信號,DHT11等待主機(jī)開始信號結(jié)束后發(fā)出響應(yīng)信號,并送出40bit的數(shù)據(jù),每1bit數(shù)據(jù)都以50us低電平時隙開始,高電平

30、的長短決定是0還是1,當(dāng)響應(yīng)完成后DHT11進(jìn)入空閑狀態(tài),等待主機(jī)下一次的開始信號。3.3 光照強(qiáng)度采集電路3.3.1 光照強(qiáng)度傳感器簡介光照強(qiáng)度采集電路采用數(shù)字量輸出的光照強(qiáng)度傳感器BH1750FVI完成。不區(qū)分光源數(shù)字型環(huán)境光強(qiáng)度傳感器BH1750FVI是日本RHOM株式會社近些年推出的一種兩線式串行總線接口的集成電路,可以根據(jù)收集的光線強(qiáng)度數(shù)據(jù)來進(jìn)行環(huán)境監(jiān)測,其具有165 535 lx的高分辨率,可支持較大范圍的光照強(qiáng)度變化。其內(nèi)部是利用一個光敏二極管作為一個感光元件,光照強(qiáng)度不同,通過光敏二極管的光電流不同,再經(jīng)過后面的集成運(yùn)放,將變化的電流轉(zhuǎn)變?yōu)樽兓碾妷海?jīng)過模數(shù)轉(zhuǎn)換器后就可以將采

31、集的光照強(qiáng)度的數(shù)字量的值輸出給單片機(jī)。BH1750FVI光照強(qiáng)度傳感器外形如圖3.8所示。圖3.8 BH1750FVI光照強(qiáng)度傳感器BH1750FVI光照強(qiáng)度傳感器是I2C總線接口,光源的依賴性不大的傳感器,光譜的范圍是人眼相近,無需任何外部零件。BH1750FVI可以改變傳感器的靈敏度,通過函數(shù)可以消除光學(xué)窗口的影響(有無光學(xué)窗口的差異):通過改變測量時間來調(diào)整。例如:當(dāng)光學(xué)窗口的傳輸速率變?yōu)?0%時(如果設(shè)置光學(xué)窗口,測量結(jié)果可以變?yōu)?.5倍)。將傳感器靈敏度從默認(rèn)狀態(tài)改變?yōu)?倍時,光學(xué)窗口的影響便可以忽略。 通過改變MG寄存器(時間測量寄存器)的值可以改變傳感器的靈敏度。如果希望傳感器的

32、靈敏度是原來的2倍,則MG寄存器的值需設(shè)置為2倍。當(dāng)MT寄存器值設(shè)置為2倍時,則測量時間需設(shè)置為原來的2倍。BH1750FVI主要應(yīng)用于手機(jī),LCD,TV,PC,便攜式游戲機(jī),數(shù)碼相機(jī),數(shù)碼攝像機(jī),車載導(dǎo)航,PDA,LCD顯示。3.3.2 電路設(shè)計BH1750FVI光照強(qiáng)度傳感器有五個管腳,其SCL管腳和SDA管腳分別和單片機(jī)的P1.0和P1.1相連,SCL端和單片機(jī)相連的線為時鐘線,SDA端和單片機(jī)相連的線為數(shù)據(jù)線,所采集的光照強(qiáng)度數(shù)據(jù)就是通過SDA管腳傳入單片機(jī)中的。在時鐘線和數(shù)據(jù)線上還要分別接5.1K上拉電阻與電源相連,VCC接電源,ADDR管腳和GND管腳同時接地,這樣,光照強(qiáng)度采集電

33、路就完成了。BH1750FVI光照強(qiáng)度傳感器的引腳說明如表3.2所示。光照強(qiáng)度采集電路如圖3.9所示。表3.2 BH1750FVI光照強(qiáng)度傳感器引腳說明Pin引腳名稱描述1VCC供給電壓3-5V2SCLIIC總線時鐘線3SDAIIC總線數(shù)據(jù)線4ADDRIIC地址引腳5GND電源地圖3.9 光照強(qiáng)度采集電路 其內(nèi)部是一個光敏元件和一個模數(shù)轉(zhuǎn)換器,其光敏元件為一個光敏二極管,當(dāng)有光照時,光敏二極管會產(chǎn)生光電流,光照強(qiáng)度不同,這個電流就不同,而后再經(jīng)過一個集成運(yùn)放將電流轉(zhuǎn)化為電壓,再經(jīng)過一個模數(shù)轉(zhuǎn)換器,從而對光照強(qiáng)度感知后就可以直接輸出數(shù)字量的光照強(qiáng)度值。上電工作時,BH1750FVI首先初始化,單

34、片機(jī)給起始信號,BH1750FVI將采集到的光照強(qiáng)度數(shù)據(jù)存入寄存器中,而后將其內(nèi)部寄存器的地址通過總線給主機(jī),主機(jī)讀取地址中的數(shù)據(jù),就是光照強(qiáng)度數(shù)據(jù),再將讀到的數(shù)據(jù)進(jìn)行顯示。3.4 顯示電路3.4.1 顯示器件簡介要將采集的數(shù)據(jù)顯示有很多種方法,有多種顯示器件可以幫助實現(xiàn)顯示電路的設(shè)計,本設(shè)計顯示電路選用七段4位數(shù)碼管。四位數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。能顯示4個數(shù)碼管叫四位數(shù)碼管。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的

35、陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陰極為高電平時,相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陽極為低電平時,相應(yīng)字段就不亮。數(shù)碼管動態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位選通

36、控制電路,位選通由各自獨立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機(jī)對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位數(shù)碼管的點亮?xí)r間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位數(shù)碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口

37、,而且功耗更低。數(shù)碼管有共陰極和共陽極之分,區(qū)別他們的方法是若公共端接地,其他端接電源,若各段測試能亮,說明是共陰的,反之共陽的;若公共端接電源,其他端分別接的,測得各端亮,則說明是共陽的,反之為共陰的。本設(shè)計中的數(shù)碼管為共陽數(shù)碼管。數(shù)碼管的引腳圖如圖3.10所示。圖3.10 數(shù)碼管的引腳圖3.4.2 電路設(shè)計此電路是由一個單片機(jī)和一個七段數(shù)碼管構(gòu)成,單片機(jī)控制這個數(shù)碼管,通過程序控制數(shù)碼管的每一位,使其顯示測量的濕度值。大多數(shù)的單片機(jī)應(yīng)用系統(tǒng),都要配置輸入設(shè)備和輸出設(shè)備,顯示部分屬于輸出設(shè)備,顯示作為人機(jī)交換的重要媒介,所以,一個好的顯示電路對于本系統(tǒng)是非常重要。本系統(tǒng)的顯示部分采用的是七段

38、數(shù)碼管,系統(tǒng)設(shè)計的濕度控制范圍是20%RH60%RH,誤差為1%RH,溫度和光照強(qiáng)度的誤差1度和1勒克斯,顯示電路的作用是循環(huán)顯示濕度值、溫度值和光照強(qiáng)度值,由溫濕度采集電路和光照強(qiáng)度采集電路采集的濕度值、溫度值和光照強(qiáng)度值傳送至單片機(jī),單片機(jī)通過程序控制,使采集量在數(shù)碼管上顯示,數(shù)碼管與單片機(jī)的P0口和P2口相連,P0口接上拉電阻。顯示電路的類型主要有LCD顯示,LED點陣顯示以及數(shù)碼管顯示等等,本系統(tǒng)顯示部分的作用是顯示濕度的上下限值以及采集到的濕度值??紤]到LCD顯示電路的工作原理相對比較復(fù)雜,并且容易出錯,而LED點陣顯示對于實現(xiàn)本系統(tǒng)顯示部分的設(shè)計顯然不太適合,因此本系統(tǒng)的顯示部分采

39、用的是七段數(shù)碼管顯示,顯示電路如圖3.11所示。圖3.11 顯示電路顯示電路工作時,由于顯示器的每一位是七段的,要想顯示0-9每一個數(shù)值,首先要在程序中建立一個數(shù)組,將這十個數(shù)按照在七段數(shù)碼管顯示的規(guī)則寫好,并放入數(shù)組中。然后要顯示一個十進(jìn)制的數(shù),要把這個數(shù)的個位、十位、百位和千位都要提取出來,再給到控制數(shù)碼管的這四位的變量中,最后數(shù)碼管快速掃描每一位的值,由于是在一個循環(huán)里重復(fù)掃描,所以我們看到的就是一個穩(wěn)定的四位數(shù)。單片機(jī)的每個工作管腳的電流之和不得超過120mA,所以,單片機(jī)的管腳不直接與數(shù)碼管的位選相連,而是與三極管的基極相連,通過三極管驅(qū)動數(shù)碼管。3.5 無線發(fā)射、接收電路3.5.1

40、 無線收發(fā)模塊簡介 在當(dāng)今社會,科技日益進(jìn)步,無線傳輸已經(jīng)成為很多信息傳播的主要途徑,本設(shè)計中要對采集電路采集的濕度值、溫度值和光照強(qiáng)度值進(jìn)行無線發(fā)射,在遠(yuǎn)端要無線接收到這三種數(shù)據(jù),并顯示。無線收發(fā)模塊有很多種,本設(shè)計的無線發(fā)射、接收電路中選用nRF24L01無線收發(fā)模塊。nRF24L01是一款新型單片射頻收發(fā)器件,工作于2.4 GHz2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型ShockBurst技術(shù),其中輸出功率和通信頻道可通過程序進(jìn)行配置。nRF24L01功耗低,在以-6dBm的功率發(fā)射時,工作電流也只有9mA;接收時,工作電流只有

41、12.3mA,多種低功率工作模式(掉電模式和空閑模式)使節(jié)能設(shè)計更方便。nRF24L01無線收發(fā)模塊如圖3.12所示。圖3.12 nRF24L01無線收發(fā)模塊3.5.2 電路設(shè)計 nRF24L01無線收發(fā)模塊一共有10個管腳,有6個管腳與單片機(jī)相連,3.3V供電,所以不能將該無線收發(fā)模塊直接與單片機(jī)相連,要先接在一個專用的轉(zhuǎn)接板上,這個轉(zhuǎn)接板會將5V電源轉(zhuǎn)成3.3V電源,以供給無線收發(fā)模塊。無線收發(fā)模塊不區(qū)分是無線發(fā)射還是無線接收,完全由程序控制。其引腳說明如圖3.13所示。圖3.13 nRF24L01無線收發(fā)模塊引腳圖無線發(fā)射電路中的nRF24L01無線發(fā)射模塊的六個管腳分別與發(fā)射端單片機(jī)的

42、P1口和P2口的一些管腳相連,無線接收電路中的nRF24L01無線接收模塊的六個管腳分別與接收端單片機(jī)的P1口的一些管腳相連。無線發(fā)射電路如圖3.14所示,無線接收電路如圖3.15所示。圖3.14 無線發(fā)射電路圖3.15 無線接收電路發(fā)射數(shù)據(jù)時,nRF24L01無線發(fā)射模塊采用GFSK調(diào)制方式,即高斯頻移鍵控調(diào)制方式。首先將nRF24L01配置為發(fā)射模式,接著把接收節(jié)點地址TX_ADDR和有效數(shù)TX_PLD按照時序由SPI口寫入nRF24L01緩存區(qū),TX_PLD必須在CSN為低時連續(xù)寫入,而TX_ADDR在發(fā)射時寫入一次即可,然后CE置為高電平并保持至少10s,延遲130s后發(fā)射數(shù)據(jù);若自動

43、應(yīng)答開啟,那么nRF24L01在發(fā)射數(shù)據(jù)后立即進(jìn)入接收模式,接收應(yīng)答信號。如果收到應(yīng)答,則認(rèn)為此次通信成功,TX_DS置高,同時TX_PLD從TX FIFO中清除;若未收到應(yīng)答,則自動重新發(fā)射該數(shù)據(jù),最后發(fā)射成功時,若CE為低則nRF24L01進(jìn)入空閑模式1;若發(fā)送堆棧中有數(shù)據(jù)且CE為高,則進(jìn)入下一次發(fā)射;若發(fā)送堆棧中無數(shù)據(jù)且CE為高,則進(jìn)入空閑模式2,完成對數(shù)據(jù)的發(fā)射。接收數(shù)據(jù)時,首先將nRF24L01配置為接收模式,接著延遲130s進(jìn)入接收狀態(tài)等待數(shù)據(jù)的到來。當(dāng)接收方檢測到有效的地址和CRC時,就將數(shù)據(jù)包存儲在RX FIFO中,同時中斷標(biāo)志位RX_DR置高,IRQ變低,產(chǎn)生中斷,通知MCU

44、去取數(shù)據(jù)。若此時自動應(yīng)答開啟,接收方則同時進(jìn)入發(fā)射狀態(tài)回傳應(yīng)答信號。最后接收成功時,若CE變低,則nRF24L01進(jìn)入空閑模式1,完成對數(shù)據(jù)的接收。這樣,無線收發(fā)電路完成對數(shù)據(jù)的發(fā)射和接收。3.6 鍵控電路此系統(tǒng)的作用是測試和監(jiān)控空氣的濕度、溫度和光照強(qiáng)度,因此,需要手動設(shè)置這三量的上限和下限。此鍵控電路是給單片機(jī)連接一個外部中斷,當(dāng)外部中斷0口低電平時,即S2閉合,主程序停止,執(zhí)行中斷程序,這時由三個開關(guān)分別控制三個采集量的選擇,S3閉合則開始預(yù)置濕度的上下限,S4閉合則開始預(yù)置溫度的上下限,S5閉合則開始預(yù)置光照強(qiáng)度的上下限。當(dāng)選擇好即將預(yù)置的采集量后,這時當(dāng)S6接高電平時,開始設(shè)置預(yù)置量

45、的上限,接低電平時,則開始設(shè)置預(yù)置量的下限。S7是控制顯示器的十位,按下則十位加一,一下一下的加,加到10則自動變?yōu)?,S8是控制顯示器的個位,按下則個位加一,同樣也是一下一下的加,加到10也會自動變?yōu)?,這樣就完成了手動預(yù)置的操作。設(shè)置完畢后,將S2斷開,中斷程序停止,系統(tǒng)繼續(xù)執(zhí)行主程序,即數(shù)碼管繼續(xù)循環(huán)顯示此時所測大氣的濕度、溫度和光照強(qiáng)度,鍵控電路如圖3.16所示。圖3.16 鍵控電路3.7 聲光報警電路此電路部分是為了方便工作人員監(jiān)控濕度而設(shè)計的,該部分電路是由一個單片機(jī)、一個發(fā)光二極管、一個三極管和一個蜂鳴器組成,和單片機(jī)連接的支路上串聯(lián)1K電阻。當(dāng)此時空氣的濕度、溫度和光照強(qiáng)度的任

46、意一個值低于所設(shè)置的下限值或高于所設(shè)置的上限值時,啟動聲光報警電路,二極管會發(fā)光,蜂鳴器會響。當(dāng)空氣濕度、溫度和光照強(qiáng)度在正常范圍之內(nèi)時,不會此啟動聲光報警電路,聲光報警電路如圖3.17所示。圖3.17 聲光報警電路當(dāng)三個采集量有不在所設(shè)定的上下限范圍之內(nèi)時,單片機(jī)和蜂鳴器、發(fā)光二極管連接的管腳分別置1,這樣三極管基級就有小電流,會使發(fā)射結(jié)正偏,三極管的集電極接電源,所以會使集電結(jié)反偏,三極管導(dǎo)通,驅(qū)動蜂鳴器工作。而放光二極管正向?qū)?,會發(fā)光。這樣聲光報警電路就會工作了。第4章軟件系統(tǒng)的設(shè)計系統(tǒng)軟件設(shè)計也就是程序設(shè)計,就是在完成了硬件系統(tǒng)的基礎(chǔ)上,再編寫相應(yīng)的程序,下載到芯片里,通過執(zhí)行程序指

47、令控制硬件,從而實現(xiàn)各部分功能。在本設(shè)計中,軟件編程方面采用C語言對單片機(jī)進(jìn)行編程,并使用KeiLC51系統(tǒng)進(jìn)行軟件調(diào)試。Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。掌握這一軟件的使用方法對于使用

48、51系列單片機(jī)的使用者來說是十分必要的。早期的單片機(jī)程序多采用匯編語言編寫。用匯編語言編程,直接、簡捷,可有效地訪問和控制各種硬件設(shè)備,如存儲器、I/O 口等,目標(biāo)代碼簡短、占用內(nèi)存少、執(zhí)行速度快、語句效率高。然而,由于匯編語言是面向機(jī)器的語言,不同廠家或同廠家不同系列的單片機(jī),其匯編語言指令系統(tǒng)往往互不相同,即通常所說的“不兼容”。這就出現(xiàn)了精通51單片機(jī)匯編語言的人不能直接編寫PIC 或其他單片機(jī)的匯編語言源程序,反之亦然的現(xiàn)象,以及產(chǎn)品升級換代和不同單片機(jī)間程序移植難的問題。而且,由于匯編語言是采用助記符的低級語言,可讀性較差,當(dāng)源程序功能多、程序長時,即使加了注釋,閱讀自己編寫的程序也

49、會感到困難,更不用說修改程序和增加功能了。目前,單片機(jī)的應(yīng)用越來越廣,各半導(dǎo)體生產(chǎn)廠家不斷推出各種高、中、低檔單片機(jī)系列,以適應(yīng)市場的需求。而客戶對單片機(jī)系統(tǒng)的設(shè)計人員的基本要求,就是要選擇能夠滿足產(chǎn)品性能和成本要求的單片機(jī),并以最快的速度開發(fā)出完全滿足市場需求的智能化產(chǎn)品。用匯編語言編程顯然無法達(dá)到要求。用C 語言開發(fā)單片機(jī)系統(tǒng)軟件的最大好處,是代碼效率高、軟件調(diào)試直觀、維護(hù)升級方便、代碼的重復(fù)利用率高、便于跨平臺的代碼移植等。因此,C 語言在單片機(jī)系統(tǒng)設(shè)計中得到越來越廣泛的運(yùn)用。C 語言是一種高級語言,具有低級語言的特點,原來用各種匯編語言編寫的單片機(jī)程序,均可用C語言程序代換。于是本設(shè)計

50、采用C語言進(jìn)行編程。4.1 主程序的設(shè)計開始本設(shè)計主要是完成對溫度、濕度和光照強(qiáng)度的采集并用數(shù)碼管顯示,并將數(shù)據(jù)通過無線發(fā)射模塊發(fā)射出去,發(fā)射端還要判斷采集的數(shù)值是否在預(yù)置的上下限范圍之內(nèi),不在范圍內(nèi)則還要進(jìn)行聲光報警。接收端則只顯示接收的數(shù)據(jù)。發(fā)射端主程序流程圖如圖4.1所示,接收端主程序流程圖如圖4.2所示。系統(tǒng)初始化調(diào)用溫濕度采集子程序調(diào)用光照強(qiáng)度采集子程序調(diào)用數(shù)碼管顯示子程序調(diào)用無線發(fā)射子程序是否在上下限范圍之內(nèi)聲光報警 N Y圖4.1 發(fā)射端主程序流程圖開始調(diào)用無線接收子程序系統(tǒng)初始化調(diào)用數(shù)碼管顯示子程序圖4.2 接收端主程序流程圖4.2 溫濕度采集子程序的設(shè)計此部分是使用DHT11

51、溫濕度傳感器進(jìn)行溫度和濕度的采集,傳感器內(nèi)部的電阻式濕敏元件和NTC元件分別對濕度和溫度采集,再經(jīng)數(shù)模轉(zhuǎn)換后將數(shù)值傳送給單片機(jī)。DHT11首先初始化,在采集完數(shù)據(jù)后,DATA端與單片機(jī)的P1.2口相連,開始單片機(jī)給P1.2口置0,表示主機(jī)發(fā)出開始信號,然后主機(jī)把總線拉高等待DHT11發(fā)出響應(yīng)信號,DHT11收到開始信號后將P1.2口置0表示發(fā)出響應(yīng)信號,而后開始一位一位的傳輸數(shù)據(jù),這時主機(jī)讀取響應(yīng)信號。溫濕度采集子程序流程圖如圖4.3所示。開始DHT11初始化數(shù)據(jù)采集主機(jī)發(fā)出開始信號DHT11發(fā)送響應(yīng)信號傳送數(shù)據(jù)主機(jī)讀取響應(yīng)信號返回圖4.3 溫濕度采集子程序流程圖4.3 光照強(qiáng)度采集子程序的設(shè)

52、計此部分是使用BH1750FVI光照強(qiáng)度傳感器對光照強(qiáng)度進(jìn)行采集,傳感器內(nèi)部的光敏二極管會發(fā)出光電流,光照強(qiáng)度不同,光敏二極管所發(fā)出的光電流值則不同,在經(jīng)過集成運(yùn)放和模數(shù)轉(zhuǎn)換器就可以將光照強(qiáng)度以數(shù)字量的形式傳送給單片機(jī),完成對光照強(qiáng)度的采集。光照強(qiáng)度采集部分流程圖如圖4.4所示。開始BH1750FVI初始化主機(jī)發(fā)送從機(jī)地址寫器件相應(yīng)寄存器地址寫數(shù)據(jù)到相應(yīng)寄存器地址讀取數(shù)據(jù)主機(jī)發(fā)送停止信號返回圖4.4 光照強(qiáng)度采集子程序流程圖4.4 無線發(fā)射接收子程序的設(shè)計此部分是利用nRF24L01無線發(fā)射模塊對采集完成的溫度數(shù)據(jù)、濕度數(shù)據(jù)和光照強(qiáng)度數(shù)據(jù)進(jìn)行無線發(fā)射。nRF24L01無線收發(fā)模塊不區(qū)分發(fā)射和接

53、收,完全由單片機(jī)的程序控制,將從傳感器采集完成的溫度、濕度和光照強(qiáng)度值存入到TxBuf數(shù)組中,無線發(fā)射模塊會將這個數(shù)組中的數(shù)據(jù)發(fā)射出去。接收端的無線接收模塊會將數(shù)據(jù)接收并存入到RxBuf數(shù)組中,再讀取這個數(shù)組中的數(shù)據(jù),這三個數(shù)據(jù)就是發(fā)射端采集的溫度、濕度和光照強(qiáng)度的數(shù)值。無線發(fā)射子程序流程圖如圖4.5所示。開始nRF2401初始化啟動發(fā)射模式將數(shù)據(jù)存入TxBuf中無線發(fā)射返回圖4.5 無線發(fā)射子程序流程圖無線接收子程序流程圖如圖4.6所示。開始nRF2401初始化啟動接收模式無線接收讀取RxBuf中的數(shù)據(jù)返回圖4.6 無線接收子程序流程圖4.5 數(shù)碼管顯示子程序的設(shè)計由采集電路采集到的溫度數(shù)據(jù)

54、、濕度數(shù)據(jù)和光照強(qiáng)度數(shù)據(jù)傳輸?shù)搅藛纹瑱C(jī)內(nèi),單片機(jī)就要通過程序控制將數(shù)據(jù)顯示出來,這時就要設(shè)計數(shù)碼管顯示電路,將傳感器采集完成的濕度值,溫度值和光照強(qiáng)度值用數(shù)碼管顯示。數(shù)碼管的位選分別接到單片機(jī)的P2.0至P2.3口上,由于是共陽極的數(shù)碼管,所以位選的四個管腳置1數(shù)碼管就滅,置0則亮,所以數(shù)碼管工作時,首先將數(shù)碼管清屏,就是全滅,再一位一位的掃描顯示各位的數(shù)。段選部分,abcdefg七段與P0口相連,哪一段置0則亮,置1則滅,工作時先將要顯示的數(shù)的段選碼從數(shù)組中找到送至P0口,再開啟位選,比如若要顯示1,則其二進(jìn)制的段選碼應(yīng)為11111001,十六進(jìn)制數(shù)為0 xf9。數(shù)碼管顯示流程圖如圖4.7所

55、示。開始清屏千位顯示百位顯示十位顯示個位顯示返回圖4.7 數(shù)碼管顯示子程序流程圖4.6 鍵控部分中斷程序的設(shè)計此部分是單片機(jī)的一個中斷服務(wù)程序所控制的,當(dāng)單片機(jī)的INT0口接低電平時,主程序停止,這時由三個開關(guān)分別控制三個采集量的選擇,控制哪個量的開關(guān)閉合則代表即將預(yù)置哪個量,S3控制濕度,S4控制溫度,S5控制光照強(qiáng)度。S3閉合則開始預(yù)置濕度的上下限,S4閉合則開始預(yù)置溫度的上下限,S5閉合則開始預(yù)置光照強(qiáng)度的上下限,S6接高電平時可以設(shè)置上限,S6接低電平時可以設(shè)置下限。S7和S8分別是控制這三個采集量的上限或者下限的十位調(diào)節(jié)和個位調(diào)節(jié)的,按一下則對應(yīng)位加一,加到十則跳到零,這樣就完成了鍵

56、控部分的設(shè)計。鍵控部分流程圖如圖4.8所示。開始預(yù)置量選擇是否設(shè)置上限設(shè)置下限設(shè)置上限 Y N 十位調(diào)節(jié)個位調(diào)節(jié)返回圖4.8 鍵控部分中斷程序流程圖第5章系統(tǒng)調(diào)試5.1 硬件調(diào)試在進(jìn)行硬件調(diào)試時,心一定要細(xì),一定要耐心,因為硬件有一個地方錯誤都可能導(dǎo)致整個電路出于不正常工作狀態(tài)。此系統(tǒng)硬件的搭建有的部分是利用杜邦線將各個模塊和單片機(jī)最小系統(tǒng)開發(fā)板相連,有的部分是將自己焊接的電路板與單片機(jī)相連接。鑒于使用的硬件比較多,電路比較復(fù)雜,所以在硬件調(diào)試的過程中一定要運(yùn)用了分步調(diào)試與整體調(diào)試想結(jié)合的方法。第一步調(diào)試硬件電路板首先目測各元件各管腳是否都已經(jīng)按照電路圖正確連接,接著利用電表逐一排查,查看每個

57、芯片的電源及地有無接反,是否焊好以及有無漏焊虛焊,然后查看每根導(dǎo)線與板的連接情況。仔細(xì)檢查各芯片的管腳連線是否正確,在這一切工作都完成后檢查高低電平是否短路。在這一切保證無誤后通電測量各芯片高低電壓及有關(guān)管腳電壓。第二步以同樣的方法步驟檢查近端硬件電路板。最后將兩部分電路連接在一塊,主要看LED數(shù)碼管能否顯示。圖5.1為硬件搭建的整體圖,此部分主要包括采集電路、顯示電路和無線收發(fā)電路。圖5.1 硬件搭建的整體圖在硬件調(diào)試時一共發(fā)現(xiàn)了三個錯誤,有一根連接數(shù)碼管和單片機(jī)開發(fā)板VCC端的杜邦線松了,在焊接鍵控部分時有一個焊點虛焊了,無線發(fā)射模塊的管腳與開發(fā)板之間連接錯了。前兩個錯誤很快就找到了,并且

58、換了一個杜邦線,將虛焊的焊點重新焊接完畢,最后一個錯誤找了好久才發(fā)現(xiàn),可能是因為發(fā)射模塊管腳多的原因吧,找到錯誤后重新將管腳連接正確。發(fā)射部分的鍵控電路焊接如圖5.2所示。圖5.2 發(fā)射部分焊接的鍵控電路5.2 軟件調(diào)試本設(shè)計中軟件部分是采用C語言進(jìn)行編寫的,純軟件調(diào)試只是對軟件程序進(jìn)行完善和編譯,使之沒有語法上的錯誤,能夠正確運(yùn)行。由于本系統(tǒng)軟件編寫了多個功能模塊,所以在軟件調(diào)試中首先對各個功能模塊進(jìn)行了調(diào)試,然后對整個程序進(jìn)行連調(diào)在編譯通過的情況下運(yùn)行。本設(shè)計中有兩個單片機(jī),發(fā)射部分一個,接收部分一個,所以發(fā)射端要有發(fā)射部分的程序,接收端要有接收部分的程序。在調(diào)試過程中遇到了一些語法錯誤,

59、在查閱資料的同使請教了老師和同學(xué),順利將其改正。由于無線發(fā)射和接收部分的通信無法在protues軟件里進(jìn)行仿真,所以以濕度一個采集量為例,在發(fā)射端采用555芯片搭制多諧振蕩電路單片機(jī)計頻的方法對濕度進(jìn)行采集,其protues仿真電路如圖5.3所示。此時的相對濕度為40%RH。圖5.3 以濕度為例在發(fā)射端的protues仿真圖鍵控設(shè)置采集量上下限的protues仿真圖如圖5.4所示,同樣也是以濕度為例在發(fā)射端,設(shè)置濕度的上限為85%RH。圖5.4 將濕度上限設(shè)為85%RH的仿真圖5.3 軟硬件聯(lián)調(diào)調(diào)試完硬件電路以及軟件編譯成功之后,就開始了軟硬件的聯(lián)合調(diào)試。即使前期已經(jīng)分別完成了軟件和硬件的獨立

60、調(diào)試,但在聯(lián)機(jī)調(diào)試中也還是遇到了一些的問題,比如硬件連接單片機(jī)的管腳與程序中該硬件連接單片機(jī)的管腳不一致,下載程序失敗導(dǎo)致硬件無法工作,將硬件和程序仔細(xì)核對,下載程序時步驟正確,這樣就可以避免這些錯誤。硬件顯示如圖5.5所示,此時光照強(qiáng)度的顯示值為59,由于拍攝效果不好,所以圖中數(shù)碼管顯示數(shù)值模糊。圖5.5 硬件顯示圖如用手將光強(qiáng)傳感器的感官部分擋住,則光照強(qiáng)度變?yōu)?,如圖5.6所示。圖5.6 遮住光照強(qiáng)度傳感器后顯示光強(qiáng)為0的硬件圖第6章社會效益及經(jīng)濟(jì)效益在現(xiàn)實生活中,無論是工業(yè)、農(nóng)業(yè)還是日常生活都離不開對大氣溫度、濕度和光照強(qiáng)度的測量。尤其是農(nóng)業(yè)生產(chǎn)中,溫度、濕度和光強(qiáng)對農(nóng)作物的生長產(chǎn)生了

61、很大的影響,所以此系統(tǒng)可以極大的滿足日常生活中人們的使用,而且此系統(tǒng)具有無線發(fā)射和無線接收的功能,在科技越來越進(jìn)步的當(dāng)今社會,人們的通信都無線化了,本系統(tǒng)在采集溫度、濕度和光強(qiáng)的同時還可以通過無線發(fā)射和接收模塊將數(shù)值傳送到遠(yuǎn)端,這也極大的完善了本系統(tǒng)的功能,可以滿足人們在遠(yuǎn)端想得知這三個采集量的數(shù)值的要求。所以本系統(tǒng)一旦融入社會,一定會帶來十分好的社會效益。本次設(shè)計為了達(dá)到良好的實用性,又盡可能的考慮了價格因素,在挑選器件上做到了物美價廉,因此有比較高的性價比。該設(shè)計符合社會需求,擁有廣大的消費(fèi)市場,而且推動了電子通信產(chǎn)業(yè)的發(fā)展,具有廣闊的市場前景。結(jié) 論本次課程設(shè)計實現(xiàn)了對生態(tài)園的大氣環(huán)境的

62、檢測,其中包括濕度數(shù)據(jù)、溫度數(shù)據(jù)和光照強(qiáng)度數(shù)據(jù)的采集,數(shù)碼管對濕度值的顯示,手動設(shè)置采集量的上下限以便在所測的三個采集量不在上下限范圍之內(nèi)時啟動聲光報警。工作人員如沒有聽到蜂鳴器發(fā)出聲響,沒有看到報警燈亮,則只需按時記錄此生態(tài)園的空氣濕度,并做相應(yīng)統(tǒng)計。如果聽到蜂鳴器發(fā)出聲響,看到報警燈亮,那么代表此時空氣濕度、溫度或光照強(qiáng)度中至少有一個值過低或過高,需工作人員馬上報告并作出應(yīng)對措施。此系統(tǒng)還將采集完成的三種數(shù)據(jù)通過無線發(fā)射模塊發(fā)射出去,這樣在遠(yuǎn)處的檢測人員也可以看到溫度、濕度和光照強(qiáng)度的數(shù)值,從而完成了在遠(yuǎn)程的檢測。綜上,此環(huán)境檢測系統(tǒng)會給社會帶來很大方便,可以大大的提高生態(tài)園的安全指數(shù)。這是一次十分有意義的訓(xùn)練,是一次真正鍛煉我們專業(yè)知識的訓(xùn)練。通過畢業(yè)設(shè)計,我真正的體會到了電子知識給我們的日常生活和工業(yè)生產(chǎn)帶來了很多方便之處,可以說我們的社會處處離不開電子。四個月的畢業(yè)設(shè)計結(jié)束了,在剛開始領(lǐng)到畢設(shè)題目時,生態(tài)園環(huán)境的檢測系統(tǒng),第一感覺就是應(yīng)該很簡單,因為題目里面的詞語都聽過,再仔細(xì)想想,感覺不知如何入手,看到任務(wù)書以后,我才漸漸的明白了需要我們做什么。這個大課題的電路設(shè)計最初讓我很

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!