2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  本科生畢業(yè)論文(設(shè)計)</p><p>  系(院)物理與電子工程學(xué)院  專業(yè) 電子信息工程 </p><p>  論文題目 溫控電風(fēng)扇 </p><p>  學(xué)生姓名 </p><p>  指導(dǎo)教師 </p><p><b

2、> ?。ㄐ彰奥毞Q)</b></p><p>  班 級 </p><p>  學(xué) 號 </p><p>  完成日期:2013 年 3 月</p><p><b>  溫控風(fēng)扇</b></p><p>  [摘要]溫控風(fēng)扇系統(tǒng)采用51系列

3、單片機STC89C52作為主控器,利用DS18B20數(shù)字溫度傳感器采集實時溫度,經(jīng)單片機處理后通過達林頓管ULN2003來驅(qū)動直流風(fēng)扇的電機。根據(jù)采集的實時溫度,實現(xiàn)了風(fēng)扇的自起自停。溫控風(fēng)扇系統(tǒng)擁有自動和手動兩種模式來調(diào)節(jié)風(fēng)速,同時系統(tǒng)還設(shè)有5個不同檔位,以及通過ST188反射式紅外光電傳感器檢測風(fēng)扇轉(zhuǎn)速,并在LCD1602液晶屏上顯示溫度及檔位。</p><p>  [關(guān)鍵詞]DS18B20 自動調(diào)速 自啟自

4、停</p><p><b>  引言</b></p><p>  隨著社會經(jīng)濟的發(fā)展,科技也是日益進步,越來越多的產(chǎn)品趨向智能化、自動化,這不僅是未來發(fā)展的趨勢,同時也是節(jié)約資源所必須的。所以無論是什么產(chǎn)品,都盡量的提高能源利用率,響應(yīng)可持續(xù)發(fā)展國策。</p><p>  現(xiàn)代社會中,風(fēng)扇被廣泛的運用在各個領(lǐng)域,傳統(tǒng)的風(fēng)扇設(shè)計,僅需通電就可使用

5、,不論是有沒有人在場使用、環(huán)境溫度是高是低的情況下都只會機械性地以一恒定轉(zhuǎn)速轉(zhuǎn)動,這種不合理的設(shè)計不僅浪費資源而且使用也不方便。而現(xiàn)階段智能風(fēng)扇可以根據(jù)環(huán)境溫度的高低自行改變轉(zhuǎn)速,可以自起自停,同時也可以滿足人們手動調(diào)節(jié)風(fēng)扇轉(zhuǎn)速,使人們使用起來更方便。</p><p>  這樣的溫控風(fēng)扇系統(tǒng),不僅在公共場合、工廠等地適用,而且在家居生活中也適用,特別是它的人性化設(shè)計,不僅滿足了人們對于風(fēng)扇的需求,也便捷了人們手動

6、換擋的繁瑣,此系統(tǒng)設(shè)計成本也低,便于推廣。它的設(shè)計為現(xiàn)代社會人們的生活帶來了諸多便利,在提高人們的生活質(zhì)量、生產(chǎn)效率的同時并在一定程度上達到環(huán)保節(jié)能的功效。</p><p><b>  1 整體方案設(shè)計</b></p><p>  1.1 系統(tǒng)整體設(shè)計</p><p>  設(shè)計的整體思路是:利用溫度傳感器DS18B20檢測環(huán)境溫度并直接輸出數(shù)字

7、溫度信號給單片機STC89C52進行處理,在LCD1602數(shù)碼管上顯示當(dāng)前環(huán)境溫度值以及檔位,DS18B20檢測到的當(dāng)前環(huán)境溫度可精確到小數(shù)點后一位,同時采用PWM脈寬調(diào)制方式來改變直流風(fēng)扇電機的轉(zhuǎn)速,最后再通過ST188測試風(fēng)扇轉(zhuǎn)速。系統(tǒng)中設(shè)有自動調(diào)速和手動調(diào)速兩種模式。系統(tǒng)結(jié)構(gòu)框圖如圖1-1:</p><p>  圖1-1 系統(tǒng)結(jié)構(gòu)框圖</p><p><b>  1.2 方

8、案論證</b></p><p>  1.2.1 單片機選擇</p><p>  方案一:采用STC89C52作為系統(tǒng)的控制器。STC89C52是一種高性能、低功耗CMOS8位微控制器,具有8K系統(tǒng)可編程Flash存儲器。該單片機算術(shù)運算功能強,軟件編程靈活、自由度大,可通過軟件編程實現(xiàn)各種算法和邏輯控制,并有體積小、功耗低、技術(shù)成熟和成本低等優(yōu)點。</p><

9、;p>  方案二:MC9S12XS128是”飛思卡爾”公司推出的S12系列微控制器中的一款增強型16位微控制器。其集成度高,片內(nèi)支援豐富,接口模塊包括SPI、SCI、I2C、A/D、PWM等[2]。它在汽車電子、工業(yè)控制、中高擋機電產(chǎn)品等應(yīng)用領(lǐng)域具有廣泛的用途,但由于成本價高,編程操作工序復(fù)雜,體積還較大。</p><p>  基于以上分析擬訂方案一,由STC89C52作為控制核心,對檢測信號進行處理和顯示

10、、電機控制。</p><p>  1.2.2 溫度傳感器選擇</p><p>  方案一:DS18B20數(shù)字溫度傳感器。DS18B20是美國DALLAS半導(dǎo)體公司繼DS1820之后新推出的一種改進型智能溫度傳感器。該器件溫度分辨力極高,而且在對溫度進行實時采集后直接輸出數(shù)字量,簡化了系統(tǒng)程序設(shè)計。又由于該溫度傳感器采用先進的單總線技術(shù),與單片機的接口變得非常簡潔,抗干擾能力強,誤差較小。

11、 </p><p>  方案二:熱敏電阻。通過熱敏電阻感應(yīng)外界溫度,采集會數(shù)據(jù)后通過模數(shù)轉(zhuǎn)換模塊AD0809進行轉(zhuǎn)換后送入單片機進行處理。由于隨著外界的溫度升高,熱敏電阻并不是呈線性變化,采集后會有誤差,而且程序上處理麻煩。再者,功耗較大、占用空間大,不符合設(shè)計要求。</p><p>  基于以上分析擬訂方案一,用DS18B20作溫度采集模塊。</p><p

12、>  1.2.3 電機驅(qū)動模塊選擇</p><p>  方案一:采用多個三極管驅(qū)動。三極管的主要特性是放大,三極管組成的級數(shù)愈多,放大的倍數(shù)愈大。而且三極管成本價又低,體積小,不需要任何程序處理。但是,一個三極管放大的倍數(shù)不能達到驅(qū)動電機的理想效果,設(shè)計中至少要2個以上,而且三極管易溫漂,這樣一來電路參數(shù)比較繁瑣,參數(shù)易變。</p><p>  方案二:采用達林頓管ULN2003驅(qū)動

13、。ULN2003具有帶負(fù)載能力強、溫度范圍寬、電流增益高、工作電壓高的特點,常用于各種電磁閥、步進電機、伺服電機等功率較大的器件上。且不用設(shè)計任何電路參數(shù)。</p><p>  方案三:采用LM298驅(qū)動電機。LM298內(nèi)部含有2個H橋,可以實現(xiàn)電機四種不同的轉(zhuǎn)動方式,并且驅(qū)動的效果較ULN2003效果好。但是在程序的編寫上要比后者復(fù)雜,電路組成也相對復(fù)雜些,加之成本又高于ULN2003,故舍去掉。</p&

14、gt;<p>  基于以上分析擬訂方案二,采用達林頓管ULN2003作為信號處理模塊。</p><p>  1.2.4 顯示模塊選擇</p><p>  方案一:采用四位LED七段數(shù)碼管。數(shù)碼管具有:低損耗、低能耗、低壓、耐老化、壽命長,對外界的環(huán)境要求較低。同時,數(shù)碼管顯示信息少,動態(tài)掃描占用太多CPU資源等。</p><p>  方案二:采用液晶顯

15、示屏LCD1602。液晶顯示屏具有輕薄短小、功耗小、無輻射危險,平面直角顯示以及影象穩(wěn)定不閃爍,畫面效果好,可視面積大,顯示信息量大、抗干擾能力強等特點[10]。</p><p>  基于以上分析擬訂方案二,采用液晶顯示屏LCD1602作顯示器。</p><p>  1.2.5 測速模塊選擇</p><p>  方案一:采用紅外對管ST188測速。ST188是采用高

16、發(fā)射功率紅外光電二極管以及高靈敏度光電晶體管組成,檢測距離可調(diào)整,范圍大,4-13mm 即可用, 采用的是非接觸檢測方式,連接電路簡單。同時結(jié)合LM393電壓比較器,在因為手工制作的碼盤影響測量精度的情況下有所改善。</p><p>  方案二:采用光碼盤測速。測速原理和ST188一樣,其測速的精度比ST188測速精度較高,但是其成本相對較高,安裝也沒有ST188方便。在此系統(tǒng)中,也完全不用高精度測速。</

17、p><p>  基于以上分析擬定方案一,采用ST188作為測速模塊。</p><p>  1.3 系統(tǒng)各模塊最終方案</p><p>  根據(jù)以上分析,結(jié)合器件和設(shè)備等因素,確定如下方案:</p><p> ?。?)采用STC89C52單片機作為中央控制器,分別對DS18B20、LCD液晶顯示、模式選擇、ST188、PWM波產(chǎn)生進行控制。<

18、/p><p> ?。?)速度檢測模塊選擇ST188進行速度測量。</p><p>  (3)顯示模塊采用LCD1602,實時顯示溫度、檔位、轉(zhuǎn)速。</p><p> ?。?)采用ULN2003芯片驅(qū)動直流電機。</p><p>  2 硬件的設(shè)計與實現(xiàn)</p><p>  2.1 系統(tǒng)硬件模塊介紹</p>&

19、lt;p>  溫控風(fēng)扇系統(tǒng)主要是通過DS18B20采集外界實時溫度后經(jīng)單片機處理風(fēng)扇電機的轉(zhuǎn)速,達到理想溫控效果。系統(tǒng)總體分為:單片機最小系統(tǒng)、電源電路、溫度采集電路、顯示電路、電機驅(qū)動電路等部分。系統(tǒng)電路原理圖和PCB圖如圖2-1和圖2-2所示:</p><p>  圖2-1 系統(tǒng)電路原理圖</p><p><b>  圖2-2 PCB圖</b></p&

20、gt;<p>  2.2 單片機最小系統(tǒng)</p><p>  溫控風(fēng)扇系統(tǒng)是以單片機STC89C52來作為最小系統(tǒng)的控制器。STC89C52具有以下標(biāo)準(zhǔn)功能:2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,8K字節(jié)Flash, 32位I/O口線,256字節(jié)RAM,一個6向量2級中斷結(jié)構(gòu),片內(nèi)晶振及時鐘電路,看門狗定時器,全雙工串行口。電路原理如圖2-3所示。</p><p>  圖2

21、-3 單片機最小系統(tǒng)原理圖</p><p>  STC89C52單片機的40個引腳中有2個專用于主電源引腳,2個外接晶振的引腳,4個控制或與其它電源復(fù)用的引腳,以及32條輸入輸出I/O引腳。</p><p><b>  2.3 電源電路</b></p><p>  由于直流電機驅(qū)動模塊中,需要用到12V的電壓,所以其決定了系統(tǒng)中的供電需要12V

22、及以上的電源供電。單片機是系統(tǒng)的控制核心,需要單獨的5V電源供電?;谏显V情況,對于需要得到不同的電壓值,采用三段集成穩(wěn)壓芯片LM7812和LM7805來實現(xiàn)。綜上所述,電源模塊電路圖如圖2-4所示:</p><p><b>  圖2-4 電源電路</b></p><p>  2.4 溫度傳感器電路</p><p>  系統(tǒng)的設(shè)計中,采用了DS

23、18B20來采集溫度,它直接可以把所檢測到的溫度短時間內(nèi)轉(zhuǎn)化成數(shù)字。</p><p>  2.4.1 DS18B20簡介</p><p>  具有負(fù)壓特性,即當(dāng)電源極性接反時,傳感器不會因為發(fā)熱而燒毀,但是不能正常工作;用戶可以自設(shè)定非易失性報警的上下限值;有支持多點組網(wǎng)的功能,多個DS18B20可并聯(lián)在惟一的三線上,實現(xiàn)多點的測溫;通過編程可實現(xiàn)9~12位數(shù)字讀數(shù)的方式,溫控風(fēng)扇系統(tǒng)采用

24、了該器件系統(tǒng)默認(rèn)的12位表示方式,對應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃、0.0625;可以用數(shù)據(jù)線來供電,電壓范圍為:+3.0~ +5.5 V;測溫范圍為:-55 ~+125 ℃,固有測溫的分辨率為0.5 ℃,并且可在1S內(nèi)把溫度變換成數(shù)字;在使用中不需要任何的外圍元件;DS18B20溫度傳感器只有三根外引線:單線數(shù)據(jù)傳輸總線端口DQ ,外供電源線VCC,共用地線GND;獨特的單線接口方式當(dāng)DS18B20和微處理器連

25、接的時候僅需要一條線即可以實現(xiàn)微處理器與DS18B20的雙向通訊。其具體電路接線圖如圖2-5所示。</p><p>  圖2-5 溫度傳感器電路</p><p>  2.4.2 溫度存儲方式以及溫度的計算</p><p>  DS18B20用9位存儲溫度值,負(fù)溫度S=0,正溫度S=1,最高位為符號位,例如FF92H為-55℃,如圖2-6所示:</p>

26、<p>  圖2-6 DS18B20溫度存儲方式</p><p>  DS18B20用12位存儲溫度值,負(fù)溫度S=0,正溫度S=1,最高位為符號位,例如FC90H為-55℃,如圖2-7所示:</p><p>  圖2-7 DS18B20溫度存儲方式</p><p>  2.5 顯示模塊電路</p><p>  LCD1602是工業(yè)字

27、符型液晶,能夠同時顯示16×2即32個字符。LCD1602模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已存儲包括:日文假名、常用的符號、英文字母的大小寫和阿拉伯?dāng)?shù)字等160個不同的點陣字符和圖形。</p><p>  LCD1602與單片機連接電路如圖2-8所示,其中15腳和16腳是液晶顯示器的對比度調(diào)整端,接地電源的時候?qū)Ρ榷茸罡?,接正電源的時候?qū)Ρ榷茸钊?,一般在實際使用時可通過一個10K的電位器調(diào)整對比度

28、,在此圖中為Proteus中的仿真圖未接電位器。由于單片機內(nèi)部P0口沒有上拉電阻,輸出的電平不能直接負(fù)載液晶,需要人為在電路中接入上拉電阻,將P0口電平拉高后,再驅(qū)動負(fù)載。</p><p>  圖2-8 LCD1602與單片機連接電路</p><p>  2.6 電機驅(qū)動電路</p><p>  在溫控風(fēng)扇系統(tǒng)設(shè)計中,涉及到風(fēng)扇電機的調(diào)速,但是單片機的I/O口輸出的

29、功率不足以驅(qū)動直流電機,所以需要外加驅(qū)動電路來實現(xiàn)此項功能。在前面的方案論證中選擇了達林頓管體系芯片ULN2003作為驅(qū)動芯片,此芯片外接電路十分簡單,不需要額外的輔助器件,單片機I/O口輸出經(jīng)過ULN2003輸出就能直接拖動起電機。電路圖如圖2-9所示。</p><p>  圖2-9 電機驅(qū)動電路</p><p>  2.7 速度檢測電路</p><p>  溫控

30、風(fēng)扇的速度檢測是由ST188來實現(xiàn)的,設(shè)計中采用ST188使系統(tǒng)形成反饋,和系統(tǒng)驅(qū)動電動機產(chǎn)生的轉(zhuǎn)速進行調(diào)整,從而實現(xiàn)更好的控制。</p><p>  ST188 采用的是非接觸檢測方式,其外形圖和內(nèi)部電路如圖2-10所示:</p><p>  圖2-10 ST188外形圖和內(nèi)部電路</p><p>  如圖2-10,左邊是光電二極管的外形圖,由發(fā)射二極管和接收管組

31、成,右圖為內(nèi)部的電路示意圖。A、K是紅外發(fā)射二極管的正負(fù)極,C、E是接收管的正負(fù)極。只要A極接高電平、K極接低電平,紅外發(fā)射管就能發(fā)出紅外線。就可以在傳感器加上外圍電路來檢測接收管的信號,進而確定是否接受到反射回來的紅外線。在此設(shè)計中,電機上安裝一個圖有黑、白兩種顏色的碼盤,當(dāng)紅外線照射的在黑線上的時候,由于黑色是吸收光線的,所以反射回去的光很少,而使得三極管收到的光較弱;而當(dāng)紅外線照射到白線的時候,由于白色能夠反射大部分的光,所以三極

32、管收受到的光就較強。兩種光的強弱就能夠使得檢測電路輸出不同的電壓,這個電壓被送入LM393電壓比較器,在LM393中與電位器調(diào)節(jié)出的電壓進行比較形成脈沖,該脈沖作用于單片機的P3_5口,通過單片機的內(nèi)部定時/計數(shù)器計數(shù),最終計算出風(fēng)扇的轉(zhuǎn)速。</p><p>  3 軟件的設(shè)計與實現(xiàn)</p><p>  系統(tǒng)的運行程序采用C語言編寫,采用模塊化設(shè)計,整體程序由主程序和、溫度采集、PWM波、

33、液晶顯示以及電機控制等子程序模塊組成。</p><p>  3.1 主程序流程圖</p><p>  主程序?qū)Ω髂K進行初始化,而后調(diào)用溫度采集、模式選擇、產(chǎn)生PWM波、顯示模塊。主程序流程圖如圖3-1所示:</p><p>  圖3-1 系統(tǒng)主程序流程圖</p><p>  3.2 溫度采集子程序</p><p> 

34、 3.2.1 DS18B20的工作流程</p><p>  單片機控制DS18B20溫度傳感器完成溫度轉(zhuǎn)換工作要經(jīng)過三個步驟:初始化、ROM操作指令、存儲器操作指令。單片機所用的系統(tǒng)頻率為12MHz。根據(jù)DS18B20數(shù)字溫度傳感器進行初始化時序、讀時序和寫時序分別可編寫成3個子程序:初始化子程序、寫子程序、讀子程序。流程圖如圖3-2所示:</p><p>  圖3-2 DS18B20部分

35、流程圖</p><p>  3.2.2 ROM與存儲器操作命令</p><p>  在DS18B20的使用中運用到了一些指令,具體指令如表3-1所示:</p><p>  表3-1 ROM與存儲器操作命令</p><p>  3.3 PWM波子程序</p><p>  由于需要電機產(chǎn)生不同的轉(zhuǎn)速,所以則需要不同的PWM

36、波來驅(qū)使電機以不同轉(zhuǎn)速轉(zhuǎn)動。PWM波是一種不同頻率的方波,所以在設(shè)計時采用定時器來產(chǎn)生不同頻率的PWM波。程序大致過程可以分為系統(tǒng)中斷模塊初始化和定時器產(chǎn)生所需要的PWM波,流程圖如圖3-3所示:</p><p>  圖3-3 生成PWM波流程圖</p><p>  PWM的周期設(shè)為40ms ,PWM的低電平時間為40ms,定時器T0選擇工作方式1,設(shè)定PWM的單位時間為1s。</p

37、><p><b>  3.4 顯示子程序</b></p><p>  為了讓系統(tǒng)有一個有好的界面,在系統(tǒng)設(shè)計時,采用了LCD1602作為顯示器件。在液晶屏上顯示了系統(tǒng)設(shè)計的名稱、實時的溫度值、電機的轉(zhuǎn)速和當(dāng)前溫度下風(fēng)扇所處的檔位。部分指令如表3-2所示:</p><p>  表3-2 LCD1602部分指令</p><p>

38、  3.5 速度檢測程序</p><p>  3.5.1 ST188反射式紅外光電傳感器</p><p>  速度檢測使用的是ST188反射式紅外光電傳感器,檢測不同檔位時電機的轉(zhuǎn)速。流程圖如圖3-4所示:</p><p>  圖3-4 速度檢測流程圖</p><p>  上圖為速度檢測的流程圖,ST188設(shè)為每200ms讀一次數(shù),即每200

39、ms記錄由于風(fēng)扇ST188所檢測到的脈沖數(shù),然后再對于計時的變量清零,再顯示出脈沖數(shù),最后又返回主程序。</p><p>  3.5.2 PID控制</p><p>  PID是一個閉環(huán)的控制算法,溫控風(fēng)扇系統(tǒng)就是由ST188檢測轉(zhuǎn)速反饋給單片機形成反饋。</p><p> ?。?)PID是個由比例(P)、積分(I)、微分(D)構(gòu)成的控制算法,但是并不是必須同時都具

40、備這三種算法,可以是:P控制、PI控制、PD控制、PID控制。</p><p>  比例(P),可以反應(yīng)系統(tǒng)的當(dāng)前的誤差,當(dāng)系數(shù)大時可以加快調(diào)節(jié)來減小誤差,但是如果系數(shù)過大就會使得系統(tǒng)的穩(wěn)定性下降,使系統(tǒng)輸出存在有穩(wěn)態(tài)誤差。</p><p>  積分(I),反應(yīng)出系統(tǒng)誤差的累計,可以消除系統(tǒng)的穩(wěn)態(tài)誤差,積分作用的強弱取決于時間的積分,時間越長積分作用越弱。它使控制器輸出的穩(wěn)態(tài)誤差進一步的減

41、小直至0為止,而與上面的比例控制結(jié)合后可以使得系統(tǒng)達到穩(wěn)定后無穩(wěn)態(tài)誤差。</p><p>  微分(D),可以反應(yīng)系統(tǒng)誤差的變化率,它能夠預(yù)測出誤差變化的趨勢,能夠超前的控制,可以改善系統(tǒng)的動態(tài)性能,它的缺點是對于噪聲有放大作用,所以不能過多的進行微分調(diào)節(jié),且微分控制不能夠單獨使用,需要和另外兩種控制結(jié)合使用形成PD或是PID控制。</p><p>  (2)PID有三種常用的算法,分別是

42、:位置式算法、增量式算法、微分先行式算法。溫控風(fēng)扇系統(tǒng)采用的是位置式PID算法:將測到的速度與理想中的速度進行比較得到一個偏差ek,且算出這次的偏差和上次偏差的差eek,給定一個值,當(dāng)偏差大于這個值時,則給滿的占空比進行加速;當(dāng)偏差小于這個值并大于0時,則根據(jù)ek及eek來調(diào)整占空比進行加速;若這個偏差為負(fù)時,則電機停止轉(zhuǎn)動。具體流程如圖3-5所示:</p><p>  圖3-5 PID控制算法流程圖</p

43、><p>  3.6 系統(tǒng)開發(fā)軟件</p><p>  系統(tǒng)編程采用KEILC51軟件。Keil C51是美國Keil Software公司開發(fā)的51系列兼容單片機C語言的軟件開發(fā)系統(tǒng),與單片機匯編語言相比,C語言語句簡單靈活,編寫的函數(shù)模塊可移植性強,因而易學(xué)易用,效率高。隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言的發(fā)展,單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目

44、前使用較多的MCS-51系列單片機開發(fā)的軟件。系統(tǒng)使用界面如圖3-6所示</p><p>  圖3-6 KEIL 使用界面圖</p><p>  4 軟件測試和硬件測試</p><p><b>  4.1 軟件測試</b></p><p>  軟件的測試中,結(jié)合于Proteus仿真軟件完成,根據(jù)之前的各模塊進行初始化設(shè)置

45、,在編寫程序前,要先對各個模塊分別進行調(diào)試,并編寫各部分的子程序。測試DS18B20時,首先要檢測初始化時否完成,再檢測轉(zhuǎn)換的溫度是否正確,因為DS18B20是讀一個字節(jié)寫一個字節(jié);測試PWM時同過示波器觀察產(chǎn)生的波形是否正常,也可通過示波器觀測編碼器產(chǎn)生的波形是否正常,有無丟失脈沖的現(xiàn)象也可由示波器觀測到;還要測試LDC1602的顯示,剛開始的時候設(shè)置的掃描太快導(dǎo)致最后顯示是數(shù)字在不停的閃爍,后來把掃描時間改成較長時間后則可以清楚的顯

46、示,然后就是觀察采到的數(shù)據(jù)是否正常,黑線是否穩(wěn)定。系統(tǒng)測試仿真圖如圖4-1所示:</p><p>  圖4-1 Proteus仿真圖</p><p><b>  4.2 硬件的測試</b></p><p>  4.2.1 硬件實物圖</p><p>  首先是對硬件電路的電源部分,傳感器部分以及驅(qū)動部分進行調(diào)試,電源部分

47、的調(diào)試主要看其輸出電壓是否滿足要求;穩(wěn)壓芯片是否正常工作,一個穩(wěn)壓芯片輸出12V電壓,一個輸出5V電壓;給一個恒定PWM占空比,觀察電機是否會轉(zhuǎn);用萬用表檢測從單片機輸出的電流通過ULN2003后是否有擴大;以及LCD1602的顯示是否正常顯示,如果顯示不正常則需要更換對比度調(diào)節(jié)的電阻。</p><p>  根據(jù)設(shè)計要求,最后制作的硬件實物如圖4-2、圖4-3所示:</p><p>  圖

48、4-2 硬件實物圖</p><p>  圖4-3 硬件實物圖</p><p>  4.2.2 數(shù)據(jù)測試結(jié)果</p><p>  經(jīng)過數(shù)十次的調(diào)試,并仔細(xì)檢查硬件電路的完整性,完成了系統(tǒng)設(shè)計要求,達到了溫度檢測范圍的要求,并使檢測結(jié)果精確到了0.1℃,風(fēng)扇能夠自啟自停,并自帶5個不同檔位的風(fēng)速。同時系統(tǒng)還設(shè)置了手動模式,可以手動對于風(fēng)速的調(diào)整,也可以根據(jù)現(xiàn)場實時溫度自

49、動調(diào)整風(fēng)速得到理想中的風(fēng)速。實驗實測圖如圖4-4和圖4-5所示:</p><p>  圖4-4 實驗實測圖</p><p>  圖4-5 實驗實測圖</p><p>  實測結(jié)果如表4-1所示:</p><p><b>  表4-1 測試結(jié)果</b></p><p>  如上表所示,總共檢測了1

50、1次,其中可以了解到:手動模式共有5個檔位,調(diào)節(jié)檔位就是調(diào)節(jié)PWM波的占空比,當(dāng)占空比越大時風(fēng)扇轉(zhuǎn)動得越快,當(dāng)占空比為0時,風(fēng)扇停止轉(zhuǎn)動;自動模式共有4個檔位,自動模式是根據(jù)檢測環(huán)境的溫度來自動調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速,當(dāng)溫度大于20℃時風(fēng)扇開始轉(zhuǎn)動,在20℃-26.5℃、27℃-32℃、33℃-39℃、大于40℃時分別為1到4檔,而當(dāng)溫度小于20℃時風(fēng)扇自動停止轉(zhuǎn)動。</p><p><b>  5 結(jié)論<

51、;/b></p><p>  設(shè)計從節(jié)能、經(jīng)濟、實用的角度出發(fā),以STC89C52單片機來控制一個簡易溫控風(fēng)扇系統(tǒng)。上文詳細(xì)的介紹了整個制作過程中的方案論證、硬件原理、軟件控制流程。在整個制作過程,在導(dǎo)師的細(xì)心指導(dǎo)以及同學(xué)的幫助下經(jīng)過不懈的努力,終于完成了對溫控風(fēng)扇的設(shè)計,實現(xiàn)了溫度精確檢測,風(fēng)扇的自起自停,手動、自動調(diào)節(jié)風(fēng)扇轉(zhuǎn)速,同時可以檢測速度功能的設(shè)計。</p><p>  查

52、找了元器件的資料,設(shè)計出了具體電路,并確定了主要參數(shù),再根據(jù)單片機課程知識,對軟件部分的理解,畫出了程序流程圖,最后完成了原理圖的繪制,完成了整個設(shè)計。在設(shè)計的過程中,也遇到了很多的問題,如在風(fēng)扇電機驅(qū)動方面,開始時沒有找到一個合適的方案來實現(xiàn)目標(biāo),先是自己在網(wǎng)上找了一些三極管驅(qū)動電機電路,但最終沒有實現(xiàn),后又改為達林頓管來驅(qū)動,并得到了較好的效果。在電機驅(qū)動PWM脈沖產(chǎn)生的過程中,由于以前單片機定時中斷學(xué)習(xí)不好,在此次設(shè)計中遇到了不少

53、麻煩,最終在查閱了相關(guān)書籍后總算做出來了。還有這次是第一次接觸使用溫度傳感器,對DS18B20的工作模式和一些時序更是一無所知,連資料上的時序也讀不懂,在經(jīng)過咨詢同學(xué)后現(xiàn)在終于做出來了。</p><p>  這一次的課題具有很強的綜合性,它不但涉及到模擬部分和數(shù)字部分的設(shè)計,還要將單片機,物理等若干課程相結(jié)合,并需要自己查找大量的資料才能完成此次設(shè)計。其實這個設(shè)計在很多方面還有待提高,但由于時間以及資金的問題而有

54、所局限。</p><p>  通過這樣一次畢業(yè)設(shè)計,有了一次電子電路設(shè)計的全新體驗。通過查找資料,設(shè)計,繪圖等,在實踐過程中,學(xué)到了不少知識,增強了自學(xué)能力,同樣加深了對電子學(xué)科的認(rèn)識。</p><p><b>  [參考文獻]:</b></p><p>  [1] 李全利.遲榮強.單片機原理及接口技術(shù)[M].北京:高等教育出版社,2004.1

55、</p><p>  [2] 卓晴.黃開勝,邵貝貝.學(xué)做智能車----挑戰(zhàn)“飛思卡爾”杯[M].北京:北京航空航天大學(xué)出</p><p><b>  版社,2006</b></p><p>  [3] 張偉等.Protel DXP 高級應(yīng)用.北京. 人民郵電出版社,2002 </p><p>  [4] 華成英.童詩白.

56、模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2007.4</p><p>  [5] 龔尚福.朱宇.微機原理與接口技術(shù)[M].西安:西安電子科技大學(xué)出版社,2007.1</p><p>  [6] 孫傳友.孫曉斌.感測技術(shù)基礎(chǔ)[M].北京:電子工業(yè)出版社,2008.5</p><p>  [7] 王柏盛.李萬慶,賀洪江.C程序設(shè)計[M].北京:高等教育出版社,20

57、05.12</p><p>  [8] 閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006.5</p><p>  [9] 夏路易.石宗義.電路原理圖與電路板設(shè)計教程[M].北京:北京希望電子出版社,2002.6</p><p>  [10]鄧興成.單片機原理與實踐指導(dǎo).北京:機械工業(yè)出版社,2009.9</p><p>  Bas

58、ed on the single chip microcomputer temperature control fan design</p><p>  [Abstract] The temperature control fan system adopts 51 series Micro controller STC89C52 as master controller, using DS18B20 digita

59、l temperature sensors to collect real-time temperature, the single-chip microcomputer treatment through the Darlington tube UL2003 to drive fan motors. Use the real-time temperature collection, we realize the fan since t

60、he stop, automatic and manual regulating fan speed function, at the same time also has five different gear wind and in the LCD1602 display on the LCD</p><p>  [Key words] DS18B20 Automatic speed Control s

61、ince the stop</p><p><b>  附錄:源程序</b></p><p>  ******************主程序************************</p><p>  #define word unsigned int</p><p>  #define byte unsigne

62、d char</p><p>  #include "at89x51.h"</p><p>  #include "lcd1602.c"</p><p>  #include "ds18b20.c"</p><p>  #include "pwm.c"</p

63、><p>  unsigned int yy=0;</p><p>  byte c[4];</p><p><b>  word s=0;</b></p><p>  char Num=0;</p><p>  void key();</p><p>  void main(

64、)</p><p><b>  {</b></p><p><b>  P1=0;</b></p><p>  LCD_Initial(); </p><p>  system_Ini(); </p><p>  GotoXY(0,0);</p><

65、;p>  Print("PWM_ON:");</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  GotoXY(7,0);</p><p>  LCD_Write(1,(40-PWM_DOWN)/10+'

66、;0');</p><p>  LCD_Write(1,(40-PWM_DOWN)%10+'0');</p><p>  if(P2_0==0) </p><p><b>  {</b></p><p>  GotoXY(13,1);</p><p>  Print(&qu

67、ot;M:0");</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  GotoXY(13,1);</p><p>  Print("M:1

68、");</p><p><b>  }</b></p><p>  GotoXY(0,1);</p><p>  Print("T");</p><p>  LCD_Write(1,(s/100)%10+'0');</p><p>  LCD_Wri

69、te(1,(s%100/10)%10+'0');</p><p>  LCD_Write(1,'.'); </p><p>  LCD_Write(1,s%10+'0');</p><p>  Print("C");</p><p>  GotoXY(9,1);&l

70、t;/p><p>  Print("N:");</p><p>  LCD_Write(1,Num+'0'); </p><p>  GotoXY(10,0); </p><p>  LCD_Write(1,yy/100+'0');</p><p>

71、;  LCD_Write(1,yy%100/10+'0');</p><p>  LCD_Write(1,yy%10+'0');</p><p><b>  key();</b></p><p><b>  } </b></p><p><b>

72、  }</b></p><p>  void key()</p><p><b>  {</b></p><p>  if(P2_0==1) </p><p><b>  { </b></p><p>  if(P2_1==0)</p><

73、p><b>  {</b></p><p>  while(P2_1==0); </p><p><b>  Num++;</b></p><p>  if(Num>=6) Num=0;</p><p>  switch(Num)</p><p><b&

74、gt;  {</b></p><p>  case 0: PWM_DOWN=40;break; </p><p>  case 1: PWM_DOWN-=8;break; </p><p>  case 2: PWM_DOWN-=4;break;</p><p>  case 3: PWM_DOWN-=4;break;</p

75、><p>  case 4: PWM_DOWN-=2;break;</p><p>  case 5: PWM_DOWN-=2;break;</p><p>  default:break;</p><p>  } </p><p>  } </p><p>

76、;<b>  }</b></p><p>  if(P2_0==0) </p><p>  { if(s>200&&s<800)</p><p><b>  {</b></p><p>  PWM_DOWN=40-(s/10)+10;</p><p

77、><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  PWM_DOWN=40;</p><p><b>  }</b></p><p>  if(s

78、<200&&s>=0) { Num=0;} </p><p>  if(s>=200&&s<250) { Num=1;} </p><p>  if(s>=250&&s<300) { Num=2;}</p><p>  if(s>=300&&s

79、<350) { Num=3;}</p><p>  if(s>=340&&s<400) { Num=4;}</p><p>  if(s>=400) { PWM_DOWN=10;Num=5;} </p><p><b>  } </b></p><p&g

80、t;<b>  }</b></p><p>  //////////////////////////////////////////////////////////////DS18B20 ///////////////////////////////////////////////////</p><p>  sbit DQ=P2^3;</p><

81、p>  void Init_DS18B20(void)</p><p><b>  {</b></p><p>  unsigned char x=0;</p><p>  DQ = 1; </p><p>  delay(8); </p><p>  DQ = 0; &

82、lt;/p><p>  delay(80);</p><p>  DQ = 1; </p><p>  delay(14);</p><p>  x = DQ; </p><p>  delay(50);</p><p><b>  }</b></p&

83、gt;<p>  unsigned char ReadOneChar(void)</p><p><b>  {</b></p><p>  unsigned char i=0;</p><p>  unsigned char dat = 0;</p><p>  for (i=8;i>0;i--)&

84、lt;/p><p><b>  {</b></p><p><b>  DQ = 0; </b></p><p><b>  dat>>=1;</b></p><p><b>  DQ = 1; </b></p><p>&

85、lt;b>  if(DQ)</b></p><p>  dat|=0x80;</p><p>  delay(10);</p><p><b>  }</b></p><p>  return(dat);</p><p><b>  }</b></p&

86、gt;<p>  void WriteOneChar(unsigned char dat)</p><p><b>  {</b></p><p>  unsigned char i=0;</p><p>  for (i=8; i>0; i--)</p><p><b>  {</b

87、></p><p><b>  DQ = 0;</b></p><p>  DQ = dat&0x01;</p><p><b>  delay(5);</b></p><p><b>  DQ = 1;</b></p><p><b

88、>  dat>>=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  unsigned int ReadTemperature(void)</p><p><b>  {</b><

89、/p><p>  unsigned char a=0;</p><p>  unsigned char b=0;</p><p>  unsigned int t=0;</p><p>  float tt=0;</p><p>  Init_DS18B20();</p><p>  WriteOn

90、eChar(0xCC);</p><p>  WriteOneChar(0x44); </p><p>  Init_DS18B20();</p><p>  WriteOneChar(0xCC); </p><p>  WriteOneChar(0xBE); </p><p>  a=ReadOneChar();

91、</p><p>  b=ReadOneChar();</p><p><b>  t=b;</b></p><p><b>  t<<=8;</b></p><p><b>  t=t|a;</b></p><p>  tt=t*0.062

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論