溫度控制系統(tǒng)設(shè)計(計算機(jī)控制技術(shù)課程設(shè)計).doc
《溫度控制系統(tǒng)設(shè)計(計算機(jī)控制技術(shù)課程設(shè)計).doc》由會員分享,可在線閱讀,更多相關(guān)《溫度控制系統(tǒng)設(shè)計(計算機(jī)控制技術(shù)課程設(shè)計).doc(33頁珍藏版)》請在裝配圖網(wǎng)上搜索。
學(xué) 號: 計算機(jī)控制技術(shù) 課程設(shè)計 題 目 溫度控制系統(tǒng)設(shè)計 學(xué) 院 專 業(yè) 班 級 姓 名 指導(dǎo)教師 2016 年 月 日 課程設(shè)計任務(wù)書 學(xué)生姓名: _____ 專業(yè)班級: ___________ 指導(dǎo)教師: 周申培 工作單位: ___________ 題 目: 溫度控制系統(tǒng)設(shè)計 初始條件: 被控對象為電爐,采用熱阻絲加熱,利用大功率可控硅控制器控制熱阻絲兩端所加的電壓大小,來改變流經(jīng)熱阻絲的電流,從而改變電爐爐內(nèi)的溫度??煽毓杩刂破鬏斎霝?~5伏時對應(yīng)電爐溫度0-300℃,溫度傳感器測量值對應(yīng)也為0~5伏,對象的特性為積分加慣性系統(tǒng),慣性時間常數(shù)為T1=40秒。 要求完成的主要任務(wù): (包括課程設(shè)計工作量及其技術(shù)要求,以及說明書撰寫等具體要求) 1.設(shè)計溫度控制系統(tǒng)的計算機(jī)硬件系統(tǒng),畫出框圖; 2.編寫積分分離PID算法程序,從鍵盤接受Kp、Ti、Td、T及β的值; 3.計算機(jī)仿真被控對象,編寫仿真程序; 4.通過數(shù)據(jù)分析Td改變時對系統(tǒng)超調(diào)量的影響。 5. 撰寫設(shè)計說明書。課程設(shè)計說明書應(yīng)包括:設(shè)計任務(wù)及要求;方案比較及認(rèn)證;系統(tǒng)濾波原理、硬件原理,電路圖,采用器件的功能說明;軟件思想,流程,源程序;調(diào)試記錄及結(jié)果分析;參考資料;附錄:芯片資料,程序清單;總結(jié)。 時間安排: 2016年5月23日—2016年6月3日 摘要 比例-積分-微分控制(簡稱PID控制),是控制系統(tǒng)中應(yīng)用最為廣泛的一種控制規(guī)律。實際運(yùn)行的經(jīng)驗和理論的分析都表明,這種控制規(guī)律對許多工業(yè)過程進(jìn)行控制時,都能得到滿意的效果。利用計算機(jī)可以很好地使用PID算法對控制對象進(jìn)行控制,具有較高的精度,并且可以很方便的改變PID參數(shù),以達(dá)到不同的控制效果。 本設(shè)計的控制對象為電爐,控制量為電爐溫度,利用單片機(jī)對大功率可控硅導(dǎo)通角的控制,可以很方便地改變電熱絲兩端的電壓,從而起到調(diào)節(jié)溫度的作用。而熱電偶配合單片機(jī)編程,能夠較精確地得到爐溫,使單片機(jī)能夠?qū)崟r發(fā)出控制信號,快速將爐溫調(diào)節(jié)為給定值。當(dāng)外界出現(xiàn)干擾使?fàn)t溫發(fā)生變化時,單片機(jī)能夠通過PID算法快速使?fàn)t溫回到給定值。 為了使PID控制更加穩(wěn)定可靠,本設(shè)計加入了積分分離的改進(jìn)措施,當(dāng)偏差較大時取消積分作用,利用PD控制快速使系統(tǒng)趨于穩(wěn)定;當(dāng)偏差小于某一個值時,加入積分作用,以消除靜差。利用Matlab軟件,可以通過仿真得到Td改變對系統(tǒng)超調(diào)量的影響。 關(guān)鍵詞:PID控制;Matlab;系統(tǒng)超調(diào)量 目錄 1 設(shè)計任務(wù)及要求 1 1.1 設(shè)計任務(wù)要求 1 1.2 任務(wù)要求分析 1 2 方案比較及認(rèn)證 2 2.1 方案設(shè)計 2 2.2 方案認(rèn)證 3 3 系統(tǒng)軟件設(shè)計 4 3.1 PID控制算法 4 3.2 積分分離的PID控制控制算法 5 4 系統(tǒng)硬件設(shè)計 6 4.1 系統(tǒng)濾波原理 6 4.2 硬件設(shè)計原理 6 5 系統(tǒng)仿真 8 5.1 仿真程序及圖形 8 5.2 仿真結(jié)果 9 5.3 結(jié)果分析 12 6 心得體會 13 參考文獻(xiàn) 14 附錄A 芯片資料 15 附A1 ADC0809芯片功能 15 附A2 DAC0832芯片功能 16 附A3 AT89C51單片機(jī) 18 附錄B 程序清單 20 附B1 單片機(jī)程序代碼 20 附B2 仿真程序代碼 27 本科生課程設(shè)計成績評定表 28 1 設(shè)計任務(wù)及要求 1.1 設(shè)計任務(wù)要求 被控對象為電爐,采用熱阻絲加熱,利用大功率可控硅控制器控制熱阻絲兩端所加的電壓大小,來改變流經(jīng)熱阻絲的電流,從而改變電爐爐內(nèi)的溫度。可控硅控制器輸入為0~5伏時對應(yīng)電爐溫度0-300℃,溫度傳感器測量值對應(yīng)也為0~5伏,對象的特性為積分加慣性系統(tǒng),慣性時間常數(shù)為T1=40秒。 要求完成的主要任務(wù): 1.設(shè)計溫度控制系統(tǒng)的計算機(jī)硬件系統(tǒng),畫出框圖; 2.編寫積分分離PID算法程序,從鍵盤接受Kp、Ti、Td、T及β的值; 3.計算機(jī)仿真被控對象,編寫仿真程序; 4.通過數(shù)據(jù)分析Td改變時對系統(tǒng)超調(diào)量的影響。 5. 撰寫設(shè)計說明書。 1.2 任務(wù)要求分析 本系統(tǒng)的控制對象為電爐,被控量為溫度,利用溫度傳感器實時檢測電爐溫度;將測得的數(shù)據(jù)經(jīng)過A/D轉(zhuǎn)換后送入計算機(jī);計算機(jī)系統(tǒng)將檢測得到的溫度與爐溫給定值進(jìn)行比較,并計算偏差;按照預(yù)置的控制算法,對可控硅控制器的導(dǎo)通角進(jìn)行調(diào)節(jié),從而可以控制熱阻絲兩端的電壓,起到溫度調(diào)節(jié)的作用。 為了實現(xiàn)數(shù)據(jù)采集、轉(zhuǎn)換、處理以及PID算法控制,并通過鍵盤對溫度設(shè)定值和PID控制參數(shù)進(jìn)行修正,因此可以使用單片機(jī)或PLC。由于本次控制對象為電爐,其時間常數(shù)較大,因此采用周期不宜過小,避免系統(tǒng)響應(yīng)過于頻繁,降低計算機(jī)系統(tǒng)的效率并使控制品質(zhì)變壞;但也不能太大,否則會使誤差不能及時消除。 2 方案比較及認(rèn)證 2.1 方案設(shè)計 用溫度傳感器來檢測爐的溫度,將爐溫轉(zhuǎn)變成毫伏級的電壓信號,經(jīng)溫度變送器放大并轉(zhuǎn)換成電流信號。由電阻網(wǎng)絡(luò)將電流信號變成電壓信號,送入A/D轉(zhuǎn)換器,通過采樣和模數(shù)轉(zhuǎn)換,所檢測到的電壓信號和爐溫給定值的電壓信號送入計算機(jī)程序中作比較,得出給定值與實際值之間的偏差,并與β進(jìn)行比較,從而確定算法。計算得到的控制量輸出給可控硅控制器,改變可控硅的導(dǎo)通角,達(dá)到調(diào)壓的目的,是電阻絲兩端的電壓增大或較小,進(jìn)而實現(xiàn)對爐溫的控制。 方案一:使用PLC直接對鐵塊溫度進(jìn)行PID調(diào)節(jié)。其基本思想為,觸摸屏要設(shè)定溫度給PLC,PLC控制光耦電路,然后對電阻絲進(jìn)行控制加熱。具體流程為,由觸摸屏設(shè)定溫度給PLC,由PLC通過電路控制鐵塊的加熱或不加熱,熱電偶把溫度以電壓的方式經(jīng)過AD轉(zhuǎn)換反饋給PLC,PLC再經(jīng)過PID來控制溫度。其結(jié)構(gòu)框圖如圖2-1所示。 圖2-1 方案一設(shè)計結(jié)構(gòu)圖 方案二:單片機(jī)熱電偶溫度自動控制。主要的控制芯片采用AT89C51,要求傳感器測量的電壓范圍和可控硅控制器的電壓在0-5℃,所以A/D與D/A轉(zhuǎn)換芯片采用ADC0809和DAC0832。爐溫控制在0-300℃內(nèi),因此采用鎳鉻-銅鎳熱電偶,同時選用運(yùn)算放大器將信號放大。 圖2-2 方案二設(shè)計結(jié)構(gòu)圖 2.2 方案認(rèn)證 根據(jù)設(shè)計要求,綜合考慮選擇方案二。在系統(tǒng)中,利用熱電偶測得電阻爐實際溫度并轉(zhuǎn)換成毫伏級電壓信號。該電壓信號經(jīng)過溫度檢測電路轉(zhuǎn)換成與爐溫相對應(yīng)的數(shù)字信號進(jìn)入單片機(jī),單片機(jī)進(jìn)行數(shù)據(jù)處理后,通過液晶顯示器顯示溫度,同時將溫度與設(shè)定溫度比較,根據(jù)設(shè)定計算出控制量,根據(jù)控制量通過控制繼電器的導(dǎo)通和關(guān)閉從而控制電阻絲的導(dǎo)通時間,以實現(xiàn)對爐溫的控制。程序流程圖如圖2-3所示。 圖2-3 程序流程圖 3 系統(tǒng)軟件設(shè)計 3.1 PID控制算法 模擬PID控制器的控制規(guī)律為 (3-1) 在PID調(diào)節(jié)中,比例控制能迅速反應(yīng)誤差,從而減小誤差,但比例控制不能消除穩(wěn)態(tài)誤差,KP的加大,會引起系統(tǒng)的不穩(wěn)定;積分控制的作用是:只要系統(tǒng)存在誤差,積分控制作用就不斷地積累,輸出控制量以消除誤差,因而,只要有足夠的時間,積分控制將能完全消除誤差,積分作用太強(qiáng)就會使系統(tǒng)超調(diào)增大,甚至使系統(tǒng)出現(xiàn)振蕩;微分控制可以減小超調(diào)量,克服振蕩,使系統(tǒng)的穩(wěn)定性提高,同時加快系統(tǒng)的動態(tài)響應(yīng)速度,減小調(diào)節(jié)時間,從而改善系統(tǒng)的動態(tài)性能。 為了便于計算機(jī)實現(xiàn)PID控制算法,必須將式(3-1)變換成差分方程,以得到數(shù)字PID位置型控制算式 (3-2) 根據(jù)式(3-2)可寫出u(k-1)的表達(dá)式 (3-3) 將式(3-2)與式(3-3)相減,可以得到數(shù)字PID增量型控制算式為 (3-4) 式中,Kp為比例增益;Ki=Kp*T/Ti為積分系數(shù);Kd=Kd*Td/T為微分系數(shù)。 相對于位置型算法,增量型算法不需要做累加,計算誤差或計算精度對控制量的計算影響較小,而位置型算法要用到過去的累加值,容易產(chǎn)生較大的累加誤差。位置型算法不僅要占用較多的內(nèi)存單元,而且不便于編寫程序,并且逐漸增大的累加誤差可能引起系統(tǒng)沖擊,嚴(yán)重影響系統(tǒng)的穩(wěn)定性。綜合考慮,應(yīng)該使用增量型數(shù)字PID控制算法來增加系統(tǒng)的穩(wěn)定性以及控制精度。 3.2 積分分離的PID控制控制算法 在一般的PID控制中,當(dāng)有較大的擾動或大幅度改變給定值時,由于此時有較大的偏 差,以及系統(tǒng)有慣性和滯后,故在積分項的作用下,往往會產(chǎn)生較大的超調(diào)和長時間的波動。特別對于溫度等變化緩慢的過程,這一現(xiàn)象更為嚴(yán)重,為此,可采用積分分離措施,即偏差e(k)較大時,取消積分作用;當(dāng)偏差較小時才將積分作用投入。亦即 當(dāng)時,采用PD控制; 當(dāng)時,采用PID控制。 積分分離閾值β應(yīng)根據(jù)具體對象及控制要求。若β值過大時,則達(dá)不到積分分離的目的;若β值過小,則一旦被控量y(t)無法跳出個積分分離區(qū),只進(jìn)行PD控制,將會出現(xiàn)殘差,為了實現(xiàn)積分分離,編寫程序時必須從數(shù)字PID差分方程式中分離出積分項,進(jìn)行特殊處理。積分分離PID控制算法流程圖如圖3-1所示。 圖3-1 積分分離PID控制算法流程圖 4 系統(tǒng)硬件設(shè)計 4.1 系統(tǒng)濾波原理 一般微機(jī)應(yīng)用系統(tǒng)的模擬輸入信號中,均含有種種噪音和干擾,它們來自信號源本身、傳感器、外界干擾等。噪音有兩大類:一類為周期性的,另一類為不規(guī)則的。前者可采用雙積分A/D轉(zhuǎn)換器,有效地消除其影響。后者為隨機(jī)信號,可用數(shù)字濾波方法予以消除。 算術(shù)平均值法式要按輸入的N個采樣為周期ix(i=1~N),尋找這樣一個y,使y與各采樣值間的偏差的平方和為最小,使 由一元函數(shù)求值原理可得 4.2 硬件設(shè)計原理 該溫度控制硬件設(shè)計采用了單片機(jī)AT89C52,A/D轉(zhuǎn)換器ADC0809與D/A轉(zhuǎn)換器DAC0832。 其設(shè)計思想為:用熱電偶來檢測爐的溫度,將爐溫轉(zhuǎn)變成毫伏級的電壓信號,經(jīng)溫度變送器放大并轉(zhuǎn)換成電流信號。由電阻網(wǎng)絡(luò)講電流信號變成電壓信號,送入A/D轉(zhuǎn)換器ADC0809,通過采樣和模數(shù)轉(zhuǎn)換,所檢測到的電壓信號和爐溫給定值的電壓信號都轉(zhuǎn)換成數(shù)字量送入單片機(jī)AT80C52進(jìn)行比較,其差值即為實際爐溫和給定爐溫的偏差,以單片機(jī)為核心的數(shù)字PID控制器對偏差按照給定的方法運(yùn)算,運(yùn)算結(jié)果送入D/A轉(zhuǎn)換器DAC0832轉(zhuǎn)換成模擬電壓,經(jīng)功率放大器放大后送入晶閘管調(diào)壓器,觸發(fā)晶閘管并改變其導(dǎo)通角的大小,從而控制電阻爐的加溫電壓,起到爐溫調(diào)節(jié)的作用。 其電路圖如圖4-1所示。 圖4-1 硬件設(shè)計電路圖 5 系統(tǒng)仿真 5.1 仿真程序及圖形 被控對象為 采用simulink仿真,通過simulink模塊實現(xiàn)積分分離PID控制算法。 選擇合適的Kp,Ki,Kd是系統(tǒng)的仿真效果趨于理想狀態(tài)。MATLAB程序如下所示。 clear all; close all; ts=2; %采樣時間2s sys=tf([1],[40,1,0]); %令sys為系統(tǒng)傳遞函數(shù) dsys=c2d(sys,ts,zoh); %將sys離散化并加零階保持器 [num,den]=tfdata(dsys,v); %求sys多項式模型參數(shù) kp=1; ti=50; td=1; beta=0.1; ki=kp*ts/ti; kd=kp*td/ts; Simulink仿真圖如圖5-1所示。 圖5-1 Simulink仿真圖 5.2 仿真結(jié)果 (1) 當(dāng)Td=0.1時,仿真波形圖如圖5-2所示。 圖5-2 當(dāng)Td=0.1時的仿真波形圖 (2) 當(dāng)Td=1時,仿真波形圖如圖5-3所示。 圖5-3 當(dāng)Td=1時的仿真波形圖 (3) 當(dāng)Td=10時,仿真波形圖如圖5-4所示。 圖5-4 當(dāng)Td=10時的仿真波形圖 (4) 當(dāng)Td=15時,仿真波形圖如圖5-5所示。 圖5-5 當(dāng)Td=15時的仿真波形圖 (5) 當(dāng)Td=20時,仿真波形圖如圖5-6所示。 圖5-6 當(dāng)Td=20時的仿真波形圖 (6) 當(dāng)Td=30時,仿真波形圖如圖5-6所示。 圖5-7 當(dāng)Td=30時的仿真波形圖 (7) 當(dāng)Td=40時,仿真波形圖如圖5-8所示。此時系統(tǒng)出現(xiàn)振蕩,系統(tǒng)不穩(wěn)定。 圖5-7 當(dāng)Td=40時的仿真波形圖 5.3 結(jié)果分析 增大微分時間Td,有利于加快系統(tǒng)響應(yīng),使超調(diào)量減小,穩(wěn)定性增加,但系統(tǒng)對擾動的抑制能力減弱,對擾動有較敏感的響應(yīng)。 通過仿真可以看出,當(dāng)K,Td,T,β取了合適的值后,改變Td既會改變系統(tǒng)的超調(diào)量,又會使系統(tǒng)的穩(wěn)定時間發(fā)生較大的改變。在一定范圍內(nèi)Td增大,而相應(yīng)的系統(tǒng)超調(diào)量減小,說明此時微分作用會使系統(tǒng)超調(diào)量減小。但超過該范圍,隨Td增大超調(diào)量增大。仿真結(jié)果中,當(dāng)Td=40時,系統(tǒng)甚至出現(xiàn)不穩(wěn)定的情況。因此,積分時間常數(shù)Td必須取恰當(dāng)值,微分作用過強(qiáng),會使系統(tǒng)超調(diào)過大,甚至不穩(wěn)定。 因此,Td增大即微分作用的增強(qiáng)有助于增加系統(tǒng)的穩(wěn)定性,還可以改善系統(tǒng)的動態(tài)特性,如可以明顯減少超調(diào)量,縮短調(diào)節(jié)時間等,提高控制精度。但Td值偏大都會適得其反。 6 心得體會 通過本次溫度控制系統(tǒng)設(shè)計,個人有了很多獲得: 一,了解了自身各種理論知識的不足之處,強(qiáng)化了自身知識水平; 二,知道了理論必須與實踐結(jié)合,各種技術(shù)才能真正達(dá)到熟練運(yùn)用的程度; 三,科學(xué)技術(shù)是嚴(yán)密謹(jǐn)慎的,不能有一絲馬虎,否則可能會出現(xiàn)較大誤差; 四,通過本次溫度控制設(shè)計,進(jìn)一步學(xué)習(xí)了單片機(jī)設(shè)計與Matlab仿真設(shè)計。也學(xué)習(xí)了數(shù)字PID控制,比較了數(shù)字PID位置型控制算法與數(shù)字PID增量型控制算法。同時了解了數(shù)字PID控制器改進(jìn)的方法,如積分分離。為了實現(xiàn)積分分離,編寫程序時必須從數(shù)字PID差分方程式中分離出積分項,進(jìn)行特殊處理。 參考文獻(xiàn) [1] 于海生. 計算機(jī)控制技術(shù)[M]. 北京:機(jī)械工業(yè)出版社,2014:101-111. [2] 張毅剛,彭喜元. 單片機(jī)原理及應(yīng)用[M]. 北京:高等教育出版社,2010:43-82. [3] 劉教瑜. PLC應(yīng)用技術(shù)[M]. 北京:人民郵電出版社,2013:276-278. [4] 劉紅麗. 傳感與檢測技術(shù)[M]. 北京:國防工業(yè)出版社,2012:73-81. [5] 王孝武,方敏,葛鎖良. 自動控制理論[M]. 北京:機(jī)械工業(yè)出版社,2012:117-118. 附錄A 芯片資料 附A1 ADC0809芯片功能 A/D轉(zhuǎn)換器是將模擬電壓或電流轉(zhuǎn)換成數(shù)字量的期間或裝置,它是一種模擬系統(tǒng)和計算機(jī)之間的接口,它在數(shù)據(jù)采集和控制系統(tǒng)中,得到了廣泛的應(yīng)用,常用的A/D轉(zhuǎn)換器有ADC0809. 它是一種帶有8通道模擬開關(guān)的8位逐次逼近式A/D轉(zhuǎn)換器,轉(zhuǎn)換時間為100us左右,線性誤差為1/2LSB,采用28腳雙立直插式封裝,ADC0809由8通道模擬開關(guān)、通道選擇邏輯、8位A/D轉(zhuǎn)換器及三態(tài)輸出鎖存緩沖器組成。 (1)8通道模擬開關(guān)及通道選擇邏輯 該部分的功能是實現(xiàn)8選1操作,通道選擇信號C、B、A與所選通道的關(guān)系如下: 表A-1 ADC0809模擬開關(guān)及通道選擇邏輯 地址鎖存允許信號(ALE、正脈沖)用于通道選擇信號C、B、A的鎖存。加至C、B、A上的通道選擇信號在ALE的作用下送入通道選擇邏輯后,通道i上的模擬輸入被送至A/D轉(zhuǎn)換器轉(zhuǎn)換。 (2)8位A/D轉(zhuǎn)換器 圖A-1 ADC0809引腳圖 如圖A-1所示。IN0~IN7為模擬信號的8個輸入通道。VREF,VREF為基準(zhǔn)電壓的正極和負(fù)極。 ADDA 、ADDB和ADDC為模擬信號輸入通道的地址選擇線。ALE為地址鎖存信號,由低電平到高電平正跳變時講地址選擇線的狀態(tài)鎖存,一選通相應(yīng)的輸入通道。 START為啟動信號,正脈沖的上升沿使內(nèi)部寄存器清零,從下降沿開始進(jìn)行A/D轉(zhuǎn)換。 OEC為轉(zhuǎn)換結(jié)束信號,在START信號之后變低,轉(zhuǎn)換結(jié)束為高電平,用來申請中斷。OE為輸出允許信號,有效時將輸出寄存器中的數(shù)據(jù)放到數(shù)據(jù)總線上。2-8~2-1為數(shù)碼輸出端,2-8為最低有效位,2-1為最高有效位。 附A2 DAC0832芯片功能 D/A轉(zhuǎn)換器的功能是把二進(jìn)制數(shù)字量電信號轉(zhuǎn)換為與其數(shù)值成正比的模擬量電信號。常用D/A轉(zhuǎn)換器為DAC0832芯片。DAC0832工作在單緩沖寄存器方式,即當(dāng)CS信號來時,D0~D7數(shù)據(jù)線送來的數(shù)據(jù)直通進(jìn)行D/A轉(zhuǎn)換,當(dāng)IOW變高時,則此數(shù)據(jù)便被鎖存在寄存器中,因此D/A轉(zhuǎn)換的輸出也保持不變。DAC0832講輸入的數(shù)字量轉(zhuǎn)換成差動的電流輸出(Iout1和Iout2),為了將其編程電壓輸出,須經(jīng)過運(yùn)算放大器,使其輸出0~5V(Vref為-5V)或0~10V(Vref為-10V),若要形成負(fù)電壓輸出,則Vref需接正的基準(zhǔn)電壓。 圖A-2 DAC0832引腳圖 如圖A-2 所示,DAC0832是雙列直插式8位D/A轉(zhuǎn)換器。能完成數(shù)字量輸入到模擬量(電流)輸出的轉(zhuǎn)換。圖4為DAC0832的引腳圖。其主要參數(shù)如下:分辨率為8位,轉(zhuǎn)換時間為1μs,滿量程誤差為1LSB,參考電壓為(+10/span>-10)V,供電電源為(+5~+15)V,邏輯電平輸入與TTL兼容。在DAC0832中有兩級鎖存器,第一級鎖存器稱為輸入寄存器,它的允許鎖存信號為ILE,第二級鎖存器稱為DAC寄存器,它的鎖存信號也稱為通道控制信號XFER。 當(dāng)ILE為高電平,片選信號 CS和寫信號 WR1為低電平時,輸入寄存器控制信號為1, 這種情況下,輸入寄存器的輸出隨輸入而變化。此后,當(dāng)WR1由低電平變高時,控制信號成為低電平,此時,數(shù)據(jù)被鎖存到輸入寄存器中,這樣輸入寄存器的輸出端不再隨外部數(shù)據(jù)DB的變化而變化。 對第二級鎖存來說,傳送控制信號XFER和寫信號WR2同時為低電平時,二級鎖存控制信號為高電平,8位的DAC寄存器的輸出隨輸入而變化,此后,當(dāng)WR2由低電平變高時,控制信號變?yōu)榈碗娖?,于是將輸入寄存器的信息鎖存到DAC寄存器中。 其余各引腳的功能定義如下: DI7~DI0:8位的數(shù)據(jù)輸入端,DI7為最高位。 IOUT1:模擬電流輸出端1,當(dāng)DAC寄存器中數(shù)據(jù)全為1時,輸出電流最大,當(dāng) DAC寄存器中數(shù)據(jù)全為0時,輸出電流為0。 IOUT2:模擬電流輸出端2,IOUT2與IOUT1的和為一個常數(shù)。 RFB:反饋電阻引出端,DAC0832內(nèi)部已有反饋電阻,所以 RFB端可以直接接到外部運(yùn)算放大器的輸出端,相當(dāng)于將一個反饋電阻接在運(yùn)算放大器的輸出端和輸入端之間。 VREF:參考電壓輸入端,此端可接一個正電壓,也可接一個負(fù)電壓,它決定0至255的數(shù)字量轉(zhuǎn)化出來的模擬量電壓值的幅度,VREF范圍為+10。VREF端與D/A內(nèi)部T形電阻網(wǎng)絡(luò)相連。 VCC:芯片供電電壓,范圍為5V~15V。 GND :模擬量地/數(shù)字量地,即模擬/數(shù)字電路接地端。 附A3 AT89C51單片機(jī) AT89C51提供以下的功能標(biāo)準(zhǔn):4K字節(jié)閃爍存儲器,128字節(jié)隨機(jī)存儲器,32個I/O口,2個16位定時/計數(shù)器,1個5向量兩級中斷結(jié)構(gòu),1個串行通信口,片內(nèi)震蕩器和時鐘電路。另外,AT89C51還可以進(jìn)行0HZ的靜態(tài)邏輯操作,并支持兩種軟件的節(jié)電模式。8051單片機(jī)的內(nèi)部結(jié)構(gòu)十分復(fù)雜,但封裝之后,只有引腳是面向用戶的,所以使用者需要熟悉各引腳的用途。常用的8051芯片是用雙列直插40腳封裝。如圖A-3所示。 圖A-3 AT89C51引腳圖 其各引腳功能如下所示: VCC:供電電壓。 GND:接地。 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P0口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗時,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門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并作為輸入時,P2口的管腳被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外 部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。P3口也可作為AT89C51的一些特殊功能口,P3口同時為閃爍編程和編程校驗接收一些控制信號。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。 ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6,可用作對外部輸出的脈沖或用于定時目的。 :外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的信號將不出現(xiàn)。 /VPP:當(dāng)保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,將內(nèi)部鎖定為RESET;當(dāng)端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 附錄B 程序清單 附B1 單片機(jī)程序代碼 單片機(jī)程序代碼如下所示: 積分分離PID控制算法子程序: START:MOV 68H,KP ;分別將KP ,TI ,TD, T,β送入指定的存儲單元 MOV 54H,TI MOV 55H,TD MOV 56H,T MOV 57H,β MOV A,68H;計算KI=KP*T/TI MOV B,56H MUL AB MOV B,54H DIV AB MOV 69H,A MOV A,68H;計算KD=KP*TD/T MOV B,55H MUL AB MOV B,56H DIV AB MOV 6AH,A LOOP0: MOV DPTR #7FF0H;讀取預(yù)定溫度值,送入ADC0809的IN0口地址 MOV @DPTR,A ;啟動A/D轉(zhuǎn)換 LOOP1 JB P3.3,LOOP1;等待轉(zhuǎn)換數(shù)據(jù) MOVX A,@DPTR;讀取ADC0809的IN0口轉(zhuǎn)換后的數(shù)據(jù) MOV 5CH,A;將預(yù)定值數(shù)據(jù)放入指定的存儲單元 MOV DPTR,#7FF1H;讀取采樣溫度值,送ADC0809的IN1口地址 MOVX @DPTR,A;啟動A/D轉(zhuǎn)換 LOOP2: JB P3.3,LOOP2;等待轉(zhuǎn)換數(shù)據(jù) MOVX A,@DPTR;讀取ADC0809的IN1口轉(zhuǎn)換后的數(shù)據(jù) MOV 49H,A ;將采樣值數(shù)據(jù)放入指定的存儲單元 MOV A,5CH ;計算e(i),先取溫度給定值 CLR C SUBB A,50H ;溫度給定值-采樣值 JNC AA0;判斷e(i)的正負(fù),如果為正,跳至AA0 CPL A;e(i)為負(fù),下兩條指令求補(bǔ) ADD A,#01H AA0 MOV R0,57H SUBB A,57H;|e(i)|-β JNC AA1;|e(i)|>β跳至AA1 SJMP AA2;|e(i)|<β跳至AA2 AA1: LCALL PD;調(diào)用PD算法 AA2: LCALL PID;調(diào)用PID算法 MOV A,7CH;將△Ui通過DAC0832輸出 MOV DPTR,#7FF2H MOVX @DPTR,A INC DPTR MOVX @DPTR,A LCALL DELAY;調(diào)用延時子程序,等待下一次采樣計算 SJMP LOOP0;進(jìn)入下一次控制計算 DELAY PROC NEAR DL0: MOV R6,#FFH DL1: MOV R7,#FFH DL2: MOV R5,#FFH DLS: DJNZ R5,DLS DJNZ R7,DL2 DJNZ R6 DL1 RET DELAY ENDP PID PROC NEAR PID:MOV A,5CH;計算e(i),先取溫度給定值 CLR C SUBB A,50H;溫度給定值-溫度檢測值 JNC PID1;判斷e(i)正負(fù),如果為正,跳至PID1 CPL A;e(i)為負(fù),下兩條指令求補(bǔ) ADD A,#01H SETB 30H;e(i)為負(fù),符號位置1 SJMP PID2 PID1:CLR 30H;e(i)為正,符號位置0 PID2:MOV 6BH,A;e(i)值存放在6BH單位元中 MOV R1,6BH;計算ei-ei-1,先將ei值,送R1 MOV C,30H;將ei的符號位值送20H位 MOV 20H,C MOV R2,6CH;將ei-1值送R2 MOV C,31H;將 ei-1的符號位值送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 6EH,R3;將差值ei-ei-1送6EH單元 MOV C,22H;將差值ei-ei-1的符號位送33H位MOV 33H,C MOV R1,6CH;計算ei-1-ei-2,先將ei-1值送R1 MOV C,31H;將ei-1符號位送20H位 MOV 20H,C MOV R2,6DH;將ei-2的值送R2 MOV C,32H;將 ei-2的符號位值送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 6FH,R3;將差值ei-1-ei-2送6FH單元 MOV C,22H;將差值ei-1-ei-2的符號位送34H位 MOV 34H,C MOV R1,6EH ;計算(ei-ei-1)-(ei-1-ei-2),將ei-ei-1值送R1 MOV C,33H;將ei-ei-1符號位送20H位 MOV 20H,C MOV R2,6FH;將ei-1-ei-2值送R2 MOV C,34H;將ei-1-ei-2符號位送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 70H,R3;將差值(ei-ei-1)-(ei-1-ei-2)送70H單元 MOV C,22H;將差值(ei-ei-1)-(ei-1-ei-2)的符號位值送 35H位 MOV 35H,C MOV A,68H;計算Kp*(ei-ei-1),將Kp值送A MOV B,6EH;將ei-ei-1值送B MUL AB;兩數(shù)相乘 MOV 71H,B;Kp*(ei-ei-1)值存71H,72H單元 MOV 72H.A MOV A,69H;計算KI*ei,將KI值送A MOV B,6BH;將ei值送B MUL AB;兩數(shù)相乘 MOV 73H,B;KI*ei值存73H,74H單元 MOV 74H,A MOV A,6AH;計算KD*[(ei-ei-1)-(ei-1-ei-2)],將KD送 A MOV B,70H;將(ei-ei-1)-(ei-1-ei-2)值送B MUL AB;兩數(shù)相乘 MOV 75H,B;KD*[(ei-ei-1)-(ei-1-ei-2)]值存75H,76H 單元 MOV 76H,A MOV R1,71H;計算Kp*(ei-ei-1)+KI*ei,將Kp*(ei-ei-1) 值送R1,R2 MOV R2,72H MOV C,33H;將Kp*(ei-ei-1)的符號位值送23H位 MOV 23H,C MOV R3,73H;將KI*ei值送R3,R4 MOV R4,74H MOV C,30H;將KI*ei值的符號位懂24H位 MOV 24H,C LCALL SJF;調(diào)用雙字節(jié)帶符號加法子程序 MOV 77H,R5;將Kp*(ei-ei-1)+KI*ei值送77H,78H MOV 78H,R6 MOV C,25H;將Kp*(ei-ei-1)+KI*ei值的符號位送36H位 MOV 36H,C MOV R1,77H;計算△Ui,將將Kp*(ei-ei-1)+KI*ei值送R1, R2 MOV R2,78H MOV C,36H;將Kp*(ei-ei-1)+KI*ei值的符號位送23H位 MOV 23H,C MOV R3,75H;將KD*[(ei-ei-1)-(ei-1-ei-2)]的值送R3,R4 MOV R4,76H MOV C,35H;將KD*[(ei-ei-1)-(ei-1-ei-2)]的符號位送23H 位 MOV 24H,C LCALL SJF;調(diào)用雙字節(jié)帶符號加法子程序 MOV 79H,R5;將△Ui值送79H,7AH MOV 7AH,R6 MOV C,25H;將△Ui值的符號位送37H MOV 37H,C MOV R1,7DH;計算Ui,將Ui-1值送R1,R2 MOV R2,7EH CLR 23H;Ui-1值的符號位值恒為0 MOV R3,79H;將△Ui值送R3,R4 MOV R4,7AH MOV C,37H;將△Ui值的符號位送24H MOV 24H,C LCALL SJF;調(diào)用雙字節(jié)帶符號加法子程序 JNB 25H,PID3;判斷計算結(jié)果是否為負(fù) MOV 7BH,#00H;如果是負(fù)數(shù),則輸出電壓為0 MOV 7CH,#00H SJMP PID4 PID3:MOV 7BH,R5;否則,將計算得到的Ui值置7BH,7CH MOV 7CH,R6 PID4:MOV 6DH,6CH ;數(shù)據(jù)迭代,ei-1值送ei-2存儲單元 MOV 6CH,6BH;ei值送ei-1存儲單元 MOV 7DH,7BH;Ui值送Ui-1存儲單元 MOV 7EH,7CH RET PID ENDP PD PROC NEAR PD:MOV A,5CH;計算ei,先取溫度給定值 CLR C SUBB A,50H;溫度給定值-溫度檢測值 JNC PD1;判斷ei正負(fù),如果為正,跳至PID1 CPL A;ei為負(fù),下兩條指令求補(bǔ) ADD A,#01H SETB 30H;ei為負(fù),符號位置1 SJMP PD2 PD1:CLR 30H;ei為正,符號位置0 PD2:MOV 6BH,A;ei值存放在6BH單位元中 MOV R1,6BH;計算ei-ei-1,先將ei值,送R1 MOV C,30H;將ei的符號位值送20H位 MOV 20H,C; MOV R2,6CH;將ei-1值送R2 MOV C,31H;將 ei-1的符號位值送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 6EH,R3;將差值ei-ei-1送6EH單元 MOV C,22H;將差值ei-ei-1的符號位送33H位 MOV 33H,C MOV R1,6CH;計算ei-1-ei-2,先將ei-1值送R1 MOV C,31H;將ei-1符號位送20H位 MOV 20H,C MOV R2,6DH;將ei-2的值送R2 MOV C,32H;將 ei-2的符號位值送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 6FH,R3;將差值ei-1-ei-2送6FH單元 MOV C,22H;將差值ei-1-ei-2的符號位送34H位 MOV 34H,C MOV R1,6EH ;計算(ei-ei-1)-(ei-1-ei-2),將ei-ei-1值送R1 MOV C,33H;將ei-ei-1符號位送20H位 MOV 20H,C MOV R2,6FH;將ei-1-ei-2值送R2 MOV C,34H;將ei-1-ei-2符號位送21H位 MOV 21H,C LCALL DJF;調(diào)用單字節(jié)帶符號的減法子程序 MOV 70H,R3;將差值(ei-ei-1)-(ei-1-ei-2)送70H單元 MOV C,22H;將差值(ei-ei-1)-(ei-1-ei-2)的符號位值送 35H位 MOV 35H,C MOV A,68H;計算Kp*(ei-ei-1),將Kp值送A MOV B,6EH;將ei-ei-1值送B MUL AB;兩數(shù)相乘 MOV 71H,B;Kp*(ei-ei-1)值存71H,72H單元 MOV 72H.A MOV A,6AH;計算KD*[(ei-ei-1)-(ei-1-ei-2)],將KD送A MOV B,70H;將(ei-ei-1)-(ei-1-ei-2)值送B MUL AB;兩數(shù)相乘 MOV 75H,B;KD*[(ei-ei-1)-(ei-1-ei-2)]值存75H,76H單元 MOV 76H,A MOV R1,71H;計算Kp*(ei-ei-1)+KI*ei,將Kp*(ei-ei-1)值送 R1,R2 MOV R2,72H MOV C,33H;將Kp*(ei-ei-1)的符號位值送23H位 MOV 23H,C MOV R3,75H;將KD*[(ei-ei-1)-(ei-1-ei-2)]值送R3,R4 MOV R4,76H MOV C,35H;將KD*[(ei-ei-1)-(ei-1-ei-2)]值的符號位送 24H位 MOV 24H,C LCALL SJF;調(diào)用雙字節(jié)帶符號加法子程序 MOV 79H,R5;將△Ui值送79H,7AH MOV 7AH,R6 MOV C,25H;將△Ui值的符號位送37H MOV 37H,C MOV R1,7DH;計算Ui,將Ui-1值送R1,R2 MOV R2,7EH CLR 23H;Ui-1值的符號位值恒為0 MOV R3,79H;將△Ui值送R3,R4 MOV R4,7AH MOV C,37H;將△Ui值的符號位送24H MOV 24H,C LCALL SJF;調(diào)用雙字節(jié)帶符號加法子程序 JNB 25H,PD3;判斷計算結(jié)果是否為負(fù) MOV 7BH,#00H;如果是負(fù)數(shù),則輸出電壓為0 MOV 7CH,#00H SJMP PID4 PD3:MOV 7BH,R5;否則,將計算得到的Ui值置7BH,7CH MOV 7CH,R6 PD4:MOV 6DH,6CH;數(shù)據(jù)迭代,ei-1值送ei-2存儲單元 MOV 6CH,6BH;ei值送ei-1存儲單元 MOV 7DH,7BH;Ui值送Ui-1存儲單元 MOV 7EH,7CH RET PD ENDP 附B2 仿真程序代碼 仿真程序代碼如下所示: clear all; close all; ts=2;%采樣時間2s sys=tf([1],[40,1,0]);%令sys為系統(tǒng)傳遞函數(shù) dsys=c2d(sys,ts,zoh); %將sys離散化并加零階保持器 [num,den]=tfdata(dsys,v); %求sys多項式模型參數(shù) kp=1; ti=50; td=10; beta=0.1; ki=kp*ts/ti; kd=kp*td/ts;%設(shè)定PID及β的值 本科生課程設(shè)計成績評定表 姓 名 性 別 專業(yè)、班級 課程設(shè)計題目: 課程設(shè)計答辯或質(zhì)疑記錄: 成績評定依據(jù): 序 號 1 選題合理,目的明確(10分) 2 設(shè)計方案正確,具有可行性、創(chuàng)新性(20分) 3 設(shè)計結(jié)果(例如:硬件成果、軟件程序)(25分) 4 態(tài)度認(rèn)真、學(xué)習(xí)刻苦、遵守紀(jì)律(15分) 5 設(shè)計報告的規(guī)范化、參考文獻(xiàn)充分(不少于5篇)(10分) 6 答辯(20分) 總 分 最終評定成績(以優(yōu)、良、中、及格、不及格評定) 指導(dǎo)教師簽字: 年 月 日- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 溫度 控制系統(tǒng) 設(shè)計 計算機(jī)控制 技術(shù) 課程設(shè)計
鏈接地址:http://m.appdesigncorp.com/p-7869254.html