版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、溫度采集與顯示系統(tǒng)的設(shè)計(jì)溫度采集與顯示系統(tǒng)的設(shè)計(jì)姓名: 學(xué)號(hào):摘要:由于人體不能精準(zhǔn)的感受到環(huán)境中的溫度,而溫度采集系統(tǒng)能夠準(zhǔn)確、及時(shí)、全面地反映環(huán)境質(zhì)量現(xiàn)狀及發(fā)展趨勢(shì),因而本論文設(shè)計(jì)了基于8051單片機(jī)控制技術(shù)的溫度采集與顯示系統(tǒng)。該系統(tǒng)通過溫度傳感器將檢測(cè)到的溫度信號(hào)轉(zhuǎn)換成電壓信號(hào),該模擬量電壓經(jīng)8路AD0809輸出數(shù)字量電壓值送給單片機(jī)。根據(jù)AD值與溫度之間的關(guān)系利用查表和插值法得出溫度值。并且這些數(shù)值都能實(shí)時(shí)顯示在顯示屏上。1、 設(shè)計(jì)內(nèi)容及意義溫度采集與顯示系統(tǒng)在人們的日常生活中的應(yīng)用越來越廣泛,如花卉栽培溫濕度控制、大棚溫室控制系統(tǒng)、糧庫(kù)溫室控制系統(tǒng)、現(xiàn)代化居室溫濕度控制等等。隨著半
2、導(dǎo)體技術(shù)的不斷發(fā)展,熱敏電阻作為一種新型感溫元件應(yīng)用越來越廣泛。他具有體積小、靈敏度高、重量輕、熱慣性小、壽命長(zhǎng)以及價(jià)格便宜等優(yōu)點(diǎn)。單片機(jī)在測(cè)控系統(tǒng)中的作用是對(duì)信息進(jìn)行處理、運(yùn)算和發(fā)出控制命令等,但所要處理的信息是從外界拾取的,拾取的信號(hào)可以分為開關(guān)量和模擬量?jī)煞N。開關(guān)量只需放大、整形和電平轉(zhuǎn)換等處理后,即可直接送入單片機(jī)系統(tǒng)。但輸入量如果是模擬量,處理的復(fù)雜程度就大大地增加了,由于模擬輸入信號(hào)一般很微弱,需要進(jìn)行放大,對(duì)于一個(gè)測(cè)控范圍較大的儀器,還要有多級(jí)可變放大電路。另外,在放大有用信號(hào)的同時(shí),干擾信號(hào)也被同時(shí)放大,還要進(jìn)行必要的濾波處理。所以要設(shè)計(jì)出一個(gè)真正實(shí)用的單片機(jī)測(cè)控系統(tǒng),必須先設(shè)
3、計(jì)好適用的前向通道。根據(jù)被測(cè)對(duì)象輸出信號(hào)的類型、大小、數(shù)量不同,前向通道的結(jié)構(gòu)類型也各不相同。本系統(tǒng)基于51單片機(jī)設(shè)計(jì)的溫度采集與顯示系統(tǒng)是A/D轉(zhuǎn)換器、熱敏電阻溫度傳感器、LCD顯示屏及相應(yīng)接口的綜合應(yīng)用。2、 整體設(shè)計(jì)原理及方案圖2.1 整體系統(tǒng)框圖該系統(tǒng)是以NTC型熱敏電阻為傳感器的信號(hào)采集端,將溫度信號(hào)轉(zhuǎn)換成電壓信號(hào),再經(jīng)ADC0809進(jìn)行模數(shù)轉(zhuǎn)換,進(jìn)一步將電壓信號(hào)轉(zhuǎn)換成單片機(jī)可以處理的00HFFH數(shù)字信號(hào),并保證溫度與數(shù)字信號(hào)實(shí)時(shí)同步,經(jīng)單片機(jī)8051進(jìn)行數(shù)據(jù)處理(查表和線性插值法),再進(jìn)一步轉(zhuǎn)換成與實(shí)際溫度相符合的數(shù)字信號(hào),并在LCD顯示屏上實(shí)時(shí)跟蹤顯示。1、顯示模塊方案選擇:方案
4、一:數(shù)碼管顯示,采用動(dòng)態(tài)掃描的方式。優(yōu)點(diǎn)是編程容易,硬件電路調(diào)試簡(jiǎn)單,顯示兩部分也比較好控制。缺點(diǎn)是顯示的內(nèi)容不夠豐富,本系統(tǒng)需要實(shí)時(shí)顯示電壓AD值,放大后的十進(jìn)制值以及溫度值,實(shí)驗(yàn)臺(tái)上提供的數(shù)碼管數(shù)就達(dá)不到實(shí)時(shí)顯示的效果。方案二:用LCD液晶顯示器顯示,優(yōu)點(diǎn)是功耗低,還能顯示更多的字符,有著良好的人機(jī)界面,缺點(diǎn)是控制比較復(fù)雜。實(shí)驗(yàn)臺(tái)上提供的是OCMJ2*8的中文模塊系列液晶顯示器,內(nèi)含漢字字庫(kù)和英文字庫(kù),可以實(shí)漢字、ASCII碼的同屏顯示,能夠達(dá)到實(shí)時(shí)顯示的效果。2、 AD0809設(shè)計(jì)AD0809型8位MOS型A/D轉(zhuǎn)換器,可實(shí)現(xiàn)8路模擬信號(hào)的分時(shí)采集,片內(nèi)有8路模擬選通開關(guān),以及相應(yīng)的通道
5、地址鎖存用譯碼電路,其轉(zhuǎn)換時(shí)間為100微秒左右。圖2.2 AD0809邏輯圖由圖2.2可知,該輸出公式為:(實(shí)驗(yàn)臺(tái)上基準(zhǔn)電壓為5V)圖2.3 AD0809時(shí)序圖如圖2.3,其工作過程是:1) 在IN0IN7上可分別接上要測(cè)量轉(zhuǎn)換的8路模擬量信號(hào)。該系統(tǒng)只需要將熱敏電阻溫度傳感器的電壓輸出端接IN0。2) 將ADDAADDC端給上代表選擇測(cè)量通道的代碼。該系統(tǒng)選通通道0。3) 將ALE由低電平置為高電平,從而將ADDAADDC送進(jìn)的通道代碼鎖存,經(jīng)譯碼后通道0的模擬量送給內(nèi)部轉(zhuǎn)換單元。4) 給START一個(gè)正脈沖。當(dāng)上升沿時(shí),所有內(nèi)部寄存器清零。下降沿時(shí),開始進(jìn)行A/D轉(zhuǎn)換;在轉(zhuǎn)換期間,STAR
6、T保持低電平。5) EOC為轉(zhuǎn)換結(jié)束信號(hào)。在上述的A/D轉(zhuǎn)換期間,可以對(duì)EOC進(jìn)行不斷測(cè)量,當(dāng)EOC為高電平時(shí),表明轉(zhuǎn)換結(jié)束。否則,表明正在進(jìn)行A/D轉(zhuǎn)換。 6) 當(dāng)A/D轉(zhuǎn)換結(jié)束后,將OE設(shè)置為1,這時(shí)D0D7的數(shù)據(jù)便可以讀取了。OE0,D0D7輸出端為高阻態(tài),OE1,D0D7端輸出轉(zhuǎn)換的數(shù)據(jù)。3、數(shù)據(jù)處理部分-查表和線性插值法熱敏電阻為一種阻值隨溫度變化的電阻,按其變化關(guān)系可分為兩類:正溫度系數(shù)(簡(jiǎn)稱PTC)和負(fù)溫度系數(shù)(簡(jiǎn)稱NTC)。PTC元件的阻值隨溫度的上升而上升,NTC元件的阻值隨溫度的上升而下降。本模塊中使用的為NTC型熱敏電阻,在常溫(25)下其阻值為10K,其阻值與溫度的關(guān)系
7、、阻值與電壓的關(guān)系、電壓值與電壓AD值得關(guān)系如下表所示:溫度()-30-20-100102025304050阻值(K)176.096.2954.8532.4119.8012.4710.008.0665.3423.618電壓(V)0.268817200.470411130.771010021.178967221.677852342.225189142.52.767629803.259027503.67161110電壓AD1424396086114128142167188溫度()60708090100110120130140150阻值(K)2.5021.7631.2650.92260.68340.
8、51580.39420.30480.23820.1881電壓(V)3.999360104.250616334.438526404.577664654.680158004.754749994.810375014.852107754.883670954.90768641電壓AD205218228235240244247249250252在上面列的表格中,溫度與阻值的關(guān)系是已知的,電壓是根據(jù)式3-1得出的,電壓的AD值是根據(jù)式2-1得出的。 電壓V與電壓AD的關(guān)系: (2-1)圖2.4 電壓AD值與溫度關(guān)系折線圖根據(jù)圖2.4可用線性插值法在線性區(qū)間建立函數(shù)關(guān)系,隨著電壓的改變輸出溫度值。3、 硬件電
9、路圖圖3.1 熱敏電阻溫度采集電路圖圖3.1中J1、J2、J3分別對(duì)應(yīng)于模塊上的V1、Vzero、Vout插孔,R3對(duì)應(yīng)與 ZERO電位器,用于偏置電壓調(diào)節(jié);R9對(duì)應(yīng)于GAIN電位器,用于增益調(diào)節(jié)。 使用時(shí),可先將電路增益調(diào)節(jié)為1,具體做法如下:調(diào)節(jié)ZERO電位器,使Vzero=0V,用萬用表分別測(cè)量V1、Vout端電壓,調(diào)節(jié)GAIN電位器,使V1=Vout,此時(shí)電路增益為1。由此可得出電壓與電阻之間的關(guān)系: (3-1)4、 程序設(shè)計(jì)流程圖圖4.1 主函數(shù)程序流程圖 圖4.2 LCD顯示流程圖圖4.3 A/D轉(zhuǎn)換流程圖圖4.3 中斷服務(wù)程序5、 問題和不足出現(xiàn)的問題及解決方法:在數(shù)據(jù)處理部分,
10、之前是建立電壓值V與溫度值T的關(guān)系來顯示溫度,發(fā)現(xiàn)再怎么細(xì)分線性部分,輸出的溫度誤差還是很大,而且顯示的溫度值一直在跳變。于是決定找電壓值A(chǔ)D與溫度之間的關(guān)系,這樣減小了誤差,顯示的溫度值也幾乎不再跳變了。不足之處:實(shí)驗(yàn)臺(tái)提供的可調(diào)輸出電壓的范圍是0-4.5V,正確來說顯示的溫度范圍應(yīng)為-35至90。這樣選定的線性區(qū)間才能較小誤差,更趨近與表格提供的數(shù)值。所以,更細(xì)分的取線性部分得到的數(shù)值會(huì)更好。6、 總結(jié)通過此次實(shí)習(xí),使我對(duì)所學(xué)知識(shí)進(jìn)行了實(shí)踐。掌握了A/D轉(zhuǎn)換芯片性能及編程方法、單片機(jī)系統(tǒng)中擴(kuò)展LCD顯示的方法以及溫度傳感器和LCD的工作原理及綜合應(yīng)用。在數(shù)據(jù)處理部分學(xué)會(huì)了線性插值法。在編寫
11、程序時(shí),也發(fā)現(xiàn)對(duì)一些程序中的函數(shù)的處理不夠合理,在自己的多次運(yùn)行下,還是能夠?qū)崿F(xiàn)溫度監(jiān)控的功能。本次單片機(jī)實(shí)訓(xùn)讓我很有成就感,并對(duì)以前所學(xué)的單片機(jī)知識(shí)做了一個(gè)小結(jié)。附件#include <reg51.h>#include <stdio.h>#include <intrins.h>#include <absacc.h>#define uchar unsigned char #define ulong unsigned long #define uint unsigned int #define Port_address XBYTE0X0CFA0sb
12、it REQ=P35;/請(qǐng)求信號(hào),高電平有效sbit BUSY=P34;/忙檢測(cè)sbit EOC=P32;/轉(zhuǎn)換結(jié)束信號(hào),EOC=1-轉(zhuǎn)換結(jié)束,EOC=0-正在轉(zhuǎn)換 void delay1ms(uint time) /延遲子程序1uint ii;uint jj;for (ii=0;ii<time;ii+)for(jj=0;jj<200;jj+);void delay(uint time) /延遲子程序2uint ii;uint jj;for (ii=0;ii<time;ii+) for(jj=0;jj<110;jj+); void write_dat(uchar dat
13、) /OCMJ2X8寫時(shí)序操作if(BUSY=0)delay1ms(1);P1=dat;REQ=1;delay1ms(1);REQ=0;void write_chinese(uchar x,uchar y,uchar h,uchar l) /OCMJ2X8寫漢字操作write_dat(0xF0);/寫漢字命令write_dat(x);/寫橫坐標(biāo)(取值范圍:00-07,02-09,00-09)write_dat(y);/寫縱坐標(biāo)(取值范圍:00-01,00-03,00-04)write_dat(h);/寫漢字碼-高位write_dat(l);/寫漢字碼-低位 void write_ASCII_8
14、x16(uchar x,uchar y,uchar a) /OCMJ2X8寫ASCII字符(8x16)操作write_dat(0xF9);/寫ASCII字符(8x16)命令write_dat(x);/寫橫坐標(biāo)(取值范圍:00-0F,04-13,00-13)write_dat(y);/寫縱坐標(biāo)(取值范圍:00-1F,00-3F,00-4F)write_dat(a);/寫ASCII碼 void write_point(uchar x,uchar y) /OCMJ2X8 畫點(diǎn)(1x1)操作write_dat(0xF2);/寫畫點(diǎn)命令write_dat(x);/寫橫坐標(biāo)(取值范圍:00-7F,20-9
15、F,00-9F)write_dat(y);/寫縱坐標(biāo)(取值范圍:00-40,00-40,00-40) void clear_lcd() /OCMJ2X8 清屏操作write_dat(0xF4);void lcd_init()REQ=0;BUSY=1;clear_lcd(); /*電壓AD顯示函數(shù)*/void display_digit(uint date) /分離任意三位數(shù),給LCD送數(shù)uchar bai,shi,ge;bai=date/100;shi=date%100/10;ge=date%10; write_ASCII_8x16(0,16,0x41);/顯示"AD"wr
16、ite_ASCII_8x16(1,16,0x44);write_ASCII_8x16(2,16,0x3A);/顯示":"write_ASCII_8x16(3,16,0x30+bai);write_ASCII_8x16(4,16,0x30+shi);write_ASCII_8x16(5,16,0x30+ge);/*電壓V顯示函數(shù)*/void display_voltage(uint date) /分離任意五位數(shù),給LCD送數(shù)uchar wan,qian,bai,shi,ge;wan=date/10000;qian=date%10000/1000;bai=date%10000%
17、1000/100;shi=date%10000%1000%100/10;ge=date%10;write_chinese(0,0,18,41); /顯示"采集電壓" write_chinese(1,0,28,15);write_chinese(2,0,21,71);write_chinese(3,0,49,25);write_ASCII_8x16(8,0,0x3A);/顯示":"write_ASCII_8x16(9,0,0x30+wan); write_ASCII_8x16(10,0,0x2E);/顯示小數(shù)點(diǎn)write_ASCII_8x16(11,0,0
18、x30+qian);write_ASCII_8x16(12,0,0x56);/顯示電壓符號(hào)V/*溫度值顯示函數(shù)*/void display_temperature(int date) /分離任意四位數(shù),方便給LCD送數(shù)uchar qian,bai,shi,ge;write_chinese(3,1,46,34);write_chinese(4,1,22,40);/顯示"溫度"if(date>=0)qian=date/1000;bai=date%1000/100;shi=date%1000%100/10;ge=date%10; write_ASCII_8x16(10,16
19、,0x2b);/顯示正號(hào)+write_ASCII_8x16(11,16,0x30+qian); write_ASCII_8x16(12,16,0x30+bai);write_ASCII_8x16(13,16,0x2E);/顯示小數(shù)點(diǎn)write_ASCII_8x16(14,16,0x30+shi);write_ASCII_8x16(15,16,0x30+ge);if(date<0)date=-date;qian=date/1000;bai=date%1000/100;shi=date%1000%100/10;ge=date%10;write_ASCII_8x16(10,16,0x2d);/
20、顯示負(fù)號(hào)-write_ASCII_8x16(11,16,0x30+qian);write_ASCII_8x16(12,16,0x30+bai);write_ASCII_8x16(13,16,0x2E);/顯示小數(shù)點(diǎn)write_ASCII_8x16(14,16,0x30+shi);write_ASCII_8x16(15,16,0x30+ge);/*中斷初始化函數(shù)*/void config(void)IT0=1; /INT0下降沿中斷EX0=1; /允許INT1中斷EA=1;void AD_init(void)Port_address=0x00;/虛寫一次,啟動(dòng)通道0/*AD轉(zhuǎn)換函數(shù)*/uchar
21、 AD(void)uchar ad_date; /保存經(jīng)AD轉(zhuǎn)換后的數(shù)據(jù)ad_date=Port_address;return ad_date; /返回?cái)?shù)據(jù)/*溫度處理函數(shù)*/int deal_wendu()int v,t;uint da;da=AD();v=da*195;if(da>=14&&da<=24)t=da*100-4400;if(da>=24&&da<=39)t=67*da-3600; if(da>=39&&da<=60)t=48*da-2800;if(da>=60&&da<=86)t=38*da-2300; if(da>=86&&da<=142)t=36*da-2100; if(d
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度商業(yè)樓宇外墻清洗承包合同4篇
- 二零二五年度物流運(yùn)輸代理銷售合同樣本4篇
- 二零二五年度獼猴桃樹種子產(chǎn)業(yè)投資基金合作與投資合同4篇
- 2025年度橙子批發(fā)市場(chǎng)直銷合作合同范本4篇
- 2025年度出租車車輛租賃保險(xiǎn)理賠服務(wù)合同4篇
- 二零二五年度住宅小區(qū)地面停車位使用權(quán)轉(zhuǎn)讓合同4篇
- 二零二五版電子商務(wù)平臺(tái)安全審查合同3篇
- 二零二五年度商業(yè)連鎖企業(yè)代理記賬專項(xiàng)服務(wù)合同4篇
- 2025年度儲(chǔ)罐安裝與物聯(lián)網(wǎng)管理系統(tǒng)合同4篇
- 2025年度機(jī)械設(shè)備銷售居間服務(wù)合同4篇
- 2024版塑料購(gòu)銷合同范本買賣
- 【高一上】【期末話收獲 家校話未來】期末家長(zhǎng)會(huì)
- JJF 2184-2025電子計(jì)價(jià)秤型式評(píng)價(jià)大綱(試行)
- GB/T 44890-2024行政許可工作規(guī)范
- 有毒有害氣體崗位操作規(guī)程(3篇)
- 兒童常見呼吸系統(tǒng)疾病免疫調(diào)節(jié)劑合理使用專家共識(shí)2024(全文)
- 2025屆山東省德州市物理高三第一學(xué)期期末調(diào)研模擬試題含解析
- 《華潤(rùn)集團(tuán)全面預(yù)算管理案例研究》
- 2024-2025高考英語(yǔ)全國(guó)卷分類匯編之完型填空(含答案及解析)
- 二年級(jí)下冊(cè)加減混合豎式練習(xí)360題附答案
- 蘇教版五年級(jí)數(shù)學(xué)下冊(cè)解方程五種類型50題
評(píng)論
0/150
提交評(píng)論