基于模糊PID的恒溫控制系統(tǒng)設(shè)計_第1頁
基于模糊PID的恒溫控制系統(tǒng)設(shè)計_第2頁
基于模糊PID的恒溫控制系統(tǒng)設(shè)計_第3頁
基于模糊PID的恒溫控制系統(tǒng)設(shè)計_第4頁
基于模糊PID的恒溫控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、畢 業(yè) 設(shè) 計 畢業(yè)設(shè)計題目:基于模糊畢業(yè)設(shè)計題目:基于模糊 pidpid 算法的恒溫控制系統(tǒng)設(shè)計算法的恒溫控制系統(tǒng)設(shè)計 學生姓名:學生姓名: 學學 號:號: 系(院):物理與機電工程學院自動化系系(院):物理與機電工程學院自動化系 專專 業(yè):自動化業(yè):自動化 班班 級:級: 級級 指導教師姓名及職稱:指導教師姓名及職稱: 講師講師 起止時間:起止時間: 2010 年 10 月 2011 年 5 月 (教務處制表)(教務處制表) 基于模糊基于模糊pidpid算法的恒溫控制系統(tǒng)設(shè)計算法的恒溫控制系統(tǒng)設(shè)計 摘要:摘要: 在工業(yè)生產(chǎn)中,溫度控制通常具有單向性、滯后性、大慣性和時變性的特點,所以實 現(xiàn)

2、溫度控制的快速性和準確性,對于提高產(chǎn)品質(zhì)量和生產(chǎn)效率有很重要的現(xiàn)實意義。本系統(tǒng)設(shè)計以 恒溫水箱為被控對象,以單片機為控制器設(shè)計一恒溫控制系統(tǒng),恒溫范圍為 4090中的某一溫 度值,溫度誤差在 0.5以內(nèi)。在控制算法上,由于傳統(tǒng)的 pid 算法其參數(shù)設(shè)定后,系統(tǒng)的運行、控 制環(huán)境的變化、執(zhí)行機構(gòu)的參數(shù)發(fā)生變化而導致系統(tǒng)的數(shù)學模型發(fā)生改變時,這些參數(shù)不能進行適 應性地改變。而模糊控制其優(yōu)點是不需要被控對象的數(shù)學模型,而根據(jù)人工控制規(guī)律控制決策表, 然后由該表決定控制量的大小,將模糊控制和 pid 控制結(jié)合起來,即可得到模糊控制靈活而適應性 強,又可得到 pid 控制精度高、靜態(tài)性能好的優(yōu)點。 關(guān)鍵

3、詞:關(guān)鍵詞:恒溫箱溫度控制;pid 控制;模糊控制;單片機 based on fuzzy pid control temperature control system design abstract:in industrial production, temperature control usually has one-way, hysteresis, large inertia and time-varying characteristic, the realization of temperature control of the rapidity and the accuracy, t

4、o improve the quality of our products and production efficiency has very important practical significance. this system design with the thermostatic water tank as controlled object, by microcomputer as the controller design a temperature control system, constant temperature range for 40 90 temperatur

5、e, the temperature of a certain error within 0.5 . in the control algorithm, due to the traditional pid algorithm its parameters settings, the operation of the system, control environment changes, actuator parameters change and cause mathematic model of the system change, these parameters are not fi

6、t to change. and fuzzy control its advantage is not need to be controlled object, and the mathematical model according to artificially control laws governing decision table, and then by the quantity of decision control table, fuzzy control and pid control combined, you will get more flexible and ada

7、ptable fuzzy control, and can get pid control precision and static performance good points. key words: constant temperature box temperature control;pid control;fuzzy control;scm 目錄目錄 1 緒論. .1 1.1 設(shè)計背景及意義. .1 1.2 設(shè)計要求及內(nèi)容. .1 2 系統(tǒng)總體設(shè)計方案. .2 2.1 恒溫控制系統(tǒng)的組成.2 2.2 系統(tǒng)工作原理.3 3 系統(tǒng)硬件設(shè)計 .4 3.1 單片機 at89s52 介紹.

8、.4 3.1.1 at89s52 主要性能參數(shù).4 3.1.2 at89s52 引腳圖.5 3.1.3 at89s52 存儲器配置.7 3.2 溫度傳感器.9 3.2.1 ds18b20 的簡介.9 3.2.2 ds18b20 的測溫流程.12 3.3 溫度顯示模塊.12 3.4 溫度控制模塊.13 3.4.1 溫度控制原理.13 3.4.2 光電耦合器功能.13 3.5 報警和按鍵電路.14 3.6 直流穩(wěn)壓電源.15 4 系統(tǒng)軟件設(shè)計.16 4.1 主程序流程.16 4.2 模糊 pid 控制模塊.17 4.2.1 模糊 pid 控制器的結(jié)構(gòu)設(shè)計.17 4.2.2 輸入量的模糊化.17 4

9、.2.3 模糊 pid 控制規(guī)則的設(shè)計.18 4.2.4 模糊量的清晰化.20 4.3 鍵盤管理模塊.21 4.4 顯示模塊.22 4.5 溫度控制模塊.23 4.6 溫度越限報警模塊.24 5 恒溫控制箱控制算法研究與仿真.25 5.1 恒溫系統(tǒng)的數(shù)學模型.25 5.2 模糊 pid 控制算法與仿真.26 5.3 本章小結(jié).29 6 設(shè)計總結(jié).29 致 謝. .30 參考文獻. .31 0 基于模糊基于模糊 pidpid 算法的恒溫控制系統(tǒng)設(shè)計算法的恒溫控制系統(tǒng)設(shè)計 2007 級 自動化專業(yè):賴海清 指導教師: 何瑩 講師 1 1 緒論緒論 1.1 設(shè)計背景及意義 溫控技術(shù)無論是在工業(yè)生產(chǎn),

10、還是日常生活中都起著非常重要的作用。在冶 金、石油、化工、電力和現(xiàn)代農(nóng)業(yè)等行業(yè),溫度是極為重要而又普遍的熱工參 數(shù)之一,在普通家庭里熱水器、電飯煲、電烤箱等依賴于溫控技術(shù)的家電設(shè)備 也是必不可少??梢哉f溫度控制技術(shù)無處不在。 常規(guī)的溫度控制方法以設(shè)定溫度為臨界點,超出設(shè)定允許范圍即進行溫度 調(diào)控:低于設(shè)定值就加熱,反之就停止或降溫。這種方法實現(xiàn)簡單、成本低, 但控制效果不理想,控制溫度精度不高、容易引起震蕩,達到穩(wěn)定點的時間也 長,而采用模糊 pid 算法進行溫度控制,它具有控制精度高,能夠克服容量滯 后的特點,特別適用于負荷變化大、容量滯后較大、控制品質(zhì)要求又很高的并 且能夠自適應的控制系統(tǒng)

11、。 單片機作為控制系統(tǒng)中必不可少的部分,在各個領(lǐng)域得到了廣泛的應用, 用單片機進行實時系統(tǒng)數(shù)據(jù)處理和控制,保證系統(tǒng)工作在最佳狀態(tài),提高系統(tǒng) 的控制精度,有利于提高系統(tǒng)的工作效率。本系統(tǒng)采用單片機編程實現(xiàn)模糊 pid 算法進行溫度控制。 1.2 設(shè)計內(nèi)容及要求 本課題要求以恒溫水箱為被控對象,以單片機為控制器設(shè)計一恒溫控制系統(tǒng), 恒溫水箱的設(shè)定溫度通過系統(tǒng)的鍵盤輸入,溫度設(shè)定值與箱體內(nèi)的實際溫度可 實時顯示。要求恒溫范圍為 40-90中的某一溫度值,溫度誤差在 0.5以內(nèi), 要求采用合適的控制算法。 本系統(tǒng)的主電路以單片機為核心,用來存儲數(shù)據(jù)和程序,并進行一系列的運 算和處理。過程輸入輸出通道由

12、測量電路和輸出電路等構(gòu)成,其中測量電路功 能為將測量到的信號經(jīng)過處理變成數(shù)字信號送入單片機中進行處理,組成測量 1 電路的元器件類型的選擇和被控溫度及精度等級有關(guān)。輸出電路用來輸出數(shù)字 信號,利用鍵盤可以實現(xiàn)人與系統(tǒng)之間的聯(lián)系。單片機系統(tǒng)可用數(shù)碼管顯示溫 度的實際值和預設(shè)值,可用鍵盤輸入設(shè)定值。 2 系統(tǒng)總體設(shè)計方案 2.1 恒溫控制系統(tǒng)的組成 本系統(tǒng)設(shè)計成一個溫度閉環(huán)控制系統(tǒng),主回路由單片機、放大電路、驅(qū)動 電路和電加熱絲組成。反饋回路由 ds18b20 電路組成。其原理框圖如下(圖 2- 1): 圖 2-1 系統(tǒng)原理框圖 另外,系統(tǒng)還帶有輸入輸出設(shè)備,通過鍵盤輸入設(shè)備,可隨意輸入 4090

13、之間的設(shè)定溫度,輸出設(shè)備可顯示溫度的設(shè)定值與實際溫度值, 使用簡單。 其總體硬件框圖如圖 2-2: 單片機 (產(chǎn)生控制號) 信號放大功率驅(qū)動電路電熱絲 ds18b20 測溫電路 單 片 機 驅(qū)動電路 可控硅 電 爐 爐 溫 ds18b20 測溫電路 輸入輸出設(shè)備 2 圖 2-2 功能硬件框圖 2.22.2 系統(tǒng)工作原理 本設(shè)計是對溫度進行實時監(jiān)測與控制,設(shè)計的溫度控制系統(tǒng)實現(xiàn)了基本的 溫度控制功能:當溫度低于設(shè)定下限溫度時,系統(tǒng)自動啟動可控硅加溫,使溫 度上升。當溫度上升到下限溫度以上時,停止加溫。 電熱爐的供電電壓是經(jīng)可控硅整流電源提供的,它的電壓連續(xù)可調(diào)。當調(diào)整 可控硅觸發(fā)線路中的偏置電壓

14、,即改變了可控硅導通角 ,于是可控硅整流電 源的電壓可根據(jù)需要連續(xù)可調(diào)。而只要改變可控硅管的導通時間便可改變加熱 線功率,以達到調(diào)節(jié)溫度的目的。系統(tǒng)在信號放大模塊中采用模糊 pid 控制, 其工作原理框圖如圖 2-3 所示。在信號放大模塊中采用模糊 pid(具體工作原 理見 4.2) ,其將自適應的控制可控硅觸發(fā)線路中的偏置電壓,從而實現(xiàn)自動控 制溫度。 模糊控制器(微處理器) 給定值 + - 圖 2-3 模糊控制原理框圖 3 3 系統(tǒng)硬件設(shè)計系統(tǒng)硬件設(shè)計 本系統(tǒng)的設(shè)計是根據(jù)閉環(huán)控制原理設(shè)計的,在由單片機、驅(qū)動電路、可控 硅組成的開環(huán)系統(tǒng)基礎(chǔ)上加上了 ds18b20 溫度檢測電路,從而組成閉環(huán)

15、控制系 統(tǒng)。在進行系統(tǒng)實現(xiàn)時,從精度高、使用安全、系統(tǒng)硬件簡單、使用操作方便 a/d 計算控 制變量 非模糊 化處理 模糊推 理決策 模糊控 制規(guī)則 模糊量 化處理 d/a 傳感器 執(zhí)行機構(gòu) 被控對象 3 的角度出發(fā),選擇高可靠性的器件和電路方案.本設(shè)計采用 at89s52 為主控芯片, 前向通道采用可控硅做執(zhí)行元件,反饋通道則是采用了 ds18b20 作測溫元件。 在系統(tǒng)設(shè)計工程實踐上,前向通道的主控芯片和執(zhí)行元件之間需加一個隔離放 大電路,采用 pid 對主控芯片產(chǎn)生的控制信號進行放大,經(jīng)過模糊 pid 對可控 硅進行控制。反饋通道采用的 ds18b20 做測溫傳感器。 3.1 單片機 a

16、t89s52 介紹 3.1.1 at89s52 主要性能參數(shù) 與mcs-51單片機產(chǎn)品兼容 8k字節(jié)在系統(tǒng)可編程flash存儲器 1000次擦寫周期 全靜態(tài)操作:0hz33hz 三級加密程序存儲器 32個可編程i/o口線 三個16位定時器/計數(shù)器 八個中斷源 全雙工uart串行通道 低功耗空閑和掉電模式 掉電后中斷可喚醒 at89s52 可提供以下標準功能:8k 字節(jié) flash 閃存器,256 字節(jié)內(nèi)部 ram,32 個 i/o 口線,看門狗定時器,2 個數(shù)據(jù)指針,3 個 16 位定時/計數(shù)器, 一個 6 向量 2 級中斷結(jié)構(gòu),全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時, at89s52

17、可降至 0hz 的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。 空閑方式停止 cpu 的工作,但允許 ram,定時/計數(shù)器,串性通信口及中斷系統(tǒng) 繼續(xù)工作。掉電方式保存 ram 中的內(nèi)容,但振蕩器停止工作并禁止其它所有部 件工作直到下一個中斷或硬件復位為止。 3.1.2 at89s52 引腳圖 4 圖 3-1 at89s52 引腳結(jié)構(gòu) p0 口:p0 口為一個 8 位漏級開路雙向 i/o 口,每腳可吸收 8ttl 門電流。當 p1 口的管腳第一次寫 1 時,被定義為高阻輸入。p0 能夠用于外部程序數(shù)據(jù)存儲 器,它可以被定義為數(shù)據(jù)/地址的低八位。在 fiash 編程時,p0 口作為原碼輸 入

18、口,當 fiash 進行校驗時,p0 輸出原碼,此時 p0 外部必須被拉高。 p1 口:p1 口是一個內(nèi)部提供上拉電阻的 8 位雙向 i/o 口,p1 口緩沖器能接 收輸出 4ttl 門電流。p1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入,p1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在 flash 編程和校驗時,p1 口作為低八位地址接收。 p2 口:p2 口為一個內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 口緩沖器可接收, 輸出 4 個 ttl 門電流,當 p2 口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且 作為輸入。并因此作為輸入時,p2 口的管腳被外部拉低,

19、將輸出電流。這是由 于內(nèi)部上拉的緣故。p2 口當用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器 進行存取時,p2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉 優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2 口輸出其特殊功能寄存器 的內(nèi)容。p2 口在 flash 編程和校驗時接收高八位地址信號和控制信號。 p3 口:p3 口管腳是 8 個帶內(nèi)部上拉電阻的雙向 i/o 口,可接收輸出 4 個 ttl 門電流。當 p3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。 作為輸入,由于外部下拉為低電平,p3 口將輸出電流,這是由于上拉的緣故。 5 p3 口也可作為一些特殊功能口,如

20、下表所示: 表 3.1 p3 口第 2 功能表 引腳第 2 功能 p3.0 rxd(串行口輸入端) p3.1 txd(串行口輸出端) p3.2 int0(外部中斷 0 請求輸入端,低電平有效) p3.3 int1(外部中斷 1 請求輸入端,低電平有效) p3.4 t0(定時器/記時器 0 計數(shù)脈沖輸入端) p3.5 t1(定時器/記時器 1 計數(shù)脈沖輸入端) p3.6 wr(外部數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效) p3.7 rd(外部數(shù)據(jù)存儲器讀選通信號輸出端,低電平有效) rst:復位輸入。當振蕩器復位器件時,要保持 rst 腳兩個機器周期的高電 平時間。 ale/prog:當訪問外部

21、存儲器時,地址鎖存允許的輸出電平用于鎖存地址的 低 8 位字節(jié)。在 flash 編程期間,此引腳用于輸入編程脈沖。在平時,ale 端 以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用 作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存 儲器時,將跳過一個 ale 脈沖。在地址為 8eh 的 sfr 的第 0 位置“1”,ale 操 作將無效。此時,ale 只有在執(zhí)行 movx,movc 指令時 ale 才起作用。否則, ale 將被略微拉高。 psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機 器周期兩次 psen 有效。但在訪問外

22、部數(shù)據(jù)存儲器時,這兩次有效的 psen 信號 將不出現(xiàn)。 /ea/vpp:當/ea 保持低電平時,則在此期間外部程序存儲器(0000h- ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式 1 時,/ea 將內(nèi)部鎖定為 reset;當/ea 端保持高電平時,此間內(nèi)部程序存儲器。在 flash 編程期間,此 引腳也用于施加 12v 編程電源(vpp)。 xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 xtal2:來自反向振蕩器的輸出。 6 3.1.3 at89s52 存儲器配置 1.存儲器結(jié)構(gòu) 程序存儲器:如果ea引腳接地,程序讀取只從外部存儲器開始。對于 89s52,如果ea 接

23、vcc,程序讀寫先從內(nèi)部存儲器(地址為0000h1fffh)開始, 接著從外部尋址,尋址地址為:2000hffffh。 數(shù)據(jù)存儲器:at89s52 有256 字節(jié)片內(nèi)數(shù)據(jù)存儲器。高128 字節(jié)與特殊功 能寄存器重疊。也就是說高128字節(jié)與特殊功能寄存器有相同的地址,而物理上 是分開的。當一條指令訪問高于7fh 的地址時,尋址方式?jīng)Q定cpu 訪問高128 字ram 還是特殊功能寄存器空間。直接尋址方式訪問特殊功能寄存器(sfr)。 2.定時器 定時器 0 和定時器 1:定時器 0 和定時器 1 與 at89c21 和 at89c52 一樣. 定時器 2: 定時器 2 是一個 16 位定時/計數(shù)器

24、,它既可以做定時器,又可 以做事件計數(shù)器。其工作方式由特殊寄存器 t2con 中的 c/t2 位選擇(如表 2.2 所示) 。定時器 2 有三種工作模式:捕捉方式、自動重載(向下或向上計數(shù))和 波特率發(fā)生器。如表 2.3 所示,工作模式由 t2con 中的相關(guān)位選擇。定時器 2 有 2 個 8 位寄存器:th2 和 tl2。在定時工作方式中,每個機器周期,tl2 寄 存器都會加 1。由于一個機器周期由 12 個晶振周期構(gòu)成,因此,計數(shù)頻率就是 晶振頻率的 1/12。 表2.2 t2con:定時器/計數(shù)器2控制寄存器 表2.3 定時器2的工作模式 3 tf2exf2rclktclkexen2tr

25、2c/t2cp/rl2 76543210 rclk+tclkcp/rl2tr2mode 001 16 位自動重載 011 16 位捕捉 1x1 波特率發(fā)生器 xx0 (不用) 7 在計數(shù)工作方式下,寄存器在相關(guān)外部輸入角 t2 發(fā)生 1 至 0 的下降沿時 增加 1。在這種方式下,每個機器周期的 s5p2 期間采樣外部輸入。一個機器周 期采樣到高電平,而下一個周期采樣到低電平,計數(shù)器將加 1。在檢測到跳變 的這個周期的 s3p1 期間,新的計數(shù)值出現(xiàn)在寄存器中。因為識別 10 的跳變 需要 2 個機器周期(24 個晶振周期) ,所以,最大的計數(shù)頻率不高于晶振頻率 的 1/24。為了確保給定的電

26、平在改變前采樣到一次,電平應該至少在一個完整 的機器周期內(nèi)保持不變。 3.中斷 at89s52 有 6 個中斷源:兩個外部中斷(int0 和 int1) ,三個定時中斷 (定時器 0、1、2)和一個串行中斷。每個中斷源都可以通過置位或清除特殊 寄存器 ie 中的相關(guān)中斷允許控制位分別使得中斷源有效或無效。ie 還包括一 個中斷允許總控制位 ea,它能一次禁止所有中斷。如表 2.4 所示,ie.6 位是不 可用的。對于 at89s52,ie.5 位也是不能用的。用戶軟件不應給這些位寫 1。 它們?yōu)?at89 系列新產(chǎn)品預留。定時器 2 可以被寄存器 t2con 中的 tf2 和 exf2 的或邏

27、輯觸發(fā)。程序進入中斷服務后,這些標志位都可以由硬件清 0。實際上, 中斷服務程序必須判定是否是 tf2 或 exf2 激活中斷,標志位也必須由軟件清 0。定時器 0 和定時器 1 標志位 tf0 和 tf1 在計數(shù)溢出的那個周期的 s5p2 被置 位。它們的值一直到下一個周期被電路捕捉下來。然而,定時器 2 的標志位 tf2 在計數(shù)溢出的那個周期的 s2p2 被置位,在同一個周期被電路捕捉下來。 表 2.4 寄存器 ie 中斷允許控制位=1 允許中斷 中斷允許控制位=0 禁止中斷 表2.5 中斷允許控制寄存器 符號地址 位功能 eaie.7 中斷允許總控制位。ea=0,中斷總禁止:ea=1,各

28、中斷由各 eaet2eset1ex1et0ex0 8 自的控制位設(shè)定 -ie.6 預留 et2ie.5 定時器 2 中斷允許控制位 esie.4 串行口中斷允許控制位 et1ie.3 定時器 1 中斷允許控制位 ex1ie.2 外部中斷 1 允許控制位 et0ie.1 定時器 0 中斷允許控制位 ex0ie.0 外部中斷 1 允許控制位 3.2 溫度傳感器 現(xiàn)代傳感器在原理與結(jié)構(gòu)上千差萬別,如何根據(jù)具體的測量目的、測量對 象以及測量環(huán)境合理地選用傳感器,是在進行某個量的測量時首先要解決的問 題,本系統(tǒng)采用智能溫度傳感器 ds18b20。 智能溫度傳感器ds18b20,它的最高分辨率為12位,可

29、識別0.0625攝氏度的 溫度。它具有直接輸出數(shù)字信號和數(shù)據(jù)處理功能,并且它和單片機接口只需要 一位i/o口,因此由它構(gòu)成的系統(tǒng)簡單實用。由于ds18b20按照工業(yè)設(shè)計要求設(shè) 計,溫度測量范圍從-55 125,且具有高精度、穩(wěn)定性好、抗干擾能力 強等。 溫度采集電路模塊如圖 3.2 所示,該模塊采用外接電源供電的方式。 圖 3-2 溫度采集電路模塊 3.2.1 ds18b20 的簡介 ds18b20 數(shù)字溫度計是 dallas 公司生產(chǎn)的 1wire,即單總線器件,具有線 路簡單,體積小的特點。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一 根通信線,可以掛很多這樣的數(shù)字溫度計,十分方便。 9

30、 1. ds18b20 產(chǎn)品的特點 a只要求一個端口即可實現(xiàn)通信。 b在 ds18b20 中的每個器件上都有獨一無二的序列號。 c實際應用中不需要外部任何元器件即可實現(xiàn)測溫。 e數(shù)字溫度計的分辨率用戶可以從 9 位到 12 位選擇。 f內(nèi)部有溫度上、下限告警設(shè)置。 2. ds18b20 的引腳介紹 to-92 封裝的 ds18b20 的引腳排列見圖 3.3: 圖 3-3 ds18b20 封裝圖 gnd 為地信號。dq 數(shù)據(jù)輸入/輸出引腳,開漏單總線接口引腳,當被用著在 寄生電源下,也可以向器件提供電源。vdd 可選擇的 vdd 引腳,當工作于寄生 電源時,此引腳必須接地。 3.ds18b20

31、的結(jié)構(gòu)及原理 ds18b20 內(nèi)部結(jié)構(gòu)主要由四部分組成:64 位光刻 rom、溫度傳感器、非易失 性溫度報警觸發(fā)器 th 和 tl、配置寄存器。其結(jié)構(gòu)框圖如圖 3.4: 10 圖 3-4 ds18b20 內(nèi)部結(jié)構(gòu)框圖 ds18b20 中的溫度傳感器可完成對溫度的測量,以 12 位轉(zhuǎn)化為例:用 16 位符號擴展的二進制補碼讀書形式提供(如表 3.1) ,以 0.0625/lsb 形式表達, 其中是 s 為符號位。 表 3.1 這是 12 位轉(zhuǎn)化后得到的 12 位數(shù)據(jù),存儲在 18b20 的兩個 8 位的 ram 中,二 進制中的前面 5 位是符號位,如果測得的溫度大于 0,這 5 位為 0,只要

32、將測到 的數(shù)值乘以 0.0625 即可得到實際溫度。 11 減法計數(shù)器 斜坡累加器 減到 0 減法計數(shù)器 預 置 低溫度系數(shù) 振 蕩 器 高溫度系數(shù) 振 蕩 器 計數(shù)比較器 預 置 溫度寄存器 減到 0 圖 35 測溫原理內(nèi)部裝置 3.2.2 ds18b20 的測溫流程 初始化 ds18b20 跳過 rom 匹配 溫度變換延時 1s 跳過 rom 匹配 讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示 圖 36 ds18b20 測溫流程 3.3 溫度顯示模塊 溫度顯示電路,利用單片機串行口外接移位寄存器 74ls164,采用 3 位靜 態(tài) led 數(shù)碼顯示器,停止加熱時顯示設(shè)定溫度,啟動加熱時顯示當前烤箱溫度。

33、 電路接線原理如圖 3-7(p13)所示: 12 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 u2 74ls164 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 u3 74ls164 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp ds2 絲絲絲絲絲 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp ds3 絲絲絲絲絲 +

34、5v r1 300 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp ds1 絲絲絲絲絲 p3.0 a 1 b 2 q0 3 q1 4 q2 5 q3 6 q4 10 q5 11 q6 12 q7 13 clk 8 mr 9 u1 74ls164 p3.1 +5v 圖 3-7 3.5 溫度控制模塊 電爐控制采用可控硅來實現(xiàn),水箱加熱絲串接在交流 220 v 市電回路中。 單片機的 p1.7 口通過光電隔離器和驅(qū)動電路送到可控硅的控制端,由 p1.7 口 的高低電平來控制可控硅的導通與斷開,從而控制電阻絲的通電加熱時間。 in+ 1 in-

35、 2 b 6 c 5 e 4 ut1 4n39 r2 10k rt1 680r q2 9013 d1 in4001 j1 5v絲絲絲 p1.7 ac220v +5v +5v 絲絲絲 圖 3-8 溫度控制電路 3.5.1 光電耦合器功能 1.光電耦合器簡介 光電耦合器是一種把紅外光發(fā)射器件和紅外光接受器件以及信號處理電路 等封裝在同一管座內(nèi)的器件。當輸入電信號加到輸入端發(fā)光器件 led 上,led 發(fā)光,光接受器件接受光信號并轉(zhuǎn)換成電信號,然后將電信號直接輸出,或者 13 將電信號放大處理成標準數(shù)字電平輸出,這樣就實現(xiàn)了“電光電”的轉(zhuǎn)換 及傳輸,光是傳輸?shù)拿浇?,因而輸入端與輸出端在電氣上是絕緣的

36、,也稱為電 隔離。 2.電耦合隔離器接口電路 光電耦合隔離器在單片機控制系統(tǒng)中常用的有三極管型、單向可控硅型、 雙向可控硅型等幾種,如圖 3-9 所示 圖 3-9 光電耦合隔離器類型 3.6 報警和按鍵電路 鍵盤設(shè)置 4 個功能鍵,分別是啟動、 “百位+” 、 “十位+”和“個位+”鍵, 由 p1 口低 4 位作為鍵盤接口。利用+1 按鍵可以分別對預置溫度的百位、十位 和個位進行加 1 設(shè)置,并在 led 上顯示當前設(shè)置值。連續(xù)按動相應位的加 1 鍵 即可實現(xiàn) 4090的溫度設(shè)置。 報警功能由蜂鳴器實現(xiàn)。當由于意外因素導致水箱溫度高于設(shè)置溫度時, p1.6 口送出的低電平經(jīng)反向器驅(qū)動蜂鳴器鳴叫

37、報警。 s2 sw-pb q1 9013 s3 sw-pb s4 sw-pb s5 sw-pb ls1 絲絲絲絲絲 p1.0 p1.1 p1.2 +5v p1.3 p1.612 u4a 74ls04 圖 3-10 按鍵和報警電路 14 3.7 直流穩(wěn)壓電源 電路中要把市電轉(zhuǎn)換成 5v 的直流穩(wěn)壓電源,要用到 ac/dc 電路,該電路一 般由電源變壓器、整流濾波電路及穩(wěn)壓電路組成,如圖所示: 絲絲絲 ac220 dc12 絲絲 in4001 + c42200uf vin 1 gnd 2 vout 3 lm7805 c5 220uf +5v port r5 300 d2 絲絲le d c6 0.0

38、1u f 圖 3-11 直流穩(wěn)壓電源電路 直流穩(wěn)壓交流電經(jīng)過整流和濾波可以變成直流電,但是它的電壓是不穩(wěn)定 的:供電電壓的變化或用電電流的變化,都能引起電源電壓的波動。要獲得穩(wěn) 定不變的直流電源,還必須再增加由 7805 穩(wěn)壓塊組成的直流穩(wěn)壓電路,圖中 c4 和 c5 分別為輸入端和輸出端濾波電容。 電路中的 7805 是三端集成穩(wěn)壓器,輸出正 5v 直流電壓,輸入電壓至少大 于 7v,使輸入/輸出之間有 23v 及以上的壓差。 圖 3-12 7805 引腳圖 15 4 4 系統(tǒng)軟件設(shè)計系統(tǒng)軟件設(shè)計 主程序采用中斷嵌套方式設(shè)計,各功能模塊可直接調(diào)用。主程序完成系統(tǒng) 的初始化,溫度預置及其合法性

39、檢測,預置溫度的顯示及定時器 0 設(shè)置。定時 器 0 中斷服務子程序是溫度控制體系的主體,用于溫度檢測、控制和報警(包 括啟動驅(qū)動電路、讀入采樣數(shù)據(jù)、數(shù)字濾波、越限溫度報警和越限處理、輸出 可控硅的控制脈沖等) 。中斷由定時器 0 產(chǎn)生,根據(jù)需要每隔 15 s 中斷一次, 即每 15 s 采樣控制一次。但系統(tǒng)采用 6 mhz 晶振,最大定時為 130 ms,為實 現(xiàn) 15 s 定時,這里另行設(shè)了一個軟件計數(shù)器。 4.1 主程序流程 軟件程序是本控制系統(tǒng)的核心,它包括從溫度采樣到信號輸出的整個流程 控制,其示意圖如圖 4-1 所示 開始 濾波采樣溫度 計算實際溫度 從單片機獲取給定溫度 計算實際

40、溫度與給定溫 度的偏差 模糊 pid 計算并輸 出 pid 輸出送輸出控制信號 返回 16 圖 4-1 模糊 pid 控制程序結(jié)構(gòu)圖 4.2 模糊 pid 控制模塊 4.2.1 模糊 pid 控制器的結(jié)構(gòu)設(shè)計 模糊 pid 控制器的結(jié)構(gòu)設(shè)計主要工作是確定模糊控制器的輸入模塊和輸出 模塊。在設(shè)計輸入模塊時,通常按模糊 pid 控制器的輸入變量個數(shù)區(qū)分模糊 pid 控制器的維數(shù),按模糊 pid 控制系統(tǒng)維數(shù)可將常見的模糊 pid 控制器劃分 三種形式,如圖 4-2 所示。理論上說,模糊 pid 控制器的維數(shù)越高,反應的反 饋信息越豐富,因此,控制效果也應該越好,但是高維數(shù)的模糊控制器在工程 實現(xiàn)時

41、,不僅增加了系統(tǒng)的復雜性,同時也對控制器的計算速度有了更高的要 求,因此,目前廣泛實用的是二維模糊控制器,由于本文中控制系統(tǒng)采用二維 模糊 pid 控制器,以下以二維模糊 pid 控制器設(shè)計為例進行介紹。 圖 4-2 模糊 pid 控制器的結(jié)構(gòu) 4.2.2 輸入量的模糊化 在確定了模糊 pid 控制器的結(jié)構(gòu)之后,要對采樣進入控制器的兩個輸入量 進行模糊化,以便實現(xiàn)模糊算法。模糊化過程就是將數(shù)字表示形式的輸入量轉(zhuǎn) 化為通常語言值表示的某一限定碼的序數(shù)。每一個限定碼表示論域內(nèi)的一個模 糊子集,并由其隸屬度函數(shù)來定義。應該注意到,對于某一個輸入值,它必定 能與某一個特定模糊子集的隸屬度相對應。圖 4

42、-3 給出了常見的三種模糊化函 數(shù)。 17 圖 4.3 模糊化函數(shù) 圖 4-3(a)中的模糊函數(shù)在輸入變量 x0糊子集 a中有最大隸屬程度,其 他輸入的隸屬度呈線性遞減;圖 4-3(b)中的模糊函數(shù)只在 x0 點處的隸屬度 為 1,其他輸入值對應的隸屬度均為 0,在圖 4-3(c)所表示的隸屬度函數(shù)曲線 為類高斯曲線,它是一條連續(xù)函數(shù)。 因為模糊化函數(shù)對控制系統(tǒng)的性能有較大的影響,所以在選定時要根據(jù)實 際情況,反復試驗。在選定模糊化函數(shù)之后,還要確定輸入量的各個模糊子集 的模糊函數(shù)的定義域,使模糊子集的數(shù)目和范圍應遍及整個輸入量論域,從而 對所有輸入量都有對應的模糊函數(shù)。 4.2.3 模糊 p

43、id 控制規(guī)則的設(shè)計 控制規(guī)則是模糊 pid 控制器的核心部分,它包括三個部分:選擇描述輸入 和輸出變量的詞集,定義模糊變量的模糊子集,建立模糊控制器的控制規(guī)則。 1 選擇描述輸入和輸出變量的詞集 因為模糊 pid 控制器的控制規(guī)則表現(xiàn)形式是一組模糊條件語句,在條件語 句中描述輸入輸出變量狀態(tài)的一些詞匯(如“正大”、 “負大”等)的集合,稱為這 些變量的詞集(也稱為變量的模糊狀態(tài)) 。所以,通常采用人們?nèi)粘I钪械恼Z 言描述有關(guān)。一般用“大、中、小”三個詞匯來描述模糊 pid 控制器的輸入輸出 變量的狀態(tài),將大、中、小再加上正、負兩個方向并考慮變量的零狀態(tài),共有 七個詞匯,即:負大、負中、負小

44、、零、正小、正中、正大為便于編程實現(xiàn), 用英文字母字頭縮寫表示為: nb nm ns ze ps pm pb 2 定義模糊變量的模糊子集 定義一個模糊子集,實際上就是要確定模糊子集隸屬度函數(shù)曲線的形狀。將 確定的隸屬度函數(shù)曲線離散化,就得到了有限個點上的隸屬度,便構(gòu)成了一個 相應的隸屬變量的模糊子集。如圖 4-4 所示,圖中所示表示論域 x 中的元素 x 對模糊變量 a 隸屬程度,設(shè)定:x=-6,-5,-4,-5,-3,-2,-1,0,1,2,3,4,5,6則有 18 1; 圖 4-4 模糊子集的確定 不難看出,確定了隸屬函數(shù)曲線后,很容易定義一個模糊變量的模糊子集。 3 建立模糊 pid 控

45、制器的控制規(guī)則。 模糊 pid 控制規(guī)則是模糊控制的核心。因此如何建立模糊規(guī)則就成為一個十 分關(guān)鍵的問題。建立模糊規(guī)則的方法有:基于專家的經(jīng)驗和控制工程知識、基 于操作人員的實際操作過程、基于過程的模糊模型、基于學習。選定了模糊 pid 控制中的規(guī)則后,要對其進行模糊表示。對于多輸入多輸出(mimo)系統(tǒng), 其規(guī)則具有如下形式: (4- 1) 其中: (4- 2) 的前提條件構(gòu)成了在直積空間 xx.xy 上的模糊集合結(jié)論是 q 個空間作用的并,他們之間是相互獨立的。因此,第 i 條規(guī)則可以表示為如下 的模糊蘊含關(guān)系: (4- 3) 于是規(guī)則 r 可以表示為: 19 (4- 4) 可見,規(guī)則庫

46、r 可看成由 q 個子規(guī)則庫所組成,每一個規(guī)則庫由 n 個多輸 入單輸出(miso)的規(guī)則組成。各個子規(guī)則是相互獨立的。根據(jù)本文的需要,考 慮如下的兩個輸入三輸出的模糊關(guān)系: 1)if (e is nb )and (ec is nb) then (kp is pb)and(ki is nb )and (kd is ps) ; 2)if (e is nb )and (ec is nm) then (kp is pb)and(ki is nb )and (kd is ns) ; 3)if (e is nb )and (ec is ns) then (kp is pm)and(ki is nm )a

47、nd (kd is nb) ; 在上面這個規(guī)則中,我們根據(jù)輸入量 e 和 ec 的模糊化之后的模糊量,通過 規(guī) 則,可以得到其輸出 kp、ki、kd 對應的模糊量。 4.2.4 模糊量的清晰化 在通過模糊推理得到模糊量之后,因為對于實際的控制參數(shù)必須為清晰量, 因此需要將 kp、ki、kd 對應的模糊量轉(zhuǎn)化成清晰量,這個過程就稱為去模糊化 (defuzzification)或者稱為模糊判決。常用的清晰化計算通常有以下幾種: 1 最大隸屬度函數(shù)法 若輸出量模糊集合 c的隸屬度函數(shù)只有一個峰值,則取隸屬度函數(shù)的最大值 20 為清晰值,即:,其中,z0 表示清晰值,若 輸出量的隸屬度函數(shù)有多個極值,

48、則取這些極值的平均值為清晰值。 2 中位數(shù)法 所謂中位數(shù)法就是取 uc( z)的中位數(shù)作為 z 的清晰量,即 的中位數(shù),它滿足也就是說以 z0 為分界,分界線兩邊的 uc( z)與橫軸圍成的面積兩邊相等。 3 加權(quán)平均法 這種方法取的加權(quán)平均值為 z 的清晰值,即: (8- 5) 因為這種方法類似于物理中的物體重心的計算,所以也稱重心法。對于論 域為離散的情況,我們可以類似處理,同理則有: (8- 6) 在得到清晰化之后的 kp、ki、kd 后,我們就可以通過 pid 算法計算出整個 模糊 pid 控制器的控制輸出了,整個控制系統(tǒng)結(jié)構(gòu)入下圖 4-5。 21 圖 4-5 模糊 pid 控制系統(tǒng)結(jié)

49、構(gòu) 4.3 鍵盤管理模塊 上電或復位后系統(tǒng)處于鍵盤管理狀態(tài),其功能是監(jiān)測鍵盤輸入,接收溫 度預置和啟動鍵。程序設(shè)有預置溫度合法檢測報警,當預置溫度不在 40- 90時會報警并將溫度設(shè)定在 40-90。鍵盤管理子程序流程如圖 4-6 所示。 圖 4-6 鍵盤管理子程序 a p1.10 p1.20 p1.30 p1.00 100a 10a 1a a a y n y n n y y y n n n y n y 22 4.4 顯示模塊 顯示子程序的功能是將顯示緩沖區(qū) 57h 和 58h 的二進制數(shù)據(jù)先轉(zhuǎn)換成三個 bcd 碼,分別存入百位、十位和個位顯示緩沖區(qū)(54h、55h 和 56h 單元) ,然后

50、 通過串口送出顯示。 為提高數(shù)據(jù)采樣的可靠性,對采樣溫度進行數(shù)字濾波。數(shù)字濾波的算法很 多,這里采用 4 次采樣取平均值的方法。本系統(tǒng) ds10b20 輸出結(jié)果乘 2 正好是 溫度值,因此,4 次采樣的數(shù)字量之和除以 2 就是檢測的當前溫度。檢測結(jié)果 高位存入 50h,低位存入 51h。溫度檢測子程序流程圖如圖 4-7 所示。 圖 4-7 溫度檢測流程圖 4r2 a/d 851h 850h a r2-10 a 42 y n n y 23 4.5 溫度控制模塊 將當前溫度與預置溫度比較,當前溫度小于預置溫度時,可控硅不導通, 接通電阻絲加熱;當前溫度大于預置溫度時,繼電器斷開,停止加熱;當二者

51、相等時電爐保持原來狀態(tài);當前溫度降低到比預置溫度低 0.5時,再重新啟 動加熱;當前溫度超出報警上下限時將啟動報警,并停止加熱。由于電爐開始 加熱時,當前溫度可能低于報警下限,為了防止誤報,在未達到預置溫度時, 不允許報警,為此設(shè)置了報警允許標志 f0。模塊流程見圖 4-8。 n y n y n y 圖 4-8 溫度控制流程圖 當前溫度與預置溫度比較 當前溫度預置溫度 比較 達到過預置溫度 當前溫度0.5 25 圖 4-9 溫度報警程序 5 5 恒溫控制箱控制算法研究與仿真恒溫控制箱控制算法研究與仿真 5.1 恒溫系統(tǒng)的數(shù)學模型 通過對恒溫控制系統(tǒng)的分析,可以看出恒溫控制系統(tǒng)的特性:非線性、強

52、 耦合、大慣性等特點。本章針對恒溫控制箱的模型特性,對其進行仿真研究。 為了對其進行精確得建模,因此通常根據(jù)的恒溫系統(tǒng)末端各個環(huán)節(jié)的傳遞函數(shù) 及實驗測試數(shù)據(jù),利用帶延遲的二階系統(tǒng)模擬恒溫系統(tǒng)的數(shù)學模 型??刂葡到y(tǒng)的目標溫度設(shè)定值為 50 ,系統(tǒng)慣性時間常數(shù)為: t1=4.05,t2=1,取 k0=13.7 系統(tǒng)的滯后時間常數(shù) =50s。 因此,得到恒溫系統(tǒng)模型為: 本章的主要內(nèi)容是通過使用常規(guī)數(shù)字 pid 算法對恒溫系統(tǒng)進行控制,分析常 規(guī) pid 的控制效果以及局限性;同時使用模糊 pid 控制算法對該系統(tǒng)進行控制, 分析系統(tǒng)響應曲線。將兩種控制方式進行對比,分析各自的特點與不足。 5.2

53、模糊 pid 控制算法與仿真 為達到滿意的控制效果,使系統(tǒng)的響應速度及溫度穩(wěn)定,在對模糊規(guī)則進行 設(shè)計時,將誤差信號 e 及誤差的變化量 ec 分別劃分為七個范圍,因此其模糊 規(guī)則的數(shù)目為 7 7=49 條, kp, ki, kd 也劃分為 nb nm ns ze ps pm pb 七個范圍。這樣,整個模糊系統(tǒng)構(gòu)成了一個 2 輸入 3 輸出的系統(tǒng)。其系統(tǒng)的結(jié) 構(gòu)圖如圖 5-1 所示。 圖 5-1 模糊 pid 控制系統(tǒng)結(jié)構(gòu)圖 26 根據(jù)以上劃分,以及在第 4 章中的理論論述,可以將模糊控制器的輸入和 輸出的隸屬度函數(shù)用下圖表示。 圖 5-2(a) 輸入 e 的隸屬度函數(shù) 圖 5-2(b)輸入 ec 的隸屬度函數(shù) 圖 5-2 輸出的隸屬度函數(shù) 同樣可以設(shè)計出三個輸出的隸屬度函數(shù),如下圖所示。 圖 5-3(a)輸出 kp 的隸屬度函數(shù) 圖 5-3(b)輸出 ki 的隸屬度函數(shù) 27 圖 5-3(c)輸出 kd 的隸屬度函數(shù) 圖 5

溫馨提示

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

評論

0/150

提交評論