熱水器壓力和溫度控制器_第1頁
熱水器壓力和溫度控制器_第2頁
熱水器壓力和溫度控制器_第3頁
熱水器壓力和溫度控制器_第4頁
熱水器壓力和溫度控制器_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、遼 寧 工 業(yè) 大 學智能儀表課程設計(論文) 題目:熱水器壓力和溫度控制器院(系): 電氣工程學院 專業(yè)班級: 學 號: 學生姓名: 指導教師: 起止時間:2011.12.26-2012.1.6摘要本論文主要講述了以AT89S52為主的熱水器溫度和壓力控制系統(tǒng)。本次設計中應用了以單片機為主,PT100和HM10位傳感器的簡約型熱水器溫度和壓力控制系統(tǒng)。主控制器中的單片機芯片采用的是AT89S52。溫度傳感器PT100將探測到的水溫的數(shù)據(jù)信號傳到單片機中,經(jīng)過單片機來判斷溫度是否達到我們所需要的預先設定的溫度。本設計的溫度控制系統(tǒng)中選用了精度較高的PT100作為溫度傳感器,相對于普遍的DS18

2、B20,PT100的精度更高一些,壓力傳感器部分采用了德國HELM公司生產(chǎn)的高精度壓阻式壓力傳感器,具有兼容性好,穩(wěn)定性高的特點。顯示部分采用比較便捷簡便的CH451,省去了顯示部分的復雜連接電路。關鍵詞:熱水器、溫度控制、壓力控制 目錄第1章 緒論1第2章 課程設計方案22.1系統(tǒng)的主要任務和主要功能22.2 系統(tǒng)工作的基本原理22.3 總體設計方案與比較2方案論證22.3.2 方案比較與選擇32.4元器件選擇4第3章 硬件電路設計53.1 系統(tǒng)硬件設計53.2 AT89S52單片機引腳圖53.2溫度傳感器電路(PT100)63.2 LED顯示電路的硬件設計7第4章 軟件設計8第5章 設計總

3、結9參考文獻10附 錄11附 錄12 第1章 緒論幾年來,市場上陸續(xù)出現(xiàn)了一些熱水器控制器,但大多數(shù)控制器存在著諸如性能不穩(wěn)定,容易產(chǎn)生誤操作;溫度、壓力檢測、控制誤差大;顯示器有時出現(xiàn)亂碼;與電輔助加熱裝置不能很好配合等弊端。從而必然會催生性能比較穩(wěn)定、功能強大、智能型的熱水器控制器。在現(xiàn)代社會中,熱水器控制電路的原理不僅應用于生活方面,其運用也涉及到了生產(chǎn)各個方面。隨著人們生活質(zhì)量的提高,酒店廠房及家庭生活中都會見到熱水器控制電路的影子,其將更好的服務于社會。隨著電子技術的發(fā)展,特別是隨著大規(guī)模集成電路的產(chǎn)生,給人們的生活帶來了根本性的變化,如果說微型計算機的出現(xiàn)使現(xiàn)代的科學研究得到了質(zhì)的

4、飛躍,那么單片機技術的出現(xiàn)則是給現(xiàn)代工業(yè)控制測控領域帶來了一次新的革命。用單片機來設計電熱水器控制器具有新穎、價廉、安全、實用等優(yōu)點,并且在國產(chǎn)電熱水器上獲得了成功應用。本設計的一些方法也適用于冰箱、空調(diào)等家用電器的電腦控制設計中。目前,單片機在工業(yè)控制系統(tǒng)諸多領域得到了極為廣泛的應用。該熱水器控制器電路的設計主要由單片機、液晶顯示器、PT100等配件構成;操作簡便,運行成本低,同時免除了令用戶不滿控溫精度低、可靠性差、功能單一等局面。第2章 課程設計方案2.1系統(tǒng)的主要任務和主要功能該熱水器控制器電路主要實現(xiàn)對水溫和壓力的檢測和控制,并滿足不同用戶的個性需求。其有以下功能:(1)水溫的測量和

5、顯示;(2)壓力的測量與顯示及報警;(3)用戶設定功能(如水溫設定,水量設定,加熱定時,進出水定時等);(4)對電加熱管的控制功能;(5)一些功能鍵(如自動進、出水,壓力設置,水溫設置,把所設定值清零等);2.2 系統(tǒng)工作的基本原理熱水器控制電路有單片機、鍵盤、液晶顯示器、水溫傳感器(PT100)、壓力傳感器(HM10)等硬件組成,然后和軟件結合起來實現(xiàn)熱水器控制電路的功能。該設計的主要原理是:主控制器中的單片機芯片采用的是AT89S52。溫度傳感器PT100將探測到的水溫的數(shù)據(jù)信號傳到單片機中,經(jīng)過單片機來判斷溫度是否達到我們所需要的預先設定的溫度。如果沒有達到,單片機就會發(fā)出一個指令啟動熱

6、得快對水進行加熱。如果水溫達到我們預先設定的溫度值,單片機通過溫度傳感器PT100接收到的數(shù)據(jù)信號進行判斷,就會使熱得快停止加熱。如果溫度高于我們預先設定的溫度值,單片機也會通過溫度傳感器PT100 接受到的數(shù)據(jù)信號進行判斷,使熱得快不加熱,等水溫慢慢的冷卻下來到達我們預先設定的溫度值。如果溫度要稍許的低于(高于)我們預先設定的溫度值,單片機會馬上給控制熱得快電路一個指令,啟動(停止)加熱電路,從而實現(xiàn)了溫度的控制。當然控制水溫主要用到了PID算法,這樣實現(xiàn)了精確的控制水的溫度??刂茐毫χ饕ㄟ^壓力傳感器來實現(xiàn)。當壓力達到預先設定的值時,探針就會通過壓力傳感器HM10把信號傳到單片機,通過單片

7、機的處理判斷來給壓力控制電路指令,從而判斷是否開啟報警電路。 2.3 總體設計方案與比較2.3.1方案論證方案一: 此方案采用單片機程序控制進行設計。包括鍵盤、數(shù)碼顯示、開關控制電路、加熱裝置、進水出水裝置等部分,起原理如圖2所示。采用AD590溫度傳感器和壓力傳感器分別對溫度信號采集和水位信號采集,將他們轉換為電流或電壓信號,通過信號放大后再進行A/D轉換,并通過LED數(shù)碼顯示管顯示,將采集的數(shù)據(jù)與單片機預置溫度(水位)或鍵盤鍵入的所需溫度(水位)進行比較,用單片機對溫度和水位進行的控制。圖1 方案一原理圖方案二:此方案在方案一的基礎上做了很大的改進。用數(shù)字型溫度傳感器PT100和壓力傳感器

8、進行溫度和水位的采集的信號直接送入單片機中,再由單片機程序來進行控制。另外該方案還包括鍵盤、液晶顯示電路、自動控制進水和出水的裝置以及加熱裝置等。溫度直接通過PT100完成溫度數(shù)據(jù)采集,然后進行AD轉換。壓力由HM10把信號傳遞給單片機,由液晶顯示器把水溫和水位顯示出來,并且還將采集到的數(shù)據(jù)與鍵盤鍵入的所設定的溫度和壓力進行比較,再由單片機對加熱裝置和報警裝置進行控制。其原理如圖2所示。2.3.2 方案比較與選擇方案一:采用AD590溫度傳感器進行溫度采集同樣有方案一中的問題,即信號采集、放大與傳輸過程中的失真不可避免,數(shù)碼管不能同時顯示水溫和水位,因而也不予采用。方案二:選用的數(shù)字型溫度傳感

9、器(PT100)能較好的避免前述缺點,另外還設有輸入設備鍵盤以及顯示設備液晶顯示器。這樣既可以同時顯示當前水溫,當前水位,設定水溫,設定水位于一個界面液晶顯示屏上,從而可以更加直觀明了,使人機對話更加容易,同時也方便了用戶的操作和控制。經(jīng)比較后最終選擇方案二。溫度傳感器LED顯示CH451單片機壓力傳感器鍵位選擇報警開關晶振電路溫度控制復位電路圖2 方案二原理框圖2.4元器件選擇AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲器,所以,本次設計采用AT89S52.pt100是鉑熱電阻,它的阻值跟溫度的變化成正比。PT100的阻值與溫度變化關系為

10、:當PT100溫度為0時它的阻值為100歐姆,在100時它的阻值約為138.5歐姆。它的工業(yè)原理:當PT100在0攝氏度的時候他的阻值為100歐姆,它的阻值會隨著溫度上升而成勻速增長的。工作于-4085(主機范圍,不是外接的傳感器范圍)工業(yè)級PT100熱電阻采集模塊,按顯示方式分有不帶LCD顯示的WD系列(WD-PT100、WD-PT1000)和帶LCD顯示的LM系列(LM-PT100、PT1000)兩類。采集溫度范圍為200200,顯示精度0.1。HM10高精度壓阻式壓力傳感器,是采用德國HeLM公司先進的硅壓阻力敏元件封裝在不銹鋼殼體內(nèi)組裝調(diào)試而成,外殼和接口材料均為不銹鋼,介質(zhì)兼容性好,

11、性能穩(wěn)定可靠,精度高,密封墊端面密封。 所以,本次設計中,主機芯片采用AT89S52,溫度傳感器采用PT100,壓力傳感器采用HM10。第3章 硬件電路設計3.1 系統(tǒng)硬件設計本系統(tǒng)的硬件以單片機AT89S52為控制核心,液晶顯示電路,PT100水溫檢測電路,溫度壓力間接控制電路等。3.2 AT89S52單片機引腳圖圖3.1 AT89S51單片機引腳圖主機的復位方式采用按鍵復位,根據(jù)用戶的意愿或想法可以隨時復位,以防止熱水器產(chǎn)生誤差,晶振電路采用12MHZ的晶振。3.2溫度傳感器電路(PT100)圖3.2 PT100前置放大電路如采用電阻式傳感器作為被測對象,傳感元件的引出線有以下幾種方式:二

12、線制、三線制和四線制采用二線制接法(圖1),雖然導線電阻會給測量帶來影響,但在測量精度要求不高、測量儀器與被測傳感元件距離較近時,常采用二線制但如果金屬電阻本身的阻值很小,那末引線的電阻及其變化也就不能忽視,例如對于Pt100鉑電阻,若導線電阻為1 ,將會產(chǎn)生2.5的測量誤差為了消除或減少引線電阻的影響,通常的辦法是采用三線聯(lián)接法加以處理,如圖2所示工業(yè)熱電阻目前大多采用的都是三線制接法在三線制接線電路中,傳感元件的一端與一根導線相接,另一端同時接兩根導線傳感元件在與電橋配合時,與傳感元件相接的三根導線粗細要相同,長度要相等,阻值要一致(圖中r1,r2,r3即為引線電阻)其中一根引線與測量儀表

13、連接,由于測量儀表的內(nèi)阻很大,可認為流過r2的電流接近于零另兩根引線分別與電橋的兩個相鄰臂相連,這樣引線電阻對測量就不會造成影響3.2 LED顯示電路的硬件設計溫度壓力信號經(jīng)過單片機處理之后,需要在顯示電路中直觀地顯示出來。所以,需要選用合適的顯示設備及顯示電路,來實現(xiàn)對變壓器內(nèi)溫度的實時顯示。在本設計中,采用動態(tài)LED驅(qū)動方式來實時顯示變壓器內(nèi)的溫度。本次設計的現(xiàn)實電路采用CH451為顯示芯片,CH451是一個整合了數(shù)碼管顯示驅(qū)動和鍵盤掃描控制以及uP監(jiān)控的多功能外圍芯片。CH451內(nèi)置RC振蕩電路,可以動態(tài)驅(qū)動8位數(shù)碼管或者64位LED,具有BCD譯碼、閃爍、位移等功能;同時還可以進行64

14、鍵的鍵盤掃描;CH451通過可以級聯(lián)的串行接口與單片機等交換數(shù)據(jù);并且提供上電復位和看門狗等監(jiān)控功能。圖3.3顯示電路CH451可以動態(tài)驅(qū)動8個共陰數(shù)碼管,所有數(shù)碼管的相同段引腳(段A-段G以及小數(shù)點)并聯(lián)后通過串接的限流電阻R1連接CH451的段驅(qū)動引腳SEG0-SEG7,各數(shù)碼管的陰極分別由CH451的DIG0-DIG7引腳進行驅(qū)動。串接限流電阻R1的阻值越大則段驅(qū)動電流越小,數(shù)碼管的顯示亮度越低,R1的阻值一般在60歐姆到1000歐姆之間,在其他條件相同的情況下,應該優(yōu)先選擇較大的阻值。在數(shù)碼管的面板布局上,建議數(shù)碼管從左到右的順序是N1靠左邊,N8靠右邊,一邊匹配字左右移動命令和字左右

15、循環(huán)移動命令。第4章 軟件設計從溫度傳感器出來的電流信號,經(jīng)過電流電壓轉換電路、A/D轉換器、轉換為單片機可以接收的信號之后,需要對單片機進行編程,實現(xiàn)對溫度信號采集、計算和實時顯示。本設計中,軟件設計采用模塊化結構。軟件上,在單片機上實現(xiàn)多種功能,并保證控制精度,軟件設計必須實現(xiàn)功能占CPU時間的分配上做到有主有次,既要保證完整性,又要保證實時性。溫度控制器在軟件上采用AT89S52開發(fā),用模塊化結構。本章給出軟件設計的流程圖。初始化用戶鍵盤選擇傳感器掃描溫度傳感器壓力傳感器比設定值高比設定值高加熱開始聲光報警,開蓋降壓溫度顯示壓力顯示YYNN開蓋降溫第5章 設計總結本系統(tǒng)以AT89S52單

16、片機為控制核心。用單片機做為控制器具有新穎、價廉、安全、實用等優(yōu)點。本文的一些方法也適用于冰箱、空調(diào)等家用電器的電腦控制設計中。系統(tǒng)實現(xiàn)了鍵盤識別、液晶顯示、溫度水位讀取以及水溫水位的自動控制等多種功能。并且采用了PID算法,液晶顯示器顯示,高精度溫度傳感器,實現(xiàn)了環(huán)保節(jié)能的目的。用液晶顯示器代替了發(fā)光二級管或數(shù)碼管顯示,使該控制器更加新穎、更加直觀。便于用戶的操作也達到了用戶的特殊需求。本設計主要闡明用AT89S52單片機來控制溫度和水位及其顯示原理,當然在設計中還存在一些不足之處,像定時加熱、定時進水、無極調(diào)節(jié)水位以及保溫裝置的設計等。參考文獻1 孫涵芳等.單片機原理及應用M .北京:北京

17、航空航天大學出版社,20072 徐愛鈞.智能化測量控制儀表原理與設計(2)M.北京:北京航空航天大學出版社,20083 梅麗鳳.單片機原理及接口技術.清華大學出版社,2006.54 周航慈等.智能儀器原理與設計.北京:北京航空航天大學出版社,2005.35 何立明.MCS-51系列單片機應用系統(tǒng)設計系統(tǒng)配置與接口技術M,北京:北京航空航天大學出版社,2009附 錄總電路圖附 錄#include <absacc.h>#include <REG52.h>#include <stdio.h>#include <intrins.h>#define ulo

18、ng unsigned long#define uint unsigned int#define uchar unsigned char#define para1 0x20;#define dat1 DBYTE0x30#define dat2 DBYTE0x31#define LCMDW XBYTE0xF0FF#define LCMCW XBYTE0xF1FF#define com DBYTE0x32#define O_Y DBYTE0x33#define O_X DBYTE0x34#define code_1 DBYTE0x35sbit ACC_0=ACC0;sbit ACC_1=ACC1;

19、sbit ACC_3=ACC3;sbit csh=P32;sbit jsh=P31;sbit swen=P33;sbit DQ=P34;sbit L1=P23;sbit L2=P35;sbit L3=P22;sbit L4=P23;sbit s_a=P27;sbit s_b=P26;sbit s_c=P25;sbit s_d=P24;unsigned char w_s=1,s_s=1,buzzk=0,bflag=0;unsigned char t=0,tb=0,ts=0,tg=0,shs=13,shz=11,s_tb=0,s_ts=0,s_tg=0,s_sh=13,kk,mm=0,p=0;/*

20、讀取溫度函數(shù)*/unsigned int read_temperature(void) unionunsigned char c2; unsigned int x; temp; ow_reset(); /總線復位 write_byte(0xCC); / 發(fā)Skip ROM命令 write_byte(0xBE); / 發(fā)讀命令 temp.c1=read_byte(); /溫度低8位 temp.c0=read_byte(); /溫度高8位 ow_reset(); write_byte(0xCC); /Skip ROM write_byte(0x44); /發(fā)轉換命令 temp.x<<=

21、4; return (temp.c0); /return temp.x/2;void ST01(void) doACC=LCMCW; while(ACC_0=0&&ACC_1=0); void PR12(void) ST01();LCMCW=com;void PR11(void) ST01();LCMDW=dat2;PR12();void PR1(void) ST01();LCMDW=dat1;PR11();void ST3(void) doACC=LCMCW; while(ACC_3=0); void chushi_1(void) dat1=0x00; dat2=0x00;c

22、om=0x40;PR1();/*設文本顯示區(qū)域首地址*/ dat1=para1;dat2=0x00;com=0x41;PR1();/* 設文本顯示區(qū)域?qū)挾?*/ dat1=0x00;dat2=0x08;com=0x42;PR1(); /*設圖形顯示區(qū)域首地址*/ dat1=para1;dat2=0x00;com=0x43;PR1(); /*設圖形顯示區(qū)域?qū)挾?/ com=0xa7;PR12(); /*光標形狀設置*/ com=0x80;PR12(); /*顯示方式設置邏輯"或"合成*/ com=0x9c;PR12(); /*顯示開關設置 開文本和圖形顯示*/ /*清顯示子程

23、序*/void CLEAR(void) unsigned char i,j; dat1=0x00;dat2=0x00;com=0x24;PR1(); com=0xb0;PR12(); for(i=0;i<205;i+) /* 205 */ for(j=0;j<=40;j+) /* 40 */ ST3();LCMDW=0x00; com=0xb2;PR12(); /*PID計算*/float PIDCalc( PID *pp, int NextPoint ) int dError, Error; Error = pp->SetPoint*10 - NextPoint; / 偏差

24、 pp->SumError += Error; / 積分 dError = pp->LastError - pp->PrevError; / 當前微分 pp->PrevError = pp->LastError; pp->LastError = Error; return (pp->Proportion * Error / 比例項 + pp->Integral * pp->SumError / 積分項 + pp->Derivative * dError / 微分項 );/*PID輸出值的處理*/void active()if(fOut

25、<=0) jwen=1; /溫度高于設定值,關閉熱得快 else if(fOut>30*stPID.Proportion)/溫度低于設定值2攝氏度 jwen=1; /打開電熱得快 /*PID控制*/unsigned int get_temperature(void) float fT; fT= read_temperature(); tb=fT/100; ts=fT/10%10; tg=fT%10; yej(); stPID.Proportion = 1; / 設置PID比例值 stPID.Integral = 0.5; / 設置PID積分值 stPID.Derivative =

26、0.0; / 設置PID微分值 fOut = 100*PIDCalc ( &stPID,(int)(fT*10) ); / PID計算 active();int scan(void) int i,j,r=16,key=16; for(i=0;i<=3;i+) P1|=0xff; P1&=(0x01<<i); /i行輸出為0 for(j=4;j<8;j+) if(P1&(0x01<<j)=0) /j行為0 delay(30); if(P1&(0x01<<j)=0) key=P1&0xff; switch(ke

27、y) case 0xe7: r=0;break; case 0xee: r=1;break; case 0xde: r=2;break; case 0xbe: r=3;break; case 0xed: r=4;break; case 0xdd: r=5;break; case 0xbd: r=6;break; case 0xeb: r=7;break; case 0xdb: r=8;break; case 0xbb: r=9;break; case 0xd7: r=10;break; case 0xb7: r=11;break; case 0x7e: r=12;break; case 0x7

28、d: r=13;break; case 0x7b: r=14;break; case 0x77: r=15;break; default : r=16;break; return r;/*水溫控制*/void std2(void) uchar ii,ws=0,i=16; w_s=0; s_s=1;s_tb=0;s_ts=0;s_tg=0; yej();while(1) if(i<10) ii=i;delay(6000);delay(6000);i=scan(); if(ws=2)&(ii=i)s_tb=s_ts;s_ts=s_tg;s_tg=i;yej();ws+;break;

29、if(ws=1)&(ii=i)s_ts=s_tg;s_tg=i;yej();ws+;i=scan();continue; if(ws=0)&(ii=i)s_tg=i;yej();ws+;i=scan();continue; if(i=10)break; if(i=11)ws=0;s_tb=0;s_ts=0;s_tg=0;yej(); i=scan();if(s_tb>1)s_tb=1;s_ts=0;s_tg=0; else if(s_tb=1)&&(s_ts>0)|(s_tb=1)&&(s_tg>0)=1) s_tb=1;s_ts=0;s_tg=0; else ;w_s=1;s_s=1;/*探測壓力*/ void control(void) switch(shz) case 9: jsh=0; if(s_a=0)shs=13; if(s_b=0)

溫馨提示

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

評論

0/150

提交評論