




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
仲愷農業工程學院課程設計報告家庭智能濕度控制系統課程名稱:計算機系統開發綜合訓練院〔系〕:信息科學與技術學院專業班級:計算機123班學號:姓名:指導老師:顧春琴承諾書鄭重聲明:本人所呈交的課程設計是本人在導師指導下獨立撰寫并完成的,課程設計沒有剽竊、抄襲、造假等違反學術道德、學術標準和侵權行為。本課程設計不包含任何其他個人或集體已經發表或撰寫過的研究成果,如果引用那么標識出了出處。對本課程設計的研究做出奉獻的個人和集體,均已在文中以明確方式標明。課程設計與資料假設有不實之處,本人承當一切相關責任。特此聲明。簽名:年月日目錄一、需求分析4二、系統設計5濕度采集系統52.1.2LED鍵盤模組7無線通訊模塊82.2.1濕度采集系統軟件11閥門比擬程序15無線通訊模塊軟件16三、設備選型19四、總結21需求分析溫度是影響人們日常生活的重要因素。據生理學家研究,夏天,室內相對濕度過大時,會抑制人體散熱,使人感到十分悶熱、煩躁。冬天,室內相對濕度大時,那么會加速熱傳導,使人覺得陰冷、抑郁。室內相對濕度過低時,因上呼吸道粘膜的水分大量散失,人會感到口干、舌燥,甚至咽喉腫痛、聲音嘶啞和鼻出血等,并易患感冒??梢娛覂鹊臏囟群蜐穸葘θ藗兊慕】抵陵P重要。另外,動物體由于外部環境溫度的升高體溫也升高,物質代謝增強,一般活動力亦增高。如果溫度繼續上升,那么出現不安、興奮狀態和躲避行動。中樞神經系統逐漸發生障礙而陷于熱昏睡,如果這種狀態持續下去那么可死亡,每年因為溫度過高而死的人很多,如果能夠及時的對溫度進行控制,那么可以挽救這些人的生命??傮w方案的硬件設計:本設計是基于單片機對數字信號的高敏感和可控性、濕度傳感器可以產生單片機能夠直接采集的信號,其中包括濕度檢測、鍵盤及LED顯示、無線通訊、系統軟件等局部的設計。圖1系統總體框圖本設計有信號采集、信號分析和信號處理三個局部組成:〔1〕信號采集:由紅外測溫模塊和hs1101組成〔2〕信號分析:由飛思卡爾最小系統組成〔3〕信號處理:由按鍵和LED顯示,無線通訊模塊組成該系統可通過可通過按鍵設置工作地點的溫度閾值范圍,由濕度傳感器實時采集濕度參數,飛思卡爾最小系統利用特定的功能對信號進行采集,存儲和處理。在飛思卡爾單片機內部對信號進行處理后,將濕度的值用LED顯示模塊進行顯示;同時在飛思卡爾單片機中,將采集到的數據和預先設定的閾值范圍進行比擬,并將比擬得出的信號通過無線通訊模塊傳送至控制端,啟動加濕器。系統設計2.1.1濕度采集系統測量空氣濕度的方式很多,其原理是根據某種物質從其周圍的空氣吸收水分后引起的物理或化學性質的變化,間接地獲得該物質的吸水量及周圍空氣的濕度。電容式、電阻式和濕漲式濕敏原件分別是根據其高分子材料吸濕后的介電常數、電阻率和體積隨之發生變化而進行濕度測量的。傳感器特點:圖2為濕敏電容工作的溫、濕度范圍相對濕度在1%100%RH范圍內;電容量由160pF變到200pF,其誤差不大于±2%RH;響應時間小于5S;溫度系數為0.04pF/℃??梢娋仁禽^高的。主要原理和溫度測量電路:HS1100/HS1101電容傳感器,在電路構成中等效于一個電容器件,其電容量隨著所測空氣濕度的增大而增大。如何將電容的變化量準確地轉變為計算機易于接受的信號,常有兩種方法:一是將該濕敏電容置于運方與租蓉組成的橋式振蕩電路中,所產生的正弦波電壓信號經整流、直流放大、再A/D轉換為數字信號;另一種是將該濕敏電容置于555振蕩電路中,將電容值的變化轉為與之成反比的電壓頻率信號,可直接被計算機所采集。頻率輸出的555測量振蕩電路如圖3-6所示。集成定時器555芯片外接電阻R4、R2與濕敏電容C,構成了對C的充電回路。7端通過芯片內部的晶體管對地短路又構成了對C的放電回路,并將引腳2、6端相連引入到片內比擬器,便成為一個典型的多諧振蕩器,即方波發生器。另外,R3是防止輸出短路的保護電阻,R1用于平衡溫度系數。圖3頻率輸出的555振蕩電路該振蕩電路兩個暫穩態的交替過程如下:首先電源Vs通過R4、R2向C充電,經t充電時間后,Uc到達芯片內比擬器的高觸發電平,約0.67Vs,此時輸出引腳3端由高電平突降為低電平,然后通過R2放電,經t放電時間后,Uc下降到比擬器的低觸發電平,約0.33Vs,此時輸出,此時輸出引腳3端又由低電平突降為高電平,如此翻來覆去,形成方波輸出。其中,充放電時間為t充電=C〔R4+R2〕Ln2(3.2) t放電=CR2Ln2 (3.3)因而,輸出的方波頻率為f=1/(t放電+t充電)=1/[C〔R4+R2〕Ln2](3.4)可見,空氣濕度通過555測量電路就轉變為與之呈反比的頻率信號。2.1.2LED鍵盤模組LED鍵盤模組,它集成了必要的LED、KEY、數碼管功能,可與任一款單片機進行軟硬件接口設計。主要功能〔1〕擴展了6位8段數碼管,最大顯示數據為999999;〔2〕8個發光二極管,可作為顯示狀態信息使用;〔3〕8個按鍵,可以組成1*8KEY也可組成2*4KEY;〔4〕一個電位器,可以提供0-5V的模擬電壓信號或者0—3.3V的模擬電壓,與模組輸入的VDD有關?!?〕鍵盤LED模組接口簡單,可方便與任何一款單片機進行軟硬件接口設計。2.1.3無線通訊模塊nRF2401是單片射頻收發芯片,工作于2.4-2.5GHzISM頻段,芯片內置頻率合成器、功率放大器、晶體振蕩器和調制器等功能模塊,輸出功率和通信頻道可通過程序進行配置。主要特點:〔1〕nRF2401是一個具有很高集成度的無線通信芯片,低電壓、低功耗采用0.18uCMOS工藝。低本錢2.4GHz真正的收發芯片,整個最低本錢的收發系統包括所有的感應器和濾波器都集成在一個芯片內,5m到l0m通訊范圍。非常低的最大值發送電流15mA,最大接收電流18mA,電壓1.9-3.6V,為了減少電流損耗和本錢,nRF2401內嵌多數通信特點?!?〕nRF2401能同時接收兩個通道數據,例如一個無線鼠標、一個無線鍵盤。這樣消除了增加兩個別離的RX調制,因此本錢和空間大小都減少了很多。2401也能到達1M/s的傳輸速率,它使用芯片上FIFO允許微處理器以一個低的速率傳輸而在RF收發時以很高的速率傳輸數據。這個特征叫做猝發(shockburst),它能解決功率消耗大的問題。典型在一個lOk/s的持續傳輸中可減少95%的功率消耗。〔3〕nRF2401全球開放的2.4GHz頻段,125個頻道,滿足多頻及跳頻需要。高速率1Mbps,高于藍牙,具有高數據吞吐量。極少的外圍元件,只需一個晶振和一個電阻。發射功率、工作頻率等所有工作參數全部通過軟件設置完成。〔4〕獨特設計:芯片內部設置了專門的穩壓電路,使用各種電源包括DC/DC開關電源均有很好的通信效果。每個芯片可以通過軟件設置最多40bit地址,只有收到本機地址時才會輸出數據(提供一個中斷指示),編程很方便。主要功能:〔1〕可以進行無線數據發送和接收〔2〕可以開發無線的電子產品:如無線遙控器、無線麥克、無線耳機、無線的文件傳輸系統等結構示意圖:圖4nRF2401A結構圖應用時,只需要通過10Pin接口J1直接和單片機的I/O端口相連接即可。如果需要兩個通道接收,可以將預留端口J2引出,接到單片機對應的I/O上即可。nRF2401A引腳功能圖5nRF2401A功能引腳芯片引腳排列見圖,各引腳具體功能如下:VSS_PA、VSS為參考接地端;VDD為電源端,范圍1.9V~3.6V;VDD_PA為功率放大+1.8V電源輸出端;ANT1、ANT2為天線接口端;XC1、XC2為晶振端;IREF為參考電流端,通過22kΩ電阻接地;PWR_UP為上電端;CE為工作狀態使能端;CS為片選端,控制器通過對nRF2401的PWR2UP、CE和CS引腳狀態組合設置,控制nRF2401的工作方式,當狀態組合為分別為1、1、0,1、0、1,1、0、0及0,×,×時,芯片分別處于激活、配置、待機及低功耗方式.CLK1、CLK2為通道1、2時鐘信號端,由控制器提供,在突發模式下,控制器在時鐘上升沿由DATA引腳向nRF2401寫入數據,在下降沿從nRF2401的DATA引腳讀出數據;DR1、DR2為通道1、2接收數據就緒信號端;DATA、DOUT為通道1、2數據端,控制器與nRF2401由CLK、DR和DATA組成的三線接口交換傳輸的數據,通道1可接收和發送數據,通道2只能接收數據。nRF2401的DuoCeiverTM技術為RX提供了兩個獨立的專用數字信道,因而可代替兩個單獨接收系統。nRF2401A及其外圍電路nRF2401A及其外圍電路包括nRF2401A芯片局部、穩壓局部、晶振局部、天線局部。電壓VDD經電容C1、C2、C3處理后為芯片提供工作電壓;晶振局部包括Y1、C9、C10,晶振Y1允許值為:4MHz、8MHz、12MHz、16MHz,如果需要1Mbps的通信速率,那么必須選擇16MHz晶振。天線局部包括電感L1、L2,用來將nRF2401A芯片ANT1、ANT2管腳產生的2.4G電平信號轉換為電磁波信號,或者將電磁波信號轉換為電平信號輸入芯片的ANT1、ANT2管腳。圖6nRF2401A外圍電路接口電路為方便與單片機的連接,模組提供了兩個接口J1、J2,其中J1為nRF2401A的控制端口和通道1的收發通道,J2為預留端口,是通道2的接收通道。J1接口為10Pin的插孔,J2預留,如果需要采用雙通道接收時,可以將J2對應的3根信號線引出,接到單片機的I/O上即可。2401A管腳作用描述PWR_UPnRF2401A芯片上電CEnRF2401A使能CSnRF2401A片選DR1通道1數據請求CLK1通道1時鐘DATA1通道1數據DR2通道2數據請求CLK2通道2時鐘DATA2通道2數據表對應的I/O連接和功能描述總體軟件的設計方案系統軟件包括一下幾個局部:〔1〕濕度采集系統軟件,濕度傳感器hs1101是一種電容式傳感器,環境濕度不同,傳感器的電容值也會變化。通過555振蕩電路,可以把電容信號轉換成單片機能夠直接采集的頻率信號。利用單片機的實時中斷和脈沖計數可以實現對頻率信號的檢測,并加以分析、處理和計算出當前環境的濕度值。〔2〕按鍵掃描軟件,通過按鍵,可以轉換當前的顯示模式,也可以通過按鍵,設置濕度的上下限值?!?〕顯示軟件,可以顯示當前的濕度值,也可以顯示事前設置的溫濕度上、下限制?!?〕比擬軟件,通過此程序,把當前的溫濕度值跟事前設置的上、下限值進行比擬,不同的結果會得出不同的控制器信號?!?〕無線通訊初始化,對nRF2401A的初始化包括nRF2401A上電和向nRF2401A寫控制字?!?〕發送端發送程序,將比擬程序得出的控制器信號發送給無線通訊的接收端。〔7〕接收端接收程序,將發送端發出的信號進行接收,并將控制信號輸出給控制器。濕度采集系統軟件濕度采集系統把電容信號轉換成單片機可以直接采集的頻率信號。飛思卡爾最小系統可以利用實時中斷和脈沖計數到達單位時間內對脈沖計數的功能。程序流程圖圖7程序流程圖實時中斷實時中斷RTI用來產生固定周期的硬件中斷。CRG中斷存放器CRGINT的RTI中斷使能位RTIE=1,實時中斷RTI激活,中斷周期通過RTI控制存放器RTICTL設置實時中斷一旦發生,RTIF位置1,同時,一個新的時鐘中斷周期開始計數。脈沖累加器S12有4個8位脈沖累加器〔PAI〕,它們可以通過級聯形成2個16位的脈沖累加器。4個8位脈沖累加器的對應8位保持存放器與4個緩沖IC相關聯。脈沖累加器的工作時鐘基于定時器,但也可以設定成獨立工作方式。S12的每個脈沖累加器可以用來記錄輸入引腳上發生的有效邊沿事件的數量。通過存放器ICSYS中的PACMX控制位,可防止8位脈沖累加器的計數值超過255個〔$ff〕.脈沖累加器有兩種運行模式:鎖存模式和隊列模式?!?〕鎖存模式:是當模數遞減計數器回到0或寫$0000到模數計數器或強制鎖存控制位ICLAT置位時,脈沖累加器的值將轉移到相應的保持存放器,同時脈沖累加器被清空。〔2〕隊列模式:是指當隊列模式使能時,只有讀取輸入捕捉保持存放器時才將脈沖累加器的值轉移到相應的保持存放器,同時脈沖累加器被清空。程序voidCRGInit(void){SYNR=31;//32MREFDV=15;CRGINT_LOCKIE=1;//使能鎖相環穩定中斷while(!CRGFLG_LOCK);//等待系統時鐘穩定CLKSEL_PLLSEL=0x01;//選擇PLL時鐘作為系統時鐘RTICTL=0x4A;//初始化實時時鐘CRGINT=0x80;//使能實時中斷}voidVready(void){TIOS=0x0;TSCR1=0X80;TSCR2=0X05;TCTL4=0X37;TIE=0X07;TFLG1=0X07;DLYCT=0X01;PACTL=0X54;}interruptvoidReal_Time_Interrupt(void){CRGFLG=0x80;//清實時中斷標志位nv=PACN32;PACN32=0;dss=nv/10;dsg=nv-dss*10;}聯調利用飛思卡爾最小系統的實時中斷和脈沖累加器實現對濕度傳感器頻率信號的采集,在調試過程中,由于設置的系統時鐘頻率過大,導致單位時間內的脈沖數超出了255這個上限。最后經過長時間的調試,對采集的頻率進行計算得出當前濕度值,并顯示。LED鍵盤模組凌陽LED鍵盤模組共有8個獨立按鍵,6位共陰極數碼管。我的設計需要一個按鍵來切換顯示模式,一個按鍵來啟動測溫程序,還有4個按鍵用來設定溫濕度上、下限制。結合按鍵,可以用4位數碼管分別顯示當前溫濕度,預先設定的溫濕度上、下值。程序流程圖圖8程序流程圖程序按鍵LED顯示軟件設計思路如下:先掃描KEY0,如果KEY0按下,那么采集測溫模塊的數據信號并進行處理;再掃描KEY1,每按下一次,ms加1,并且從0至2之間循環,ms等于0時顯示當前的溫濕度值,ms等于1時顯示溫度的上下限值,ms等于2時顯示濕度的上下限值;最后掃描KEY3、KEY4、KEY5、KEY6,KEY3每按下一次,溫濕度的上限值加1,KEY4每按下一次,溫濕度的上限值減去1,KEY5每按下一次,溫濕度的下線值加1,KEY6每按下一次,溫濕度的下線值減去1。voidkeyscan(void){switch(ms){case0:keyscan1();break;case1:keyscan1();keyscan2();wq=q;wb=b;ws=s;wg=g;break;case2:keyscan1();keyscan3();sq=q1;sb=b1;ss=s1;sg=g1;break;default:break;}}voidDisplay(void){switch(ms){case0:display(dwq,dwb,dss,dsg);break;case1:display(wq,wb,ws,wg);break;case2:display(sq,sb,ss,sg);break;default:break;}}聯調在檢查硬件電路后,找出有損壞的按鍵和其他不能正常工作的硬件電路,進行修改。在此根底上,編寫軟件程序,一步步實現設計要求的功能。首先是顯示功能,給出一個數字,讓數碼管顯示,從1到9都能正常的顯示。再是按鍵功能,按一次鍵能讓顯示的數字加1或減1。剛開始因為沒有加“等待〞,所以有時按鍵長了會導致數字連加或連減。最后經過長時間的調試,能夠實現模式的切換,設定上、下限值,能夠顯示當前的溫濕度值和預先設定的溫濕度上、下限值。2.2.2閥門比擬程序濕度采集系統實現了對當前環境濕度值的測量,接下來通過與預先設定的溫濕度上、下限值進行比擬。當前溫度超過了預先設定的上限,那么發出降溫的信號;當前溫度低于預先設定的下限,那么發出加熱的信號。當前濕度超過了預先設定的上限,那么發出除濕的信號;當前濕度低于預先設定的下限,那么發出加濕的信號。最終將當前的溫濕度值保持在閾值范圍之內。voidcompare(void){WG=q*10+b;WD=s*10+g;SG=q1*10+b1;SD=s1*10+g1;dw=dwq*10+dwb;ds=dss*10+dsg;if(dw>WG){if(ds>SG){Compare=0x24;}else{if(ds<SD){Compare=0X21;}else{Compare=0x22;}}}else{if(dw<WD){if(ds>SG){Compare=0x0C;}else{if(ds<SD){Compare=0X09;}else{Compare=0x0A;}}}else{if(ds>SG){Compare=0x14;}else{if(ds<SD){Compare=0X11;}else{Compare=0x12;}}}}}2.2.3無線通訊模塊軟件無線通訊有兩塊,一端為發射端,一端為接收端。無線通訊模塊需要寫入控制字,設定他的收發模式,數據地址,波特率等,才能正常工作,實現所需的功能。nRF2401A初始化對nRF2401A的初始化包括nRF2401A上電和向nRF2401A寫控制字。nRF2401A上電是將芯片的PWR_UP管腳設置為高電平,上電以后才可以對nRF2401A進行控制和讀寫操作。初始化時需要注意:1、并不是18個Byte的命令字全部需要寫入,通常我們只需要寫后15個Byte即可。2、15個Byte的命令字在nRF2401.C文件中通過InitData[15]定義,用戶需根據自己的通信格式對之進行修改。3、bit15~bit0可以根據需要反復修改,但是bit144~bit16只有上電后的第一次初始化有效。發送數據時序圖圖9發送數據數據圖發送數據格式圖10發送數據格式An~A0為接收機地址,不超過40位,通過更換地址,可以向多個nRF2401A模塊發送數據;Dk~D0為待發送的數據。以上數據由單片機發送到nRF2401A之后,nRF2401A將會進行打包并發射,打包后的數據格式為:圖11打包后數據格式其中Pre為8位的校驗頭,CRC為8位或16位的校驗尾,在ShockBurst模式下由nRF2401A自動添加。需要注意的地方:〔1〕Address、Data、CRC的位數之和不超過256;〔2〕Address長度必須和目標接接收通道的地址一致〔數據和長度〕;〔3〕Data長度必須和目標接接收通道的接收數據寬度一致?!?〕發射端和接收端的RF頻率須一致,如兩端均采用通道1,那么二者控制字的bit7~bit1一致,如接收端采用通道2,那么發射端bit7~bit1值比接收端bit7~bit1值大8。發送程序voidnRF2401_SendByte(uintTxData){uinti;CE=1; for(i=0;i<AddrByteCnt;i++){nRF2401_WriteByte(AddrBuffer[i]);}nRF2401_WriteByte(TxData);CE=0; DATA=0;Delay_Us(10);}接收程序流程圖圖12接收流程圖接收數據時序圖圖13接收數據時序圖當接收端成功接收到數據后,將會置位對
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論