MCS51單片機溫度控制系統(tǒng)設計_第1頁
MCS51單片機溫度控制系統(tǒng)設計_第2頁
MCS51單片機溫度控制系統(tǒng)設計_第3頁
MCS51單片機溫度控制系統(tǒng)設計_第4頁
MCS51單片機溫度控制系統(tǒng)設計_第5頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)設計說明書 mcs-51 單片機溫度控制系統(tǒng) 作作 者者: 學學 號:號: 學院學院(系系): 專專 業(yè)業(yè): 指導教師:指導教師: 評評 閱閱 人:人: 1 引言引言.3 1.1 課題研究的目和意義.3 1.2 溫度控制系統(tǒng)的國內外現狀.3 1.3 溫度控制系統(tǒng)方案.4 1.4 論文的主要任務和所做的工作.5 2 單片機溫度控制系統(tǒng)總體設計及原理單片機溫度控制系統(tǒng)總體設計及原理.6 2.1 系統(tǒng)的主要功能 .6 2.2 系統(tǒng)的工作原理 .6 2.3 系統(tǒng)的主要技術指標.7 2.4 系統(tǒng)的總體結構.7 3 溫度控制系統(tǒng)的硬件設計溫度控制系統(tǒng)的硬件設計.8 3.1 溫度測量放大電路 .8 3.

2、1.1 溫度傳感器的選擇及基本工作原理.8 3.1.2 放大電路的設計.9 3.2 主要的接口電路 .10 3.2.1 模數轉換電路.10 3.2.2 鍵盤接口和數碼顯示.11 3.2.3 程序存儲器和并行接口的擴展及報警電路 .12 3.2.4 溫度控制電路.15 4 溫度控制系統(tǒng)的軟件設計溫度控制系統(tǒng)的軟件設計.18 4.1 主程序設計及中斷服務程序設計.18 4.1.1 溫度控制主程序流程簡圖 .18 4.1.2 中斷服務程序設計.19 4.2 溫度控制程序子程序.21 4.2.1 鍵盤掃描和溫度顯示程序設計.21 4.2.2 爐溫采樣、數字濾波程序設計.23 4.2.3 溫度標度轉換算

3、法 .26 4.3 pid 控制算法.28 4.3.1 pid 算法基本原理.28 4.3.2 pid 算法及子程序.30 5 結論與展望結論與展望.32 附錄附錄 b:鍵盤:鍵盤/led 接口圖接口圖.34 附錄附錄 c:系統(tǒng)源程序:系統(tǒng)源程序.35 參參 考考 文文 獻獻.44 致致 謝謝.46 mcs-51 單片機溫度控制系統(tǒng)單片機溫度控制系統(tǒng) 摘 要 單片機在檢測和控制系統(tǒng)中得到了廣泛的應用,溫度是一個系統(tǒng)經常需要測 量、控制和保持的量,而溫度是一個模擬量,不能直接與單片機交換信息,采用 適當的技術將模擬的溫度量轉化為數字量在原理上雖然不困難但成本較高,還會 遇到其它方面的問題。因此對

4、單片機溫度控制系統(tǒng)的研究有重要目的和意義。 本文主要介紹了以 mcs-51 系列單片機 8031、ad574、8155、可控硅、lm311 等芯片組成的溫度檢測電路,模/數轉換電路,鍵盤/led 顯示電路,報警電路,信 號放大電路;在描述了外圍硬件電路的同時,還做了大量的軟件工作,包括數據 處理軟件,pid 控制算法。 本設計有效的提高了控制系統(tǒng)的實時性和控制精度大大改善了爐溫控制的自 動化程度,具有較高的實用價值。 關鍵詞:單片機,pid 算法 ,溫度采樣,溫度控制 mcs-51 single-chip temperature control system abstract the sing

5、le chip microcomputer is required extensively in measurement and control systems, and the temperature need to be surveyed, controlled and maintained by a system frequently. but the temperature is an analog, can not exchange information with the single chip directly. in principle, it is not difficult

6、 to transform the simulated temperature into the digital quantity, if adopting proper technique .but gets the electric circuit more complex, the lost is more expensive, and other questions can be met. so it is very important for research of single chip temperature control. this article mainly introd

7、uced 8031 of series mcs- 51、adc0809、8155、lm311、controllable silicon, which composed temperature measurement and control circuit、a/d transfer circuit、keyboard/led display、signal magnifying circuit alarming circuit; some important techniques in a design scheme of the software of the temperature by sin

8、gle-chip microcomputer are introduced also, such as date processing software, control algorithms software. this system enhances real-time character of control system and control precision effectively, improves the automatic degree of furnace temperature and higher practice value key words: single-ch

9、ip microcomputer, pid algorithm, temperature sampling, temperature control 1 引言引言 1.11.1 課題研究的目和意義課題研究的目和意義 在現代化的工業(yè)生產中,電流、電壓、溫度、壓力、流量、流速和開關量都 是常用的主要被控參數。例如:在冶金工業(yè)、化工生產、電力工程、造紙行業(yè)、 機械制造和食品加工等諸多領域中,人們都需要對各類加熱爐、熱處理爐、反應 爐和鍋爐中的溫度進行檢測和控制。采用 mcs-51 單片機來對溫度進行控制,不僅 具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點,而且可以大幅度提高被控溫度的技 術指標,從而能夠大

10、大提高產品的質量和數量。單片機以其功能強、體積小、可 靠性高、造價低和開發(fā)周期短等優(yōu)點,為自動化和各個測控領域中廣泛應用的器 件,在工業(yè)生產中稱為必不可少的器件,尤其是在日常生活中發(fā)揮的作用也越來 越大。因此,單片機對溫度的控制問題是一個工業(yè)生產中經常會遇到的問題。 本論文以上述問題為出發(fā)點,設計實現了溫度實時測量、顯示、控制系統(tǒng)。 本設計方案具有較高的測量精度,更加適合對溫度精度要求較高的化工生產、電 力工程等行業(yè),并希望通過本設計得到舉一反三和觸類旁通的效果。 1.21.2 溫度控制系統(tǒng)的國內外現狀溫度控制系統(tǒng)的國內外現狀 通過網上查詢、翻閱圖書了解到目前國內外市場以單片機為核心的溫度控制

11、 系統(tǒng)很多,而且方案靈活,且應用面比較廣,可用于工業(yè)上的加熱爐、熱處理爐、 反應爐,在生活當中的應用也比較廣泛,如熱水器,室溫控制,農業(yè)中的大棚溫 度控制。以上出現的溫度控制系統(tǒng)產品,根據其系統(tǒng)組成、使用技術、功能特點、 技術指標。選出其中具有代表性的幾種如下: 1 虛擬儀器溫室大棚溫度測控系統(tǒng) 在農業(yè)應用方面虛擬儀器溫室大棚溫度測控系統(tǒng)是一種比較智能,經濟的方 案,適于大力推廣,改系統(tǒng)能夠對大棚內的溫度進行采集,然后再進行比較,通 過比較對大棚內的溫度是否超過溫度限制進行分析,如果超過溫度限制,溫度報 警系統(tǒng)將進行報警,來通知管理人員大棚內的溫度超過限制,大棚內的溫控系統(tǒng) 出現故障,從而有利

12、于農作物的生長,提高產量。本系統(tǒng)最大的優(yōu)點是在一臺電 腦上可以監(jiān)測到多個大棚內的溫度情況,從而進行控制。該系統(tǒng) labview 虛擬儀 器編程,通過對前面板的設置來顯示溫室大棚內的溫度,并進行報警,進而對大 棚內溫度進行控制。該系統(tǒng)有單片機,溫度傳感器,串口通信,和計算機組成。 計算機主要是進行編程,對溫度進行顯示、報警和控制等;溫度傳感器是對大棚 內溫度進行測量,顯示;單片機是對溫度傳感器進行編程,去讀溫度傳感器的溫 度值,并把半溫度值通過串口通信送入計算機;串口通信作用是把單片機送來的 數據送到計算機里,起到傳輸作用。 2 電烤箱溫度控制系統(tǒng) 該方案采用美國 ti 公司生產的 flash

13、型超低功耗 16 位單片機 msp430f123 為 核心器件,通過熱電偶檢測系統(tǒng)溫度,用集成溫度傳感器 ad590 作為溫度測量器 件利用該芯片內置的比較器完成高精度 ad 信號采樣,根據溫度的變化情況,通過 單片機編寫閉環(huán)算法,從而成功地實現了對溫度的測量和自動控制功能。其測溫 范圍較低,大概在 0-250 之間,具有精度高,相應速度快等特點。 3 小型熱水鍋爐溫度控制系統(tǒng) 該設計解決了北方冬季分散取暖采用人工定時燒水供熱,耗煤量大,浪費人 力,溫度變化大的問題。設計方案硬件方面采用 mcs-51 系列 8031 單片機為核心, 擴展程序存儲器 2732,ad590 溫度檢測元件測量環(huán)境溫

14、度和供水溫度,adc0809 進行模數轉換,同向驅動器 7407、光電耦合器及 9103 的功放完成對電機的控制。 軟件方面建立了供暖系統(tǒng)的控制系統(tǒng)數學模型。本系統(tǒng)硬件電路簡單,軟件程序易 于實現。它可用于一臺或多臺小型取暖熱水鍋爐的溫度控制,可使居室溫度基本恒 定,節(jié)煤,節(jié)電,省人力。 1.31.3 溫度控制系統(tǒng)方溫度控制系統(tǒng)方案案 結合本設計的要求和技術指標,通過對系統(tǒng)大致程序量的估計和系統(tǒng)工作速 度的估計以及 i/o 口需求量的估計,考慮價格因素。選定 8031 單片機作為系統(tǒng)的 主要控制芯片,外圍擴展并行接口 8155,程序存儲器 eprom2732,12 位模數轉 換器 ad574,

15、采用鎳鉻/鎳硅熱電偶進行溫度檢測其測溫范圍為 0-1000,外接指 示燈作為報警電路,8031 對溫度的控制是通過雙向可控硅實現的。雙向可控硅管 和加熱絲串接在交流 220v、50hz 市電回路。在給定周期 t 內,8031 只要改變可 控硅管的接通時間即可改變加熱絲的功率,以達到調節(jié)溫度的目的。 1.41.4 論文的主要任務和所做的工作論文的主要任務和所做的工作 本論文主要是完成一種低成本、低價格、功能齊全、及溫度測量、溫度顯示、 溫度控制于一體的單片機溫度控制系統(tǒng)的理論設計。包括硬件電路和主要的控制 算法。 研究的關鍵問題是:爐溫的精確測量;雙向可控硅控制的溫度控制電路設計; 溫度控制算法

16、的選擇,本設計采用 pid 控制算法;以及溫度標度轉換、數字濾波 爐溫采樣等軟件設計。 根據本設計所要完成的任務本論文完成了如下工作: 1 介紹了研究和設計的背景和意義,調查并綜述了當前溫度控系統(tǒng)市場的國內外 現狀, 2 提出了符合設計要求的高精度溫度控制系統(tǒng)方案,并闡述了其工作原理。 3 完成了硬件電路的設計,它包括溫度檢測放大傳送電路;包含 mcs-51 系列單 片機 8031,外圍擴展并行接口 8155,程序存儲擴展 2732,模數轉換器 ad574 等芯片的接口電路;通過雙向可控硅管實現的溫度控制電路;鍵盤接口和 led 顯示電路,以及實時報警電路。 4 基本完成了軟件部分設計,它包括

17、鍵盤掃描、溫度控制顯示,爐溫采樣、數字 濾波,數據處理,越限報警處理,pid 計算、溫度標度轉換等的算法。 2 單片機溫度控制系統(tǒng)總體設計及原理單片機溫度控制系統(tǒng)總體設計及原理 2.12.1 系統(tǒng)的主要功能系統(tǒng)的主要功能 (1)對爐溫的溫度檢測和升溫、恒溫控制。 (2)顯示檢測溫度值。 (3)當超越上限或下限時自動報警。 (4)設定和修改要保持的溫度值。 2.22.2 系統(tǒng)的工作原理系統(tǒng)的工作原理 在溫控系統(tǒng)中,需要將溫度的變化轉換為對應的電信號的變化,由于熱電偶 的結構簡單制造容易,測量范圍廣,在高溫測量中有較高的精度,所以選用鎳鉻/ 鎳硅熱電偶做熱電傳感器,測溫范圍 0-1000,最高可測

18、量 1300。 熱電偶把測量的爐溫溫度信號轉換成弱電壓信號,經過信號放大電路,放大 后的信號輸人到 a/d 轉換器(ad574 )轉換成數字信號輸人主機(單片機 8031),并 送往外接顯示電路,主機對電爐溫度和設定溫度進行比較后如果越限,則軟件觸 發(fā)用 8031 的 p1 口控制報警系統(tǒng)輸出控制脈沖,該控制脈沖與單穩(wěn)態(tài)同步觸發(fā)器 輸出的同步脈沖送人控制門(與非門),門電路信號輸人光偶管轉換成電流信號,經 過三級放大電路輸人可控硅的門極,可控硅導通由程序控制同步觸發(fā)脈沖的來臨 時間,從而控制可控硅的通斷時間,以達到對電爐加熱絲溫度的調節(jié)和功率的改 變,實現對電爐的恒溫和升溫控制。 工作流程說明

19、如下: 開始,先接通電源,然后將開關打到開的位置,六段數碼管顯示器就自動顯 示出當前溫度,并且顯示出設置溫度的缺省值 000000。此時繼電器不工作。 按下 f1 按鍵,溫度控制系統(tǒng)進入溫度控制點的設制。 這個時候,顯示設置溫度的數碼管閃爍。 此時可以通過鍵盤輸入預設置的溫 度。當按下“確定”按鍵的時候,單片機就會根據所寫入的程序,對系統(tǒng)進行控 制。 當設置的溫度高于當前的溫度時,單片機通過可控硅控制極上觸發(fā)脈沖控制 加熱電路連通。溫度慢慢升高。 當設置的溫度低于當前的溫度時,單片機通過可控硅控制極上觸發(fā)脈沖控制 加熱電路斷開。溫度慢慢下降。 就這樣通過溫度芯片的反饋信息,實現水的溫度保持在設

20、置溫度上,從而達 到自動控制溫度的功能。 2.32.3 系統(tǒng)的主要技術指標系統(tǒng)的主要技術指標 測溫范圍 :0-1000 溫度分辨率:0.5v led 顯示位數:6 2.42.4 系統(tǒng)的總體結構系統(tǒng)的總體結構 系統(tǒng)的硬件電路有溫度檢測、信號放大、a/d 轉換、鍵盤接口、led 顯示、單 穩(wěn)態(tài)觸發(fā)電路、可控硅控制電路等部分組成,系統(tǒng)結構圖見圖 1.1 爐溫采樣 點 溫度傳感器濾波信號 放大 ad 轉換 單 片 機 系 統(tǒng) (8031) 雙向可控 硅 光耦驅動 過零脈沖提 取計時 電爐 220v led 顯 示 鍵盤 圖 2.1 系統(tǒng)框圖 3 溫度控制系統(tǒng)的硬件設計溫度控制系統(tǒng)的硬件設計 3.13.

21、1溫度測量放大電路溫度測量放大電路 3.1.1 溫度傳感器的選擇及基本工作原理 測量溫度的方法雖然很多,但從感受溫度的途徑來分,不外兩大類:一類是接觸 式的,即通過測溫元件與被測物體的接觸而感知物體的溫度;另一類是非接觸的,即 通過接收被測物體發(fā)出的輻射熱來判斷溫度。由于本系統(tǒng)測量的溫度值在:0 1000,所以最常用的最經濟的方法是用熱電偶來測量。 當兩種不同的導體或半導體連接成閉合回路時,若兩個接點溫度不同,回路 間就會出現熱電動勢,并產生電流。從物理上看,這一熱電勢主要是由接觸電勢 組成的。當兩種不同導體 j、b 接觸時,由于兩邊的自由電子密度的不同,在交界 面上產生電子的相互擴散。若 j

22、 中自由電子密度大擴散的多,使 j 失去較多的電 子而帶正電荷,相反,b 帶負電荷。致使在盤 j、b 接觸處產生電場,以阻礙電子 的進一步積累,最后達到平衡。在 j、b 兩導體間的電位差稱為接觸熱電勢。 電爐常用熱電偶的材料要求: 1耐高溫-熱電偶的測溫范圍主要取決于熱電極的高溫性能,也就是說,在高溫 介質中,熱電極的物理化學性能越穩(wěn)定,則由它組成的熱電偶的測溫范圍就越寬。 2靈敏度高,線性好-要求電偶所產生的溫差熱電勢足夠大,并與溫度呈線性關 系; 3要求熱電有為材料除能滿足上述幾點要求外,并希望它的電阻系數和電阻溫度 系數盡可能地小,且其價格便宜、貨源充足。 熱電偶型號比較多,不同的型號有

23、不同的測溫區(qū),對于本系統(tǒng)鎳鉻鎳硅熱 電偶其分度號為 k,正極成分是 910鉻、0.4硅,其余為鎳,負極成分 為 2.53硅,0.6鉻,其余為鎳。這類熱電偶的優(yōu)點是有較強的抗氧化性 和抗腐蝕性,其化學穩(wěn)定性好,熱電勢較大,熱電勢與溫度間的線性關系好,其 熱電極材料的價格便宜,可在 1000以下長期連續(xù)使用,短期測溫可達 1300。 最高溫度 1300,所以鎳鉻-鎳硅熱電偶就可以了。 市場上賣的熱電偶一般都集成溫度補償電路,理論上應使冷端溫度為基點即 0,而實際上冷端通常為室溫,如果不帶可利用 pn 結結電壓隨溫度上升而線形 下降的特性來進行補償,或設置恒溫槽。 3.1.2 放大電路的設計 0-1

24、000的溫度對應 0mv41.3mv ,熱電偶出來的 mv 電壓,大概熱端變化 一度,熱電耦有 40 微伏的電位差輸出,無法直接進行 a/d 轉換,必須進行放大處 理。采用 oop07 運放組成低漂移高精度前置放大器,對幾十微伏變化信號測量比 較精確,其放大倍數與 /成正比,可根據需要設計。其中 op07 的 3rf 2 rf 1、4、5 端與構成調零電路。再接一級有運放 741 構成的續(xù)接放大器就可將 1 rw 毫伏級信號放大到需要的幅度,放大倍數可自己設定,741 的 1、4、5 端與 構成調零電路。741 的輸出送給后面的模數轉換電路。具體接法如圖 3.1 2 rw 圖 3.1 放大電路

25、 因為傳感器輸出電壓為 0mv-42.30mv,而 ad574 段輸入電壓為 0v10v,所以 應該放大 240 倍, 取 op07 放大 10 倍,741 放大 24 倍,取=150, =200 4 r 2 rf 由運放原理知道: =20=3 1rf 4 r =24=4.8 3rf 2 rf 3.23.2 主要的接口電路主要的接口電路 3.2.1 模數轉換電路 a/d 轉換電路是測控儀表制作的另一個關鍵所在。a/d 轉換的位數,精度, 速度,性能都直接影響著系統(tǒng)的相關性能。考慮到本系統(tǒng)要求精度比較高,選用 美國 ad 公司研制的 12 位逐次逼近式 ad574a,它適合高精度快速采集,所以本

26、 系統(tǒng)不用設計采樣保持電路,節(jié)省了硬件。 ad574 的主要特性如下: a/d 分辨率:12 或 8 位。 轉換時間:25s 轉換精度:0.05%。 單極性模擬輸入:0v10v,0v20v 雙極性模擬輸入:5v,10v 正電源供電:+12v+15v 負電源供電:-12v-5v 內部集成有轉換時鐘,參考電壓源和三態(tài)輸出鎖存器,可直接與 16 位或 8 位機 直接相連,而且無需外接時鐘。其邏輯真值表如表 3.1 表 3.1 ad574 真值表 ce _ cs _ c/r _ 8/12a0 功能 0 不起作用 1 不起作用 100 0啟動 12 位轉換 100 1 啟動 8 位轉換 101接+5v

27、12 位數據并行輸出 101接地0高八位數據輸出 101接地1低 4 位數據尾接 0 輸出 該轉換電路的具體接法如圖 3.2,因為片內有時鐘,故無須外加,該電路采用 單極性輸入方式,可對 0v10v 模擬信號轉換,其中圖 3.1 中管腳 8,10,12 把 ad574 置成單極性 10v 輸入,無論啟動、轉換,還是結果輸出,都要保證 ce 端 為高電平,故用 8031 的和端通過與非門 74ls00 與 ad574 的 ce 端相連。 _ rd _ wr 轉換結果分高八位、低四位與 p0 口相連,分兩次讀入,所以接地。在 _ 8/12 _ c/r 讀取轉換結果時保持相應的電平,將來自單片機的控

28、制信號經 74ls373 鎖存后再 從 q0 接入,選通信號經譯碼器譯碼后選通,ad574 有兩個選口地址,由 a0 口區(qū) 分,把譯碼器 q7q6q5q4q3q2q1=111000b 端接到則 ad574 的兩個選口地址 _ cs 為 f0 和 f1h,其中寫 f0h 啟動 12 位轉換,寫 f1h 啟動 8 位轉換,讀 f0h 用于 讀取高八位數字量,讀 f1h 用于讀取低 4 位數字量, 圖 3.2 模數轉換電路 單片機可采用中斷、查詢、軟件延時等方式讀取轉換結果。本設計時按查詢 法輸入 a/d 轉換后的數字量。 3.2.2 鍵盤接口和數碼顯示 在單片機應用系統(tǒng)中,同時需要使用鍵盤與顯示器

29、接口時,為了節(jié)省 i/o 口 線常常把鍵盤和顯示電路接在一起,構成實用鍵盤和顯示電路,圖 3.3 是典型實 用的、采用 8155 并行擴展口構成的鍵盤、顯示器電路,圖中設置了 16 個鍵,如 增加 pc 口可以增加到 61 個,單片機應用系統(tǒng)中除了復位按鍵有專門的復位電路, 以及專一的復位功能外,其它的按鍵或鍵盤都是以開關狀態(tài)來設置控制功能或輸入 數據。鍵盤有編碼和非編碼兩種。非編碼鍵盤硬件電路極為簡單故本系統(tǒng)采用。 6 個 led 顯示器采用共陰極方式,段選碼由 8155pb 口提供,位信號有 pa 口提 供。鍵盤的列掃描也由 pa 口提供,查詢輸入由 pc0pc1 提供,led 采用動態(tài)

30、顯示軟件,鍵盤采用逐列掃描查詢工作方式。 鍵盤設定如下: 鍵盤共有 12 個按鍵,用于方便設定溫度。數字按鍵 10 個,輸入數字 09 和 小數點;確認鍵一個,設置的確認,修改設置溫度時進行確認;清除鍵一個,設 置的清除,修改設置溫度時進行刪除;f1 鍵一個,顯示及設置轉換到預設溫度點, 按此按鍵后,顯示預設置溫度的數碼管閃爍;此外,還有兩個功能鍵。 圖 3.3 鍵盤接口/led 顯示 3.2.3 程序存儲器和并行接口的擴展及報警電路 mc5-51 系列單片機有三種基本型號:8031,8051 及 87510 它們的管腳及指 令系統(tǒng)完全兼容,只是在結構及特性方面有一些差異。8031 是目前應用

31、最多的。 8031 內含一個 8 位的 cpu,128 個字節(jié)的 rom,21 個特殊功能寄存器(sfr),4 個 8 位并行 i/o 口,1 個雙工串行口,2 個 16 位的定時器/計數器,但程序寄存器 需用外擴 eprom 芯片。本設計選用了 4kb 的 eprom2732。外接 6mhz 的晶振 體,即每個周期為 2 微妙,復位信號采用上電復位,通過外部復位電路的電容充 電來實現的。這樣只要電源 vcc 的上升時間不超過 1ms,就可以實現自動上電復 位,即接通電源就完成了系統(tǒng)的初始化。 因為 p0 口既要作為地址輸出口,還要作為數據讀入口所以外接了一個 74ls373 八位雙向數據鎖存

32、器,用來鎖存地址信號。74ls373 是否工作由來自 8031 的 ale 數據鎖存允許信號控制,當 ale 高電平時鎖存器開始工作。 擴展的并行接口 8155 用于鍵盤和 led 顯示接口由圖 3.4 可見,在 p2.0=0 和 p2.1=0 時,8155 選中它內部的 ram 工作;在 p2.0=1 和 p2.1=0 時,8155 選中它 內部的三個 i/o 端口工作。相應的地址分配為: 0000h - 00ffh 8155 內部 ram 0100h 命令/狀態(tài)口 0101h a 口 0102h b 口 0103h c 口 0104h 定時器低 8 位口 0105h 定時器高 8 位口 8

33、155 用作鍵盤/led 顯示器接口電路 a 口和所有 led 的八段引線相連,各 led 的控制端 g 和 8155c 口相連,故 a 口為字形口,c 口為字位口,8031 可以 通過 c 口控制 led 是否點亮,通過 a 口顯示字符。 2732 是 4kb 的 eprom 型器件。8031 的和 2732 的相連,p2.4 和 _ psen _ oe 相連,故 2732 的地址空間為:0000h0fffh _ ce ad574 的 10vin 通道和放大電路的輸出端相連,所以 10vin 通道上輸入的 0v+10v 范圍的模擬電壓經 a/d 轉換后可由 8031 通過程序從 p0 口輸入

34、到它的 內部 ram 單元,在 p1.0=0 和 wr=0 時,8031 可使 ale 和 start 變?yōu)楦唠娖?而啟動 ad574 工作;在 p1.0=0 和 rd=0 時,8031 可以從 ad574 接收 a/d 轉換 后的數字量。也就是說 ad574 可以視為 8031 的一個外部 ram 單元,地址為 03f8h(地址重復范圍很大) ,因此,8031 執(zhí)行如下程序可以啟動 ad574 工作。 mov dptr,#03f8h movx dptr,a 若 8031 執(zhí)行下列程序: mov dptr,#03f8h movx a,dptr 則可以從 ad574 輸入 a/d 轉換后的數字量

35、。 本設計的報警電路直接由 8031 的 p1.0,p1.1,p1.2 控制外接指示燈。編程實 現燈的開關,若測量的溫度不越限,則 p1.1 口的綠燈亮,若測量的溫度越下限 p1.0 口的紅燈亮,若測量的溫度越上限則 p1.2 口的燈亮。以上電路的具體連接如圖 3.4 圖 3.4 程序存儲器和并行接口的擴展及報警電路 3.2.4 溫度控制電路 晶閘管又叫可控硅。自從 20 世紀 50 年代問世以來已經發(fā)展成了一個大的家 族,它的主要成員有單向晶閘管、雙向晶閘管、光控晶閘管、逆導晶閘管、可關 斷晶閘管、快速晶閘管,等等。今天大家使用的是單向晶閘管,也就是人們常說 的普通晶閘管,它是由四層半導體材

36、料組成的,有三個 pn 結,對外有三個電極: 第一層 p 型半導體引出的電極叫陽極 a,第三層 p 型半導體引出的電極叫控制極 g,第四層 n 型半導體引出的電極叫陰極 k,它和二極管一樣是一種單方向導電器。 晶閘管的特點:是“一觸即發(fā)”。但是,如果陽極或控制極外加的是反向電壓, 晶閘管就不能導通??刂茦O的作用是通過外加正向觸發(fā)脈沖使晶閘管導通,卻不 能使它關斷。那么,用什么方法才能使導通的晶閘管關斷呢?使導通的晶閘管關斷, 可以斷開陽極電源或使陽極電流小于維持導通的最小值(稱為維持電流)。如果晶閘 管陽極和陰極之間外加的是交流電壓或脈動直流電壓,那么,在電壓過零時,晶 閘管會自行關斷。 該控

37、制部分的原理框圖如圖 3.5: 圖 3.5 溫度控制原理框圖 8031 對溫度的控制是通過可控硅調功電路實現的,雙向可控硅觀和加熱絲串 接在交流 220v、50hz 交流市電回路中。在給定的周期 t 內,8031 只要改變可控 硅管的接通時間便可改變加熱絲功率,以達到調解溫度的目的??煽毓柙诮o定周 期 t 內具有不同接通時間的情況。顯然可控硅在給定周期 t 的 100%時間內接通 時的功率最大。 可控硅接通時間可以通過可控硅控制極上的觸發(fā)脈沖控制。該觸發(fā)脈沖由 8031 用軟件在 p1.3 引腳上產生,受過零脈沖同步后經光耦管和驅動器輸出送到可 控硅的控制級上。 過零同步脈沖是一種 50hz

38、交流電壓過零時刻的脈沖,可使可控硅在交流電 壓正弦波過零時刻觸發(fā)導通。過零同步脈沖由過零觸發(fā)脈沖電路產生,圖中電壓 比較器 lm311 用于把 50hz 正弦交流電壓變成方波。方波的正邊沿和負邊沿分別 220 伏交 流電 變壓 器 比較 器 雙向 可控 硅 單 穩(wěn) 態(tài) 觸 發(fā) 器 同 步 光耦 及驅 動 單 片 機 觸 發(fā) 脈沖 加熱 絲 作為兩個單穩(wěn)態(tài)觸發(fā)器的輸入觸發(fā)信號,單穩(wěn)態(tài)觸發(fā)器輸出的兩個窄脈沖經二極 管或門混合后就可得到對應于交流 200v 市電的過零同步脈沖。此脈沖一方面作為 可控硅的觸發(fā)同步脈沖加到溫度控制電路,另一方面還作為計數器脈沖加到 8031 的 t0,t1 端。 光電耦

39、合器,是近幾年發(fā)展起來的一種半導體光電器件,把電子信號轉換成 為光學信號,然后又回復電子信號的半導體器件。由于它具有體積小、壽命長、 抗干擾能力強、工作溫度寬及無觸點輸入與輸出及在電氣上完全隔離等特點,被 廣泛地應用在電子技術領域及工業(yè)自動控制領域中,它可以代替繼電器、變壓器、 斬波器等,而用于隔離電路、開關電路、數模轉換、邏輯電路、過流保護、長線 傳輸、高壓控制及電平匹配等。 具體接法如圖 3.6 圖 3.6 溫度控制電路 4 溫度控制系統(tǒng)的軟件設計溫度控制系統(tǒng)的軟件設計 4.14.1 主程序設計及中斷服務程序設計主程序設計及中斷服務程序設計 4.1.1 溫度控制主程序流程簡圖 溫度控制程序

40、的設計應考慮如下問題: 1 爐溫采樣,數字濾波程序 2 鍵盤掃描,鍵碼識別和溫度顯示程序 3 溫度標度轉換程序 4 pid 計算程序(雙字節(jié)加法程序 dsum,雙字求補程序 cpl1,雙字節(jié)帶符 號乘法程序 mult1) 為簡化起見,本設計思想只給出有關 8031 本身的初始化,8155 初始化,標 志、暫存單元和顯示緩沖單元區(qū)清零、t0 初始化,斷開 cpu 中斷、溫度顯示和 鍵盤掃描等程序,詳細見附錄源程序清單,程序框圖如圖 4.1 所示。 開 始 8031 系統(tǒng)初始化 輸入被控參數 8155 初始化 鍵盤顯示器監(jiān)控程 序 運 行 嗎? n 開中斷 y 圖 4.1 主程序流程簡圖 在主程序

41、設計中,由于 t0 被設定為計數器方式 2,初值為 06h,故它的溢 出中斷時間為 250 個過零同步觸發(fā)脈沖。為了保證系統(tǒng)正常工作,t1 中斷服務程 序的執(zhí)行時間必須滿足 t0 的這一時間要求,因為 t1 的中斷是嵌套在 t0 中斷之 后的。 4.1.2 中斷服務程序設計 因為本設計中 t1 的中斷是嵌套在 t0 中斷之后的,而 t0 中斷是溫度控制系 統(tǒng)的主程序,用于啟動 a/d 轉換、讀入采集數據、數字濾波、越限溫度報警和越 限處理、pid 計算輸出可控硅的同步觸發(fā)脈沖等。p1.3 引腳上輸出的該同步觸發(fā) 脈沖寬度由 t1 計數器的溢出中斷控制,8031 利用等待 t1 溢出中斷的時間完

42、成 把本次采樣值轉換成顯示值放入顯示緩沖區(qū)和調用溫度顯示程序。8031 從 t1 中 斷服務程序返回后便可恢復現場和返回主程序,以待下次 t0 中斷。 在 t0 中斷服務程序中,還需要用到一系列程序,例如:采樣溫度子程序、 數字濾波子程序、越限處理程序、pid 計算程序、標度轉換程序和溫度顯示程序。 pid 計算程序中,也需要用到雙字節(jié)加法程序 dsum,雙字求補程序 cpl1,雙字 節(jié)帶符號乘法程序 mult1。t1 中斷服務程序流程圖如圖 4.2 ,t2 中斷程序流程 圖如圖 4.3. t1 中斷程序 清標志位 d5h 停止輸出 返回 圖 4.2 t1 中斷程序流程圖 保護現場 采樣爐溫

43、數字濾波 上限? 上限處理 清本次越限標志 恢復現場返回 上限? 清上次越限標志 下限? 下限? 上次越限? t1 中斷完? y n y 置本次越限標志 計算 pid y y 取最大 pid 值輸 出 下限報警 求 補 求 補 從 p1.3 輸出 t1 初始化 溫度標度轉換 越限計數器+1 越限 n 次? 溫度顯示 上限報警 清越限標志 恢復現場返回 圖 4.3 t0 中斷服務程序流程圖 4.24.2 溫度控制程序子程序溫度控制程序子程序 4.2.1 鍵盤掃描和溫度顯示程序設計 1 為了簡化電路,降低成本,將所有的段選線并聯在一起,由一個 8 位 i/o 口控制,而選通斷采用分時選通,led

44、顯示器工作于共陰極動態(tài)顯示,逐位輪流 點亮各個 led,每一位保持 1ms,在 10ms20ms 內再一次點亮重復不止,這樣 利用人的視覺暫留,好像 6 位 led 同時點亮了,顯示子程序流程圖如圖 4.4。 dis 指向顯示緩沖區(qū)末址 7eh 先點亮最右邊的 led 送位控制信號 查表取字形碼 送出一位顯示 延時 1ms 指向下一格緩沖單元 r0-1 最左邊一位 顯示嗎? 位控制信號左移一位 結束 y n lp0 圖 4.4 顯示程序流程 2 本設計采用行列式矩陣鍵盤,單片機對它的控制采用程序掃描即中斷查詢 方式,a 口為選通口,b 口為顯示口,c 口為查詢輸入口。 鍵盤掃描子程序功能如下:

45、 (1)判斷鍵盤上有無鍵按下,方法為:pa 口輸出全掃描字 00h,讀 pc 口 狀態(tài),若 pc0pc1 口全為 1,則鍵盤無鍵按下,若不全為 1 則有鍵按下。 (2)去鍵的機械抖動影響:在判斷有鍵按下后,軟件延時一斷時間(5ms 10ms)后再判斷鍵盤狀態(tài),如果仍為有鍵按下狀態(tài),則認為確實有鍵被按下;否 則,按照鍵抖動處理。 (3)判別閉合鍵的鍵號:對鍵盤的列線進行掃描,掃描口為 pa0pa7,依 次輸出掃描字為 feh,fdh,fbh,f8h,efh,dfh,bfh,7fh,讀出 pc 口 的狀態(tài),若全為 1 則列線輸出為 0 的 這一列上沒有鍵閉合;否則,這一列有鍵閉 合。閉合鍵的鍵號等

46、于處于低電平的列號加上低電平的行的首鍵號,例如:pa 口 的輸出為 11111101,讀出 pc1pc0 為 01,則 1 行 1 列的鍵閉合, (4)cpu 對鍵的一次閉合僅作一次處理,采用的方法是等待鍵釋放后再將 鍵號送入累加器 a 中。 鍵盤掃描子程序流程圖如圖 4.5 調用子程序延遲 12ms 開始 有鍵閉合否? 有鍵閉合否? 閉合鍵釋放? 判斷閉合鍵鍵號棧 鍵入鍵號a 返回 y y y n n n 圖 4.5 鍵盤掃描子程序流程圖 4.2.2 爐溫采樣、數字濾波程序設計 采樣子程序 samp:流程圖如圖 4.6 采樣值起始地址送 r0 采樣次數送 r2 選通 in0 啟動 ad574

47、 延時 a/d 完成? 所有采樣結束 返回 y n n 圖 4.6 采樣子程序流程圖 一般微機應用系統(tǒng)前向通道中,輸入信號均含有個中噪音和干擾,它們來自 被測信號源、傳感器、外界干擾。為了進行準確的測量和控制,必須消除被測信 號中的噪音和干擾,噪音有兩大類:一類為周期性的,另一類為不規(guī)則隨機的 。 前者的典型代表為 50hz 的工作干擾。對于這類信號要采用硬件濾波電路能有效 地消除影響。后者為隨機信號,可采用數字濾波方法予于消除。所謂數字濾波, 就是通過程序計算或判斷來減少干擾在信號中的比重,故實際上它是一中程序濾 波。經常采用的是中值濾波、去極值法可對采樣的信號進行數字濾波,以消除常 態(tài)干擾

48、。 數字濾波子程序 filter:用濾波來控制對現場的采樣值的干擾。數字濾波程 序的算法很多,現以中值濾波為例作說明。 中值濾波原理得很簡單,只需對 2ch 、2dh 2eh 中三次采樣值進行比較, 取中間值存放到 2ah 單元內,以作為溫度標度轉換時使用。圖 4.7 為數字濾波程 序流程圖。 (2ch)送 a (2ch) (2dh)? (2ch) (2dh)? (2eh)(2ch)? (2dh) (2eh)? (2dh) (2eh)? (2ch)(2eh)? (2ch)和(2dh)互 換 2(ch)送 2ah 返 回 y n y y n (2dh)送 2ah 2dh n n (2dh)送 2

49、ah 2dh (2eh)送 2ah 2dh (2eh)送 2ah 2dh y n n y y 圖 4.7 數字濾波程序流程 4.2.3 溫度標度轉換算法 a/d 轉換器輸出的數碼雖然代表參數值的大小,但是并不代表有量綱的參數 值,必須轉換成有量綱的數值才能進行顯示,標度轉換有線性轉換和非線性轉換 兩種,本設計使用的傳感器線性好,在測量的量程制內基本能與溫度成線性關系。 溫度標度轉換程序 trast:目的是要把實際采樣的二進制值轉換的溫度值轉 換成 bcd 形式的溫度值,然后存放到顯示緩沖區(qū) 78h7dh。對一般的線性儀表 來說,標度轉換公式為: =+ ax 0 a) aa0m nn nn 0m

50、 0x (4.1) 式中,為一次儀表的下限, 0 a 為一次量程儀表的上限;為實際測量值(工程量) ; am 為儀表下限所對應的數字量; n0 為儀表上限所應的數字量; nm 為測量所得數字量。 nx 例如:若某熱處理儀表量程為 200800,在某一時刻計算機采樣得到的二 進制值 u(k)=cdh 則相應的溫度值為: =+=200+(800-200)=682 ax 0 a) aa0m nn nn 0m 0x 255 205 根據上述算法,只要設定熱電偶的量程,則相應的溫度轉換子程序 tarst 很 容易編寫,只要把這一算式變成程序,將 a/d 轉換后經數字濾波處理后的值代入, 即可計算出真實的

51、溫度值。具體算法如圖 4.8 保護現場 r0, r1 am 0 a 計算 - nxn0 r0, r1 nmn0 計算 - am 0 a 計算/ ) aa0mnn0m r0, r1 nxn0 計算 - nmn0 計算) aa0m nn nn 0m 0x r2 0 a =+ ax 0 a) aa0m nn nn 0m 0x (data) ax 返 回 圖 4.8 標度轉換程序 線性刻度標度變換子程序 4.34.3 pidpid 控制算法控制算法 4.3.1 pid 算法基本原理 通常,電爐爐溫的控制采用偏差控制算法。偏差控制的原理是先求出實測爐 溫對所需爐溫的偏差值,然后對偏差處理,從而獲得控制信

52、號去調節(jié)電爐的加熱 功率,以實現對爐溫的控制。 在工業(yè)上,偏差控制又稱為 pid(proportional integral and differential,比例積 分與微分) 。這是工業(yè)控制過程中應用廣泛的一種控制形式,一般都能收到令人滿 意的效果。 控制論告訴我們,pid 控制的理想微分方程為: u(t)= (4.2) dt ) t (de t dt) t ( e t 1 ) t ( e k t 0 d i p 其中 e(t)=r(t)-y(t)稱為偏差值,可作為溫度調節(jié)器的輸入信號,其中 r(t)為給 定值,y(t)為被測變量的值;為比例系數;為積分時間常數;為微分時間 kptitd

53、常數;u(t)為調節(jié)器的輸出控制器輸出控制信號。 但計算機只能處理數字信號,故上述數學方程必須加以變換。若設溫度的采 樣周期為 t,第 n 次的采樣得到的輸入偏差為,調節(jié)器輸出為 ,則有: enun (微分用差分代換) t ee dt ) t (de 1nn (積分用求和代替)tdt) t ( e n 0k k t 0 e 這樣式 4.2 便可寫為: (4.3) t ee t t e t 1 eku 1 -nn n 0k dk i npn 寫成遞推式為: ee 2 e t t e t t eeku 2-n1 -nn d n i 1 -nnpn + t ee t t e t 1 e 2-n1 -

54、n 1n 0k dk i 1 -nkp = e2ee t t e t t eeku 2-n1 -nn d n i 1 -nnp1 -n 把上式改寫為: u(n)=u(n-1)+e(n)-e(n-1)+ kp )2n(e) 1n(2e)n(e k )n(e kdi =u(n-1)+ (4.4) pppdip1 式 4.4 可以改寫成:ppp) 1k(pp dipk 計算 ke ki 根據 e(k)= 計算 e(k) k uu ir 計算 1 kp keke 計算 1 kp keke 計算 ke k keke i 1 kp 計算+ ke k keke i 1 kp 212kekeke kd 計算

55、p(k) 返 回 圖 4.9 pid 算法流程圖 4.3.2 pid 算法及子程序 pid 控制算法要用到雙字節(jié)加法程序 dsum,完成 r4r5+r3r2r7r6。 雙字節(jié)求補程序 cpl1 對 r3r2 求補,雙字節(jié)帶符號乘法子程序 mult1,因 加法和求補算法比較簡單,僅對雙字節(jié)帶符號乘法作詳細介紹。 入口條件:r7r6=被乘數 r5r4=乘數 出口條件:積為 32 位,按 r0 存入 標志位 :sign1 為地址 5ch sign2 為地址 5dh 具體算法如圖 4.10 帶符號雙字節(jié)乘法程序 被乘符號送 cy cy=1? 對 r7r6 求補 乘數符號送 cy cy=1? 調用無符號

56、乘法程 序 兩乘數符號皆負? 兩乘數符號皆正? 對積高 16 位求補 返 回 n 對 r5r4 求補 n y y n n 圖 4.10 帶符號雙字節(jié)乘法程序流程圖 5 結論與展望結論與展望 mcs-51 單片機,體積小,重量輕,抗干擾能力強,對環(huán)境要求不高,價格 低廉,可靠性高,靈活性好,本文的溫度控制系統(tǒng),只是單片機廣泛應用于各行 各業(yè)中的一例。 本設計僅以爐溫度為例進行恒溫控制,稍加改動后,可以廣泛應用于鑄造、 熱處理等電熱恒溫及保溫控制場合。 設計實現了溫度實時測量、顯示、控制系統(tǒng)。本設計溫度控制電路具有較高 的抗干擾性,實時性;在使用鍵盤與顯示器接口時,為了節(jié)省 i/o 口線常常把鍵

57、盤和顯示電路接在一起,構成實用鍵盤和顯示電路;控制算法采用傳統(tǒng)的 pid 控 制算法。方案具有較高的測量精度,溫度控制實時性更高,更加適合對溫度精度 要求較高的化工生產、電力工程等行業(yè),并希望通過本設計收到舉一反三和觸類 旁通的效果。 在設計過程中,首先在老師的指導下熟悉了系統(tǒng)的工藝,進行對象的分析, 按照要求確定方案。然后進行硬件和軟件的設計。通過設計使我掌握了微型機控 制系統(tǒng) i/o 接口的擴展方法,模擬量輸入/輸出通道的設計,常用控制程序的設計 方法,數據處理及線性標度技術,pid 算法的設計思想。 在領到課題時,本人對單片機的基本知識了解甚少,而匯編語言也是剛接觸, 所以花了大量的時間

58、去做準備工作。在老師的指導和幫助下,克服了一系列困難 終于完成了本設計,基于本人能力有限,該設計還有許多不足之處有待改進。 針對本課題目前的研究進展,作以下幾點展望: 1、本課題所設計的硬件電路和軟件程序,目前還處于理論設計階段,所有的 功能模塊有待實驗室調試通過。 2、本設計的所用到的 pid 控制算法有待優(yōu)化?;?pid 控制,神經網絡控 制,模糊控制的神經網絡模糊 pid 控制算法對存在滯后性、非線性、時變性、不 確定隨機干擾的系統(tǒng)的控制將會收到良好的效果。 3、為了能實現更精確的控制,可設置多個溫度采樣點。 附錄附錄 a:系統(tǒng)總電路圖:系統(tǒng)總電路圖 附錄附錄 b:鍵盤:鍵盤/led

59、接口圖接口圖 附錄附錄 c:系統(tǒng)源程序:系統(tǒng)源程序 org 0000h ajmp main org 0100h ajmp ct0 org 00bh ajmp ct1 org 001b main:dism0 data 78h dism1 data 79h dism2 data 7ah dism3 data 7bh dism4 data 7ch dism5 data 7dh mov sp, #50h ; 50h 送 sp clr 5eh ; 清本次越限標志 clr 5fh ; 清上次越限標志 clr a ; 清累加器 a mov 2fh, a ; mov 30h, a ; mov 3bh, a ;

60、 mov 3ch, a ; mov 3dh , a ; mov 3eh, a ; mov 44h, a ; mov dism0, a ; mov dism1, a ; mov dism2, a ; mov dism3, a ; mov dism4, a ; mov dism5, a ; mov dptr,#7f00h mov a, #07h , movx dptr, a ; 8155 初始化 mov tmod, #056h ; mov tl0, #06h ; t0 賦初值 mov th0, #06h ; clr pt0 ; 令 t0 為底中斷優(yōu)先級 setb tr0 ; 啟動 t0 工作 se

溫馨提示

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

評論

0/150

提交評論