電阻爐溫度控制系統(tǒng)設(shè)計(jì)_第1頁
電阻爐溫度控制系統(tǒng)設(shè)計(jì)_第2頁
電阻爐溫度控制系統(tǒng)設(shè)計(jì)_第3頁
電阻爐溫度控制系統(tǒng)設(shè)計(jì)_第4頁
電阻爐溫度控制系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

1、目錄TOC o 1-3 h z u HYPERLINK l _Toc296512496 摘要 PAGEREF _Toc296512496 h 三 HYPERLINK l _Toc296512497 一、總體設(shè)計(jì)及系統(tǒng)原理 PAGEREF _Toc296512497 h 三 HYPERLINK l _Toc296512498 2.硬件電路設(shè)計(jì) PAGEREF _Toc296512498 h 四 HYPERLINK l _Toc296512499 2.1 主機(jī)電路 PAGEREF _Toc296512499 h 四的設(shè)計(jì) HYPERLINK l _Toc296512500 2.2 數(shù)據(jù)采集電路設(shè)計(jì)

2、 PAGEREF _Toc296512500 h 五 HYPERLINK l _Toc296512501 2.3 電控執(zhí)行電路設(shè)計(jì) PAGEREF _Toc296512501 h 五 HYPERLINK l _Toc296512502 2.4 鍵盤顯示 PAGEREF _Toc296512502 h 六設(shè)計(jì) HYPERLINK l _Toc296512503 3.系統(tǒng)軟件設(shè)計(jì)。 PAGEREF _Toc296512503 h 七 HYPERLINK l _Toc296512504 3.1 主程序模塊 PAGEREF _Toc296512504 h 七 HYPERLINK l _Toc29651

3、2505 3.2 功能實(shí)現(xiàn)模塊 PAGEREF _Toc296512505 h 八 HYPERLINK l _Toc296512506 3.2.1 T0中斷子程序 PAGEREF _Toc296512506 h 八 HYPERLINK l _Toc296512507 3.2.2 T1中斷程序 PAGEREF _Toc296512507 h 九 HYPERLINK l _Toc296512508 3.3 運(yùn)行控制模塊 PAGEREF _Toc296512508 h 九 HYPERLINK l _Toc296512509 3.3.1 比例轉(zhuǎn)換子程序 PAGEREF _Toc296512509 h

4、九 HYPERLINK l _Toc296512510 3.3.2 PID算法子程序 PAGEREF _Toc296512510 h 九 HYPERLINK l _Toc296512511 4.源代碼 PAGEREF _Toc296512511 h 10 HYPERLINK l _Toc296512512 5、結(jié)果分析與討論。 PAGEREF _Toc296512512 h 15 HYPERLINK l _Toc296512513 6. 參考文獻(xiàn) PAGEREF _Toc296512513 h 15摘要電阻爐是一種工業(yè)爐,是一種利用電流通過電熱元件將電能轉(zhuǎn)化為熱能,加熱或熔化元件或材料的熱加工

5、設(shè)備。電阻爐由爐體、電氣控制系統(tǒng)和輔助系統(tǒng)組成。爐體由爐殼、加熱器、爐襯(含隔熱罩)等部件組成。由于爐子的種類不同,所用的燃料和加熱方式也不同;由于工藝不同,所需溫度不同,所采用的測(cè)溫元件和方法也不同。不同的產(chǎn)品對(duì)控溫精度的要求不同,所以控制系統(tǒng)的組成也不同。電氣控制系統(tǒng)包括主機(jī)及外圍電路、儀表顯示等。輔助系統(tǒng)通常指?jìng)鲃?dòng)系統(tǒng)、真空系統(tǒng)、冷卻系統(tǒng)等,隨爐型不同而有所差異。介紹了基于AT89S52單片機(jī)的溫度控制器的設(shè)計(jì)。本設(shè)計(jì)采用高精度溫度傳感器AD590實(shí)時(shí)測(cè)量電鍋爐溫度,采用超低溫漂高精度運(yùn)算放大器OP07放大溫度-電壓信號(hào),即然后送入12位AD進(jìn)行A/D轉(zhuǎn)換,從而實(shí)現(xiàn)自動(dòng)檢測(cè)、實(shí)時(shí)顯示和超

6、限報(bào)警。控制部分采用PID算法,實(shí)時(shí)更新PWM控制的輸出參數(shù),控制可控硅的通斷時(shí)間,最終實(shí)現(xiàn)爐溫的高精度控制。574A一、總體設(shè)計(jì)及系統(tǒng)原理溫度控制是工業(yè)生產(chǎn)中常見的過程控制。一些工藝流程的控溫效果直接影響產(chǎn)品的質(zhì)量,因此設(shè)計(jì)一個(gè)理想的控溫系統(tǒng)非常有價(jià)值。根據(jù)課題要求,電鍋爐溫度控制系統(tǒng)由核心處理模塊、溫度采集模塊、鍵盤顯示模塊、控制執(zhí)行模塊組成。電路以AT89S52單片機(jī)為控制核心,采用12位高精度模數(shù)轉(zhuǎn)換器AD進(jìn)行數(shù)據(jù)轉(zhuǎn)換。 PWM用于控制電路中可控硅的通斷,以連續(xù)控制鍋爐溫度。溫度控制采用改進(jìn)的PID數(shù)字控制算法,顯示采用3位LED靜態(tài)顯示。設(shè)計(jì)結(jié)構(gòu)簡(jiǎn)單,控制算法新穎,控制精度高,通用性

7、強(qiáng),因此系統(tǒng)設(shè)計(jì)總體框圖如下:574AAT5189CSingle-Chip Microcomputerkeyboardshowsensorelectric resistance furnaceTemperature detectioncircuitTemperature control圖(1)系統(tǒng)設(shè)計(jì)總體框圖2、硬件電路設(shè)計(jì)2.1 主機(jī)電路設(shè)計(jì)選用ATMEL公司的51系列單片機(jī)AT89S52作為主機(jī)。憑借單片機(jī)軟件編程靈活、自由度大的特點(diǎn),試圖通過軟件來完善各種控制算法和邏輯控制。本系統(tǒng)選用的AT89S52芯片時(shí)鐘為12MHz,運(yùn)算速度快,控制功能完善。一部分有128字節(jié)的RAM,一部分包含4

8、KB的flash ROM,無需外接擴(kuò)展存儲(chǔ)器,使系統(tǒng)的整體結(jié)構(gòu)更加簡(jiǎn)單實(shí)用。其示意圖如下:圖(2)單片機(jī)最小系統(tǒng)2.2 數(shù)據(jù)采集電路設(shè)計(jì)就本系統(tǒng)而言,需要實(shí)時(shí)采集水溫?cái)?shù)據(jù),然后通過A/D轉(zhuǎn)換成數(shù)字信號(hào),發(fā)送到單片機(jī)中的特定單元,再進(jìn)行一部分被送去展示;另一部分與設(shè)定值比較,通過PID算法得到控制量,單片機(jī)的輸出用于控制電鍋爐的加熱或冷卻。數(shù)據(jù)采集電路主要由AD590、0P07、74LS373、AD等組成。由于要求控制精度為0.1度,考慮到測(cè)量干擾和數(shù)據(jù)處理誤差,溫度傳感器和AD轉(zhuǎn)換器的精度要更高保證控制精度的實(shí)現(xiàn),可大致設(shè)定在0.1度。因此,溫度傳感器需要能夠區(qū)分0.1度;至于AD轉(zhuǎn)換器,由于

9、測(cè)量范圍為40-90度,響應(yīng)的AD判別要求為0.1度,所以AD需要區(qū)分(90-40)/0.1=500個(gè)數(shù)字量,顯然需要10多個(gè)AD轉(zhuǎn)換器。因此選擇高精度的 12 位 AD。為了滿足高測(cè)量精度的要求,選用溫度傳感器ad590,它具有較高的精度和重復(fù)性(重復(fù)性優(yōu)于0。其良好的非線性可以保證測(cè)量精度優(yōu)于0。測(cè)量精度可以通過非線性補(bǔ)償。)超低溫漂高精度運(yùn)算放大器0P07對(duì)溫度-電壓信號(hào)進(jìn)行放大,便于A/D轉(zhuǎn)換,提高了溫度采集電路的可靠性。模擬電路的硬件部分如下圖所示:574A574A110.1圖 3. 溫度-電壓轉(zhuǎn)換電路2.3 電控執(zhí)行電路設(shè)計(jì)輸出控制電爐,電爐可近似建立為具有滯后的一階慣性鏈接數(shù)學(xué)模

10、型。其傳遞函數(shù)形式為: QUOTE 其中時(shí)間常數(shù)T=350秒,放大系數(shù)K=50,滯后時(shí)間t=10秒。 SCR可以被認(rèn)為是控制爐溫的線性鏈接。單片機(jī)的輸出和電爐的電源分別屬于弱電和強(qiáng)電,需要隔離。這里控制部分采用光耦合元件TLP521進(jìn)行光電隔離,采用變壓器隔離實(shí)現(xiàn)弱電和強(qiáng)電的電源隔離。當(dāng)單片機(jī)PWM輸出電平為0時(shí),光耦合元件導(dǎo)通,使三極管有效偏置導(dǎo)通。通過整流橋的電壓經(jīng)過集電極電阻向發(fā)射極反方向偏置,在雙向晶閘管的控制端加一個(gè)7V左右的電壓,使晶閘管導(dǎo)通,交流通路形成,電阻爐工作。反之,當(dāng)單片機(jī)輸出電平為0時(shí),光耦元件不能導(dǎo)通,三極管不能有效偏置關(guān)斷,晶閘管端電壓幾乎為零,晶閘管關(guān)斷切斷交流通

11、道,電爐停止工作。另外,有超限報(bào)警,當(dāng)溫度低于下限時(shí),LED燈亮;當(dāng)上限高時(shí),蜂鳴器響起。控制執(zhí)行部分的硬件電路如下圖所示。圖 4 控制執(zhí)行部分電路2.4 鍵盤顯示設(shè)計(jì)按鍵的響應(yīng)是通過中斷來實(shí)現(xiàn)的。 AN3按鍵與P3.2相連,采用外部中斷方式,優(yōu)先級(jí)最高; AN5、AN4按鍵分別接P1.7、P1.6,通過軟件查詢。 1為硬件復(fù)位鍵,與R、C組成復(fù)位電路。其功能定義如表1所示。按鈕鍵名功能AN1重置鍵重置系統(tǒng)AN4添加密鑰設(shè)定溫度逐漸增加一。AN5減一鍵設(shè)定溫度逐漸減一。1 表鍵功能采用3位共陽極LED靜態(tài)顯示方式,顯示溫度值的十位、一位、小數(shù)點(diǎn)后一位,只能使用P3.0(RXD)口輸出溫度值顯示

12、數(shù)據(jù),從而節(jié)省單片機(jī)的端口資源。在P1.4端口和P3.1(TXD)的控制下,由74LS164實(shí)現(xiàn)3位靜態(tài)顯示。數(shù)字電路的硬件部分如圖5所示:圖(5)數(shù)字硬件電路示意圖3.系統(tǒng)軟件設(shè)計(jì)。系統(tǒng)軟件由三個(gè)模塊組成:主程序模塊、功能實(shí)現(xiàn)模塊和運(yùn)行控制模塊。3.1 主程序模塊主程序流程圖如圖6所示:圖(6)主程序流程圖3.2 功能實(shí)現(xiàn)模塊功能模塊主要由A/D轉(zhuǎn)換子程序、中斷處理子程序、鍵盤處理子程序、顯示子程序等組成,用于控制可控硅和電爐。3.2.1T0 中斷子程序該中斷是單片機(jī)的100ms定時(shí)中斷,優(yōu)先級(jí)最高,是最重要的子程序。在這個(gè)中斷響應(yīng)中,單片機(jī)應(yīng)該完成調(diào)用PID算法子程序和輸出PID計(jì)算結(jié)果的

13、功能。流程圖如下:圖 7:t0 中斷子程序3.2.2T1中斷子程序T1 中斷用于調(diào)制PWM 信號(hào),其優(yōu)先級(jí)低于T 0 中斷。其時(shí)序初值由PID算法子程序提供的輸出轉(zhuǎn)換而來,T1中斷響應(yīng)時(shí)間用于輸出控制信號(hào)。流程圖如圖(8)所示:圖(8)T1中斷子程序3.3 運(yùn)行控制模塊3.3.1比例轉(zhuǎn)換子程序該子程序的作用是將溫度信號(hào)(00HFFH)轉(zhuǎn)換為相應(yīng)的溫度值,以顯示或與同維度的設(shè)定值進(jìn)行比較。使用的線性尺度變換公式為:式中,Ax:實(shí)測(cè)溫度值; Nx:A/D轉(zhuǎn)換后的溫度; Am =90; Ao=40; Nm =FEH; No=01H。 單片機(jī)采用定點(diǎn)計(jì)算,高溫區(qū)和低溫區(qū)分別用程序進(jìn)行校正。3.3.2

14、PID算法子程序系統(tǒng)控制采用工業(yè)上常用的位置PID數(shù)字控制,并結(jié)合具體系統(tǒng)對(duì)算法進(jìn)行改進(jìn),形成變速積分PID與積分分離PID控制相結(jié)合的自動(dòng)辨識(shí)控制算法。該方法不僅大大降低了超調(diào),而且有效地克服了積分飽和的影響,大大提高了控制精度。由上式得到的PID參數(shù)為u(k)=Q0e(k)+Q1E(k-1)+Q2e(k-2),因此可以計(jì)算出數(shù)字PID增量控制算法的參數(shù):q0=120 , q1=-240, q2=120。 PID控制算法流程圖如下(9):圖 9 為 9)PID 控制算法流程圖4. 源代碼#include #include PID.h#define AD_Data P0無符號(hào)字符 ADConv

15、ert(void);sbit AD_Start=P20;位 AD_EOC=P21;位 Ctrl=P34;位 SW=P23;sbit outpin=P10;unsigned char const DisCode10 = 0 x,0 x06,0 x5B,0 x,0 x66,0 x6D,0 x7D,0 x07,0 x,0 x,;3F4F7F6F無符號(hào)字符常量狀態(tài)10 = 0 xb7,0 xf8,0 xf3; /n,t,p,i,d ,0 xb0,0 xdeunsigned int tep,step=300,s_ulCycle,s_uiHighTime,s_uiLowTime,Freq,value,Sc

16、ale;無符號(hào)長(zhǎng) longtemp,longtemp1,longtemp2;無符號(hào)字符 i=0;位 s_bStatus=0;無符號(hào)字符 ADConvert(void);無效顯示(無符號(hào)整數(shù) num1,無符號(hào)整數(shù) num2);無效延遲(無符號(hào)整數(shù)延遲時(shí)間);無效 EX_init();void PWM_Set(unsigned int uiFreq, unsigned char ucScale);主要的()無符號(hào)長(zhǎng)溫度=0,溫度1=0;Ctrl=0;EX_init();初始化_pid_value();而(1)溫度=ADConvert();溫度=溫度*400/256;if(溫度360)|(溫度 10

17、0) / 占空比不能大于 100%返回;s_ulCycle = 921600/uiFreq;longtemp1 = s_ulCycle;longtemp2 = ucScale;longtemp = 65535-(longtemp1*longtemp2/100);s_uiHighTime =longtemp;longtemp = 65535-(longtemp1*(100 - longtemp2)/100);s_uiLowTime = longtemp;無效 PWM_Tm1ISR(無效) 中斷 1TR0 = 0;s_bStatus= s_bStatus; /取反標(biāo)志位,表示本次輸出的高電平或低電

18、平。if(s_bStatus) /輸出高電平TH0 = s_uiHighTime8;TL0 = s_uiHighTime;輸出 = 1;else /輸出低電平TH0 = s_uiLowTime8;TL0 = s_uiLowTime;輸出 = 0;TR0 = 1;無效 EX_init()EA=1;TMOD=0 x11; /T0,T1都使用16位定時(shí)器,不受外部引腳電平控制。ET0=1;ET1=1;EX0=1;IT0=1;EX1=1;IT1=1;TH0=s_uiLowTime8;TL0=s_uiLowTime; /Timer0 給出初始值。TR0=1; /啟動(dòng)定時(shí)器0TH1=0 x4b;TL1=0

19、 xff; /定時(shí)50msTR1=1;void PID_Ctrler(void) 中斷 3TH0=0 x4b;TL0=0 xff;如果(i=1)i=0;值=ypid(步,步); 否則我+;void EX0_int(void) 中斷 0如果(SW)步驟+;否則步驟+=10;void EX1_int(void) 中斷 2如果(SW)步;否則步驟-=10;無效顯示(無符號(hào)整數(shù) num1,無符號(hào)整數(shù) num2)P2=0 xa0;延遲(5); SBUF=DisCodenum1/100;延遲(100);P2=0 x20;延遲(5); SBUF=DisCodenum1%100/10;延遲(100);P2=0

20、 xc0;延遲(5); SBUF=DisCodenum1%10;延遲(100);P2=0 x40;延遲(5); SBUF=DisCodenum2/100;延遲(100);P2=0 x80;延遲(5); SBUF=DisCodenum2%100/10;延遲(100);P2=0 x00;延遲(5); SBUF=DisCodenum2%10;延遲(100);P2=0 xe0;延遲(5); SBUF=狀態(tài)0;延遲(100);P2=0 x60;延遲(5); SBUF=狀態(tài)1;延遲(100);無符號(hào)字符 ADConvert(void)無符號(hào)整數(shù)電壓;AD_Start=0;AD_開始=1;AD_Start=

21、0;延遲(10);電壓=AD_Data;返回電壓;無效延遲(無符號(hào)整數(shù)延遲時(shí)間)而(延遲時(shí)間-);PID.h:/* * 功能說明:主要用于PI運(yùn)算,通過給定和反饋計(jì)算輸出*入口:ifin,give(反饋,給定)*退出:退出* 全局變量:lasterror,lastout; * 調(diào)用模塊:無 * */int idata lerror1,lastout; /,out_max,you5,lyrk,yrk,;無符號(hào)字符 xi,xp,xd;無符號(hào)字符常量 UPPER_LIMIT=400;字符 p;unsigned int ypid(unsigned int give,unsigned int feedback)整數(shù)錯(cuò)誤1,錯(cuò)誤2,輸出;error1=反饋; /計(jì)算積分偏差錯(cuò)誤2=錯(cuò)誤1-lerror1; /計(jì)算比例偏差lerror1=錯(cuò)誤1; /更新e(k-1)輸出=最后輸出+error1/xi+error2*xp; /計(jì)算PI控制值如果(錯(cuò)誤1=0)輸出=輸出; /計(jì)算不敏感區(qū)域的操作補(bǔ)償。否則如果(錯(cuò)誤1-8)如果(錯(cuò)誤1 0)輸出=輸出+1;否則 out=out-1;否則如果(錯(cuò)誤1-16)如果(錯(cuò)誤1 0)輸出=輸出+2;否則 out=out-2;如果(輸出UPPER_LIMIT)輸出=UPPER_LIMIT; /控制輸出值的上限

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論