版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
恒溫控制系統(tǒng)第一頁,共三十八頁,2022年,8月28日任務(wù)分析:本設(shè)計(jì)以STC89C52單片機(jī)為核心的溫度控制系統(tǒng)的工作原理和設(shè)計(jì)方法。溫度信號(hào)由溫度芯片DS18B20采集,并以數(shù)字信號(hào)的方式傳送給單片機(jī)處理。并顯示在LED12864液晶顯示屏上,報(bào)警溫度范圍可調(diào),文中介紹了該控制系統(tǒng)的硬件部分,包括:溫度檢測(cè)電路、溫度控制電路、單片機(jī)通過對(duì)信號(hào)進(jìn)行相應(yīng)處理,從而實(shí)現(xiàn)溫度控制的目的。文中還著重介紹了軟件設(shè)計(jì)部分,在這里采用模塊化結(jié)構(gòu),主要模塊有:LCD12864顯示程序、鍵盤掃描及按鍵處理程序、溫度信號(hào)處理程序、繼電器控制程序、超溫報(bào)警程序、直流電機(jī)控制程序。關(guān)鍵詞:STC89C52單片機(jī);溫度控制;DS18B20;LED12864液晶顯示屏;第二頁,共三十八頁,2022年,8月28日目錄1引言………………42設(shè)計(jì)要求…………53工作原理…………6
3.1工作原理………………………74方案設(shè)計(jì)...........…………………8
4.1溫度方案測(cè)量…………….…84.2主控制方案...…………….…105各單元的設(shè)計(jì)………………….…13
5.1鍵盤單元………………………135.2電源.............................................…………………...……145.3蜂鳴器報(bào)警電路………………145.4白熾燈加熱控制電路………………...………155.5電機(jī)控制電路………………………………………...………165.6LED12864液晶顯示電路………….........……175.7總原理圖…………….........……186程序設(shè)計(jì)............………………..…20
6.1程序結(jié)構(gòu)分析…………...……216.2程序框圖…………………...…226.3總程序……………………...…247.測(cè)試.......………….35附錄A程序清單………………………37心得體會(huì)..........………………………38第三頁,共三十八頁,2022年,8月28日1引言溫度控制系統(tǒng)廣泛應(yīng)用于社會(huì)生活的各個(gè)領(lǐng)域,如家電、汽車、材料、電力電子等,常用的控制電路根據(jù)應(yīng)用場(chǎng)合和所要求的性能指標(biāo)有所不同,在工業(yè)企業(yè)中,如何提高溫度控制對(duì)象的運(yùn)行性能一直以來都是控制人員和現(xiàn)場(chǎng)技術(shù)人員努力解決的問題。這類控制對(duì)象慣性大,滯后現(xiàn)象嚴(yán)重,存在很多不確定的因素,難以建立精確的數(shù)學(xué)模型,從而導(dǎo)致控制系統(tǒng)性能不佳,甚至出現(xiàn)控制不穩(wěn)定、失控現(xiàn)象。傳統(tǒng)的繼電器調(diào)溫電路簡單實(shí)用,但由于繼電器動(dòng)作頻繁,可能會(huì)因觸點(diǎn)不良而影響正常工作??刂祁I(lǐng)域還大量采用傳統(tǒng)的PID控制方式,但PID控制對(duì)象的模型難以建立,并且當(dāng)擾動(dòng)因素不明確時(shí),參數(shù)調(diào)整不便仍是普遍存在的問題。而采用數(shù)字溫度傳感器DS18B20,因其內(nèi)部集成了A/D轉(zhuǎn)換器,使得電路結(jié)構(gòu)更加簡單,而且減少了溫度測(cè)量轉(zhuǎn)換時(shí)的精度損失,使得測(cè)量溫度更加精確。數(shù)字溫度傳感器DS18B20只用一個(gè)引腳即可與單片機(jī)進(jìn)行通信,大大減少了接線的麻煩,使得單片機(jī)更加具有擴(kuò)展性。由于DS18B20芯片的小型化,更加可以通過單跳數(shù)據(jù)線就可以和主電路連接,故可以把數(shù)字溫度傳感器DS18B20做成探頭,探入到狹小的地方,增加了實(shí)用性。更能串接多個(gè)數(shù)字溫度傳感器DS18B20進(jìn)行范圍的溫度檢測(cè)。第四頁,共三十八頁,2022年,8月28日2設(shè)計(jì)要求
設(shè)計(jì)基于單片機(jī)的溫度控制器,用于控制溫度。具體要求如下:1.溫度控制范圍連續(xù)可調(diào),測(cè)量范圍為0℃85℃;2.LED12864顯示;3.溫度誤差≤±5℃;4.具有穩(wěn)定的溫度控制及報(bào)警裝置;
第五頁,共三十八頁,2022年,8月28日3工作原理溫度傳感器DS18B20在設(shè)備環(huán)境采集溫度,單片機(jī)STC89C512獲取采集的溫度值,經(jīng)處理后得到當(dāng)前環(huán)境中一個(gè)比較穩(wěn)定的溫度值,再根據(jù)當(dāng)前設(shè)定的溫度上下限值,通過加熱和降溫對(duì)當(dāng)前溫度進(jìn)行調(diào)整。當(dāng)采集的溫度經(jīng)處理后超過設(shè)定溫度的上限時(shí),單片機(jī)通過三極管驅(qū)動(dòng)直流電機(jī)風(fēng)扇向外通風(fēng)降溫,當(dāng)采集的溫度經(jīng)處理后低于設(shè)定溫度的下時(shí),單片機(jī)通過三極管驅(qū)動(dòng)繼電器開啟升溫設(shè)備(白熾燈),同時(shí)蜂鳴器報(bào)警。3.1硬件框圖:STC89C52CPU芯片、鍵盤掃描、DS18B20溫度芯片測(cè)量、LED12864顯示、溫度控制模塊、電源;第六頁,共三十八頁,2022年,8月28日AT89S51CPU鍵盤掃描電路DS18B20溫度芯片數(shù)據(jù)傳輸輸入電源LED1286數(shù)據(jù)顯示超溫報(bào)警直流電機(jī)風(fēng)扇控制白熾燈第七頁,共三十八頁,2022年,8月28日4方案設(shè)計(jì)
4.1溫度測(cè)量方案由于傳統(tǒng)的熱敏電阻等測(cè)溫元件測(cè)出的一般都是電壓,再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需要比較多的外部元件支持,且硬件電路復(fù)雜,制作成本相對(duì)較高。這里采用DALLAS公司的數(shù)字溫度傳感器DS18B20作為測(cè)溫元件。
DS18B20特性;獨(dú)特的單線接口僅需一個(gè)端口引腳進(jìn)行通訊簡單的多點(diǎn)分布應(yīng)用無需外部器件可通過數(shù)據(jù)線供電零待機(jī)功耗測(cè)溫范圍-55~+125℃,以0.5℃遞增。華氏器件-67~+2570F,以0.90F遞增溫度以9位數(shù)字量讀出溫度數(shù)字量轉(zhuǎn)換時(shí)間200ms(典型值)用戶可定義的非易失性溫度報(bào)警設(shè)置報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件應(yīng)用包括溫度控制、工業(yè)系統(tǒng)、消費(fèi)品、溫度計(jì)或任何熱感測(cè)系統(tǒng)第八頁,共三十八頁,2022年,8月28日第九頁,共三十八頁,2022年,8月28日4.2主控制部分方案對(duì)于單片機(jī)的選擇,可以考慮使用8031與8051系列,由于8031沒有內(nèi)部RAM,系統(tǒng)又需要大量內(nèi)存存儲(chǔ)數(shù)據(jù),因而不適用。因此我們選Atmel公司STC89C52是一種帶8K字節(jié)閃爍可編程可檫除只讀存儲(chǔ)器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低電壓,高性能COMOS8的微處理器,俗稱單片機(jī)。該器件采用ATMEL搞密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。主要功能特性兼容MCS51指令系統(tǒng)8K可反復(fù)擦寫FlashROM32個(gè)雙向I/O口256x8bit內(nèi)部RAM3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷時(shí)鐘頻率0-24MHz2個(gè)串行中斷可編程UART串行通道2個(gè)外部中斷源共6個(gè)中斷源2個(gè)讀寫中斷口線3級(jí)加密位低功耗空閑和掉電模式軟件設(shè)置睡眠和喚醒功能第十頁,共三十八頁,2022年,8月28日單片機(jī)最小系統(tǒng)原理圖1.復(fù)位電路2.時(shí)鐘電路第十一頁,共三十八頁,2022年,8月28日STC89C52引腳如下:①主電源引腳(2根)VCC(Pin40):電源輸入,接+5V電源GND(Pin20):接地線②外接晶振引腳(2根)XTAL1(Pin19):片內(nèi)振蕩電路的輸入端XTAL2(Pin20):片內(nèi)振蕩電路的輸出端③控制引腳(4根)RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。ALE/PROG(Pin30):地址鎖存允許信號(hào)PSEN(Pin29):外部存儲(chǔ)器讀選通信號(hào)EA/VPP(Pin31):程序存儲(chǔ)器的內(nèi)外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從內(nèi)部程序存儲(chǔ)器讀指令。④可編程輸入/輸出引腳(32根)STC89C52單片機(jī)有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個(gè)口有8位(8根引腳),共32根。PO口(Pin39~Pin32):8位雙向I/O口線,名稱為P0.0~P0.7P1口(Pin1~Pin8):8位準(zhǔn)雙向I/O口線,名稱為P1.0~P1.7P2口(Pin21~Pin28):8位準(zhǔn)雙向I/O口線,名稱為P2.0~P2.7P3口(Pin10~Pin17):8位準(zhǔn)雙向I/O口線,名稱為P3.0~P3.7第十二頁,共三十八頁,2022年,8月28日5各單元的設(shè)計(jì)
5.1按鍵單元單片機(jī)應(yīng)用系統(tǒng)中除了復(fù)位按鍵有專門的復(fù)位電路,以及專一的復(fù)位功能外,其它的按鍵都是以開關(guān)狀態(tài)來設(shè)置控制功能或輸入數(shù)據(jù)。按鍵開關(guān)狀態(tài)的可靠輸入:為了去抖動(dòng)我采用軟件方法,它是在檢測(cè)到有鍵按下時(shí),執(zhí)行一個(gè)10ms的延時(shí)程序后,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平,如保持閉合狀態(tài)電平則確認(rèn)為真正鍵按下狀態(tài),從而消除了抖動(dòng)影響。在這里我們用到S1,S2,S3,S4,S5對(duì)我們的溫度進(jìn)行調(diào)節(jié);按鍵功能;S1:對(duì)應(yīng)的數(shù)+1;S2:對(duì)應(yīng)的數(shù)–1;S3:左移一位;S4:確認(rèn);S5:調(diào)節(jié)溫度范圍鍵;第十三頁,共三十八頁,2022年,8月28日5.2電源電路通過USB線+5V供電;5.3蜂鳴器報(bào)警電路第十四頁,共三十八頁,2022年,8月28日5.4白熾燈加熱控制電路I/O:P2.0口輸出低電平通過繼電器吸合控制白熾燈的亮滅;第十五頁,共三十八頁,2022年,8月28日5.5電機(jī)H橋控制電路通過PW1,PW2輸出電平的高低,控制電機(jī)的正反轉(zhuǎn),當(dāng)PWM1為低電平,通過對(duì)PWM2輸出占空比不同的矩形波使三極管Q1、Q6同時(shí)導(dǎo)通Q5截止,從而實(shí)現(xiàn)電機(jī)正向轉(zhuǎn)動(dòng)以及轉(zhuǎn)速的控制;同理,當(dāng)PWM2為高電平,通過對(duì)PWM1輸出占空比不同的矩形波使三極管Q1、Q6同時(shí)導(dǎo)通,Q6截止,從而實(shí)現(xiàn)電機(jī)反向轉(zhuǎn)動(dòng)以及轉(zhuǎn)速的控制。第十六頁,共三十八頁,2022年,8月28日5.612864液晶顯示電路第十七頁,共三十八頁,2022年,8月28日5.7總原理圖第十八頁,共三十八頁,2022年,8月28日PCB板第十九頁,共三十八頁,2022年,8月28日6.程序設(shè)計(jì)6.1:程序結(jié)構(gòu)分析總的思路:我們要采集溫度并通過單片機(jī)處理顯示在我們的led12864液晶顯示屏上;并要設(shè)置初始的上限溫度和下限溫度范圍;并能通過我們的按鍵可以調(diào)節(jié)溫度的上限和下限值;同時(shí)當(dāng)我們的溫度超過上限值;直流電機(jī)散熱;低于下限值白熾燈加熱;
首先我們的對(duì)DS18B20初始化;采集溫度函數(shù);LED12864液晶顯示屏初始化;寫地址函數(shù),寫數(shù)據(jù)函數(shù),CPU處理;顯示在LED液晶顯示屏上,按鍵掃描函數(shù);主函數(shù);第二十頁,共三十八頁,2022年,8月28日12864,DS18B20,T0定時(shí)器初始化讀溫度temp判斷temp>上限值電機(jī)轉(zhuǎn)散熱<下限值白熾燈亮加熱按鍵掃描鍵值處理調(diào)節(jié)上,下限值蜂鳴器報(bào)警LED12864顯示6.2程序框圖main第二十一頁,共三十八頁,2022年,8月28日6.3總程序bitlcd_busy() //讀忙狀態(tài)函數(shù)
{bitresult;LCD_RS=0;LCD_RW=1; _nop_();_nop_();_nop_();_nop_();LCD_EN=1;_nop_();_nop_();_nop_();_nop_();result=(bit)(P1&0x80);LCD_EN=0;return(result);}LED12864顯示函數(shù)第二十二頁,共三十八頁,2022年,8月28日voidlcd_wcmd(UINT8cmd) //寫地址函數(shù){while(lcd_busy());LCD_RS=0;LCD_RW=0; _nop_();_nop_();_nop_();_nop_();LCD_EN=0;_nop_();_nop_();P1=cmd;Delayus(50);LCD_EN=1;Delayus(50);LCD_EN=0;}第二十三頁,共三十八頁,2022年,8月28日voidlcd_wdat(UINT8dat) //寫數(shù)據(jù)函數(shù){while(lcd_busy());LCD_RS=1;LCD_RW=0; _nop_();_nop_();_nop_();_nop_();LCD_EN=0;_nop_();_nop_();P1=dat;Delayus(50);LCD_EN=1;Delayus(50);LCD_EN=0;}第二十四頁,共三十八頁,2022年,8月28日voidLcd_Init(void) //LCD液晶初始化函數(shù){ Delayms(100); LCD_RST=0; Delayms(40);//等待復(fù)位>40MS LCD_RST=1; Delayms(5); lcd_wcmd(0x30);// lcd_wcmd(0x30); lcd_wcmd(0x0c); lcd_wcmd(0x01); lcd_wcmd(0x06);}第二十五頁,共三十八頁,2022年,8月28日voidDis_Str(UINT8X,UINT8Y,UINT8*str)//寫入地址*str和數(shù)據(jù)X,Y;并顯示{ UINT8pos; if(X==0) {X=0x80;} elseif(X==1) {X=0x90;} elseif(X==2) {X=0x88;} elseif(X==3) {X=0x98;} pos=X+Y; lcd_wcmd(pos);//顯示地址 _nop_(); _nop_();_nop_(); _nop_(); while(*str!='\0')//未結(jié)束 { lcd_wdat(*str++); Delayms(5); }}第二十六頁,共三十八頁,2022年,8月28日voidds1820rst()/*ds1820復(fù)位*/{ UINT8x=0; DQ=1;//DQ復(fù)位
delay_18B20(4);//延時(shí)
DQ=0;//DQ拉低
delay_18B20(100);//精確延時(shí)大于480us DQ=1;//拉高
delay_18B20(40);}DS18B20子函數(shù)第二十七頁,共三十八頁,2022年,8月28日UINT8ds1820rd()/*讀數(shù)據(jù)*/{ UINT8i=0; UINT8dat=0; for(i=8;i>0;i--) { DQ=0;//給脈沖信號(hào)
dat>>=1; DQ=1;//給脈沖信號(hào)
if(DQ) dat|=0x80; delay_18B20(10); }return(dat);}第二十八頁,共三十八頁,2022年,8月28日voidds1820wr(UINT8wdata)/*寫數(shù)據(jù)*/{ UINT8i=0;for(i=8;i>0;i--) { DQ=0; DQ=wdata&0x01; delay_18B20(10); DQ=1; wdata>>=1;}}第二十九頁,共三十八頁,2022年,8月28日UINT16read_temp(void)/*讀取溫度值并轉(zhuǎn)換*/{ UINT8a,b; UINT16tvalue; ds1820rst();//復(fù)位
ds1820wr(0xcc);//*跳過讀序列號(hào)*/ ds1820wr(0x44);//*啟動(dòng)溫度轉(zhuǎn)換*/ ds1820rst();//復(fù)位
ds1820wr(0xcc);//*跳過讀序列號(hào)*/ ds1820wr(0xbe);//*讀取溫度*/
a=ds1820rd();//讀低8位
b=ds1820rd();//讀高8位
if((b&0xf8)==0xf8) //負(fù)數(shù)時(shí)
{ tvalue=b; tvalue<<=8; tvalue=tvalue|a; tvalue=(!tvalue)*5/8;//取反后在乘0.625溫度值擴(kuò)大10倍
} else //正數(shù)時(shí)
{ tvalue=b; tvalue<<=8; //左移8位
tvalue=tvalue|a; tvalue=tvalue*5/8;//溫度值擴(kuò)大10倍,精確到1位小數(shù)
} return(tvalue);}第三十頁,共三十八頁,2022年,8月28日UINT8scan_key(void){ UINT8key; if((P0&0x0f)==0x0f)return(0xff); Delayms(20); if((P0&0x0f)==0x0f)return(0xff); key=(P0&0x0f); while((P0&0x0f)!=0x0f); return(key);}按鍵掃描第三十一頁,共三十八頁,2022年,8月28日voidINT0_time()interrupt2{ UINT8num1=0,KEY; spk=0; Delayms(100); spk=1; KEY=scan_key(); while(KEY!=S4) { KEY=scan_key(); switch(KEY) {
caseS1:if(num1==0) { flog++; } else { if(flog>flog1)flog1++; elseflog1=flog1; } break; case S2:if(num1==0){ flog--;if(flog>flog1)flog--; elseflog=flog; } else{flog1--; } break; caseS3:num1++;num1%=2; break; } } spk=0; Delayms(50); spk=1;}用中斷方式調(diào)節(jié)溫度函數(shù)第三十二頁,共三十八頁,2022年,8月28日voidmain(void)// 主函數(shù){ inttemp;UINT8dispstr1[16]="恒溫控制系統(tǒng)";UINT8dispstr2[16]=“室溫℃
";Delayms(100);Lcd_Init();Delayms(100);int0_timer();Dis_Str(0,0,dispstr1);while(1){temp=read_temp();dispstr2[8]=temp/100%10+0x30;dispstr2[9]=temp/10%10+0x30;dispstr2[10]='.';dispstr2[11]=temp%10+0x30;Dis_Str(1,0,dispstr2);Dis_Str(2,0,dispstr3);Dis_Str(3,0,dispstr4);if(temp>=(flog*10)||temp<=(flog1*10)){
TR1=0; spk=0; Delayms(200); spk=1; if(temp>=(flog*10)){ pw1=0; pw2=1; Delayms(10); } else
TR1=0; led=0; } else{
TR1=0; spk=1; pw1=0; pw2=0; led=1;
led=1; fen=0; mis=0; shi=0; }Delayms(100);}}第三十三頁,共三十八頁,2022年,8月28日voidINT_time1()interrupt3{ staticUINT16num=0; TH1=0x3c; TL1=0xb0; num++; if(num==20) { num=0; mis++; if(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年麗江市國企招聘考試基礎(chǔ)題庫
- 吉林省-《生物化學(xué)》電子教案-細(xì)胞信號(hào)轉(zhuǎn)導(dǎo)(人衛(wèi)版)
- 寒假安全教育一封信
- 二零二五年度高速公路服務(wù)區(qū)臨時(shí)車位租賃協(xié)議3篇
- 廣告制作常用材料教學(xué)文案
- 老年公寓入住長者健康狀況評(píng)估表-養(yǎng)老院入住老年人健康狀況評(píng)估表-健康評(píng)估表格
- 2024年阜陽市人民醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年河北工業(yè)職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2024年長汀縣城關(guān)醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年江西工業(yè)貿(mào)易職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試歷年參考題庫含答案解析
- 垃圾焚燒發(fā)電環(huán)保培訓(xùn)
- 北京市朝陽區(qū)2024-2025學(xué)年高一(上)期末化學(xué)試卷(含答案)
- 中醫(yī)基礎(chǔ)學(xué)考試題(附答案)
- 2025貴州建筑安全員B證考試題庫附答案
- 2024年杭州師范大學(xué)附屬醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 護(hù)理倫理學(xué)(第二版)高職PPT完整全套教學(xué)課件
- GB/T 25919.1-2010Modbus測(cè)試規(guī)范第1部分:Modbus串行鏈路一致性測(cè)試規(guī)范
- GB/T 22484-2008城市公共汽電車客運(yùn)服務(wù)
- GB/T 14040-2007預(yù)應(yīng)力混凝土空心板
- 帶狀皰疹護(hù)理查房課件整理
- 奧氏體型不銹鋼-敏化處理
評(píng)論
0/150
提交評(píng)論