版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 智</b></p><p><b> 能</b></p><p><b> 溫</b></p><p><b> 度</b></p><p><b> 測(cè)</b></p><p
2、><b> 量</b></p><p><b> 儀</b></p><p><b> 課</b></p><p><b> 程</b></p><p><b> 設(shè)</b></p><p>&
3、lt;b> 計(jì)</b></p><p><b> 報(bào)</b></p><p><b> 告</b></p><p> 專 業(yè): </p><p> 班 級(jí): </p><p> 姓 名:
4、 </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p> ----智能溫度測(cè)量?jī)x</p><p> 摘要:本文主要介紹了智能溫度測(cè)量?jī)x的設(shè)計(jì),包括硬件和軟件的設(shè)計(jì)。先對(duì)該測(cè)量?jī)x進(jìn)行概括性介紹,然后介紹該測(cè)量?jī)x在硬件設(shè)計(jì)上的主要器件:“Pt100熱
5、電阻”、AT89C51單片機(jī)和LCD顯示器以及描述測(cè)量?jī)x的總體結(jié)構(gòu)原理。在本設(shè)計(jì)中,是以鉑電阻PT100作為溫度傳感器,采用恒流測(cè)溫的方法,通過單片機(jī)進(jìn)行控制,用放大器、A/D轉(zhuǎn)換器進(jìn)行溫度信號(hào)的采集??傮w來說,該設(shè)計(jì)是切實(shí)可行的。</p><p> 關(guān)鍵詞:溫度;Pt100熱電阻;AT89C51單片機(jī);LCD顯示器。</p><p> 引言:溫度是日常生活、工業(yè)、醫(yī)學(xué)、環(huán)境保護(hù)、化工
6、、石油等領(lǐng)域最常遇到的一個(gè)物理量,也是工業(yè)控制中主要的被控參數(shù)之一。對(duì)溫度的測(cè)量與控制在現(xiàn)代工業(yè)中也是運(yùn)用的越來越廣泛。而傳感器主要用于測(cè)量和控制系統(tǒng),它的性能好壞直接影響系統(tǒng)的性能。因此,不僅必須掌握各類傳感器的結(jié)構(gòu)、原理及其性能指標(biāo),還必須懂得傳感器經(jīng)過適當(dāng)?shù)慕涌陔娐氛{(diào)整才能滿足信號(hào)的處理、顯示和控制的要求,而且只有通過對(duì)傳感器應(yīng)用實(shí)例的原理和智能傳感器實(shí)例的分析了解,才能將傳感器和信息通信與信息處理結(jié)合起來,適應(yīng)傳感器的生產(chǎn)、研制
7、、開發(fā)和應(yīng)用。另一方面,傳感器的被測(cè)信號(hào)來自于各個(gè)應(yīng)用領(lǐng)域,每個(gè)領(lǐng)域都為了改革生產(chǎn)力、提高工效和時(shí)效,各自都在開發(fā)研制適合應(yīng)用的傳感器,于是種類繁多的新型傳感器及傳感器系統(tǒng)不斷涌現(xiàn)。</p><p> 溫度傳感器是其中重要的一類傳器。其發(fā)展速度之快,以及其應(yīng)用之廣。并且還有很大潛力為了提高對(duì)傳感器的認(rèn)識(shí)和了解,尤其是對(duì)溫度傳感器的深入研究以及其用法與用途,基于實(shí)用、廣泛和典型的原則而設(shè)計(jì)了本系統(tǒng)。</p&
8、gt;<p> 本文利用單片機(jī)結(jié)合溫度傳感器技術(shù)而開發(fā)設(shè)計(jì)了這一溫度測(cè)量系統(tǒng)。文中將傳感器理論與單片機(jī)實(shí)際應(yīng)用有機(jī)結(jié)合,詳細(xì)地講述了利用熱電阻作為溫度傳感器來測(cè)量實(shí)時(shí)的溫度,以及實(shí)現(xiàn)熱電轉(zhuǎn)換的原理過程。</p><p> 本設(shè)計(jì)系統(tǒng)包括溫度傳感器,信號(hào)放大電路,A/D轉(zhuǎn)換模塊,數(shù)據(jù)處理與控制模塊,溫度顯示五個(gè)部分。文中對(duì)每個(gè)部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。整個(gè)系統(tǒng)的核心是進(jìn)行溫度測(cè)量與顯示,完成
9、了課題所有要求。</p><p> Pt100溫度傳感器</p><p> 溫度傳感器從使用的角度大致可分為接觸式和非接觸式兩大類,前者是讓溫度傳感器直接與待測(cè)物體接觸,而后者是使溫度傳感器與待測(cè)物體離開一定的距離,檢測(cè)從待測(cè)物體放射出的紅外線,達(dá)到測(cè)溫的目的。在接觸式和非接觸式兩大類溫度傳感器中,相比運(yùn)用多的是接觸式傳感器,非接觸式傳感器一般在比較特殊的場(chǎng)合才使用,目前得到廣泛使用的
10、接觸式溫度傳感器主要有熱電式傳感器,其中將溫度變化轉(zhuǎn)換為電阻變化的稱為熱電阻傳感器,將溫度變化轉(zhuǎn)換為熱電勢(shì)變化的稱為熱電偶傳感器。</p><p> 熱電阻傳感器可分為金屬熱電阻式和半導(dǎo)體熱電阻式兩大類,前者簡(jiǎn)稱熱電阻,后者簡(jiǎn)稱熱敏電阻。常用的熱電阻材料有鉑、銅、鎳、鐵等,它具有高溫度系數(shù)、高電阻率、化學(xué)、物理性能穩(wěn)定、良好的線性輸出特性等,常用的熱電阻如Pt100、Pt1000等。近年來各半導(dǎo)體廠商陸續(xù)開發(fā)了
11、數(shù)字式的溫度傳感器,如DALLAS公司DS18B20,MAXIM公司的MAX6576、MAX6577,ADI公司的AD7416等,這些芯片的顯著優(yōu)點(diǎn)是與單片機(jī)的接口簡(jiǎn)單,如DS18B20該溫度傳感器為單總線技術(shù),MAXIM公司的2種溫度傳感器一個(gè)為頻率輸出,一個(gè)為周期輸出,其本質(zhì)均為數(shù)字輸出,而ADI公司的AD7416的數(shù)字接口則為近年也比較流行的I2C總線,這些本身都帶數(shù)字接口的溫度傳感器芯片給用戶帶來了極大的方便,但這類器件的最大缺
12、點(diǎn)是測(cè)溫的范圍太窄,一般只有-55~+125℃,而且溫度的測(cè)量精度都不高,好的才±0.5℃,一般有±2℃左右,因此在高精度的場(chǎng)合不太滿足用戶的需要。</p><p> 熱電偶是目前接觸式測(cè)溫中應(yīng)用也十分廣泛的熱電式傳感器,它具有結(jié)構(gòu)簡(jiǎn)單、制造方便、測(cè)溫范圍寬、熱慣性小、準(zhǔn)確度高、輸出信號(hào)便于遠(yuǎn)傳等優(yōu)點(diǎn)。常用的熱電偶材料有鉑銠-鉑、銥銠-銥、鎳鐵-鎳銅、銅-康銅等,各種不同材料的熱電偶使用在不
13、同的測(cè)溫范圍場(chǎng)合。熱電偶的使用誤差主要來自于分度誤差、延伸導(dǎo)線誤差、動(dòng)態(tài)誤差以及使用的儀表誤差等。</p><p> 非接觸式溫度傳感器主要是被測(cè)物體通過熱輻射能量來反映物體溫度的高低,這種測(cè)溫方法可避免與高溫被測(cè)體接觸,測(cè)溫不破壞溫度場(chǎng),測(cè)溫范圍寬,精度高,反應(yīng)速度快,既可測(cè)近距離小目標(biāo)的溫度,又可測(cè)遠(yuǎn)距離大面積目標(biāo)的溫度。目前運(yùn)用受限的主要原因一是價(jià)格相對(duì)較貴,二是非接觸式溫度傳感器的輸出同樣存在非線性的問
14、題,而且其輸出受與被測(cè)量物體的距離、環(huán)境溫度等多種其它因素的影響。</p><p> 本設(shè)計(jì)的要求是采用“Pt100”熱電阻,測(cè)溫范圍是-200~+600℃,精度0.5%,具體的型號(hào)選為WZP型鉑電阻。</p><p> AT89C51單片機(jī)</p><p> AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器(FPEROM—Flash Programm
15、able and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,A
16、T89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。</p><p><b> LCD顯示器</b></p><p> 液晶顯示器是一種采用了液晶控制透光度技術(shù)來實(shí)現(xiàn)色彩的顯示器。和CRT顯示器相比,LCD的優(yōu)點(diǎn)是很明顯的。由于通過控制是否透光來控制亮和暗,當(dāng)色彩不變時(shí),液晶也保持不變,這樣就無須考慮刷新率的
17、問題。對(duì)于畫面穩(wěn)定、無閃爍感的液晶顯示器,刷新率不高但圖像也很穩(wěn)定。LCD顯示器還通過液晶控制透光度的技術(shù)原理讓底板整體發(fā)光,所以它做到了真正的完全平面。</p><p><b> 系統(tǒng)總體設(shè)計(jì)介紹</b></p><p> 測(cè)溫的模擬電路是把當(dāng)前PT100熱電阻傳感器的電阻值,轉(zhuǎn)換為容易測(cè)量的電壓值,經(jīng)過放大器放大信號(hào)后送給A/D轉(zhuǎn)換器把模擬電壓轉(zhuǎn)為數(shù)字信號(hào)后傳
18、給單片機(jī)AT89C51,單片機(jī)再根據(jù)公式換算把測(cè)量得的溫度傳感器的電阻值轉(zhuǎn)換為溫度值,并將數(shù)據(jù)送出到LCD顯示器進(jìn)行顯示。</p><p> 本設(shè)計(jì)系統(tǒng)主要包括溫度信號(hào)采集單元,單片機(jī)數(shù)據(jù)處理單元,溫度顯示單元。其中溫度信號(hào)的數(shù)據(jù)采集單元部分包括溫度傳感器、溫度信號(hào)的獲取電路(采樣)、放大電路、A/D轉(zhuǎn)換電路。</p><p> 系統(tǒng)的總結(jié)構(gòu)框圖如圖1-1所示。</p>
19、<p> 1-1 系統(tǒng)的總結(jié)構(gòu)框圖</p><p> 本溫度測(cè)量系統(tǒng)設(shè)計(jì),是采用PT100溫度傳感器經(jīng)過放大和A/D轉(zhuǎn)換器送到單片機(jī)進(jìn)行控制溫度顯示。另外本系統(tǒng)還可以通過外接電路擴(kuò)展實(shí)現(xiàn)溫度報(bào)警功能,從而更好的實(shí)現(xiàn)溫度現(xiàn)場(chǎng)的實(shí)時(shí)控制。</p><p> 經(jīng)過多次的修改和調(diào)試測(cè)量,本設(shè)計(jì)基本符合設(shè)計(jì)要求,由于受人為因素和軟硬件的限制,系統(tǒng)難免不了帶來一些誤差,但通過調(diào)節(jié)和精確
20、計(jì)算可以減小誤差。</p><p> 通過本次溫度測(cè)量系統(tǒng)的設(shè)計(jì),我對(duì)溫度測(cè)量控制有了進(jìn)一步的熟悉和更深入的學(xué)習(xí)。在整個(gè)設(shè)計(jì)的過程中,本設(shè)計(jì)的重點(diǎn)和難點(diǎn)是:怎樣將PT100熱電阻的非電量信號(hào)轉(zhuǎn)換為單片機(jī)單片機(jī)能識(shí)別的電量信號(hào),其中的信號(hào)如何放大及放大倍數(shù)的確定等等。</p><p><b> 硬件設(shè)計(jì)</b></p><p> PT100
21、傳感器特性和測(cè)溫原理</p><p> 電阻式溫度傳感器(RTD, Resistance Temperature Detector)是指一種物 質(zhì)材料作成的電阻,它會(huì)隨溫度的改變而改變電阻值。</p><p> PT100溫度傳感器是一種以鉑(Pt)做成的電阻式溫度傳感器,屬于正電阻系 數(shù),其電阻阻值與溫度的關(guān)系可以近似用下式表示:</p><p> 在
22、0~600℃范圍內(nèi):</p><p> Rt =R0 (1+At+Bt2)</p><p> 在-200~0℃范圍內(nèi):</p><p> Rt =R0 (1+At+Bt2+C(t-100)t3)</p><p> 式中A、B、C 為常數(shù),</p><p> A=3.96847×10-3;</p
23、><p> B=-5.847×10-7;</p><p> C=-4.22×10-12;</p><p> 由于它的電阻—溫度關(guān)系的線性度非常好,因此在測(cè)量較小范圍內(nèi)其電阻和溫度變化的關(guān)系式如下:R=Ro(1+αT) </p><p> 其中α=0.00392, Ro為100Ω(在0℃的電阻值),T為華氏溫度,因
24、此鉑做成的電阻式溫度傳感器,又稱為PT100。</p><p> PT100溫度傳感器的測(cè)量范圍廣:-200℃~+600℃,偏差小,響應(yīng)時(shí)間短,還具有抗振動(dòng)、穩(wěn)定性好、準(zhǔn)確度高、耐高壓等優(yōu)點(diǎn),其得到了廣泛的應(yīng)用,本設(shè)計(jì)即采用PT100作為溫度傳感器。</p><p> 主要技術(shù)指標(biāo):1. 測(cè)溫范圍:-200~600攝氏度;2. 測(cè)溫精度:0.5攝氏度;3. 穩(wěn)定性:0.5攝氏度<
25、/p><p> Pt100是電阻式溫度傳感器,測(cè)溫的本質(zhì)其實(shí)是測(cè)量傳感器的電阻,通常是將電阻的變化轉(zhuǎn)換成電壓或電流等模擬信號(hào),然后再將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),再由處理器換算出相應(yīng)溫度。采用Pt100 測(cè)量溫度一般有兩種方法:</p><p> 1、設(shè)計(jì)一個(gè)恒流源通過Pt100 熱電阻,通過檢測(cè)Pt100 上電壓的變化來?yè)Q算出溫度;</p><p> 測(cè)溫原理:通過
26、運(yùn)放U1A將基準(zhǔn)電壓4.096V轉(zhuǎn)換為恒流源,電流流過Pt100時(shí)在其上產(chǎn)生壓降,再通過運(yùn)放U1B將該微弱壓降信號(hào)放大(圖中放大倍數(shù)為10),即輸出期望的電壓信號(hào),該信號(hào)可直接連AD轉(zhuǎn)換芯片。</p><p> 根據(jù)虛地概念“工作于線性范圍內(nèi)的理想運(yùn)放的兩個(gè)輸入端同電位”,運(yùn)放U1A的“+”端和“-”端電位V+=V-=4.096V;假設(shè)運(yùn)放U1A的輸出腳1對(duì)地電壓為Vo,根據(jù)虛斷概念,(0-V-)/R1+(Vo
27、-V-)/RPt100=0,因此電阻Pt100上的壓降VPt100=Vo-V-=V-*RPt100/R1,因V-和R1均不變,因此圖1虛線框內(nèi)的電路等效為一個(gè)恒流源流過一個(gè)Pt100電阻,電流大小為V- /R1,Pt100上的壓降僅和其自身變化的電阻值有關(guān)。</p><p> 設(shè)計(jì)及調(diào)試注意點(diǎn): </p><p> 1. 等效恒流源輸出的電流不能太大,以不超過1mA為準(zhǔn),以免電流大使得
28、Pt100電阻自身發(fā)熱造成測(cè)量溫度不準(zhǔn)確,試驗(yàn)證明,電流大于1.5mA將會(huì)有較明顯的影響。</p><p> 2. 運(yùn)放采用單一5V供電,如果測(cè)量的溫度波動(dòng)比較大,將運(yùn)放的供電改為±15V雙電源供電會(huì)有較大改善。</p><p> 3. 電阻R2、R3的電阻值取得足夠大,以增大運(yùn)放的U1B的輸入阻抗。</p><p> 圖1恒流源式測(cè)溫電路</
29、p><p> 由于封裝問題,實(shí)際原理圖如下:</p><p> 方案二:采用惠斯頓電橋,電橋的四個(gè)電阻中三個(gè)是恒定的,另一個(gè)用Pt100 熱電阻,當(dāng)Pt100電阻值變化時(shí),測(cè)試端產(chǎn)生一個(gè)電勢(shì)差,由此電勢(shì)差換算出溫度。</p><p> 測(cè)溫原理:電路采用TL431和電位器VR1調(diào)節(jié)產(chǎn)生4.096V的參考電源;采用R1、R2、VR2、Pt100構(gòu)成測(cè)量電橋(其中R1
30、=R2,VR2為100Ω精密電阻),當(dāng)Pt100的電阻值和VR2的電阻值不相等時(shí),電橋輸出一個(gè)mV級(jí)的壓差信號(hào),這個(gè)壓差信號(hào)經(jīng)過運(yùn)放LM324放大后輸出期望大小的電壓信號(hào),該信號(hào)可直接連AD轉(zhuǎn)換芯片。差動(dòng)放大電路中R3=R4、 R5=R6、放大倍數(shù)=R5/R3,運(yùn)放采用單一5V供電。</p><p> 設(shè)計(jì)及調(diào)試注意點(diǎn): </p><p> 1. 同幅度調(diào)整R1和R2的電阻值可以改變電
31、橋輸出的壓差大??; </p><p> 2. 改變R5/R3的比值即可改變電壓信號(hào)的放大倍數(shù),以便滿足設(shè)計(jì)者對(duì)溫度范圍的要求</p><p> 3. 放大電路必須接成負(fù)反饋方式,否則放大電路不能正常工作。</p><p> 4. VR2也可為電位器,調(diào)節(jié)電位器阻值大小可以改變溫度的零點(diǎn)設(shè)定,例如Pt100的零點(diǎn)溫度為0℃,即0℃時(shí)電阻為100Ω,當(dāng)電位器阻值調(diào)
32、至109.885Ω時(shí),溫度的零點(diǎn)就被設(shè)定在了25℃。測(cè)量電位器的阻值時(shí)須在沒有接入電路時(shí)調(diào)節(jié),這是因?yàn)榻尤腚娐泛鬁y(cè)量的電阻值發(fā)生了改變。</p><p> 5. 理論上,運(yùn)放輸出的電壓為輸入壓差信號(hào)×放大倍數(shù),但實(shí)際在電路工作時(shí)測(cè)量輸出電壓與輸入壓差信號(hào)并非這樣的關(guān)系,壓差信號(hào)比理論值小很多,實(shí)際輸出信號(hào)為4.096*(RPt100/(R1+RPt100)- RVR2/(R1+RVR2)) (1)式中
33、電阻值以電路工作時(shí)量取的為準(zhǔn)。 </p><p> 6. 電橋的正電源必須接穩(wěn)定的參考基準(zhǔn),因?yàn)槿绻苯覸CC的話,當(dāng)網(wǎng)壓波動(dòng)造成VCC發(fā)生波動(dòng)時(shí),運(yùn)放輸出的信號(hào)也會(huì)發(fā)生改變,此時(shí)再到以VCC未發(fā)生波動(dòng)時(shí)建立的溫度-電阻表中去查表求值時(shí)就不正確了,這可以根據(jù)式(1)進(jìn)行計(jì)算得知。</p><p> 圖2三線制接法橋式測(cè)溫電路</p><p><b>
34、 放大電路的設(shè)計(jì)</b></p><p> 本次放大電路我選用的是LM358,其內(nèi)部包括有兩個(gè)獨(dú)立的、高增益、內(nèi)部頻率補(bǔ)償?shù)碾p運(yùn)算放大器,適合于電源電壓范圍很寬的單電源使用,也適用于雙電源工作模式,在推薦的工作條件下,電源電流與電源電壓無關(guān)。它的使用范圍包括傳感放大器、直流增益模塊和其他所有可用單電源供電的使用運(yùn)算放大器的場(chǎng)合。</p><p> LM358特性(Featu
35、res): </p><p><b> 信號(hào)調(diào)理電路</b></p><p> 調(diào)理電路的作用是將來自于現(xiàn)場(chǎng)傳感器的信號(hào)變換成前向通道中A/D轉(zhuǎn)換器能識(shí)別的信號(hào),作為本系統(tǒng),由于溫度傳感器是熱電阻PT100,因此調(diào)理電路完成的是怎樣將與溫度有關(guān)的電阻信號(hào)變換成能被A/D轉(zhuǎn)換器接受的電壓信號(hào)。</p><p> A/D轉(zhuǎn)換器的選擇與設(shè)計(jì)
36、電路</p><p> 在我們所測(cè)控的信號(hào)中均是連續(xù)變化的物理量,通常需要用計(jì)算機(jī)對(duì)這些信號(hào)進(jìn)行處理,則需要將其轉(zhuǎn)換成數(shù)字量,A/D轉(zhuǎn)換器就是為了將連續(xù)變化的模擬量轉(zhuǎn)換成計(jì)算機(jī)能接受的數(shù)字量。根據(jù)A/D轉(zhuǎn)換器的工作原理,常用的A/D轉(zhuǎn)換器可分為兩種,雙積分式A/D轉(zhuǎn)換器和逐次逼近式A/D轉(zhuǎn)換器。</p><p> 1. 雙積分A/D轉(zhuǎn)換器工作原理</p><p>
37、; 2. 逐次逼近型A/D轉(zhuǎn)換器工作原理</p><p> 在本設(shè)計(jì)系統(tǒng)中,為了將模擬量溫度轉(zhuǎn)換成數(shù)字量,采用德州儀器公司生產(chǎn)的4通道12位串行輸出采樣模數(shù)轉(zhuǎn)換器ADS7841。</p><p> 具體連線如下圖所示:</p><p><b> 單片機(jī)控制電路</b></p><p> 本設(shè)計(jì)是采用AT89C5
38、1單片機(jī)作為主控電路,AT89C51單片機(jī)是Atmel公司的產(chǎn)品,與Intel 公司的MCS51系列兼容。在AT89C51單片機(jī)內(nèi)部有作為程序存儲(chǔ)器的Flash存儲(chǔ)器,其容量為4KB,可以承受不低于1000次的反復(fù)擦寫,調(diào)試比較方便。其中P1口為A/D轉(zhuǎn)換器的通信端口,P2口為按鍵控制,P0口為L(zhǎng)CD的數(shù)據(jù)端口,具體電路圖如下:</p><p><b> 按鍵和顯示電路</b></p
39、><p> 本次設(shè)計(jì)使用4x4矩陣鍵盤,將其行線以及列線接到單片機(jī)的P2口,其中列線接上拉電阻然后在通過異或邏輯門在接至單片機(jī)的P2.0到P2.3口。具體連線如下圖所示:</p><p><b> 顯示電路</b></p><p> 本次設(shè)計(jì)使用LCD12864來顯示溫度采集結(jié)果,其中將LCD的數(shù)據(jù)口接入單片機(jī)的P0口,具體接線如下圖所示:&
40、lt;/p><p><b> 軟件設(shè)計(jì)</b></p><p><b> 系統(tǒng)軟件設(shè)計(jì)說明</b></p><p> 進(jìn)行微機(jī)測(cè)量控制系統(tǒng)設(shè)計(jì)時(shí),除了系統(tǒng)硬件設(shè)計(jì)外,大量的工作就是如何根據(jù)每個(gè)測(cè)量對(duì)象的實(shí)際需要設(shè)計(jì)應(yīng)用程序。因此,軟件設(shè)計(jì)在微機(jī)測(cè)量控制系統(tǒng)設(shè)計(jì)中占重要地位。對(duì)于本系統(tǒng),軟件設(shè)計(jì)更為重要。</p>
41、;<p> 在單片機(jī)測(cè)量控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過程控制兩個(gè)基本類型。數(shù)據(jù)處理包括:數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等。過程控制程序主要是使單片機(jī)按一定的方法進(jìn)行計(jì)算,然后再輸出,以便達(dá)到測(cè)量控制目的。</p><p> 軟件設(shè)計(jì)主要是對(duì)溫度進(jìn)行采集、顯示,通過按鍵操作,進(jìn)行時(shí)間的設(shè)置與修改。因此,整個(gè)軟件可分為溫度采集子程序、時(shí)鐘讀取程序、按鍵子程序、顯示子程序、及系統(tǒng)主程序。<
42、/p><p><b> 軟件的有關(guān)算法</b></p><p> 1、最小二乘理論獲取溫度―電阻公式</p><p> 根據(jù)誤差理論,我們要獲得較高精度的溫度測(cè)量值,辦法一般有2個(gè),要么采用查表法,要么建立高精度的數(shù)學(xué)模型。如果用查表法,主要有2個(gè)問題,如果要提高測(cè)量精度,則需要建立大量的表格,而且得提前做大量得試驗(yàn)來進(jìn)行多點(diǎn)校正,還有一個(gè)問
43、題是程序的通用性差,這臺(tái)儀器上校正好得數(shù)據(jù)可能在另一臺(tái)上不合適。而采用已知的分度表,建立數(shù)學(xué)模型,然后通過工程量(標(biāo)度)變換,通過測(cè)量A/D轉(zhuǎn)換的結(jié)果后計(jì)算得到。這里我們考慮第2種方法的優(yōu)點(diǎn),首先采用分段的方法,將測(cè)量范圍分段,然后查出該段的數(shù)學(xué)模型的各個(gè)系數(shù),然后計(jì)算出溫度值,這里,由于時(shí)間的關(guān)系,我們對(duì)整個(gè)測(cè)量范圍分了3段,分別為0-49℃、50-70℃、71-100℃,利用分度表進(jìn)行離線的數(shù)學(xué)擬合,得到各段的數(shù)學(xué)模型系數(shù)。同時(shí),可
44、通過再將標(biāo)度值代入可粗略估計(jì)在各個(gè)測(cè)量段內(nèi)的最大誤差值。</p><p> 我們通過最小二乘法進(jìn)行線性擬合,得到如下的數(shù)學(xué)模型為:</p><p> T1=2.5772R-257.7708 0-49℃</p><p> T2=2.6366R-267.01 50-70℃</p><p> T3=2.7206R-281
45、.90 71-100℃</p><p> 上述3個(gè)數(shù)學(xué)模型中,最大的理論誤差值都小于0.5℃,能夠滿足精度要求,實(shí)際上如果有足夠的時(shí)間,我們完全可以分得再細(xì)一些,這樣理論的誤差將會(huì)變得更小。</p><p> 2、標(biāo)度變換公式的獲取</p><p> 根據(jù)上述的線性擬合結(jié)果:T=A·R-B,這里的A、B是上述不同溫度段的系數(shù),而R值由于在
46、輸出為0V時(shí),實(shí)際上有個(gè)對(duì)應(yīng)于100歐姆的偏置電路,因此根據(jù)R-R0=U/I,而I=2.500V/1.500K,而AD/U/G=4096/4.900V,這里的AD值為A/D轉(zhuǎn)換得結(jié)果G為放大器的增益,本設(shè)計(jì)中的二級(jí)放大器放大的倍數(shù)為80倍。將上述條件代入得:T=A·(4.9·AD/4096/G/I+100)-B</p><p><b> 軟件的流程圖</b></p
47、><p> 圖1 系統(tǒng)總流程圖 圖2 溫度轉(zhuǎn)換程序流程圖</p><p> 圖3 顯示流程圖 圖4 主函數(shù)流程圖</p><p><b> 主程序</b></p><p> ADS7841驅(qū)動(dòng)程序</p><p&
48、gt; #include <iom64v.h>#include <macros.h>#include "delay.h"#include "ads7841.h"#include "LCD1602.h"//----------------------ADS7841控制字節(jié)---------------#define control_byte
49、 0b10011000//bit val description//bit7 1 start,恒為1//bit6,5,4 001 選擇CH0為+IN//bit4 1 選擇為單端輸入//bit2 X 外部MODE接GND,該位無作用,恒為12位//bit1,0 00 轉(zhuǎn)換期間ADC為掉電模式void port_init(vo
50、id){ PORTA = 0xFF;//將所有端口初始化為輸入,打開上拉 DDRA = 0x00; PORTB = 0xFF; DDRB = 0x00; PORTC = 0xFF;</p><p> { LCD_write_onechar(0x87+i,table[array[3-i]]);} delay_nms(300);}}#ifndef _ads7841_
51、h#define _ads7841_hdefine DCLK PD0#define DCLK_ddr DDRD#define DCLK_port PORTD#define DCLK_pin PIND#define CS PD1#define CS_ddr DDRD#define CS_port PORTD#define CS_pin PIND#define D
52、IN PD2#define DIN_ddr DDRD#define DIN_port PORTD#define DIN_pin PIND#define BUSY PD3#define BUSY_ddr DDRD#define BUSY_port PORTD#define BUSY_pin PIND#define </p><p> {DCLK_
53、port&=~(1<<DCLK); //時(shí)鐘端初始化為輸出低電平DCLK_ddr|=(1<<DCLK);CS_port|=(1<<CS); //片選端初始化為輸出高電平CS_ddr|=(1<<CS); //即不選中ADS7841DIN_port&=~(1<<DIN);
54、 //數(shù)據(jù)輸入端初始化為輸出低電平DIN_ddr|=(1<<DIN);BUSY_port|=(1<<BUSY); //忙信號(hào)初始化為輸入,打開上拉BUSY_ddr&=~(1<<BUSY);DOUT_port|=(1<<DOUT); //數(shù)據(jù)輸出初始化為輸入,打開上拉DOUT_ddr&=~(1<<
55、;DOUT);</p><p> }/******************************************************************************** * 函數(shù)名稱:ads7841_W_R* * 函數(shù)功能:向ADS7841寫入控制字節(jié),讀出轉(zhuǎn)換好的數(shù)* * 輸入?yún)?shù):unsigned char byte : 控制字節(jié) uns
56、igned int result: AD轉(zhuǎn)換好的數(shù)* * 備 注:數(shù)據(jù)從高位到低位寫入,從高位到低位讀出*******************************************************************************/unsigned int ads7841_W_R(unsigned char byte){</p><p> unsigned char
57、 i,temp;unsigned int result=0;for(i=0;i<8;i++) //8位數(shù)據(jù)計(jì)數(shù) </p><p> { DCLK_port&=~(1<<DCLK); //拉低時(shí)鐘端 if(byte&0x80) //當(dāng)前位是否是1 { DIN_port|=(1<<DIN);
58、 //當(dāng)前位是1,拉高數(shù)據(jù)端 } else { DIN_port&=~(1<<DIN); //當(dāng)前位是0,拉低數(shù)據(jù)端 } delay_nus(10); //調(diào)整時(shí)鐘和脈沖寬度 DCLK_port|=(1<<DCLK); //時(shí)鐘上升沿 delay_nus(10); byte<<=1;
59、 //數(shù)據(jù)左移1位,為送出新數(shù)據(jù)位做準(zhǔn)備 }delay_nus(10);DCLK_port&=~(1<<DCLK); //拉低時(shí)鐘端delay_nus(10);i=BUSY_pin; //讀BUSY的狀態(tài)delay_nus(10);if(i&(1<<BUSY)) //如果為高則說明轉(zhuǎn)換完成</p
60、><p><b> LCD驅(qū)動(dòng)程序</b></p><p> lcdwc((GYPOS&0x1f)|0x80); //先送Y地址</p><p> if(GYPOS>=32) //再送X地址</p><p> lcdwc((GXPOS/16
61、+8)|0x80);</p><p><b> else</b></p><p> lcdwc((GXPOS/16)|0x80);</p><p> lcdwc(0x30); //恢復(fù)為基本指令集</p><p><b> }</b></p
62、><p> void lcdon(void) //LCD顯示開啟子程序</p><p> { lcdwc(0x30); //設(shè)置為基本指令集</p><p> lcdwc(0x0c);</p><p><b> }</b>
63、</p><p> void lcdoff(void) //LCD顯示關(guān)閉子程序</p><p> { lcdwc(0x30); //設(shè)置為基本指令集</p><p> lcdwc(0x08);</p><p><b> }<
64、/b></p><p> void lcdgraphon(void) //繪圖區(qū)域顯示開啟子程序</p><p> { lcdwc(0x36);</p><p> lcdwc(0x30); //恢復(fù)為基本指令集</p><p><b>
65、 }</b></p><p> void lcdgraphoff(void) //繪圖區(qū)域顯示關(guān)閉子程序</p><p> { lcdwc(0x34);</p><p> lcdwc(0x30); //恢復(fù)為基本指令集</p><p><
66、;b> }</b></p><p> void lcdwd(unsigned char d) //向液晶顯示控制器寫數(shù)據(jù)</p><p><b> {</b></p><p> CSPIN=1; //片選使能</p><
67、p> transbyte(0xfa); //SYNCODE=0F8H,RW=0,RS=1,D0=0</p><p> transbyte(d&0xf0); //送高四位數(shù)據(jù),低四位補(bǔ)零</p><p> transbyte((d&0x0f)<<4);
68、 //送低四位數(shù)據(jù)</p><p> CSPIN=0; //片選禁止</p><p><b> }</b></p><p> void lcdwc(unsigned char c) //向液晶顯示控制器送指令</p><p><b
69、> {</b></p><p> CSPIN=1; //片選使能</p><p> transbyte(0xf8); //SYNCODE=0F8H,RW=0,RS=0,D0=0</p><p> transbyte(c&0xf0);
70、 //送高四位數(shù)據(jù),低四位補(bǔ)零</p><p> transbyte((c&0x0f)<<4); //送低四位數(shù)據(jù)</p><p> CSPIN=0; //片選禁止</p><p><b> }</b><
71、;/p><p> void transbyte(unsigned char d) //送1字節(jié)數(shù)據(jù)到液晶顯示控制器子程序</p><p> { unsigned char i;</p><p> for(i=0;i<8;i++)</p><p> { if((d&0x80) == 0x80)</
72、p><p> transbit(1);</p><p><b> else</b></p><p> transbit(0);</p><p> d<<=1; //從高到低位送字節(jié)位數(shù)據(jù)到液晶顯示控制器</p><p><b&
73、gt; }</b></p><p><b> }</b></p><p> void transbit(bit d) //送1位數(shù)據(jù)到液晶顯示控制器子程序</p><p> { STDPIN = d; //先送數(shù)據(jù)到數(shù)據(jù)口線DI<
74、/p><p><b> _nop_();</b></p><p> SCLKPIN = 1; //再使時(shí)鐘口線發(fā)一個(gè)負(fù)脈沖</p><p><b> _nop_();</b></p><p> SCLKPIN = 0;</p><
75、;p><b> _nop_();</b></p><p> SCLKPIN = 1;</p><p><b> }</b></p><p><b> 總結(jié)</b></p><p> 本溫度測(cè)量系統(tǒng)設(shè)計(jì),是采用PT100溫度傳感器經(jīng)過放大和A/D轉(zhuǎn)換器送到單片機(jī)進(jìn)
76、行控制溫度顯示。另外本系統(tǒng)還可以通過外接電路擴(kuò)展實(shí)現(xiàn)溫度報(bào)警功能,從而更好的實(shí)現(xiàn)溫度現(xiàn)場(chǎng)的實(shí)時(shí)控制。</p><p> 經(jīng)過多次的修改和調(diào)試測(cè)量,本設(shè)計(jì)基本符合設(shè)計(jì)要求,由于受人為因素和軟硬件的限制,系統(tǒng)難免不了帶來一些誤差,但通過調(diào)節(jié)和精確計(jì)算可以減小誤差。</p><p> 通過本次溫度測(cè)量系統(tǒng)的設(shè)計(jì),我對(duì)溫度測(cè)量控制有了進(jìn)一步的熟悉和更深入的學(xué)習(xí)。在整個(gè)設(shè)計(jì)的過程中,本設(shè)計(jì)的重點(diǎn)
77、和難點(diǎn)是:怎樣將PT100熱電阻的非電量信號(hào)轉(zhuǎn)換為單片機(jī)單片機(jī)能識(shí)別的電量信號(hào),其中的信號(hào)如何放大及放大倍數(shù)的確定等等。</p><p> 這次課程設(shè)計(jì)雖然時(shí)間比較緊,從一開始的課題確定,到后來的資料查找、理論學(xué)習(xí),再在后來的畫原理圖和編程,這一切都使我的理論知識(shí)和動(dòng)手能力進(jìn)一步得到提升。在畫原理圖、電路仿真和調(diào)試過程中不可避免地遇到各種問題,這要求保持沉著冷靜,聯(lián)系書本理論知識(shí)積極地思考,但是最后還是在老師以
78、及同學(xué)的幫助下圓滿解決了這些問題,實(shí)現(xiàn)了整個(gè)系統(tǒng)設(shè)計(jì)與最后調(diào)試,相關(guān)指標(biāo)達(dá)到預(yù)期的要求,很好地完成了本次設(shè)計(jì)任務(wù)。通過本次畢業(yè)設(shè)計(jì),我了解并掌握了傳感器的基本理論知識(shí),更深入的掌握單片機(jī)的開發(fā)應(yīng)用和編程控制。為以后從事單片機(jī)軟硬件產(chǎn)品的設(shè)計(jì)開發(fā)、打下了良好的基礎(chǔ),樹立獨(dú)立從事產(chǎn)品研發(fā)的信心,并在這種能力上得到了比較充分的鍛煉。</p><p><b> 參考文獻(xiàn)</b></p>
79、<p> 【1】王化祥,張淑英。傳感器原理及應(yīng)用[M]。天津:天津大學(xué)出版社,2005年;</p><p> 【2】張俊謨。單片機(jī)中級(jí)教程[M]。北京:北京航空航天大學(xué)出版社,2006年;</p><p> 【3】李志全等。智能儀表設(shè)計(jì)原理及應(yīng)用[M]。國(guó)防工業(yè)出版社,1998年;</p><p> 【4】鄭建國(guó)。一種高精度的鉑電阻溫度測(cè)量方案
80、,自動(dòng)化儀表[M],1997年;</p><p> 【5】楊振江等.智能儀器與數(shù)據(jù)采集系統(tǒng)中的新器件及應(yīng)用[M],西安電子科技大學(xué)出版社,2001年;</p><p> 【6】周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)[M],北京航空航天大學(xué)出版社,1991年;</p><p> 【7】李建民.單片機(jī)在溫度控制系統(tǒng)中的應(yīng)用[M],江漢大學(xué)學(xué)報(bào),1996年。</p>
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能儀器課程設(shè)計(jì)——溫度測(cè)量?jī)x
- 溫度測(cè)量?jī)x課程設(shè)計(jì)
- 溫度測(cè)量?jī)x課程設(shè)計(jì)
- 溫度測(cè)量?jī)x課程設(shè)計(jì)
- 電子課程設(shè)計(jì)——溫度測(cè)量?jī)x
- 模電課程設(shè)計(jì)-溫度測(cè)量?jī)x
- 智能溫度測(cè)量?jī)x課程設(shè)計(jì)--pt100溫度傳感器
- 智能溫度測(cè)量?jī)x的設(shè)計(jì)(1)
- 課程設(shè)計(jì)--智能化流量測(cè)量?jī)x設(shè)計(jì)
- 水溫測(cè)量?jī)x課程設(shè)計(jì)
- 課程設(shè)計(jì)---簡(jiǎn)易頻率測(cè)量?jī)x
- 數(shù)字電容測(cè)量?jī)x-課程設(shè)計(jì)
- 電容電感測(cè)量?jī)x課程設(shè)計(jì)
- 機(jī)械工程測(cè)試技術(shù)課程設(shè)計(jì)——溫度測(cè)量?jī)x
- 課程設(shè)計(jì)--電機(jī)轉(zhuǎn)速測(cè)量?jī)x設(shè)計(jì)
- 大電流測(cè)量?jī)x的課程設(shè)計(jì)
- 水溫測(cè)量?jī)x_模電課程設(shè)計(jì)
- 基于18b20的溫度測(cè)量?jī)x課程設(shè)計(jì)報(bào)告
- 溫度測(cè)量?jī)x表
- 機(jī)械課程設(shè)計(jì)--板料厚度測(cè)量?jī)x設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論