




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、西安電子科技大學(xué)單片機大作業(yè)1931學(xué)院:電子工程學(xué)院班級:02121X班姓 名: XXX學(xué) 號: (212XXX指導(dǎo)老師: XXX溫度控制系統(tǒng)設(shè)計、溫度控制系統(tǒng)設(shè)計發(fā)展歷史及意義在工業(yè)企業(yè)中 , 如何提高溫度控制對象的運行性能一直以來都是控制人員和現(xiàn)場技術(shù)人員努力解決的問題。 這類控制對象慣性大 ,滯后現(xiàn)象嚴(yán)重 ,存在很多不 確定的因素 , 難以建立精確的數(shù)學(xué)模型 , 從而導(dǎo)致控制系統(tǒng)性能不佳 , 甚至出現(xiàn)控 制不穩(wěn)定、失控現(xiàn)象。傳統(tǒng)的繼電器調(diào)溫電路簡單實用 , 但由于繼電器動作頻繁 ,可能會因觸點不良而影響正常工作??刂祁I(lǐng)域還大量采用傳統(tǒng)的PID控制方式, 但 PID 控制對象的模型難以建
2、立 , 并且當(dāng)擾動因素不明確時 , 參數(shù)調(diào)整不便仍是 普遍存在的問題。而采用數(shù)字溫度傳感器 DS18B20因其內(nèi)部集成了 A/D轉(zhuǎn)換器, 使得電路結(jié)構(gòu)更加簡單, 而且減少了溫度測量轉(zhuǎn)換時的精度損失, 使得測量溫度 更加精確。數(shù)字溫度傳感器DS18B2(只用一個引腳即可與單片機進行通信,大大減少了接線的麻煩,使得單片機更加具有擴展性。由于DS18B2(芯片的小型化, 更加可以通過單跳數(shù)據(jù)線就可以和主電路連接,故可以把數(shù)字溫度傳感器DS18B20故成探頭,探入到狹小的地方,增加了實用性。更能串接多個數(shù)字溫度 傳感器DS18B2(進行范圍的溫度檢測。二、DS18B2(工作原理DS18B20勺讀寫時序
3、和測溫原理與DS182(相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由2s減為750ms DS18B20測 溫原理如圖 3 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小, 用于產(chǎn)生 固定頻率的脈沖信號送給計數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改 變,所產(chǎn)生的信號作為計數(shù)器 2的脈沖輸入。計數(shù)器 1和溫度寄存器被預(yù)置在 -55 C所對應(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ù),如此循
4、環(huán)直到計數(shù)器 2計數(shù)到 0 時,停止溫度寄存器值的累加, 此時溫度寄 存器中的數(shù)值即為所測溫度。斜率累加器用于補償和修正測溫過程中的非線性, 其輸出用于修正計數(shù)器 1 的預(yù)置值。三、系統(tǒng)軟件流程圖四、電路原理圖1.DS18B20溫度傳感器檢測電路溫度采集通過數(shù)字化的溫度傳感器 DS18B20通過QD接向單片機的P3.0 口。DS18B2(溫度傳感器電路如圖5.3所示。QD GM:1DE.L9B?0II 12.二極管顯示報警電路二極管顯示報警電路如下圖所示。通過單片機的P3.4和P3.5兩個端口送出,P3.4P3.5D2REELED _d/,GREETsr-LEDR6510R7510采用的是高電
5、平驅(qū)動,使其發(fā)光發(fā)出警告。二極管顯示電路3.整體原理圖RP ybH ORP J、4工飛 主站卄卞丁和 *-XI .'' 叩戶uiPT*?KTU>5S£LeIh右ri mPl i.T»MlPgD|?Rm±q ; rj gr27CUJrnp iiwKiAM ;_ii -臨E3 -3 鼻 *! Wt我牛 2 W2走-卜 m ThnMsHZhZKJTP*mmv E IH ii'Wi n -ai“Mil 2 M 坤:L:it*P1jLTZ"FT! ri 馴.ffi_ 1 M' tl_五、程序設(shè)計1)讀出溫度子程序5.10所示。
6、讀出溫度子程序的主要功能是讀出 RAM中的9字節(jié),在讀出時需進行CRC校驗, 校驗有錯時不進行溫度數(shù)據(jù)的改寫,程序流程圖如圖DS18B20的各個命令對時序的要求特別嚴(yán)格,所以必須按照所要求的時序才能 達到預(yù)期的目的,同時,要注意讀進來的是高位在后低位在前,共有 12位數(shù), 小數(shù)4位,整數(shù)7位,還有一位符號位。as. 10瀆出溫度子鋰序.讀出溫度子程序的主要功能是讀出 RAM中的9字節(jié),在讀出時需進行CR(校驗, 校驗有錯時不進行溫度數(shù)據(jù)的改寫,程序流程圖如圖5.10所示。DS18B20的各個命令對時序的要求特別嚴(yán)格,所以必須按照所要求的時序才能 達到預(yù)期的目的,同時,要注意讀進來的是高位在后低
7、位在前,共有12位數(shù),小數(shù)4位,整數(shù)7位,還有一位符號位。2)寫入子程序?qū)懭胱映绦虻牧鞒虉D如5.11所示。六、主要程序#include<reg51.h> #include<intrins.h>#define uchar unsigned char #define uint unsigned int#define duan P0 #define wei P1 sbit DSPORT=P3A7;void Delay1ms(uint y);void Delay5ms();uchar Ds18b20Init();void Ds18b20WriteByte(uchar dat);
8、uchar Ds18b20ReadByte();void Ds18b20ChangTemp();void Ds18b20ReadTempCom();int Ds18b20ReadTemp();void DigDisplay();void LcdDisplay(int temp);uchar code segta10=0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;unsigned char DisplayData8;void main()while(1)LcdDisplay(Ds18b20ReadTemp();void Delay1ms(ui
9、nt y)uint x;for( ; y>0; y-)for(x=110; x>0; x-);/* 函數(shù)名: Ds18b20Init初始化* 函數(shù)功能初始化成功返回 1,失敗返回 0*/uchar Ds18b20Init()uchar i;DSPORT = 0;/ 將總線拉低 480us960usi = 70;while(i-);/延時 642usDSPORT = 1;總線拉低/然后拉高總線,如果 DS18B2做出反應(yīng)會將在15US60US后i = 0;while(DSPORT) / 等待 DS18B2(拉低總線Delay1mS(1);i+;if(i>5)/ 等待 >5
10、MSreturn 0;/ 初始化失敗return 1;/ 初始化成功/* 函 數(shù) 名 : DS18b20WriteByte* 函數(shù)功能向18B20寫入一個字節(jié): com*/ void Ds18b20WriteByte(uchar dat)uint i, j;for(j=0; j<8; j+)DSPORT = 0;/ 每寫入一位數(shù)據(jù)之前先把總線拉低 1usi+;DSPORT = dat & 0x01; / 然后寫入一個數(shù)據(jù),從最低位開始i=6;while(i-);/延時68us,持續(xù)時間最少60usDSPORT = 1; /然后釋放總線,至少1us給總線恢復(fù)時間才能接著寫入第二個數(shù)
11、 dat >>= 1;/* 函 數(shù) 名 : Ds18b20ReadByte* 函數(shù)功能讀取一個字節(jié)* 輸 入 : com*/ uchar Ds18b20ReadByte()uchar byte, bi;uint i, j;for(j=8; j>0; j-)DSPORT = 0;/ 先將總線拉低 1us i+;DSPORT = 1;/ 然后釋放總線i+;i+;/ 延時 6us 等待數(shù)據(jù)穩(wěn)定bi = DSPORT; / 讀取數(shù)據(jù),從最低位開始讀取/* 將 byte 左移一位,然后與上右移 7位后的 bi ,注意移動之后移掉那位補 0。*/byte = (byte >>
12、 1) | (bi << 7);i = 4;/讀取完之后等待48US再接著讀取下一個數(shù)while(i-);retUrn byte;/* 函數(shù)名: Ds18b20ChangTemp* 函數(shù)功能讓18b20開始轉(zhuǎn)換溫度: com*/ void Ds18b20ChangTemp()Ds18b20Init();Delay1ms(1);Ds18b20WriteByte(0xcc);/跳過R0操作命令Ds18b20WriteByte(0x44);/ 溫度轉(zhuǎn)換命令/Delay1ms(100); / 等待轉(zhuǎn)換成功,而如果你是一直刷著的話,就不用這個延時了/* 函數(shù)名: Ds18b20ReadTem
13、pCom* 函數(shù)功能發(fā)送讀取溫度命令: com*/void Ds18b20ReadTempCom()Ds18b20Init();Delay1ms(1);Ds18b20WriteByte(0xcc);/跳過ROM操作命令Ds18b20WriteByte(0xbe);/ 發(fā)送讀取溫度命令/* 函數(shù)名: Ds18b20ReadTemp* 函數(shù)功能讀取溫度: com*/int Ds18b20ReadTemp()int temp = 0;uchar tmh, tml;Ds18b20ChangTemp();/先寫入轉(zhuǎn)換命令Ds18b20ReadTempCom();/然后等待轉(zhuǎn)換完后發(fā)送讀取溫度命令tml
14、= Ds18b20ReadByte();/讀取溫度值共 16位,先讀低字節(jié)tmh = Ds18b20ReadByte();/再讀高字節(jié)temp = tmh;temp <<= 8;temp |= tml;return temp;/* 函數(shù)名: LcdDisplay()* 函數(shù)功能: LCD 顯示讀取到的溫度*/lcd 顯示*/ void LcdDisplay(int temp)float tp;if(temp< 0)/ 當(dāng)溫度值為負(fù)數(shù)DisplayData0 = 0x40;/ 因為讀取的溫度是實際溫度的補碼,所以減 1,再取反求出原碼 temp=temp-1;temp=temp
15、;tp=temp;temp=tp*0.0625*100+0.5;/留兩個小數(shù)點就*100 , +0.5是四舍五入,因為C語言浮點數(shù)轉(zhuǎn)換為整型的時 候把小數(shù)點/ 后面的數(shù)自動去掉,不管是否大于 0.5 ,而+0.5之后大于 0.5的就是進 1了, 小于0.5的就/ 算由 ?.5 ,還是在小數(shù)點后面。elseDisplayData0 = 0x00;tp=temp;/ 因為數(shù)據(jù)處理有小數(shù)點所以將溫度賦給一個浮點型變量/ 如果溫度是正的那么,那么正數(shù)的原碼就是補碼它本身temp=tp*0.0625*100+0.5;/留兩個小數(shù)點就*100,+0.5是四舍五入,因為C語言浮點數(shù)轉(zhuǎn)換為整型的時 候把小數(shù)點/ 后面的數(shù)自動去掉,不管是否大于 0.5 ,而+0.5之后大于 0.5的就是進 1了, 小于0.5的就/ 算加上 0.5 ,還是在小數(shù)點后面。DisplayData1 = segtatemp / 10000;DisplayData2 = segtatemp % 10000 / 1000;DisplayData3 = segtatemp % 1000 / 100 | 0x80;DisplayData4
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020英語試卷小學(xué)
- 統(tǒng)編版(2024)七年級上冊道德與法治《探究與分享+運用你的經(jīng)驗+單元思考與行動》 參考答案
- 熱力管網(wǎng)施工方案
- 廣西北流市2025屆中考生物考試模擬沖刺卷含解析
- 臨時施工便道合同范本
- 廠家采購原料合同范本
- 前臺文員的跨文化溝通能力提升計劃
- 加強市場定位與品牌策略的計劃
- 行業(yè)變化對團隊的影響計劃
- 提升企業(yè)安全管理水平的措施計劃
- 抵押個人汽車借款合同范本
- 統(tǒng)編版(2024)七年級下冊語文期末復(fù)習(xí):第一單元素養(yǎng)提升測試卷(含答案)
- Deepseek 學(xué)習(xí)手冊分享
- 電網(wǎng)工程設(shè)備材料信息參考價(2024年第四季度)
- 髖關(guān)節(jié)脫位2教學(xué)課件
- 耳式支座計算
- IMS基本信令流程課件
- 酒精擦拭試驗
- 供應(yīng)商社會準(zhǔn)則符合性自審問卷
- ERP項目建議書
- 4925095728國內(nèi)外中小學(xué)作業(yè)研究綜述
評論
0/150
提交評論