基于STC12C5A60S2的馬弗爐溫度控制器設計

發(fā)布時(shí)間:2010-6-17 14:39    發(fā)布者:賈延安
關(guān)鍵詞: STC12C5A60S2 , 馬弗爐 , 溫度控制
馬弗爐是高性能機電一體化的新一代智能產(chǎn)品,適用于煤炭、電力、化工、冶金等行業(yè)和部門(mén)進(jìn)行工業(yè)分析。馬弗爐溫度控制器設計以單片機 STC12C5A60S2作為控制中心,采用PID控制算法和自適應控制技術(shù),自動(dòng)調整預加熱溫度,并可以存儲記憶,確保試驗順利完成,自動(dòng)化程度高。

總體設計方案

1.馬弗爐主要技術(shù)指標

測溫范圍:0~1000℃
測溫精度:±3℃
控溫精度:±10℃(在 250~1000℃范圍內)
升溫時(shí)間:(室溫~920℃)≤30min
電源:AC220V±22V@50Hz±1Hz
功率:3.5kW
具有快速灰化和緩慢灰化、揮發(fā)分、羅加指數、黏結指數等四個(gè)專(zhuān)用加熱程序;另外,溫度控制器有一個(gè)自選程序,通過(guò)按鍵可選擇所需設定的溫度和保溫時(shí)間。

2.設計思路

馬弗爐溫度控制器設計采用PID算法來(lái)控制PWM的占空比,由PWM信號控制IGBT的通斷,使用時(shí)鐘專(zhuān)用芯片 DS1302進(jìn)行定時(shí)控制,從而實(shí)現在不同時(shí)段對爐溫的控制。

3.系統結構

馬弗爐溫度控制器由單片機STC12C5A60S2,熱電偶放大器與數字轉換器MAX6675,時(shí)鐘芯片 DS1302,I級精度K形熱電偶,鍵盤(pán)及顯示系統組成,系統結構如圖1所示。


圖1  系統結構框圖

PID簡(jiǎn)介

1.基本概念

①基本偏差e(t):表示當前測量值與設定目標之間的偏差。設定目標是被減數,結果可以是正或負,正數表示還沒(méi)有達到,負數表示已經(jīng)超過(guò)了設定值,這是面向比例項用的一個(gè)變動(dòng)數據。

②累計偏差∑e(t)=e(t)+e(t-1) +…+e(t-n):這是我們每一次測量得到偏差值的總和,是代數和,要考慮正負號運算的。這是面向積分項用的一個(gè)變動(dòng)數據。

③基本偏差的相對量e(t)-e(t-1):用本次的基本偏差減去上一次的基本偏差,用于考察當前控制對象的趨勢,作為快速反應的重要依據,這是面向微分項用的一個(gè)變動(dòng)數據。

④三個(gè)基本參數Kp、Ki、Kd:這是做好一個(gè)控制器的關(guān)鍵常數,分別稱(chēng)為比例常數、積分常數和微分常數。不同的控制對象需要選取不同的值,經(jīng)過(guò)現場(chǎng)調試才能獲得較好的效果。

2.三個(gè)基本參數Kp、Ki、Kd實(shí)際控制中的作用

①比例環(huán)節:即時(shí)成比例地反應控制系統的偏差信號e(t),偏差一旦產(chǎn)生,調節器立即產(chǎn)生控制作用以減小偏差。比例作用大,可以加快調節,減少誤差,但過(guò)大比例會(huì )使系統穩定性下降。

②積分環(huán)節:主要用于消除靜差,提高系統的無(wú)差度。積分作用的強弱取決于積分時(shí)間常數Ti。Ti越大,積分作用越弱,反之則越強。

③微分環(huán)節:能反應偏差信號的變化趨勢(變化速率),并能在偏差信號的值變得過(guò)大之前,在系統中引入一個(gè)有效的早期修正信號,從而加快系統的動(dòng)作速度,減小調節時(shí)間。

3.參數的設置與調整

①加溫迅速達到目標值,但溫度過(guò)沖很大。

比例系數太大,致使在未達到設定溫度前加熱比例過(guò)高;微分系數過(guò)小,對對象反應不敏感。

②加溫經(jīng)常達不到目標值,小于目標值時(shí)間多。

比例系數過(guò)小,加溫比例不夠;積分系數過(guò)小,對靜差補償不足。

③基本在控制溫度內,但上下偏差大,經(jīng)常波動(dòng)。

微分系數小,對及時(shí)變化反應慢;積分系數過(guò)大,使微分反應被鈍化。

④受環(huán)境影響較大

微分系數小,對及時(shí)變化反應慢;設定的基本定時(shí)周期過(guò)長(cháng),不能得到及時(shí)修正。

下面給出PID控制程序:

#ifndef _PID_H__
#define _PID_H__
#include
#include
#include
struct PID {
unsigned int SetPoint; // 設定目標 Desired Value
unsigned int Proportion; // 比例常數 Proportional Const
unsigned int Integral; // 積分常數 Integral Const
unsigned int Derivative; // 微分常數 Derivative Const
unsigned int LastError; // Error[-1]
unsigned int PrevError; // Error[-2]
unsigned int SumError; // Sums of Errors
}
struct PID spid; // PID Control Structure
unsigned int rout; // PID Response (Output)
unsigned int rin; // PID Feedback (Input)
sbit output=P1^4;
unsigned char high_time,low_time,count=0;//占空比調節參數
unsigned char set_temper=920;
void PIDInit (struct PID *pp)
{
memset ( pp,0,sizeof(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; // 當前微分
pp->PrevError = pp->LastError;
pp->LastError = Error;
return (pp->Proportion * Error//比例
+ pp->Integral * pp->SumError //積分項
+ pp->Derivative * dError); // 微分項
}

4. 溫度采集電路

熱電偶作為一種主要的測溫元件,具有結構簡(jiǎn)單、制造容易、使用方便、測溫范圍寬、測溫精度高等特點(diǎn)。但是,熱電偶的應用卻存在著(zhù)非線(xiàn)性、冷端補償、數字化輸出等幾方面的問(wèn)題。設計中采用的MAX6675是一個(gè)集成了熱電偶放大器、冷端補償、A/D轉換器及SPI串口的熱電偶放大器與數字轉換器,其電路如圖2所示。


圖2 溫度采集電路圖

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


圖3   SO端輸出溫度數據的格式


圖4   MAX6675的SPI接口時(shí)序

下面給出相應的溫度值讀取程序及數據轉換程序:

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(m=0;m<15;m++)
{
  temp<<=1;
  max_sck=1;
  _nop_();
  max_sck=0;
  if(max_so==1)    {temp |=0x0001;}    }   
temp=(temp&0x7fe0)>>5;
t[0]=temp/1000+0x30;
t[1]=temp%1000/100+0x30;
t[2]=temp%100/10+0x30;
t[3]=temp%10+0x30;
print(1,0,t);
}


圖5  定時(shí)電路圖


圖6  單片機系統電路圖


圖7  主程序流程圖

5.定時(shí)電路

使用時(shí)鐘專(zhuān)用芯片DS1302進(jìn)行定時(shí)控制,通過(guò)外加很少的電路就可以實(shí)現高精度的時(shí)鐘信號。外圍電路簡(jiǎn)單可靠,時(shí)間精度高,通過(guò)外接鋰電池后可以實(shí)現時(shí)間信息存儲。

6.單片機系統

采用STC12C5A60S2組成單片機最小系統,有2路PWM,選用一路作為IGBT的控制信號。另外,STC12C5A60S2內部還有1K的EEPROM,用于設置自選程序,通過(guò)按鍵選擇所需設定的溫度和保溫時(shí)間。顯示模塊采用128×64液晶顯示。

7.軟件設計


圖8  子程序流程圖

程序流程圖如圖8所示。

作者:鶴壁職業(yè)技術(shù)學(xué)院電子信息工程系 于軍 李坤
本文地址:http://selenalain.com/thread-13103-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页