基于單片機(jī)的鍋爐設(shè)計(jì)2
基于單片機(jī)的鍋爐設(shè)計(jì)2,基于,單片機(jī),鍋爐,設(shè)計(jì)
株 洲 工 學(xué) 院200 屆畢業(yè)設(shè)計(jì)說明書題 目院(系 )、部: 學(xué)生姓名: 指導(dǎo)教師: 職稱 專 業(yè): 班 級: 完成時間: 摘 要本文列舉了單片機(jī)在鍋爐中的一個實(shí)際應(yīng)用,并對設(shè)計(jì)的溫度控制系統(tǒng)的組成及主要電路的作用進(jìn)行了詳細(xì)的介紹。文章介紹了用單片機(jī)控制的、基于數(shù)字溫度傳感器 DS1820 的溫度測量和控制系統(tǒng):重點(diǎn)闡述了 DS1820 的工作原理、指令系統(tǒng)、單片機(jī)與 DS1820 之間的接口、數(shù)據(jù)傳遞、通信協(xié)議。該系統(tǒng)采用單片機(jī)與數(shù)字溫度傳感器 DS1820 相結(jié)合,能夠測量出-55℃-125℃之間的溫度,同時還具有通過控制加熱系統(tǒng)調(diào)節(jié)被測環(huán)境溫度和對超限溫度進(jìn)行報警等功能。關(guān)鍵詞 溫度傳感器 DS1820;單片機(jī);硬件設(shè)計(jì);軟件設(shè)計(jì)AbstractPractical application of one-chip computer in heat-treatment furnace is listed,and detailed introduction is given to the compositionsand the main functions of temperature control system.The paper introduces the temperature measurement and control system based on the DS1820. The author emphasizes on the working principle of the DS1820, instructionset, data transfer, the interface and the communication protocol between the DS1820 and single chip microcomputer. The system adopt single chi'p microcomputer combined with the DS1820,it can measure temperature between -55℃-125℃. The system not only can measure the temperature of the environment , but also can alarm when the temperature is beyond the rang of the safe temperature which is set.[Key words DS1820; Single Chip Microcomputer; tlardware Design; Software Design目 錄第 1 章 緒 論第 2 章 系統(tǒng)簡介2.1 系統(tǒng)的組成 2.1.1 系統(tǒng)組成圖2.1.2 系統(tǒng)各部分工作原理2.1.3 系統(tǒng)各部分功能2.2 系統(tǒng)的工作過程第 3 章 系統(tǒng)的硬件電路設(shè)計(jì)3.1 微處理器的 89C51 的簡介3.1.1 引腳性能3.2 DS1820 的簡介3.2.1 DS1820 功能塊的詳細(xì)說明3.2.2 DS1820 測溫原理3.2.3 DS1820 使用中注意事項(xiàng) 3.3 控制電路設(shè)計(jì)3.3.1 主回路設(shè)計(jì)3.3.2 鍵盤顯示電路3.3.3 接口電路3.3.4 溫度控制電路第 4 章 控制的算法4.1 溫度控制的 PID 算法第 5 章 溫度控制程序5.1 總 述5.2 主程序5.3 T0 中斷服務(wù)程序 CT05.4 子程序致 謝參考文獻(xiàn)附錄 1附錄 2第 1 章 緒 論單片微型計(jì)算機(jī)是隨著超大規(guī)模集成電路技術(shù)的發(fā)展而誕生的,由于它具有體積小、功能強(qiáng)、性價比高等特點(diǎn),所以廣泛應(yīng)用于電子儀表、家用電器、節(jié)能裝置、軍事裝置、機(jī)器人、工業(yè)控制等諸多領(lǐng)域,使產(chǎn)品小型化、智能化,既提高了產(chǎn)品的功能和質(zhì)量,又降低了成本,簡化了設(shè)計(jì)。本文主要介紹單片機(jī)在溫度控制中的應(yīng)用。在現(xiàn)代化的工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力、流量、流速和開關(guān)量都是常用的主要被控參數(shù)。例如:在冶金工業(yè)、化工生產(chǎn)、電力工程、造紙行業(yè)、機(jī)械制造和食品加工等諸多領(lǐng)域中,人們都需要對各類加熱爐、熱處理爐、反應(yīng)爐和鍋爐中的溫度進(jìn)行檢測和控制。采用 MCS-51 單片機(jī)來對溫度進(jìn)行控制,不僅具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。因此,單片機(jī)對溫度的控制問題是一個工業(yè)生產(chǎn)中經(jīng)常會遇到的問題。MCS-51 單片機(jī),體積小,重量輕,抗干擾能力強(qiáng),對環(huán)境要求不高,價格低廉,可靠性高,靈活性好,即使是非電子計(jì)算機(jī)專業(yè)人員,通過學(xué)習(xí)一些專業(yè)基礎(chǔ)知識以后也能依靠自己的技術(shù)力量,來開發(fā)所希望的單片機(jī)應(yīng)用系統(tǒng)。本文的溫度控制系統(tǒng),只是單片機(jī)廣泛應(yīng)用于各行各業(yè)中的一例傳統(tǒng)控制方法(包括經(jīng)典控制和現(xiàn)代控制)在處理具有非線形或不精確特性的被控對象時十分困難。而溫度系統(tǒng)為大滯后系統(tǒng),較大的純滯后可引起系統(tǒng)不穩(wěn)定。大量的應(yīng)用實(shí)踐表明,在在工程實(shí)際中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡稱 PID 控制,又稱 PID 調(diào)節(jié)。PID 控制器問世至今已有近 70 年歷史,它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時,控制理論的其它技術(shù)難以采用時,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場調(diào)試來確定,這時應(yīng)用 PID 控制技術(shù)最為方便。實(shí)際應(yīng)用中取得了很好的效果。測量溫度的關(guān)鍵是溫度傳感器,溫度傳感器的發(fā)展經(jīng)歷了三個發(fā)展階段:①傳統(tǒng)的分立式溫度傳感器,②模擬集成溫度傳感器,③智能集成溫度傳感器。目前,國際上新型溫度傳感器正從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展。本文將介紹智能集成溫度傳感器 DS18B20 的結(jié)構(gòu)特征及控制方法,并對以此傳感器、89C2051 單片機(jī)為控制器構(gòu)成的溫度測量裝置的工作原理及程序設(shè)計(jì)作了詳細(xì)的介紹。該裝置適用于人民的日常生活和工、農(nóng)業(yè)生產(chǎn)用于溫度測量。第 2 章 系統(tǒng)簡介該儀器采用美國 Intel 公司八位單片機(jī)作為控制核心,配以 DS18B20 構(gòu)成的智能溫度測量裝置及其他集成電路,加上精心對軟件設(shè)計(jì),實(shí)現(xiàn)了儀表智能化。對 0~100℃范圍內(nèi)的各種電加熱爐的溫度進(jìn)行精密測量并能實(shí)現(xiàn)實(shí)時控制,同時, LED 顯示器直接跟蹤顯示被控對象的溫度值,準(zhǔn)確度高,顯示清晰,穩(wěn)定可靠,使用方便。文中對每個部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。整個系統(tǒng)的核心是進(jìn)行溫度監(jiān)控與溫度傳感器,完成了課題所有要求。2.1 系統(tǒng)的組成由 DS18B20 構(gòu)成的智能溫度控制裝置由四部分組成:DS18B20 溫度傳感器、89C51 芯片、顯示模塊,溫度調(diào)節(jié)驅(qū)動電路。產(chǎn)品的主要技術(shù)指標(biāo):① 測量范圍:0℃ ~ 100℃ ,② 測量精度: 0.5℃ ,③ 反應(yīng)時間≤500ms。2.1.1 系統(tǒng)組成圖顯示等TTL 電平到EIA 電平轉(zhuǎn)換電路單片機(jī)溫度傳感器降溫控制電路控制對象加熱控制電路圖 一2.1.2 系統(tǒng)各部分工作原理溫控儀原理框圖如圖 1 所示。整個儀表的工作原理是:由 89C51 單片機(jī)控制,按預(yù)先編制的程序定時對被測信號進(jìn)行采樣,并自動進(jìn)行零漂校正,最后顯示所測溫度值,同時按設(shè)定值、所測溫度值、溫度變化速率,自動進(jìn)行 PID 參數(shù)自整定和運(yùn)算,并輸出 0~10mA 控制電流,配以主回路實(shí)現(xiàn)溫度的控制及顯示。2.1.3 系統(tǒng)各部分功能由 DS18B20 構(gòu)成的智能溫度控制裝置由四部分組成:DS18B20 溫度傳感器、89C51、顯示模塊,溫度調(diào)節(jié)驅(qū)動電路。文中對每個部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。整個系統(tǒng)的核心是進(jìn)行溫度監(jiān)控以及溫度傳感器。2.2 系統(tǒng)的工作過程基于 DS18B20 的溫度測量裝置電圖如圖 2 所示:溫度傳感器 DS18B20 將被測環(huán)境溫度轉(zhuǎn)化成帶符號的數(shù)字信號(以十六位補(bǔ)碼形式,占兩個字節(jié)) ,傳感器可置于離裝置 150 米以內(nèi)的任何地方,輸出腳 I/O 直接與單片機(jī)的 P1.1 相連,R1 為上拉電阻,傳感器采用外部電源供電。89C51 是整個裝置的控制核心,89C51 內(nèi)帶 1K 字節(jié)的 FlashROM,用戶程序存放在這里。顯示器模塊由四位一體的共陽數(shù)碼管和 4 個 9012 組成。系統(tǒng)程序分傳感器控制程序和顯示器程序和溫度控制程序三部分,傳感器控制程序是按照 DS18B20 的通信協(xié)議編制。系統(tǒng)的工作是在程序控制下,完成對傳感器的讀寫和對溫度的顯示。標(biāo)度轉(zhuǎn)換程序根據(jù)溫度檢測值求的實(shí)際爐溫,數(shù)字調(diào)節(jié)器程序根據(jù)恒溫給定值與實(shí)際值的偏差。按積分分離的 PID 控制算法得到輸出的控制量。數(shù)字觸發(fā)器程序根據(jù)控制量控制電阻爐子的導(dǎo)通時間,調(diào)節(jié)爐溫的變化使之與給定恒溫值一致。導(dǎo)通時間長,輸出功率大,溫度升的快;導(dǎo)通時間短,輸出功率小,溫度升的變慢。89C51 對溫度的控制是通過雙向可控硅實(shí)現(xiàn)的。雙向可控硅管和加熱絲串接在交流220V、50Hz 市電回路。在給定周期 T 內(nèi),89C51 只要改變可控硅管的接通時間即可改變加熱絲的功率,以達(dá)到調(diào)節(jié)溫度的目的。圖 二第 3 章 系統(tǒng)的硬件電路設(shè)計(jì)3.1 微處理器的 89C51 的簡介89C51 單片機(jī)最早由 Intel 公司推出,其后,多家公司購買了 89C51 的內(nèi)核,使得以 89C51 為內(nèi)核的 MCU 系列單片機(jī)在世界上產(chǎn)量最大,應(yīng)用也最廣泛,有人推測 89C51 可能最終形成事實(shí)上的標(biāo)準(zhǔn) MCU 芯片.3.1.1 引腳性能89C51 引腳說明一、I/O 端口89C51 共有 4 I/O 端口,為 P0,P1,P2,P3;4 個 I/O 口都是雙向的,且每個口都具有鎖存器。每個端口有 8 條線,共計(jì) 32 條 I/O 線。P0.0~P0.7;P1.0~P1.7;P2.0~P2.7;P3.0~P3.71. P0 有三個功能1) 。外部擴(kuò)充存儲器時,作數(shù)據(jù)總線(D0~D7)2) 。外部擴(kuò)充存儲器時,作地址總線(A0~A7)3) 。不擴(kuò)充時,作一般 I/O 使用,內(nèi)部無上拉電阻,作為輸出/輸入使用時應(yīng)加上拉電阻2. P1 只作 I/O 口使用,有內(nèi)部上拉電阻。3. P2 有兩個功能1)。擴(kuò)充外部存儲器時,作地址總線(A8~A15)使用。2) 。作一般 I/O 口使用,有內(nèi)部上拉電阻。3. P3 有兩個功能除作為 I/O 口(有內(nèi)部上拉電阻)外,還有一些特殊功能。如下表所示,由特殊寄存器來設(shè)置。 端口的引腳 特殊功能P10 T2 TIMER2 的外部輸入引腳P11 /T2EX (TIMER2 的捕捉(Capture)/重新加載(Reload)的觸發(fā)) P30 RXD(串行輸入口)P31 TXD(串行輸出口)P32 /INT0(外部中斷)P33 /INT1(外部中斷)P34 T0(TMER0 的外部輸入腳)P35 T1(TMER1 的外部輸入腳)P36 /WR(外部數(shù)據(jù)存儲器的寫入控制信號)P37 /RD(外部數(shù)據(jù)存儲器的讀取控制信號)端口 1,2,3 有內(nèi)部上拉電阻,作為輸入時,其電位被拉高,若輸入為低電平可提供電流源;作為輸出時可驅(qū)動 4 個 LS TTL。而端 0 作輸入時,處在抗的狀態(tài),其輸出緩沖器可驅(qū)動 8個 LS TTL(需外加上拉電阻) 。二、RESET 復(fù)位引腳為高電平時(約 2 個機(jī)器周期) ,可將 CPU 復(fù)位,CPU 復(fù)位后累加器及寄存器的初值如下表所示:寄 存 器 二 進(jìn) 制 值A(chǔ)CC 00000000B 00000000PSW 00000000SP 00000111P0/P1/P2/P3 11111111IP XXX00000IE 0XX00000TMOD 00000000TCON 00000000三、ALE/PROG 地址使能信號端有三種功能:1) 。89C51 外接 RAM/ROM 時,ALE 接地址器(8282)的 STB 腳, (74373)的 EN 腳,當(dāng) CPU 對外部存儲器進(jìn)行存取時,用以鎖住地址的低位地址。2) 。89C51 未外接 RAM/ROM 時,ALE 腳會有 1/6 晶體振蕩頻率,可作為外部時鐘。3) 。在燒寫 EPROM 時,ALE 作為燒寫時鐘的輸入端。四、PSEN 程序儲存使能端1) 。內(nèi)部程序存儲器讀取,不動作。2) 。外部程序存儲器讀?。≧OM) ,在每個機(jī)器周期會動作兩次。3) 。外部數(shù)據(jù)存儲器讀?。≧AM) ,兩個/PSEN 脈沖被跳過不會輸出。4) 。外接 ROM 時,與 ROM 的/OE 腳連接。五、EA/VPP1) 。接高電平時:CPU 讀取內(nèi)部程序存儲器(ROM) 。擴(kuò)充外部 ROM,當(dāng)讀取內(nèi)部程序存儲器超過 0FFFH(89C51) 、1FFFH(8052)時,自動讀取外部 ROM。2) 。接低電平時:CPU 讀取外部程序存儲器(ROM) 。3) 。8751 燒寫內(nèi)部 EPROM 時,利用此腳 21V 的燒寫電壓。六、XTAL1 、XTAL2 接晶體振蕩器引腳機(jī)器周期=晶體×12;如 12MHz 晶體/12=1 微秒3.2 DS1820 的說明DS1820 是美國 DALLAS 半導(dǎo)體公司生產(chǎn)的可組網(wǎng)數(shù)字式溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD )專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的器件里。3.2.1 詳細(xì)說明1 綜述圖 1 的方框圖表示 DS1820 的主要部件 DS1820 有三個主要的數(shù)據(jù)部件 64 位激光 ROM; 溫度靈敏元件和非易失性溫度告警觸發(fā)器 TH 和 TL 。器件從單線的通信線取得其電源,在信號線為高電平的時間周期內(nèi)把能量貯存在內(nèi)部的電容器中;在單信號線為低電平的時間期內(nèi),斷開此電源,直到信號線變?yōu)楦唠娖街匦陆由霞纳娙蓦娫礊橹?,作為另一種可供選擇的方法。DS1820 也可用外部 5V 電源供電與 DS1820 的通信經(jīng)過一個單線接口,在單線接口情況下,在 ROM 操作未定建立之前不能使用。存貯器和控制操作 主機(jī)必須首先提供五種 ROM 操作命令之一:1 Read ROM(讀 ROM) 2 Match ROM(符合 ROM),3)Search ROM(搜索 ROM),4)Skip ROM(跳過 ROM),或 5 Alarm Search(告警搜索) 這些命令對每一器件的 64 位激光 ROM 部分進(jìn)行操作 如果在單線上有許多器件,那么可以挑選出一個特定的器件,并給總線上的主機(jī)指示存在多少器件及其類型。在成功地執(zhí)行了 ROM 操作序列之后,可使用存貯器和控制操作,然后主機(jī)可以提供五種存貯器和控制操作命令之一。一個控制操作命令指示 DS1820 完成溫度測量,該測量的結(jié)果將放入 DS1820 的高速暫存便箋式存貯器 Scratchpad memory,通過發(fā)出讀暫存存儲器內(nèi)容的存儲器操作命令可以讀出此結(jié)果,每一溫度告警觸發(fā)器 TH 和 TL 構(gòu)成一個字節(jié)的 EEPROM 如果不對 DS1820 施加告警搜索命令,這些寄存器可用作通用用戶存儲器 使用存儲器操作命令可以寫 TH 和 TL 對這些寄存器的讀訪問。通過便箋存儲器,所有數(shù)據(jù)均以最低有效位在前的方式被讀寫。2 寄生電源(parasite power)方框圖(圖 1)示出寄生電源電路。當(dāng) I/O 或 VDD 引腳為高電平時,這個電路便 取 得電源。只要符合指定的定時和電壓要求,I/O 將提供足夠的功率。寄生電源的優(yōu)點(diǎn)是雙重的 1 利用此引腳遠(yuǎn)程溫度檢測無需本地電源,2 缺少正常電源條件下也可以讀 ROM。為了使 DS1820 能完成準(zhǔn)確的溫度變換,當(dāng)溫度變換發(fā)生時,I/O 線上必須提供足夠的功率,因?yàn)?DS1820 的工作電流高達(dá) 1mA。 5K 的上拉電阻將使 I/O 線沒有足夠的驅(qū)動能力。3 運(yùn)用測量溫度DS1820 通過使用在板 on-board 溫度測量專利技術(shù)來測量溫度。溫度測量電路的方框圖見圖二所示。DS1820 通過門開通期間內(nèi)低溫度系數(shù)振蕩器經(jīng)歷的時鐘周期個數(shù)計(jì)數(shù)來測量溫度。而門開通期由高溫度系數(shù)振蕩器決定,計(jì)數(shù)器予置對應(yīng)于-55 的基數(shù),如果在門開通期結(jié)束前計(jì)數(shù)器達(dá)到零,那么溫度寄存器,它也被予置到-55 的數(shù)值。將增量指示溫度高于-55,同時,計(jì)數(shù)器用斜率累加器電路所決定的值進(jìn)行予置,為了對遵循拋物線規(guī)律的振蕩器溫度特性進(jìn)行補(bǔ)償,這種電路是必需的。時鐘再次使計(jì)數(shù)器計(jì)值至它達(dá)到零。如果門開通時間仍未結(jié)束,那么此過程再次重復(fù)。斜率累加器用于補(bǔ)償振蕩器溫度特性的非線性,以產(chǎn)生高分辯率的溫度測量,通過改變溫度。每升高一度,計(jì)數(shù)器必須經(jīng)歷的計(jì)數(shù)個數(shù)來實(shí)行補(bǔ)償,因此,為了獲得所需的分辯率,計(jì)數(shù)器的數(shù)以及在給定溫度處每一攝氏度的計(jì)數(shù)個數(shù),斜率累加器的值,二者都必須知道。此計(jì)算在 DS1820 內(nèi)部完成以提供 0.5 的分辯率,溫度讀數(shù)以 16 位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供。數(shù)據(jù)在單線接口上串行發(fā)送 DS1820 可以以 0.5 的增量值在 0.5 至+125 的范圍內(nèi)測量溫度。對于應(yīng)用華氏溫度的場合 必須使用查找表或變換系數(shù)。 注意 在 DS1820 中 溫度是以 1/2 LSB 最低有效位形式表示時產(chǎn)生以下 9 位格 MSB:最高有效位 ;最低有效位:LSB。最高有效符號位被復(fù)制到存儲器內(nèi)兩字節(jié)的溫度寄存器中較高 MSB的所有位,這種符號擴(kuò)展產(chǎn)生了如表 1 所示的 16 位溫度讀數(shù)。 以下的過程可以獲得較高的分辯率 首先 讀溫度 并從讀得的值截去 0.5 位(最低有效位),這個值便是 TEMP_READ 然后可以讀留在計(jì)數(shù)器內(nèi)的值,此值是門開通期停止之后計(jì)數(shù)剩余。TEMPRATURE(溫度 = TEMP _ READ 0.25+ (COUNT _ PER _ C COUNT _ REMAIN)COUNT _ PER _ C COUNT_REMAIN 所需的最后一個數(shù)值是在該溫度處每一攝氏度的計(jì)數(shù)個數(shù) COUNT_PER_C 于是用戶可以使用上式計(jì)算實(shí)際溫度。4 運(yùn)用告警信號在 DS1820 完成溫度變換之后,溫度值與貯存在 TH 和 TL 內(nèi)的觸發(fā)值相比較,因?yàn)檫@些寄存器僅僅是 8 位,所以 0.5 位在比較時被忽略。TH 或 TL 的最高有效位直接對應(yīng)于 16 位溫度寄存器的符號位,如果溫度測量的結(jié)果高于 TH 或低于 TL,那么器件內(nèi)告警標(biāo)志將置位。每次溫度測量更新此標(biāo)志,只要告警標(biāo)志置位,DS1820 將對告警搜索命令作出響應(yīng) 。這允許并聯(lián)連接許多 DS1820 同時進(jìn)行溫度測量,如果某處溫度超過極限,那么可以識別出正在告警的器件并立即將其讀出而不必讀出非告警的器件。5 64 位激光 ROM每一 DS1820 包括一個唯一的 64 位長的 ROM 編碼。開紿的 8 位是單線產(chǎn)品系列編碼。64 位 ROM 和 ROM 操作控制部分允許 DS1820 作為一個單線器件工作并遵循單線總線系統(tǒng)一節(jié)中所詳述的單線協(xié)議,直到 ROM 操作協(xié)議被滿足。DS1820 控制部分的功能是不可訪問的, 單線總線主機(jī)必須首先操作五種 ROM 操作命令之一。6 CRC 產(chǎn)生DS1820 有一存貯在 64 位 ROM 的最高有效字節(jié)內(nèi)的 8 位 CRC 總線上的主機(jī)可以根據(jù) 64 位 ROM 的前 56 位計(jì)算機(jī) CRC 的值并把它與存貯在 DS1820 內(nèi)的值進(jìn)行比較,以決定 ROM 的數(shù)據(jù)是否已被主機(jī)正確地接收。CRC 的等效多項(xiàng)式函數(shù)為:CRC=X8+X5+X4+1DS1820 也利用與上述相同的多項(xiàng)式函數(shù)產(chǎn)生一個 8 位 CRC 值并把此值提供給總線的主機(jī)以確認(rèn)數(shù)據(jù)字節(jié)的傳送。在使用 CRC 來確認(rèn)數(shù)據(jù)傳送的每一種情況中,總線主機(jī)必須使用上面給出的多項(xiàng)式函數(shù)計(jì)算 CRC 的值,并把計(jì)算所得的值或者與存貯在 DS1820 的 64 位 ROM 部分中的 8 位 CRC 值 ROM 讀數(shù),或者與 DS1820 中計(jì)算得到的 8 位 CRC 值 在讀暫存存貯器中時它作為第九個字節(jié)被讀出。進(jìn)行比較 CRC 值的比較和是否繼續(xù)操作都由總線主機(jī)來決定,當(dāng)存貯在 DS1820 內(nèi)或由 DS1820 計(jì)算得到的 CRC 值與總線主機(jī)產(chǎn)生的值不相符合時 在 DS1820 內(nèi)設(shè)有電路來阻止命令序列的繼續(xù)執(zhí)行。移位寄存器的所有位被初始化為零,然后從產(chǎn)品系列編碼的最低有效位開始,每次移入一位。當(dāng)產(chǎn)品系列編碼的 8 位移入以后,接著移入序列號,在序列號的第 48 位進(jìn)入之后 移位寄存器便包含了 CRC 值,移入 CRC 的 8 位應(yīng)該使移位寄存器返回至全零。7 存貯器DS1820 的存貯器如圖所示那樣被組織。存貯器由一個高速暫存便箋式 RAM 和一個非易失性電可擦除 E2 RAM 組成。后者存貯高溫度和低溫度和觸發(fā)器 TH 和 TL。暫存存貯器有助于在單線通信時確保數(shù)據(jù)的完整性。數(shù)據(jù)首先寫入暫存存貯器,在那里它可以被讀回,當(dāng)數(shù)據(jù)被校驗(yàn)之后,復(fù)制暫存存貯器的命令把數(shù)據(jù)傳送到非易失性 E2 RAM,這一過程確保了更改存貯器時數(shù)據(jù)的完整性。SCRATCHPAD BYTE E2RAMTEMPERATURE LSB 0TEMPERATURE MSB 1TH/USERBYTE1 2 TH/USERBYTE1TL/USERBVTE2 3 TL/USERBVTE2RESERVED 4RESERVED 5COUNT REMAIN 6COUNT PER 7CRC 8DS1820 存貯器映象圖暫存存貯器是按 8 位字節(jié)存儲器來組織的。頭兩個字節(jié)包含測得溫度信息,第三和第四個字節(jié)是 TH 和 TL 的易失性拷貝,在每一次上電復(fù)位時被刷新,接著的兩個字節(jié)沒有使用,但是在讀回時,它們呈現(xiàn)為邏輯全 1。第七和第八個字節(jié)是計(jì)數(shù)寄存器,它們可用于獲得較高的溫度分辨率。還有第九個字節(jié),它可用 Read Scratchpad 讀暫存存貯器命令。該字節(jié)包含一個循環(huán)冗余校驗(yàn) CRC 字節(jié),它是前面所有 8 個字節(jié)的 CRC 值。此 CRC 值以 CRC 產(chǎn)生一節(jié)中所述的方式產(chǎn)生。8 單線總線系統(tǒng)8.1 硬件接法單線總線只有一根線,即線上的第一個器件能在適當(dāng)?shù)臅r間驅(qū)動該總線。為了做到這一點(diǎn),第一個連接到單線總線上的器件必須具有漏極開路或三態(tài)輸出。單線總線要求近似等于 5k 的上拉電阻,單線總線的空閑狀態(tài)是高電平。不管任何原因,如果執(zhí)行需要被掛起,那么,若要重新恢復(fù)執(zhí)行,總線必須保持在空閑狀態(tài)。如果不滿足這一點(diǎn)且總線保持在低電平時間大于 480us,那么總線上所有器件均被復(fù)位。存在脈沖 presence pulse 使總線主機(jī)知道 DS1820 在總線上并已準(zhǔn)備好工作。 經(jīng)過單線接口訪問 DS1820 的協(xié)議 protocol 如下初始化ROM 操作命令存貯器操作命令處理/數(shù)據(jù)8.2.1 初始化單線總線上的所有處理均從初始化序列開始,初始化序列包括總線主機(jī)發(fā)出一復(fù)位脈沖 ,接由從屬器件送出存在脈沖。2.8.2.2 ROM 操作命令一旦總線主機(jī)檢測到從屬器件的存在,它便可以發(fā)出器件 ROM 操作命令之一,所有 ROM 作命令均為 8 位長,這些命令列表如下:Read ROM(讀 ROM) [33h]此命令允許總線主機(jī)讀 DS1820 的 8 位產(chǎn)品系列編碼 唯一的 48 位序列號 以及 8 位的 CRC。此命令只能在總線上僅有一個 DS1820 的情況下可以使用,如果總線上存在多于一個的從屬器件,那么當(dāng)所有從片企圖同時發(fā)送時將發(fā)生數(shù)據(jù)沖突的現(xiàn)象,漏極開路會產(chǎn)生線與的結(jié)果。Match ROM( 符合 ROM) [55h]符合 ROM 命令后繼以 64 位的 ROM 數(shù)據(jù)序列,允許總線主機(jī)對多點(diǎn)總線上特定的 DS1820 尋址。只有與 64 位 ROM 序列嚴(yán)格相符的 DS1820 才能對后繼的存貯器操作命令作出響應(yīng)。所有與 64 位 ROM 序列不符的從片將等待復(fù)位脈沖,此命令在總線上有單個或多個器件的情況下均可使用。Skip ROM( 跳過 ROM ) [CCh]在單點(diǎn)總線系統(tǒng)中,此命令通過允許總線主機(jī)不提供 64 位 ROM 編碼而訪問存儲器操作來節(jié)省時間。如果在總線上存在多于一個的從屬器件而且在 Skip ROM 命令之后發(fā)出讀命令 那么由于多個從片同時發(fā)送數(shù)據(jù),會在總線上發(fā)生數(shù)據(jù)沖突,漏極開路下拉會產(chǎn)生線與的效果。Search ROM( 搜索 ROM) [F0h]當(dāng)系統(tǒng)開始工作時,總線主機(jī)可能不知道單線總線上的器件個數(shù)或者不知道其 64 位 ROM 編碼。搜索 ROM 命令允許總線主機(jī)使用一種消去 elimination 處理來識別總線上所有從片的 64 位 ROM 編碼。Alarm Search(告警搜索) [ECh] 此命令的流程與搜索 ROM 命令相同,但是僅在最近一次溫度測量出現(xiàn)告警的情況下 DS1820 才對此命令作出響應(yīng)。告警的條件定義為溫度高于 TH 或低于 TL。只要 DS1820 一上電,告警條件就保持在設(shè)置狀態(tài),直到另一次溫度測量顯示出非告警值,或者改變 TH 或 TL 的設(shè)置使得測量值再一次位于允許的范圍之內(nèi),貯存在 EEPROM 內(nèi)的觸發(fā)器值用于告警。3.2.2 DS1820 測溫原理如圖 2 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計(jì)數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計(jì)數(shù)器 2 的脈沖輸入。計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在-55 ℃所對應(yīng)的一個基數(shù)值。計(jì)數(shù)器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1 的預(yù)置值減到 0 時,溫度寄存器的值將加 1 ,計(jì)數(shù)器 1 的預(yù)置將重新被裝入,計(jì)數(shù)器 1 重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2 計(jì)數(shù)到 0 時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖 2 中的斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1 的預(yù)置值。 在正常測溫情況下,DS1820 的測溫分辯率為 0.5℃ 以 9 位數(shù)據(jù)格式表示,其中最低有效位(LSB)由比較器進(jìn)行 0.25℃比較,當(dāng)計(jì)數(shù)器 1 中的余值轉(zhuǎn)化成溫度后低于 0.25℃時,清除溫度寄存器的最低位(LSB),當(dāng)計(jì)數(shù)器 1 中的余值轉(zhuǎn)化成溫度后高于 0.25℃,置位溫度寄存器的最低位( LSB),如-25.5℃對應(yīng)的 9 位數(shù)據(jù)格式如下: 3.2.3 DS1820 使用中注意事項(xiàng) DS1820 雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題: (1)較小的硬件開銷需要相對復(fù)雜的軟件進(jìn)行補(bǔ)償,由于 DS1820 與微處理器間采用串行數(shù)據(jù)傳送,因此,在對 DS1820 進(jìn)行讀寫編程時,必須嚴(yán)格的保證讀寫時序,否則將無法讀取測溫結(jié)果。在使用 PL/M、C 等高級語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時,對DS1820 操作部分最好采用匯編語言實(shí)現(xiàn)。 (2)在 DS1820 的有關(guān)資料中均未提及單總線上所掛 DS1820 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個 DS1820,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛 DS1820 超過 8 個時,就需要解決微處理器的總線驅(qū)動問題,這一點(diǎn)在進(jìn)行多點(diǎn)測溫系統(tǒng)設(shè)計(jì)時要加以注意。 (3)連接 DS1820 的總線電纜是有長度限制的。試驗(yàn)中,當(dāng)采用普通信號電纜傳輸長度超過 50m 時,讀取的測溫?cái)?shù)據(jù)將發(fā)生錯誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時,正常通訊距離可達(dá) 150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時,正常通訊距離進(jìn)一步加長。這種情況主要是由總線分布電容使信號波形產(chǎn)生畸變造成的。因此,在用 DS1820 進(jìn)行長距離測溫系統(tǒng)設(shè)計(jì)時要充分考慮總線分布電容和阻抗匹配問題。 (4)在 DS1820 測溫程序設(shè)計(jì)中,向 DS1820 發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS1820 的返回信號,一旦某個 DS1820 接觸不好或斷線,當(dāng)程序讀該 DS1820 時,將沒有返回信號,這一點(diǎn)在進(jìn)程序進(jìn)入死循環(huán)。對 DS1820 硬件連接和軟件設(shè)計(jì)時也要給予一定的重視。3.3 電路的設(shè)計(jì)3.3.1 主回路的設(shè)計(jì)3.3.2 鍵盤顯示電路由 74LS247 七段譯碼器、74LS139 雙二四線譯碼器、74LS05 六倒向器各一片和四位 LED顯示器組成。89C51 單片機(jī)把要顯示的溫度信號通過 P3.0~P3.3 口送到 74LS247,經(jīng)譯碼后送七段數(shù)碼顯示器,然后再由 89C51 的 P1.4~P1.5 口輸出位選通信號,選通要顯示的位。四位顯示器從個位到千位依次輪番點(diǎn)亮,每位顯示時間 1ms,顯示實(shí)際測量的溫度以及斷偶報警。3.3.3 接口電路8255 用作鍵盤/LED 顯示器接口電路8255 引腳功能RESET:復(fù)位輸入線,當(dāng)該輸入端外于高電平時,所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有 I/O 口均被置成輸入方式。CS:片選信號線,當(dāng)這個輸入引腳為低電平時,表示芯片被選中,允許 8255 與 CPU 進(jìn)行通訊。RD:讀信號線,當(dāng)這個輸入引腳為低電平時,允許 8255 通過數(shù)據(jù)總線向 CPU 發(fā)送數(shù)據(jù)或狀態(tài)信息,即 CPU 從 8255 讀取信息或數(shù)據(jù)。WR:寫入信號,當(dāng)這個輸入引腳為低電平時,允許 CPU 將數(shù)據(jù)或控制字寫入 8255。D0~D7:三態(tài)雙向數(shù)據(jù)總線,8255 與 CPU 數(shù)據(jù)傳送的通道,當(dāng) CPU 執(zhí)行輸入輸出指令時,通過它實(shí)現(xiàn)8位數(shù)據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。PA0~PA7:端口 A 輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/ 緩沖器, 一個8位的數(shù)據(jù)輸入鎖存器。PB0~PB7:端口 B 輸入輸出線,一個8位的 I/O 鎖存器, 一個8位的輸入輸出緩沖器。PC0~PC7:端口 C 輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器 /緩沖器, 一個8位的數(shù)據(jù)輸入緩沖器。端口 C 可以通過工作方式設(shè)定而分成2個4位的端口, 每個4位的端口包含一個4位的鎖存器,分別與端口 A 和端口 B 配合使用,可作為控制信號輸出或狀態(tài)信號輸入端口。PA3-- 1 40 --PA4 PA2-- 2 39 --PA5 PA1-- 3 38 --PA6 PA0-- 4 37 --PA7 RD-- 5 36 --WR CS-- 6 35 --RESET GND-- 7 34 --D0 A1-- 8 33 --D1 A0-- 9 32 --D2 PC7-- 10 31 --D3 PC6-- 11 30 --D4 PC5-- 12 29 --D5 PC4-- 13 28 --D6 PC0-- 14 27 --D7 PC1-- 15 26 --VCC PC2-- 16 25 --PB7 PC-- 17 24 --PB6 PB0-- 18 23 --PB5 PB1-- 19 22 --PB4 PB2-- 20 21 --PB3 A1、A0: 端口地址總線, 8255 中有端口 A、B 、C 和一個內(nèi)部控制字寄存器,共4個端口,由 A0、A1 輸入地址信號來尋址。2764 是 8K EPROM 型器件。89C51 的 PSEN 和 2764 的 OE 相連,P2.5 和 CE 相連,所以 2764的地址空間為:0000H---1FFFH,ADC0809 的 0 通道(IN0 其他輸入端可作備用)和變送器的輸出端相連,所以從通道 0(IN0)上輸入的 0V--+5V 范圍的模擬電壓經(jīng) A/D 轉(zhuǎn)換后可由89C51 通過程序從 P0 口輸入到它的內(nèi)部 RAM 單元,在 P2.2=0 和 WR=0 時,89C51 可使 ALE和 START 變?yōu)楦唠娖蕉鴨?ADC0809 工作;在 P2.2=0 和 RD=0 時,89C51 可以從 ADC0809 接收 A/D 轉(zhuǎn)換后的數(shù)字量。也就是說 ADC0809 可以視為 89C51 的一個外部 RAM 單元,地址為03F8H(地址重復(fù)范圍很大) ,因此,89C51 執(zhí)行如下程序可以啟動 ADC0809 工作。MOV DPTR,#03F8HMOVX @DPTR,A若 89C51 執(zhí)行下列程序:MOV DPTR,#03F8HMOVX A,@DPTR則可以從 ADC0809 輸入 A/D 轉(zhuǎn)換后的數(shù)字量。3.3.4 溫度控制電路可控硅在自動控制控制,機(jī)電領(lǐng)域,工業(yè)電氣及家電等方面都有廣泛的應(yīng)用。可控硅是一種有源開關(guān)元件,平時它保持在非道通狀態(tài),直到由一個較少的控制信號對其觸發(fā)或稱“點(diǎn)火”使其道通,一旦被點(diǎn)火就算撤離觸發(fā)信號它也保持道通狀態(tài),要使其截止可在其陽極與陰極間加上反向電壓或?qū)⒘鬟^可控硅二極管的電流減少到某一個值以下??煽毓瓒O管可用兩個不同極性(P-N-P 和 N-P-N)晶體管來模擬,如圖 G1 所示。當(dāng)可控硅的柵極懸空時,BG1 和 BG2 都處于截止?fàn)顟B(tài),此時電路基本上沒有電流流過負(fù)載電阻RL,當(dāng)柵極輸入一個正脈沖電壓時 BG2 道通,使 BG1 的基極電位下降,BG1 因此開始道通,BG1 的道通使得 BG2 的基極電位進(jìn)一步升高,BG1 的基極電位進(jìn)一步下降,經(jīng)過這一個正反饋過程使 BG1 和 BG2 進(jìn)入飽和道通狀態(tài)。電路很快從截止?fàn)顟B(tài)進(jìn)入道通狀態(tài),這時柵極就算沒有觸發(fā)脈沖電路由于正反饋的作用將保持道通狀態(tài)不變。如果此時在陽極和陰極加上反向電壓,由于 BG1 和 BG2 均處于反向偏置狀態(tài)所以電路很快截止,另外如果加大負(fù)載電阻 RL 的阻值使電路電流減少 BG1 和 BG2 的基電流也將減少,當(dāng)減少到某一個值時由于電路的正反饋?zhàn)饔茫娐穼⒑芸鞆牡劳顟B(tài)翻轉(zhuǎn)為截止?fàn)顟B(tài),我們稱這個電流為維持電流。在實(shí)際應(yīng)用中,我們可通過一個開關(guān)來短路可控硅的陽極和陰極從而達(dá)到可控硅的關(guān)斷。第 4 章 控制的算法4.1 溫度控制的 PID 算法PID 參數(shù)如何設(shè)定調(diào)節(jié)PID 就是比例微積分調(diào)節(jié),具體你可以參照自動控制課程里有詳細(xì)介紹!正作用與反作用在溫控里就是當(dāng)正作用時是加熱,反作用是制冷控制。PID 控制簡介目前工業(yè)自動化水平已成為衡量各行各業(yè)現(xiàn)代化水平的一個重要標(biāo)志。同時,控制理論的發(fā)展也經(jīng)歷了古典控制理論、現(xiàn)代控制理論和智能控制理論三個階段。智能控制的典型實(shí)例是模糊全自動洗衣機(jī)等。自動控制系統(tǒng)可分為開環(huán)控制系統(tǒng)和閉環(huán)控制系統(tǒng)。一個控控制系統(tǒng)包括控制器﹑傳感器﹑變送器﹑執(zhí)行機(jī)構(gòu)﹑輸入輸出接口。控制器的輸出經(jīng)過輸出接口﹑執(zhí)行機(jī)構(gòu)﹐加到被控系統(tǒng)上﹔控制系統(tǒng)的被控量﹐經(jīng)過傳感器﹐變送器﹐通過輸入接口送到控制器。不同的控制系統(tǒng)﹐其傳感器﹑變送器﹑執(zhí)行機(jī)構(gòu)是不一樣的。比如壓力控制系統(tǒng)要采用壓力傳感器。電加熱控制系統(tǒng)的傳感器是溫度傳感器。目前,PID 控制及其控制器或智能 PID 控制器(儀表)已經(jīng)很多,產(chǎn)品已在工程實(shí)際中得到了廣泛的應(yīng)用,有各種各樣的PID 控制器產(chǎn)品,各大公司均開發(fā)了具有 PID 參數(shù)自整定功能的智能調(diào)節(jié)器(intelligent regulator),其中 PID 控制器參數(shù)的自動調(diào)整是通過智能化調(diào)整或自校正、自適應(yīng)算法來實(shí)現(xiàn)。有利用 PID 控制實(shí)現(xiàn)的壓力、溫度、流量、液位控制器,能實(shí)現(xiàn) PID 控制功能的可編程控制器(PLC),還有可實(shí)現(xiàn) PID 控制的 PC 系統(tǒng)等等。 可編程控制器(PLC)是利用其閉環(huán)控制模塊來實(shí)現(xiàn) PID 控制,而可編程控制器(PLC)可以直接與 ControlNet 相連,如 Rockwell 的PLC-5 等。還有可以實(shí)現(xiàn) PID 控制功能的控制器,如 Rockwell 的 Logix 產(chǎn)品系列,它可以直接與 ControlNet 相連,利用網(wǎng)絡(luò)來實(shí)現(xiàn)其遠(yuǎn)程控制功能。1、開環(huán)控制系統(tǒng)開環(huán)控制系統(tǒng)(open-loop control system)是指被控對象的輸出(被控制量)對控制器(controller)的輸出沒有影響。在這種控制系統(tǒng)中,不依賴將被控量反送回來以形成任何閉環(huán)回路。2、閉環(huán)控制系統(tǒng)閉環(huán)控制系統(tǒng)(closed-loop control system)的特點(diǎn)是系統(tǒng)被控對象的輸出(被控制量)會反送回來影響控制器的輸出,形成一個或多個閉環(huán)。閉環(huán)控制系統(tǒng)有正反饋和負(fù)反饋,若反饋信號與系統(tǒng)給定值信號相反,則稱為負(fù)反饋( Negative Feedback),若極性相同,則稱為正反饋,一般閉環(huán)控制系統(tǒng)均采用負(fù)反饋,又稱負(fù)反饋控制系統(tǒng)。閉環(huán)控制系統(tǒng)的例子很多。比如人就是一個具有負(fù)反饋的閉環(huán)控制系統(tǒng),眼睛便是傳感器,充當(dāng)反饋,人體系統(tǒng)能通過不斷的修正最后作出各種正確的動作。如果沒有眼睛,就沒有了反饋回路,也就成了一個開環(huán)控制系統(tǒng)。另例,當(dāng)一臺真正的全自動洗衣機(jī)具有能連續(xù)檢查衣物是否洗凈,并在洗凈之后能自動切斷電源,它就是一個閉環(huán)控制系統(tǒng)。3、階躍響應(yīng) 階躍響應(yīng)是指將一個階躍輸入(step function)加到系統(tǒng)上時,系統(tǒng)的輸出。穩(wěn)態(tài)誤差是指系統(tǒng)的響應(yīng)進(jìn)入穩(wěn)態(tài)后﹐系統(tǒng)的期望輸出與實(shí)際輸出之差??刂葡到y(tǒng)的性能可以用穩(wěn)、準(zhǔn)、快三個字來描述。穩(wěn)是指系統(tǒng)的穩(wěn)定性(stability),一個系統(tǒng)要能正常工作,首先必須是穩(wěn)定的,從階躍響應(yīng)上看應(yīng)該是收斂的﹔準(zhǔn)是指控制系統(tǒng)的準(zhǔn)確性、控制精度,通常用穩(wěn)態(tài)誤差來(Steady-state error) 描述,它表示系統(tǒng)輸出穩(wěn)態(tài)值與期望值之差﹔快是指控制系統(tǒng)響應(yīng)的快速性,通常用上升時間來定量描述。 4、PID 控制的原理和特點(diǎn) 在工程實(shí)際中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡稱 PID 控制,又稱 PID 調(diào)節(jié)。PID 控制器問世至今已有近 70 年歷史,它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時,控制理論的其它技術(shù)難以采用時,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場調(diào)試來確定,這時應(yīng)用 PID 控制技術(shù)最為方便。即當(dāng)我們不完全了解一個系統(tǒng)和被控對象﹐或不能通過有效的測量手段來獲得系統(tǒng)參數(shù)時,最適合用 PID 控制技術(shù)。PID 控制,實(shí)際中也有 PI 和 PD 控制。PID 控制器就是根據(jù)系統(tǒng)的誤差,利用比例、積分、微分計(jì)算出控制量進(jìn)行控制的。 比例(P)控制 比例控制是一種最簡單的控制方式。其控制器的輸出與輸入誤差信號成比例關(guān)系。當(dāng)僅有比例控制時系統(tǒng)輸出存在穩(wěn)態(tài)誤差(Steady-state error) 。 積分(I)控制 在積分控制中,控制器的輸出與輸入誤差信號的積分成正比關(guān)系。對一個自動控制系統(tǒng),如果在進(jìn)入穩(wěn)態(tài)后存在穩(wěn)態(tài)誤差,則稱這個控制系統(tǒng)是有穩(wěn)態(tài)誤差的或簡稱有差系統(tǒng)(System with Steady-state Error) 。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項(xiàng)” 。積分項(xiàng)對誤差取決于時間的積分,隨著時間的增加,積分項(xiàng)會增大。這樣,即便誤差很小,積分項(xiàng)也會隨著時間的增加而加大,它推動控制器的輸出增大使穩(wěn)態(tài)誤差進(jìn)一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后無穩(wěn)態(tài)誤差。 微分(D)控制 在微分控制中,控制器的輸出與輸入誤差信號的微分(即誤差的變化率)成正比關(guān)系。 自動控制系統(tǒng)在克服誤差的調(diào)節(jié)過程中可能會 出現(xiàn)振蕩甚至失穩(wěn)。其原因是由于存在有較大慣性組件(環(huán)節(jié))或有滯后(delay)組件,具有抑制誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使抑制誤差的作用的變化“超前”,即在誤差接近零時,抑制誤差的作用就應(yīng)該是零。這就是說,在控制器中僅引入“比例”項(xiàng)往往是不夠的,比例項(xiàng)的作用僅是放大誤差的幅值,而目前需要增加的是“微分項(xiàng)”,它能預(yù)測誤差變化的趨勢,這樣,具有比例+微分的控制器,就能夠提前使抑制誤差的控制作用等于零,甚至為負(fù)值,從而避免了被控量的嚴(yán)重超調(diào)。所以對有較大慣性或滯后的被控對象,比例+微分(PD)控制器能改善系統(tǒng)在調(diào)節(jié)過程中的動態(tài)特性。 5、PID 控制器的參數(shù)整定 PID 控制器的參數(shù)整定是控制系統(tǒng)設(shè)計(jì)的核心內(nèi)容。它是根據(jù)被控過程的特性確定 PID 控制器的比例系數(shù)、積分時間和微分時間的大小。PID 控制器參數(shù)整定的方法很多,概括起來有兩大類:一是理論計(jì)算整定法。它主要是依據(jù)系統(tǒng)的數(shù)學(xué)模型,經(jīng)過理論計(jì)算確定控制器參數(shù)。這種方法所得到的計(jì)算數(shù)據(jù)未必可以直接用,還必須通過工程實(shí)際進(jìn)行調(diào)整和修改。二是工程整定方法,它主要依賴工程經(jīng)驗(yàn),直接在控制系統(tǒng)的試驗(yàn)中進(jìn)行,且方法簡單、易于掌握,在工程實(shí)際中被廣泛采用。PID 控制器參數(shù)的工程整定方法,主要有臨界比例法、反應(yīng)曲線法和衰減法。三種方法各有其特點(diǎn),其共同點(diǎn)都是通過試驗(yàn),然后按照工程經(jīng)驗(yàn)公式對控制器參數(shù)進(jìn)行整定。但無論采用哪一種方法所得到的控制器參數(shù),都需要在實(shí)際運(yùn)行中進(jìn)行最后調(diào)整與完善。現(xiàn)在一般采用的是臨界比例法。利用該方法進(jìn)行 PID 控制器參數(shù)的整定步驟如下:(1)首先預(yù)選擇一個足夠短的采樣周期讓系統(tǒng)工作﹔(2)僅加入比例控制環(huán)節(jié),直到系統(tǒng)對輸入的階躍響應(yīng)出現(xiàn)臨界振蕩,記下這時的比例放大系數(shù)和臨界振蕩周期﹔(3)在一定的控制度下通過公式計(jì)算得到 PID 控制器的參數(shù)。 PID 參數(shù)的設(shè)定:是靠經(jīng)驗(yàn)及工藝的熟悉,參考測量值跟蹤與設(shè)定值曲線,從而調(diào)整 P\I\D 的大小。PID 控制器參數(shù)的工程整定,各種調(diào)節(jié)系統(tǒng)中 P.I.D 參數(shù)經(jīng)驗(yàn)數(shù)據(jù)以下可參照:溫度 T: P=20~60%,T=180~600s,D=3-180s第 5 章 溫度控制程序5.1 總 述通常,電阻爐爐溫控制都采用偏差控制法。偏差控制的原理是先求出實(shí)測爐溫對所需爐溫的偏差值,然后對偏差值處理獲得控制信號去調(diào)節(jié)電阻爐的加熱功率,以實(shí)現(xiàn)對爐溫的控制。在工業(yè)上,偏差控制又稱 PID 控制,這是工業(yè)控制過程中應(yīng)用最廣泛的一種控制形式,一般都能收到令人滿意的效果溫度控制程序的設(shè)計(jì)應(yīng)考慮如下:1)鍵盤掃描、鍵碼識別和溫度顯示;2)爐溫采樣、數(shù)字濾波;3)數(shù)據(jù)處理;4)越限報警和處理;5)PID 計(jì)算、溫度標(biāo)度轉(zhuǎn)換軟件結(jié)構(gòu)圖如圖所示檢測與變送A/D 轉(zhuǎn)換工程量變換溫度非線性轉(zhuǎn)換發(fā)送數(shù)據(jù)到串口比較判斷算法溫度預(yù)設(shè)值 溫度調(diào)節(jié) 電路執(zhí)行器從串口接受數(shù)據(jù)命令識別控制程序5.2 主程序主程序包括 89C51 本身的初始化、并行接口 8255 初始化等等。大體說來,本程序包括設(shè)置有關(guān)標(biāo)志、暫存單元和顯示緩沖區(qū)清零、T0 初始化、CPU 開中斷、溫度顯示和鍵盤掃描等程序5.3 T0 中斷服務(wù)程序 CT0T0 中斷服務(wù)程序是溫度控制系統(tǒng)的主體程序,用于啟動數(shù)/模轉(zhuǎn)換器、讀入采樣數(shù)據(jù)、數(shù)字濾波、越限溫度報警和越限處理、PID 計(jì)算和輸出可控硅的觸發(fā)脈沖等。P1.3 引腳上輸出的該同步觸發(fā)脈沖寬度由 T1 計(jì)數(shù)器的溢出中斷控制,89C51 利用等待 T1 溢出中斷的空閑時間(形成 P1.3 輸出脈沖頂寬)完成把本次采樣值轉(zhuǎn)換成顯示值而放入顯示單元緩沖區(qū)和調(diào)用溫度顯示程序。89C51 從 T1 中斷服務(wù)程序返回后即可恢復(fù)現(xiàn)場和返回主程序。5.4 子程序主要服務(wù)子程序包括溫度檢測采樣及數(shù)字濾波子程序、帶符號雙字節(jié)乘法子程序和標(biāo)度轉(zhuǎn)換子程序目的是把實(shí)際采樣取得的二進(jìn)制值轉(zhuǎn)換成 BCD 碼形式的溫度值,然后存放到顯示緩沖區(qū)中,供顯示子程序調(diào)用致 謝時間飛逝,歲月如梭,轉(zhuǎn)眼大學(xué)生活就要以畢業(yè)論文完成而結(jié)束。畢業(yè)論文能夠順利的按時完成,自始至終都貫穿著我的導(dǎo)師——羅文老師的關(guān)懷和指導(dǎo),羅文老師在我們的心里是一位知識豐富,平易近人的老師。他豐富的知識與耐心的教導(dǎo)使我受益非淺。借此機(jī)會對羅老師表示衷心的感謝和由衷的敬意。 同時,還要感謝這四年來所有傳道授業(yè)過我的老師,以及關(guān)心和幫助過我的同學(xué)們。參考文獻(xiàn)[1]《單片機(jī)原理及應(yīng)用》李鴻主編,湖南大學(xué)出版社 2004[2]《測控系統(tǒng)原理與設(shè)計(jì)》孫占友等編著,北京航空航天大學(xué)出版社 2002.9[3]《檢測與轉(zhuǎn)換技術(shù)》常健生等主編,北京機(jī)械工業(yè)出版社 2002.2[4]《電子測量儀器原理與應(yīng)用Ⅱ—智能儀器》羅耀華主編,哈爾濱工程大學(xué)出版社 2002.5[5]《單片機(jī)外圍電路設(shè)計(jì)》沙占友主編,電子工業(yè)出版社 2003.1[6] 陳明熒.8051 單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材 北京:清華大學(xué)出版社 2004[7] 胡漢才.單片機(jī)原理及其接口技術(shù) 北京:清華大學(xué)出版社 1995[8] 徐淑華 程退安 姚萬生 .單片機(jī)微型機(jī)原理及應(yīng)用 哈爾濱工業(yè)大學(xué)出版社 1994[9]戴明楨、周建江編,微型計(jì)算機(jī)接口技術(shù)[M],北京:航空工業(yè)出版社,1993 [10]孫育才編,單片微型計(jì)算機(jī)及其應(yīng)用[M],江蘇:東南大學(xué)出版社,1987[11]李均宜編,爐溫儀表與熱控制[M],北京:機(jī)械工業(yè)出版社,1981[12]徐愛鈞編著. 智能化測量控制儀表原理與設(shè)計(jì)[M].北京航空航天大學(xué)出版社.[13]《MCS-51系列單片機(jī)實(shí)用子程序集錦》陳偉人編著, 清華大學(xué)出版社1993.3。[14]《單片微型計(jì)算機(jī)及其應(yīng)用》徐愛卿、孫涵芳、盛煥鳴、張繼志編著, 北京航空學(xué)院出版社1986年。[15]《MCS-51單片機(jī)綜合系統(tǒng)及其設(shè)計(jì)開發(fā)》張凱、馬忠梅、劉繼華、張立平編著, 科學(xué)出版社1996年。[16]《MCS-51系列單片機(jī)實(shí)用子程序集錦》陳偉人編著, 清華大學(xué)出版社1993.3。[17]《MCS-51單片機(jī)綜合系統(tǒng)及其設(shè)計(jì)開發(fā)》張凱、馬忠梅、劉繼華、張立平編著, 科學(xué)出版社1996年。 附錄 1本設(shè)計(jì)使用的單片機(jī)程序如下:#include //*************************void INIT(){ADCON1=0X07;TRISC=0X80;TRISB=0X00;TRISD=0X00;RD1=0;RD0=0;TRISA=0X0f; TRISE=0X00;}//*************************#include #include "init.h"#include "proc.h"http://*************************unsigned char i;unsigned int delay;extern unsigned char a;extern unsigned char temph;extern unsigned char templ;//***************************void main(){//初始化INIT();for(delay=65536;delay>0;delay--) asm(
收藏