學(xué)《計算機控制技術(shù)》課程設(shè)計說明書計算機溫度測控系統(tǒng)
《學(xué)《計算機控制技術(shù)》課程設(shè)計說明書計算機溫度測控系統(tǒng)》由會員分享,可在線閱讀,更多相關(guān)《學(xué)《計算機控制技術(shù)》課程設(shè)計說明書計算機溫度測控系統(tǒng)(35頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、武漢理工大學(xué)《計算機控制技術(shù)》課程設(shè)計說明書 目錄 摘要 1 1 系統(tǒng)方案的選擇 2 1.1溫度變送器的選擇 2 1.2 鍵盤顯示部分 2 1.3 控制電路部分 2 1.4 PID過程控制部分 3 1.4.1過程控制的基本概念 3 1.4.2 模擬PID控制系統(tǒng)組成 4 1.4.3 數(shù)字PID控制器 5 2 總體方案的分析 5 2.1系統(tǒng)總模塊 5 2.2 系統(tǒng)模塊關(guān)系圖 6 3 硬件電路設(shè)計 6 3.1 繼電器控制電路 6 3.2 顯示電路 7 3.3 鍵盤輸入電路 8 3.4 溫度變送器電路 8 3.5 單片機AT89C52最小系統(tǒng) 8 3.5.1
2、 單片機簡介 8 3.5.2單片機最小系統(tǒng)電路簡介 9 3.6 總電路硬件圖 11 4 軟件程序設(shè)計 11 4.1 主程序流程圖 11 4.2 程序結(jié)構(gòu)圖 13 5 相關(guān)器件測試、系統(tǒng)調(diào)試和參數(shù)整定 13 5.1 繼電器測試 13 5.2 PID參數(shù)整定 14 5.3 系統(tǒng)調(diào)試 15 6 小結(jié)和心得體會 16 參考文獻 18 附錄 19 附錄1 參考程序 19 附錄2 總硬件電路圖 32 摘要 在實際的生產(chǎn)實驗環(huán)境下,由于系統(tǒng)內(nèi)部和外界的熱量交換是很難控制的,而且其他干擾因素也是無法去精確計算的,因此溫度量的變化往往受到不可精確預(yù)計
3、的外界環(huán)境擾動的影響。但是正常工業(yè)生產(chǎn)過程中,對生產(chǎn)中的溫度要求又是相對精確和苛刻的,工業(yè)生產(chǎn)中經(jīng)常要保持反應(yīng)爐中保持一定的溫度,來促進反應(yīng)的持續(xù)快速進行,同時,以前的溫度控制大多是人工通過儀表的顯示來調(diào)節(jié)溫度的模式,然而人工控制溫度的精確度不高,而且反應(yīng)不靈敏,存在較大誤差,因此需要更好的測溫控溫方法。 隨著電子技術(shù)和計算機的迅速發(fā)展,計算機測量控制技術(shù)擁有操作簡單、控制靈活、使用便捷以及性價比較高的優(yōu)點從而得到了廣泛應(yīng)用。 單片機是一種集CPU、RAM、ROM、I/O接口和中斷系統(tǒng)等部分于一體的器件,只需要外加電源和晶振就可以實現(xiàn)對數(shù)字信息的處理和控制,因此,單片機廣泛應(yīng)用于現(xiàn)代工業(yè)控
4、制中。此控制具有重量輕、體積小、價格低、可靠性高、耗電低和操作靈活等優(yōu)點,因此利用單片機進行溫度測量控制會大大提高其可靠性和準(zhǔn)確性。單片機對溫度的測量控制是基于傳感器、A/D轉(zhuǎn)換器以及擴展接口和執(zhí)行機構(gòu)來進行的。在閉環(huán)過程控制系統(tǒng)中,過程的實時參數(shù)由傳感器和A/D轉(zhuǎn)換器來進行實時采集,并由單片機自動記錄、處理并控制執(zhí)行機構(gòu)來進行調(diào)節(jié)和控制。因此需要對單片機進行擴展和開發(fā),來形成一個完整的單片機溫度控制系統(tǒng)。 關(guān)鍵詞:單片機 溫度測控系統(tǒng) 自動控制 溫度變送器 計算機溫度測控系統(tǒng) 1 系統(tǒng)方案的選擇 1.1溫度變送器的選擇 目前市場上溫度傳感器
5、較多,主要有以下幾種方案: 方案一:選用鉑電阻溫度傳感器。此類溫度傳感器線性度、穩(wěn)定性等方面性能都很好,但其成本較高。 方案二:采用熱敏電阻。選用此類元器件有價格便宜的優(yōu)點,但由于熱敏電阻的非線性特性會影響系統(tǒng)的精度。 方案三:采用DS18B20溫度傳感器。DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式;溫度測量范圍為-55℃~+125℃,可編程為9位~12位A/D轉(zhuǎn)換精度,測溫分辨率可達0.0625℃,被測溫度用符號擴展的16位數(shù)字量方式串行輸出遠端引入。此器件具有體積小、質(zhì)量輕、線形度好、性能穩(wěn)定等優(yōu)點其各方面特性都滿足此系統(tǒng)的設(shè)
6、計要求。 比較以上三種方案,方案三具有明顯的優(yōu)點,因此選用方案三。 1.2 鍵盤顯示部分 控制與顯示電路是反映電路性能、外觀的最直觀部分,所以此部分電路設(shè)計的好壞直接影響到電路的好壞。 方案一:采用可編程控制器8279與數(shù)碼管及地址譯碼器74LS138組成,可編程/顯示器件8279實現(xiàn)對按鍵的掃描、消除抖動、提供LED的顯示信號,并對LED顯示控制。用8279和鍵盤組成的人機控制平臺,能夠方便的進行控制單片機的輸出。 方案二:采用單片機AT89C52與4X4矩陣組成控制和掃描系統(tǒng),并用89C52的P1口對鍵盤進行掃描,并用總線的方式在P0口接1602液晶來顯示水溫和設(shè)定值,
7、這種方案既能很好的控制鍵盤及顯示,又為主單片機大大的減少了程序的復(fù)雜性,而且具有體積小,價格便宜的特點。 對比兩種方案可知,方案一雖然也能很好的實現(xiàn)電路的要求,但考慮到電路設(shè)計的成本和電路整體的性能,我們采用方案二。 1.3 控制電路部分 方案一:采用8031芯片,其內(nèi)部沒有程序存儲器,需要進行外部擴展,這給電路增加了復(fù)雜度。 方案二:采用2051芯片,其內(nèi)部有2KB單元的程序存儲器,不需外部擴展程序存儲器。但由于系統(tǒng)用到較多的I/O口,因此此芯片資源不夠用。 方案三:采用AT89C52單片機,其內(nèi)部有4KB單元的程序存儲器,不需外部擴展程序存儲器,而且它的I/O口也
8、足夠本次設(shè)計的要求。 比較這三種方案,綜合考慮單片機的各部分資源,因此此次設(shè)計選用方案三。 1.4 PID過程控制部分 1.4.1過程控制的基本概念 過程控制:對生產(chǎn)過程的某一或某些物理參數(shù)進行的自動控制。 (1) 模擬控制系統(tǒng) 模擬調(diào)節(jié)器 給定值 偏差 操作變量 被控變量 控制規(guī)律 執(zhí)行器 過程 溫度變送器 圖1基本模擬反饋控制回路 被控量的值由傳感器或變送器來檢測,這個值與給定值進行比較,得到偏差,模擬調(diào)節(jié)器依一定控制規(guī)律使操作變量變化,以使偏差
9、趨近于零,其輸出通過執(zhí)行器作用于過程。 控制規(guī)律用對應(yīng)的模擬硬件來實現(xiàn),控制規(guī)律的修改需要更換模擬硬件。 (2) 微機過程控制系統(tǒng) 以微型計算機作為控制器。控制規(guī)律的實現(xiàn),是通過軟件來完成的。改變控制規(guī)律,只要改變相應(yīng)的程序即可。 微型計算機 給定值 偏差 被控變量 控制器 D/A 執(zhí)行器 過程 A/D 溫度變送器 圖2微機過程控制系統(tǒng)基本框圖 (3)數(shù)字
10、控制系統(tǒng)DDC DDC(Direct Digital Congtrol)系統(tǒng)是計算機用于過程控制的最典型的一種系統(tǒng)。微型計算機通過過程輸入通道對一個或多個物理量進行檢測,并根據(jù)確定的控制規(guī)律(算法)進行計算,通過輸出通道直接去控制執(zhí)行機構(gòu),使各被控量達到預(yù)定的要求。由于計算機的決策直接作用于過程,故稱為直接數(shù)字控制。 DDC系統(tǒng)也是計算機在工業(yè)應(yīng)用中最普遍的一種形式。 工業(yè)對象 執(zhí)行器 檢測元件 輸入通道 輸入通道 接口 接口 顯示 給定值 微型計算機
11、 圖3 DDC系統(tǒng)構(gòu)成框圖 1.4.2 模擬PID控制系統(tǒng)組成 PID調(diào)節(jié)器是一種線性調(diào)節(jié)器,它將給定值r(t)與實際輸出值c(t)的偏差的比例(P)、積分(I)、微分(D)通過線性組合構(gòu)成控制量,對控制對象進行控制。 (1) PID調(diào)節(jié)器的微分方程 式中 (3) PID調(diào)節(jié)器的傳輸函數(shù) PID調(diào)節(jié)器各校正環(huán)節(jié)的作用: (1)比例環(huán)節(jié):即時成比例地反應(yīng)控制系統(tǒng)的偏差信號e(t),偏差一旦產(chǎn)生,調(diào)節(jié)器立即產(chǎn)生控制作用以
12、減小偏差。 (2)積分環(huán)節(jié):主要用于消除靜差,提高系統(tǒng)的無差度。積分作用的強弱取決于積分時間常數(shù)TI,TI越大,積分作用越弱,反之則越強。 (3)微分環(huán)節(jié):能反應(yīng)偏差信號的變化趨勢(變化速率),并能在偏差信號的值變得太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快系統(tǒng)的動作速度,減小調(diào)節(jié)時間。 1.4.3 數(shù)字PID控制器 (1)模擬PID控制規(guī)律的離散化 模擬形式 離散化形式 (2)數(shù)字PID控制器的差分方程 式中 稱為比例項 稱為積分項 稱為微分項 2 總體方案的分析 2
13、.1系統(tǒng)總模塊 系統(tǒng)模塊分為:AT89C52DS18B20模塊,1602液晶顯示模塊,繼電器模塊,鍵盤輸入模塊,DS18B20可以被編程,所以箭頭是雙向的,CPU(89C52)首先寫入命令給DS18B20,然后DS18B20開始轉(zhuǎn)換數(shù)據(jù),轉(zhuǎn)換后通89C52來處理數(shù)據(jù)。數(shù)據(jù)處理后的結(jié)果就顯示到1602液晶上。 2.2 系統(tǒng)模塊關(guān)系圖 繼電器(是否加熱)模塊 鍵盤掃描(有無回車鍵按下)模塊 1602模塊顯示溫度值 初始化模塊 單片機將溫度值送至1602顯示 溫度變送器測溫度,單片機讀值 圖4
14、系統(tǒng)木塊關(guān)系圖 3 硬件電路設(shè)計 3.1 繼電器控制電路 此部份用于在閉環(huán)控制系統(tǒng)中對被控對象實施控制,此處被控對象為烘箱內(nèi)的加熱絲,采用對加在加熱絲兩端的電壓進行通斷的方法進行控制,以實現(xiàn)對溫度的調(diào)整。 對加熱絲通斷的控制采用SSR固態(tài)繼電器,SSR是半導(dǎo)體繼電器,所以較小的驅(qū)動功率即可使SSR工作。它的使用非常簡單,只要在控制臺端加上一TTL、CMOS電平或一晶體管,即可實現(xiàn)對繼電器的開關(guān)。 圖5為通過三極管PNP來控制繼電器的開關(guān)的,繼電器采用的是帶光電隔離的過零型雙向可控硅AC-SSR常開式(常閉式)固態(tài)繼電器,為使其實現(xiàn)過零控制,就是要實現(xiàn)工頻電壓的過零檢測
15、,并給出脈沖信號,由單片機控制雙向可控硅過零脈沖數(shù)目。當(dāng)在其輸入端加入(撤離)控制信號時,輸出端接通(斷開),從而控制加熱絲與電源的通斷,來達到加熱或冷卻加熱絲的目的,最終實現(xiàn)烘箱中溫度穩(wěn)定在設(shè)定值上。 圖5 繼電器控制電路 3.2 顯示電路 圖6 顯示電路部分 用AT89C52的P1口作為數(shù)據(jù)線,用P2.2、P2.1、P2.0分別作為LCD的E、R/W、RS。其中E是下降沿觸發(fā)的片選信號,連接P2.2,R/W是讀寫信號,連接P2.1,RS是寄存器選擇
16、信號,連接P2.0。 VEE用連接一阻值為10K的電阻,主要用于調(diào)節(jié)對比度的調(diào)整。接正電源時對比度最落,接地電源時,對比度最高。對比度過高時,會產(chǎn)生“鬼影”。因此連接一10K的電阻 用以調(diào)整。當(dāng)P0口作為I/O用時需要上拉電阻。 3.3 鍵盤輸入電路 鍵盤輸入電路采用4個按鍵開關(guān)接單片機P2口。 S1:接在P2.4,用于增大溫度個位和十位上的數(shù)值。 S2:接在P2.5,用于減小溫度個位和十位上的數(shù)值。 S3:接在P2.6,用于改變要設(shè)置溫度的個位還是十位。 S4:接在P2.7,用于對已設(shè)置好的溫度輸入到單片機中。
17、 圖7 鍵盤輸入電路 3.4 溫度變送器電路 溫度變送器電路使用DS18B20對溫度進行采樣和傳送。 圖8 溫度變送器電路 3.5 單片機AT89C52最小系統(tǒng) 3.5.1 單片機簡介 單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時器/計時器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個小而完善的計算機系統(tǒng)。 單片機自
18、動完成賦予它的任務(wù)的過程,也就是單片機執(zhí)行程序的過程,即一條條執(zhí)行的指令的過程,所謂指令就是把要求單片機執(zhí)行的各種操作用的命令的形式寫下來,這是在設(shè)計人員賦予它的指令系統(tǒng)所決定的,一條指令對應(yīng)著一種基本操作;單片機所能執(zhí)行的全部指令,就是該單片機的指令系統(tǒng),不同種類的單片機,其指令系統(tǒng)亦不同。為使單片機能自動完成某一特定任務(wù),必須把要解決的問題編成一系列指令(這些指令必須是選定單片機能識別和執(zhí)行的指令),這一系列指令的集合就成為程序,程序需要預(yù)先存放在具有存儲功能的部件——存儲器中。存儲器由許多存儲單元(最小的存儲單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取
19、出并執(zhí)行就像大樓房的每個房間的被分配到了唯一一個房間號一樣,每一個存儲單元也必須被分配到唯一的地址號,該地址號稱為存儲單元的地址,這樣只要知道了存儲單元的地址,就可以找到這個存儲單元,其中存儲的指令就可以被取出,然后再被執(zhí)行。程序通常是順序執(zhí)行的,所以程序中的指令也是一條條順序存放的,單片機在執(zhí)行程序時要能把這些指令一條條取出并加以執(zhí)行,必須有一個部件能追蹤指令所在的地址,這一部件就是程序計數(shù)器PC(包含在CPU中),在開始執(zhí)行程序時,給PC賦以程序中第一條指令所在的地址,然后取得每一條要執(zhí)行的命令,PC在中的內(nèi)容就會自動增加,增加量由本條指令長度決定,可能是1、2或3,以指向下一條指令的起始
20、地址,保證指令順序執(zhí)行。 概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時,學(xué)習(xí)使用單片機是了解計算機原理與結(jié)構(gòu)的最佳選擇。 單片機的主要功能是負責(zé)整個系統(tǒng)的控制,不承擔(dān)復(fù)雜的數(shù)據(jù)處理任務(wù),因此在設(shè)計單片機最小系統(tǒng)時通常選用AT89C5l、AT89C52、AT89S51、AT89S52(S系列芯片支持ISP功能)等型號的8位單片機作為MCU。 一個典型的單片機最小系統(tǒng)一般由時鐘電路、復(fù)位電路、片外RAM、片外ROM、按鍵、數(shù)碼管、液晶顯示器、外部擴展接口等部分組成。 3.5.2單片機最小系統(tǒng)電路簡介 (1)時鐘源電路 單片
21、機內(nèi)部具有一個高增益反相放大器,用于構(gòu)成振蕩器。通常在引腳XTALl和XTAL2跨接石英晶體和兩個補償電容構(gòu)成自激振蕩器??梢愿鶕?jù)情況選擇6MHz、12MHz或24MHz等頻率的石英晶體,補償電容通常選擇30pF左右的瓷片電容。 (2)復(fù)位電路 單片機小系統(tǒng)采用上電自動復(fù)位和手動按鍵復(fù)位兩種方式實現(xiàn)系統(tǒng)的復(fù)位操作。上電復(fù)位要求接通電源后,自動實現(xiàn)復(fù)位操作。手動復(fù)位要求在電源接通的條件下,在單片機運行期間,用按鈕開關(guān)操作使單片機復(fù)位。其結(jié)構(gòu)如圖2 中R24、R26、C18和K17。上電自動復(fù)位通過電容C18充電來實現(xiàn)。手動按鍵復(fù)位是通過按鍵將電阻R26與VCC接通來實現(xiàn)。 (3)地址譯
22、碼電路 最小系統(tǒng)上的全部硬件除EEPROM以外均是采用總線方式進行擴展的,每一個硬件均占用特定的物理地址。 圖9 本設(shè)計所用的單片機最小系統(tǒng) 3.6 總電路硬件圖 本次設(shè)計的總電路硬件圖,是由單片機AT89C52最小系統(tǒng)電路、液晶顯示電路、按鍵輸入電路、繼電器控制電路和DS18B20溫度變送器電路組成。 圖10 總電路硬件圖 4 軟件程序設(shè)計 4.1 主程序流程圖 程序流程圖是程序分析中最基本、最重要的分
23、析技術(shù),它是進行流程程序分析過程中最基本的工具。流程程序圖是方法研究改進工作方法的有用工具。不論作業(yè)研究過程中運用何種技術(shù),流程程序圖總是必經(jīng)的一步,它是應(yīng)用最普遍的一種工具。 從以下主程序圖中可以看出,在進行一系列程序調(diào)用之前對系統(tǒng)進行初始化,然后再對鍵盤程序有所反應(yīng)。進而判斷是否有溫度采集到,有就進行A/D轉(zhuǎn)換和PID計算,將其結(jié)果用來控制繼電器。 開始 系統(tǒng)初始化 鍵盤掃描 取鍵值
24、 N 鍵值處理 是否有有采樣數(shù)據(jù)處理 Y AD轉(zhuǎn)換處理 PID計算 繼電器控制 結(jié)束 圖11 主程序流程圖 主控程序模塊在整個結(jié)構(gòu)中充當(dāng)管理者,管理所有子程序的調(diào)用,就相當(dāng)于個人計算機的操作系統(tǒng)。它主要負責(zé)初始化各個I/O口,等待鍵盤事件的發(fā)生,并作出相應(yīng)的處理。并在適當(dāng)?shù)臅r候調(diào)用數(shù)據(jù)采樣程序,并將采樣到的數(shù)據(jù)與鍵盤設(shè)定值比較。再
25、通過PID計算后用以控制繼電器的開斷,從而控制加熱絲的輸出功率,來達到烘箱內(nèi)溫度的調(diào)整。 4.2 程序結(jié)構(gòu)圖 任何一個系統(tǒng)的軟件設(shè)計都離不開硬件電路的連接,所以本課題硬件設(shè)計的高度模塊化決定了軟件設(shè)計的模塊化。 程序結(jié)構(gòu)應(yīng)包括:主控程序模塊、鍵盤掃描及處理子程序、采樣數(shù)據(jù)處理子程序、PID算法子程序及顯示等子程序幾個部分。 主程序模塊 AD采樣及上傳 液晶顯示 鍵值處理 鍵盤掃描 PID計算 繼電器控制 圖12 主程序結(jié)構(gòu)圖 5 相關(guān)器件測試、系統(tǒng)調(diào)試和參數(shù)整
26、定 5.1 繼電器測試 (1)測觸點電阻 用萬能表的電阻檔,測量常閉觸點與動點電阻,其阻值應(yīng)為0;而常開觸點與動點的阻值就為無窮大。由此可以區(qū)別出那個是常閉觸點,那個是常開觸點。 (2)測線圈電阻 可用萬能表R10Ω檔測量繼電器線圈的阻值,從而判斷該線圈是否存在著開路現(xiàn)象。 (3)測量吸合電壓和吸合電流 找來可調(diào)穩(wěn)壓電源和電流表,給繼電器輸入一組電壓,且在供電回路中串入電流表進行監(jiān)測。慢慢調(diào)高電源電壓,聽到繼電器吸合聲時,記下該吸合電壓和吸合電流。 (4)測量釋放電壓和釋放電流 當(dāng)繼電器發(fā)生吸合后,再逐漸降低供電電壓,當(dāng)聽到繼電器再次發(fā)生釋放聲音時,記下此時的電壓和電流,亦可
27、嘗試多幾次而取得平均的釋放電壓和釋放電流。一般情況下,繼電器的釋放電壓約在吸合電壓的10~50%,如果釋放電壓太?。ㄐ∮?/10的吸合電壓),則不能正常使用了,這樣會對電路的穩(wěn)定性造成威脅,工作不可靠。 5.2 PID參數(shù)整定 控制系統(tǒng)的控制質(zhì)量與被控制對象的特性、干擾信號的形式和幅值、控制方案及控制器的參數(shù)等因素有著密切的關(guān)系。對象的特性和干擾情況是受工藝操作和設(shè)備的特性限制的,不可能隨意改變,這樣,一旦控制方案確定了,對象各個通道的特性就成定局,這時控制系統(tǒng)的控制質(zhì)量就只取決于控制器的參數(shù)。因此,參數(shù)的整定是過程控制系統(tǒng)設(shè)計的核心內(nèi)容。所謂控制器的參數(shù)整定,就是通過一定的方法和步驟,
28、確定系統(tǒng)處于最佳過渡過程時控制器的比例度、積分時間和微分時間的具體數(shù)值。所謂最佳過渡過程,就是在某質(zhì)量指標(biāo)下,系統(tǒng)達到最佳調(diào)整狀態(tài),此時的控制器參數(shù)就是所謂的最佳整定參數(shù)。 在簡單過程控制系統(tǒng)中,調(diào)節(jié)器參數(shù)整定通常以系統(tǒng)瞬態(tài)響應(yīng)的衰減率=0.75~0.9(對應(yīng)衰減比為4:1~10:1)為主要指標(biāo),以保證系統(tǒng)具有一定的穩(wěn)定裕量(對于大多數(shù)過程控制系統(tǒng)來說,系統(tǒng)過渡過程的瞬態(tài)響應(yīng)曲線達到4:1的衰減比狀態(tài)時,則為最佳的過程曲線)。此外,在滿足主要指標(biāo)的條件下,還應(yīng)盡量滿足系統(tǒng)的穩(wěn)態(tài)誤差(又稱靜差、余差)、最大動態(tài)偏差(超調(diào))和過渡過程時間等其它指標(biāo)。由于不同的過程控制系統(tǒng)對控制品質(zhì)的要求有不同的
29、側(cè)重點,也有用系統(tǒng)響應(yīng)的平方誤差積分(ISE)、絕對誤差積分(IAE)、時間乘以絕對誤差的積分(ITAE)分別取極小作為指標(biāo)來整定調(diào)節(jié)器參數(shù)的。 調(diào)節(jié)器參數(shù)整定的方法很多,概括起來可以分為兩大類:一是理論計算整定法。它主要是依據(jù)系統(tǒng)的數(shù)學(xué)模型,采用控制理論中的根軌跡法,頻率特性法等,經(jīng)過理論計算確定調(diào)節(jié)器參數(shù)的數(shù)值。二是工程整定方法,它主要依靠工程經(jīng)驗,直接在過程控制系統(tǒng)的實驗中進行,且方法簡單、易于掌握。由于本系統(tǒng)有別于工業(yè)實際系統(tǒng)因此對于參數(shù)整定來說,使用工程參數(shù)整定法效果不是很好,該系統(tǒng)參數(shù)整定采用經(jīng)驗湊試法。 經(jīng)驗湊試法是通過模擬或閉環(huán)運行觀察系統(tǒng)的響應(yīng)曲線,然后根據(jù)各調(diào)節(jié)參數(shù)對系
30、統(tǒng)響應(yīng)的大致辭影響,反復(fù)湊試參數(shù),以達到滿意的響應(yīng),從而確定PID調(diào)節(jié)參數(shù)。 增大比例系數(shù),一般將加快系統(tǒng)的響應(yīng),在有靜差的情況下有利于減小靜差。但過大的比例系數(shù)會使系統(tǒng)有較大的超調(diào),并產(chǎn)生振蕩,使穩(wěn)定性變壞。 增大積分時間,有利于減小超調(diào),減小振蕩,使系統(tǒng)更加穩(wěn)定,但系統(tǒng)靜差的消除將隨之減慢。 增大微分時間,亦有利于加快系統(tǒng)響應(yīng),使用權(quán)超調(diào)減小,穩(wěn)定性增加,但系統(tǒng)對擾動的抑制能力減弱,對擾動有較敏感的響應(yīng)。 在湊試時,可參考以上參數(shù)對控制過程的影響趨勢,對參數(shù)實行下述比例、后積分、再微分的整定步驟: (1)整定比例部分 將比例系數(shù)由小變大,并觀察相應(yīng)的系統(tǒng)響應(yīng),直至得到反應(yīng)快、超
31、調(diào)小的響應(yīng)曲線。如果系統(tǒng)沒有靜差或靜差已小到允許范圍內(nèi),并且響應(yīng)曲線已屬滿意,那么只需用比例調(diào)節(jié)器即可,比例系數(shù)可由此確定。 (2)加入積分環(huán)節(jié) 如果在比例調(diào)節(jié)的基礎(chǔ)上系統(tǒng)的靜差不能滿足設(shè)計要求,則須加入積分環(huán)節(jié)。整定時首先置積分時間為一較大值,并將經(jīng)第一步整定得到的比例系數(shù)略微縮?。ㄈ缈s小為原來的0.8倍),然后減小積分時間,使在保持系統(tǒng)良好動態(tài)性能的情況下,靜差得到消除。在此過程中,可根據(jù)響應(yīng)曲線的好壞反復(fù)改變比例系數(shù)與保持時間,以期得到滿意的控制過程與整定參數(shù)。 (3)加入微分環(huán)節(jié) 若使用比例積分調(diào)節(jié)器消除了靜差,但動態(tài)過程經(jīng)反復(fù)調(diào)整仍不能滿意,則可加入微分環(huán)節(jié),構(gòu)成比例積分微分
32、調(diào)節(jié)器。在整定時,可先置微分時間為零。在第二步整定的基礎(chǔ)上,增大,同時相應(yīng)地改變比例系數(shù)和積分時間,逐步湊試,以獲得滿意的調(diào)節(jié)效果和控制參數(shù)。 5.3 系統(tǒng)調(diào)試 (1)分別使烘箱穩(wěn)定在60℃、65℃ 、70℃、 75℃ 、80℃觀察系統(tǒng)測量溫度值與實際溫度值,校準(zhǔn)系統(tǒng)使測量誤差在1℃ 以內(nèi)。 (2)動態(tài)測試:設(shè)定溫度為70℃,系統(tǒng)由低溫開始進入升溫狀態(tài)。開始記錄數(shù)據(jù),觀察超調(diào)量、調(diào)節(jié)時間和穩(wěn)態(tài)誤差;系統(tǒng)進入穩(wěn)態(tài)后,用電風(fēng)扇吹涼,觀察系統(tǒng)的抗擾能力。設(shè)定溫度為80℃系統(tǒng)由低溫開始進入升溫狀態(tài)。開始記錄數(shù)據(jù),觀察超調(diào)量、調(diào)節(jié)時間和穩(wěn)態(tài)誤差;系統(tǒng)進入穩(wěn)態(tài)后,用電風(fēng)扇吹涼,觀察系統(tǒng)的抗擾動能力。
33、 (3)采用了PID控制,當(dāng)設(shè)定溫度突變(由60℃提高到80℃)時,經(jīng)過多次調(diào)試,測出P,I,D分別為多少時系統(tǒng)具有最小的調(diào)節(jié)時間和超調(diào)量。 6 小結(jié)和心得體會 溫度控制系統(tǒng)設(shè)計的要求為,首先系統(tǒng)要有良好的控制效果;其次系統(tǒng)的構(gòu)成要簡單實用;實時監(jiān)控系統(tǒng)狀態(tài)參數(shù)。因此我選取了AT89C52單片機來設(shè)計,使用AT89C52單片機的優(yōu)勢在于其完善的內(nèi)部結(jié)構(gòu)、優(yōu)良的性能和強大的中斷處理能力,決定了該控制系統(tǒng)的特點:電路結(jié)構(gòu)簡單、程序簡短、系統(tǒng)可靠性高等。本次設(shè)計還充分利用了AT89C52單片機成熟的語音處理技術(shù),且系統(tǒng)控制部分程序設(shè)計在Keil uVision4和Proteus7.7開發(fā)環(huán)境中
34、編輯、編譯、鏈接、調(diào)試以及仿真的。使用軟件編程既減少了系統(tǒng)設(shè)計的工作量,又提高了系統(tǒng)開發(fā)的速度,使用軟件還可以提高所設(shè)計系統(tǒng)的穩(wěn)定性,避免了因個人設(shè)計經(jīng)驗不足而產(chǎn)生過多的系統(tǒng)缺陷。 在這次課程設(shè)計中獲得了難得的理論聯(lián)系實踐的機會,在系統(tǒng)設(shè)計及開發(fā)過程中,對理論知識進一步的加深了理解,使得我對過程控制規(guī)律有了更深層次了概念,系統(tǒng)設(shè)計中多次方案論證和修改,使得自己逐步建立了工程設(shè)計的思想,對今后進入工作崗位奠定了一定的理論基礎(chǔ),進而認識到了自己知識的缺陷,以及對系統(tǒng)設(shè)計的概念性的錯誤等等。 通過對本設(shè)計的思考,更加加深了我們對單片機的認識,熟練了對單片機的控制,更對當(dāng)前的溫度傳感器有了更深刻的
35、認識與了解,但是由于此系統(tǒng)依賴溫度傳感器,因而對溫度傳感器的穩(wěn)定性,線性等諸多方面有著嚴格的要求,但是傳感器的性能越好,相對而言其價格也就越高。 通過這次的課程設(shè)計我學(xué)會了很多東西,讓我更對課堂上學(xué)到的單片機知識進行了鞏固和加深。特別是對AT89C52的C語言指令有了更深刻的認識。我了解到理論聯(lián)系實際是多么重要,同時又是多么的困難,還有平時學(xué)習(xí)一定要認真踏實,把理論知識要弄懂要理解消化為自己的知識,同時要學(xué)會在理論學(xué)習(xí)時善于思考,多得一些自己的想法和思路,并且多讀一些課外書,開闊視野增長一些課外知識。 感謝這次課設(shè)過程中給予我?guī)椭瑢W(xué)和老師,并且感謝學(xué)校給予我們這次機會提高自己的實踐能力。
36、這次的課設(shè)終于結(jié)束了,我感到什么事都不應(yīng)該輕易放棄,只要努力就會有結(jié)果。再次深深的感謝老師對于我的幫助與指導(dǎo),使我學(xué)到這么多東西,也再次感謝給予我?guī)椭耐瑢W(xué)們! 參考文獻 [1] 馬德駿、張建宏、湯練兵.《計算機程序設(shè)計基礎(chǔ)—C語言程序設(shè)計》.北京:科學(xué)出版社,2006 [2] 胡壽松.《自動控制原理》.北京:科學(xué)出版社,2007 [3] 于海生.《微型計算機控制技術(shù)》.北京:清華大學(xué)出版社,1999 [4] 戴焯.《傳感與檢測技術(shù)》.武漢:武漢理工大學(xué)出版社,2003.8 [5]
37、陳宇.《單片機原理及其應(yīng)用》.北京:機械工業(yè)出版社,2006.7 [6] 何立民.《單片機高級教程應(yīng)用設(shè)計》.北京,北京航空航天大學(xué)出版社,2000 [7] 朱定華.《單片機原理與接口技術(shù)》.電子工業(yè)出版社,2006 [8] 劉瑞新.《單片機原理及應(yīng)用教程》. 北京:機械工業(yè)出版社,2003 [9] 馬建偉,李銀伢.《PID控制設(shè)計理論與方法》.北京:科學(xué)出版社,2008 [10] Prestige Lecture delivered to IEE,Cambridge,on 5 February 2004 [11] Richard Carley, James A. Bain, Ga
38、ry K. Fedder. Single-chip computer-s with microelectromechanical systems-based magnetic memory.Physics.2000,5:87 [12] ST.LlashFlex51MCU PDF.SST Components Industries,2008:1~10,78~79 [13] Kaminsky, W.J.Davidson, E.S.Special Feature: Developing a Multiple-In-structon-Stream Single-Chip Processor.Com
39、puter.1979, 12(12) : 66~76
附錄
附錄1 參考程序
(1)主程序
#include
40、3^0; sbit stop=P3^1; //函數(shù)聲明 extern void delay(unsigned int i); void show_set(); //顯示設(shè)置溫度 void lcd_set() ;//顯示輸入溫度 unsigned char code str1[]={"AAture: "}; unsigned char code str2[]={" "}; int temp,set_temp=60; //初始設(shè)置溫度60 int st_s,st_g; int count=0; unsigned char setbuffe
41、r[3]={0,0,0};//設(shè)定溫度顯示緩沖區(qū)
uchar Key_Value_Table[]="1234567890ABCDEF";//鍵盤字符
extern uint tvalue;//溫度值
/********************主程序***********************************/
void delay2(unsigned int n)
{
unsigned int i;
for(i=0;i 42、lag=0;
unsigned int i=0;
sub=1;
add=1;
set=1;
enter=1;
stop=1;
start=1;
lcd_init();//初始化顯示
wr_com(0x80);
display("SET-TEMP:");
show_set();
wr_com(0xc0);
display("NOW-TEMP:");
while(1)
{
if(set==0)
{
delay2(300);
if(set==1)
{st_s=set_temp/10;
43、st_g=set_temp%10;
wr_com(0x0f);//顯示光
while(1)//設(shè)置溫度高位
{
wr_com(0x8b);
if(add==0)
{
delay2(300);
if(add==1)
{st_s++;if(st_s>8)st_s=6;wr_dat(st_s+0); }
}
if(sub==0)
{
delay2(300);
if(sub==1)
{st_s--;if(st 44、_s<6)st_s=8;wr_dat(st_s+0);}
}
if(set==0)
{
if(set==0)
{s_flag=1;break;}
}//按set鍵,轉(zhuǎn)下一位設(shè)置
if(enter==0)
{
delay2(300);
if(enter==1)
{wr_com(0x0c);set_temp=st_s*10+st_g;s_flag=1;break;}
}
}
while(1)//設(shè)置溫度低位
45、 {
wr_com(0x8c);
if(add==0)
{
delay2(300);
if(add==1)
{st_g++;if(st_g>9)st_g=0;wr_dat(st_g+0); }
}
if(sub==0)
{
delay2(300);
if(sub==1)
{st_g--;if(st_g<0)st_g=9;wr_dat(st_g+0);}
}
if(set==0)
{
if(se 46、t==1)
{g_flag=1;break;}
}//按set鍵,轉(zhuǎn)下一位設(shè)置
if(enter==0)
{
delay2(300);
if(enter==1)
{wr_com(0x0c);set_temp=st_s*10+st_g;g_flag=1;break;}
}
}
}
if(s_flag==1 && g_flag==1)
{
s_flag=0;g_flag=0;
for(i=0;i<40;i++)
{read_temp();
ds18 47、20disp();}
if(tvalue / 10 ==set_temp)
{start=1;stop=1; }
else
start=0;
}
}
}
}
//顯示設(shè)置溫度,入口參數(shù)=set_temp;出口參數(shù)=溫度的顯示碼b[i]
void show_set()
{
unsigned char i;
setbuffer[0]=set_temp/10+0;
setbuffer[1]=set_temp%10+0;
setbuffer[2]=0+0;
wr_com(0x8b);
for(i=0;i<2;i++)
48、 {
wr_dat(setbuffer[i]);
}
wr_com(0x8d);
wr_dat(0x2e);//顯示小數(shù)點
wr_com(0x8e);
wr_dat(setbuffer[2]);//顯示小數(shù)位
}
(2)延時程序
#ifndef __delay_H__
#define __delay_H__
void delay(unsigned int i)
{
while(i--);
}
void delay1(unsigned int n)
{
unsigned int i;
for(i=0;i 49、
#endif
(3)按鍵程序
#ifndef __keyscan_H__
#define __keyscan_H__
#include "delay.h"
unsigned char keyscan()
{
unsigned char key=16,a,b,c;
P3=0X0F;
a=P3;
delay(20);
P3=0XF0;
b=P3;
delay(20);
c=a+b;
switch (c)
{
case 0xee:key=0;break;
case 0xde:key=1;break;
case 50、0xbe:key=2;break;
case 0x7e:key=3;break;
case 0xed:key=4;break;
case 0xdd:key=5;break;
case 0xbd:key=6;break;
case 0x7d:key=7;break;
case 0xeb:key=8;break;
case 0xdb:key=9;break;
case 0xbb:key=10;break;
case 0x7b:key=11;break;
case 0xe7:key=12;break;
case 0xd7:key=13 51、;break;
case 0xb7:key=14;break;
case 0x77:key=15;break;
default:break;
}
return key;
}
#endif
(4)LCD1602顯示程序和DS18B20傳感器程序
#ifndef __1602_DS18_H__
#define __1602_DS18_H__
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P2^3;//ds18b20與單片機連接口
sbit RS=P2^0;//液晶接 52、口
sbit RW=P2^1;
sbit EN=P2^2;
uchar data disdata[5]; //分解后的數(shù)位 百十個小數(shù)
uint tvalue;//溫度值
uint now_temp;
uchar tflag;//溫度正負標(biāo)志
/*************************lcd1602程序**************************/
void delay1ms(unsigned int ms)//延時1毫秒(不夠精確的)
{
unsigned int i,j;
for(i=0;i 53、);
}
void wr_com(unsigned char com)//寫指令//
{
delay1ms(1);
RS=0;
RW=0;
EN=0;
P1=com;
delay1ms(1);
EN=1;
delay1ms(1);
EN=0;
}
void wr_dat(unsigned char dat)//寫數(shù)據(jù)//
{
delay1ms(1);;
RS=1;
RW=0;
EN=0;
P1=dat;
delay1ms(1);
EN=1;
delay1ms(1);
EN=0;
}
void lcd_ 54、init()//初始化設(shè)置//
{
delay1ms(15);
wr_com(0x38);delay1ms(5);
wr_com(0x08);delay1ms(5);
wr_com(0x01);delay1ms(5);
wr_com(0x06);delay1ms(5);
wr_com(0x0c);delay1ms(5);
}
void display(unsigned char *p)//顯示字符串
{
while(*p!=\0)
{
wr_dat(*p);
p++;
delay1ms(1);
}
}
/*************** 55、***************ds1820程序***************************************/
void delay_18B20(unsigned int i)//延時1微秒
{
while(i--);
}
void ds1820rst()/*ds1820復(fù)位*/
{
unsigned char x=0;
DQ = 1; //DQ復(fù)位
delay_18B20(4); //延時
DQ = 0; //DQ拉低
delay_18B20(100); //精確延時大于480us
DQ = 1 56、; //拉高
delay_18B20(40);
}
uchar ds1820rd()/*讀數(shù)據(jù)*/
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; //給脈沖信號
dat>>=1;
DQ = 1; //給脈沖信號
if(DQ)
dat|=0x80;
delay_18B20(10);
}
return(dat);
}
void ds1820wr(uchar wdata)/*寫數(shù)據(jù)*/
{
57、 unsigned char i=0;
for (i=8; i>0; i--)
{
DQ = 0;
DQ = wdata&0x01;
delay_18B20(10);
DQ = 1;
wdata>>=1;
}
}
read_temp()/*讀取溫度值并轉(zhuǎn)換*/
{
uchar a,b;
ds1820rst();
ds1820wr(0xcc);//*跳過讀序列號*/
ds1820wr(0x44);//*啟動溫度轉(zhuǎn)換*/
ds1820rst();
ds1820wr(0xcc);//*跳過讀序列 58、號*/
ds1820wr(0xbe);//*讀取溫度*/
a=ds1820rd();
b=ds1820rd();
tvalue=b;
tvalue<<=8;
tvalue=tvalue|a;
if(tvalue<0x0fff)
tflag=0;
else
{
tvalue=~tvalue+1;
tflag=1;
}
now_temp=(uint)(tvalue);
tvalue=tvalue*(0.625);//溫度值擴大10倍,精確到1位小數(shù)
return(tva 59、lue);
}
/*******************************************************************/
void ds1820disp()//溫度值顯示
{
uchar flagdat;
disdata[0]=tvalue/1000+0x30;//百位數(shù)
disdata[1]=tvalue%1000/100+0x30;//十位數(shù)
disdata[2]=tvalue%100/10+0x30;//個位數(shù)
disdata[3]=tvalue%10+0x30;//小數(shù)位
if(tflag==0)
flagdat 60、=0x20;//正溫度不顯示符號
else
flagdat=0x2d;//負溫度顯示負號:-
if(disdata[0]==0x30)
{
disdata[0]=0x20;//如果百位為0,不顯示
if(disdata[1]==0x30)
{disdata[1]=0x20;}//如果百位為0,十位為0也不顯示
}
wr_com(0xc9);
wr_dat(flagdat);//顯示符號位
wr_com(0xca);
wr_dat(disdata[0]);//顯示百位
wr_com(0xcb);
wr_dat(disdata[1]);//顯示十位
wr_com(0xcc);
wr_dat(disdata[2]);//顯示個位
wr_com(0xcd);
wr_dat(0x2e);//顯示小數(shù)點
wr_com(0xce);
wr_dat(disdata[3]);//顯示小數(shù)位
}
#endif
附錄2 總硬件電路圖
圖12 總硬件電路圖
33
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案