基于AT89S52的水溫控制系統(tǒng)的設(shè)計畢設(shè)_第1頁
基于AT89S52的水溫控制系統(tǒng)的設(shè)計畢設(shè)_第2頁
基于AT89S52的水溫控制系統(tǒng)的設(shè)計畢設(shè)_第3頁
基于AT89S52的水溫控制系統(tǒng)的設(shè)計畢設(shè)_第4頁
基于AT89S52的水溫控制系統(tǒng)的設(shè)計畢設(shè)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

摘要:本文介紹了基于AT89C52單片機的自動水溫控制系統(tǒng)的設(shè)計及實現(xiàn)過程。該系統(tǒng)具有實時顯示、溫度測量、溫度設(shè)定并能根據(jù)設(shè)定值對環(huán)境溫度進行調(diào)節(jié)實現(xiàn)控溫的目的以及達到上下限溫度報警功能,控制算法是基于數(shù)字PID算法。關(guān)鍵詞:PIDAT89C52脈寬調(diào)制實時WatertemperaturecontrolsystemAbstract:ThisarticledescribesAT89C52single-chipmicrocomputer-basedautomaticwatertemperaturecontrolsystemdesignandimplementationprocess.Thesystemhasreal-timedisplay,temperaturemeasurement,temperaturesettingsandtheenvironmentinaccordancewiththetemperaturesettingsadjustedtoachievethepurposeoftemperaturecontrolandreachtheupperandlowerlimitsoftemperaturealarmfunction,thecontrolalgorithmisbasedonthedigitalPIDalgorithm.Keyword:PIDAT89C52PWMrealtime

基于AT89S52的水溫控制系統(tǒng)的設(shè)計前言隨著人們生活水平的提高,對生活環(huán)境的要求也越來越高,家用電器越來越趨向于自動控制控制乃至于智能控制,針對目前家庭的實際需要,自動控制水溫報警系統(tǒng)比較方便實用,本文就通過51系列單片機來實現(xiàn)一種家用自動控制水溫報警系統(tǒng)的設(shè)計。該家用自動控制水溫報警系統(tǒng)即實時反映當前系統(tǒng)工作區(qū)的溫度信息,溫度信息通過液晶屏直觀的顯示給用戶,用戶可根據(jù)自己對水溫的實用要求,通過鍵盤自行設(shè)定溫度及溫度的報警值,當溫度值超出用戶設(shè)定的范圍時,本系統(tǒng)可以自動執(zhí)行語音報警。

目錄1題目分析………………11.1任務(wù)和功能………………………11.2主要性能指標……………………12方案的論證……………12.1控制電路方案選擇……………12.2測溫電路方案的選擇…………22.3加熱控制方案的論證…………22.4軟件算法方案的選擇…………23硬件的設(shè)計……………33.1單元電路的設(shè)計………………33.1.1溫度采集電路…………33.1.2功率控制電路…………43.1.3控制、鍵盤、顯示電路………………53.1.4報警電路…………………63.2總體電路設(shè)計…………………74軟件設(shè)計與實現(xiàn)……………………74.1軟件流程圖………………………74.2PID控制算法……………………125功能測試及結(jié)果分析…………125.1傳感器標定…………………125.2動態(tài)溫控測量…………………125.3測試結(jié)果分析…………………135.4硬件調(diào)試問題…………………136結(jié)論………………………137參考文獻8附錄………………13………………………148.1附1:元器件明細表…………148.2附2:硬件電路原理圖………………………158.3附3:軟件程序清單…………15

1題目分析根據(jù)題目的具體要求,經(jīng)過閱讀思考,可對題目的具體任務(wù)、功能、技術(shù)指等作出如下分析。1.1任務(wù)和功能實際上題目的任務(wù)就是要設(shè)計一個溫控系統(tǒng),系統(tǒng)的功能是溫度測量和控溫在測量部分,要求測量40~90oC的溫度范圍,還規(guī)定了測量的精度需高于1oC,測溫的結(jié)果要求顯示。在控制部分,要求系統(tǒng)能夠?qū)⑺疁卣{(diào)節(jié)到給定的溫度,并進行保溫。題目并未規(guī)定溫度調(diào)節(jié)的時間長短,但顯然調(diào)節(jié)時間越短越好。題目沒有具體給出具體加熱的器具和方式,因此選手必須自行選擇和制作加熱裝置,然后才能真正進行電路制作。在發(fā)揮部分,還要求提高溫度系統(tǒng)的控制性能,縮短調(diào)節(jié)時間,提高控制精度,增加打印功能。1.2主要性能指標(1)測溫范圍:40~90oC,可以大于此范圍;(2)測溫精度:1oC,發(fā)揮到0.2oC;(3)保溫精度:1oC,發(fā)揮到0.2oC。2方案的論證對題目進行深入的分析和思考,可將整個系統(tǒng)分為以下幾個部分:測溫電路、控制電路、功率電路和加熱裝置。系統(tǒng)框圖如圖1所示。顯示測溫電路控制電路輸入功率電路加熱裝置水圖12.1控制電路的方案選擇方案一:采用運放等模擬電路搭建一個控制器,用模擬方式實現(xiàn)PID控制,對于純粹的水溫控制,這是足夠的。但是附加顯示、溫度設(shè)定等功能,還要附加許多電路,稍顯麻煩。同樣,使用邏輯電路也可實現(xiàn)控制功能,但總體的電路設(shè)計和制作比較煩瑣。方案二:采用FPGA實現(xiàn)控制功能。使用FPGA時,電路設(shè)計比較簡單,通過相應(yīng)的編程設(shè)計,可以很容易地實現(xiàn)控制和顯示、鍵盤等功能,是一種可選的方案。但與單片機相比,價格較高,顯然大材小用。

方案三:采用單片機最小系統(tǒng)同時完成控制、顯示、鍵盤等功能,電路設(shè)計和制作比較簡單,成本也低,是一種非常好的方案。綜上所述本設(shè)計采用方案三作為控制電路。2.2測溫電路方案的選擇方案一:采用熱敏電阻作為測溫元件。熱敏電阻精度高,需要配合電橋使用,要實現(xiàn)精度測量需要配上精密較高的電阻。此外還需要制作相應(yīng)的調(diào)理電路。方案二:采用半導體集成溫度傳感器作為測溫元件,半導體集成溫度傳感器應(yīng)用也很廣泛,它的精度、可靠性都不錯,價格也適中,使用比較簡單,是一個較好的選擇。綜上所述本設(shè)計采用方案二作為測溫電路。2.3加熱控制方案的論證首先要選擇好加熱裝置。根據(jù)題目,可以采用熱得快進行加熱,控制熱的快的功率即可控制加熱速度。當水溫過高時,一般不能對水進行降溫控制,而只能關(guān)掉熱得快,讓其自然冷卻。在制作中,為了達到更好的控制效果,也可以放置一個小風扇,當加熱時開啟熱得快關(guān)閉風扇,當水溫超高時關(guān)閉熱得快開啟風扇加速散熱。熱得快這類電阻性電器可直接使用220V交流電,控制有兩種實現(xiàn)方式。它們的電壓波形如圖所示??刂浦芷趯ń牵╝)具體方案如下。(b)方案一:采用控制導通交流周期數(shù)的方式如圖(a)所示,為了達到控制的精度,需要在一個較多的周期數(shù)中控制導通的數(shù)目,不適用于動態(tài)性能較高的控制。水溫控制系統(tǒng)具有較大的慣性,可以考慮這種控制方式。方案二:采用控制導通角的方式如圖(b)所示,由于對每個周期的交流電都進行控制,因此響應(yīng)速度比較高,另外由于導通角連續(xù)可調(diào),因此控制精度比較高。2.4軟件算法方案選擇方案一:采用模糊控制算法,對于一個典型的模糊控制系統(tǒng),考慮它的輸入信號有偏差e和偏差變化率e兩種,輸出信號為控制信號u。根據(jù)測試經(jīng)驗,可選取三角型隸屬函數(shù),分為正大、正中、正小、正零、零、負零、負小、負中、負大,9個檔次。然后根據(jù)控制規(guī)則列出規(guī)則基表。這種控制方法能夠較精確的實現(xiàn)設(shè)計要求,但是考慮到單片機的存儲量,和實時性,不采取這種尚未完全推廣的控制方法。方案二:采用經(jīng)典PID控制算法和根據(jù)實驗數(shù)據(jù)分區(qū)間控制的算法,對2

于溫度系統(tǒng)來說,被控對象沒有精確的數(shù)學模型。熱得快加熱使得水溫具有有熱慣性,而且檢測的實時數(shù)據(jù)是檢測點附近的實時溫度并不能完全體現(xiàn)1升水的實際溫度,所以經(jīng)典PID控制算法不能滿足設(shè)計要求,還必須根據(jù)實驗數(shù)據(jù)進行調(diào)整。這種控制算法基本能夠滿足設(shè)計要求,且通用性較強。本設(shè)計采用方案二作為控制算法。3硬件的設(shè)計3.1單元電路的設(shè)計3.1.1溫度采集電路:一種電路是采用單線數(shù)字溫度傳感器18B20,可直接輸出數(shù)字量,單線器件和單片機的接口只需一根信號線,所以本設(shè)計的硬件電路十分簡單,容易實現(xiàn)。能達到0.5oC的固有分辨率,使用讀取溫度暫存寄存器的方法能達到0.2oC以上的精度。18B20連接電路圖如圖2所示。VCC至單片機I/O口DS18B20DataGND圖2另一種測溫電路采用AD590集成溫度傳感器,AD590將溫度轉(zhuǎn)化為電流信號,但由于AD轉(zhuǎn)換大都需要電壓信號,因此還需要通過相應(yīng)的調(diào)理電路,將電流信號轉(zhuǎn)化為電壓信號。AD590測溫電路如圖3所示。+15VU1AD581R2R313VinVout9.1k99k+15VR41kAR1R52kR1OPAMP10kOUTGNDAD590-15V圖3由于這個電路輸出的是電壓信號,不能直接被單片機利用,因此需經(jīng)過一個A/D轉(zhuǎn)換器,將電壓信號轉(zhuǎn)換為數(shù)字量。A/D轉(zhuǎn)換器有很多類型,需要根據(jù)精3

度和轉(zhuǎn)換速度來進行選擇。本設(shè)計可采用最常用的A/D芯片之一AD0809的應(yīng)用電路。也可直接選用帶有A/D的單片機,這樣可以省去A/D電路的制作,簡化了電路,提高了可靠性。帶A/D的單片機有很多型號,如常用的PIC16C711內(nèi)含有4路8位A/D,C8051F020內(nèi)含一組8路12位A/D和一組8路8位A/D,凌陽SPCE061A單片機內(nèi)含有8路10位A/D。3.1.2功率控制電路:功率控制電路是本系統(tǒng)硬件設(shè)計的關(guān)鍵,由于加熱裝置的電源是220V,50HZ的市電,選擇器件的耐壓至少要兩倍以上,否則容易發(fā)生損壞。下面就方案論證中提出的兩種方案功能實現(xiàn)的電路進行進一步的分析,從而確定系統(tǒng)設(shè)計電路。i.控制交流周期數(shù)的方式:可以采用MOC3043和可控硅的功率控制電路,圖中MOC3043是具有雙向晶閘管輸出的光電隔離器,SCR是雙向可控硅,負載(熱得快)。在MOC3043內(nèi)部不僅有發(fā)光二極管,而且還有過零檢測電路和一個小功率雙向可控硅。當單片機的I/O口輸出低電平信號進入7407時,MOC3043中的發(fā)光二極管發(fā)光,由于過零電路的同步作用,內(nèi)部的雙向可控硅過零后馬上導通,使功率雙向可控硅SCR導通,在負載中有電流流過,當I/O口輸出高電平時,MOC3043中的發(fā)光二極管不發(fā)光,內(nèi)部雙向可控硅截止,所以功率雙向可控硅SCR也截止,負載中沒有電流流過??刂乞?qū)動電路如圖4所示。+5U3R5R627123654A2A1U1C15056R839SCR7407過零測C9MOC30430.01ufR7330圖4ii.控制導通角的方式:首先要設(shè)計交流電過零檢測電路,將檢測信號送如單片機,延時輸出觸發(fā)信號,觸發(fā)雙向可控硅導通,使交流電加在熱得快兩端。如圖5所示是一種可實現(xiàn)的交流電過零檢測電路,通過變壓器講220V交流電降壓為6V后進行過零檢測,通過光耦合器輸出過零檢測信號,避免交流電平干擾,其安全性可靠性高。正半周期輸出低電平,負半周期輸出高電平。4

+5VD25VR10470R6C22400.1uFR8R91KU2100KD1C11N4007220uFTIL113Q1R7T11K220V6VD3GNDTRANS1圖5過零檢測電路的輸出信號可送入單片機中斷控制口,通過單片機的中斷控制可根據(jù)需要,延時輸出觸發(fā)信號,控制每個周期內(nèi)導通相角的大小。驅(qū)動控制部分實現(xiàn)電路圖如圖6所示,經(jīng)過單片機處理的觸發(fā)信號通過光耦合器觸發(fā)雙向可控硅導通,在下個零點到來時截止。從而可以對交流電的半個周期的有效值周期性調(diào)節(jié)。R4+5VR210kC2470uFD110VD3C11000pF1N40071MUin=220VD2C3Q1R14701N40071uF/600VR3240U1熱得快圖63.1.3控制、鍵盤、顯示電路:這部分實際上是一個單片機最小系統(tǒng)的基本電路,可選用最常用的51系列單片機,足夠滿足系統(tǒng)的要求。鍵盤可以選用常用的44掃描鍵盤,不過在這個設(shè)計中只需要3~5個按鍵即滿足要求。本著簡單實用的原則,選擇了4個按鍵,分別用作模式選擇、設(shè)置選擇、溫度加、溫度減。在顯示方面,選用了常用的顯示容量為162個字符的液晶顯示模塊。通過相應(yīng)的軟件編程,可以實現(xiàn)比較美觀和豐富的顯示界面。模塊連接電路圖如圖7所示。5

SW5D121602VCCU1C510U21222324252627283938373635343332R5P2.0/A8P2.1/A9P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD74K7*8P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15R138.2K101112131415161712345678P3.0/RXDP3.1/TXDP3.2/INTOP3.3/INT1P3.4/TOP3.5/T1P3.6/WRP3.7/RDP1.0/T2P1.1/T2-EXP1.2P1.3P1.4P1.5P1.6P1.7GNDR1R2R3R4Y1293019189PSENXTAL1XTAL2RST10K10K10K10KALE/PROG11.09MHZ31EA/VPPSW1SW2SW3SW4C627PC727P23121243213414AT89C5243GND圖73.1.4報警電路:本系統(tǒng)采用ISD1420作為溫度語音芯片,它有20s的錄放時間。它的基本組成有時鐘電路、拾音放大、自動增益控制電路、濾波器、差動功放、電源電路、EPROM地址譯碼電路組成。PLAYE和PLAYL分別于單片機I/O口連接。2圖9為回放電路的時序圖。PLAYL上升沿觸發(fā)回放,下降沿截止;PLAYE上升沿觸發(fā)回放語音信號,直至回放結(jié)束。報警電路圖8所示。+5+5D1R15100KR16100KR17100K+512R91K12LEDS1C7PLAYEU40.001UFR141KSWS21234566792827262524232221201918171615A0VCCDRECXCLKRECLEDPLAYEPLAYLNCANAOUTANAINAGCRECPLAYLA1A2A3A4A5NCNCA6A7NCSWS3PLAYEC1220ufRECPLAYL5.1KC3SWR120.1ufR134704.7uf1011121314MICREFMICVCCASP-+5C6R1010KVSSDVSSASP+C4R1110KC5ISD14200.1uf12LS20.1ufLS1C20.1ufMICSPEAKER+5圖86

圖93.2總體電路設(shè)計本著簡單、實用的原則,這里最后選用了一個比較典型的硬件方案:測溫電路選用DS18B20集成數(shù)組測溫電路;功率控制電路選用MOC3043和可控硅的功率控制電路控制芯片采用常見的AT89S52顯示方式采用162字符液晶顯示器1602鍵盤采用4獨立按鍵次用RS-232串口與計算機通行4軟件設(shè)計與實現(xiàn)4.1軟件流程圖本設(shè)計為了實現(xiàn)對1L水的溫度的測量并用液晶顯示,使待測水溫的靜態(tài)誤差在1oC范圍以內(nèi)。溫度設(shè)定范圍為40~90oC,最小區(qū)分度為1oC,標定溫差1oC。同時當水溫達到設(shè)定值時在環(huán)境溫度降低時溫度控制的靜態(tài)誤差1oC。主程序流程圖如圖10所示,實現(xiàn)對范圍、溫度值的設(shè)定,執(zhí)行、顯示實時溫度。控制算法流程圖如圖12、圖13所示,實現(xiàn)對溫度的控制7

開始液晶模塊初始化N已經(jīng)設(shè)定好溫度?Y調(diào)用溫度數(shù)據(jù)采集比較與控制子程序調(diào)用液晶顯示子程序?qū)崟r溫度值按鍵掃描N有鍵輸入?Y模式鍵有效1次?Y設(shè)置恒溫值N模式鍵有效2次?Y設(shè)置上限報警值YNN模式鍵有效3次?Y設(shè)置下限報警值模式鍵有效4次?Y圖10:系統(tǒng)主程序流程圖8

開始開始調(diào)用DS18B20采集溫度值子程序讀取溫度值NN控溫啟動?采樣值-設(shè)定值<4度?YY暫存最新三組溫度值啟動PID算法控制PID增量計算返回圖12:PID算法流程圖調(diào)用加熱控制量自校正子程序調(diào)用加熱執(zhí)行子程序調(diào)用液晶顯示子程序返回圖11:溫度數(shù)據(jù)采集與控制子程序9

開始啟動開始用程序默認1倍PID控制量Y能否一次性達到設(shè)定值?YN溫度下降?進入控溫量自校正環(huán)節(jié)Y啟動10倍PID控制量加熱溫度低于恒溫值?YYN啟動10倍PID控制量加熱溫度上升?YN溫度上升?N啟動1倍PID控制量加熱達到設(shè)定值?YY保存好此溫度上升點和控制量作為以后上升控制量進入控溫量自校正環(huán)節(jié)啟動1倍PID控制量加熱N達到設(shè)定值?比上次溫度上升點低?YY溫度下降?比上次溫度上升點低?把此溫度上升點和控制量作為以后上升控制量保存好此溫度下降溫度值N是否高于設(shè)定值0.2度?Y在原上升點控制量減去超調(diào)部分量值保存此值至校正控制量單元等待溫度下降到恒溫值再次上升圖13:加熱控制量自校正子程序10

4.2PID控制算法由于該系統(tǒng)為閉環(huán)控制系統(tǒng),故可采用PID控制算法。在計算機控制系統(tǒng)中,PID控制規(guī)律的實現(xiàn)必須用數(shù)值畢竟的方法,當采樣周期相當短時,用求和代替積分,用后向差分代替微分,使模擬PID離散化為差分方程。由于該系統(tǒng)需要采取PWM的脈寬周期作為控制量,故采取數(shù)字PID增量型控制算法。數(shù)字PID增量型控制算式:u(k)u(k)u(k1)Kp[e(k)e(k1)]KIe(k)KD[e(k)2e(k1)e(k2)]式中,KP為比列系數(shù);KI=KpT為積分系數(shù);KIKTDPTTI本設(shè)計中,控制參量為熱得快的加熱時間5功能測試及結(jié)果分析使用的主要儀器儀表:PC機(Lenovo);數(shù)字萬用表(DT-9205B,GDM-8245);可跟蹤直流穩(wěn)壓電源(SS2323);水銀溫度計;51單片機開發(fā)系統(tǒng)。5.1傳感器標定由于18b20出場的測溫精度可達0.5oC,基本能夠達到設(shè)計要求。在此使用了測溫精度為0.1oC的高精度水銀溫度計,精確測量水溫。靜態(tài)溫度測量測量方式:斷開系統(tǒng)的加熱裝置,裝入一定溫度的水,保持環(huán)境溫度和其測量條件不變,利用標準的溫度計測量水溫,于系統(tǒng)給出的溫度相比較。測量儀器:水銀溫度計,500W熱得快,環(huán)境溫度34.5oC。測量結(jié)果:如下表所示標準溫度(oC)847774686665555040測量溫度(oC)83.576.574.168.966.965.855.549.839.8誤差(oC)0.50.50.10.90.90.80.50.20.2誤差分析:由于熱得快加熱時,加熱區(qū)主要集中在其上部,造成受熱不均,而測量點又不能取到完全相同。在此誤差均在1(oC)以內(nèi),且沒有規(guī)律性,所以不再軟件補償溫度值5.2動態(tài)溫控測量測量方式:接上系統(tǒng)的加熱裝置,裝入1L室溫的水,設(shè)定控溫溫度。記錄調(diào)節(jié)時間、超調(diào)溫度、穩(wěn)態(tài)溫度波動幅度等。測量儀器:500W熱得快,環(huán)境溫度34.5oC。測量結(jié)果:如下表所示。在此僅以數(shù)值的方式給出測量結(jié)果,略去升溫曲線。調(diào)節(jié)時間按溫度進出設(shè)定溫度0.5oC范圍時計算。11

設(shè)定溫度(oC)超調(diào)溫度(oC)4060617090無40.570.8變化范圍(oC)39.8~40.559.3~61.069.0~70.889.0~89.55.3測試結(jié)果分析由以上測量可見,系統(tǒng)性能基本上達到了所要求的指標。靜態(tài)測溫的精度主要有DS18B20決定。DS18B20的精度比較高,這里采取了讀取溫度寄存器辦法,測溫精度能夠達到0.2oC,可以達到比較好的精度。在控溫指標中,影響系統(tǒng)性能的因素非常多。最關(guān)鍵的是加熱系統(tǒng)本身的物理性質(zhì)及控制算法。由于傳感器必須加上防水設(shè)施,因此溫度傳感器難免會有遲滯,熱得快本身的延遲,水對流傳熱等因素也會造成測溫的延時,這些都會直

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論