![基于單片機(jī)淬火爐溫溫度控制課程設(shè)計(jì)_第1頁(yè)](http://file4.renrendoc.com/view/61b90a8d095de3384a17e711c94099ed/61b90a8d095de3384a17e711c94099ed1.gif)
![基于單片機(jī)淬火爐溫溫度控制課程設(shè)計(jì)_第2頁(yè)](http://file4.renrendoc.com/view/61b90a8d095de3384a17e711c94099ed/61b90a8d095de3384a17e711c94099ed2.gif)
![基于單片機(jī)淬火爐溫溫度控制課程設(shè)計(jì)_第3頁(yè)](http://file4.renrendoc.com/view/61b90a8d095de3384a17e711c94099ed/61b90a8d095de3384a17e711c94099ed3.gif)
![基于單片機(jī)淬火爐溫溫度控制課程設(shè)計(jì)_第4頁(yè)](http://file4.renrendoc.com/view/61b90a8d095de3384a17e711c94099ed/61b90a8d095de3384a17e711c94099ed4.gif)
![基于單片機(jī)淬火爐溫溫度控制課程設(shè)計(jì)_第5頁(yè)](http://file4.renrendoc.com/view/61b90a8d095de3384a17e711c94099ed/61b90a8d095de3384a17e711c94099ed5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于PID控制的淬火爐爐溫控制系統(tǒng)設(shè)計(jì)1總體方案設(shè)計(jì)這次課程設(shè)計(jì)針對(duì)PID控制的淬火爐進(jìn)行溫度控制,設(shè)計(jì)步驟分為以下兒步。首先進(jìn)行控制系統(tǒng)的建模和數(shù)字控制器設(shè)計(jì),設(shè)計(jì)方案為:選用Zieglei-Nichols方法進(jìn)行PID參數(shù)整定,建立閉環(huán)控制系統(tǒng),用MATLAB仿真,得到達(dá)到要求的PLD參數(shù)。硬件的設(shè)計(jì)與實(shí)現(xiàn),單片機(jī)選用AT89C52,溫度采集用熱電偶,配合MAX6675使用,DA轉(zhuǎn)換用DAC0802實(shí)現(xiàn),LCD用來(lái)顯示溫度。系統(tǒng)框圖如圖1-1。圖1-1系統(tǒng)框圖軟件設(shè)計(jì),先編寫子程序,包括A/D轉(zhuǎn)換和溫度檢測(cè)子程序,延遲子程序,D/A轉(zhuǎn)換子程序,PID控制程序,最后系統(tǒng)初始化并編寫主程序。最
2、后用prouies進(jìn)行硬件連線和仿真,看能否達(dá)到系統(tǒng)要求,對(duì)溫度進(jìn)行控制。 2控制系統(tǒng)建模和數(shù)字控制器設(shè)計(jì)2.1設(shè)計(jì)內(nèi)容淬火是生產(chǎn)過(guò)程中的一道關(guān)鍵工序,其溫度控制的精度直接影響到產(chǎn)品的質(zhì)量。淬火爐溫度控制通常由多個(gè)溫區(qū)。本設(shè)計(jì)針對(duì)一個(gè)溫區(qū)進(jìn)行溫度控制,要求控制溫度范圍600-800C,控制精度在lCo溫度探頭選用熱電偶。輸出0-10111A電流信號(hào)通過(guò)雙向可控Ts+1硅控制器控制加熱電阻兩端的電壓,輸入電流輸出電壓線性關(guān)系。其對(duì)象溫控?cái)?shù)學(xué)模型為:(2-1)其中:時(shí)間常數(shù)T=400秒,放大系數(shù)K=100C/niA,滯后時(shí)間t=10秒,控制算法選用PLD控制。2.2PID控制器的原理PLD控制器是
3、按照偏差的比例、積分、微分進(jìn)行控制的調(diào)節(jié)器的簡(jiǎn)稱,主要針對(duì)控制對(duì)象進(jìn)行參數(shù)調(diào)節(jié)。當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)不能被完全掌握,或得不到精確的數(shù)學(xué)模型時(shí),應(yīng)用PID控制技術(shù)最為方便PID控制器就是根據(jù)設(shè)定值與實(shí)際值的誤差,利用比例、積分、微分等基本控制規(guī)律,或者把它們適當(dāng)配合形成有PI,PD和PID等的復(fù)合控制規(guī)律,使控制系統(tǒng)滿足性能指標(biāo)要求。典型PID控制系統(tǒng)結(jié)構(gòu)圖如圖2-1,對(duì)誤差信號(hào)分別進(jìn)行比例、積分、微分、組合控制。圖2-1PID控制系統(tǒng)結(jié)構(gòu)圖PED控制算法模擬表達(dá)式為:TOC o 1-5 h z=Kpe(t)+Let)dt+Td竽(2-2)對(duì)應(yīng)的模擬PID調(diào)節(jié)器的傳遞函數(shù)為:二器=心(1+4+
4、匚)小、E(s)Tq(2-3)在計(jì)算機(jī)控制系統(tǒng)中,PID控制規(guī)律的實(shí)現(xiàn)必須用數(shù)值逼近的方法。當(dāng)采樣周期相當(dāng)短時(shí),用求和代替積分,用后向差分代替微分,是模擬PID離散化變?yōu)椴罘址匠?。?shù)字PID位置型控制算式為:(約=Kpe(k)+名左+Td心)-;伙-1)(2-4)數(shù)字PID增量型控制算式為:/=“(燈=Kpe(k)-e(k-1)+7鍬)+KDe(k)-2e(k一1)+e(k-2)(2-5)其中K稱為比例增益;ut匕二心亓稱為積分系數(shù);Kd=Kp稱為微分系數(shù)。如果單純的用數(shù)字PID控制器去模仿模擬調(diào)節(jié)器,不會(huì)獲得更好的效果。因此必須發(fā)揮計(jì)算機(jī)運(yùn)算速度快、邏輯判斷功能強(qiáng)、編程靈活等優(yōu)勢(shì)、才能在控制
5、性能上超過(guò)模擬調(diào)節(jié)器。在單回路控制系統(tǒng)中,由于擾動(dòng)作用使被控參數(shù)偏離給定值,從而產(chǎn)生偏差。自動(dòng)控制系統(tǒng)的調(diào)節(jié)單元將來(lái)自變送器的測(cè)量值與給定值相比較后產(chǎn)生的偏差進(jìn)行比例、積分、微分(PID)運(yùn)算,并輸出統(tǒng)一標(biāo)準(zhǔn)信號(hào),去控制執(zhí)行機(jī)構(gòu)的動(dòng)作,以實(shí)現(xiàn)對(duì)溫度、壓力、流量、也為及其他工藝參數(shù)的自動(dòng)控制。比例作用P只與偏差成正比;積分作用I是偏差對(duì)時(shí)間的積累;微分作用D是偏差的變化率。比例控制能迅速反應(yīng)誤差,從而減少穩(wěn)態(tài)誤差。除了系統(tǒng)控制輸入為0和系統(tǒng)過(guò)程值等于期望值這兩種情況,比例控制都能給出穩(wěn)態(tài)誤差。當(dāng)期望值有一個(gè)變化時(shí),系統(tǒng)過(guò)程值將產(chǎn)生一個(gè)穩(wěn)態(tài)誤差。但是,比例控制不能消除穩(wěn)態(tài)誤差。比例放大系數(shù)的加大,
6、會(huì)引起系統(tǒng)的不穩(wěn)定。為了減小穩(wěn)態(tài)誤差,在控制器中加入積分項(xiàng),積分項(xiàng)對(duì)誤差取決于時(shí)間的積分,隨著時(shí)間的增加,積分項(xiàng)會(huì)增大。這樣,即使誤差很小,積分項(xiàng)也會(huì)隨著時(shí)間的增加而加大,它推動(dòng)控制器的輸出增大使穩(wěn)態(tài)誤差進(jìn)一步減少,直到等于零。積分和比例(P)通常一起使用,稱為比例十積分(PI)控制器,可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后圖2-2不加PID控制器結(jié)構(gòu)圖 無(wú)穩(wěn)態(tài)誤差。如果單獨(dú)用積分(I)的話,由于積分輸出隨時(shí)間積累而逐漸增大,故調(diào)節(jié)動(dòng)作緩慢,這樣會(huì)造成調(diào)節(jié)不及時(shí),使系統(tǒng)穩(wěn)定裕度下降。由于自動(dòng)控制系統(tǒng)有較大的慣性組件(環(huán)節(jié))或有滯后(delay)組件,在調(diào)節(jié)過(guò)程中可能出現(xiàn)過(guò)沖英至振蕩。解決辦法是引入微分(D)控
7、制,即在誤差很大的時(shí)候,抑制誤差的作用也很大;在誤差接近零時(shí),抑制誤差的作用也應(yīng)該是零。應(yīng)用PID控制,必須適當(dāng)?shù)卣{(diào)整比例放大系數(shù)KP,積分時(shí)間TI和微分時(shí)間TD,使整個(gè)控制系統(tǒng)得到良好的性能。本次設(shè)計(jì)釆用Zieglei-Nichols方法來(lái)PID參數(shù)整定。2.3Ziegler-Nichols方法Zieglei-Nichols方法是基于系統(tǒng)穩(wěn)定性分析的PID整定方法.在設(shè)計(jì)過(guò)程中無(wú)需考慮任何特性要求,整定方法非常簡(jiǎn)單,但控制效果卻比較理想。傳統(tǒng)的PID經(jīng)驗(yàn)調(diào)節(jié)大體分為以下兒步:1關(guān)閉控制器的I和D元件,加大P元件,使產(chǎn)生振蕩。2減小P,使系統(tǒng)找到臨界振蕩點(diǎn)。3加大I,使系統(tǒng)達(dá)到設(shè)定值。4重新上
8、電,觀察超調(diào)、振蕩和穩(wěn)定時(shí)間是否符合系統(tǒng)要求。5針對(duì)超調(diào)和振蕩的情況適當(dāng)增加微分項(xiàng)。以上5個(gè)步驟在調(diào)節(jié)PID控制器時(shí)的普遍步驟,但是在尋找合時(shí)的I和D參數(shù)時(shí),并非易事。JolmZiegle和NathanielNichols發(fā)明了著名的凹路整定技術(shù)使得PID算法在所有應(yīng)用在工業(yè)領(lǐng)域內(nèi)的反饋控制策略中是最常用的。Zieglei-Nichols整定技術(shù)是1942年第一次發(fā)表出來(lái),直到現(xiàn)在還被廣泛地應(yīng)用著。所謂的對(duì)PID回路的“整定”就是指調(diào)整控制器對(duì)實(shí)際值與設(shè)定值之間的誤差產(chǎn)生的反作用的積極程度。如果正巧控制過(guò)程是相對(duì)緩慢的話,那么PID算法可以設(shè)置成只要有一個(gè)隨機(jī)的干擾改變了過(guò)程變量或者一個(gè)操作改
9、變了設(shè)定值時(shí),就能釆取快速和顯著的動(dòng)作。相反地,如果控制過(guò)程對(duì)執(zhí)行器是特別地靈敏而控制器是用來(lái)操作過(guò)程變量的話,那么PID算法必須在比較長(zhǎng)的一段時(shí)間內(nèi)應(yīng)用更為保守的校正力?;芈氛ǖ谋举|(zhì)就是確定對(duì)控制器作用產(chǎn)生的過(guò)程反作用的積極程度和PID算法對(duì)消除誤差可以提供多大的幫助。經(jīng)過(guò)多年的發(fā)展,Zieglei-Nichols方法已經(jīng)發(fā)展成為一種在參數(shù)設(shè)定中,處于經(jīng)驗(yàn)和計(jì)算法之間的中間方法。這種方法可以為控制器確定非常精確的參數(shù),在此之后也可進(jìn)行微調(diào)。Ziegler-Nichols方法分為兩步:1構(gòu)建閉環(huán)控制凹路,確定穩(wěn)定極限。2根據(jù)公式計(jì)算控制器參數(shù)。穩(wěn)定極限是由P元件決定的。當(dāng)出現(xiàn)穩(wěn)態(tài)振蕩時(shí)就達(dá)到
10、了這個(gè)極限。產(chǎn)生了臨界系數(shù)Kpcnt和臨界振蕩周期Tent確定臨界系數(shù)Kpcnt和臨界振蕩周期Tc皿后,根據(jù)表2-1的公式,計(jì)算其他參數(shù):表2-1PLD參數(shù)的計(jì)算控制器類型計(jì)算特征數(shù)據(jù)T.td&心P0.5KPcritPDO.SKPcrit0.12TcntKJdPI0.45KPcnt0.85TcntK幾PLD0.6KPcrit0.5Tcnt0.12TcntK幾52.4PID參數(shù)的整定首先建立閉環(huán)系統(tǒng),采用階躍輸入,不加入PID控制器,如圖2-2,用MATLAB仿真,得到輸出如圖2-3。Kg145刊caiXiUq龍*、o01fi?LI舍|X心f?匚:二|300k-rslzJ爭(zhēng)巴El莎出1異風(fēng)JH亍
11、務(wù) 圖2-4加入PID控制器的結(jié)構(gòu)圖 圖2-3不加PID控制器的階躍響應(yīng)加入PID控制器的結(jié)構(gòu)圖如圖2-4untitleduj回FileEditViewSimulationFormatToolsHelpDyS黑電念00lllormal三|鳥窗(?)彥幽|*畫園今鬱Ready|100%ode45根據(jù)Zieglei-Nicliols方法,先使積分和微分系數(shù)為0,只用比例控制,比例系數(shù)從小到大,使階躍響應(yīng)出現(xiàn)穩(wěn)態(tài)振蕩,當(dāng)Kp=0.655時(shí),得到圖2-5所示曲線。圖2-5Kp=0.655時(shí)的曲線由此可知KPcrit二0.655,Tcrit二37,由表2-1可以計(jì)算出PID參數(shù):=0.6KPcnt=0.
12、6*0.655=0393(2-6)-Kp=0393_0()21(2-7)0.5Tcnt0.5*37=0.12TcntKp=0.12*37*0.393=1.744(2-8)圖26用計(jì)算參數(shù)得到的曲線用計(jì)算的參數(shù)進(jìn)行仿真得到圖2-6,發(fā)現(xiàn)系統(tǒng)超調(diào)較大,將積分系數(shù)減小,比例和微分系數(shù)進(jìn)行微調(diào),最后當(dāng)Kp=0.36、心=0.0006、心=1.8時(shí)曲線如圖2-7所示。圖27參數(shù)調(diào)整后得到的曲線3硬件的設(shè)計(jì)與實(shí)現(xiàn)3.1完整系統(tǒng)電路圖LCD1iioia圖3-1完整系統(tǒng)電路圖圖3-1為本次設(shè)計(jì)的完整系統(tǒng)電路圖。3.2溫度檢測(cè)本系統(tǒng)采用熱電偶來(lái)采集溫度,并使用MAX6675作為熱電偶放大器和A/D轉(zhuǎn)換。熱電偶是
13、一種感溫元件,它把溫度信號(hào)轉(zhuǎn)換成熱電動(dòng)勢(shì)信號(hào),通過(guò)電氣儀表轉(zhuǎn)換成被測(cè)介質(zhì)的溫度。熱電偶測(cè)溫的基本原理是兩種不同成份的均質(zhì)導(dǎo)體組成閉合回路,當(dāng)兩端存在溫度梯度時(shí),回路中就會(huì)有電流通過(guò),此時(shí)兩端之間就存在Seebeck電動(dòng)勢(shì):熱電動(dòng)勢(shì),這就是所謂的塞貝克效應(yīng)。兩種不同成份的均質(zhì)導(dǎo)體為熱電極,溫度較高的一端為工作端,溫度較低的一端為自由端,自由端通常處于某個(gè)恒定的溫度下。根據(jù)熱電動(dòng)勢(shì)與溫度的函數(shù)關(guān)系,制成熱電偶分度表,分度表是自由端溫度在0C時(shí)的條件下得到的,不同的熱電偶具有不同的分度表。在熱電偶回路中接入第三種金屬材料時(shí),只要該材料兩個(gè)接點(diǎn)的溫度相同,熱電偶所產(chǎn)生的熱電勢(shì)將保持不變,即不受第三種金
14、屬接入回路中的影響。因此,在熱電偶測(cè)溫時(shí),可接入測(cè)量?jī)x表,測(cè)得熱電動(dòng)勢(shì)后,即可知道被測(cè)介質(zhì)的溫度。Maxim公司新近推出的MAX6675即是一個(gè)集成了熱電偶放大器、冷端補(bǔ)償、AQ轉(zhuǎn)換器及SPI串口的熱電偶放大器與數(shù)字轉(zhuǎn)換器。MAX6675的主要特性如下:簡(jiǎn)單的SPI串行口溫度值輸出;0C十1024C的測(cè)溫范圍;12位0.25C的分辨率;片內(nèi)冷端補(bǔ)償;高阻抗差動(dòng)輸入;熱電偶斷線檢測(cè);單一+5V的電源電壓;低功耗特性;工作溫度范圍-20C+85C:2000V的ESD信號(hào)。MAX6675是一復(fù)雜的單片熱電偶數(shù)字轉(zhuǎn)換器,內(nèi)部具有信號(hào)調(diào)節(jié)放大器、12位的模擬/數(shù)字化熱電偶轉(zhuǎn)換器、冷端補(bǔ)償傳感和校正、數(shù)字
15、控制器、1個(gè)SPI兼容接口和1個(gè)相關(guān)的邏輯控制。3.3溫度顯示本次設(shè)計(jì)的顯示部分采用LM016L,可顯示2行16列英文字符,有8位數(shù)據(jù)總線D0-D7,RS,R/W,EN三個(gè)控制端口(共14線),工作電壓為5Vo沒(méi)背光,和常用的1602B功能和引腳一樣(除了調(diào)背光的二個(gè)線腳)。本次設(shè)計(jì)用LM016L顯示爐溫溫度和用戶設(shè)定的溫度。3.4D/A轉(zhuǎn)換電路D/A轉(zhuǎn)換采用DAC0832來(lái)實(shí)現(xiàn),DAC0832是雙列直插式8位D/A轉(zhuǎn)換器。能完成數(shù)字量輸入到模擬量(電流)輸出的轉(zhuǎn)換。分辨率為8位,轉(zhuǎn)換時(shí)間為ips,滿量程誤差為土1LSB,當(dāng)ILE為高電平,片選信號(hào)/CS和寫信號(hào)八VR1為低電平時(shí),輸入寄存器控
16、制信號(hào)為1,這種情況下,輸入寄存器的輸出隨輸入而變化。此后,當(dāng)AVR1由低電平變高時(shí),控制信號(hào)成為低電平,此時(shí),數(shù)據(jù)被鎖存到輸入寄存器中,這樣輸入寄存器的輸出端不再隨外部數(shù)據(jù)DB的變化而變化。對(duì)第二級(jí)鎖存來(lái)說(shuō),傳送控制信號(hào)/XFER和寫信號(hào)/WR2同時(shí)為低電平時(shí),二級(jí)鎖存控制信號(hào)為高電平,8位的DAC寄存器的輸出隨輸入而變化,此后,當(dāng)/WR2由低電平變高時(shí),控制信號(hào)變?yōu)榈碗?,于是將輸入寄存器的信息鎖存到DAC寄存器中。3.5加熱電路加熱電路如圖3-2o當(dāng)爐溫溫度低于設(shè)定的溫度時(shí),L1進(jìn)行加熱,而由于電容,加熱的快慢取決于兩個(gè)溫度值的差值。4軟件設(shè)計(jì)14-1主桎序流根圖主程序流程圖如圖4-1所示
17、。熱電偶檢測(cè)到的溫度經(jīng)MAX6675放大和A/D轉(zhuǎn)換送入單片機(jī),程序首先在液晶顯示器上顯示開始設(shè)定的溫度和實(shí)際溫度,接著一直掃描鍵盤,如果KSO按下一次,則設(shè)定溫度加1,并在液晶顯示器上顯示出來(lái);如果KS1按下一次,則設(shè)定溫度減1,在液晶顯示器上顯示出來(lái)。將設(shè)定值溫度與實(shí)際值比較,計(jì)算差值,如果實(shí)際溫度小于設(shè)定溫度,將差值送入DAC轉(zhuǎn)換器,是加熱電路進(jìn)行加熱,如果實(shí)際溫度大于設(shè)定溫度,因?yàn)闆](méi)有冷卻裝置,只能不進(jìn)行加熱,是溫度自然將下來(lái)。運(yùn)行過(guò)程對(duì)鍵盤掃描重復(fù)上述過(guò)程。參考文獻(xiàn)潘新民.單片微型計(jì)算機(jī)實(shí)用系統(tǒng)設(shè)計(jì).人民郵電出版社,1992.07沙占友.單片機(jī)外圍電路設(shè)計(jì)M.北京:電子工業(yè)出版社,2
18、003.01于海生.微型計(jì)算機(jī)控制技術(shù).清華大學(xué)出版社,2007孫育才.ATMEL新型AT89S51系列單片機(jī)及其應(yīng)用.清華大學(xué)出版社,2005.01賈金玲.單片機(jī)原理及應(yīng)用.電子科技大學(xué)出版社,2004.08附錄1主程序include#iiicludeinclude#iiiclude#mclude#iiiclude#mclude#defineucharunsignedchar#defineunitunsignedintuchaim;sbitlcd=P2A0;sbitDOUT=P2A3;sbitSCLK=P2A4;sbitCS=P2A5;sbitle=P2人1;sbitoe=P2A2;sbit
19、RELAY=P2人6;sbitKSO=P1AO;sbitKS1=P1A1;sbitKS2=P1A2;ucharcodeLcdBufl=Settemp:n;ucharcodeLcdBuf2=nReltemp:11;ucharVief=5;uchara6;ucharg6;unsignedcharsumout;umtSET_TEMP=650;unsignedintiead_max6675(void)unsignedchar1;unsignedintAD=0;cs=o;SCLK=0;/*輸出數(shù)據(jù)D15*/SCLK=1;foi(i=12;i0;i-)/*讀取轉(zhuǎn)換結(jié)果*/SCLK=0;if(DOUT=l)
20、AD十十;AD=AD1;/*數(shù)據(jù)左移*/SCLK=1;SCLK=0;/flag=SO;/*讀取D2斷偶標(biāo)志*7SCLK=1;SCLK=O;嚴(yán)輸出數(shù)據(jù)DI*/SCLK=1;SCLK=O;嚴(yán)輸出數(shù)據(jù)DO*/SCLK=1;CS=1;letuinAD;unsignedADC1()long1;uintq=0;l=read_max6675(j;1=(24489/4100)*l*VieR1;轉(zhuǎn)換為電壓值1=1+7500;g0=(l/10000)%10+*0*;取得整數(shù)值到數(shù)組gl=(l/1000)%10+,0,;g2=(l/100)%10+0,;a3=T;忽略小數(shù)/a4=t%10+,0,;q=(g00)*1
21、0Q+(gl0尸10+(g2卜O);letuinq;voidADCQlongt; t=read_max6675(J;t=(24489/4100)*t*VieRl;/轉(zhuǎn)換為電壓值t=t+7500;a0=(t/10000)%l0+0;取得整數(shù)值到數(shù)組al=(t/1000)%10+,0,;a2=(t/100)%10+0,;voidconstant_tempeiatuie()恒溫unitb;b=(a0-,0,)*100+(al-,0,)*10+(a2-,0,);if(b=SET_TEMP)RELAY=O;m=SET_TEMP-b;m=(unsignedcha】)(m/256);elseRELAY=1;
22、m=SET_TEMP-b;m=(unsignedcha】)(m/256);voiddelay_ms(ucharms)uniti,j;foi(i=0;ims;i+)foi0=0;jSetPoint-NextPoint;/*計(jì)算當(dāng)前偏差*/pp-SuniEnoi+=Enoi;/*積分總偏差*/dEnoi=pp-LastEnoi-pp-PrevEnor;pp-PievEnoi=pp-LastEnor;/*當(dāng)前微分*/pp-LastEnoi=Enor;retuni(NextPomt+pp-Pioponionpp-Deiivative*dEnoi);/*三個(gè)誤差值移位*/Enoi十pp-Integral
23、*pp-SumEnor十/*返回總的誤差值*/voidpid(void)PLDsPID;doublelOut;unsignedchariln;doublex;sPID.Pioportion=0.36;sPID.hitegial=0.0006;sPID.Deiivative=1.8;sPID.SetPoint=2.0;unsignedchaisumout;進(jìn)入循環(huán)檢測(cè)狀態(tài)中*/unsignedchari;rLi=ADC10;fbr(i=0;i50;i+)x=5.0*(double)ihi/256.0;lOut=PIDCalc(&sPID,x);sumout=iOut*256/5;voiddac0
24、832(out)/*定義PID結(jié)構(gòu)體變量*/*PID響應(yīng)輸出*/*PLD反饋(Input)*/*設(shè)置PED比例系數(shù)*/*設(shè)置PID積分系數(shù)*/*設(shè)置PID微分系數(shù)*/*設(shè)置PID輸出值*/*PID/*讀傳感器輸出*/*計(jì)算PID輸出*/RELAY=O;P3=out;delav(lOO);RELAY=1;voidkey(void)if(KSO=O)delay_ms(l);if(KSO=O)SET_TEMP卄;while(!KS0);if(KSl=0)delay_ms(l);if(KSl=0)SET_TEMP-;while(!KSl);display_onechar(0,9,SET_TEMP/10
25、0+,0,);display_onechar(0,i0,(SET_TEMP%100)/10十O);display_onechai(0,ll,SET_TEMP%10十O);mainQlcd_init();display_stiing(O,O,LcdBufl);display_string(1,0,LcdBuf2);Wnte_CGRAM(LcdBuf);向CGRAM寫入自定義的攝氏度符號(hào)display_onechai(0,12,0);顯示自定義的攝氏度符號(hào)display_onechar(0,13,1);顯示自定義的攝氏度符號(hào)displav_onechai(1,12,0);display_onech
26、ar(1,13,1);while(l)key();ADCO;constaiit_teniperanue();display_stfing(1、9,a);P】d();dac0832(sumout);delay_ms(100);附錄2LCD程序#ifndefLCD_1602_#deflneLCD_1602_#iiiclude#iiicludesbitLCD_RS=P2A0;sbitLCD_RW=P2A1;sbitLCD_E=P2人2;#defineLCD_DATAPOunsignedchaicodeLcdBuf=自定義漢字5X7;最大能存儲(chǔ)64個(gè)字節(jié)OxOc.Ox12,0 x12,OxOc.OxO
27、O,0 x00.0 x00,0 x00,0 x0f,0 x10,0 x10,0 x10.Ox10,0 x10.OxOfOxOO,;voiddelay(unsignedmtms)unsignedchaiy;fbi(;ms0;ms)for(y=120;y0;y-);bitlcd_busy()測(cè)試LCD忙碌狀態(tài)bitresult;LCD_RS=0;LCD_RW=1;LCD_E=1;_nop_0;_nop_0;_nop_0;_nop_0;lesult=(LCD_DATA&0 x80);LCD_E=0;retuinresult;voidWnteCommand(unsignedchaiwdata)while(lcd_
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 護(hù)理學(xué)個(gè)人工作總結(jié)
- 初一歷史老師工作總結(jié)
- 籃球賽活動(dòng)總結(jié)
- 大學(xué)生創(chuàng)業(yè)計(jì)劃
- 公司高管勞動(dòng)合同范本
- 北京課改版歷史七年級(jí)下冊(cè)第17課《統(tǒng)一多民族國(guó)家的鞏固和發(fā)展》聽(tīng)課評(píng)課記錄
- 職工崗位聘任協(xié)議書范本
- 云服務(wù)器租賃合同范本
- 八年級(jí)上冊(cè)歷史人教版同步聽(tīng)課評(píng)課記錄第24課《人民解放戰(zhàn)爭(zhēng)的勝利》
- 蘇科版數(shù)學(xué)七年級(jí)下冊(cè)《7.4 認(rèn)識(shí)三角形》聽(tīng)評(píng)課記錄4
- 市場(chǎng)營(yíng)銷中的社交媒體策略與實(shí)踐培訓(xùn)課件精
- 中煤集團(tuán)綜合管理信息系統(tǒng)運(yùn)維服務(wù)解決方案-V3.0
- 直播營(yíng)銷與運(yùn)營(yíng)(第2版)全套教學(xué)課件
- 高二英語(yǔ)閱讀理解30篇
- GB/T 42765-2023保安服務(wù)管理體系要求及使用指南
- 高教社新國(guó)規(guī)中職英語(yǔ)教材《英語(yǔ)2基礎(chǔ)模塊》英語(yǔ)2-U3-1.0
- 《工程款糾紛》課件
- 中建地下管廊豎井及矩形頂管專項(xiàng)施工方案
- 北師大版三年級(jí)數(shù)學(xué)(上冊(cè))看圖列式計(jì)算(完整版)
- 診所規(guī)章制度匯編全套
- 2024年云南省中考英語(yǔ)題庫(kù)【歷年真題+章節(jié)題庫(kù)+模擬試題】
評(píng)論
0/150
提交評(píng)論