




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、摘要本文主要介紹了基于熱電偶溫度傳感器的測溫系統(tǒng)的設計。利用轉換芯片MAX6675和k型熱電偶,將溫度信號轉換成數(shù)字信號,通過模擬SPI的串行通信方式輸送數(shù)據(jù),在通過單片機處理數(shù)據(jù),最后由數(shù)碼管顯示數(shù)據(jù)。本文采用了帶有冷端補償?shù)臏囟绒D換芯片MAX6675、K型熱電偶、89C51單片機、數(shù)碼管等元器件設計了相應溫度采集電路、溫度轉換電路、溫度數(shù)碼管顯示電路。結合硬件電路給出了相應的軟件設計,測溫精度可達到0.25。本系統(tǒng)的工作流程是:首先熱電偶采集溫度,數(shù)據(jù)經(jīng)過MAX6675內(nèi)部電路的處理后送給單片機進行算法處理,最后通過數(shù)碼管電路顯示出測量溫度。本設計最后對系統(tǒng)進行了protuse的調試和仿真
2、,實現(xiàn)了設計的要求。關鍵詞溫度傳感器熱電偶熱時間常數(shù)冷端補償33ABSTRACTThis design describes the thermocouple temperature sensor based on the rapid temperature measurement system. The temperature signal is converted into digital signals by useing conversion chip max6675 and k-type thermocouple, conveying data via serial communica
3、tion simulation spi in processing the data through the microcontroller, the final data from the digital tube displayThis design uses a temperature conversion chip MAX6675,K-type thermocouple, 89C51microcontroller, LED and other components, design corresponding temperature acquisition circuit, temper
4、ature converter circuit, the LED display circuit. With the hardware give out The corresponding software design, temperature measurement accuracy up to 0.25 The system works is: first acquisition thermocouple temperature data through the Treatment of the of the MAX6675 internal circuit and be then se
5、nt to 89C51 Aim for rapid algorithm processing. Finally, the LED circuit shows the measurement temperature values. In the last, the design of the system was protuse debugging and simulation,achieve the design requirements.KEY WORDS Temperature sensor Thermocouple Thermal time constant Cold junction
6、compensation目 錄摘要IABSTRACTII第1章緒論1第2章系統(tǒng)原理概述32.1熱電偶測溫基本原理32.2熱電偶冷端補償方案32.2.1分立元氣件冷端補償方案32.2.2集成電路溫度補償方案42.2.3方案確定52.3硬件組成原理52.4軟件系統(tǒng)工作流程5第3章 元件和軟件介紹73.1單片機選擇及最小系統(tǒng)73.2 熱電偶介紹83.2.1K型熱電偶概述83.3 數(shù)字溫度轉換芯片MAX6675簡介93.3.1冷端補償專用芯片MAX6675性能特點93.3.2冷端補償專用芯片MAX6675溫度變換103.4 KEIL軟件仿真軟件介紹113.5 PROTUES硬件仿真軟件介紹11第4章
7、程序設計及硬件仿真124.1 數(shù)據(jù)的采集124.2 數(shù)據(jù)傳輸部分124.3 數(shù)據(jù)處理部分154.3.1 數(shù)據(jù)轉換164.3.2 進制轉換184.4 顯示部分程序及仿真19第5章 系統(tǒng)仿真23結束語25參考文獻26附錄27致謝32第1章緒論溫度是反映物體冷熱狀態(tài)的物理參數(shù),對溫度的測量在冶金工業(yè)、化工生產(chǎn)、電力工程、機械制造和食品加工、國防、科研等領域中有廣泛地應用。在某些特殊的場合對溫度的檢測速度有很高的要求,例如:在測量汽車發(fā)動機吸入空氣的溫度的時候,就要求熱響應時間小于1s;航天飛機的主發(fā)動機的溫度測量要求0.4s 內(nèi)完成等。因此針對以上問題就有人提出溫度快速測量的思想。通常用來測量溫度的
8、傳感器有熱電阻溫度傳感器、熱敏電阻、熱電偶、半導體溫度傳感器等幾種。這些常用溫度傳感器一般的溫度測量中可以滿足響應速度的問題。但在特殊的場合就不能達到快速檢測的要求,例如在氣體溫度測量時候,由于溫度傳感器自身的熱滯特性,而氣體傳熱過程又比較緩慢,氣體溫度測量就有很大滯后。工業(yè)常用的精度較高的溫度傳感器有鉑熱電阻、半導體溫度傳感器等。鉑熱電阻具有溫度測量范圍大、重復性好、精度高等特點,但是響應不是很快,特別是在對氣體溫度測量時至少要幾秒鐘,在某些工作環(huán)境比較特殊的場合,如高壓環(huán)境下,還需使用鎧裝的鉑熱電阻,更是延緩了熱響應速度。半導體溫度傳感器分熱敏電阻和PN結型溫度傳感器兩種。熱敏電阻非常適合
9、對微弱溫度變化的測量,但是缺點是非線性嚴重;PN結型的特點是體積小、線性輸出、精度高,但是不能使用在液體環(huán)境,對氣體溫度變化響應也較慢1。所以用溫度傳感器一般都存在著對氣體溫度變化響應較慢的問題。在對溫度實時性測量要求比較高的系統(tǒng),運用常用溫度測量方法很難做到對溫度的快速測量,對系統(tǒng)的精度影響就很大。在工業(yè)過程控制與生產(chǎn)制造領域普遍使用具有較高測溫精度及測溫范圍的熱電偶做測溫元件。在工業(yè)標準熱電偶中,K型(鎳鉻-鎳硅)熱電偶由于具有價格低廉、輸出熱電勢值較大、熱電勢與溫度的線性關系好、化學穩(wěn)定性好、復制性好、可在1000下長期使用等特點,因而是工業(yè)生產(chǎn)制造部門應用最廣泛的熱電偶元件。但是將熱電
10、偶應用在基于單片機的嵌入式系統(tǒng)領域時,卻存在著以下幾方面的問題2。非線性:熱電偶輸出熱電勢與溫度之間的關系為非線性關系,因此在應用時必須進行線性化處理。冷端補償:熱電偶輸出的熱電勢為冷端保持為0時與測量端的電勢差值,而在實際應用中冷端的溫度是隨著環(huán)境溫度而變化的,故需進行冷端補償。數(shù)字化輸出:與嵌入式系統(tǒng)接口必然要采用數(shù)字化輸出及數(shù)字化接口,而作為模擬小信號測溫元件的熱電偶顯然無法直接滿足這個要求。在許多熱工實驗中,往往面臨熱電偶冷端溫度問題,不管是采用恒溫補償法(冰點補償法)還是電橋補償法,都會帶來實驗費用較高、實際的檢測系統(tǒng)較復雜.難以達到實時測量、接口轉換電路復雜等問題,而隨著計算機測控
11、技術在工業(yè)生產(chǎn)制造領域的普遍應用,溫度參數(shù)的微機化測量與控制已成為必然趨勢。因此我們必須解決對熱電偶測量信號的放大調理、非線性校正、冷端補償、模數(shù)轉換、數(shù)字輸出接口等一系列復雜的問題,以及解決模擬與數(shù)字電路硬件設計過程和建表、查表、插值運算等復雜的軟件編制過程,以達到使電路簡化,成本減少,增加系統(tǒng)可靠性的目的。鑒于上面的分析,本論文主要任務是設計一種基于高精度K型熱電偶傳感器測溫系統(tǒng)。采用帶有冷端補償?shù)臏囟绒D換芯片MAX6675、K型熱電偶、89C51單片機、數(shù)碼管等元器件設計出相應溫度采集電路、溫度轉換電路、數(shù)碼管顯示電路。系統(tǒng)用單片機對帶有冷端補償?shù)臏囟绒D換芯片MAX6675進行控制,要達
12、到任務書中的技術指標,并對系統(tǒng)進行protuse的調試和仿真試驗,使其具有良好的實用性能,能夠實現(xiàn)對固體表面、液體和氣體溫度的高精度測量。第2章系統(tǒng)原理概述2.1熱電偶測溫基本原理熱電偶測溫的基本原理是兩種不同成份的材質導體組成閉合回路2,當兩端存在溫度梯度時,回路中就會有電流通過,此時兩端之間就存在熱電動勢,這就是所謂的塞貝克效應。兩種不同成份的均質導體為熱電極,溫度較高的一端為工作端(熱端),溫度較低的一端為自由端(冷端),自由端通常處于某個恒定的溫度下。根據(jù)熱電動勢與溫度的函數(shù)關系制成熱電偶分度表;分度表是自由端溫度在0時的條件下得到的,不同的熱電偶具有不同的分度表。在熱電偶回路中接入第
13、三種金屬材料時,只要該材料兩個接點的溫度相同,熱電偶所產(chǎn)生的熱電勢將保持不變,即不受第三種金屬接入回路中的影響。因此,在熱電偶測溫時,可接入測量儀表,測得熱電動勢后即可知道被測介質的溫度。熱電偶的熱電勢,應注意如下幾個問題:、熱電偶的熱電勢是熱電偶兩端溫度函數(shù)的差,而不是熱電偶兩端溫度差的函數(shù);、熱電偶所產(chǎn)生的熱電勢的大小當熱電偶的材料是均勻時,與熱電偶的長度和直徑無關,只與熱電偶材料的成份和兩端的溫差有關;、當熱電偶的兩個熱電偶絲材料成份確定后,熱電偶熱電勢的大小,只與熱電偶的溫度差有關。若熱電偶冷端的溫度保持一定,這時熱電偶的熱電勢僅是工作端溫度的單值函數(shù)。2.2熱電偶冷端補償方案熱電偶測
14、量溫度時要求其冷端(測量端為熱端,通過引線與測量電路連接的端稱為冷端)的溫度保持不變,其熱電勢大小才與測量溫度呈一定的比例關系。若測量時,冷端的(環(huán)境)溫度變化,將影響嚴重測量的準確性。在冷端采取一定措施補償由于冷端溫度變化造成的影響稱為熱電偶的冷端補償。2.2.1分立元氣件冷端補償方案方案一的熱電偶冷端溫度補償器件是由分立元件構成的,其體積大,使用不夠方便,而且在改變橋路電源或熱電偶類型時需要重新調整電路的元件值。主要包括溫度采集電路、信號放大電路、A/D轉換電路、熱電偶冷端補償電路、數(shù)碼管顯示電路等。其系統(tǒng)框圖如圖2.1。信號放大熱電偶溫度信號采集系統(tǒng)單片機控制器AD轉換電路熱電偶冷端測量
15、電路數(shù)碼管顯示電路報警電路圖2.1 分立元氣件冷端補償2.2.2集成電路溫度補償方案方案二采用熱電偶冷端補償專用芯MAX6675,MAX6675溫度轉換芯片具有冷端溫度補償及對溫度進行數(shù)字化測量這兩項功能5。一方面利用內(nèi)置溫度敏感二極管將環(huán)境溫度轉換成補償電壓,另一方面又通過模數(shù)轉換器將熱電勢和補償電壓轉換為代表溫度的數(shù)字量, 將二者相加后從串行接口輸出的測量結果,即為實際溫度數(shù)據(jù)。主要包括溫度采集電路、MAX6675溫度轉換電路、數(shù)碼管顯示電路等。其系統(tǒng)框圖如圖2.2。熱電偶溫度信號采集系統(tǒng)MAX6675溫度信號轉換芯片單片機控制器數(shù)碼管顯示電路報警電路圖2.2 集成電路溫度補償2.2.3方
16、案確定綜合對比以上兩種方案,方案一電路復雜,且測量不精確照成誤差較大,方案二采用集成溫度轉換芯片不僅能很好的解決冷端溫度補償及溫度數(shù)值化問題,并消除由熱電偶非線性而造成的測量誤差,且精確度高,可實現(xiàn)電路的優(yōu)化設計。故最后采用方案二。2.3硬件組成原理本系統(tǒng)硬件主要由熱電偶溫度采集電路、MAX6675溫度處理電路、89C51單片機控制電路、超量程報警電路和數(shù)碼管顯示電路組成。熱電偶采用分度號為K的熱電偶,為了減少外界信號的干擾通過雙絞線跟MAX6675芯片直接相連接。MAX6675芯片通過模擬SPI串行接口傳輸數(shù)據(jù),采用的89C51單片機對帶有冷端補償?shù)臏囟绒D換芯片MAX6675進行控制。本系統(tǒng)
17、設計還具有報警的特點,當所測量的溫度低于零攝氏度或者高于400攝氏度時報警電路發(fā)出警報。顯示電路由89C51單片機通過74LS373對六位共陰數(shù)碼管控制,當所測溫度在規(guī)定范圍內(nèi)時就可以通過數(shù)碼管快速顯示出來2.4軟件系統(tǒng)工作流程系統(tǒng)的軟件工作流程為:熱電偶采集的溫度數(shù)據(jù);溫度數(shù)據(jù)經(jīng)過MAX6675內(nèi)部電路的AD轉換、冷端補償、內(nèi)部校正6;溫度轉換電路將處理后12位數(shù)字溫度量以串行方式送給單片機;單片機將數(shù)字量進行軟件算法處理;如果測量溫度在測量范圍內(nèi),最后通過數(shù)碼管顯示出測量溫度;如果超出測量范圍由單片機控制使報警電路報警。其軟件工作流程圖如圖2.3。系統(tǒng)軟件設計主要包含主程序,重新測量、超量
18、程報警子程序、顯示子程序等功能模塊。開始讀取max6675數(shù)據(jù) 數(shù)據(jù)是否穩(wěn)定否是 是從16位數(shù)據(jù)中得到12位溫度數(shù)據(jù)是否超出量程報警電路 是否將數(shù)據(jù)進行進制轉換調用顯示子程序 返回 圖2.3 軟件設計總體流程圖第3章 元件和軟件介紹3.1單片機選擇及最小系統(tǒng)MCU是整個系統(tǒng)的控制核心,由于溫度測量系統(tǒng)的接口方便,綜合考慮整個系統(tǒng),選用美國ATMEL公司生產(chǎn)的AT89C51型單片機3。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS 8位微處理器。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-
19、51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,其外觀引腳圖如下:圖3.7 AT89C51外觀圖 AT89C51提供以下標準功能4:4k字節(jié)的flash閃速存儲器,128字節(jié)內(nèi)部RAM,32個I/O口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結構,一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式、空閑方式停止CPU工作,但允許RAM,定時/技術器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件
20、工作指導下一個硬件復位。AT89C51共有4個雙向的8位并行I/O端口,分別為P0P3,共有32根口線,端口的每一位均由鎖存器、輸出驅動器和輸入緩沖器所組成。P0P3的端口寄存器屬于特殊功能寄存器系列。這四個端口除了可以按字節(jié)尋址外還可以位尋址。其中P0口為漏極開路作為輸出使用時應外加上拉電阻,P3口既可以做為普通I/O口使用,還可以作為特定的功能引腳。雖然51單片機只有一個串口接口,但其I/O口既可以用字節(jié)尋址也可以位尋址,這樣在實際應用中,我們就可以通過模擬不同總線的時序特征來實現(xiàn)各種數(shù)據(jù)的傳輸。AT89C51單片機內(nèi)部有一個功能強大的全雙工的一部通信串口。其串行口有四種工作方式:分別為同
21、步通信方式、8位異步收發(fā)、9位異步收發(fā)(特定波特率)、9位異步收發(fā)(定時器控制波特率)。它有兩個物理上獨立接收發(fā)送緩沖器SBUF,可同時發(fā)送、接收數(shù)據(jù)。波特率可由軟件設置片內(nèi)的定時器來控制,而且每當串行口接收或發(fā)送1B完畢,均可發(fā)出中斷請求5。3.2 熱電偶介紹熱電偶是工程上應用最廣泛的溫度傳感器。它是將溫度量轉換為電量變化的裝置。它構造簡單,使用方便,具有較高的準確度、穩(wěn)定性及復現(xiàn)性,溫度測量范圍寬,在溫度測量中占有重要的地位。當兩種不同材料的導體或半導體連成閉合回路時,將兩個接點分別置于溫度為T和T0的熱源中,該回路內(nèi)會產(chǎn)生熱電勢。熱電勢的大小反映兩個接點溫度差,保持T0不變,熱電勢隨著溫
22、度T變化而變化。測得熱電勢的值,即可知道溫度T的大小。圖3.1熱電偶測溫原理圖產(chǎn)生的熱電勢由兩部分組成:溫差電勢和接觸電勢。3.2.1K型熱電偶概述K型熱電偶作為一種溫度傳感器,K型熱電偶通常和顯示儀表,記錄儀表和電子調節(jié)器配套使用。K型熱電偶可以直接測量各種生產(chǎn)中從0到1300范圍的液體蒸汽和氣體介質以及固體的表面溫度6。圖3.2熱電偶鎳鉻-偶(K)型熱電偶是目前用量最大的廉金屬熱電偶,其用量為其他熱電偶的總和。K型熱電偶絲直徑一般為1.24.0mm。正極(KP)的名義化學成分為:Ni:Cr=92:12,負極(KN)的名義化學成分為:Ni:Si=99:3,其使用溫度為-2001300。K型熱
23、電偶具有線性度好,熱電動勢較大,靈敏度高,穩(wěn)定性和均勻性較好,抗氧化性能強,價格便宜等優(yōu)點,能用于氧化性惰性氣氛中廣泛為用戶所采用。K型熱電偶不能直接在高溫下用于硫,還原性或還原,氧化交替的氣氛中和真空中,也不推薦用于弱氧化氣氛.3.3 數(shù)字溫度轉換芯片MAX6675簡介MAX6675是美國Maxin公司生產(chǎn)的基于SPI總線的專用芯片9,不僅能對K型熱電偶進行冷端補償,還能對熱電勢信號作數(shù)字處理,具有很高的可靠性和穩(wěn)定性,可廣泛應用于工業(yè)、儀器儀表、自動化領域等。其內(nèi)部結構框圖如圖3.3所示。圖3.3 MAX6675內(nèi)部結構框圖3.3.1冷端補償專用芯片MAX6675性能特點MAX6675的主
24、要特性如下:簡單的SPI串行口溫度值輸出。0+l024的測溫范圍。12位0.25的分辨率。片內(nèi)冷端補償。高阻抗差動輸入。熱電偶斷線檢測。單一+5V的電源電壓.低功耗特性。工作溫度范圍-20+85。2000V的ESD保護。該器件采用8引腳50貼片封裝。引腳排列如圖3.4所示,引腳功能如表3-1。圖3.4腳功能圖表3-1引腳功能表引腳名稱功能1GND接地端2T-K型熱電偶負極3T+K型熱電偶正極4VCC正電源端5SCK串行時鐘輸入6CS片選端,CS為低時、啟動串行接口7SO串行數(shù)據(jù)輸出8N.C.空引腳3.3.2冷端補償專用芯片MAX6675溫度變換MAX6675內(nèi)部具有將熱電偶信號轉換為與ADC輸
25、入通道兼容電壓的信號調節(jié)放大器,T+和T-輸入端連接到低噪聲放大器A1,以保證檢測輸入的高精度,同時使熱電偶連接導線與干擾源隔離。熱電偶輸出的熱電勢經(jīng)低噪聲放大器A1放大,再經(jīng)過A2電壓跟隨器緩沖后,被送至ADC的輸入端。在將溫度電壓值轉換為相等價的溫度值之前,它需要對熱電偶的冷端溫度進行補償,冷端溫度即是MAX6675周圍溫度與0實際參考值之間的差值。對于K型熱電偶,電壓變化率為41V/,電壓可由線性公式Vout=(41V/)×(tR-tAMB)來近似熱電偶的特性。上式中,Vout為熱電偶輸出電壓(mV),tR是測量點溫度;tAMB是周圍溫度3.4 KEIL軟件仿真軟件介紹 Kei
26、l C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng)7,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。運行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。如果你使用C語言編程,那么Keil幾乎就是你的不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調試工具也會令你事半功倍。 此次的畢業(yè)設計主要是利用KEIL來完
27、成程序的編寫,主要用匯編語言來編寫程序,用計時器來完成數(shù)碼管動態(tài)顯示的。在16進制轉換成10進制時,利用KEIL來查寄存器從而看程序是否能達到轉換的目的。3.5 PROTUES硬件仿真軟件介紹Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件8。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協(xié)同仿
28、真,一鍵切換到PCB設計,真正實現(xiàn)了從概念到產(chǎn)品的完整設計。迄今為止是世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MATLAB等多種編譯。此次設計中,利用protues完成整個電路的硬件仿真,并且在開始的數(shù)據(jù)采集階段,利用protues的示波器來查看數(shù)據(jù)是否傳輸。以及最后的階段,看數(shù)據(jù)是否正確顯示。第4章 程序設
29、計及硬件仿真 在這個部分,是根據(jù)數(shù)據(jù)的采集,傳輸,處理,顯示來逐漸完成的。其中,有的部分可以用keil來查看結果,有的部分可以用protues來查看程序結果。4.1 數(shù)據(jù)的采集熱電偶作為一種主要的測溫元件,具有結構簡單、制造容易、使用方便、測溫范圍寬、測溫精度高等特點14。但是,熱電偶的應用卻存在著非線性、冷端補償、數(shù)字化輸出等幾方面的問題。設計中采用的MAX6675是一個集成了熱電偶放大器、冷端補償、A/D轉換器及SPI串口的熱電偶放大器與數(shù)字轉換器,其電路如圖3-14所示。K型熱電偶的兩端分別跟MAX6675芯片的T-跟T+相連,為了允許熱電偶斷路檢測,T-引腳必須接地。MAX6675的測
30、量精度對電源耦合噪聲較敏感。為降低電源噪聲影響,在MAX6675的電源引腳附近接入1只0.1F陶瓷旁路電容。溫度由熱電偶采集,然后將數(shù)據(jù)直接送給冷端補償芯片MAX6675芯片進行處理,處理后送給單片機控制電路,完成簡單的溫度采集過程9。 圖4.1 溫度采集硬件圖4.2 數(shù)據(jù)傳輸部分數(shù)據(jù)傳輸,即用單片機讀取max6675的數(shù)字信號,其通信模式為SPI。 串行外圍設備接口SPI(serial peripheral interface)總線技術是Motorola公司推出的一種同步串行接口,Motorola公司生產(chǎn)的絕大多數(shù)MCU(微控制器)都配有SPI硬件接口10。SPI 用于CPU與各種外圍器件進
31、行全雙工、同步串行通訊。SPI可以同時發(fā)出和接收串行數(shù)據(jù)。它只需四條線就可以完成MCU與各種外圍器件的通訊,這四條線是:串行時鐘線(CSK)、主機輸入/從機輸出數(shù)據(jù)線(MISO)、主機輸出/從機輸入數(shù)據(jù)線(MOSI)、低電平有效從機選擇線CS。當SPI工作時,在移位寄存器中的數(shù)據(jù)逐位從輸出引腳(MOSI)輸出(高位在前),同時從輸入引腳(MISO)接收的數(shù)據(jù)逐位移到移位寄存器(高位在前)。發(fā)送一個字節(jié)后,從另一個外圍器件接收的字節(jié)數(shù)據(jù)進入移位寄存器中。主SPI的時鐘信號(SCK)使傳輸同步。其時序圖如下: 圖4.2 SPI通信模式時序圖對于不帶SPI串行總線接口的AT89C51系列單片機來說,
32、可以使用軟件來模擬 SPI的操作,包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出11。MAX6675從SPI串行接口輸出數(shù)據(jù)的過程如下:MCU使CS變低并提供時鐘信號給SCK,由S0讀取測量結果。CS變低將停止任何轉換過程:CS變高將啟動一個新的轉換過程。一個完整串行接口讀操作需16個時鐘周期,在時鐘的下降沿讀16個輸出位,第l位和第15位是一偽標志位,并總為0,第14位到第3位為以MSB到LSB順序排列的轉換溫度值;第2位平時為低,當熱電偶輸入開放時為高,開放熱電偶檢測電路完全由MAX6675實現(xiàn),為開放熱電偶檢測器操作,T-必須接地,并使接地點盡可能接近GND腳;第1位為低以提供MAX6675器件身份碼
33、,第0位為三態(tài)。對于在SCK的下降沿輸入數(shù)據(jù)和上升沿輸出數(shù)據(jù)的器件,則應取串行時鐘輸出的初始狀態(tài)為0,即在接口芯片允許時,先置P11為0,以便外圍接口芯片輸出1位數(shù)據(jù)(MCU接收1位數(shù)據(jù)),之后再置時鐘為1,使外圍接口芯片接收1位數(shù)據(jù)(MCU發(fā)送1位數(shù)據(jù)),從而完成1位數(shù)據(jù)的傳送。Max6675因為是傳輸16位數(shù)據(jù),所以要分為高8位和低8位的傳輸。MC51MAX6675 P1.0 SOP1.1SCKP1.2 CS.圖4.3 SPI總線接口電路其程序如下:CS BIT P1.2 ;從機 SCK BIT P1.1 ;時鐘 SO BIT P1.0 ;數(shù)據(jù)輸入 DATAH DATA 30H DATAL
34、 DATA 31H ORG 0000H REDAT: CLR CS ;CS低電平,停止數(shù)據(jù)轉換, CLR SCK ;時鐘置為低電平 MOV R2, #08H ;讀數(shù)據(jù)高位字節(jié)D15-D8 RDH: MOV C,SO ;讀SO端數(shù)據(jù) RLC A ;累加器左移一位 SETB SCK NOP CLR SCK DJNZ R2,RDH MOV DATAH,A ;將數(shù)據(jù)高位移入緩沖區(qū) MOV R2,#08H RDL: MOV C,SO ;讀SO端數(shù)據(jù);讀數(shù)據(jù)低位字節(jié)D7-D0 RLC A ;累加器左移一位 SETB SCK NOP CLR SCK DJNZ R2,RDL MOV DATAL,A ;將數(shù)據(jù)低
35、位移入緩沖區(qū) SETB CS 相應的硬件搭建如下: 圖4.4 SPI硬件仿真接線 數(shù)據(jù)傳輸?shù)倪^程,可以用proutes自帶的示波器查看,如下圖: 圖4.5 SPI通信時序圖在上圖中,第一行是單片機讀取max6675的數(shù)據(jù),第二行是單片機模擬的,給max6675的始終信號,第三行是cs信號。4.3 數(shù)據(jù)處理部分 在此過程中,不好用protues來查看結果,不過可以利用keil來查看寄存器的結果,只要我們首先給個初始數(shù)據(jù)。 MAX667多采用標準的SPI串行外設總線與MCU接口,且MAX6675只能作為從設備。MAX6675S0端輸出溫度數(shù)據(jù)的格式如圖3.5所示12。圖4.6 MAX6675輸出溫
36、度數(shù)據(jù)的格式 D14D3為12位數(shù)據(jù),其最小值為0,對應的溫度值為0;最大值為4095,對應的溫度值為1023.75;由于MAX6675內(nèi)部經(jīng)過了激光修正,因此,其轉換結果與對應溫度值具有較好的線性關系。溫度值與數(shù)字量的對應關系為:溫度值= 1023.75×轉換后的數(shù)字量/4095=轉換后的數(shù)字量/4 所以第一步是得到數(shù)字量,第二步是得到溫度值,但可以簡化為,直接得到溫度值,然后再進制轉換。其程序流程圖如4.2示。主要先是將非數(shù)據(jù)位的數(shù)據(jù)清零,然后將16位數(shù)據(jù)全部右移3為,可以得到轉換后的數(shù)字量,然后再右移2位,得到溫度值。其中,右移最后的兩位會得到小數(shù)部分,這部分可以直接賦值。開始
37、Spi得到的16位數(shù)據(jù) 將無關4位數(shù)據(jù)置零 將數(shù)據(jù)右移5位,得到真實的溫度值值 與設定的溫度值進行比較報警并結束是 否進制轉換返回圖4.7 溫度轉換程序流程圖4.3.1 數(shù)據(jù)轉換 這部分主要進行的16位數(shù)據(jù)的整體右移和保存小數(shù)位。在整個程序中,DATAH保存高8位數(shù)據(jù),DATAL保存低8位數(shù)據(jù),DATAX保存小數(shù)數(shù)據(jù)。對此,右移一位的程序如下: MOV A,DATAH ;數(shù)據(jù)高位保存在A CLR C ;清除標志位 RRC A ;A帶位右移 MOV DATAH,A ;A保存在DATAH MOV A,DATAL ;DATAL存儲在A RRC A ;帶位右移,此時CY是DATAH的最后一位 MOV
38、DATAL,A;DATAL右移,并且高位是DATAH的末位 對于特殊要保存小數(shù)位的右移,其程序如下: MOV A,DATAH CLR C RRC A MOV DATAH,A ;16位數(shù)據(jù)右移一位, MOV A,DATAL;并且若一出一個高位,則 RRC A;使兩位小數(shù)+25. MOV DATAL,A JNC SW MOV A,#25HMOV DATAX,ASW: MOV A,DATAH ;;同上,不過這次若是高 CLR C; 位,則加50.這兩步是 RRC A;為了,得到溫度值的 MOV DATAH,A;小數(shù)部分 MOV A,DATAL RRC A MOV DATAL,A MOV A,DATA
39、X ADD A,#50H MOV DATAX,A4.3.2 進制轉換 用匯編實現(xiàn),可以用書中的程序。雙字節(jié)二進制整數(shù)轉換成3字節(jié)BCD碼整數(shù)的子程序13。其采用的算法是,依次將整數(shù)的每位左移至CY位,再把CY位左移至一個3字節(jié)隊列中,并進行十進制調整。通過16次移位完成運算,結果為壓縮格式的3字節(jié)BCD編碼。其程序如下: ZH: MOV R6,DATAH;將要保存的數(shù)據(jù)存放 MOV R7,DATAL;高位存放在R6,地位R7 CLR A;將要保存數(shù)據(jù)的寄存器清零 MOV R3,A MOV R4,A MOV R5,A MOV R2,#10H;RLOOP: MOV A,R7; ;完成十六進制到10
40、進制的轉換 RLC A MOV R7,AMOV A,R6RLC AMOV R6,AMOV A,R5ADDC A,R5DA AMOV R5,AMOV A,R4ADDC A,R4DA AMOV R4,AMOV A,R3ADDC A,R3MOV R3,ADJNZ R2,RLOOP其運行結果如下圖: 圖 4.8 進制轉換結果,轉換前(坐),轉換后(右) 經(jīng)過運算,445H=1093,即完成了對數(shù)據(jù)的進制的轉換。4.4 顯示部分程序及仿真 這部分,根據(jù)論文題目要求是用數(shù)碼管來顯示。數(shù)碼管動態(tài)顯示,可以用延時子程序方法,或者用計時器中斷的方式來延時14。這部分最后選擇用計時器中斷的方式來完成數(shù)碼管動態(tài)顯示
41、延時的需要。主要是開始用調用延時子程序的方法是,一直沒有找對延時時間的比較好的設置,從而是數(shù)碼管一直閃爍,不能正常的顯示。而通過計時器中斷的方式,最后得到了不錯的顯示效果。4.4.1 顯示部分硬件設計LED顯示器是單片機應用系統(tǒng)中常用的輸出器件,是由若干個發(fā)光二極管組成的,當發(fā)光二極管導通時,相應的一個或一個筆畫發(fā)光,控制不同組合的二極管導通,這就能顯示出不同字符。點亮顯示器有靜態(tài)和動態(tài)兩種方式。所謂靜態(tài)顯示就是顯示器在顯示某個字符時,相應的發(fā)光二極管恒定的導通或截止。這種顯示方式每個顯示器都需要一個8位輸出口控制,需要硬件多,適用于顯示位數(shù)較少的場合。當顯示位數(shù)較多時采用動態(tài)顯示。所謂動態(tài)顯
42、示就是一位一位的輪流點亮各位顯示器,對于每位顯示器來說,每隔一段時間點亮一次。顯示器的點亮和點亮時的導通電流有關,還與點亮時間和間隔時間有關,調整電流和時間參數(shù),可實現(xiàn)亮度較高較穩(wěn)定的顯示。 如圖3,是用6個共陰極數(shù)碼管的動態(tài)顯示借口電路,用74LS373接成直通的方式作為驅動電路,字型選擇P0口提供,位選擇由P3口提供。圖4.9 數(shù)碼管顯示電路74LS373三態(tài)輸出的8D透明鎖存器, 。鎖存器的最主要作用是緩存,其次完成高速的控制器與慢速的外設的不同步問題,再其次是解決驅動的問題,最后是解決一個 I/O 口既能輸出也能輸入的問題。自此利用74LS373既解決了p口驅動不足的問題,也解決了MC
43、U和數(shù)碼管速率不同,從而產(chǎn)生的拖影的感覺。4.4.2 顯示部分程序設計先存放數(shù)據(jù),用來測試, 這部分軟件設計如下:MAIN: MOV SP,#70H ;初始化堆棧 MOV LEDBUF,#6 MOV LEDBUF+1,#6 MOV LEDBUF+2,#7 MOV LEDBUF+3,#5 MOV LEDBUF+4,#3 MOV LEDBUF+5,#1MOV R0,#LEDBUF ;將ledbuf的首地址給R0MOV DPTR,#TABLE;將TABLE的首是址給DPTRMOV R2,#06H ;R2作為循環(huán)次數(shù)寄存器MOV R1,#01H;R1中放片選信號MOV TMOD, #01H;定時器0工
44、作在方式1MOV TH0, #0DFHMOV TL0,#0B0H;初始代定時器0 SETB TR0;開定時器0 SETB EA;開總中斷 SETB ET0;開定時器0中斷 SJMP $;動態(tài)停機TIME0: DJNZ R2, LOOP1 ;建立一個循環(huán),并且能初始值再次循環(huán) MOV R2,#06H MOV R1,#01H MOV R0,#LEDBUF;初始化數(shù)據(jù)LOOP1: MOV TH0,#0DFH MOV TL0,#0B0H ;初始化定時器0 CJNE R2,#03,WXUD ;第4位有小數(shù)點,所以單獨顯示MOV P3,A RL AMOV R1,A ;片選信號輸入P1并且使其數(shù)據(jù)左移一位M
45、OV A,R0MOVC A,A+DPTRMOV P2,A ;通過查表,將字碼送給偏、p2口CLR P2.7;使小數(shù)點顯示出來INC R0 RETIWXUD: MOV A,R1 ;MOV P3,ARL AMOV R1,A;片選信號輸入P1并且使其數(shù)據(jù)左移一位 MOV A,R0MOVC A,A+DPTRMOV P2,A INC R0;通過查表將ledbuf中數(shù)據(jù)送往P2RETI其運行結果如下: 圖4.10 數(shù)碼管動態(tài)顯示硬件仿真結果 第5章系統(tǒng)仿真 經(jīng)過第4章的分部設計以及仿真,在第5章就匯總了各個部分,再利用proutes來測試其溫度誤差。由于只是硬件仿真,為了簡潔,便省去了74LS73寄存器。
46、 根據(jù)MAX6675芯片手冊,其誤差是0.25量程是01023.75。 當給k型熱電偶加20.50時,其顯示結果如下:圖5.1 20.50的測量結果 給K型熱電偶加100.30時,其顯示結果如下:圖 5.2 100.30測量結果給K型熱電偶加150.25時,其顯示結果如下:圖5.3 150.25測量結果由以上測試可以看出,其零點誤差為0.75攝氏度,線性誤差極低。當然,如果對零點誤差進行修正。還有,猜測,因為硬件仿真也是由軟件實現(xiàn)的,或許程序用在實物上,結果可能會更好一點15。結束語本文主要介紹了基于熱電偶溫度傳感器的快速測溫系統(tǒng)。該系統(tǒng)綜合考慮到熱電偶的熱惰性時間常數(shù)問題,采用快速測溫算法實
47、現(xiàn)了溫度快速測量的功能。本文對系統(tǒng)原理進行了簡單的概述,著重分析了系統(tǒng)的硬件設計方案跟軟件設計方案。最后對系統(tǒng)進行了仿真實驗,很好的完成了設計要求。本文主要采用K型熱電偶、K型熱電偶專用數(shù)字轉換芯片MAX6675、AT89C51單片機進行了相關設計。MAX6675將熱電偶測溫應用時復雜的線性化、冷端補償及數(shù)字化輸出等問題集中在一個芯片上解決,簡化了將熱電偶測溫方案應用于嵌入式系統(tǒng)領域時復雜的軟硬件設計,因而該器件是將熱電偶測溫方案應用于嵌入式系統(tǒng)領域的理想選擇。根據(jù)快速算法的原理通過AT89C51單片機軟件編程實現(xiàn)了溫度的快速測量。畢業(yè)設計是我們在大學期間的最后一門課程,也是能將大學期間最重要的幾門理論課聯(lián)系實際的課程,由此可知畢業(yè)設計的重要性。在路立平路老師的精心指導和其他同學的幫助下,經(jīng)歷三個多月的努力和實踐,我終于完成了畢業(yè)設計,并在此次畢業(yè)設計的實踐中獲益良多。此次畢業(yè)設計讓我們有機會將大學四年所學的專業(yè)課程與實際的實踐緊密聯(lián)系起來,加深了我們對理論知識的理解和掌握,開闊了我們的視野,最重要的是鍛煉了我們
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 液氮采購技術協(xié)議書
- 終止扣款協(xié)議書范本
- 生產(chǎn)文件保護協(xié)議書
- 快件委托代理協(xié)議書
- 綠化協(xié)議書范本格式
- 矛盾糾紛協(xié)議書模板
- 提供服務協(xié)議書范本
- 手法復位手術協(xié)議書
- 遵義房屋贈與協(xié)議書
- 密件查閱保密協(xié)議書
- 解三角形滿分突破10講-試題版
- 2024年天津市中考英語真題卷及答案
- 13R503 動力工程設計常用數(shù)據(jù)
- JGJ/T235-2011建筑外墻防水工程技術規(guī)程
- 如果歷史是一群喵
- 人教版小學數(shù)學六下第六單元《統(tǒng)計與概率》單元集體備課整體教學設計
- 浙江省寧波市鄞州區(qū)2023 學年第二學期八年級科學期中考試試卷
- 工業(yè)設計項目報價單模板
- 手術前呼吸功能評估
- 中華民族共同體概論課件專家版2第二講 樹立正確的中華民族歷史觀
- 針灸優(yōu)勢病種
評論
0/150
提交評論