基于8086的溫度測控系統設計(共12頁)_第1頁
基于8086的溫度測控系統設計(共12頁)_第2頁
基于8086的溫度測控系統設計(共12頁)_第3頁
基于8086的溫度測控系統設計(共12頁)_第4頁
基于8086的溫度測控系統設計(共12頁)_第5頁
已閱讀5頁,還剩7頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優質文檔-傾情為你奉上基于8086的溫度測控系統設計摘 要 本文介紹了一種基于8086微處理器的溫度測控系統,采用溫度傳感器AD590采集溫度數據,用CPU控制溫度值穩定在預設溫度。當溫度低于預設溫度值時系統啟動電加熱器,當這個溫度高于預設溫度值時斷開電加熱器。關鍵詞:微處理器 溫度傳感器 A/D轉換器 控制系統1溫度控制系統的總體結構概況 溫度信息由溫度傳感器測量并轉換成微安級的電流信號,經過運算放大電路將溫度傳感器輸出的小信號進行跟隨放大,輸入到A/D轉換器(ADC0809)轉換成數字信號輸入主機。數據經過標度轉換后,一方面通過數碼管將溫度顯示出來;另一方面,將該溫度值與設定的溫度值進

2、行比較,調整電加熱爐的開通情況,從而控制溫度。在斷開電加熱器,溫度仍然異常,報警器發出聲音報警,提示采取相應的調整措施。其溫度控制系統的原理框圖如圖1-1所示。電壓跟隨器運算放大電路溫度傳感器AD轉換器微處理器加熱控制電路報警譯碼顯示圖 1-1 系統原理框圖2系統器件選擇2.1 系統擴展接口的選擇 本次設計采用的是8086微處理器,選擇8255A可編程并行接口作為系統的擴展接口,8255A的通用性強,適應靈活,通過它CPU可直接與外設相連接。2.2溫度傳感器與AD轉換器的選擇本系統選用溫度傳感器AD590構成測溫系統。AD590是一種電壓輸入、電流輸出型集成溫度傳感器,測溫范圍為0200,非線

3、性誤差在±1,其輸出電流與溫度成正比,溫度沒升高1K(K為開爾文溫度),輸出電流就增加1uA。其輸出電流I=(273+T)uA。本設計中串聯電阻的阻值選用2K,所以輸出電壓V+=(2730 + 10T)MV.另外,為滿足系統輸入模擬量進行處理的功能,對其再擴展一片ADC0809,以進行模擬數字量轉化。2.3 顯示接口芯片為滿足本次設計溫度顯示的需要,我們選擇了8279芯片,INTEL8279芯片是一種通用的可編程的鍵盤、顯示接口器件,單個芯片就能完成鍵盤鍵入和LED顯示控制兩種功能。備注:系統硬件接線應盡量以插接形式連接,這樣便于多用途使用和故障的檢查和排除。 2.4 8086微處理

4、器及其體系結構2.4.1 8086CPU的編程結構編程結構:是指從程序員和使用者的角度看到的結構,亦可稱為功能結構。從功能上來看,8086CPU可分為兩部分,即總線接口部件BIU(Bus Interface Unit)和執行部件EU(Execution Unit)。8086CPU的內部功能結構如圖21所示:圖2-1 8086/8088CPU內部功能結構圖2.4.2執行部件(EU)功能:負責指令的執行。組成:包括ALU(算術邏輯單元)、通用寄存器組和標志寄存器等,主要進行8位及16位的各種運算。2.4.3總線接口部件(BIU)功能:負責與存儲器及I/O接口之間的數據傳送操作。具體來看,完成取指令

5、送指令隊列,配合執行部件的動作,從內存單元或I/O端口取操作數,或者將操作結果送內存單元或者I/O端口。組成:它由段寄存器(DS、CS、ES、SS)、16位指令指針寄存器IP(指向下一條要取出的指令代碼)、20位地址加法器(用來產生20位地址)和6字節(8088為4字節)指令隊列緩沖器組成。3 系統各部分功能模塊介紹3.1溫度測量和控制部分3.1.1溫度測量部分AD590是AD公司生產的一種精度和線度較好的雙端集成傳感器,其輸出電流與絕對溫度有關,對于電源電壓從5-10V變化只引起1uA最大電流的變化或1攝氏度等效誤差。圖4-1給出了用于獲得正比于絕對溫度的輸出電流的基本溫度敏感電路。AD59

6、0輸出的電流I=(273+T)uA(T為攝氏溫度)。因此測量的電壓V為(273+T)uA×10K=(2.73+T/100)V,為了將電壓測量出來,又務必使電流I不分流出來。使用電壓跟隨器使其輸出電壓V2等于V 。由于一般電源供應多器件之后,電源是帶雜波的,因此使用穩壓二極管作為穩壓元件,再利用可變電阻分壓,其輸出電壓V1需調至2.73V。差動放大器其輸出V0 為(100K/10K)×(V2-V1)=T/10,如果現在為攝氏28,輸出電壓為2.8V。輸出電壓接AD轉換器,那么AD轉換輸出的數字量就和攝氏溫度成線性比例的關系。圖 3-1輸出電流的基本溫度敏感電路3.1.2 溫度

7、控制部分當PC6為高電平時,三極管導通,繼電器吸合,向加熱系統輸出12V電壓加熱;反之,輸入低電平,三極管截止,繼電器斷開,停止加熱。在圖3-2中,二極管的作用是吸收繼電器端開時產生的浪涌電壓。圖 3-2溫度控制圖3.2 ADC0809與8255的連接模擬輸入通道地址A,B,C直接接地,因此ADC0809只對通道IN0輸入的電壓進行模數轉換。為了減少輸入噪聲其他通道直接接地。ADC0809的數據線D0-D7與8255的PB0-PB7相連接。其片選CS與8086的地址/數據總線AD14相連接。圖 3-3 ADC0809與8255的連接圖3.3 8086的可編程外設接口電路8255的數據口D0-D

8、7與CPU的6根控制線相連接,控制8255A內部的各種操作。控制線RESET用來使8255A復位。CS和地址線A1及A0用于芯片選擇和通道尋址。圖 3-48086的可編程外設接口電路圖3.4 數據顯示部分圖 3-4數據顯示圖3.5 系統硬件原理圖圖 3-5系統硬件原理圖4 軟件設計設計的目的是以8086微處理器為控制器,將溫度傳感器輸出的小信號經過放大和低通濾波后,送至A/D轉換器;微控制器實時采集、顯示溫度值(要求以攝氏度顯示),同時系統還應可設定、控制溫度值,使系統工作在設定溫度 5系統流程圖5.1 主程序通過開始界面,顯示提示信息,調用溫度子程序,設置溫度。通過模數轉換器采集AD值并求其

9、平均值。調用BCD碼轉換子程序將其轉換為十進制溫度值;調用顯示子程序,如果溫度高于實際溫度,就加熱,反之撥動開關關閉,停止加熱。在此過程中,還可以重復設置溫度值。其流程圖如圖5-1所示。N開始系統初始化顯示提示信息調用溫度值設置子程序實際溫度低于給定值PA0=1加熱8255 PC6口=1停止加熱8255 PC6口=0顯示提示信息調用溫度值設置子程序重新設置溫度并將PA0撥到0 以進行重新調節有鍵按下返回采集AD值并求其平均值調用BCD碼轉換子程序將其轉換為十進制溫度值調用顯示子程序YYNNN圖 5-1系統流程圖 5.2 BCD碼轉換子程序設定溫度為0攝氏度時變換放大電路送出的模擬量為0.0V,

10、此時A/D輸出的數字量為00H;溫度為76.5時變換器送出對應電壓4.98V,此時A/D輸出的數字量為FFH,即每0.3對應1LSB的變化量,對應電壓值為19.5mV。報警溫度設定為76.8,此時,輸出電壓約為5.0V左右。其流程圖如圖5-2所示。通過移位得到組合BCD碼BCD碼轉換子程序將采集得到的平均值乘以0.3 轉換為溫度值返回對其進行非壓縮BCD碼乘法調整圖 5-2 BCD碼轉換子程序流程圖5.3 顯示子程序采用動態顯示方式,其流程圖如圖5-3所示。5.4 溫度值設置子程序問了避免加熱溫度過高,在程序設計中加了一條,即設定值不能大于76.8,否則就認為有錯系統報警。其流程圖如圖5-4所

11、示。得到溫度值十位上的數值取出(BL)中的溫度值延時顯示溫度值個位上的數值通過查表指令得到對應的數碼管的斷碼先將十進制溫度值(AL)送到(BL)得到溫度值各位上的數通過查表指令得到對應的數碼管的斷碼溫度值設置子程序鍵入溫度值十位上的數值將它存于DI鍵入溫度值個位上的數值將它存于DI+1將十位上的數值左移四位并與個位上的數值既得溫度值設置溫度大于200將溫度值存于DI+1返回聲音報警并顯示錯誤信息返回顯示溫度值十位上的數值延時返回顯示子程序NY圖 4-4圖 5-4溫度值設置子程序流程圖6 系統調試通過前一部分的介紹說明,我們對系統的工作情況有了大體的了解。為了進一步了解系統的工作過程,這里介紹一

12、下系統調試過程及調試過程中出現的一些具體的問題。我們的實驗調試軟件運行于DOC環境下,其步驟如下:一、根據硬件圖和原理圖連接好線路。二、在PC機上敲入程序,并對其進行的查錯,編譯,連接,最后生成可執行文件。三、接上電源,敲入可執行文件的文件名,系統就開始了工作過程。1)這是DOC屏幕上會出現的一些提示信息,如ENTER ANY KEY TO BEGIN!* LET PA0=0 TO ADJUST THE TEMPERATURE VALUE!* LET PA0=1 TO INPUT A NEW TEMPERATURE VALUE!*這里后兩條只作注釋用。2)然后敲任意一個鍵,系統就開始進行溫度測

13、量和顯示,屏幕上就會顯示 INPUT THE TEMPERATURE:在這一條信息之后敲入一溫度值。注意這里敲入的溫度值不能大于76攝氏度,否則屏幕將會顯示INPUT VALUE ERROR !并返回 DOC。(以后重新設定溫度時也是如此)3)在正常情況下,敲入設定溫度后系統就開始進行控制調節,當實際溫度小魚設定值時,系統就開始進行加熱,如果不加改變,它就會加熱一直穩定到設定的溫度值;如果這是想重新設置一溫度,只要把8255的PA0讀取撥動開關撥到1,屏幕上就會顯示:INPUT A NEW TEMPERATURE:這里又得注意一下,在敲入一個新的設定溫度之前,得先把PA0讀取撥動開關撥到0,否則,在敲完設定溫度之后,屏幕上又會顯示同樣一條信息。因為它是根據PA0是0還是1來決定是去重新輸入設定溫度還是去調節溫度。如果不先把PA0撥為0,它就是一直輸入卻不進行調節。另外,這里溫度值的設定的次數沒有限制。7 結論本設計采用的單片機是作為現代工業中最常用的集成芯片。具有體積小、重量輕、抗干擾能力強、對環境要求不高、價格低廉、可靠性高、靈活性好、易于推廣應用等顯著優點,通過軟件邏輯控制實現對溫度的控制和調節。本文的溫度控制系統,只是單片機廣泛應用于各行各業中的一

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論