基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計張強_第1頁
基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計張強_第2頁
基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計張強_第3頁
基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計張強_第4頁
基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計張強_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、南 昌 工 程 學(xué) 院畢 業(yè) 設(shè) 計 (論 文)機械與電氣工程學(xué)院系 電氣自動化技術(shù) 專業(yè)畢業(yè)設(shè)計(論文)題目 基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計 學(xué) 生 姓 名 強 班 級 08電氣自動化技術(shù) 學(xué) 號 2008010024 指 導(dǎo) 教 師 賈興建 完 成 日 期 2011 年6月 14 日29 / 38基于單片機的水箱溫度自動控制系統(tǒng)設(shè)計Design for Constant Temperature System Of Intelligent Based on MCU System總計 畢業(yè)設(shè)計(論文) 31 頁 表 格 0 個插 圖 25 幅摘 要隨著時代的進步和發(fā)展,單片機技術(shù)已經(jīng)普與

2、到我們生活、工作、科研、各個領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。 本文主要介紹了一個基于AT89C51單片機的恒溫控制系統(tǒng),詳細描述了系統(tǒng)數(shù)學(xué)模型的建立過程和實現(xiàn)方法,畫出了各個子程序的工作流程圖。該系統(tǒng)通過硬件系統(tǒng)和軟件系統(tǒng)實現(xiàn)了對水箱溫度進行實時監(jiān)測、實時控制、實時顯示與越限報警等功能。DS18B20作為溫度傳感器與AT89C51結(jié)合實現(xiàn)溫度檢測系統(tǒng),該系統(tǒng)結(jié)構(gòu)簡單,抗干擾能力強,適合于惡劣環(huán)境下進行現(xiàn)場溫度測量,有廣泛的應(yīng)用前景。關(guān)鍵詞:AT89C51 DS18B20 恒溫水箱 PIDAbstractWith the era of progress and development, mic

3、rocontroller technology has spread to our lives, work, research in various fields, has become a relatively mature technology. In this paper, based on AT89C51 microcontroller, a temperature control system, a detailed description of the process of building mathematical model and method, draw a flow ch

4、art of the various routines of work. The system hardware and software systems to achieve a real-time monitoring of water temperature, real-time control, real-time display and alarm function more limited. AT89C51 DS18B20 as a temperature sensor combined with the realization of the temperature detecti

5、on system, the system is simple, anti-interference ability, suitable for harsh environments spot temperature measurement, a wide range of applications.Key words:AT89C51; PID; constant temperature water tank; DS18B20目錄摘 要IIAbstractIII第一章 緒 論11.1 課題背景11.2 國外恒溫控制技術(shù)發(fā)展現(xiàn)狀與趨勢11.2.1 國外恒溫控制的發(fā)展現(xiàn)狀與趨勢11.2.2 國恒溫

6、控制的發(fā)展現(xiàn)狀與趨勢2第二章 恒溫水箱控制系統(tǒng)總體方案設(shè)計32.1系統(tǒng)方案選擇與論證32.1.1 一位式的模擬控制方案32.1.2 二位式的模擬控制方案32.1.3 PID算法控制方案42.2 恒溫水箱控制系統(tǒng)工作原理5第三章 恒溫水箱控制系統(tǒng)硬件設(shè)計63.1 單片機主控模塊63.1.1 AT89C51單片機簡介63.1.2 AT89C51各引腳功能說明63.1.3 AT89C51單片機主要性能參數(shù)73.1.4 AT89C51單片機最小系統(tǒng)73.2 主電源模塊93.3 溫度采集模塊93.3.1溫度傳感器DS18B20的測溫原理93.3.2 DS18B20與單片機的接口電路103.4

7、按鍵輸入模塊113.5 繼電器控制模塊113.5.1 固態(tài)繼電器SSR工作原理113.5.2 繼電器控制電路圖123.6 顯示模塊133.7越限報警報模塊143.8 串行通信接口模塊15第四章 恒溫水箱控制系統(tǒng)軟件設(shè)計164.1 工作流程164.2 建立數(shù)學(xué)模型164.2.1 模擬控制系統(tǒng)的PID算法174.2.2 增量式PID算法184.3 程序模塊204.3.1 主程序204.3.2 溫度傳感器驅(qū)動子程序204.3.3 鍵盤掃描處理程序214.3.4 溫度檢測與控制子程序224.3.5溫度顯示子程序23總 結(jié)25參考文獻26致 27第一章 緒 論1.1 課題背景溫度是工業(yè)上常見的被控參數(shù)之

8、一,特別是在冶金、化工、建材、食品加工、機械制造等領(lǐng)域,恒溫控制系統(tǒng)被廣泛應(yīng)用于加熱爐、熱處理爐、反應(yīng)爐等。在一些溫控系統(tǒng)電路中,廣泛采用的是通過熱電偶、熱電阻或PN結(jié)測溫電路經(jīng)過相應(yīng)的信號調(diào)理電路,轉(zhuǎn)換成AD轉(zhuǎn)換器能接收的模擬量,再經(jīng)過采樣保持電路進行AD轉(zhuǎn)換,最終送入單片機與其相應(yīng)的外圍電路,完成監(jiān)控。但是由于傳統(tǒng)的信號調(diào)理電路實現(xiàn)復(fù)雜、易受干擾、不易控制且精度不高。本文介紹單片機通過數(shù)字溫度傳感器檢測外部溫度對水箱進行恒溫控制的設(shè)計,采用PID算法來控制PWM波形的產(chǎn)生,進而控制電爐的加熱來實現(xiàn)恒溫控制。因此,本系統(tǒng)采用一種新型的可編程溫度傳感器(DS18B20),不需復(fù)雜的信號處理電路

9、和AD轉(zhuǎn)換電路就能直接與單片機完成數(shù)據(jù)采集和處理,實現(xiàn)方便、精度高,可根據(jù)不同需要用于各種場合。在日常生活中,也經(jīng)常用到電烤箱、微波爐、電熱水器、烘干箱等需要進行溫度檢測與控制的家用電器。采用單片機實現(xiàn)溫度控制不僅具有控制方便、簡單、靈活等優(yōu)點,而且可以大幅度地提高被控溫度的技術(shù)指標(biāo),從而大大提高產(chǎn)品的質(zhì)量,現(xiàn)以恒溫水箱控制系統(tǒng)的設(shè)計進行介紹。1.2 國外恒溫控制技術(shù)發(fā)展現(xiàn)狀與趨勢隨著計算機控制技術(shù)的發(fā)展,恒溫控制己在工業(yè)生產(chǎn)領(lǐng)域中得到了廣泛應(yīng)用,并取得了巨大的經(jīng)濟和社會效益。在不同的領(lǐng)域,由于控制環(huán)境、目標(biāo)、成本等因素,需要針對具體情況來設(shè)計系統(tǒng)結(jié)構(gòu)和功能,以取得最佳的控制效果。其中,恒溫環(huán)

10、境的自動化控制技術(shù)在工業(yè)生產(chǎn)、商業(yè)運營中是一個重要研究課題。1.2.1 國外恒溫控制的發(fā)展現(xiàn)狀與趨勢自70年代以來,由于工業(yè)過程控制的需要,特別是在微電子技術(shù)和計算機技術(shù)的迅猛發(fā)展,以與自動控制理論和設(shè)計方法發(fā)展的推動下,國外恒溫控制系統(tǒng)發(fā)展迅速,并在智能化,自適應(yīng)參數(shù)的自整定等方面取得了很大的科技成果。在這方面以日本、美國、德國、瑞典等國技術(shù)領(lǐng)先,并且都生產(chǎn)出了一批商品化的性能優(yōu)異的溫度控制器與儀器儀表。目前,國外溫度控制系統(tǒng)與儀表正朝著高精度智能化、小型化等方面快速發(fā)展。雖然溫度控制系統(tǒng)在國各行各業(yè)的應(yīng)用已經(jīng)十分廣泛,但從國生產(chǎn)的溫度控制器與技術(shù)來講,其總體發(fā)展水平仍然不高,同國外的日本、

11、美國、德國等先進國家相比,仍然有著較大的差距。1.2.2 國恒溫控制的發(fā)展現(xiàn)狀與趨勢我國目前在恒溫控制技術(shù)這方面總體技術(shù)水平處于20世紀80年代中后期水平,成熟產(chǎn)品主要以“點位”控制與常規(guī)的PID控制器為主,它只能適應(yīng)一般溫度系統(tǒng)控制,難于控制滯后、復(fù)雜、時變的溫度系統(tǒng)控制。在適應(yīng)于較高控制場合的智能化、自適應(yīng)控制儀表領(lǐng)域,國技術(shù)還不十分成熟,形成商品化并廣泛應(yīng)用的控制儀表較少。因此,我國在恒溫控制等控制儀表行業(yè)與國外還有著一定的差距。從過程量的檢測角度出發(fā),溫度是最常見的過程變量之一,它是一個非常重要的過程變量,因為它直接影響燃燒、化學(xué)反應(yīng)、發(fā)酵、烘烤、煅燒、蒸餾、濃度、擠壓成形,結(jié)晶以與空

12、氣流動等物理和化學(xué)過程。而恒溫控制技術(shù)在工業(yè)領(lǐng)域應(yīng)用非常廣泛,由于其具有工況復(fù)雜、參數(shù)多變、運行慣性大、控制滯后等特點,它對控制調(diào)節(jié)器要求較高。其溫度控制不好就可能引起生產(chǎn)安全,產(chǎn)品質(zhì)量和產(chǎn)量等一系列問題。盡管恒溫控制很重要,但是要控制好溫度常常會遇到意想不到的困難。隨著嵌入式系統(tǒng)開發(fā)技術(shù)的快速發(fā)展與其在各個領(lǐng)域的廣泛應(yīng)用,人們對電子產(chǎn)品的小型化和智能化要求越來越高,作為高新技術(shù)之一的單片機以其體積小、價格低、可靠性高、適用圍大以與本身的指令系統(tǒng)等諸多優(yōu)勢,在各個領(lǐng)域、各個行業(yè)都得到了廣泛應(yīng)用。第二章 恒溫水箱控制系統(tǒng)總體方案設(shè)計本章提出了對恒溫控制的幾種方案,根據(jù)恒溫水箱控制系統(tǒng)的控制要求與

13、技術(shù)指標(biāo),結(jié)合這幾種方案的性能特點,最后選定以單片機為主控制器,增量式的PID算法進行調(diào)整控制PWM波形產(chǎn)生的方案三作為本控制系統(tǒng)的總體方案。2.1系統(tǒng)方案選擇與論證2.1.1 一位式的模擬控制方案此方案是傳統(tǒng)的一位式模擬控制方案,選用模擬電路,用電位器設(shè)定給定值,反饋的溫度值和設(shè)定值比較后,決定加熱或不加熱。其特點是電路簡單,易于實現(xiàn),但是系統(tǒng)所得結(jié)果的精度不高并且調(diào)節(jié)動作頻繁,系統(tǒng)靜差大,不穩(wěn)定,受環(huán)境影響大,不能實現(xiàn)復(fù)雜的控制算法,難以用數(shù)碼管顯示,難以用鍵盤設(shè)定,其方案一框圖如圖2.1所示。比較器溫度預(yù)置信號放大固態(tài)繼電器加熱裝置數(shù)據(jù)采集信號放大圖2.1 一位式模擬控制方案框圖2.1.

14、2 二位式的模擬控制方案此方案采用單片機系統(tǒng)來實現(xiàn)。單片機軟件編程靈活、自由度大,可用軟件編程實現(xiàn)各種控制算法和邏輯控制。單片機系統(tǒng)通過溫度傳感器(ADC590)對水箱水溫進行檢測,得到模擬的溫度信號,在經(jīng)過A/D轉(zhuǎn)換成數(shù)字信號之后,則可用數(shù)碼管來顯示水溫的實際值,還能用鍵盤輸入設(shè)定值,也可實現(xiàn)打印功能。本方案還可選用51單片機(部含有4KB的EEPROM),不需要外擴展存儲器可使系統(tǒng)整體結(jié)構(gòu)較為簡單。但是它是一種傳統(tǒng)的模擬控制方式,而模擬控制系統(tǒng)難以實現(xiàn)復(fù)雜控制規(guī)律,控制方案的修改也比較麻煩,其方案二框圖如圖2.2所示。加熱裝置上限比較溫度預(yù)置信號放大信號采集固態(tài)繼電器信號處理下限比較圖2.

15、2 二位式模擬控制方案框圖2.1.3 PID算法控制方案此方案采用單片機為控制核心的控制系統(tǒng),尤其對溫度控制,它可達到核心的控制作用,并且可方便實現(xiàn)數(shù)碼顯示、鍵盤設(shè)定與利用PID算法來控制PWM波形的產(chǎn)生,進而控制電爐的加熱來實現(xiàn)恒溫控制,其所測結(jié)果精度也大大的得到了提高,在利用PID算法來控制PWM波形的產(chǎn)生,是有效的控制數(shù)字脈沖的輸出寬度,使固態(tài)繼電器得到有效和有序的邏輯控制,不會使固態(tài)繼電器產(chǎn)生誤動作。因此利用PWM技術(shù)進行脈寬調(diào)制的優(yōu)點是:(1)從處理器到被控系統(tǒng)信號都是數(shù)字形式的,無需進行數(shù)模轉(zhuǎn)換。(2)讓信號保持為數(shù)字形式可將噪聲影響降到最小,并且噪聲只有在強到足以將邏輯“1”改變

16、為邏輯“0”或?qū)⑦壿嫛?”改變?yōu)檫壿嫛?”時,才能對數(shù)字信號產(chǎn)生影響。(3)對噪聲抵抗能力的增強也是PWM相對于模擬控制的另外一個優(yōu)點,而且這也是在某些時候?qū)WM用于通信的主要原因。(4)PWM經(jīng)濟、節(jié)約空間、抗噪性能強,是一種值得廣大工程師在許多設(shè)計應(yīng)用中使用的有效技術(shù)。再加上單片機的軟件編程靈活、自由度大,可用軟件編程實現(xiàn)各種控制算法和邏輯控制。它可以通過用數(shù)字溫度傳感器采集到的實際水溫溫度直接進行數(shù)碼管顯示,還能用鍵盤輸入設(shè)定值,并且部含有4KB的EEPROM,不需要外擴展存儲器,可使系統(tǒng)整體結(jié)構(gòu)更為簡單,其方案三框圖如圖2.3所示。鍵盤設(shè)定溫度采集單片機電源電路LED數(shù)碼顯示固態(tài)繼電

17、器加熱裝置圖2.3方案三 基于單片機控制的方框圖數(shù)字PID調(diào)整復(fù)位電路由于方案一和方案二是傳統(tǒng)的模擬控制方式,而模擬控制系統(tǒng)難以實現(xiàn)復(fù)雜控制規(guī)律,控制方案的修改也比較麻煩,而方案三是采用單片機為控制核心的控制系統(tǒng),利用PID控制原理和PWM技術(shù)實現(xiàn)對水箱水溫的控制?;谶@樣的控制原理和PWM技術(shù)的優(yōu)越性,在對溫度控制的系統(tǒng)中,它可達到采用其他控制系統(tǒng)所達不到的控制效果,并且可方便實現(xiàn)數(shù)碼實時顯示、鍵盤設(shè)定、直接可以驅(qū)動固態(tài)繼電器,其測量結(jié)果的準(zhǔn)確性和精度是非常高的,故經(jīng)過對三種方案的比較論證,本設(shè)計采用方案三,利用單片機按增量式的PID控制算法對采集的溫度數(shù)據(jù)進行處理,得到控制量,利用增量式的

18、PID控制算法來控制PWM波形的產(chǎn)生進而控制固態(tài)繼電器,從而達到控制電爐的功率進行加熱,實現(xiàn)對水箱水溫的恒溫控制。2.2 恒溫水箱控制系統(tǒng)工作原理根據(jù)恒溫水箱控制系統(tǒng)的設(shè)計任務(wù)和要求,確定了系統(tǒng)總體方案之后,現(xiàn)對該方案的具體原理進行詳細介紹,它是采用閉環(huán)控制結(jié)構(gòu)進行控制的,其具體控制圖如圖2.4所示。AT89C51數(shù)字PID繼電器控制電路電爐智能溫度傳感器DS18B20驅(qū)動電路LED顯示圖2.4 恒溫控制原理圖按鍵輸入水箱本系統(tǒng)是采用閉環(huán)負反饋的控制方式進行控制的,它通過數(shù)字溫度傳感器檢測水箱的水溫溫度,把采集到的數(shù)據(jù)直接送到單片機進行處理,由于數(shù)字式溫度傳感器能在極短時間把采集到的模擬量轉(zhuǎn)換

19、成數(shù)字量,這樣被它處理的數(shù)據(jù)直接送到數(shù)字PID模塊進行調(diào)整和控制PWM波形的產(chǎn)生。然后,把檢測到的數(shù)據(jù)與預(yù)先設(shè)定的溫度值進行比較,根據(jù)不同的差值去控制控制固態(tài)繼電器的通斷,以采取不同的加熱方式進行加熱升溫。另外,還設(shè)置了溫度實時顯示的裝置,可以同時顯示預(yù)先設(shè)定的溫度值和實際檢測到的溫度值。第三章 恒溫水箱控制系統(tǒng)硬件設(shè)計恒溫水箱控制系統(tǒng)主要由八部分組成:單片機主控制模塊、主電源電路、溫度采集模塊、按鍵輸入電路、繼電器控制模塊、顯示模塊、越限報警模塊、串行通信接口模塊。本章對各模塊的硬件電路設(shè)計作了詳細說明。3.1 單片機主控模塊單片機主控制模塊采用AT89C51芯片,把數(shù)字溫度傳感器采集到的溫

20、度信號與原預(yù)先設(shè)定值進行比較,然后根據(jù)其差值通過PID調(diào)節(jié)整定,控制繼電器的通斷進行不同加熱方式,能用鍵盤進行輸入數(shù)據(jù)的處理以與溫度信號的實時顯示。3.1.1 AT89C51單片機簡介AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51

21、指令集和輸出管腳相兼容。由于將多功能8位CPU和閃速存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。3.1.2 AT89C51各引腳功能說明VCC:供電電壓。Vdd:接地。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。P1口:P1口是一個部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P2口:P2口為一個部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被部上拉電阻拉高,且作為輸入。P3口:P3口管腳是

22、8個帶部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。RST:復(fù)位輸入。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有部程序存儲器。當(dāng)/EA端保持高電平時,從部程序存儲器開始讀取。XTAL1:反向振蕩放大器的輸入與部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。 圖3.1 40引腳雙列直插封裝圖3.1.3 AT89C51單片機主要性能參數(shù)

23、(1)與MCS51產(chǎn)品指令系統(tǒng)完全兼容; (7)32個可編程I/O口線;(2)4K字節(jié)可重復(fù)擦寫Flash閃速存儲器; (8)2個16位定時/計數(shù)器;(3)1000次擦寫周期; (9)6個中斷源;(4)全靜態(tài)操作:0Hz24MHz; (10)可編程串行UART通道;(5)三級加密程序存儲器;(11)低功耗空閑和掉電模式。(6)128×8字節(jié)部RAM;3.1.4 AT89C51單片機最小系統(tǒng)單片機最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機可以工作的系統(tǒng).對51系列單片機來說,最小系統(tǒng)一般應(yīng)該包括:單片機、晶振電路、復(fù)位電路.下面給出一個51單片機的最小系統(tǒng)電路圖3.2

24、.3.2 AT89C51單片機的最小系統(tǒng)電路圖說明復(fù)位電路:由電容串聯(lián)電阻構(gòu)成,由圖并結(jié)合"電容電壓不能突變"的性質(zhì),可以知道,當(dāng)系統(tǒng)一上電,RST腳將會出現(xiàn)高電平,并且,這個高電平持續(xù)的時間由電路的RC值來決定.典型的51單片機當(dāng)RST腳的高電平持續(xù)兩個機器周期以上就將復(fù)位,所以,適當(dāng)組合RC的取值就可以保證可靠的復(fù)位.一般教科書推薦C 取10u,R取8.2K.當(dāng)然也有其他取法的,原則就是要讓RC組合可以在RST腳上產(chǎn)生不少于2個機周期的高電平.至于如何具體定量計算,可以參考電路分析相關(guān)書籍.晶振電路: 單片機部帶有時鐘電路,只需要在片外通過XTAL1、XTAL2引腳接入

25、定時控制單元(晶體振蕩和電容),即可構(gòu)成一個穩(wěn)定的自激振蕩器。振蕩器的工作頻率一般在1.212MHz之間,當(dāng)然在一般情況下頻率越快越好,可以保證程序運行速度即保證了控制的實時性。一般采用石英晶振作定時控制元件,在不需要高精度參考時鐘時,也可以用電感代替晶振,有時也可以引入外部時鐘脈沖信號。接在晶振上的電容雖然沒有嚴格要求,但電容的大小會影響振蕩器的穩(wěn)定性和起振的快速性。因此,通常選擇在1030pF左右,在此次設(shè)計時鐘電路時,晶振頻率選用(12MHz),電容選用(30pF),并且它們應(yīng)盡可能靠近芯片,以減小分布電容,保證振蕩器振蕩的穩(wěn)定性3.2 主電源模塊控制系統(tǒng)主控制部分電源需要用5V直流電源

26、供電,其電路如圖3.3所示,把頻率為50Hz、有效值為220V的單相交流電壓轉(zhuǎn)換為幅值穩(wěn)定的5V直流電壓。其主要原理是把單相交流電經(jīng) 過電源變壓器、整流電路、濾波電路、穩(wěn)壓電路轉(zhuǎn)換成穩(wěn)定的直流電壓。 由于輸入電壓為電網(wǎng)電壓,一般情況下所需直流電壓的數(shù)值和電網(wǎng)電壓的有效值相差較大,因而電源變壓器的作用顯現(xiàn)出來起到降壓作用。降壓后還是交流電壓,所以需要整流電路把交流電壓轉(zhuǎn)換成直流電壓。由于經(jīng)整流電路整流后的電壓含有較大的交流分量,會影響到負載電路的正常工作。需通過低通濾波電路濾波,使輸出電壓平滑。穩(wěn)壓電路的功能是使輸出直流電壓基本不受電網(wǎng)電壓波動和負載電阻變化的影響,從而獲得穩(wěn)定性足夠高的直流電壓

27、。本電路使用集成穩(wěn)壓芯片7805解決了電源穩(wěn)壓問題。圖3.3主電源電路3.3 溫度采集模塊由于在傳統(tǒng)的模擬信號遠距離溫度測量系統(tǒng)中,需要很好的解決引線誤差補償問題、多點測量切換誤差問題和放大電路零點漂移誤差問題等技術(shù)問題,才能夠達到較高的測量精度。而且一般監(jiān)控現(xiàn)場的電磁環(huán)境都非常惡劣,各種干擾信號較強,模擬溫度信號容易受到干擾而產(chǎn)生測量誤差,影響測量精度。因此,在本設(shè)計中的溫度測量系統(tǒng)中,采用美國Dallas半導(dǎo)體公司的DS18B20溫度芯片對水箱的水溫進行采集溫度數(shù)據(jù),并且由于它抗干擾能力強,是解決這些問題的最有效方案。3.3.1溫度傳感器DS18B20的測溫原理DS18B20的測溫原理用于

28、產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進行計數(shù),進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55所對應(yīng)的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預(yù)置在-55 所對應(yīng)的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)

29、直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度,由于它部的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達到被測溫度值,其部測溫電路圖3.4所示。斜率累加器預(yù)置減法計數(shù)器1計數(shù)比較器預(yù)置減到零溫度寄存器減到零減法計數(shù)器2高溫度系數(shù)振蕩器低溫度系數(shù)振蕩器設(shè)置/清除最低有效位增加停止圖3.4 內(nèi)部測溫電路圖3.3.2 DS18B20與單片機的接口電路DS18B20的引腳圖與與AT89C51的接口電路如圖3.5所示,其中DS18B20工作在外部電源供電方式,AT89C51單片機采

30、用P1.2和DS18B20通信。圖3.5 DS18B20與AT89C51單片機的接口電路3.4 按鍵輸入模塊本系統(tǒng)設(shè)計三個按鍵,采用查詢方式,一個用于選擇切換設(shè)置報警溫度和當(dāng)前溫度,另外兩個分別用于設(shè)置報警溫度的加和減。均采用軟件消抖。圖3.6按鍵輸入模塊3.5 繼電器控制模塊3.5.1 固態(tài)繼電器SSR工作原理本系統(tǒng)采用固態(tài)繼電器進行控制,它的控制原理是:固態(tài)繼電器只有兩個輸入端(“+”和“-”)與兩個輸出端,是一種四端器件。工作時只要在“+”、“-”上加上一定的控制信號,就可以控制輸出兩端之間的“通”和“斷”,實現(xiàn)“開關(guān)”的功能,其中耦合電路的功能是為“+”、“-”端輸入的控制信號提供一個

31、輸入/輸出端之間的通道,但又在電氣上斷開SSR中輸入端和輸出端之間的(電)聯(lián)系,以防止輸出端對輸入端的影響,耦合電路用的元件是“光耦合器”,它動作靈敏、響應(yīng)速度高、輸入/輸出端間的絕緣(耐壓)等級高;由于輸入端的負載是發(fā)光二極管,這使固態(tài)繼電器的輸入端很容易做到與輸入信號電平相匹配,在使用可直接與計算機輸出接口相接,即受“1”與“0”的邏輯電平控制。觸發(fā)電路的功能是產(chǎn)生合乎要求的觸發(fā)信號,驅(qū)動開關(guān)電路工作,但由于開關(guān)電路在不加特殊控制電路時,將產(chǎn)生射頻干擾并以高次諧波或尖峰等污染電網(wǎng),為此特設(shè)“過零控制電路”。所謂“過零”是指,當(dāng)加入控制信號,交流電壓過零時,固態(tài)繼電器即為通態(tài);而當(dāng)斷開控制信

32、號后,固態(tài)繼電器要等待交流電的正半周與負半周的交界點(零電位)時,固態(tài)繼電器才為斷態(tài)。這種設(shè)計能防止高次諧波的干擾和對電網(wǎng)的污染。吸收電路是為防止從電源中傳來的尖峰、浪涌(電壓)對開關(guān)器件雙向可控硅管的沖擊和干擾(甚至誤動作)而設(shè)計的,一般是用“R-C”串聯(lián)吸收電路或非線性電阻(壓敏電阻器)。下圖為一種典型的交流型SSR的電路原理圖,其部結(jié)構(gòu)圖如圖3.7所示。圖3.7 繼電器部結(jié)構(gòu)圖3.5.2 繼電器控制電路圖下圖是一個控制電阻絲加熱的電路圖,單片機通過P3.1口的輸出控制繼電器的開合并進行通訊,當(dāng)繼電器的開關(guān)閉合時,晶閘管的門極觸發(fā)電路導(dǎo)通,即晶閘管導(dǎo)通,220V的交流電壓直接加在加熱裝置上

33、進行全加熱,其電路圖如圖3.8所示。圖3.8繼電器控制模塊與加熱裝置3.6 顯示模塊在單片機控制系統(tǒng)中,常用LED 顯示器來顯示各種數(shù)字或符號。這種顯示器顯示清晰,亮度高,接口方便,廣泛應(yīng)用于各種控制系統(tǒng)中八段LED數(shù)碼管連接電路。圖3.9實驗板上所用共陽型LED 數(shù)碼管的電路原理圖,從圖中可以看出:一個字塊中的8 個發(fā)光二極管的陽極都連在一起的,共陰和共陽結(jié)構(gòu)的LED 顯示器各筆劃段名的位置與名稱是一樣的。當(dāng)二極管導(dǎo)通時,相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合而顯示出各種字符。如圖3.10,8 個筆劃段h g f e d c b a 對應(yīng)于一個字節(jié)(8 位)的D7 D6 D5 D4 D3 D2

34、 D1 D0,于是用8 位二進制碼就可以表示欲顯示字符的字形代碼。數(shù)碼管二極管的正極連在一起,構(gòu)成公共端,即片選端,對于這種數(shù)碼管的驅(qū)動,要求在片選端提供電流。圖3.9圖 3.10數(shù)碼管除了與AT89C51原件的管腳直接相連外,還需要添加2個PNP三極管和2個二極管。在片選端提供電流如圖圖3.113.7越限報警報模塊報警電路如圖3-11所示,該電路采用一個小功率三極管Q1驅(qū)動蜂鳴器BELL,當(dāng)單片機接收到超額溫度信號或危險信號時,輸出腳BELL輸出高點平,Q1導(dǎo)通,致使蜂鳴器BELL得電工作,發(fā)出報警聲。同時,電路中的發(fā)光二極管指示出電路的工作狀態(tài)。圖3.11 報警電路3.8 串行通信接口模塊

35、AT89C51單片機通過管腳RXD(串行數(shù)據(jù)接收端)和管腳TXD(串行數(shù)據(jù)發(fā)送端)與外界通信。SBUF是串行口緩沖寄存器,包括發(fā)送寄存器和接收寄存器。它們有一樣的名字和地址空間,但不會出現(xiàn)沖突,因為它們一個只能被CPU讀出數(shù)據(jù),一個只能被CPU寫入數(shù)據(jù)。AT89C51芯片雖然已有串行輸入/輸出管腳可以做串行通信,但為了使PC與AT89C51的電壓保持一致,時通信距離更遠、通信效果更好,所以還要加上MAX232芯片。本設(shè)計中的串行接口是一個可編程的全雙工串行通信接口。它可用做異步通信方式,與串行傳送信息的外部設(shè)備相連接,或用于通過標(biāo)準(zhǔn)異步通信協(xié)議進行全雙工通信。AT89C51多機系統(tǒng)也可以通過同

36、步方式,使用TTL或COMS移位寄存器來擴充I/O口。電路如圖3.12圖3.1第四章 恒溫水箱控制系統(tǒng)軟件設(shè)計對單片機控制的軟件設(shè)計是系統(tǒng)設(shè)計任務(wù)中的重點和難點。因此,本章在建立系統(tǒng)各部分軟件流程的基礎(chǔ)上,設(shè)計了各部分的軟件控制流程。由于系統(tǒng)的操作過程和工作過程在程序設(shè)計的過程中起著很重要的指導(dǎo)作用,因此在軟件設(shè)計之前應(yīng)分析加熱爐的工作流程。4.1 工作流程當(dāng)上電復(fù)位后電阻絲先處于停止加熱狀態(tài),但也可以直接啟動運行。運行過程中,系統(tǒng)不斷檢測當(dāng)前溫度,并送往顯示器顯示,達到預(yù)定值后停止加熱;當(dāng)溫度下降到下限(比預(yù)定值低5)時再啟動加熱。這樣不斷地重復(fù)上述過程,使溫度保持在預(yù)定溫度圍之。運行過程中

37、也可以隨時改變設(shè)定溫度,溫度設(shè)定好后隨即生效,系統(tǒng)按新的設(shè)定溫度運行。4.2 建立數(shù)學(xué)模型控制算法即控制器的操作方式,是控制器對過程變量的實測值與設(shè)定值之間的誤差信號的響應(yīng)。溫度控制在工業(yè)領(lǐng)域應(yīng)用非常廣泛,由于其具有工況復(fù)雜、參數(shù)多變、運行慣性大、控制滯后等特點,它對控制調(diào)節(jié)器要求較高。溫度控制不好就可能引起生產(chǎn)安全,產(chǎn)品質(zhì)量和產(chǎn)量等一系列問題。因此長期以來國外科技工作者對溫度控制器進行了廣泛深入的研究,產(chǎn)生了大批溫度控制器,如性能成熟應(yīng)用廣泛的PID調(diào)節(jié)器、智能控制PID調(diào)節(jié)器、自適應(yīng)控制等。此處主要對一些控制器特性進行分析以便選擇適合的控制方法應(yīng)用于改造。再加上PID控制具有原理簡單,易于

38、實現(xiàn),適用面廣,控制參數(shù)相互獨立,參數(shù)的選定比較簡單等優(yōu)點;而且在理論上可以證明,對于過程控制的典型對象“一階滯后純滯后”與“二階滯后純滯后”的控制對象,PID控制器是一種最優(yōu)控制。其調(diào)節(jié)規(guī)律是連續(xù)系統(tǒng)動態(tài)品質(zhì)校正的一種有效方法,它的參數(shù)整定方式簡便,結(jié)構(gòu)改變靈活(PI、PD、)。它的控制框圖如圖4.2所示。圖4.1 PID控制框圖4.2.1 模擬控制系統(tǒng)的PID算法模擬控制系統(tǒng)的PID控制規(guī)律表達式為: (4.1)式(4.1)中,u(t)為控制器的輸出;e(t)為偏差,設(shè)定值與反饋值之差;kc為控制器的放大系數(shù),即比例增益;T為控制器的積分時間常數(shù);TD為控制器的微分時間常數(shù)。對于DDC控制

39、系統(tǒng),它是對被控對象進行斷續(xù)控制,因此要對上式進行離散化。令: (4.2)可得第K次計算機輸出的位置型PID控制算式為或 (4.3)式(4.3)表示的控制算法提供了執(zhí)行機構(gòu)的位置u(k)(如閥門開度),所以稱為位置式PID控制算法。為程序設(shè)計方便,將式(4.11)作進一步的改進,設(shè)比例項輸出:(4.4)積分項輸出:(4.5)微分項輸出:(4.6)所以,(4.3)可寫為 (4.7)式(4.7)為離散化的位置型PID編程公式,若采用浮點運算,當(dāng)KP、KI、KD分別求出(并轉(zhuǎn)成三字節(jié)浮點數(shù)),且存放在指定的部RAM中,則完成式(4.7)位置型浮點運算15,位置型PID運算程序流程見圖4.2。4.2.

40、2 增量式PID算法當(dāng)執(zhí)行機構(gòu)需要的不是控制量的絕對數(shù)值,而是其增量(例如驅(qū)動步進電機)時,由式(4.1)可導(dǎo)出提供增量PID算法,這只要將式(4.8)與(4.9)相減就可以得到下面的公式(4.10)式(4.10)稱為增量式PID控制算法,也可以進一步改寫為:(4.11)其中可見增量式算法只需要保持現(xiàn)時以前的3個時刻的偏差值即可。由式(4.10)可知,增量型PID算式為:(4.12)設(shè):所以(4.13)式(4.13)為離散化的增量型PID編程表達式。當(dāng)系數(shù)KP、KI、KD求出后,分別存在指定的RAM單元中。在初始化程序中,將e(k-1)、e(k-2)、uP(k)單元清零,而后編程同位置型PID

41、程序編制出增量型浮點運算PID程序,增量型浮點PID運算程序流程見圖4.3。圖4.3 增量式PID運算程序流程圖輸入M(k),R(k)計算e(k)=r(k)-m(k)計算uP(k)=KPe(k)-e(k-1)計算uI(k)=KIe(k)計算uD(k)=KDe(k)-2e(k-1)+e(k+2)計算u(k)=uP(k)+uI(k)+uD(k)返 回開 始計算e(k)=r(k)-m(k)計算uP(k)=KPe(k)計算uI(k)=KIe(k)+uI(k-1)計算uD(k)=KDe(k)+e(k-1)計算u(k)=uP(k)+uI(k)+uD(k)將u(k)轉(zhuǎn)換成雙字節(jié)整數(shù)放入內(nèi)存單元中e(k-1)

42、e(k)輸入M(k),R(k)返 回圖4.2 位置式PID運算程序流程圖開 始采用PID控制其優(yōu)點是理論和技術(shù)都很成熟,在單片機上用軟件較易實現(xiàn),可以達到較小的靜態(tài)誤差,但必須仔細調(diào)整控制參數(shù),才能獲得較好的效果。并且它能夠在控制過程中根據(jù)預(yù)先設(shè)定好的控制規(guī)律不停地自動調(diào)節(jié)控制量以使被控系統(tǒng)朝者設(shè)定的平衡狀態(tài)過度,最后達到控制圍精度的穩(wěn)定的動態(tài)平衡狀態(tài)。最后,我們通過比較位置式和增量式的PID算法可以得出增量式控制的優(yōu)點:誤動作時影響小,手動/自動切換時沖擊小,便于實現(xiàn)無擾動切換,此外,當(dāng)計算機發(fā)生故障時,由于輸出通道或執(zhí)行裝置具有信號的鎖存作用,仍然能保持原值;算式中不需要累加,控制增量的計

43、算僅與最近三次的采樣值有關(guān),所以較容易通過加權(quán)處理而獲得比較好的控制效果。因此,基于增量式數(shù)字PID的特性和結(jié)合本控制系統(tǒng)的技術(shù)指標(biāo)和要求,我們采用增量式的數(shù)字PID進行調(diào)整運算控制PWM波形的產(chǎn)生,達到控制繼電器的通斷進行加熱。4.3 程序模塊系統(tǒng)軟件由主程序、鍵盤輸入子程序、設(shè)定溫度子程序、溫度檢測子程序、溫度控制子程序和顯示子程序組成。4.3.1主程序主程序完成系統(tǒng)的初始化,調(diào)用溫度模塊程序,對其預(yù)置值與其合法性進行檢查,預(yù)置溫度的顯示,調(diào)用鍵盤掃描模塊等。若正常執(zhí)行完三個子程序,則返回初始化進入到其它的狀態(tài),主程序的流程圖見圖4.4所示。 開 中 斷調(diào)用溫度傳感器數(shù)據(jù)采集子程序調(diào)用鍵盤

44、掃描處理子程序調(diào)用顯示子程序關(guān) 中 斷開 始初 始 化圖4.4 主程序流程圖4.3.2 溫度傳感器驅(qū)動子程序根據(jù)DS18B20的通訊協(xié)議,單片機控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每次讀寫之前都要對DS18B20進行復(fù)位,復(fù)位成功后再發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預(yù)定的操作。復(fù)位要求單片機將數(shù)據(jù)線下拉500us,然后釋放,DS18B20收到信號后等待1660us左右,再發(fā)出60240us的存在低脈沖,CPU收到此信號表示復(fù)位成功。本系統(tǒng)對DS18B20的操作分為3個步驟:初始化、ROM命令和DS18B20功能命令。單片機要與DS18B20通信,

45、首先必須完成初始化:單片機產(chǎn)生復(fù)位信號,DS18B20返回響應(yīng)脈沖。ROM命令完成單片機與總線上的某一DS18B20建立聯(lián)系,有搜尋ROM、讀ROM、匹配ROM、忽略ROM、報警查找等命令。這里,單片機只連接1個DS18B20,因此只使用讀ROM命令來讀取DS18B20的48位ID號。DS18B20功能命令在該步驟中完成溫度轉(zhuǎn)換、寫暫存寄存器、讀暫存寄存器、拷貝暫存寄存器、裝載暫存器寄存器、讀供電模式命令16。本系統(tǒng)不用溫度報警功能,因此在本步驟中只需完成溫度轉(zhuǎn)換,然后通過讀暫存寄存器命令完成溫度轉(zhuǎn)化的結(jié)果。所以,本系統(tǒng)對DS18B20進行的操作主要包括兩個子過程:(1)讀取DS18B20的序

46、列號。主機首先發(fā)一復(fù)位脈沖,等收到返回的存在脈沖后,發(fā)出搜索器件的序列號命令,讀取DS18B20的序列號;(2)啟動DS18B20作溫度轉(zhuǎn)換并讀取溫度值。主機在收到返回的存在脈沖后,發(fā)出跳過器件的序列號命令,跟著發(fā)出溫度轉(zhuǎn)換命令,再次復(fù)位并收到返回的存在脈沖后,發(fā)送DS18B20的序列號,讀出數(shù)據(jù)(如圖4.5所示)。開始讀取48位ID發(fā)送讀暫存器命令初始啟動溫度返回回圖4.5溫度傳感器驅(qū)動4.3.3 鍵盤掃描處理程序鍵盤模塊的處理是通過對 K2,K3,K4進行操作的。K2是溫度上調(diào)按鈕, K3是溫度下調(diào)按鈕, K4是輸入數(shù)據(jù)確認按鈕。首先對K4數(shù)據(jù)輸入確認鍵進行掃描判斷是否被按下,并且對K4鍵

47、設(shè)置了一個標(biāo)志位,當(dāng)其標(biāo)志位為1時,表示K4被按下,否則K4沒有被按下,具體流程圖4.6所示。開始K4數(shù)據(jù)輸入確認鍵是否按下確認鍵標(biāo)志位1是否K3按下是否是K4按下是否K2鍵按下 數(shù)碼顯示返回主程序否是是否否否K4鍵子程序上調(diào)子程序下調(diào)子程序是是是圖4.6鍵盤掃描處理流程圖4.3.4 溫度檢測與控制子程序讀取DS18B20的實時數(shù)據(jù)與設(shè)定值的比較,開始進行加熱,在加熱的過程中需要進行每2秒一次的跟蹤檢測,并把檢測到的實時數(shù)據(jù)與設(shè)定值比較,根據(jù)比較結(jié)果進行不同方式的加熱,其具體流程如圖4.7所示。調(diào)用按鍵設(shè)定溫度值并進行開始加熱檢測實際溫度與設(shè)定溫度相等否?全加熱YPID調(diào)整加熱N每隔2秒檢測1

48、次相差5否?NY圖4.7溫度檢測與控制流程圖圖4.7溫度檢測與控制流程圖讀DS18B20,調(diào)顯示子程序初始化開始4.3.5溫度顯示子程序該模塊首先判斷系統(tǒng)是否處于設(shè)定狀態(tài),如果處于設(shè)定狀態(tài)則顯示設(shè)定溫度,否則顯示當(dāng)前實際溫度。顯示子程序的功能是將顯示緩沖區(qū)的二進制數(shù)據(jù)先轉(zhuǎn)化成對應(yīng)的BCD碼,分別存入十位和個位顯示區(qū),然后通過串行通信口送出顯示。顯示模塊程序的流程見圖4.8。設(shè)定狀態(tài)有效效開始顯示實際溫度調(diào)用二進制轉(zhuǎn)換成BCD碼程序設(shè)定狀態(tài)有效設(shè)置串口方式設(shè)置顯示位數(shù)串口發(fā)送顯示返回圖4.8溫度顯示模塊流程圖總 結(jié)本次設(shè)計的新型PID調(diào)節(jié)恒溫水箱,是基于單片機為控制中心的恒溫系統(tǒng),利用溫度傳感變送器,將采樣到的溫度信號輸入到單片機中,再由單片機作為核心控制器,根據(jù)測量溫度與設(shè)定溫度的差值和增量式的PID算法生成控制信號,控制固態(tài)繼電器的通電與斷電。整個系統(tǒng)結(jié)構(gòu)緊湊、所用芯片少、控制精度高、響應(yīng)速度快,體積小,成本低。系統(tǒng)在硬件上采用以單片機為中心的結(jié)構(gòu),充分利用單片機片上與擴展的硬件資源,在滿足技術(shù)要求的前提下最大限度地減小硬件系統(tǒng)的體積,并具備一定的擴展升級能力。在鍵盤、顯示電路上都采用了串行方式,從而減小了單片機口線的使用,也使使用口線小的單片機成為可能,減小了成本開支。雖然在主電源電路未采用

溫馨提示

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

最新文檔

評論

0/150

提交評論