基于單片機的溫度控制系統設計設計.doc_第1頁
基于單片機的溫度控制系統設計設計.doc_第2頁
基于單片機的溫度控制系統設計設計.doc_第3頁
基于單片機的溫度控制系統設計設計.doc_第4頁
基于單片機的溫度控制系統設計設計.doc_第5頁
已閱讀5頁,還剩38頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

基于單片機的溫度控制系統設計設計目 錄第1章 緒論11.1選題背景及目的11.2發展狀況21.3各章節主要內容3第2章 系統方案的提出與論證42.1傳感器的選擇42.2驅動部分52.3 PID的算法52.4 PID的控制52.4.1 開環控制系統52.4.2 閉環控制系統62.4.3 階躍響應62.5 PID控制的原理和特點62.6 PID控制器的參數整定7第3章 系統的硬件設計93.1總體方案93.2主控制器與采集電路通訊93.3溫度控制123.3.1D/A轉換123.3.2繼電器工作原理143.3.3 溫度控制電路原理153.4鍵盤顯示接口173.5報警部分18第4章 軟件設計204.1數字濾波子程序204.2PID計算程序21結論25參考文獻26致謝27附錄128附錄229附錄338第1章 緒論1.1 選題背景及目的在工農業生產和日常生活中,對溫度的測量及控制始終占據著重要地位。在冶金、化工、機械、食品等各類工業中,廣泛使用各種加熱爐、烘箱、恒溫箱等,它們均需要對溫度進行控制。在實驗室中,電阻爐溫度控制系統,是常見的自動控制系統。目前工業自動化水平已成為衡量各行各業現代化水平的一個重要標志。同時,控制理論的發展也經歷了古典控制理論、現代控制理論和智能控制理論三個階段。智能控制的典型實例是模糊全自動洗衣機等。自動控制系統可分為開環控制系統和閉環控制系統。一個控控制系統包括控制器、傳感器、變送器、執行機構、輸入輸出接口??刂破鞯妮敵鼋涍^輸出接口、執行機構,加到被控系統上;控制系統的被控量,經過傳感器,變送器,通過輸入接口送到控制器。不同的控制系統,其傳感器、變送器、執行機構是不一樣的。比如壓力控制系統要采用壓力傳感器。電加熱控制系統的傳感器是溫度傳感器。目前,PID控制及其控制器或智能PID控制器(儀表)已經有很多產品已在工程實際中得到了廣泛的應用,出現了各種各樣的PID控制器產品。各大公司均開發了具有PID參數自整定功能的智能調節器(intelligentregulator),其中PID控制器參數的自動調整是通過智能化調整或自校正、自適應算法來實現。有利用PID控制實現的壓力、溫度、流量、液位控制器,能實現PID控制功能的可編程控制器(PLC),還有可實現PID控制的PC系統等等??删幊炭刂破?PLC)是利用其閉環控制模塊來實現PID控制,而可編程控制器(PLC)可以直接與ControlNet相連,如Rockwell的PLC-5等。還有可以實現PID控制功能的控制器,如Rockwell的Logix產品系列,它可以直接與ControlNet相連,利用網絡來實現其遠程控制功能。 控制算法是微機化控制軟件系統的一個重要組成部分,整個系統的控制功能主要由控制算法來實現。目前提出的控制算法有很多種。在生產過程自動的發展歷程中,PID控制是歷史最久、生命力最強的基本控制方式。它是最早發展起來的控制策略之一,由于其算法簡單、魯棒性好和可靠性高,實際運行經驗和理論分析都表明,PID控制能滿足相當多的工業對象的控制要求,尤其適用于可建立精確模型的確定性控制系統。雖然隨著工業現代化的發展和其它各種先進技術的發展,自動化技術將會有更新的發展,但是,PID控制技術仍然不會過時,它還將在今后很長一段時間內占據主導地位。由于數字PID控制系統中,引入了計算機,可以充分利用計算機在對采集數據加以分析并根據所的結果做出邏輯判斷等方面的能力,編制出符合某種技術要求的控制程序、管理程序,實現對被控參數的控制與管理。而且PID控制規律的實現,是通過軟件來完成的。改變控制規律,只要改變相應的程序即可,因此,數字PID控制系統在生產過程中經常使用。 由于單片機和傳感器的多樣化,設計者可以根據溫度控制系統要應用的領域來決定選擇什么樣的單片機做主控制器,傳感器的選擇也因其使用的環境而不同。所以溫度控制系統的設計是多樣的。本文研究的系統采用的是北京集成電路設計中心與愛特梅爾公司聯合設計的AT89C52單片機。1.2發展狀況由于單片機技術在各個領域正得到越來越廣泛的應用,世界上許多集成電路生廠家相繼推出了各種類型的單片機。近十幾年來,單片機在生產過程控制、自動檢測、數據采集與處理、科技計算、商業管理和辦公室自動化等方面獲得了廣泛的應用。近幾年來,單片機的發展更為迅速,它已滲透到諸多學科和領域,以及人們生活的各個方面。在單片機家族的眾多成員中,MCS-51系列單片機以其優越的性能、成熟的技術及高可靠性和高性能價格比,迅速占領了工業測控和自動化工程應用的主要市場,成為國內單片機應用領域中的主流。目前可用于MCS-51系列單片機開發的硬件越來越多,與其配套的各類開發系統、各種軟件也日趨完善,因此,可以極方便的利用現有資源,開發出用于不同目的的各類應用系統。隨著集成電路技術的發展,單片微型計算機的功能也不斷增強,許多高性能的新型機種不斷涌現出來。單片機以其功能強、體積小、重量輕、可靠性高、造價低、通用靈活和開發周期短等優點,成為自動化和各個測控領域中廣泛應用的器件,也廣泛應用于衛星定向、汽車火花控制、交通管理和微波爐等專用控制上在工業生產中成為必不可少的器件,尤其是在日常生活中發揮的作用也越來越大。在溫度控制系統中,單片機更是起到了不可替代的核心作用。在工業生產如:用于熱處理的加熱爐、用于融化金屬的坩鍋電阻爐等,在日常生活中如:熱水器、電熱毯等等,都用到了電阻加熱的原理。隨著生產的發展,在工業中,上述設備對溫度的控制要求越來越高,隨著人們生活水平的提高,對日常用品的自動化也提出了更高的要求,單片機的不斷更新換代,滿足了上述的要求,達到自動控制品質的目的。1.3各章節主要內容 本論文共分成四章: 第1章主要是選題背景和發展狀況;第2章提出了系統的方案與論證,形成一個大體輪廓;第3章對系統硬件電路部分進行設計,主要是接口連接和硬件傳感器的設計;第4章系統的軟件部分設計,包括各個子程序和對應的流程圖。第2章 系統方案的提出與論證2.1傳感器的選擇在日常生活和生產中經常遇到需要對溫度進行檢測和控制的問題。在溫度檢測系統中就需要用到溫度傳感器。人們在很久以前就開始了解溫度的測量,所以溫度傳感器種類繁多,有熱敏電阻、紅外溫度傳感器、熱電偶等等。熱電偶和熱電阻測量的是電壓值,需要轉換成溫度,外部硬件電路很復雜,也不便于調試。另外使用熱電偶時,通常要求冷端T0保持0度,但實際上很難做到。除此之外還有模擬集成溫度傳感器,其特點是測溫誤差小、響應速度快、傳輸距離遠、體積小。但是仍然在測量到溫度值后要進行A/D轉換,電路復雜,使用不方便。有些集成溫度傳感器可以配微處理器和單片機,構成智能化的溫度檢測系統。這其中一個很大的變化就是傳感器由以前的模擬輸出轉變為直接數字輸出,省去了傳統溫度測量電路中的調理、變送、補償、轉換、修正等環節。這樣整個測量電路不會引入附加誤差,測溫系統的精度與分辨力完全由數字化的傳感器所決定。用這種先進的傳感器芯片構成測控溫度系統,具有電路簡單,測控溫度精度高等顯著優點。并且抗干擾能力強,能夠遠程傳輸數據,用戶可設定溫度上、下限,有越限自動報警的功能,自帶串行總線接口等優點,適配各種微控制器,含微處理器和單片機,是研制和開發具有高性價比的新一代溫度控制系統所必不可少的核心器件。智能溫度傳感器的典型產品有DS1820、DS18S20、DS18B20、DS1821、DS1822、DS1624、DS1629等型號。本文所選用的是美國DSLLAS半導體公司生產的DS18B20,它是該公司在研制出DS1820后最新推出的一種改進型產品。所以它具有DS1820的全部優點。在此基礎上,它有獨特的性能特點:(1) 獨特的單線接口僅需要一個端口引腳進行通信。(2) 不需要外部器件。(3) 可通過數據線供電,電壓范圍為3.05.5V。(4) 零待機功耗。(5) 溫度以9或12位數字量讀出。(6) 用戶可定義的非易失性溫度報警設置。(7) 報警搜索命令識別并標志超過程序限定溫度的器件。 2.2驅動部分方案一:此方案采用SPCE061A單片機實現,此單片機內置8路ADC,2路DAC,且集成開發環境中,配有很多語音播放函數,用SPCE061A實現語音播放極為方便。另外,比較方便的是該芯片內置在線仿真、編程接口,可以方便實現在線調試,這大大加快了系統的開發與調試。但是,他的成本太高我們不便采用。 方案二:此方案采用89C52單片機實現,AT89C52是低功耗、高性能的CMOS8位單片機,片上帶有8KFlash存儲器,且允許在系統改寫或用編程器編程。另外,AT89C51的指令系統和引腳80C52完全兼容。所以,AT89C52單片機應用極為廣泛。2.3 PID的算法基本偏差:e(t) 表示當前測量值與設定目標之差,設定目標是被減數,結可以是正或負。正數表示還沒有達到,負數表示已經超過了設定值。這是面向比例項用的變動數據。累計偏差:e(t)= e(t) + e(t-1) + e(t-2)+.+e(1),這是我們每一次測量到的偏差值的總和,這是代數和,考慮到正負符號的運算,這是面向積分項用的變動數據?;酒畹南鄬ζ睿篹(t) e(t-1),用本次的基本偏差減去上一次的基本偏差,用于考察當前控制的對象的趨勢,作為快速反應的重要依據,這是面向微分項的一個變動數據。 比例調節作用:是按比例反應系統的偏差,系統一旦出現了偏差,比例調節立即產生調節作用用以減少偏差。比例作用大,可以加快調節,減少誤差,但是過大的比例,使系統的穩定性下降,甚至造成系統的不穩定。積分調節作用:是使系統消除穩態誤差,提高無差度。因為有誤差,積分調節就進行,直至無差,積分調節停止,積分調節輸出一常值。微分調節作用:微分作用反映系統偏差信號的變化率,具有預見性,能預見偏差變化的趨勢,因此能產生超前的控制作用,在偏差還沒有形成之前,已被微分調節作用消除。因此,可以改善系統的動態性能。2.4 PID的控制2.4.1 開環控制系統 開環控制系統(open-loopcontrolsystem)是指被控對象的輸出(被控制量)對控制器(controller)的輸出沒有影響。在這種控制系統中,不依賴將被控量以形成任何閉反送回來的閉環回路。2.4.2 閉環控制系統閉環控制系統(closed-loopcontrolsystem)的特點是系統被控對象輸出(被控制量)會反送回來影響控制器的輸出,形成一個或多個閉環。閉環控制系統有正反饋和負反饋,若反饋信號與系統給定值信號相反,則稱為負反饋(NegativeFeedback),若極性相同,則稱為正反饋,一般閉環控制系統均采用負反饋,又稱負反饋控制系統。閉環控制系統的例子很多。比如人就是一個具有負反饋的閉環控制系統,眼睛便是傳感器,充當反饋,人體系統能通過不斷的修正最后作出各種正確的動作。如果沒有眼睛,就沒有了反饋回路,也就成了一個開環控制系統。另例,當一臺真正的全自動洗衣機具有能連續檢查衣物是否洗凈,并在洗凈之后能自動切斷電源,它就是一個閉環控制系統。2.4.3 階躍響應階躍響應是指將一個階躍輸入(stepfunction)加到系統上時,系統的輸出。穩態誤差是指系統的響應進入穩態后,系統的期望輸出與實際輸出之差。控制系統的性能可以用穩、準、快三個字來描述。穩是指系統的穩定性(stability),一個系統要能正常工作,首先必須是穩定的,從階躍響應上看應該是收斂的;準是指控制系統的準確性、控制精度,通常用穩態誤差來(Steady-stateerror)描述,它表示系統輸出穩態值與期望值之差;快是指控制系統響應的快速性,通常用上升時間來定量描述。2.5 PID控制的原理和特點在工程實際中,應用最為廣泛的調節器控制規律為比例、積分、微分控制,簡稱PID控制,又稱PID調節。PID控制器問世至今已有近70年歷史,它以其結構簡單、穩定性好、工作可靠、調整方便而成為工業控制的主要技術之一。當被控對象的結構和參數不能完全掌握,或得不到精確的數學模型時,控制理論的其它技術難以采用時,系統控制器的結構和參數必須依靠經驗和現場調試來確定,這時應用PID控制技術最為方便。即當我們不完全了解一個系統和被控對象或不能通過有效的測量手段來獲得系統參數時,最適合用PID控制技術。PID控制,實際中也有PI和PD控制。PID控制器就是根據系統的誤差,利用比例、積分、微分計算出控制量進行控制的。 (1)比例(P)控制比例控制是一種最簡單的控制方式。其控制器的輸出與輸入誤差信號成比例關系。當僅有比例控制時系統輸出存在穩態誤差(Steady-stateerror)。(2)積分(I)控制在積分控制中,控制器的輸出與輸入誤差信號的積分成正比關系。對一個自動控制系統,如果在進入穩態后存在穩態誤差,則稱這個控制系統是有穩態誤差的或簡稱有差系統(SystemwithSteady-stateError)。為了消除穩態誤差,在控制器中必須引入“積分項”。積分項對誤差取決于時間的積分,隨著時間的增加,積分項會增大。這樣,即便誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩態誤差進一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統在進入穩態后無穩態誤差。(3)微分(D)控制在微分控制中,控制器的輸出與輸入誤差信號的微分(即誤差的變化率)成正比關系。自動控制系統在克服誤差的調節過程中可能會出現振蕩甚至失穩。其原因是由于存在有較大慣性組件(環節)或有滯后(delay)組件,具有抑制誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使抑制誤差的作用的變化“超前”,即在誤差接近零時,抑制誤差的作用就應該是零。這就是說,在控制器中僅引入“比例”項往往是不夠的,比例項的作用僅是放大誤差的幅值,而目前需要增加的是“微分項”,它能預測誤差變化的趨勢,這樣,具有比例+微分的控制器,就能夠提前使抑制誤差的控制作用等于零,甚至為負值,從而避免了被控量的嚴重超調。所以對有較大慣性或滯后的被控對象,比例+微分(PD)控制器能改善系統在調節過程中的動態特性。2.6 PID控制器的參數整定 PID控制器的參數整定是控制系統設計的核心內容。它是根據被控過程的特性確定PID控制器的比例系數、積分時間和微分時間的大小。PID控制器參數整定的方法很多,概括起來有兩大類:一是理論計算整定法。它主要是依據系統的數學模型,經過理論計算確定控制器參數。這種方法所得到的計算數據未必可以直接用,還必須通過工程實際進行調整和修改。二是工程整定方法,它主要依賴工程實驗,直接在控制系統的試驗中進行,且方法簡單、易于掌握,在工程實際中被廣泛采用。PID控制器參數的工程整定方法,主要有臨界比例法、反應曲線法和衰減法。三種方法各有其特點,其共同點都是通過試驗,然后按照工程經驗公式對控制器參數進行整定。但無論采用哪一種方法所得到的控制器參數,都需要在實際運行中進行最后調整與完善。現在一般采用的是臨界比例法。利用該方法進行PID控制器參數的整定步驟如下:(1)首先預選擇一個足夠短的采樣周期讓系統工作;(2)僅加入比例控制環節,直到系統對輸入的階躍響應出現臨界振蕩,記下這時的比例放大系數和臨界振蕩周期;(3)在一定的控制度下通過公式計算得到PID控制器的參數。第3章 系統的硬件設計 3.1總體方案該系統是以AT89C52單片機為主控制器的智能化溫度控制系統。采用定時檢測和調節的方式。首先由定時器或軟件定時,定時時間到后啟動智能溫度傳感器對溫度進行檢測,測量結果送CPU,并在CPU的控制下顯示結果。利用鍵盤輸入控制目標。CPU把測量的結果與給定值比較,進行PID計算,然后根據計算結果輸出DAC信號,并加上反相器使輸出電壓范圍為05V,通過在固態繼電器前端連入電阻使電壓變為11.7V,固態繼電器在該電壓范圍內線性工作,輸出的電壓控制繼電器的通導,對爐溫進行調節。整個系統構成一個閉環控制系統,從而使爐溫控制在預定的范圍之內。溫度采集部分采用DS18B20測溫,它是單線智能溫度傳感器,不需要A/D轉換,可以直接測量出數字式的溫度值送入主控制器。采集溫度時對DS18B20進行初始化,然后執行ROM操作命令,再執行暫存器操作命令,最后完成數據處理。通過鍵盤向CPU輸入用戶設定的報警溫度上限值和下限值,完成溫度轉換之后,DS18B20就把測得的溫度值同上下限值比較,如果超出所設定的范圍,將該器件的報警標志位置位,并對CPU發出的報警搜索命令做出響應。該傳感器使用同步串行總線接口技術,串行通信是將數據字節分成一位一位的形式在一條傳輸線上逐個地傳送,數據接收設備將接收到的串行形式數據轉換成并行形式進行存儲和處理。同步通信時要建立發送方時鐘對接收方時鐘的直接控制,使雙方達到完全同步。通過主控制器的定時器建立一個30s的同步脈沖實現與溫度檢測回路的通信。CPU經過單線接口訪問DS18B20,CPU對ROM操作完畢,即發出控制操作命令,使DS18B20完成溫度測量并將結果存入高速暫存器中,然后讀出該結果。由繼電器及其外部電路如D/A轉換等實現對溫度的控制功能。 3.2主控制器與采集電路通訊AT89C52是低功耗、高性能的CMOS8位單片機,片上帶有8KFlash存儲器,且允許在系統改寫或用編程器編程。另外,AT89C51的指令系統和引腳80C52完全兼容。所以,AT89C52單片機應用極為廣泛。單片機在開機時都需要復位,以便CPU以及其他功能部件都處于一個確定的初始狀態,并從這個狀態開始工作。AT89C52的RST引腳是復位信號的輸入端。復位信號是高電平有效,持續時間要有24個時鐘周期以上。本系統中時鐘頻率為12MHz,復位脈沖寬度至少應為2s。主控制器與傳感器連接電路如圖3.1所示。 圖3.1 主控器與傳感器的連接電路由AT89C52根據總線的接口規范向智能溫度傳感器發送諸如啟動轉換、設置配置寄存器、讀取溫度等命令。智能溫度傳感器則向AT89C52回送當前溫度值等數據。二者之間的數據傳輸完全是串行的。主控制器與溫度檢測系統使用同步串行總線通信,串行通信是將數據字節分成一位一位的形式在一條傳輸線上逐個地傳送,數據接收設備將接收到的串行形式數據轉換成并行形式進行存儲和處理。同步通信時要建立發送方時鐘對接收方時鐘的直接控制,使雙方達到完全同步。此時,傳輸數據的位之間的距離均為“位間隔”的整數倍,同時傳送的字符間不留間隙,即保持位同步關系,也保持字符同步關系。發送方對接收方的同步通過外同步來實現。發送方在每個比特周期都向接收方發送一個同步脈沖。接收方根據這些同步脈沖來完成接收過程。DS18B20有嚴格的通信協議來保證各位數據傳輸的正確性和完整性。單線總線在空閑狀態下呈高電平。操作單線總線時,必須從空閑狀態開始。單線總線加低電平的時間超過480s時,總線上所有的器件都被復位。通信協議規定了復位脈沖、應答脈沖、寫0、寫1、讀0、讀1等幾種信號的時序。除了應答脈沖,其余信號均由CPU控制。寫時序包括寫“0”時序和寫“1”時序。所有寫時序都至少需要60s,且在兩次獨立的寫時序之間至少需要1s的恢復時間。兩種寫時序均起始于主機拉低總線。對于寫“1”時序,主機在拉低總線后,接著必須在15s內釋放總線,由上拉電阻將總線拉至高電平;而對于寫“0”時序,在主機拉低總線后,只需要在整個時序內保持低電平即可(至少60s)。在寫時序開始后的1560s期間內,保持單線器件采樣總線電平狀態。如果在此期間采樣為高電平,則對該器件寫入邏輯1,低電平則寫入邏輯0。只有在主機啟動了讀時序后,器件才向主機傳輸數據。所以一般在主機給單線器件發送了讀數據命令后,必須馬上產生讀時序,以便器件能傳輸數據。所有的讀時序需要至少60s,且在兩次獨立的讀時序之間需要1s的恢復時間。每個讀時序都由主機發起,拉低總線至少1s,然后釋放單線。在主機發起讀時序之后,單線器件開始在總線上發送0或1。若其發送1,則保持總線為高電平。若發送0,則器件拉低總線,在該時序結束后釋放總線,由上拉電阻將總線拉回空閑高電平狀態。從機發出的數據在起始時序之后15s內保證可靠有效。因此主機在讀時序期間必須釋放總線,并且要在時序開始后的15s內完成采樣總線狀態。每次的命令和數據的傳輸都是從主機啟動寫時序開始的,如果要求單線器件回送數據,在進行完寫命令后,主機需要啟動讀時序完成數據接收。數據和命令的傳輸都是低位在先。在對一位的“0”和“1”規定好時序后,命令字節和數據字節的發送就表現為多個“0”、“1”在時間上的排列。主CPU經過單線接口訪問DS18B20的工作流程為:對DS18B20進行初始化,接著進行ROM操作命令,然后進行存儲器操作命令,最后對數據處理。CPU對ROM操作完畢即發出控制操作命令,使DS18B20完成溫度測量并將測量結果存入高速暫存器中,然后讀出結果。當DS18B20接收到溫度轉換命令后,開始啟動轉換。轉換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節。單片機可以通過單線接口讀出該數據,讀數據時低位在先,高位在后。當符號位S=0時,表示測得的溫度值為正值,可以直接將二進制位轉換為十進制;當符號位S=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制值。一旦CPU檢測到從屬器件的存在,就發出ROM命令。所有ROM操作命令均為8位字長。主CPU對ROM的操作命令有以下5種:(1)讀ROM命令。該命令允許CPU讀取DS18B20中的8位產品系列編碼、48位序列號以及8位的CRC。只有在總線上存在DS18B20(溫度采集)的時候才能使用這個命令。(2)符合ROM命令。主CPU在發出“符合”ROM命令后,接著送出64位ROM數據序列,從而使CPU實現對單線總線上特定DS18B20的尋址。(3)搜索ROM命令。允許主CPU使用“消除法”識別總線上所有DS18B20的64位ROM編碼,完成整個系統的初始化工作。(4)跳過ROM命令。該命令使主CPU不必提供64位ROM編碼就能訪問DS18B20。在單線總線的情況下可以節省時間。(5)報警搜索命令。該命令僅在最近一次溫度測量出現報警的情況下,DS18B20才對該命令做出響應。報警條件定義為溫度高于TH或者低于TL。只要DS18B20不掉電,報警狀態將一直保持,直到再一次測得的溫度值達不到報警條件。3.3溫度控制3.3.1 D/A轉換由于計算機采集與處理的是數字量,而受控對象需要的是模擬量信號,所以需要進行D/A轉換。D/A轉換器是一種能把數字量轉換成模擬量的電子器件。DAC的種類繁多,DAC0832是常用的一種,由美國國民半導體公司研制,是一個8位單片D/A轉換器,它的連接電路如圖3.2所示。圖3.2 DAC0832的硬件電路DAC0832主要由兩個8位寄存器和一個8位D/A轉換器組成。8位輸入寄存器用于存放CPU送來的數字量,使輸入數字量得到緩沖和鎖存,由加以控制。8位DAC寄存器用于存放等待轉換的數字量,由控制。8位D/A轉換電路由8位T型電阻網絡和電子開關組成,電子開關受8位DAC寄存器輸出控制,T型電阻網絡能輸出和數字量成正比的模擬電流。因此,DAC0832通常需要外接運算放大器才能得到模擬輸出電壓。DAC0832的數字量輸入線DI7DI0和CPU數據總線相連,用于輸入CPU送來的待轉化數字量,DI7為最高位。CS為片選線,當CS為低電平時,本片被選中工作;當為高電平時,本片不被選中工作。ILE為允許數字量輸入線。當ILE為高電平時,8位輸入寄存器允許數字量輸入。為傳送控制輸入線,低電平有效。和為兩條寫命令輸入線。用于控制數字量輸入到輸入寄存器:若ILE為“1”、為“0”和為“0”同時滿足,8位輸入寄存器接收信號;若上述條件中有一個不滿足,8位輸入寄存器鎖存DI7DI0上的輸入數據。用于控制D/A轉換的時間:若和同時為低電平,則8位DAC寄存器輸出跟隨輸入;否則8位DAC寄存器鎖存數據。和的脈沖寬度要求不小于500ms,即便VCC提高到15V,其脈寬也不應小于100ms。DAC0832采用R-2R T型網絡轉換法。它由二級緩沖寄存器和D/A轉換電路組成,可直接與CPU總線連接,接口比較簡單。Rfb為運算放大器反饋線,常常接到運算放大器輸出端。IOUT1和IOUT2為兩條模擬電流輸出線。IOUT1+IOUT2為一常數:若輸入數字量為全“1”,則IOUT1為最大,IOUT2為最小;若輸入數字量為全“0”,則IOUT1最小,IOUT2最大。為了保證額定負載下輸出電流的線性度,IOUT1和IOUT2引腳上的電位必須盡量接近低電平。為此,IOUT1和IOUT2通常接運算放大器輸入端。由于輸出的模擬電壓范圍是-50V,所以再加以反相器使電壓變為0+5V。VREF為參考電壓輸入端,用來將外部基準電壓與片內的T型電阻網絡連接。DAC用途很廣,在需要單極性模擬電壓環境下,可以采用如圖3.2所示接線。由D/A轉換器原理可得出輸出電壓對輸入數字量的關系為:式中;為一常數。顯然,和B成正比關系。輸入數字量B為0時,也為0,輸入數字量為255時,為負的最大值,輸出電壓為負的單極性。作為單片機的一個外圍I/O接口,口地址設為0DFFH。這樣CPU只要執行一條輸出指令,就可以把數據直接寫入0832的DAC寄存器,然后輸出一個模擬的電壓信號。3.3.2 繼電器工作原理繼電器是電氣控制中常用的控制器件。使用觸點式繼電器控制,由于采用電磁吸合方式,在開關瞬間,觸點容易產生電火花,從而引起干擾。在大功率、高壓等場合,觸點還容易氧化,因而影響整個系統的可靠性。所以本系統中采用固態繼電器,較好地克服了這方面的問題。固態繼電器是用晶體管或可控硅代替常規繼電器的觸點開關,再把光電隔離器作為前級構成一個整體。因此,固態繼電器實際上是一種帶光電隔離器的無觸點開關。固態繼電器有直流型和交流型之分。對于交流供電的負載,其開關量的輸出控制可用交流型固態繼電器來實現。由于固態繼電器輸入控制電流小,輸出無觸點,所以與電磁觸點式繼電器相比,具有體積小、重量輕、無機械噪聲、無抖動和回跳、開關速度快、工作可靠等優點,在計算機控制系統中應用廣泛。下面說明交流型SSR的工作原理,圖3.3是它的工作原理框圖。圖3.3 SSR工作原理圖從整體上看,SSR只有兩個輸入端(A和B)及兩個輸出端(C和D),是一種四端器件。工作時只要在A、B上加上一定的控制信號,就可以控制C、D兩端之間的“通”和“斷”,實現“開關”的功能,其中耦合電路的功能是為A、B端輸入的控制信號提供一個輸入/輸出端之間的通道,但又在電氣上斷開SSR中輸入端和輸出端之間的(電)聯系,以防止輸出端對輸入端的影響,耦合電路用的元件是“光耦合器”,它動作靈敏、響應速度高、輸入與輸出端間的絕緣(耐壓)等級高;由于輸入端的負載是發光二極管,這使SSR的輸入端很容易做到與輸入信號電平相匹配,在使用時可直接與計算機輸出接口相接,即受“1”與“0”的邏輯電平控制。觸發電路的功能是產生合乎要求的觸發信號,驅動開關電路工作。但由于開關電路在不加特殊控制電路時,將產生射頻干擾并以高次諧波或尖峰等污染電網,為此特設“過零控制電路”。所謂“過零”是指,當加入控制信號,交流電壓過零時,SSR即為通態;而當斷開控制信號后,SSR要等待交流電的正半周與負半周的交界點(零電位)時,SSR才為斷態。這種設計能防止高次諧波的干擾和對電網的污染。吸收電路是為防止從電源中傳來的尖峰、浪涌(電壓)對開關器件雙向可控硅管的沖擊和干擾(甚至誤動作)而設計的,一般是用“R-C”串聯吸收電路或非線性電阻(壓敏電阻器)。3.3.3 溫度控制電路原理由于DAC0832輸出的電壓范圍是-50V,不能直接加在固態繼電器上。固態繼電器的線性工作范圍是11.7V,所以在DAC0832輸出端加上反相器使電壓范圍變成05V再加上合適的電阻,使輸出電壓范圍縮小到11.7V,以便使固態繼電器的工作在線性范圍內,再將固態繼電器與電阻爐連接,通過固態繼電器的通導來對電阻爐進行溫度控制。電路圖如圖3.4所示。圖3.4 溫度控制電路在圖3.4中VCC=+5V,設DAC0832的輸出電壓為,設四個電阻相交于A點,R4的作用是限制電流,其電流很小,在計算中暫時不考慮。為了使輸出電壓在11.7V范圍內,當=0V時,=1V,此時與并聯后再與串聯,則根據電流關系可得到關系式:將=1v,=5v代入關系式可得即 (1)當=5V,=1.7V此時與并聯后與串聯,可得關系式=1.7V,=5V時代入得:即1.7=3.3+3.3可得 (2)由(1)(2)兩式得 即 可得 選定=1K,則4.7K,3.3K將選定的電阻連入電路,當=0V時,求得 =0.99957V1V當=5V時,求得 =1.7014V1.7V證實了所選電阻阻值可以滿足輸出電壓在11.7V范圍內,可以使固態繼電器工作在線性范圍內,以便對電阻爐的溫度進行控制。3.4 鍵盤顯示接口 如圖3.5所示,鍵盤顯示系統采用8155芯片控制44矩陣鍵盤和4個七段數碼管LED顯示,以實現用戶的輸入和數據輸出。鍵盤的16個鍵中09為數字鍵,AF為功能鍵,完成參數設置、顯示方式選擇、自動/手動轉換、系統停止和啟動。 系統中將8155的B口作為顯示接口,經74LS48的驅動器與LED相連,8155的A口的PA3PA0作為掃描接口,從B口的PB3PB0讀入列值,鍵盤處理為中斷方式,所以8155的B口工作在兩種方式下:在顯示狀態時為輸入方式,在鍵盤中斷服務程序處理過程中為輸入方式。 圖3.5 LED數碼顯示電路 動態顯示需要CPU時刻對顯示器件進行數據刷新,顯示數據有閃爍感,占用的CPU時間多。這兩種顯示方式各有利弊;靜態顯示雖然數據穩定,占用很少的CPU時間,但每個顯示單元都需要單獨的顯示驅動電路,動態顯示雖然有閃爍感,占用的CPU時間多,但使用的硬件少,能節省線路板空間。 3.5 報警部分 可采用單頻報警,如圖3.6所示,其中7406是驅動器,接在8031的P1.0口,在8031使P1.0輸出高電平時,7406輸出低電平,使蜂鳴器鳴音,反之,使蜂鳴器停止鳴音。 功率放大電路我們選用采用了PNP型共發射極放大電路,它的輸入阻抗幾百幾千歐,輸出阻抗幾千幾十千歐,電壓放大倍數大,電流放大倍數大,功率放大倍數大。電聲器件選用最常用的電動式錐形紙盆揚聲器。 圖3.6報警電路 第4章 軟件設計 溫度控制程序所要完成的任務:8031,8155芯片的初始化以及分配內存單片及設置定時器參數,溫度采樣,數字濾波,進行轉換計算,判斷溫度是否在規定范圍內,超限報警和處理;顯示溫度及輸入控制。 4.1主程序 溫度控制系統的主程序如圖4.1所示。程序開始內部RAM和顯示初始化 有key處理key確認鍵按下測 溫顯示溫度控溫時刻到PID超限報 警結 束YNNYNNY 圖 4.1溫度控制系統主程序圖4.2 PID計算程序我們可以根據上式編程,相應程序框圖如圖4.2所示,根據 計算計算返回計算計算計算P(K)計算 圖4.2 PID計算程序流程圖程序清單如下:PID:MOVR5,31H ;UR送R5R4MOVR4,32H;UR送R5R4MOVR3,2AH;Ui(K)送R3R2MOVR2,#00H;Ui(K)送R3R2ACALLCPL1;取Ui(K)的補碼ACALLDSUM;計數E(K)MOV39H,R7;E(K)送39H和3AH單元MOV3AH,R6;E(K)送39H和3AH單元MOVR5,35H;KI送R5R4MOVR4,36H;KI送R5R4MOVR0,#4AH;積始址4AH送R0ACALLMULT1;計算PI=KI*E(K)MOVR5,39H;E(K)送R5R4MOVR4,3AH;E(K)送R5R4MOVR3,3BH;E(K-1)送R3R2 MOVR2,3CH;E(K-1)送R3R2ACALLCPL1;對E(K-1)求補ACALLDSUM;求E(K)-E(K-1)MOVR5,33H;Kp送R5R4MOVR4,34H;Kp送R5R4MOVR0,#46H;積始址46H送R0ACALLMULT1;求得PpMOVR5,49H;Pp的高16位送R5R4MOVR4,48H;Pp的高16位送R5R4MOVR3,4DH;KP1送R3R2MOVR2,4CH;KP1送R3R2ACALLDSUM;求得Pp+PIMOV4AH,R7;存入4AH和4BH單元MOV4BH,R6;存入4AH和4BH單元MOVR5,39H;E(K)送R5R4MOVR4,3AH;E(K)送R5R4MOVR3,3DH;E(K-2)送R3R2MOVR2,3EH;E(K-2)送R3R2ACALLDSUM;計算E(K)+E(K-2)MOVR5,R7;存入R5R4MOVR4,R6;存入R5R4MOVR3,3BH;E(K-1)送R3R2MOVR2,3CH;E(K-1)送R3R2ACALLCPL1;對E(K-1)求補 ACALLDSUM;計算E(K)+E(K-2)-E(K-1)MOVR5,R7;存入R5R4MOVR4,R6;存入R5R4MOVR3,3BH;E(K-1)送R3R2MOVR2,3CH;E(K-1)送R3R2ACALLCPL1;對E(K-1)求補ACALLDSUM;求E(K)-2E(K-1)+E(K-2)MOVR5,37H;KD送R5R4MOVR4,38H;KD送R5R4MOVR0,#46H;積始址46H送R0ACALLMULT1;求得PDMOVR5,49H;送入R5R4MOVR4,48H;送入R5R4MOVR3,4AH;Pp+PI送R3R2MOVR2,4BH;Pp+PI送R3R2ACALLDAUM;求得Pp+PI+PDMOVR3,R7;送入R3R2MOVR2,R6;送入R3R2MOVR5,2FH;P(K-1)送R5R4MOVR4,30H;P(K-1)送R5R4ACALLDSUM;求出P(K)MOV2FH,R7;存入2FH和30H單元MOV30H,R6;存入2FH和30H單元MOV3DH,3BH;E(K-1)送E(K-2)單元MOV3EH,3CH;E(K-1)送E(K-2)單元MOV3BH,39H;E(K)送E(K-1)單元 MOV3CH,3AH;E(K)送E(K-1)單元RET 結 論本系統核心是控制算法的設計和實現,各方面指標基本達到題目要求。通過完成本次設計,我對PID控制算法的實現、單片機內部工作原理及其相關芯片實現的功能有了更深、更進一步的了解和認識,使以前所學的知識更全面、系統化了。此系統是一種高效低成本的系統,他具有很多優點,適合在很多場所中的具體情況,具有很強的推廣優勢,而且很方便實現應用場所的實時操控。 本設計是基于PID算法的應用,但是還有許多需要改進的地方。如對于溫度傳感器,供我們選擇的也有很多種,但是DS18B20溫度傳感器芯片可直接把溫度轉換為數字信號供單片機讀取是我們選擇該芯片的主要原因。但現在新出現的傳感器功能更加的齊全在許多的領域中都有廣泛的應用也是可以選擇的。 通過對溫度控制系統的設計,我在各方面都掌握了很多有用的知識,比如在傳感器方面、計算機軟件硬件技術等。達到了畢業設計的最終目的。參考文獻:1 胡漢才. 單片機原理及接口技術M. 北京:清華大學出版社,1996,46702 何立民. 單片機應用技術選編5M. 北京:北京航空航天大學出版社.1998,3803853 張振榮. MCS-51單片機原理及實用技術M. 北京:人民郵電出版社,2000,1922214 曹玉林,曹巧媛. 單片機原理與接口技術M. 北京:國防科技大學出版社.2000,64925 楊忠煌. 單芯片8051實務與應用M. 北京:中國水利水電出版社.2001,59766 楊振江. 單片機實用子程序及應用實例M. 西安:西安電子科技大學出版社.2002,3238、1361427 沈紅衛. 單片機應用系統設計實例與分析M. 北京:北京航空航天大學出版社.2003,2531

溫馨提示

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

評論

0/150

提交評論