《微機(jī)控制技術(shù)》課程設(shè)計(jì)-電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)_第1頁(yè)
《微機(jī)控制技術(shù)》課程設(shè)計(jì)-電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)_第2頁(yè)
《微機(jī)控制技術(shù)》課程設(shè)計(jì)-電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)_第3頁(yè)
《微機(jī)控制技術(shù)》課程設(shè)計(jì)-電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)_第4頁(yè)
《微機(jī)控制技術(shù)》課程設(shè)計(jì)-電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)任務(wù)書(shū)學(xué)生姓名: 陳超 專(zhuān)業(yè)班級(jí): 自動(dòng)化0803班 指導(dǎo)教師: 石云 工作單位: 自動(dòng)化學(xué)院 題 目: 電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)初始條件:設(shè)計(jì)一個(gè)電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng),系統(tǒng)為一階慣性純滯后特性,溫度控制要求為100,溫度控制精度為 1;通過(guò)LED 顯示溫度;要求完成的主要任務(wù): 1 輸入通道及輸出通道設(shè)計(jì)(溫度傳感器,A/D轉(zhuǎn)換,PWM輸出控制和溫度調(diào)節(jié)驅(qū)動(dòng)電路);2 鍵盤(pán)(溫度設(shè)置)與LED(溫度顯示)接口設(shè)計(jì);3 采用SMITH預(yù)估控制算法;4 系統(tǒng)軟件流程及各程序模塊設(shè)計(jì);5 完成符合要求的設(shè)計(jì)說(shuō)明書(shū)時(shí)間安排:2011年6月20日2010年6月30日指導(dǎo)教師簽

2、名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日目錄1 控制對(duì)象及其控制性能要求32 系統(tǒng)控制方案的比較33 微機(jī)控制系統(tǒng)總體設(shè)計(jì)44.1 溫度信號(hào)輸入通道44.1.1 溫度傳感器54.1.2 運(yùn)算放大器64.1.3 A/D轉(zhuǎn)換器64.2 執(zhí)行信號(hào)輸出通道74.3 LED顯示模塊84.4 系統(tǒng)控制器電路設(shè)計(jì)95 Smith預(yù)估控制算法106 系統(tǒng)軟件設(shè)計(jì)11小結(jié)13參考文獻(xiàn)14附錄15附錄一15附錄二22附錄三23電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì)摘要單片機(jī)具有體積小、功能強(qiáng)、成本低、應(yīng)用面廣等優(yōu)點(diǎn),可以說(shuō),智能控制與自動(dòng)控制的核心就是單片機(jī)。目前,一個(gè)學(xué)習(xí)與應(yīng)用單片機(jī)的高潮在全社會(huì)大規(guī)

3、模地興起。學(xué)習(xí)單片機(jī)的最有效方法就是理論與實(shí)踐并重,本文用89C51單片機(jī)自制了一個(gè)溫度控制系統(tǒng),重點(diǎn)介紹了該系統(tǒng)的硬件結(jié)構(gòu),即輸入通道及輸出通道、LED接口顯示與主控制器的設(shè)計(jì)及編程方法。關(guān)鍵詞:?jiǎn)纹瑱C(jī)、溫度傳感器、模/數(shù)轉(zhuǎn)換器、輸入輸出通道1 控制對(duì)象及其控制性能要求本系統(tǒng)電阻爐進(jìn)行微型計(jì)算機(jī)控制,系統(tǒng)為一階慣性純滯后特性動(dòng)態(tài)特性,溫度控制在100,溫度控制精度為1,電阻爐的溫度通過(guò)LED數(shù)碼管顯示。2 系統(tǒng)控制方案的比較控制器的選擇:本設(shè)計(jì)的控制器在PC機(jī)和單片機(jī)之間選擇單片機(jī),其原因是單片機(jī)具有集成度高,通用性好,功能強(qiáng),特別是體積小,重量輕,耗能低,可控性高,抗干擾能力強(qiáng)和使用方便等

4、獨(dú)特優(yōu)點(diǎn),在數(shù)字智能化方面有廣泛的用途。本系統(tǒng)所使用的單片機(jī)是我們熟悉的MCS51單片機(jī)中的89C51,它具有使用簡(jiǎn)便、價(jià)格便宜等諸多特點(diǎn)。溫度采集方案的選擇與比較:考慮到題目溫度要求為100,溫度傳感器采用美國(guó)DALLAS公司生產(chǎn)的 DS18B20,具有耐磨耐碰,體積小,使用方便,封裝形式多樣,適用于各種狹小空間設(shè)備數(shù)字測(cè)溫和控制領(lǐng)域,其測(cè)溫范圍 55125,固有測(cè)溫分辨率0.5,完全符合題目要求。運(yùn)算放大器選用LM324,它的功能是將傳感器的放大給A/D轉(zhuǎn)換器,不必要求太高。在A/D轉(zhuǎn)換器方面,選用8位A/D轉(zhuǎn)換器ADC0809。3 微機(jī)控制系統(tǒng)總體設(shè)計(jì)單片機(jī)溫度控制系統(tǒng)是以89C51單片

5、機(jī)為控制核心,輔以采樣反饋電路,驅(qū)動(dòng)電路,晶閘管主電路對(duì)電爐爐溫進(jìn)行控制的微機(jī)控制系統(tǒng)。其系統(tǒng)基本控制原理為:將溫度設(shè)定值(即100)和溫度反饋值同時(shí)送入控制電路部分,然后經(jīng)過(guò)調(diào)節(jié)器運(yùn)算得到輸出控制量,輸出控制量控制驅(qū)動(dòng)電路得到控制電壓施加到被控對(duì)象上,電爐因此達(dá)到規(guī)定的溫度。結(jié)構(gòu)圖如圖3-1所示:圖3-1 電阻爐控制系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)圖4.1 溫度信號(hào)輸入通道溫度信號(hào)輸入通道的原理圖如圖4-1所示。電路主要由溫度傳感器、運(yùn)算放大器和模/數(shù)(A/D)轉(zhuǎn)換器三部分組成。本方案比采用溫度變送器的方案結(jié)構(gòu)簡(jiǎn)單,體積小,價(jià)格低。圖4-1 溫度輸入信號(hào)通道4.1.1 溫度傳感器溫度傳感器采用美國(guó)DALLA

6、S公司生產(chǎn)的集成化半導(dǎo)體傳感器 DS18B20。集成化傳感器是新型器件,它比直接用一個(gè)PN結(jié)作傳感器靈敏度高,線(xiàn)性好,使用方便。DS18B20的工作溫度為55125。其輸出電流根據(jù)下式計(jì)算: ISET=T227I/KRSET式中:ISET為流進(jìn)DS18B20 V+腳的電流,單位為A;T為熱力學(xué)溫度;RSET為傳感器外接電阻,單位為。若取227,則 ISET=T1(A/K)考慮到引線(xiàn)電阻對(duì)外接電阻的影響,通常將RSET與DS18B20一起安放在探頭內(nèi),這樣即使長(zhǎng)線(xiàn)傳輸也不會(huì)降低精度,從而可以遙測(cè)溫度。圖4-1中,RL為傳感器的負(fù)載電阻,它把傳感器輸出的電流信號(hào)轉(zhuǎn)換為電壓信號(hào)。在RSET=227條

7、件下,如果取10k,則溫度信號(hào)電壓Vout=ISETRL=227TRL/RSET=10T(mV/K)可見(jiàn)溫度信號(hào)電壓的增益,即Vout-T曲線(xiàn)的斜率,取決于比值RL/RSET。增益調(diào)節(jié)可在RSET上進(jìn)行,也可以在RL上進(jìn)行,這有利于RSET的選用與制造。調(diào)試時(shí)可選定RSET,本通道選系列值230;然后用實(shí)測(cè)Vout的方法,在標(biāo)稱(chēng)值為10k的金屬膜電阻中篩選出RL,使增益達(dá)到10mV/K。增益校正可在冷端溫度為0(冰水),或在室溫條件下進(jìn)行。圖4-1中W0是一種多圈式精密電位器,用作起點(diǎn)補(bǔ)償電壓調(diào)整,其輸出電壓等于起點(diǎn)溫度時(shí)的信號(hào)電壓,本系統(tǒng)起點(diǎn)溫度為室溫(大約27)。4.1.2 運(yùn)算放大器運(yùn)算

8、放大器采用差動(dòng)運(yùn)算放大器LM324,不需外接元件,使用方便。LM324對(duì)輸入信號(hào)的電壓V+和V-作差動(dòng)放大。本系統(tǒng)中V+即為補(bǔ)償電壓,V-即為傳感器溫度信號(hào)電壓??梢缘贸鲞\(yùn)放的輸出電壓V0為V0=1+RfR1R3R2+R3V+-RfR1V-為了使后面的A/D轉(zhuǎn)換器得到合適的輸入模擬電壓,本系統(tǒng)選取R1=R2=100k,R3=Rf=200k。4.1.3 A/D轉(zhuǎn)換器ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,它由8路模擬開(kāi)關(guān)、地址鎖存與譯碼器、比較器、8位開(kāi)關(guān)樹(shù)型DA轉(zhuǎn)換器、逐次逼近 寄存器、三態(tài)輸出鎖存器等其它一些電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態(tài)輸出能力,

9、既可與各種微處理器相連,也可單獨(dú)工作。輸入輸 出與TTL兼容。ADC0809A/D轉(zhuǎn)換芯片引腳圖如下圖3所示。溫度信號(hào)輸入通道的總增益由溫度傳感器、運(yùn)放和A/D轉(zhuǎn)換器三個(gè)環(huán)節(jié)的增益所決定。在本系統(tǒng)中,由于溫度要求100是固定的,這三個(gè)環(huán)節(jié)的增益也是固定的。這樣有利于整個(gè)通道在設(shè)計(jì)和安裝時(shí),避免不必要的精度誤差和偏差。4.2 執(zhí)行信號(hào)輸出通道為了簡(jiǎn)化輸出通道的硬件結(jié)構(gòu),考慮到加熱系統(tǒng)具有較大的熱慣性,即一階慣性純滯后特性動(dòng)態(tài)特性,本系統(tǒng)采用脈沖寬度調(diào)制(PWM)的控制方法。單片機(jī)輸出控溫信號(hào):輸出高電平時(shí),使雙向可控硅導(dǎo)通,電熱絲通電;輸出低電平時(shí),雙向可控硅截止,電熱絲斷電。脈沖寬度T1與周期

10、T的比值為P,它反映了系統(tǒng)的輸出控制量。執(zhí)行信號(hào)輸出通道的原理圖如圖4-2所示,單片機(jī)系統(tǒng)AT89C51的P2.5口輸出信號(hào)經(jīng)過(guò)光電耦合器,直接控制雙向可控硅的門(mén)極,從而控制電熱絲的平均加熱功率。這樣使輸出通道省去了數(shù)/模(D/A)轉(zhuǎn)換器和可控硅一項(xiàng)觸發(fā)電路,大大簡(jiǎn)化了硬件;而且可控硅工作在過(guò)零觸發(fā)狀態(tài),提高了設(shè)備的功率因數(shù),減輕了對(duì)電網(wǎng)的干擾。AT89C51的I/O腳的負(fù)載能力不足以驅(qū)動(dòng)光電耦合器的發(fā)光二極管,所以用1413的一路作為功放。光電耦合器的光敏二極管所能通過(guò)的電流足以觸發(fā)5A的雙向可控硅,其間不必加功放環(huán)節(jié),其中對(duì)可控硅可用負(fù)極性觸發(fā)。圖4-2 執(zhí)行輸出信號(hào)控制通道觸發(fā)電路6V不

11、必采用穩(wěn)壓,只需一般的阻容濾波即可,但不能與單片機(jī)基本系統(tǒng)5V電源相通。可控硅門(mén)極回路與220V電源相通,光電耦合器的結(jié)緣耐壓能有效地把單片機(jī)系統(tǒng)與220V強(qiáng)電隔離。4.3 LED顯示模塊設(shè)計(jì)中用到四個(gè)LED數(shù)碼管顯示器,型號(hào)為7SEGMPX4CA。LED有共陰、共陽(yáng)數(shù)碼管兩種,使用LED顯示器時(shí),要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對(duì)數(shù)字或字符進(jìn)行編碼。七段數(shù)碼管加上一個(gè)小數(shù)點(diǎn),共計(jì)8段。因此為L(zhǎng)ED顯示器提供的編碼正好是一個(gè)字節(jié)。顯示模塊電路圖如圖4-3所示。本部分用到LED顯示器,其工作方式有兩種:靜態(tài)顯示方式和動(dòng)態(tài)顯示方式。LED數(shù)碼管,其原理和數(shù)字表掃描顯示的原理一致

12、即采用動(dòng)態(tài)顯示,動(dòng)態(tài)顯示的特點(diǎn)是將所有數(shù)碼管的段選線(xiàn)并聯(lián)在一起,由位選線(xiàn)控制是哪一位數(shù)碼管有效。選擇導(dǎo)通數(shù)碼管的方式是采用動(dòng)態(tài)掃描顯示。所謂動(dòng)態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺(jué)暫留作用,使人的感覺(jué)好像各位數(shù)碼管同時(shí)都在顯示。動(dòng)態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時(shí)應(yīng)略小于靜態(tài)顯示電路的。 圖4-3 顯示模塊電路圖4.4 系統(tǒng)控制器電路設(shè)計(jì)圖4-4 單片機(jī)控制器單片機(jī)控制系統(tǒng)原理圖如圖4-4所示。微處理器采用51系列單片機(jī)AT89C51。單片機(jī)系統(tǒng)的硬件結(jié)構(gòu)簡(jiǎn)單,調(diào)試方便。單片機(jī)系統(tǒng)主要I/O口的分配如下:89C51的P1口為溫度信號(hào)的輸

13、入口,P0口為溫度顯示信號(hào)數(shù)據(jù)輸出,P2口的P2.0端到P2.3端為顯示信號(hào)的掃描,P2.4端口為執(zhí)行信號(hào)輸出口。5 SMITH預(yù)估控制算法 如圖5-1,在所示的單回路控制系統(tǒng)中,D(s)表示控制器的傳遞函數(shù),用于校正部分;表示被控對(duì)象的傳遞函數(shù),為表示被控制對(duì)象中不包含純滯后部分的傳遞函數(shù),為被控制對(duì)象純滯后部分的傳遞函數(shù)。u(t)e(t)y(t)D(s)圖5-1 帶純滯后環(huán)節(jié)的控制系統(tǒng) 令=,為被控對(duì)象的放大系數(shù),;為被控對(duì)象的時(shí)間常數(shù);為純滯后時(shí)間。由圖5-2可見(jiàn),純滯后補(bǔ)償?shù)臄?shù)字控制器由兩部分組成:一部分是數(shù)字PID控制器(由(s)離散化得到);一部分是施密斯預(yù)估器。r(t)u (k)

14、e2(t)e1(t)y (t)數(shù)字PID Tyr(t)圖5-2 具有純滯后補(bǔ)償?shù)目刂葡到y(tǒng)施密斯預(yù)估器的輸出可按圖5-3的順序計(jì)算:yr(k)u (k)m (k)m(k-N)圖5-3 史密斯預(yù)估器框圖圖中,u(k)是PID數(shù)字控制的輸出,y(k)是施密斯預(yù)估的輸出。從圖中可知,必須先計(jì)算傳遞函數(shù)Gc(s)的輸出m(k)后,才能計(jì)算預(yù)估器的輸出yk=mk-m(k-N)預(yù)估器的傳遞函數(shù)為Gs=GPs(1-e-s)=Kf1+Tfs(1-e-s) 反饋回路偏差: 純滯后補(bǔ)償器的輸出 : 其中 ,上式稱(chēng)為施密斯預(yù)估控制算式。 偏差: 控制器的輸出:式中,為PID控制的比例系數(shù);為積分系數(shù);為微分系數(shù)。在純

15、滯后補(bǔ)償控制算法中,相對(duì)于標(biāo)準(zhǔn)的PID算法,只是加入了補(bǔ)償環(huán)節(jié),可以采用PID的方式來(lái)處理。為了提高控制質(zhì)量,我們對(duì)其進(jìn)行改進(jìn),采用所謂的積分分離的PID位置式算法。當(dāng)偏差絕對(duì)值小于某一預(yù)定門(mén)限時(shí),采用標(biāo)準(zhǔn)的PID算法:式中:為系統(tǒng)控制量,為第i-1次偏差,T為采樣周期,為積分時(shí)間,k為比例系數(shù),為系統(tǒng)基準(zhǔn)控制量。當(dāng)偏差絕對(duì)值大于這一預(yù)定門(mén)限時(shí),舍去積分項(xiàng)的運(yùn)算。6 系統(tǒng)軟件設(shè)計(jì)系統(tǒng)主程序初始化時(shí),允許INT0中斷,并設(shè)置為邊沿觸發(fā)方式,ADC0809 EOC為中斷請(qǐng)求信號(hào)口,中斷服務(wù)程序把“轉(zhuǎn)換結(jié)束”標(biāo)志置位時(shí),采用查詢(xún)的方式,根據(jù)ADC0809的D0D7的信息分別進(jìn)行處理和存放。程序的每次

16、循環(huán),只讀入一組數(shù)據(jù)。為了削弱干擾和純滯后帶來(lái)的影響,程序采用純滯后補(bǔ)償?shù)姆椒ǎ碨MITH預(yù)估控制,對(duì)讀入信號(hào)進(jìn)行平滑加工。顯示更新程序把濾波后的溫度從單片機(jī)的P0輸送到顯示接口電路。圖6-1 控制系統(tǒng)的主流程圖程序還對(duì)系統(tǒng)控制量作上、下限幅,使輸出脈沖寬度與脈沖周期的比值p的范圍為5%95%。本系統(tǒng)中的脈沖周期取10s,與采樣周期相同,這樣與電熱元件并聯(lián)的指示燈始終閃爍發(fā)光,這是系統(tǒng)正常工作的一種標(biāo)志。操作人員還可以從亮、暗時(shí)間的比例,方便地了解系統(tǒng)的控制量。控制系統(tǒng)主流程圖如圖6-1所示。小結(jié)首先,通過(guò)這次電阻爐微型計(jì)算機(jī)溫度控制系統(tǒng)的設(shè)計(jì),我學(xué)到了不少的知識(shí)。把以前沒(méi)有學(xué)好的程序?qū)I(yè)知

17、識(shí)進(jìn)行了補(bǔ)充和加強(qiáng),加深了我對(duì)于單片機(jī)和數(shù)字電路的認(rèn)識(shí),鞏固了自己的專(zhuān)業(yè)知識(shí),相信在以后的學(xué)習(xí)和工作中碰到這些基礎(chǔ)的元器件我會(huì)更加得心應(yīng)手。此系統(tǒng)所采用的單片機(jī)具有集成度高,通用性好,功能強(qiáng),特別是體積小,重量輕,耗能低,可靠性高,抗干擾能力強(qiáng)和使用方便等優(yōu)點(diǎn),在數(shù)字和智能化等方面有廣泛的用途。本測(cè)控系統(tǒng)設(shè)計(jì)采用的是具有純滯后補(bǔ)償?shù)腟MITH控制算法,保證了控制系統(tǒng)的控制精度、抗干擾能力、穩(wěn)定性等性能。通過(guò)查閱大量的資料,我獲得了以前在課堂上學(xué)不到的東西,也體驗(yàn)到了學(xué)知識(shí)和應(yīng)用知識(shí)之間的差距,我想這對(duì)于以后的畢業(yè)設(shè)計(jì),或者工作也好,都是很有幫助的。雖然,在某些方面仍然做得不足或考慮不到,但是我

18、覺(jué)得這是很正常的,只要認(rèn)真對(duì)待,盡力去完成即可。我很認(rèn)真地對(duì)待這個(gè)過(guò)程中的每一個(gè)細(xì)節(jié),希望自己能做得更好。希望今后還有這樣的機(jī)會(huì),能夠讓我學(xué)到更多的知識(shí)。參考文獻(xiàn)1譚浩強(qiáng). C程序設(shè)計(jì). 北京:清華大學(xué)出版社. 2005.2于海生.計(jì)算機(jī)控制技術(shù).北京:機(jī)械工業(yè)出版社,2007.3陳立周、陳宇.單片機(jī)原理及其應(yīng)用.北京:機(jī)械工業(yè)出版社,2006.4劉紅麗、張菊秀. 傳感與檢測(cè)技術(shù). 國(guó)防工業(yè)出版社. 2007.5陳明熒. 8051單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材. 北京:清華大學(xué)出版社. 2004附錄附錄一#include#include#include#includestruct PID unsign

19、ed int SetPoint; / 設(shè)定目標(biāo) Desired Valueunsigned int Proportion; / 比例常數(shù) Proportional Constunsigned int Integral; / 積分常數(shù) Integral Constunsigned int Derivative; / 微分常數(shù) Derivative Constunsigned int LastError; / Error-1unsigned int PrevError; / Error-2unsigned int SumError; / Sums of Errors;struct PID spid

20、; / PID Control Structureunsigned int rout; / PID Response (Output)unsigned int rin; / PID Feedback (Input)sbit data1=P10;sbit clk=P11;sbit plus=P20;sbit subs=P21;sbit stop=P22;sbit output=P34;sbit DQ=P33;unsigned char flag,flag_1=0;unsigned char high_time,low_time,count=0;/占空比調(diào)節(jié)參數(shù)unsigned char set_

21、temper=35; unsigned char temper; unsigned char i;unsigned char j=0;unsigned int s;/*延時(shí)子程序,延時(shí)時(shí)間以12M晶振為準(zhǔn),延時(shí)時(shí)間為30ustime*/void delay(unsigned char time) unsigned char m,n; for(n=0;ntime;n+) for(m=0;m2;m+) /*獲取溫度子程序*/void get_temper() unsigned char i,j; do i=reset(); /*復(fù)位*/ while(i!=0); /*1為無(wú)反饋信號(hào)*/ i=0xc

22、c; /*發(fā)送設(shè)備定位命令*/ write_byte(i); i=0x44; /*發(fā)送開(kāi)始轉(zhuǎn)換命令*/ write_byte(i); delay(180); /*延時(shí)*/ do i=reset(); /*復(fù)位*/ while(i!=0); i=0xcc; /*設(shè)備定位*/ write_byte(i); i=0xbe; /*讀出緩沖區(qū)內(nèi)容*/ write_byte(i); j=read_byte(); i=read_byte(); i=(i4; temper=i|j; /*獲取的溫度放在temper中*/ /*Smith控制算法*/void SMITHInit (struct SMITH *pp

23、) memset ( pp,0,sizeof(struct SMITH);/*SMITH計(jì)算部分*/unsigned int SMITHCalc( struct SMITH *pp, unsigned int NextPoint )unsigned int dError,Error;Error = pp-SetPoint - NextPoint; / 偏差pp-SumError += Error; / 積分dError = pp-LastError - pp-PrevError; / 當(dāng)前微分pp-PrevError = pp-LastError;pp-LastError = Error;re

24、turn (pp-Proportion * Error / 比例項(xiàng)+ pp-Integral * pp-SumError / 積分項(xiàng)+ pp-Derivative * dError); / 微分項(xiàng)/*溫度比較處理子程序*/compare_temper() unsigned char i; if(set_tempertemper) if(set_temper-temper1) high_time=100; low_time=0; else for(i=0;i10;i+) get_temper(); rin = s; / Read Input rout = PIDCalc ( &spid,rin

25、); / Perform PID Interation if (high_time=100) high_time=(unsigned char)(rout/800); else high_time=100; low_time= (100-high_time); else if(set_temper0) high_time=0; low_time=100; else for(i=0;i10;i+) get_temper(); rin = s; / Read Input rout = PIDCalc ( &spid,rin ); / Perform PID Interation if (high_

26、time100) high_time=(unsigned char)(rout/10000); else high_time=0; low_time= (100-high_time); / else / /*T0中斷服務(wù)子程序,用于控制電平的翻轉(zhuǎn) ,40us*100=4ms周期*/void serve_T0() interrupt 1 using 1 if(+count=(high_time) output=1; else if(count=100) output=0; else count=0; TH0=0x2f; TL0=0xe0; /*顯示子程序*/void display() unsi

27、gned char code number=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6; unsigned char disp_num6; unsigned int k,k1; k=high_time; k=k%1000; k1=k/100; if(k1=0) disp_num0=0; else disp_num0=0x60; k=k%100; disp_num1=numberk/10; disp_num2=numberk%10; k=temper; k=k%100; disp_num3=numberk/10; disp_num4=num

28、berk%10+1; disp_num5=numbers/10; disp_1(disp_num); /*主程序*/ main() unsigned char z; unsigned char a,b,flag_2=1,count1=0; unsigned char phil=2,0xce,0x6e,0x60,0x1c,2; TMOD=0x21; TH0=0x2f; TL0=0x40; SCON=0x50; PCON=0x00; TH1=0xfd; TL1=0xfd; PS=1; EA=1; EX1=0; ET0=1; ES=1; TR0=1; TR1=1; high_time=50; low

29、_time=50; PIDInit ( &spid ); / Initialize Structure spid.Proportion = 10; / Set PID Coefficients spid.Integral = 8; spid.Derivative =6; spid.SetPoint = 100; / Set PID Setpoint while(1) if(plus=0) EA=0; for(a=0;a5;a+) for(b=0;b102;b+) if(plus=0) set_temper+; flag=0; else if(subs=0) for(a=0;a5;a+) for(b=0;a102;b+) if(subs=0) set_temper-; flag=0; else if(stop=0) for(a=0;a5;a+) for(b=0;b5) temper=a; else temper=b; a=temper; flag_2=0; if(+count130) display(); count1=0; compare_temper(); TR0=0; z=1; while(1) EA=0;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論