版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
基于單片機的倉庫分布式溫濕度監(jiān)測系統(tǒng)設(shè)計目錄TOC\o"1-3"\h\u7015前言 [7]提出了一種基于OLED的自關(guān)閉PWM灰度控制的方法,與傳統(tǒng)比較器的方法相比,使用存儲器的結(jié)構(gòu)來代替比較器,在保證占空比和掃描效率一樣的情況下,減少了芯片的面積,提高芯片的性價比。近年來,智能手機、平板、智能手環(huán)等移動設(shè)備快速發(fā)展,如果可以將數(shù)據(jù)傳輸?shù)诫S身便攜式的移動終端,那么就可以不受周圍環(huán)境因素影響,完全實現(xiàn)實時監(jiān)測、控制,及時了解倉庫溫濕度變化并且采取措施。1.3研究的主要內(nèi)容及設(shè)計成果的應(yīng)用價值傳統(tǒng)的溫濕度監(jiān)測系統(tǒng)已經(jīng)不能滿足這個時刻在進(jìn)步的社會,高精度、高效率就是我們的目標(biāo),傳統(tǒng)的有線系統(tǒng),布線容易受到環(huán)境的限制,不易布線,所以需要在現(xiàn)有的基礎(chǔ)上實現(xiàn)無線監(jiān)測系統(tǒng)。其次,在便攜式移動設(shè)備上監(jiān)測,會更加的方便。這個研究主要是針對倉庫內(nèi)使用,傳輸溫濕度數(shù)據(jù),所以對傳輸速率要求不高,而且需要盡可能的降低功耗,提高整體性能。目前存在的溫濕度傳感器有兩種,一種是相互獨立的傳感器,比如溫度傳感器DS18B20和濕度傳感器HS1102,另一種就是復(fù)合式的溫濕度傳感器,比如DHT11。為了方便一點,同時測量溫濕度,選擇DHT11,但是相比較而言,溫度傳感器DS18B20的測量精度更高,其精度濕度5%RH,溫度2℃,量程濕度20-90%RH,溫度050℃。對于最終的監(jiān)控部分,希望不僅可以實現(xiàn)現(xiàn)場監(jiān)控顯示,就是利用LCD1602,還可以實現(xiàn)移動終端監(jiān)測,實現(xiàn)隨時都可以監(jiān)控倉庫的溫濕度。如果出現(xiàn)異常,就通過控制聲光報警器同時發(fā)出聲、光兩種報警信號,提醒工作人員處理問題。為實現(xiàn)所有功能,需要軟硬件結(jié)合,不僅需要硬件部分實現(xiàn),還需要對其數(shù)據(jù)傳輸和顯示進(jìn)行編程,在整體環(huán)節(jié)中,需要完成系統(tǒng)的整體設(shè)計,畫出原理圖,繪制整體流程圖,和編制系統(tǒng)軟件。如果可以實現(xiàn),那么就可以應(yīng)用于多種場合,農(nóng)業(yè)上大棚內(nèi)溫濕度監(jiān)測,保證生長物處于合適的環(huán)境中;糧食的儲存,降低糧食的新陳代謝,提高其質(zhì)量,還可以運用到工業(yè)自動化、智能家居等領(lǐng)域。2系統(tǒng)整體方案設(shè)計2.1設(shè)計目標(biāo)(1)對溫濕度進(jìn)行測量、采集;(2)可以實時顯示溫濕度的數(shù)據(jù);(3)可以通過按鍵設(shè)置溫度和濕度的上下限;(4)如果超出溫濕度范圍設(shè)置,可以進(jìn)行聲光報警;(5)可以實現(xiàn)無線通信傳輸2.2方案選擇2.2.1溫濕度傳感器選擇方案一:常用的數(shù)字式溫度傳感器DS18B20的測溫范圍是-55℃~+125℃,固有測溫誤差為1℃,精度可達(dá),是一款用一根口線即可實現(xiàn)與微處理器之間通訊的已校準(zhǔn)的溫度傳感器。濕度傳感器HS1101在電路中相當(dāng)于一個電容,濕度越大,電容越大,其可測量范圍為0%—100%RH,誤差為±2%RH。方案二:溫濕度傳感器DHT11,由電阻式感濕元件和NTC測溫元件組成。其測溫范圍為0℃~50℃,精度達(dá),濕度范圍為20%~90%RH,精度達(dá)。綜上所述,單獨的溫度傳感器DS18B20和濕度傳感器HS1101比溫濕度傳感器DHT11精度高,但是這個設(shè)計用在倉庫中,DHT11即可。而且DHT11體積小,成本低,可以同時測量溫度和濕度,故選擇方案二。2.2.2無線通信模塊選擇在此次設(shè)計中,準(zhǔn)備采用無線通信代替有線模塊,無線通信模塊地的穩(wěn)定性和準(zhǔn)確性是很重要的。選擇了兩款無線通信模塊。方案一:NRF905是Nordic公司出品的一款無線數(shù)傳芯片,有頻率合成器、功率放大器、晶體震蕩器和調(diào)制器等模塊。主要工作的ISM頻段為433MHz、868MHz、915MHz。采用ShockBurst傳輸模式,自動生成前導(dǎo)碼和CRC校驗碼。發(fā)射功率最大為10dBm,傳輸距離一般為600m以上,如果地形復(fù)雜,那么使傳輸距離減少。此芯片大多應(yīng)用于較大的場合,比如農(nóng)牧業(yè),所以,這點不滿足要求。方案二:NRF24L01工作在2.4-2.5GHz世界通用ISM頻段,具有極低的電流消耗,最大的發(fā)射功率是0dBm。輸出功率、頻道選擇和協(xié)議的設(shè)置都可以采用SPI口進(jìn)行設(shè)置,沒有復(fù)雜的通信協(xié)議,同種產(chǎn)品可以自由通信。這款芯片是體積最小、功耗最少、外圍原件最少的低成本射頻系統(tǒng)原件。綜上所述,NRF24L01滿足本次設(shè)計的要求,故選擇方案二。2.2.3顯示模塊的選擇方案一:應(yīng)用7段數(shù)碼管顯示,成本低,但是不顯示字符。方案二:采用點陣字符型LCD1602,可以同時顯示數(shù)字和字符,價格便宜,通過將ASCII碼寫入內(nèi)部的顯示數(shù)據(jù)RAM,控制電路顯示。綜上所述,由于得同時顯示字符和數(shù)字,所以選擇LCD1602液晶顯示,故選擇方案二。2.3本章總結(jié)綜上所述,本次設(shè)計是基于51單片機的無線溫濕度報警設(shè)計,由兩部分組成,主機和從機。主機和從機都是基于51單片機作為主體控制芯片,從機的數(shù)字式溫濕度傳感器DHT11進(jìn)行溫濕度數(shù)據(jù)監(jiān)測,通過無線通信模塊NRF24L01將數(shù)據(jù)傳輸給主機,并且在也就顯示器LCD1602上顯示出來,通過按鍵設(shè)置溫濕度的上下限,如果溫濕度出現(xiàn)異常,就會使蜂鳴器進(jìn)行報警。圖2-1接收端框圖圖2-2發(fā)送端框圖3硬件設(shè)計倉庫具有大范圍、溫濕度要求高的特點。溫度、濕度直接影響倉庫產(chǎn)品的質(zhì)量,所以,對其監(jiān)測十分重要。近年來,溫濕度監(jiān)測系統(tǒng)不斷地發(fā)展,應(yīng)用于各個領(lǐng)域,隨著自動化技術(shù)的發(fā)展,也取得了很大的進(jìn)步。溫濕度檢測系統(tǒng)主要由DHT11溫濕度傳感器監(jiān)測模塊、LED1602顯示模塊、AT89S52單片機控制模塊、NRF24L01無線通信模塊等組成。本章將逐一對其進(jìn)行敘述。3.1單片機的最小應(yīng)用系統(tǒng)單片機AT89S52的最小應(yīng)用系統(tǒng)是由時鐘電路和復(fù)位電路構(gòu)成。3.1.1AT89S52簡介(1)概述AT89S52單片機是一種低功耗、高性能CMOS8位微控制器,具有8KB的Flash存儲器,完全兼容AT89S51和AT89S52單片機,所以軟硬件不變,可以用AT89S52代替。因此,在仿真中應(yīng)用的是AT89S52單片機并不影響功能。AT89S51單片機一般采用40引腳的DIP封裝。其中,32只I/O口引腳,4值為電源和時鐘引腳,剩下的為控制引腳。片內(nèi)主要包括8位的CPU、256B的數(shù)據(jù)存儲器、8KB的程序存儲器、中斷系統(tǒng)、4個8位的并行口、特殊功能寄存器和1個看門狗定時器。(2)AT89S52的單片機引腳功能單片機共40個引腳,如圖示:圖3-1AT89S52引腳圖(a)電源引腳(40引腳):接+5V的電源(20引腳):接地(b)時鐘引腳XTAL1(19引腳):片內(nèi)時鐘振蕩器的反相放大器的輸入端。當(dāng)使用外部獨立時鐘振蕩器時,接獨立時鐘振蕩器的輸出信號。XTAL2(20引腳):片內(nèi)時鐘振蕩器的反相放大器的輸出端。當(dāng)使用外部獨立時鐘振蕩器時,該引腳應(yīng)該懸空。(c)控制引腳RST(9引腳):復(fù)位信號輸入端,高電平有效。/(31引腳):訪問允許外部程序存儲器控制器或編程電壓。高電平時,訪問內(nèi)部存儲器;低電平時,訪問外部存儲器。(30引腳):地址鎖存允許/編程脈沖輸入,用ALE鎖存從P0口輸出的低8位地址。在對片內(nèi)EPROM編程時,編程脈沖由此輸入。(29引腳):外部程序存儲器讀選通信號,低電平有效。(d)并行I/O口引腳單片機有四組雙向I/O口,可以進(jìn)行數(shù)據(jù)輸入/輸出。其中:P0口(P0.7~P0.0引腳):P0口是8位并行雙向I/O口,當(dāng)作為通用I/O口和程序校驗期間,需加上拉電阻。P1口(P1.7~P1.0引腳):內(nèi)部含有上拉電阻,可驅(qū)動4個LS型TTL負(fù)載,對片內(nèi)編程和校驗時,作為低8位地址線。P2口(P2.7~P2.0引腳):內(nèi)部含有上拉電阻,可驅(qū)動4個LS型TTL負(fù)載。可作為高8位地址總線和通用I/O口使用。P3口(P3.7~P3.0引腳):內(nèi)部含有上拉電阻,可驅(qū)動4個LS型TTL負(fù)載,作為通用I/O口,這是P3的第一功能,第二功能如下表:表3-1P3口的第二功能端口引腳第二功能說明P3.0RXD串行口數(shù)據(jù)接收端P3.1TXD串行口數(shù)據(jù)發(fā)送端P3.2外中斷請求0P3.3外中斷請求1P3.4T0定時/計數(shù)器0外部計數(shù)信號輸入P3.5T1定時/計數(shù)器1外部計數(shù)信號輸入P3.6外部RAM寫選通信號輸出P3.7外部RAM讀選通信號輸出3.1.2時鐘電路設(shè)計時鐘控制電路有序地控制著單片機AT89S52各外圍部件的運行,單片機的速度與時鐘的頻率息息相關(guān),質(zhì)量高的時鐘電路,單片機的穩(wěn)定性也會越好。單片機AT89S52內(nèi)部有一個以芯片引腳XTAL1作為輸入端,芯片引腳XTAL2作為輸出端的高增益反相放大器,可以構(gòu)成時鐘振蕩器。如下圖示,兩個引腳外接微調(diào)電容和石英晶體振蕩器。圖3-2時鐘電路3.1.3復(fù)位電路設(shè)計單片機系統(tǒng)正常初始化或操作錯誤使系統(tǒng)處于“死循環(huán)”和“跑飛”狀態(tài)時,都可以按下復(fù)位鍵,使PC被初始化,使芯片引腳RET為高電平,讓單片機從程序儲存器的0000H單元開始執(zhí)行程序。此處使用人工按鍵復(fù)位,當(dāng)按鍵按下時,兩個電阻進(jìn)行分壓,在引腳RST處產(chǎn)生高電平,按鍵按下的時間越長,復(fù)位的時間也就越長。如圖示:圖3-3復(fù)位電路3.2溫濕度傳感器DHT113.2.1DHT11簡介(1)概述DHT11溫濕度傳感器是含已校準(zhǔn)數(shù)字信號的一款復(fù)合型的溫濕度傳感器。由一個電阻式感濕原件和NTC測溫元件組成,并于一位高性能8位單片機相連接。因此,DHT11的響應(yīng)很快、抗干擾能力很強、性價比極高、品質(zhì)很高,具有卓越的長期穩(wěn)定性。體積小、功耗低、單線制串行接口,系統(tǒng)集成很簡易快捷,具有超長的信號傳輸距離,可達(dá)20米以上,4針單排引腳封裝,所以可以應(yīng)用在極端的環(huán)境中。3.2.2DHT11引腳說明(1)接口說明一般情況下,連接線小于20米時,加5K的上拉電阻;如果線路超過20米,就要根據(jù)實際情況選擇合適的上拉電阻。如圖示:圖3-4單片機與DHT11連接電路(2)引腳說明DHT11是四針單排引腳,如圖示:圖3-5DHT11實物圖Pin1(VDD):接3-5.5V直流電源;Pin2(DATA):單總線串行數(shù)據(jù)接口;Pin3(NC):懸空;Pin4(GND):接地,電源負(fù)極。(3)串行接口DHT11溫濕度傳感器利用單總線協(xié)議,因此有嚴(yán)格的時序。2號引腳用于微處理器和溫濕度傳感器DHT11之間,進(jìn)行數(shù)據(jù)的通訊與同步。每次通訊時間大約為4ms,一次完整的數(shù)據(jù)傳輸需要40bit,數(shù)據(jù)格式如下:“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗和”。其中,正確的校驗和等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的后8位。微處理器發(fā)送開始信號后,DHT11就從低功耗轉(zhuǎn)為高電平,等主機開始信號結(jié)束后,DHT11就開始發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),同時也會出發(fā)數(shù)據(jù)采集。如果沒有收到主機的開始信號,那么采集信號就不會觸發(fā),DHT11不會自己主動采集信號。圖3-6通訊過程主機先要發(fā)送一個至少18ms的低電平,在這個過程中,DHT11內(nèi)部完成AD轉(zhuǎn)換等操作,當(dāng)主機拉高后,有20-40us時間,用于主機的輸入輸出轉(zhuǎn)化,當(dāng)主機釋放主機控制權(quán),此時主機為輸入狀態(tài),總線被上拉電阻拉高,DHT11嘗試將主線拉低,拉低后就開始準(zhǔn)備發(fā)送數(shù)據(jù),再拉高一次就開始傳輸數(shù)據(jù)。圖3-7具體傳輸如下圖,數(shù)據(jù)0和數(shù)據(jù)1依靠高電平持續(xù)時長來判斷。一個bit數(shù)據(jù)發(fā)送完之后會把總線拉低,也就是說,拉低一段時間后開始采樣。數(shù)據(jù)0表示方法:圖3-8數(shù)據(jù)0表示方法數(shù)據(jù)1表示方法:圖3-9數(shù)據(jù)1表示方法3.3按鍵設(shè)計根據(jù)要求,加入了按鍵設(shè)計。在本系統(tǒng)中使用了四個按鍵,分別的作用為“設(shè)置”、“數(shù)據(jù)加”、“數(shù)據(jù)減”和“退出”。S1鍵就是設(shè)置溫濕度數(shù)據(jù)的上下限和切換各個功能。第一次按鍵會使LCD1602從目前溫濕度數(shù)據(jù)顯示界面轉(zhuǎn)換為安全范圍顯示界面,光標(biāo)首先定位于溫度的下限值,通過按鍵S2、S3調(diào)節(jié)數(shù)值的大小。再按一次,就會定位于溫度上限,從而改變上限值,以此類推。S2使數(shù)據(jù)增加,長按會使數(shù)值快速增加,按一次,就加一。相對應(yīng),S3使數(shù)據(jù)減小,長按會使數(shù)據(jù)快速減小。直接按S4,就會退出溫濕度上下限設(shè)置界面,返回溫濕度數(shù)據(jù)顯示界面。按鍵開關(guān)是一種電子開關(guān),施加力使觸點閉合,就會接通電路,該點電平變?yōu)榈碗娖?,松開開關(guān),就會斷開電路。但是,在電平轉(zhuǎn)換之間存在著“抖動過程”。這是因為鍵盤為機械開關(guān),在按下按鍵時不會馬上穩(wěn)定導(dǎo)通,松開時也不會立馬斷開,都存在著彈性抖動。很容易影響CPU的判斷,消除抖動是為了使單片機對一次按鍵動作確定一次按鍵有效抖動消除分為硬件去抖和軟件去抖。此處利用了延時程序去抖,通過判斷按鍵是否按下,如果有鍵按下,那么該點應(yīng)為低電平,延時程序延時10ms,確認(rèn)該電平是否還為低電平,如果是,則確實有鍵按下。反之,按鍵松開,就判斷是否為高電平。圖3-10按鍵模塊3.4LCD1602液晶顯示器LCD1602是常用的點陣字符型LCD。也就是在平板上多行列的矩陣式晶格點,顯示的清晰度與點的大小有關(guān)。其中,LCD為商標(biāo)名稱,16代表每行可顯示16個字符,02代表顯示兩行。3.4.1LCD1602的引腳功能此處采用14引腳的無背光的LCD1602。包括8條數(shù)據(jù)線,3條控制線,3條電源線。表3-2LCD1602引腳功能引腳引腳名稱引腳功能1電源地2+5V邏輯電源3液晶顯示偏壓(調(diào)節(jié)顯示對比度)4寄存器選擇(1-數(shù)據(jù)寄存器,0-命令/狀態(tài)寄存器)5讀/寫操作選擇(1-讀,0-寫)6使能信號7-14數(shù)據(jù)總線,與單片機數(shù)據(jù)總線相連,三態(tài)3.4.2LCD1602的復(fù)位與初始化設(shè)置一般情況下,要對LCD1602首先進(jìn)行判“忙”,如果標(biāo)志位BF=1,處于忙狀態(tài),則需要等待;如果標(biāo)志位BF=0,則表示LCD1602不忙,可以向其中寫入命令或數(shù)據(jù)。LCD1602上電后復(fù)位的狀態(tài)為:消除屏幕顯示;設(shè)置為8位數(shù)據(jù)長度,單行顯示,5×7點陣字符;顯示屏,光標(biāo),閃爍功能均關(guān)閉;輸入方式為整屏顯示不移動,即I/D=1。LCD1602的一般初始化設(shè)置為:寫入命令0X38,顯示模式設(shè)置,16×2顯示,5×7點陣,8位數(shù)據(jù)接口;寫入命令0X0C,設(shè)置開顯示,不顯示光標(biāo);寫入命令0X06,寫一個字符后地址指針加1;寫入命令0X01,顯示清屏,數(shù)據(jù)指針清0。初始化程序如下:void
LcdInit()
{
LcdWriteCmd(0x38);
//
16*2顯示,5*7點陣,8位數(shù)據(jù)口
LcdWriteCmd(0x0C);
//
開顯示,不顯示光標(biāo)
LcdWriteCmd(0x06);
//
地址加1,當(dāng)寫入數(shù)據(jù)后光標(biāo)右移
LcdWriteCmd(0x01);
//
清屏
}
LCD1602與單片機的連線如圖所示圖3-11LCD1602與單片機連接單片機與LCD1602進(jìn)行連接,通過將、、三個引腳清0和置1,對LCD1602進(jìn)行讀寫操作。P0端口與D0-D7端相接,進(jìn)行數(shù)據(jù)的傳輸。3.5聲光報警系統(tǒng)聲光報警部分由蜂鳴器進(jìn)行聲音報警,指示燈進(jìn)行光報警。工作人員通過按鍵對倉庫的溫濕度上下限進(jìn)行設(shè)置,溫濕度過高和過低時就會使聲光報警系統(tǒng)作用,使工作人員及早察覺,解決問題,避免損失,使用單片機的I/O口很容易實現(xiàn)功能。3.5.1蜂鳴器模塊蜂鳴器是一種廣泛應(yīng)用于電子設(shè)備的發(fā)聲器件,是一種一體化的發(fā)聲訊器,由直流電壓供電,分為壓電式蜂鳴器和電磁式蜂鳴器。此處應(yīng)用壓電式蜂鳴器。將壓電材料粘貼在金屬片上,在兩端施加電壓時,就會因為逆電壓效應(yīng),產(chǎn)生機械變形發(fā)出聲響。壓電式蜂鳴器體積小、靈敏度高、耗電省、可靠性高,造價低廉等特點。圖3-12蜂鳴器連接圖在圖示中,引腳通過晶體管接蜂鳴器,這是由于蜂鳴器的工作電流比較大,單片機的I/O口無法直接驅(qū)動,所以得通過晶體管放大電流。當(dāng)引腳輸出高電平時,晶體管飽和導(dǎo)通,壓電式蜂鳴器兩端都會獲得+5V的電壓而鳴叫;而引腳輸出低電平,也就是基極截止,蜂鳴器就會停止發(fā)聲。因此,當(dāng)溫濕度超出安全范圍,就使引腳等于1,給高電平,使蜂鳴器作用,在正常范圍的時候,使之處于低電平,防止漏電。3.5.2指示燈模塊指示燈模塊通過發(fā)光二極管來實現(xiàn)。發(fā)光二極管工作電流越大,顯示亮度就會越亮。發(fā)光二極管由P型半導(dǎo)體和N型半導(dǎo)體組成,在他們之間有一個過渡層,叫PN結(jié),給發(fā)光二極管加正向電壓時,由P區(qū)注入N區(qū)的空穴和N區(qū)注入P區(qū)的電子,在PN結(jié)附近復(fù)合,發(fā)出熒光。發(fā)光二極管的反向擊穿電壓大于5V,它的正向伏安特性曲線很陡,所以必須串聯(lián)電阻來限制電流。發(fā)光二極管具有單向?qū)щ娦?,P3口內(nèi)部由于有30kΩ左右的上拉電阻,如果高電平輸出,那么在P3口輸出的拉電流僅幾百μA,驅(qū)動能力較差,亮度不夠。如果端口引腳為低電平,那么就會使灌電流從單片機外部流向內(nèi)部,則將大大增加流過的灌電流值。如果加正向電壓,電流由陽極流向陰極,二極管導(dǎo)通;加反向電壓,二極管截止。3.6NRF2401無線通信3.6.1NRF2401簡介NRF24L01是一款由挪威NordicVLSI生產(chǎn)的單片無線收發(fā)器芯片,工作在2.4GHz-2.5GHz世界通用ISM頻段。NRF24L01無線收發(fā)器包括:頻率發(fā)生器、功率放大器、晶體振蕩器、調(diào)制器和解調(diào)器并融合了增強型“ShockBurst”技術(shù)??梢酝ㄟ^SPI接口進(jìn)行設(shè)置輸出功率頻道選擇和協(xié)議,幾乎可以連接到各種單片機芯片,并通過SPI接口完成無線數(shù)據(jù)傳送工作,高速率,低功耗,應(yīng)用簡單功能,其性能卓越。NRF24L01功耗低,在以-6dBm的功率發(fā)射時,工作電流也只有9mA;接收時,工作電流只有12.3mA,多種低功率工作模式,工作在100mw時電流為160mA,在數(shù)據(jù)傳輸方面實現(xiàn)相對Wi-Fi距離更遠(yuǎn),但傳輸數(shù)據(jù)量不如Wi-Fi(掉電模式和空閑模式)使節(jié)能設(shè)計更方便。3.6.2NRF2401引腳說明圖3-13NRF24L01引腳圖引腳及其功能:表3-3NRF24L01引腳功能引腳名稱引腳功能描述1CE數(shù)字輸入RX或TX模式選擇2CSN數(shù)字輸入SPI片選信號3SCK數(shù)字輸入SPI時鐘4MOSI數(shù)字輸入從SPI數(shù)據(jù)輸入腳5MISO數(shù)字輸出從SPI數(shù)據(jù)輸出腳6IRQ數(shù)字輸出可屏蔽中斷腳7VDD電源電源(+3V)8VSS電源接地(0V)9XC2模擬輸出晶體震蕩器2腳10XC1模擬輸入晶體震蕩器1腳/外部時鐘輸入腳11VDD_PA電源輸出給RF的功率放大器提供的+1.8V電源12ANT1天線天線接口113ANT2天線天線借口214VSS電源接地(0V)15VDD電源接地(+3V)16IREF模擬輸入?yún)⒖茧娏?7VSS電源接地(0V)18VDD電源電源(+3V)19DVDD電源輸出去耦電路電源正極端20VSS電源接地(0V)3.6.3工作模式NRF24L01主要有四種工作模式:接收、發(fā)送、待機、掉電。通過配置寄存器就可以改變。表3-4NRF24L01工作模式模式PWR_UPPRIM_RXCEFIFO寄存器狀態(tài)接收模式111-發(fā)送模式101數(shù)據(jù)在TXFIFO寄存器中發(fā)送模式101→0停留在發(fā)送模式,直到數(shù)據(jù)發(fā)送完待機模式Ⅱ101TXFIFO為空待機模式Ⅰ1-0無數(shù)據(jù)傳輸?shù)綦娔J?3.6.4NRF24L01與單片機連接圖圖3-14單片機與NRF24L01連接圖3.7本章總結(jié)綜上所述,溫濕度監(jiān)測系統(tǒng)如下圖,該電路應(yīng)用AT89S52作為主機,外圍有最小單片機系統(tǒng),包括時鐘電路和復(fù)位電路,保證單片機穩(wěn)定運行。用溫濕度傳感器DHT11作為溫濕度采集部分,LCD1602液晶顯示溫濕度數(shù)據(jù),其次,還有按鍵部分,用來設(shè)置溫濕度的上限和下限,如果超過范圍,還有聲光報警系統(tǒng)報警。主機用來顯示和控制,從機用來采集數(shù)據(jù)。圖3-15發(fā)送數(shù)據(jù)端圖3-16接收數(shù)據(jù)端4軟件設(shè)計4.1程序語言及開發(fā)環(huán)境在軟件設(shè)計部分,需要注意溫濕度傳感器DHT11的時序問題,編程的時候要條理清晰,模塊化編程會簡單點。在此應(yīng)用的語言是C語言,編程軟件是KeilC51。C語言是一門抽象化的計算機編程語言,與匯編語言相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上具有明顯的優(yōu)勢。KeilC51是美國KeilSoftware公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng)。通過分為模塊化編寫程序,分為LCD1602顯示模塊,DHT11溫濕度測量模塊,聲光報警模塊等。4.2程序流程圖設(shè)計4.2.1主程序流程圖本系統(tǒng)的軟件流程圖如圖4-1所示,主要就是圍繞發(fā)送端和接收端能否發(fā)送接受數(shù)據(jù)寫的,最開始先判斷EN是否等于零,也就是NRF24L01是否處于待機狀態(tài),如果是,就開始寫入節(jié)點數(shù)據(jù)和地址,開始判斷是否發(fā)送端NRF24L01是否進(jìn)入數(shù)據(jù)發(fā)送狀態(tài),也就是判斷是否PWR_UP等于1,PRIM_RX等于0,CE等于1,如果是,就處于數(shù)據(jù)發(fā)送模式,然后看接收端是否收到數(shù)據(jù),如果收到數(shù)據(jù),就進(jìn)行顯示。如果沒有應(yīng)答,那么就會重新發(fā)送數(shù)據(jù),直到發(fā)送成功為止,但是發(fā)送次數(shù)有上限,如果達(dá)到上限,IRQ將會產(chǎn)生中斷。圖4-1主程序流程圖4.2.2LCD1602顯示模塊程序設(shè)計單片機的P2.7和P2.6引腳分別與單片機的RS和E這兩個引腳相連,通過指令對這三個引腳置1和清0,就可以實現(xiàn)對LCD1602的讀/寫控制操作。單片機的P0口通過上拉電阻與LCD1602的D0-D7相連,進(jìn)行命令和數(shù)據(jù)的傳輸。首先應(yīng)該通過命令設(shè)置對LCD1602進(jìn)行初始化設(shè)置,接下來定位光標(biāo),也就是該字符應(yīng)該在哪顯示,光標(biāo)定位成功,那么字符就會顯示在這個位置上,如果這個位置的字符顯示完畢,那么就可以重新定位光標(biāo),重新顯示新的字符。顯示一個字符前首先應(yīng)該判忙,如果LCD1602不忙,則可以向LCD1602寫入命令或數(shù)據(jù),接下來就是寫命令,寫顯示字符,最后LCD1602就會自動顯示字符。圖4-2LCD1602顯示模塊流4.2.3DHT11傳感器程序設(shè)計溫濕度傳感器DHT11編程需要格外注意時序關(guān)系,首先通過命令讀取傳感器的溫濕度和校驗和,然后判斷數(shù)據(jù)是否出錯,如果數(shù)據(jù)有問題,就要重新讀取數(shù)據(jù),直到正確為止。圖4-3DHT11傳感器流程圖4.2.4NRF24L01無線模塊程序設(shè)計在學(xué)習(xí)NRF24L01無線模塊程序設(shè)計之前,首先就要了解一下其內(nèi)部的寄存器,通過設(shè)置寄存器,才使得無線模塊收發(fā)數(shù)據(jù)。表4-1NRF24L01寄存器地址(H)寄存器名稱功能00CONFIG設(shè)置24L01工作模式01EN_AA設(shè)置接收通道及自動應(yīng)答02EN_RXADDR使能接收通道地址03SETUP_AW設(shè)置地址寬度04SETUP_RETR設(shè)置自動重發(fā)數(shù)據(jù)時間和次數(shù)07STATUS狀態(tài)寄存器,用來判斷工作狀態(tài)0A-0FRX_ADDR_P0~P5設(shè)置接收通道地址10TX_ADDR設(shè)置接收接點地址11-16RX_PW_P0~P5設(shè)置接收通道的有效數(shù)寬度(1)NRF24L01數(shù)據(jù)發(fā)送子程序NRF24L01進(jìn)行數(shù)據(jù)發(fā)送時,首先要通過設(shè)置寄存器,將無線模塊配置為數(shù)據(jù)發(fā)送模式,然后將接受點地址和有效數(shù)據(jù)寫入緩存區(qū),置CE為高電平后延時10毫秒,延時130毫秒后發(fā)送數(shù)據(jù)。如果開啟自動應(yīng)答,那么在發(fā)送完數(shù)據(jù)后將會立即進(jìn)入接受模式。如果收到應(yīng)答,則證明此次通信成功;如果未收到應(yīng)答,則會重新發(fā)送數(shù)據(jù),如果發(fā)送數(shù)據(jù)次數(shù)達(dá)到上限,將會產(chǎn)生中斷。(2)NRF24L01數(shù)據(jù)接收子程序NRF24L01進(jìn)行數(shù)據(jù)接收時,首先通過設(shè)置寄存器,使之處于接收模式,然后延時130毫秒等待數(shù)據(jù),進(jìn)行接收。如果開啟自動應(yīng)答,那么接收端會同時應(yīng)答。接收成功后,CE變成低電平,那么NRF24L01將會進(jìn)入空閑模式Ⅰ。5系統(tǒng)調(diào)試與測試5.1硬件調(diào)試本次設(shè)計應(yīng)用萬用板,完成電路實物的制作。組裝好電路之后,在上電之前,首先應(yīng)該檢查線路連接是否正確,芯片的型號,杜邦線和芯片連接有沒有短路等,二極管、電解電容極性有沒有接反等,觀察焊點是否牢固,解決一些明顯的故障。然后就可以通過USB接口給板子供電,將程序燒入單片機,通過調(diào)試判斷還有什么問題。給兩塊板子通過USB接口分別上電,發(fā)送端采集溫度,接收端接受數(shù)據(jù),并在LCD1602液晶屏上面顯示。剛上電之后,如果沒有接收到信號,就會顯示沒有感應(yīng)到,等幾秒LCD1602顯示目前的溫濕度,按下按鍵S1,顯示屏進(jìn)入溫濕度上下限設(shè)置界面,首先默認(rèn)設(shè)置溫度的下限值如果按下S2,那么數(shù)值加,按下S3,數(shù)值減。當(dāng)溫度的下限值設(shè)置完畢后,按下S1將會移動光標(biāo)到溫度的上限值設(shè)置。同理,設(shè)置濕度的上限結(jié)束后,再按S4,就會溫濕度顯示界面。同時,也應(yīng)該檢測一下聲光報警系統(tǒng)是否有問題,調(diào)整一下溫濕度的上下限,使當(dāng)前溫濕度在設(shè)置閾值之外的話,蜂鳴器就會鳴叫,而LED燈也會亮,如果所有的功能都沒有問題,就證明調(diào)試結(jié)束。軟件和硬件的測試是相輔相成的,如果上述操作沒有問題,那么硬件的調(diào)試就是沒有問題的。5.2軟件調(diào)試軟件調(diào)試就是在程序使用之前,對其進(jìn)行編譯,保證計算機系統(tǒng)的穩(wěn)定性與準(zhǔn)確性。首先建立源程序,源程序?qū)懲曛?,通過Keil軟件對程序進(jìn)行編譯,通常軟件調(diào)試應(yīng)具備四種技能,跟蹤、斷點、查看變量和更改數(shù)值等。整個程序是一個主程序調(diào)用各個子程序?qū)崿F(xiàn)功能的過程,要使主程序和整個程序都能平穩(wěn)運行,各個模塊的子程序的正確與平穩(wěn)運行必不可少,所以在軟件調(diào)試的最初階段就是把各個子程序模塊進(jìn)行分別調(diào)試。當(dāng)編譯時有語法問題時,就進(jìn)行修改,然后重新編譯,直到所有的問題都修改結(jié)束,源程序可以成功執(zhí)行。軟件與硬件的調(diào)試是十分重要的,能夠檢驗成果的好壞,是否達(dá)到課題預(yù)期的目標(biāo)。6結(jié)論與展望溫度和濕度在工農(nóng)業(yè)和生產(chǎn)生活中是一個極其重要的環(huán)境參數(shù),溫濕度的變化也會促使周圍環(huán)境的物理和化學(xué)變化。在本次設(shè)計中,最大的變化主要是用無線模塊代替?zhèn)鹘y(tǒng)的有線模塊。分為兩部分,數(shù)據(jù)發(fā)送端和接收端。數(shù)據(jù)發(fā)送端也就是從機部分,以單片機AT89S52作為控制模塊,連接溫濕度數(shù)據(jù)傳感器DHT11,無線模塊NRF24L01將監(jiān)測到的溫濕度數(shù)據(jù)傳輸給主機。主機也是以單片機作為主控制器,連接無線模塊NRF24L01接受從機的數(shù)據(jù),并在液晶顯示屏LCD1602上進(jìn)行顯示。同時主機上有按鍵模塊,用來設(shè)置溫濕度數(shù)據(jù)的上下限閾值,還有聲光報警模塊,用來提醒工作人員環(huán)境出現(xiàn)了問題。在本次設(shè)計中,硬件和軟件,都分為模塊化進(jìn)行設(shè)計。大的模塊就分為接收端和發(fā)送端。再對兩個模塊,進(jìn)行細(xì)分,會使設(shè)計簡單一些,并提高了設(shè)計的效率。理論聯(lián)合實踐,不拘泥于課本上的知識,學(xué)習(xí)閱讀文獻(xiàn),學(xué)習(xí)新的軟件,鍛煉了自己的學(xué)習(xí)能力和動手操作能力。本次設(shè)計完成了預(yù)期的目標(biāo),設(shè)計比較簡單,容易操作,可以應(yīng)用于倉庫的溫濕度監(jiān)測中?;剡^頭看,設(shè)計中仍存在一些不足,但在以后的學(xué)習(xí)工作中要力求完美,還可以將一些功能強化完美。紅外熱成像、分布式光纖、可調(diào)諧半導(dǎo)體激光吸收
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年華坪縣擇優(yōu)招聘云南省職業(yè)教育省級公費師范畢業(yè)生備考題庫帶答案詳解
- 2025年廈門市集美區(qū)海鳳小學(xué)產(chǎn)假(頂崗)教師招聘備考題庫及一套完整答案詳解
- 武漢市第六醫(yī)院120急救站醫(yī)生、護(hù)士招聘備考題庫及參考答案詳解1套
- 大鼠腦挫傷后HIF-1α表達(dá)特征與挫傷時間推斷的關(guān)聯(lián)性研究
- 2025年山西華冶勘測工程技術(shù)有限公司公開招聘檢測專業(yè)人才的備考題庫及參考答案詳解
- 2025年華東師范大學(xué)后勤保障部倉庫管理員招聘備考題庫及參考答案詳解1套
- 2025年香格里拉市自然資源局自然資源巡查臨聘人員招聘備考題庫及參考答案詳解
- 2025年東方電氣集團東方電機有限公司社會招聘備考題庫參考答案詳解
- 2025年中國人民財產(chǎn)保險股份有限公司馬鞍山市分公司校園招聘11人備考題庫及一套答案詳解
- 2025年招商銀行佛山分行社會招聘備考題庫及參考答案詳解1套
- 2025食品行業(yè)專利布局分析及技術(shù)壁壘構(gòu)建與創(chuàng)新保護(hù)策略報告
- 2025四川省教育考試院招聘編外聘用人員15人考試筆試模擬試題及答案解析
- 特許經(jīng)營教學(xué)設(shè)計教案
- 2025年智能消防安全系統(tǒng)開發(fā)可行性研究報告
- 胎兒窘迫課件
- 2025年國家開放大學(xué)《刑事訴訟法》期末考試備考試題及答案解析
- 論文導(dǎo)論范文
- (正式版)DB65∕T 4636-2022 《電動汽車充電站(樁)建設(shè)技術(shù)規(guī)范》
- 胸痛患者轉(zhuǎn)運課件
- 某城區(qū)城市交通優(yōu)化提升規(guī)劃設(shè)計方案
- 職業(yè)病安全知識培訓(xùn)課件
評論
0/150
提交評論