蔬菜大棚溫度控制系統(tǒng)設(shè)計(jì) (2)
《蔬菜大棚溫度控制系統(tǒng)設(shè)計(jì) (2)》由會(huì)員分享,可在線閱讀,更多相關(guān)《蔬菜大棚溫度控制系統(tǒng)設(shè)計(jì) (2)(40頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、目錄 摘要 I ABSTRACT II 第1章 緒論 1 1.1 選題背景 1 1.2 國內(nèi)發(fā)展現(xiàn)狀和水平 1 1.3 設(shè)計(jì)目的和意義 1 1.4 本章小結(jié) 2 第2章 系統(tǒng)功能需求分析和方案選擇 3 2.1 設(shè)計(jì)要求? 3 2.2 系統(tǒng)的功能需求分析 3 2.2.1 硬件功能需求分析 3 2.2.2 軟件功能需求分析 4 2.3 工作原理 4 2.4 控制方案 4 2.4.1 主控制系統(tǒng)方案 4 2.4.2 溫度采集系統(tǒng)方案 5 2.4.3 顯示模塊方案 5 2.4.4 機(jī)械控制系統(tǒng)方案 5 2.5 系統(tǒng)控制方案的確定 6 2.6 本章小結(jié) 7 第3
2、章 硬件電路設(shè)計(jì) 9 3.1主控制器AT89C51單片機(jī)電路 9 3.1.1 AT89C51功能介紹 9 3.1.2單片機(jī)最小系統(tǒng)電路說明 9 3.2 溫度采集電路 10 3.2.1 DS18B20基本功能 10 3.2.2 DS18B20 的電路連接原理 11 3.3 顯示模塊電路 11 第 31 頁 3.3.1 LCD1602基本功能?? 12 3.3.2 顯示模塊電路連接原理 12 3.4鍵盤輸入模塊電路 13 3.4.1鍵盤功能和其電路連接 13 3.5 機(jī)械控制電路模塊 13 3.5.1 降溫模塊電路 14
3、 3.5.2 升溫模塊電路 15 3.6 蜂鳴器報(bào)警電路 15 3.7 電源輸入部分? 16 3.8 本章小結(jié) 17 第4章 系統(tǒng)軟件設(shè)計(jì) 19 4.1 系統(tǒng)主程序流程 19 4.2 DS18B20測溫讀取子程序 20 4.3 LCD1602顯示子程序 21 4.4 機(jī)械控制子程序 21 4.5 定時(shí)器子程序 22 4.6 本章小結(jié) 23 第5章 系統(tǒng)調(diào)試與仿真 25 5.1 系統(tǒng)調(diào)試 25 5.2 系統(tǒng)仿真 25 5.3仿真結(jié)果 26 第6章 結(jié)論 27 致謝 29 參考文獻(xiàn) 31 附錄 33 附錄1 硬件電路原理圖 33 附錄2 元件清
4、單表 34 附錄3 源程序清單 35 摘要 本設(shè)計(jì)完成了蔬菜大棚溫度控制系統(tǒng)的系統(tǒng)設(shè)計(jì)。系統(tǒng)選用AT89C51單片機(jī)作為控制器,利用DS18B20數(shù)字溫度傳感器實(shí)時(shí)監(jiān)測大棚當(dāng)前溫度,以加熱燈泡和電機(jī)作為執(zhí)行器,進(jìn)行溫度控制。采用Proteus軟件繪制系統(tǒng)硬件電路圖,以C語言為編程語言,利用Keil平臺,完成了系統(tǒng)的軟件開發(fā),并進(jìn)行了仿真。仿真結(jié)果表明,控制系統(tǒng)基本能夠?qū)崿F(xiàn)檢測溫度、降溫和升溫的功能,特別是以不同的工作模式工作時(shí),通過PWM脈寬調(diào)制技術(shù)控制的電機(jī)以不同的轉(zhuǎn)速工作,滿足基本的設(shè)計(jì)需求。 關(guān)鍵詞:AT89C51,DS18B20,溫度控制? ABSTRACT The des
5、ign is completed the system design vegetable greenhouse temperature control system. AT89C51 microcontroller as the controller system selected, using digital temperature sensor DS18B20 real-time monitoring greenhouse current temperature, heating lamp and motors as actuators for temperature control. P
6、roteus uses software rendering system hardware circuit, with C language programming language, using Keil platform to complete software development system, and simulation. The simulation results show that the control system is basically possible to detect the temperature, cooling and heating function
7、, especially in the different operating modes of work, by a motor control PWM pulse width modulation technology work at different speeds to meet the basic design requirements. Keywords: AT89C51 , DS18B20 , temperature control 第1章 緒論 1.1 選題背景 在生活中,能量對于所有生物的重要性不言而喻,而溫度則是能量的一個(gè)很重要的體現(xiàn),所有生物跟溫度都有著密不可分的
8、關(guān)系。自從第一次工業(yè)革命以來,溫度的控制對于工業(yè)的發(fā)展有著十分重要的作用,可以說掌控了溫度,就掌控了工業(yè)發(fā)展的命脈。中國是個(gè)農(nóng)業(yè)大國,而有農(nóng)作物的生長跟溫度有很大的關(guān)系,因此可以說溫度的控制在農(nóng)業(yè)的生產(chǎn)中也十分重要。限制我國農(nóng)業(yè)發(fā)展的兩個(gè)難題是耕地面積少和氣候條件復(fù)雜,雖然說中國地大物博,但人口眾多,耕地面積少,加上日益破壞嚴(yán)重的環(huán)境,人均占有的耕地面積就更少,這極大的制約了我國農(nóng)業(yè)的發(fā)展。溫室大棚技術(shù)的出現(xiàn)就是其中一個(gè)解決這兩個(gè)難題的好方法。溫室大棚通過溫度控制建立一個(gè)適合農(nóng)作物生長的人工氣候環(huán)境,從而大大提高農(nóng)作物產(chǎn)量。同時(shí),溫室大棚幾乎可以建立在任何地方和任何環(huán)境,不用考慮地理因素和和環(huán)
9、境因素,因此可以很好的解決制約農(nóng)業(yè)發(fā)展中耕地面積少和氣候條件差這兩個(gè)難題,為農(nóng)業(yè)的發(fā)展帶來巨大的貢獻(xiàn)。 1.2 國內(nèi)發(fā)展現(xiàn)狀和水平 隨著生活水平不斷提高,人們在解決溫飽之后對生活的質(zhì)量也有很高的要求,對綠色食物尤其是蔬菜的需求就在不斷的增加。傳統(tǒng)的農(nóng)業(yè)生產(chǎn)帶有很強(qiáng)季節(jié)性,即蔬菜的產(chǎn)量跟季節(jié)或自然環(huán)境有很大的關(guān)聯(lián),當(dāng)季節(jié)不適合或自然環(huán)境不好時(shí),其產(chǎn)量將大大降低,這就不能滿足人們的需求,而蔬菜大棚的出現(xiàn)則能很好的解決這一難題。蔬菜大棚的主要技術(shù)核心之一是溫度控制,目前我國最常用的蔬菜大棚溫度控制的方法是通過人工在蔬菜大棚內(nèi)裝上溫度計(jì),然后通過讀取溫度計(jì)上顯示的溫度值得到大棚的當(dāng)前溫度,再把得到
10、的當(dāng)前溫度與設(shè)定溫度進(jìn)行比較,看當(dāng)前溫度是過高還是過低,然后再進(jìn)行相對應(yīng)的降溫還是升溫[10]。這種人工監(jiān)控方法不僅費(fèi)時(shí)費(fèi)力,成本高,而且誤差大,隨機(jī)性大,其調(diào)節(jié)措施也有很大的局限性。因此,我們需要一種造價(jià)低廉、測量準(zhǔn)確以和控制方便的溫度控制系統(tǒng)來解決這些難題。 1.3 設(shè)計(jì)目的和意義 單片機(jī)控制技術(shù)的出現(xiàn)為我們解決蔬菜大棚中溫度控制的難題提供了很好的思路。單片機(jī)在現(xiàn)代的控制領(lǐng)域中被稱之為小電腦,被越來越多的應(yīng)用到現(xiàn)代的生活中[13]。在蔬菜大棚中進(jìn)行溫度控制時(shí),采用單片機(jī)來控制溫度的自動(dòng)控制系統(tǒng),其具有可靠性高、精度高、功能強(qiáng)以和造價(jià)低廉等的優(yōu)點(diǎn),這些優(yōu)點(diǎn)可以大幅度提高被控溫度的各項(xiàng)技術(shù)
11、指標(biāo),給蔬菜提供一個(gè)適合生長的環(huán)境,從而大大提高蔬菜的生產(chǎn)質(zhì)量和數(shù)量[1]。除此之外,在傳統(tǒng)的大棚中,電機(jī)的轉(zhuǎn)速在不同的溫度下其轉(zhuǎn)速都是一樣的,當(dāng)溫度超過上限設(shè)定溫度但不是很高的時(shí)候基本不會(huì)出現(xiàn)問題。但溫度超過上限設(shè)定溫度很多時(shí),如果電機(jī)還是以較慢的轉(zhuǎn)速開始工作,則會(huì)因?yàn)榻禍夭缓蜁r(shí)而導(dǎo)致蔬菜生長受到影響。考慮到傳統(tǒng)蔬菜大棚的這一缺陷,在本設(shè)計(jì)中運(yùn)用PWM脈寬調(diào)制技術(shù)控制電機(jī)的轉(zhuǎn)速[2],避免出現(xiàn)上述提到的問題。同時(shí),自動(dòng)控制也將節(jié)省大量的人力和財(cái)力,給農(nóng)民帶來更高的收入。因此,采用單片機(jī)控制蔬菜大棚溫度的自動(dòng)控制系統(tǒng)比傳統(tǒng)的人工控制具有不可比擬的優(yōu)勢,它為現(xiàn)代農(nóng)業(yè)的發(fā)展提供了強(qiáng)大的技術(shù)支持,并
12、指明了方向。 本文的組織結(jié)構(gòu)如下:在第二章中分析了控制系統(tǒng)的硬件和軟件功能需求,提出問題。在第三章內(nèi)容中分模塊進(jìn)行電路設(shè)計(jì),完成系統(tǒng)的總體電路設(shè)計(jì)。在第四章中根據(jù)系統(tǒng)流程圖完成系統(tǒng)的軟件開發(fā)。第五章運(yùn)用Proteus軟件和Keil程序編寫軟件對系統(tǒng)硬件和軟件進(jìn)行仿真并分析仿真結(jié)果。第六章中是整個(gè)設(shè)計(jì)的結(jié)論,并對論文進(jìn)行總結(jié)。 1.4 本章小結(jié) 本章節(jié)首先給出此次設(shè)計(jì)的選題背景和國內(nèi)發(fā)展現(xiàn)狀和水平,說明蔬菜大棚存在的問題,然后通過設(shè)計(jì)目的和意義闡明研究問題的技術(shù)要點(diǎn)和方向,為下一步的系統(tǒng)功能需求分析和方案選擇打好基礎(chǔ),并在本章節(jié)的最后給出論文的結(jié)構(gòu)。 第2章 系統(tǒng)功能需求分析和方案選擇
13、 完整的控制系統(tǒng)一般包含了多個(gè)部分的電路,每一部分電路可以由多種方案實(shí)現(xiàn),但每一種方案在實(shí)現(xiàn)所需要的功能時(shí),其電路在精確度、復(fù)雜程度、可行性分析等方面都各有所不同。為了使整個(gè)系統(tǒng)電路變的簡單,制作成本低,精準(zhǔn)度高,可行性好,本章將對整個(gè)系統(tǒng)的電路進(jìn)行拆分,依次對每一部分電路的選擇方案進(jìn)行論證,使用最優(yōu)的方案達(dá)到最優(yōu)控制的目的。 2.1 設(shè)計(jì)要求? 本次設(shè)計(jì)需要設(shè)計(jì)一個(gè)蔬菜大棚溫度控制系統(tǒng),其具體要求如下:?蔬菜大棚設(shè)定的初始上下限溫度值分別為30℃和20℃,也可以由人為調(diào)控設(shè)定,并通過顯示器顯示出上下限溫度值和實(shí)時(shí)溫度值,其最小的區(qū)分度為1℃。當(dāng)實(shí)時(shí)溫度在上下限溫度之間時(shí),表示系統(tǒng)溫度處于
14、正常狀態(tài),機(jī)械控制模塊不工作;當(dāng)實(shí)時(shí)溫度高于上限溫度時(shí),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警,機(jī)械控制模塊控制降溫設(shè)備進(jìn)行散熱降溫,同時(shí)要求當(dāng)實(shí)時(shí)溫度超過上限溫度越多,散熱越快。當(dāng)溫度回降到上下限的中間值即25℃時(shí),降溫設(shè)備停止工作。當(dāng)實(shí)時(shí)溫度低于下限溫度時(shí),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警,機(jī)械控制模塊控制升溫設(shè)備進(jìn)行加熱升溫;當(dāng)溫度回升到上下限的中間值即25℃時(shí),升溫設(shè)備停止工作。 2.2 系統(tǒng)的功能需求分析 系統(tǒng)的功能需求分析包括硬件功能需求分析和軟件功能需求分析。根據(jù)設(shè)計(jì)要求和系統(tǒng)的功能需求分析,得到系統(tǒng)的功能需求。 2.2.1 硬件功能需求分析 首先,需要選擇一個(gè)主控制器來進(jìn)行數(shù)據(jù)的檢測和處理,在大
15、棚溫度控制的過程中需要加熱以和散熱,所以在硬件系統(tǒng)中需要一個(gè)加熱燈泡和電風(fēng)扇,電風(fēng)扇用電機(jī)代替。當(dāng)通過主控制器檢測到溫度低于設(shè)定的溫度下限時(shí),則啟動(dòng)加熱燈泡開始對空氣溫度進(jìn)行加熱升溫,讓系統(tǒng)的溫度保持在所設(shè)定溫度上下限值的范圍內(nèi)。在此過程中用到的溫度傳感裝置為DS18B20,主控制器通過接收傳感器傳回的溫度數(shù)據(jù),判斷是否在所設(shè)定溫度上下限值的范圍內(nèi)。在本設(shè)計(jì)中當(dāng)溫度超過設(shè)定溫度上限越多,電機(jī)轉(zhuǎn)動(dòng)的越快,這就需要控制電機(jī)速度[2],根據(jù)電機(jī)所學(xué)知識,電機(jī)的轉(zhuǎn)速與施加在電機(jī)兩端的電壓大小成正比,但是電機(jī)在接入電壓后轉(zhuǎn)速不會(huì)立即到最大值,而使在經(jīng)過一段時(shí)間的加速后才會(huì)到達(dá)當(dāng)前電壓下的最大轉(zhuǎn)速。在電機(jī)
16、的速度控制程序中,通過控制輸出高低電平占空比進(jìn)而控制電機(jī)兩端的平均電壓,即通過PWM脈寬調(diào)試改變電機(jī)輸入電壓的占空比來實(shí)現(xiàn)的。 2.2.2 軟件功能需求分析 軟件就是對主控制器的編程,在軟件編寫的過程中以軟件流程圖為依據(jù),然后根據(jù)硬件系統(tǒng)的設(shè)計(jì)要求按步編寫。系統(tǒng)開始運(yùn)行后,主控制器將檢測到的溫度信息進(jìn)行分析,檢測溫度是否在所設(shè)定溫度上下限值的范圍內(nèi),若不在則主控制器與加熱燈泡或電機(jī)相連的引腳輸出高電平,使加熱燈泡或電機(jī)工作開始對空氣溫度進(jìn)行升溫或降溫。同時(shí)通過程序的編寫,讓主控制器能輸出相應(yīng)的PWM波信號,完成電機(jī)調(diào)速的功能。在本設(shè)計(jì)中用到的溫度檢測元件是DS18B20溫度檢測器,這就需要
17、在程序中引入DS18B20的基本讀寫程序。按照上述對蔬菜大棚溫度控制系統(tǒng)要求的分析,通過硬件系統(tǒng)和軟件系統(tǒng)的配合工作來達(dá)到本設(shè)計(jì)的控制要求。 2.3 工作原理 本次設(shè)計(jì)的蔬菜大棚溫度控制系統(tǒng)主要的工作原理過程是:溫度采集模塊對溫度進(jìn)行采集,在顯示模塊上顯示出來的同時(shí)傳給主控制模塊,通過主控制模塊的整合處理,最后通過主控模塊輸出的電平信號來使機(jī)械控制模塊進(jìn)行相對應(yīng)的工作,使蔬菜大棚的溫度達(dá)到所要求控制的目標(biāo)。 2.4 控制方案 控制方案的選擇關(guān)系到控制系統(tǒng)的成敗,完整的控制方案一般包含了多個(gè)小的模塊方案,每一小模塊方案功能的實(shí)現(xiàn),則控制系統(tǒng)將能完成所需要的功能。為了使整個(gè)控制方案合理可行
18、,下面將進(jìn)行收集分析各模塊資料信息的工作,最終選出最合理的控制方案。 2.4.1 主控制系統(tǒng)方案 隨著科技的進(jìn)步發(fā)展,目前常見的的溫度控制器有很多種,其中單片機(jī)和PLC是最先進(jìn)的兩種,以這兩種為主控制系統(tǒng)的設(shè)計(jì)方案十分符合蔬菜大棚溫度自動(dòng)控制的要求。 方案一:單片機(jī)控制系統(tǒng) 由于要對系統(tǒng)內(nèi)的溫度進(jìn)行檢測和控制,因此選用AT89C51型號的單片機(jī)在控制性能要求上是可以完成主控制任務(wù)。AT89C51型號的單片機(jī)的電路的連接比較簡單,其與其他設(shè)備很容易就可以實(shí)現(xiàn)雙向數(shù)據(jù)傳輸交換[8]。同時(shí),單片機(jī)控制系統(tǒng)的優(yōu)點(diǎn)是單片機(jī)的價(jià)格便宜,使用靈活;其缺點(diǎn)是單片機(jī)的編程比較難,而且必須得到電路板技術(shù)
19、的支持。 方案二:PLC控制系統(tǒng) PLC的控制方式主要是根據(jù)所需求的環(huán)境條件,設(shè)置目標(biāo)參數(shù),然后PLC控制器根據(jù)已設(shè)置的目標(biāo)參數(shù)自動(dòng)進(jìn)行相對應(yīng)的動(dòng)作,以達(dá)到所要完成的自動(dòng)控制的任務(wù)。PLC的控制方式優(yōu)點(diǎn)是穩(wěn)定性和可靠性很高,能在各種復(fù)雜環(huán)境下穩(wěn)定工作。但是,其缺點(diǎn)也比較明顯,就是PLC本身的價(jià)格昂貴,類型不同的PLC不能兼容使用,其相對應(yīng)的編程語言和指令系統(tǒng)也不兼容。 綜上所述,雖然PLC控制系統(tǒng)能很好的在復(fù)雜的環(huán)境中工作,其可靠性能也比單片機(jī)的要高,但是單片機(jī)也能通過編程完成自動(dòng)控制的目的,而且更加經(jīng)濟(jì)實(shí)惠。所以,主控制系統(tǒng)選用單片機(jī)控制系統(tǒng),即選擇方案一。 2.4.2 溫度采集系統(tǒng)
20、方案 方案一:使用熱敏電阻。使用熱敏電阻所測量的溫度,不能直接顯示被測溫度,需要進(jìn)行A/D轉(zhuǎn)換,因此電路設(shè)計(jì)復(fù)雜,而且測溫精度低,抗干擾能力差,不利于完成控制任務(wù)。? 方案二:溫度采集電路可以使用DS18B20溫度傳感器。DS18B20溫度傳感器的精度高,工作穩(wěn)定性好,具有很好的抗干擾能力,而且價(jià)格適中,其測溫方式簡單,能直接讀取被測溫度值,不用經(jīng)過各種復(fù)雜的轉(zhuǎn)換。因此,DS18B20溫度傳感器能很好的完成測溫任務(wù)。? 綜上所述,采用DS18B20溫度傳感器的測溫電路連接比較簡單,而采用熱敏電阻之類器件的測溫電路比較復(fù)雜,測溫精度和穩(wěn)定性也不高,因此測溫方式采用方案二的。 2.4.3
21、顯示模塊方案 由設(shè)計(jì)要求所知在顯示器上所要顯示的內(nèi)容為實(shí)時(shí)溫度值和設(shè)定的溫度上下限值,要完成這個(gè)要求就需要合理選擇顯示器,因此在本小節(jié)中將通過對比分析選擇大棚溫度的顯示模塊。 方案一:采用LED數(shù)碼管顯示。數(shù)碼管使用簡單,但一個(gè)數(shù)碼管只能顯示一個(gè)字符,要顯示多位數(shù)據(jù)時(shí)就要使用多個(gè)數(shù)碼管,這就增加了硬件電路的復(fù)雜度和額外功耗,而且LED數(shù)碼管也無法顯示字[12]。而本次設(shè)計(jì)顯示模塊需要顯示出實(shí)時(shí)溫度值和設(shè)定的溫度上下限值,顯示內(nèi)容比較復(fù)雜,而LED數(shù)碼管也無法顯示字母,即LED數(shù)碼管沒辦法顯示這么多的內(nèi)容,因此排除使用數(shù)碼管。 方案二:采用LCD1602液晶顯示。LCD1602液晶具有功耗
22、低,顯示內(nèi)容豐富清晰,顯示信息量大,顯示速度較快,使用簡單等特點(diǎn)且得到了廣泛的應(yīng)用。并且與單片機(jī)連接電路簡單,容易控制。 綜上所述,通過以上方案論述且由于LCD1602可以滿足本設(shè)計(jì)的基本要求,因此選擇方案二。 2.4.4 機(jī)械控制系統(tǒng)方案 在本次設(shè)計(jì)中,當(dāng)系統(tǒng)的溫度不在所設(shè)定溫度范圍內(nèi)時(shí),就需要機(jī)械控制系統(tǒng)進(jìn)行相對應(yīng)的動(dòng)作使溫度能夠維持在所設(shè)定的范圍內(nèi)。機(jī)械控制系統(tǒng)包括升溫模塊和降溫模塊,其中升溫設(shè)備是使用大功率電燈泡來加熱空氣溫度進(jìn)行升溫,這種升溫方式既快捷又方便,所以主要考慮的是降溫的方案。降溫最簡單的方式是打開大棚的天窗進(jìn)行自然通風(fēng),但當(dāng)溫度過高時(shí),自然通風(fēng)不能達(dá)到降溫要求時(shí),就
23、需要機(jī)械控制通風(fēng)進(jìn)行降溫,而機(jī)械控制通風(fēng)最好的方式是采用風(fēng)扇通風(fēng)。 蔬菜大棚溫度控制系統(tǒng)是個(gè)模擬系統(tǒng),所以使用電機(jī)來代替風(fēng)扇來進(jìn)行模擬實(shí)驗(yàn)。根據(jù)設(shè)計(jì)要求里的溫度越高,降溫越快的要求,這就涉和到電機(jī)的調(diào)速問題。目前,最常應(yīng)用于調(diào)速的電機(jī)主要有步進(jìn)電機(jī)和直流電機(jī)。根據(jù)對電機(jī)的分析,就可以選擇合適的電機(jī)。 方案一:采用步進(jìn)電機(jī)。步進(jìn)電機(jī)可以準(zhǔn)確的控制電機(jī)的轉(zhuǎn)動(dòng)角度,但是如果控制不當(dāng)就容易產(chǎn)生共振,難以獲得較大的轉(zhuǎn)矩和轉(zhuǎn)速,而且調(diào)速范圍小,耗電量也大,所以不適合使用在調(diào)速系統(tǒng)中。 方案二:采用直流電機(jī)。直流電機(jī)可以在精確控制的情況下得到加大的轉(zhuǎn)矩和較大的轉(zhuǎn)速。同時(shí),直流電機(jī)具有調(diào)速范圍廣、易于使
24、用和安裝,耗電量低,壽命長,抗干擾能力強(qiáng)等優(yōu)點(diǎn),所以被廣泛應(yīng)用在調(diào)速系統(tǒng)中。 綜上所述,因?yàn)橹绷麟姍C(jī)能夠?qū)崿F(xiàn)平滑調(diào)速,而且控制更加方便,能耗少,符合控制任務(wù)要求,所以選擇直流電機(jī)即方案二。 2.5 系統(tǒng)控制方案的確定 綜上所述,得到系統(tǒng)的基本組成結(jié)構(gòu)框圖如圖2.1所示。 電源模塊 AT89C51 單片機(jī)主控模塊 顯示電路模塊 鍵盤輸入模塊 機(jī)械控制模塊 溫度采集模塊 報(bào)警電路模塊 晶振和復(fù)位模塊 圖2.1 系統(tǒng)的基本組成結(jié)構(gòu)框圖 本次設(shè)計(jì)系統(tǒng)的基本組成結(jié)構(gòu)其由八個(gè)小部分組成
25、,分別是:使用AT89C51單片機(jī)芯片為控制核心的主控制模塊;使用DS18B20溫度傳感器的溫度采集模塊;使用電燈泡升溫和電機(jī)降溫的機(jī)械控制模塊;使用LCD1602液晶顯示器的顯示模塊;使用按鍵的上下限可調(diào)控的鍵盤輸入模塊;蜂鳴器報(bào)警電路模塊;單片機(jī)的最小系統(tǒng)即晶振和復(fù)位模塊以和電源模塊。 2.6 本章小結(jié) 本章內(nèi)容是通過對控制系統(tǒng)的硬件和軟件的系統(tǒng)功能分析,對此次設(shè)計(jì)的蔬菜大棚溫度控制系統(tǒng)的各部分電路在方案選擇上做了選擇,并詳細(xì)介紹所選擇的每一部分電路的最優(yōu)方案,為接下來的硬件電路設(shè)計(jì)和軟件設(shè)計(jì)提供了基礎(chǔ),以系統(tǒng)的硬件和軟件的功能要求逐步進(jìn)行設(shè)計(jì)。 第3章 硬件電路設(shè)計(jì) 本章主要是基
26、于第二章選擇的最優(yōu)控制方案,選擇相關(guān)的電路控制方案,并且說明電路的基本原理,再通過合理的電路搭建完成硬件電路的設(shè)計(jì)。 3.1主控制器AT89C51單片機(jī)電路 本次設(shè)計(jì)中選擇AT89C51單片機(jī)為主控制器,本節(jié)中將對AT89C51的功能進(jìn)行簡介,同時(shí)也將對連接單片機(jī)的基本外圍電路進(jìn)行簡要說明。 3.1.1 AT89C51功能介紹 單片機(jī)類型的不同將導(dǎo)致功能不同,作為能與MSC-51系列單片機(jī)兼容切換使用的單片機(jī),下面將對AT89C51單片機(jī)的功能進(jìn)行簡介,其主要功能特性如表3-1所示。 表3-1 AT89C51單片機(jī)主要功能特
27、性表 主要功能特性 兼容MCS51指令系統(tǒng) 4K字節(jié)可編程閃爍存儲器 32可編程I/O線 128x8bit內(nèi)部RAM 1000寫/擦循環(huán) 時(shí)鐘頻率0-24MHz 兩個(gè)16位定時(shí)器/計(jì)數(shù)器 可編程UART串行通道 三級加密位 5個(gè)中斷源 3.1.2單片機(jī)最小系統(tǒng)電路說明 AT89C51型單片機(jī)的最小系統(tǒng)由復(fù)位電路和時(shí)鐘電路組成,以下將對單片機(jī)的最小系統(tǒng)電路進(jìn)行具體說明。 如圖3.1所示為單片機(jī)最小系統(tǒng)電路,其中復(fù)位電路的復(fù)位輸入引腳為單片機(jī)提供了初始化的手段。當(dāng)系統(tǒng)運(yùn)行時(shí),如果電路中某一部分電路發(fā)生故障或出現(xiàn)程序錯(cuò)誤等情況時(shí),單片機(jī)就會(huì)出現(xiàn)故障,這時(shí)就需要單片機(jī)的最小
28、系統(tǒng)的復(fù)位電路來清除錯(cuò)誤的運(yùn)行狀態(tài)。按下復(fù)位電路的復(fù)位按鈕,單片機(jī)就會(huì)停止當(dāng)前的運(yùn)行狀態(tài),內(nèi)部的程序就會(huì)從頭開始執(zhí)行,使單片機(jī)內(nèi)部的所有參數(shù)重新處于起始的位置,并清除單片機(jī)錯(cuò)誤的運(yùn)行狀態(tài),最后重新開始執(zhí)行程序。 圖3.1 單片機(jī)的最小系統(tǒng)電路 本電路中需要實(shí)現(xiàn)手動(dòng)復(fù)位功能,則頻率選用12MHZ時(shí)C5取10uF,R取10k。手動(dòng)復(fù)位原理如圖3-1所示,單片機(jī)的復(fù)位按鍵K1按下后,單片機(jī)就接入高電平,單片機(jī)的RST引腳接高電平被時(shí)序電阻R1拉低后進(jìn)行復(fù)位,單片機(jī)運(yùn)行的程序就會(huì)重頭開始[6]。 單片機(jī)運(yùn)行時(shí)需要有晶振產(chǎn)生基本的時(shí)鐘信號,目的是讓各個(gè)小部分的運(yùn)行工作能保持同步。單片機(jī)經(jīng)12MH
29、Z的晶振分頻之后,用于程序的每一步執(zhí)行,晶振電路主要由電阻和電容的并聯(lián)組成,晶振可以看做是一個(gè)電感,再并連上一個(gè)大小適當(dāng)?shù)碾娙荩徒M成了并聯(lián)諧振電路。該電路用在負(fù)反饋中就可以構(gòu)成正弦波振蕩電路,由于其頻率比較窄,不會(huì)受其它元件的影響。本電路原理上選擇11.0592MHZ的晶振,電容典型值在20pF到100pF之間選擇,典型值通常為20pF。故本電路的C1、C2都選擇20pF的電容值。 3.2 溫度采集電路 本節(jié)主要是說明利用DS18B20溫度傳感器進(jìn)行測量溫度的電路原理,用到的主要器件是DS18B20芯片,故本節(jié)中主要對DS18B20溫度傳感器的功能進(jìn)行簡介以和電路連接原理的說明。
30、 3.2.1 DS18B20基本功能 傳感器類型的不同將導(dǎo)致功能不同,下面將對DS18B20溫度傳感器的基本技術(shù)性能進(jìn)行簡介,其基本技術(shù)性能如表3-2所示。 表3-2 DS18B20溫度傳感器的基本技術(shù)性能表 技術(shù)指標(biāo) 基本技術(shù)性能 測溫范圍 -55℃~+125℃,在-10~+85℃時(shí)精度為±0.5℃ 工作電源 3.0~5.5V/DC 可分辨率 分別為0.5℃、0.25℃、0.125℃和0.0625℃ 接口方式 單線接口即可實(shí)現(xiàn)微處理器的雙向通訊 電路接線 在使用時(shí)不需要任何外圍元件 測溫方式 支持多點(diǎn)組網(wǎng)功能 負(fù)壓特
31、性 電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀 工作特性 具有極強(qiáng)的抗干擾糾錯(cuò)能力 3.2.2 DS18B20 的電路連接原理 此次設(shè)計(jì)的DS18B20溫度傳感器測溫電路具有工作穩(wěn)定可靠、抗干擾能力強(qiáng)、而且電路也較簡單的優(yōu)點(diǎn),能很好的完成測量溫度的任務(wù)。因?yàn)镈S18B20溫度傳感器的電路連接要求符合1-Wire協(xié)議內(nèi)容[4],因此在連接其測溫電路時(shí),把DQ口接入到單片機(jī)的P1.0端口,而DQ口再外接一個(gè)5V電源電壓的10kΩ上拉電阻,就可完成其測量溫度電路的連接。此次設(shè)計(jì)的DS18B20測溫電路圖如圖?3.2所示。 圖3.2 DS18B20測溫電路圖 3.3 顯示模塊電路 顯示模
32、塊主要是利用LCD1602液晶顯示器顯示實(shí)時(shí)溫度值和上下限溫度值,以下將對LCD1602液晶顯示器功能進(jìn)行簡述以和對顯示模塊電路的連接進(jìn)行分析說明。 3.3.1 LCD1602基本功能?? 本次設(shè)計(jì)的顯示電路采用的是LCD1602液晶顯示器。下面將對LCD1602液晶顯示器的基本技術(shù)性能進(jìn)行簡介,其基本技術(shù)性能如表3-3所示。 表3-3 LCD1602的技術(shù)性能參數(shù)表 技術(shù)指標(biāo) 技術(shù)性能參數(shù) 顯示容量 16×2個(gè)字符 工作電壓 4.5—5.5V 工作電流 2.0mA(5.0V) 最佳工作電壓 5.0V? 字符尺寸
33、 2.95×4.35(W×H)mm? 3.3.2 顯示模塊電路連接原理 LCD1602可以顯示2行16個(gè)字符,有8位數(shù)據(jù)總線D0-D7,分別連接到單片機(jī)的數(shù)據(jù)端口P0.0-P0.7上,進(jìn)行數(shù)據(jù)傳輸;管腳RS、RW、E為三個(gè)控制端口,而3管腳VEE上連接的滑動(dòng)變阻器具有可以調(diào)節(jié)字符的對比度和顯示器的背光功能[9]。顯示模塊電路連接原理圖如圖3.3所示。 圖3.3 顯示模塊電路連接原理圖 3.4鍵盤輸入模塊電路 當(dāng)系統(tǒng)溫度要求控制在不同的范圍內(nèi)時(shí),需要重新調(diào)節(jié)溫度上下限的范圍,而這個(gè)過程就用到鍵盤輸入信號進(jìn)行調(diào)節(jié)。通過對溫度上下限調(diào)節(jié)功能的分析,就得到鍵盤電路的設(shè)計(jì)思路。 3.4.1鍵
34、盤功能和其電路連接 本次設(shè)計(jì)的溫度控制系統(tǒng)在工作時(shí),具備溫度上下限可由人為設(shè)定調(diào)控的功能。因此,可以通過鍵盤輸入電路來實(shí)現(xiàn)該功能。由于本設(shè)計(jì)的系統(tǒng)使用到4個(gè)按鍵,按鍵的使用比較少,因此可選用獨(dú)立式按鍵,按鍵采用輕觸開關(guān)[3]。4個(gè)按鍵的功能分別為:? K2:選擇鍵,可以切換需要更改的溫度上限與溫度下限; K3:增加鍵,當(dāng)需要增大溫度上下限時(shí),按此鍵一次則可以讓上限溫度和下限溫度增加1;? K4:減小鍵,當(dāng)需要減小溫度上下限時(shí),按此鍵一次則可以讓上限溫度和下限溫度減小1; K5:確定鍵,當(dāng)重新調(diào)節(jié)好溫度上下限后,按下確定鍵可將此時(shí)重新設(shè)定好的溫度上下限的值進(jìn)行保存,并在顯示器上顯示出來
35、。 按鍵電路圖如圖3.4所示,其中按鍵K2-K5分別連入單片機(jī)的P1.3-P1.6端口,同時(shí)接地。 圖3.4 按鍵電路圖 3.5 機(jī)械控制電路模塊 機(jī)械控制電路模塊主要包括降溫和升溫電路,當(dāng)環(huán)境溫度需要發(fā)生變化時(shí),單片機(jī)就會(huì)控制降溫模塊電路或升溫模塊電路開始進(jìn)行相對應(yīng)的降溫或升溫工作。在實(shí)際應(yīng)用中,升溫用的大功率電燈泡和降溫用的電風(fēng)扇的工作電源是220V交流電源電壓,但是因?yàn)閱纹瑱C(jī)的引腳的驅(qū)動(dòng)能力有限,所以考慮用繼電器來驅(qū)動(dòng)燈泡和風(fēng)扇。 利用單片機(jī)控制大功率電燈泡和電風(fēng)扇的工作原理為:利用一只三極管的基集連接到單片機(jī)的I/O口,通過單片機(jī)輸出的電平連接控制三極管的通斷,然后用三極管的
36、集電極電流Ic來控制5V繼電器開關(guān)的吸合[7],而繼電器上連接著用220V電源電壓驅(qū)動(dòng)的燈泡或風(fēng)扇。當(dāng)繼電器開關(guān)閉合時(shí),220V電源電壓與燈泡或風(fēng)扇的電路形成回路,燈泡或風(fēng)扇就開始工作;而當(dāng)繼電器開關(guān)斷開時(shí),220V電源電壓與燈泡或風(fēng)扇的電路沒有形成回路,燈泡或風(fēng)扇不工作。這樣,單片機(jī)就可以通過電平的輸出來控制燈泡或風(fēng)扇的升溫或降溫工作。在本次設(shè)計(jì)的系統(tǒng)中,為安全起見,所以使用5V的直流電來代替模擬220V的交流電,相對應(yīng)的燈泡和風(fēng)扇也使用用5V驅(qū)動(dòng)的小燈泡和直流電機(jī)來代替。 3.5.1 降溫模塊電路 當(dāng)溫度高于上限時(shí),降溫設(shè)備開始工作。當(dāng)溫度超過上限太多時(shí),就需要進(jìn)行快速降溫散熱,否則會(huì)
37、影響蔬菜的生長;而當(dāng)溫度稍微超過上限時(shí),緩慢降溫散熱就可以,這樣既能達(dá)到很好的降溫效果又能節(jié)約成本。因此,這就需要用到電機(jī)的調(diào)速來控制降溫的快慢。 本次設(shè)計(jì)的蔬菜大棚溫度控制系統(tǒng)能自動(dòng)控制溫度,因此連接好電機(jī)的驅(qū)動(dòng)電路后,通過編寫程序來控制單片機(jī)端口產(chǎn)生的PWM波來控制電機(jī)的轉(zhuǎn)速,達(dá)到自動(dòng)控制的目的要求。其調(diào)速原理為:在單位時(shí)間(T)內(nèi)PWM波產(chǎn)生高電平的時(shí)間(T1)占單位時(shí)間的百分比為占空比,即當(dāng)占空比為50%時(shí),電機(jī)的實(shí)際轉(zhuǎn)速是按電機(jī)額定轉(zhuǎn)速的50%來轉(zhuǎn)動(dòng),這樣就達(dá)到電機(jī)調(diào)速的目標(biāo)要求。 在本次設(shè)計(jì)的系統(tǒng)中,為了方便觀察調(diào)速后電機(jī)轉(zhuǎn)動(dòng)的速度,用一個(gè)發(fā)光二極管并聯(lián)到繼電器的電路中去,發(fā)光
38、二極管閃亮的快慢就是電機(jī)轉(zhuǎn)動(dòng)的快慢。其具體工作過程為:當(dāng)實(shí)時(shí)溫度低于上限溫度時(shí),P1.2管腳的輸出信號為1,電機(jī)不轉(zhuǎn)動(dòng);當(dāng)溫度超過上限溫度且不超過5℃時(shí),P1.2管腳的輸出信號為0,?電機(jī)開始轉(zhuǎn)動(dòng),在單位時(shí)間(T)內(nèi)PWM波產(chǎn)生高電平的時(shí)間(T1)占單位時(shí)間的百分比為50%,即占空比為50%,則電機(jī)按額定轉(zhuǎn)速的50%轉(zhuǎn)動(dòng);當(dāng)溫度超過上限大于5℃時(shí),在單位時(shí)間(T)內(nèi)PWM波產(chǎn)生高電平的時(shí)間(T1)占單位時(shí)間的百分比約為100%,即占空比約為100%,則電機(jī)接近于按額定轉(zhuǎn)速轉(zhuǎn)動(dòng);當(dāng)溫度降到上下限溫度的中間值即25℃時(shí),P1.2管腳的輸出信號為1,電機(jī)停止轉(zhuǎn)動(dòng)。因此溫度越高,電機(jī)轉(zhuǎn)速越快。降溫電路
39、原理圖如圖3.5所示。 圖3.5 降溫電路原理圖 3.5.2 升溫模塊電路 當(dāng)溫度低于下限時(shí),升溫設(shè)備開始工作,與單片機(jī)連接的P2.4管腳輸入低電平,三極管導(dǎo)通,繼電器有電流通過將吸合,則升溫設(shè)備即大功率電燈泡開始對空氣進(jìn)行加熱升溫。當(dāng)溫度上升到上下限溫度的中間值即25℃時(shí),與單片機(jī)連接的P2.4管腳輸入高電平,三極管截止,繼電器沒有電流通過將斷開,則升溫設(shè)備停止工作。升溫設(shè)備使用大功率電燈泡,仿真時(shí)用5V的小電燈泡代替,小燈泡發(fā)光時(shí)可能看的不是很清楚,所以再用一個(gè)發(fā)光二極管并聯(lián)到繼電器的電路中去,以便于觀察升溫的工作過程。升溫電路原理圖如圖3.6所示。 圖3.6 升溫電路原理圖
40、3.6 蜂鳴器報(bào)警電路 蜂鳴器電路存在的目的是報(bào)警,提醒環(huán)境溫度已經(jīng)發(fā)生變化,需要啟動(dòng)機(jī)械控制設(shè)備進(jìn)行相對應(yīng)的工作。蜂鳴器電路的工作原理是:蜂鳴器需要一只PNP9012三極管來驅(qū)動(dòng),三極管的基級b經(jīng)過限流電阻為10k的R3后由單片機(jī)的P1.5端口,通過單片機(jī)端口輸出的電平來控制三極管的導(dǎo)通與截止。當(dāng)單片機(jī)端口輸出高電平時(shí),三極管截止,蜂鳴器電路沒有形成回路,則蜂鳴器不發(fā)出聲;當(dāng)單片機(jī)端口輸出低電平時(shí),三極管導(dǎo)通,蜂鳴器的電流形成回路,這樣蜂鳴器就會(huì)發(fā)出聲音進(jìn)行報(bào)警。 本次設(shè)計(jì)的蜂鳴器報(bào)警電路在環(huán)境溫度高于上限或低于下限時(shí)都會(huì)發(fā)出聲音進(jìn)行報(bào)警,只有在環(huán)境溫度正?;蛉藶橹鲃?dòng)停止的情況下,蜂鳴器
41、電路才不會(huì)發(fā)出聲音。蜂鳴器電路圖如圖3.7所示。 圖3.7 蜂鳴器電路圖 3.7 ?電源輸入部分? 本次設(shè)計(jì)的蔬菜大棚溫度控制系統(tǒng)所需要用到的元器件都是使用5V的直流電源供電,因此得把220V的單相交流電壓轉(zhuǎn)換為5V直流電壓。其轉(zhuǎn)換的主要工作原理是利用電源變壓器和整流電路把交流電變?yōu)榇笮『线m的直流電,再經(jīng)過濾波電路和穩(wěn)壓電路把其轉(zhuǎn)換成穩(wěn)定的直流電壓[5]。穩(wěn)壓電路使用穩(wěn)壓芯片7805,其電路原理圖如圖3.8所示。 圖3.8 5V直流電壓轉(zhuǎn)換電路圖 由于輸入電壓為電網(wǎng)電壓,一般情況下所需直流電壓的數(shù)值和電網(wǎng)電壓的有效值相差較大,因而電源變壓器的作用就顯現(xiàn)出來,起到降壓的作用。降壓
42、后還是交流電壓,所以需要整流電路把交流電壓轉(zhuǎn)換成直流電壓。由于經(jīng)整流電路整流后的電壓含有較大的交流分量,會(huì)影響到負(fù)載電路的正常工作。因此需通過低通濾波電路濾波,使輸出電壓平滑。穩(wěn)壓電路的功能是使輸出直流電壓基本不受電網(wǎng)電壓波動(dòng)和負(fù)載電阻變化的影響,從而獲得穩(wěn)定性足夠高的直流電壓。 3.8 本章小結(jié) 本章主要對硬件電路部分進(jìn)行了設(shè)計(jì)。通過對系統(tǒng)不同模塊的功能分析完成硬件電路的搭建,并采用Protues軟件繪制系統(tǒng)總電路圖,結(jié)合下一章內(nèi)容的軟件設(shè)計(jì),為最后的系統(tǒng)仿真工作做好準(zhǔn)備。蔬菜大棚的整體硬件電路圖和原件清單將在附錄中給出。 第4章 系統(tǒng)軟件設(shè)計(jì) 控制系統(tǒng)不僅需要設(shè)計(jì)最優(yōu)的硬件電路,而
43、且需要精確的程序來指引各部分電路的運(yùn)行,使各部分電路能準(zhǔn)確的實(shí)現(xiàn)其功能。本章將根據(jù)所設(shè)計(jì)出的硬件電路,編寫使其能按所需功能進(jìn)行運(yùn)行的程序。? 本系統(tǒng)是以AT89C51單片機(jī)為控制核心,采用C語言編程。系統(tǒng)程序主要由主程序,DS18B20測溫讀取子程序,LCD1602顯示子程序,機(jī)械控制子程序和定時(shí)器子程序等組成。 4.1 系統(tǒng)主程序流程 本系統(tǒng)的總工作流程是:系統(tǒng)開始并初始化后,啟動(dòng)溫度傳感器讀取溫度值,讀取成功后線性擬合數(shù)據(jù),然后由顯示器顯示數(shù)據(jù)。用讀取顯示的溫度值與設(shè)定的溫度上下限進(jìn)行比較,如果溫度過限,則蜂鳴器發(fā)出聲音報(bào)警并啟動(dòng)機(jī)械控制設(shè)備;如果溫度在上下限范圍內(nèi),則顯示當(dāng)前溫度值
44、。系統(tǒng)主程序流程圖如圖4.1所示。 開始 系統(tǒng)初始化 設(shè)定溫度上下限 讀取并顯示溫度值 Y 蜂鳴器發(fā)出 聲音報(bào)警 判斷溫度是否過限 N 啟動(dòng)機(jī)械控制設(shè)備 顯示溫度 圖4.1 系統(tǒng)主程序流程圖 4.2 DS18B20測溫讀取子程序 DS18B20溫度傳感器在測量溫度時(shí),由于DS18B20轉(zhuǎn)換后的代碼并不是實(shí)際的溫度值,所以要進(jìn)行數(shù)據(jù)處理。同時(shí),本程序采用的是0.0625的精度,因此小數(shù)部分的值,可以用后四位代表的實(shí)際數(shù)值乘以0.0625,得到真正的數(shù)值,數(shù)值可能帶幾個(gè)小數(shù)位,所以采取四舍五入,保留一位小數(shù)即可。也就說
45、,本系統(tǒng)的溫度精確到了0.1度[15]。? 程序每次對DS18B20操作時(shí)都要按照DS18B20工作過程中的協(xié)議進(jìn)行,其過程為:初始化->?ROM操作命令->?存儲器操作命令->?數(shù)據(jù)處理->讀取溫度值?。DS18B20測溫讀取程序流程如圖4.2所示。 開始 初始化 DS18B20是否存在? N Y ROM操作指令 存儲操作指令 數(shù)據(jù)處理 返回 讀取溫度值 圖4.2 DS18B20測溫讀取程序流程如圖 4.3 LCD1602顯示子程序 LCD1602顯示器在顯示字符時(shí),經(jīng)過寫函數(shù)命令和寫數(shù)據(jù)函數(shù)過程后,需要一個(gè)延遲程序,其顯示
46、程序流程圖如圖4.3所示。 開始 初始化 Y 檢查到忙信號 N 寫函數(shù)命令 寫數(shù)據(jù)函數(shù) 延遲 圖4.3 LCD1602顯示程序流程圖 4.4 機(jī)械控制子程序 機(jī)械控制的子程序是根據(jù)機(jī)械控制設(shè)備所要實(shí)現(xiàn)的功能而編寫的,單片機(jī)通過程序達(dá)到對機(jī)械控制設(shè)備的自動(dòng)控制功能。其具體過程為: 實(shí)時(shí)溫度不超出上下限溫度時(shí),機(jī)械控制的子程序處于準(zhǔn)備調(diào)用狀態(tài);當(dāng)溫度高于上限時(shí),機(jī)械控制的子程序處于正在調(diào)用狀態(tài),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警的同時(shí)機(jī)械控制設(shè)備進(jìn)行降溫調(diào)節(jié);當(dāng)溫度降到指定值時(shí),機(jī)械控制的子程序回到準(zhǔn)備調(diào)用狀態(tài)。當(dāng)溫度低于下限時(shí),機(jī)械控制的子程序處
47、于正在調(diào)用狀態(tài),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警的同時(shí)機(jī)械控制設(shè)備進(jìn)行加熱升溫。當(dāng)溫度上升到指定值時(shí),機(jī)械控制的子程序回到準(zhǔn)備調(diào)用狀態(tài)。溫度控制子程序流程圖如圖4.4所示。 調(diào)用 讀取溫度值 進(jìn)行溫度處理 Y 溫度>上限? N 報(bào)警并啟動(dòng)降溫設(shè)備 Y 溫度<下限? N 報(bào)警并啟動(dòng)升溫設(shè)備 調(diào)用 圖4.4 溫度控制子程序流程圖 4.5 定時(shí)器子程序 利用單片機(jī)的定時(shí)器來產(chǎn)生PWM波,然后通過驅(qū)動(dòng)電路控制電機(jī)實(shí)現(xiàn)調(diào)速功能。以下將對定時(shí)
48、器中斷流程圖進(jìn)行設(shè)計(jì),定時(shí)器中斷流程圖如4.5所示。 在圖4.5中,定時(shí)器中斷流程圖中開始先將定時(shí)器初始化,使用定時(shí)器來模擬PWM波輸出,進(jìn)而控制電機(jī)實(shí)現(xiàn)調(diào)速功能。首先將定時(shí)器設(shè)定定時(shí)時(shí)間為1ms,定義兩個(gè)變量用于計(jì)數(shù),每到1ms時(shí)將變量加1,如果變量加到了所設(shè)值使PWM輸出管腳輸出高電平,如果沒到則輸出低電平。由此原理來模擬PWM波輸出。故在此流程圖中首先設(shè)定計(jì)數(shù)變量和占空比變量,由變量值和占空比值的不同輸出不同的高低電平,因?yàn)樵O(shè)定的PWM周期為100故當(dāng)變量加到100時(shí)令變量值為0,重新開始計(jì)數(shù)[16]。 開始
49、 定時(shí)器初始化 設(shè)定計(jì)數(shù)量 t1,t2 設(shè)定占空比變量 a,b 計(jì)數(shù)值<占空比設(shè)定變量? N Y P1.2輸出高電平 ? P1.2輸出低電平 t1=t1+1 t2=t2+1 Y N t1或t2>=100 t1=0 t2=0 結(jié)束 圖4.5 定時(shí)器中斷流程圖 4.6 本章小結(jié) 通過對本章內(nèi)容各階段程序的分析,采用Keil軟件對整個(gè)控制系統(tǒng)的程序進(jìn)行編寫,在
50、下一章內(nèi)容中將運(yùn)用編寫好的程序結(jié)合Proteus軟件對控制系統(tǒng)進(jìn)行模擬仿真。 第5章 系統(tǒng)調(diào)試與仿真 本章結(jié)合第三章硬件電路的搭建以和第四章軟件程序的控制完成設(shè)計(jì),完成對蔬菜大棚溫度控制系統(tǒng)所需具備各功能的仿真實(shí)驗(yàn),并確定所設(shè)計(jì)產(chǎn)品是否符合要求和有需改進(jìn)的地方。 5.1 系統(tǒng)調(diào)試 調(diào)試的過程其實(shí)就是硬件系統(tǒng)和軟件系統(tǒng)的查錯(cuò)過程。盡管調(diào)試方法和步驟有許多種,然而不同系統(tǒng)在這方面基本是相同的,只是具體的細(xì)節(jié)會(huì)有細(xì)微的差別,同時(shí)還和所選用的單片機(jī)型號有很大的關(guān)系。在進(jìn)行硬件系統(tǒng)調(diào)試時(shí),先給硬件電路進(jìn)行通電,之后需要檢查I/O端口的電位,測量每個(gè)電位從而可以看出是哪里出現(xiàn)了錯(cuò)誤,尤其需要注意輸
51、出口的電位以確保正確。完成后將單片機(jī)信號的輸出接口和外部仿真電路接口相連接,之后準(zhǔn)備進(jìn)行軟件調(diào)試。 進(jìn)行軟件調(diào)試時(shí),不僅需要把每個(gè)程序模塊都調(diào)節(jié)好,在每個(gè)程序模塊調(diào)試好之后,還得把與每個(gè)程序模塊相關(guān)的各功能模塊都聯(lián)合起來,整理好之后才可以進(jìn)行綜合調(diào)試。綜合調(diào)試最終顯示出正確的結(jié)果則軟件調(diào)試才結(jié)束。同時(shí),還需要進(jìn)行多次連續(xù)調(diào)試,確保每次調(diào)試結(jié)果都正確后,即為調(diào)試成功。 5.2 系統(tǒng)仿真 把調(diào)試好的軟件程序即程序下載到硬件電路中即為系統(tǒng)仿真。打開系統(tǒng)仿真軟件Proteus的開始按鈕,觀察和記錄仿真的運(yùn)行過程和結(jié)果。下面將展示蔬菜大棚溫度控制系統(tǒng)各個(gè)模塊的仿真結(jié)果圖。 (1)蔬菜大棚通過LC
52、D1602顯示器顯示實(shí)時(shí)溫度和上下限溫度如圖5.1所示。 圖5.1 LCD1602溫度顯示圖 (2)蔬菜大棚的升溫工作圖如圖5.2所示。 圖5.2 升溫工作圖 (3)蔬菜大棚的電機(jī)調(diào)速圖如圖5.3所示。 圖5.3 電機(jī)調(diào)速圖 5.3仿真結(jié)果 通過進(jìn)行仿真實(shí)驗(yàn)以和不斷地改進(jìn),所設(shè)計(jì)的基于單片機(jī)的蔬菜大棚溫度控制系統(tǒng)基本具備了設(shè)計(jì)要求的各功能。具體的功能如下:顯示器顯示系統(tǒng)實(shí)時(shí)溫度和設(shè)定的溫度上下限值,而溫度的上下限也可以通過按鍵進(jìn)行修改;當(dāng)實(shí)時(shí)溫度在設(shè)定的溫度上下限之間時(shí),機(jī)械控制設(shè)備不工作,即加熱燈泡不亮、電機(jī)不轉(zhuǎn);當(dāng)實(shí)時(shí)溫度高于30℃時(shí),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警,電機(jī)開始轉(zhuǎn)動(dòng)
53、進(jìn)行降溫調(diào)節(jié),當(dāng)溫度超過上限35℃時(shí),通過PWM波控制電機(jī)按額度轉(zhuǎn)速運(yùn)轉(zhuǎn);當(dāng)溫度超過上限在35℃之內(nèi)時(shí),通過PWM波控制電機(jī)轉(zhuǎn)速按額度速度的50%進(jìn)行轉(zhuǎn)動(dòng)。當(dāng)溫度降到25℃時(shí),電機(jī)停止轉(zhuǎn)動(dòng)。當(dāng)溫度低于20℃時(shí),蜂鳴器發(fā)出聲音進(jìn)行報(bào)警,燈泡開始發(fā)光進(jìn)行升溫調(diào)節(jié)。當(dāng)溫度上升到25℃時(shí),燈泡停止發(fā)光。 第6章 結(jié)論 本次設(shè)計(jì)的蔬菜大棚溫度控制系統(tǒng)達(dá)到設(shè)計(jì)的要求,具備設(shè)計(jì)要求所需的溫度檢測、降溫、升溫以和電機(jī)可調(diào)速的全部功能。論文主要討論了蔬菜大棚的設(shè)計(jì)結(jié)構(gòu),對各個(gè)模塊的設(shè)計(jì)方案進(jìn)行分析的同時(shí)選擇了實(shí)現(xiàn)蔬菜大棚各功能的最優(yōu)方案,并通過Proteus軟件畫出硬件原理圖。在軟件設(shè)計(jì)方面,利用C語言進(jìn)行
54、編程,使得程序具有可讀性,并畫出主程序流程圖和各功能實(shí)現(xiàn)時(shí)的流程圖。通過后期對系統(tǒng)硬件和軟件的不斷整理和調(diào)試仿真,使得整個(gè)系統(tǒng)的工作狀態(tài)和工作時(shí)序基本滿足設(shè)計(jì)要求。 本次設(shè)計(jì)的系統(tǒng)是一個(gè)模擬適合生物生長氣候條件的系統(tǒng)。在實(shí)際生活中,該系統(tǒng)可以應(yīng)用到農(nóng)業(yè)的生產(chǎn)中,它能創(chuàng)造一個(gè)人工氣象環(huán)境,來消除溫度對農(nóng)作物生長的約束,讓農(nóng)作物能在最適宜的環(huán)境溫度下生長。而且,該系統(tǒng)的精確度很高,能很好的完成控制任務(wù)要求。同時(shí),此系統(tǒng)是自動(dòng)控制的系統(tǒng),能耗少,效率高,能在很大的程度上減少人力、財(cái)力和物力的浪費(fèi),為農(nóng)業(yè)帶來可觀的經(jīng)濟(jì)效益。 致謝 本設(shè)計(jì)從選題、資料查閱、設(shè)計(jì)方法到論文定稿,歷時(shí)一個(gè)學(xué)期。在畢業(yè)
55、設(shè)計(jì)論文即將完成之際,在此向我的老師、同學(xué)以和所有幫助過我的朋友們致以誠摯的謝意。 同時(shí),主要感謝指導(dǎo)我進(jìn)行畢業(yè)設(shè)計(jì)的導(dǎo)師金坤善老師。至始至終,所有的設(shè)計(jì)工作都是在金老師的悉心指導(dǎo)和嚴(yán)格要求下完成的。畢業(yè)設(shè)計(jì)過程中遇到的很多問題,都得到了金老師細(xì)心的指導(dǎo)。在此,向金老師表示衷心的感謝! 謝謝! 參考文獻(xiàn) [1] 李朝青. 單片機(jī)原理和接口技術(shù)[M].北京: 北京航空航天大學(xué)出版社,2019. [2] 袁戰(zhàn)軍. 直流電機(jī)PWM調(diào)速系統(tǒng)研究[J],電子設(shè)計(jì)工程,2019. [3] 侯媛彬. 凌陽單片機(jī)原理和其畢業(yè)設(shè)計(jì)精選[M]. 科學(xué)出版社,2019. [4] 李建忠. 單片機(jī)原理和
56、應(yīng)用[M]. 西安:西安電子科技大學(xué)出版社,2019. [5] 霍孟友. 單片機(jī)原理與應(yīng)用[M]. 北京:機(jī)械工業(yè)出版社,2019. [6] 高惠芳. 單片機(jī)原理和系統(tǒng)設(shè)計(jì)[J].杭州電子科技大學(xué)電子信息學(xué)校,2009. [7] 張培仁等. MCS-51單片機(jī)原理與應(yīng)用[M]. 北京.清華大學(xué)出版社, 2019. [8] 李麗. 單片機(jī)復(fù)位電路的抗干擾設(shè)計(jì)[J]. 遼寧師專學(xué)報(bào):自然科學(xué)版, 2009. [9] 彭偉. 單片機(jī)C語言程序設(shè)計(jì)設(shè)計(jì)實(shí)訓(xùn)[M].西安:電子工業(yè)出版社,2009. [10] 康華光. 電子技術(shù)基礎(chǔ)(模擬部分)[M]. 北京:高等教育出版社. [11] 何希
57、才. 傳感器和其應(yīng)用. 國防工業(yè)出版社, 2019. [12] 刁文興. 自行車電子里程表的初步設(shè)計(jì). 南京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào), 2019. [13] 安宗權(quán). 電動(dòng)電子車速里程表分頻電路設(shè)計(jì). 自動(dòng)化與儀器儀表, 2019. [14] 閻煥忠. 王長濤, 馬斌. 單片機(jī)控制里程轉(zhuǎn)速表的設(shè)計(jì). 沈陽建筑工程學(xué)院學(xué)報(bào)(自然科學(xué)版),2019. [15] 謝自美. 電子線路設(shè)計(jì).實(shí)驗(yàn).測試[M].武漢: 華中科技大學(xué)出版社,2000. [16] 張福學(xué). 傳感器使用電路[M].中國技術(shù)出版社.1992. 附錄 附錄1 蔬菜大棚溫度控制系統(tǒng)的硬件電路圖 附錄2 元件清
58、單表
序號
器件名稱
規(guī)格型號
數(shù)量
備注
1
最小系統(tǒng)
AT89C51
1
2
溫度器
DS18B20
1
3
驅(qū)動(dòng)模塊
繼電器
2
4
鍵盤模塊
觸動(dòng)按鍵
5
5
顯示器
LCD1602
1
6
三極管
PNP9012
3
7
喇叭
8歐2.5W
1
8
電源電壓
5V
1
9
燈泡
5V
1
10
直流電機(jī)
5V直流電機(jī)
1
11
排阻
RESPACK-8
1
附錄3 源程序清單
//程序頭函數(shù)
#include
59、顯示函數(shù)
#include
60、 //定義DS18B20總線I/O signed char w,bj,bjx,bjd; //溫度值全局變量 uint c; //溫度值全局變量 bit bdata flag=0,flag_BJ,flag_off=1; //時(shí)間計(jì)算 #define Imax 14000 //此處為晶振為11.0592時(shí)的取值, #define Imin 8000 //如用其它頻率的晶振時(shí), #define Inum1 1450 //要改變相應(yīng)的取值。 #define Inum2 700 #define Inum3 3000 //解碼變量 u
61、nsigned char Im[4]={0x00,0x00,0x00,0x00};
//全局變量
uchar f;
unsigned long m,Tc;
unsigned char IrOK;
//設(shè)置變量
uchar xx=20;
//下限
uchar sx=30;
//上限
int ds=0;
uchar Mode=0;
void delay(uint z)
uint i,j;
for(i=0;i 62、while(num--) ;
/*****初始化DS18B20*****/
void Init_DS18B20(void)
unsigned char x=0;
DQ = 1; //DQ復(fù)位
Delay_DS18B20(8); //稍做延時(shí)
DQ = 0; //單片機(jī)將DQ拉低
Delay_DS18B20(80); //精確延時(shí),大于480us
DQ = 1; //拉高總線
Delay_DS18B20(14);
x = DQ; //稍做延時(shí)后,如果x=0則初始化成功 63、,x=1則初始化失敗
Delay_DS18B20(20);
/*****讀一個(gè)字節(jié)*****/
unsigned char ReadOneChar(void)
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
DQ = 0; // 給脈沖信號
dat>>=1;
DQ = 1; // 給脈沖信號
if(DQ)
dat|=0x80;
Delay_DS18B20(4);
return(dat);
/*****寫一個(gè)字節(jié)* 64、****/
void WriteOneChar(unsigned char dat)
unsigned char i=0;
for (i=8; i>0; i--)
DQ = 0;
DQ = dat&0x01;
Delay_DS18B20(5);
DQ = 1;
dat>>=1;
/*****讀取溫度*****/
unsigned int Read Temperature(void)
unsigned char a=0;
unsigned char b=0;
unsigned int t=0;
float 65、 tt=0;
Init_DS18B20();
Write One Char(0xCC); //跳過讀序號列號的操作
Write One Char(0x44); //啟動(dòng)溫度轉(zhuǎn)換
Init_DS18B20();
Write One Char(0xCC); //跳過讀序號列號的操作
Write One Char(0xBE); //讀取溫度寄存器
a=Read One Char(); //讀低8位
b=Read One Char(); //讀高8位
t=b;
t<<=8;
t=t|a;
tt=t*0.062 66、5;
t= tt*10+0.5; //放大10倍輸出并四舍五入
return(t);
/*****讀取溫度*****/
void check_wendu(void)
c=Read Temperature()-5; //獲取溫度值并減去DS18B20的溫漂誤差
w=c/10; //計(jì)算得到整數(shù)位
if(w<0){w=0;} //設(shè)置溫度顯示上限
if(w>99){w=99;} //設(shè)置溫度顯示上限
void Key()
//模式選擇
if(Key1==0)
while(Key1==0);
Feng=0;
Mode++;
Display_wd();
if(Mode==4)
Mode=1;
Feng=1;
write_com(0x38);//屏幕初始化
write_com(0x0d);//打開顯示 無光標(biāo) 光標(biāo)閃爍
write_com(0x06);//當(dāng)讀或?qū)懸粋€(gè)字符是指針后一一位
switch
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 研發(fā)項(xiàng)目管理(PPT131頁)
- 水質(zhì)監(jiān)測方案的制定通用課件
- 動(dòng)漫產(chǎn)業(yè)國際發(fā)展趨勢
- 第9章分離設(shè)備
- 喜之郎公司經(jīng)營理念及核心價(jià)值觀
- 建筑施工測量放線通用課件
- 前期項(xiàng)目供應(yīng)商交流
- 利率調(diào)整對房地產(chǎn)的影響課件
- 熱泵的基礎(chǔ)知識課件
- 鋼結(jié)構(gòu)的發(fā)展與現(xiàn)狀概論
- 創(chuàng)傷性ED的診治課件
- 髖關(guān)節(jié)置換病人的護(hù)理 ppt課件
- DLE測試基礎(chǔ)設(shè)施網(wǎng)絡(luò)及發(fā)展趨勢講義
- 某食品安全管理
- 工程合同與合同管理培訓(xùn)教材