溫控器PID算法_第1頁
溫控器PID算法_第2頁
溫控器PID算法_第3頁
溫控器PID算法_第4頁
溫控器PID算法_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、STC12C5A60S2設(shè)計(jì)的馬弗爐溫度控制器方案導(dǎo)讀 馬弗爐是高性能機(jī)電一體化的新一代智能產(chǎn)品,適用于煤炭、電力、化工、冶金等行業(yè)和部門進(jìn)行工業(yè)分析。馬弗爐溫度控制器設(shè)計(jì)以單片機(jī)STC12C5A60S2作為控制中心,采用PID控制馬弗爐是高性能機(jī)電一體化的新一代智能產(chǎn)品,適用于煤炭、電力、化工、冶金等行業(yè)和部門進(jìn)行工業(yè)分析。馬弗爐溫度控制器設(shè)計(jì)以單片機(jī)STC12C5A60S2作為控制中心,采用PID控制算法和自適應(yīng)控制技術(shù),自動(dòng)調(diào)整預(yù)加熱溫度,并可以存儲(chǔ)記憶,確保試驗(yàn)順利完成,自動(dòng)化程度高。1.馬弗爐主要技術(shù)指標(biāo)測(cè)溫范圍:01000測(cè)溫精度:±3控溫精度:±10

2、(在2501000范圍內(nèi))升溫時(shí)間:(室溫920)30min電源:AC220V±22V50Hz±1Hz功率:3.5kW具有快速灰化和緩慢灰化、揮發(fā)分、羅加指數(shù)、黏結(jié)指數(shù)等四個(gè)專用加熱程序;另外,溫度控制器有一個(gè)自選程序,通過按鍵可選擇所需設(shè)定的溫度和保溫時(shí)間。2.設(shè)計(jì)思路馬弗爐溫度控制器設(shè)計(jì)采用PID算法來控制PWM的占空比,由PWM信號(hào)控制IGBT的通斷,使用時(shí)鐘專用芯片DS1302進(jìn)行定時(shí)控制,從而實(shí)現(xiàn)在不同時(shí)段對(duì)爐溫的控制。3.系統(tǒng)結(jié)構(gòu)馬弗爐溫度控制器由單片機(jī)STC12C5A60S2,熱電偶放大器與數(shù)字轉(zhuǎn)換器MAX6675,時(shí)鐘芯片DS1302,級(jí)精度形熱電偶,鍵盤及

3、顯示系統(tǒng)組成,系統(tǒng)結(jié)構(gòu)如圖1所示。圖1  系統(tǒng)結(jié)構(gòu)框圖PID簡(jiǎn)介1.基本概念基本偏差e(t):表示當(dāng)前測(cè)量值與設(shè)定目標(biāo)之間的偏差。設(shè)定目標(biāo)是被減數(shù),結(jié)果可以是正或負(fù),正數(shù)表示還沒有達(dá)到,負(fù)數(shù)表示已經(jīng)超過了設(shè)定值,這是面向比例項(xiàng)用的一個(gè)變動(dòng)數(shù)據(jù)。累計(jì)偏差e(t)=e(t)+e(t-1) +e(t-n):這是我們每一次測(cè)量得到偏差值的總和,是代數(shù)和,要考慮正負(fù)號(hào)運(yùn)算的。這是面向積分項(xiàng)用的一個(gè)變動(dòng)數(shù)據(jù)。基本偏差的相對(duì)量e(t)-e(t-1):用本次的基本偏差減去上一次的基本偏差,用于考察當(dāng)前控制對(duì)象的趨勢(shì),作為快速反應(yīng)的重要依據(jù),這是面向微分項(xiàng)用的一個(gè)變動(dòng)數(shù)據(jù)。三個(gè)基本參數(shù)Kp、Ki、Kd

4、:這是做好一個(gè)控制器的關(guān)鍵常數(shù),分別稱為比例常數(shù)、積分常數(shù)和微分常數(shù)。不同的控制對(duì)象需要選取不同的值,經(jīng)過現(xiàn)場(chǎng)調(diào)試才能獲得較好的效果。2.三個(gè)基本參數(shù)Kp、Ki、Kd實(shí)際控制中的作用比例環(huán)節(jié):即時(shí)成比例地反應(yīng)控制系統(tǒng)的偏差信號(hào)e(t),偏差一旦產(chǎn)生,調(diào)節(jié)器立即產(chǎn)生控制作用以減小偏差。比例作用大,可以加快調(diào)節(jié),減少誤差,但過大比例會(huì)使系統(tǒng)穩(wěn)定性下降。積分環(huán)節(jié):主要用于消除靜差,提高系統(tǒng)的無差度。積分作用的強(qiáng)弱取決于積分時(shí)間常數(shù)Ti。Ti越大,積分作用越弱,反之則越強(qiáng)。微分環(huán)節(jié):能反應(yīng)偏差信號(hào)的變化趨勢(shì)(變化速率),并能在偏差信號(hào)的值變得過大之前,在系統(tǒng)中引入一個(gè)有效的早期修正信號(hào),從而加快系統(tǒng)的

5、動(dòng)作速度,減小調(diào)節(jié)時(shí)間。3.參數(shù)的設(shè)置與調(diào)整加溫迅速達(dá)到目標(biāo)值,但溫度過沖很大。比例系數(shù)太大,致使在未達(dá)到設(shè)定溫度前加熱比例過高;微分系數(shù)過小,對(duì)對(duì)象反應(yīng)不敏感。加溫經(jīng)常達(dá)不到目標(biāo)值,小于目標(biāo)值時(shí)間多。比例系數(shù)過小,加溫比例不夠;積分系數(shù)過小,對(duì)靜差補(bǔ)償不足?;驹诳刂茰囟葍?nèi),但上下偏差大,經(jīng)常波動(dòng)。微分系數(shù)小,對(duì)及時(shí)變化反應(yīng)慢;積分系數(shù)過大,使微分反應(yīng)被鈍化。受環(huán)境影響較大微分系數(shù)小,對(duì)及時(shí)變化反應(yīng)慢;設(shè)定的基本定時(shí)周期過長(zhǎng),不能得到及時(shí)修正。下面給出PID控制程序:#ifndef _PID_H_#define _PID_H_#include<intrins.h>#include

6、<math.h>#include<string.h>struct PID unsigned 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-2

7、unsigned int SumError; / Sums of Errorsstruct PID spid; / PID Control Structureunsigned int rout; / PID Response (Output)unsigned int rin; / PID Feedback (Input)sbit output=P14;unsigned char high_time,low_time,count=0;/占空比調(diào)節(jié)參數(shù)unsigned char set_temper=920;void PIDInit (struct PID *pp)memset ( pp,0,si

8、zeof(struct PID);unsigned int PIDCalc( struct PID *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;return (pp-

9、>Proportion * Error/比例+ pp->Integral * pp->SumError /積分項(xiàng)+ pp->Derivative * dError); / 微分項(xiàng)4. 溫度采集電路熱電偶作為一種主要的測(cè)溫元件,具有結(jié)構(gòu)簡(jiǎn)單、制造容易、使用方便、測(cè)溫范圍寬、測(cè)溫精度高等特點(diǎn)。但是,熱電偶的應(yīng)用卻存在著非線性、冷端補(bǔ)償、數(shù)字化輸出等幾方面的問題。設(shè)計(jì)中采用的MAX6675是一個(gè)集成了熱電偶放大器、冷端補(bǔ)償、A/D轉(zhuǎn)換器及SPI串口的熱電偶放大器與數(shù)字轉(zhuǎn)換器,其電路如圖2所示。圖2 溫度采集電路圖MAX6675從SPI串行接口輸出數(shù)據(jù)的過程如下:MCU使CS變

10、低并提供時(shí)鐘信號(hào)給SCK,由SO讀取測(cè)量結(jié)果。CS變低將停止任何轉(zhuǎn)換過程;CS變高將啟動(dòng)一個(gè)新的轉(zhuǎn)換過程。一個(gè)完整串行接口讀操作需16個(gè)時(shí)鐘周期,在時(shí)鐘的下降沿讀16個(gè)輸出位,第1位和第15位是一偽標(biāo)志位且總為0;第14位到第3位為以MSB到LSB順序排列的轉(zhuǎn)換溫度值;第2位平時(shí)為低,當(dāng)熱電偶輸入開放時(shí)為高;開放熱電偶檢測(cè)電路完全由MAX6675實(shí)現(xiàn),為開放熱電偶檢測(cè)器操作,T-必須接地,并使接地點(diǎn)盡可能接近GND腳;第1位為低電平以提供MAX6675器件身份碼,第0位為三態(tài)。圖3   SO端輸出溫度數(shù)據(jù)的格式圖4   MAX6675的SPI接口時(shí)序下面

11、給出相應(yīng)的溫度值讀取程序及數(shù)據(jù)轉(zhuǎn)換程序:void max6675() uchar m; uint temp; temp=0; max_sck=0; max_cs=1; delay(180ms);    max_cs=0 ; max_sck=1;   _nop_(); max_sck=0; _nop_(); if(max_so=1)     temp |=0x0001; for(

12、m=0;m<15;m+)   temp<<=1;  max_sck=1;  _nop_();  max_sck=0;  if(max_so=1)    temp |=0x0001;        temp=(temp&0x7fe0)>>5; t0=temp/1000+0x30; t1=temp%1000/100+0x30; t2=temp%100/10+0x30; t3=temp%10+0x30; print(1,0,t); 圖5  定時(shí)電路圖圖6  單片機(jī)系統(tǒng)電路圖圖7  主程序流程圖5.定時(shí)電路使用時(shí)鐘專用芯片DS1302進(jìn)行定時(shí)控制,通過外加很少的電路就可以實(shí)現(xiàn)高精度的時(shí)鐘信號(hào)。外

溫馨提示

  • 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)論