溫度控制實(shí)習(xí)報(bào)告
姓 名: 葛峰銘 組 員: 李浩銘 學(xué) 院: 自動(dòng)化 班 級(jí): 231131 專業(yè): 自動(dòng)化 指導(dǎo)老師: 金星
2016年8月
1
一、溫度控制實(shí)習(xí)概述
1.1 溫度控制實(shí)習(xí)的目的
在現(xiàn)代化的工業(yè)生產(chǎn)中,電流,電壓,溫度,壓力等都是常用的主要被控參數(shù)。溫度作為一個(gè)基本物理量,與人們的生產(chǎn)生活密切相關(guān)。在現(xiàn)代化的工業(yè)生產(chǎn)過(guò)程中,溫度作為一種常用的主要被控參數(shù),在很多生產(chǎn)過(guò)程中我們需要對(duì)溫度參數(shù)進(jìn)行檢測(cè),溫度控制調(diào)節(jié)也被廣泛的應(yīng)用在冶金行業(yè),化工行業(yè),機(jī)械制造和食品加工等多種領(lǐng)域。
溫度控自動(dòng)控制系統(tǒng)實(shí)驗(yàn)也是綜合應(yīng)用控制理論、單片機(jī)原理及接口技術(shù)、電機(jī)拖動(dòng)、微機(jī)接口技術(shù)、自動(dòng)控制系統(tǒng)等課程知識(shí)的重要實(shí)踐環(huán)節(jié)。其目的在于通過(guò)試驗(yàn)來(lái)驗(yàn)證和研究控制理論(溫度檢測(cè)控制),增強(qiáng)感性認(rèn)識(shí), 以促進(jìn)認(rèn)識(shí)的深化,培養(yǎng)學(xué)生科學(xué)的分析能力,使學(xué)生掌握一般運(yùn)動(dòng)控制和溫度控制的操作方法和基本技能。 1.2 溫度控制實(shí)習(xí)主要內(nèi)容
此次采用的 WK-2 溫度控制儀是一個(gè)閉環(huán)反饋控制系統(tǒng), 由主控芯片直接讀取溫度傳感器測(cè)得的溫度值后直接與當(dāng)前溫度的設(shè)定值進(jìn)行比較。根據(jù) PID 計(jì)算的結(jié)果得到控制信號(hào)控制雙向可控硅光耦進(jìn)而控制電熱杯的通電和斷電操作。 1.3 PID算法介紹
根據(jù)偏差的比例(P)、積分(I)、微分(D)進(jìn)行控制簡(jiǎn)單PID控制。PID控制是控
制系統(tǒng)中應(yīng)用最為廣泛的一種控制規(guī)律,由比例單元P、積分單元I和微分單元D
組成。PID控制的基礎(chǔ)是比例控制,積分控制可消除穩(wěn)態(tài)誤差,但可能增加超調(diào),微分控制可加快大慣性系統(tǒng)響應(yīng)速度以及減弱超調(diào)趨勢(shì)。
它由于用途廣泛、使用靈活,已有系列化產(chǎn)品,使用中只需設(shè)定三個(gè)參數(shù)(Kp,Ti和Td)即可。在很多情況下,并不一定需要全部三個(gè)單元,可以取其中的一到兩個(gè)單元,但比例控制單元是必不可少的。
首先,PID應(yīng)用范圍廣。雖然很多工業(yè)過(guò)程是非線性或時(shí)變的,但通過(guò)對(duì)其簡(jiǎn)化可以變成基本線性和動(dòng)態(tài)特性不隨時(shí)間變化的系統(tǒng),這樣PID就可控制了。 其次,PID參數(shù)較易整定。也就是,PID參數(shù)Kp,Ti和Td可以根據(jù)過(guò)程的動(dòng)態(tài)特性及時(shí)整定。如果過(guò)程的動(dòng)態(tài)特性變化,例如可能由負(fù)載的變化引起系統(tǒng)動(dòng)態(tài)特性變化,PID參數(shù)就可以重新整定。
第三,PID控制器在實(shí)踐中也不斷的得到改進(jìn)PID在控制非線性、時(shí)變、耦合及參數(shù)和結(jié)構(gòu)不確定的復(fù)雜過(guò)程時(shí),工作得不是太好。最重要的是,如果PID控制器不能控制復(fù)雜過(guò)程,無(wú)論怎么調(diào)參數(shù)都沒(méi)用。雖然有這些缺點(diǎn),但簡(jiǎn)單的PID控制器有時(shí)卻是最好的控制器。
2
1.4 溫度控制實(shí)習(xí)預(yù)期結(jié)果
完成最高溫度(60-70度)的穩(wěn)定性實(shí)驗(yàn),計(jì)算超調(diào)量和穩(wěn)態(tài)誤差;自己設(shè)定升溫曲線,升溫速率可以為0.5-3度/分鐘,可以分階段升溫,如把30-70度的升溫過(guò)程分成3個(gè)階段,30-40,40-50, 50-70,且在每個(gè)階段有溫度保持時(shí)間,如3分鐘或更長(zhǎng);編制信號(hào)采樣程序,轉(zhuǎn)換顯示以及在數(shù)碼管上時(shí)鐘顯示(秒表)。達(dá)到設(shè)定溫度穩(wěn)定后加入擾動(dòng),控制加熱算法,使其快速達(dá)到溫度設(shè)定值。
二、溫度控制實(shí)習(xí)硬件介紹
2.1 溫度檢測(cè)單元
由于DS18B20采用的是1-Wire總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì)ATS51單片機(jī)來(lái)說(shuō),硬件上并不支持單總線協(xié)議,因此,必須采用軟件的方法來(lái)模擬單總線的協(xié)議時(shí)序來(lái)完成對(duì)DS18B20芯片的訪問(wèn)。
圖溫度采集電路
2.2 溫度控制單元
利用合理的算法,對(duì)于不同的采集數(shù)據(jù)進(jìn)行分析,處理。通過(guò)單片機(jī)的P1.4和P1.3口發(fā)脈沖經(jīng)過(guò)一個(gè)或非門來(lái)控制可控硅BCR12AM的導(dǎo)通角(脈沖寬度的調(diào)節(jié)),進(jìn)而對(duì)水加熱,以達(dá)到預(yù)期的溫度??紤]到強(qiáng)點(diǎn)的干擾,這里,可控硅BCR12AM控制的前級(jí)采用具有光電隔離且具有自同步功能的可控硅控制器件MOC3401來(lái)對(duì)可控硅進(jìn)行控制。
光耦的接口電路:為了供電方便,本裝置采用的是可控硅型光耦。其輸出端有220V,380V的交流電壓。由于有些光耦的導(dǎo)通電流較小,因此要適當(dāng)?shù)募由舷蘖麟娮枰约捌鸱至髯饔玫碾娮?。有時(shí)為了防止高頻干擾對(duì)于光耦輸入端的影響,可以在輸入兩端加一個(gè)濾波電容(C1)。
3
圖 電熱杯溫度控制電路接口電路
可控硅是一種大功半導(dǎo)體器件,可以分為單相可控硅和雙向可控硅。在微機(jī)控制中可以作為大功率驅(qū)動(dòng)器件,具有用較小的功率控制大功率,開關(guān)無(wú)觸點(diǎn)等的特點(diǎn),在交流,直流電機(jī)調(diào)速,隨動(dòng)系統(tǒng)中都有廣泛的作用,本裝置中使用的是雙向可控硅。 2.3 顯示電路單元
由8位LED數(shù)碼顯示管,74LS138譯碼器和74LS373數(shù)據(jù)鎖存器組成??捎糜陲@示被測(cè)量的溫度值和升溫時(shí)間等值,顯示的內(nèi)容可由軟件設(shè)定。顯示電路如下圖所示,該電路屬于動(dòng)態(tài)顯示,利用74LS138譯碼器實(shí)現(xiàn)位選,P0口的輸出通過(guò)鎖存器實(shí)現(xiàn)段選??梢愿鶕?jù)這硬件接口電路實(shí)現(xiàn)要求的數(shù)據(jù)的動(dòng)態(tài)顯示。
4
2.4 串口通信單元
MAX232是由德州儀器公司(TI)推出的一款兼容RS232標(biāo)準(zhǔn)的芯片。該器件包含2個(gè)驅(qū)動(dòng)器、2個(gè)接收器和一個(gè)電壓發(fā)生器電路提供TIA/EIA-232-F電平。該器件符合TIA/EIA-232-F標(biāo)準(zhǔn),每一個(gè)接收器將TIA/EIA-232-F電平轉(zhuǎn)換成5-V TTL/CMOS電平。每一個(gè)發(fā)送器將TTL/CMOS電平轉(zhuǎn)換成TIA/EIA-232-F電平。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。
三、實(shí)驗(yàn)程序及實(shí)驗(yàn)結(jié)果分析 3.1溫度采集模塊
溫度采集:由溫度采集程序?qū)⒉杉臏囟葦?shù)字量通過(guò)數(shù)組返回到主函數(shù),得到的數(shù)字量乘以0.0625才是實(shí)際的溫度,所以有以下數(shù)據(jù)轉(zhuǎn)換函數(shù):
void covert1(void) //將溫度轉(zhuǎn)換為數(shù)碼管顯示的數(shù)據(jù) {
;
t[1]<<=4; //將高字節(jié)左移4位
t[1]=t[1]&0x70; //取出高字節(jié)的3個(gè)有效數(shù)字位
x=t[0]; //將t[0]暫存到X,因?yàn)槿⌒?shù)部分還要用到它 x>>=4; //右移4位
x=x&0x0f; //和前面兩句就是取出t[0]的高四位
t[1]=t[1]|x; //將高低字節(jié)的有效值的整數(shù)部分拼成一個(gè)字節(jié)
t[0]=t[0]&0x0f; //取有效的兩位小數(shù) t[0]>>=3; //右移兩位,以便查表
x=t[0]; t[0]=dotcode[x]; //查表?yè)Q算成實(shí)際的小數(shù) }
轉(zhuǎn)換之后溫度實(shí)際的值以整數(shù)部分存在t[1],小數(shù)部分存在t[0]的方式保存并
5
返回主程序。 3.2計(jì)時(shí)模塊
秒表:利用單片機(jī)自身的定時(shí)器中斷功能進(jìn)行計(jì)時(shí),中斷周期為10ms,具體函數(shù)如下:
void timer0() interrupt 1 using 1 //加熱的PWM周期為100*定時(shí)器0 {
TH0 =(65536-10000)/256; TL0 =(65536-10000)%256; kk++;
if(kk==100) {kk=0;ge++; }
if(ge==10) {ge=0;shi++ ; }
if(shi==10) {shi=0;bai++ ; if(bai==10) {bai=0;qian++; }
if(qian==10) {qian=9; }
3.3數(shù)碼管顯示
顯示部分,硬件部分由38譯碼器與鎖存器實(shí)現(xiàn),通過(guò)編程對(duì)八段管進(jìn)行選擇顯示,部分程序如下: void display(void) {
LE=1;
// P1=7<<5;
P15=1;P16=1;P17=1; //對(duì)八段管進(jìn)行選擇 P0=led[TempBuffer1[2]]; //顯示 delay(100); P0=0x00;
// P1=6<<5;
P15=0;P16=1;P17=1;
P0=led[TempBuffer1[3]]; delay(100); P0=0x00;
溫度顯示:溫度顯示之前要對(duì)數(shù)據(jù)進(jìn)行每一位分離,分離程序如下: TempBuffer1[1]=t[1]/100; //分離出百位
6
if( TempBuffer1[1]==0) TempBuffer1[1]=0x00; //百位數(shù)消隱 TempBuffer1[2]=(t[1]%100)/10; //分離出十位 TempBuffer1[3]=(t[1]%100)%10; //分離出個(gè)位 TempBuffer1[4]=t[0]/10; //分離出十分位 TempBuffer1[5]=t[0]%10; //分離出百分位 3.4 PID控制算法
要實(shí)現(xiàn)高精度的溫度自動(dòng)控制就必須采用計(jì)算機(jī)控制系統(tǒng),它可以實(shí)現(xiàn)溫度信號(hào)的采集、顯示及控制等,并可用計(jì)算機(jī)軟件實(shí)現(xiàn)升、降溫和閉環(huán)自動(dòng)控制。 采樣處理程序是該系統(tǒng)的主要部分,主要的任務(wù)是:數(shù)據(jù)的采集;顯示溫度;控制計(jì)算;控制輸出。加入擾動(dòng)后觀測(cè)系統(tǒng)穩(wěn)定性。
此次實(shí)驗(yàn)的核心內(nèi)容就是溫度控制,我們選擇的是比較熟悉的PID控制,算法如下:
if((aa%3)==0) //每三秒掃描一次 { m=0;
dd_error=d_error;
d_error=error;
error = (target-value);//求e(k)/e(k-1//求e(k-2)
det_t=k*(error-d_error)+(k*3/ti)*error+(k*td/3)*(error-2*d_error+dd_error); //增量公式 pwm=det_t;
if((error>10)||(pwm>60))pwm=60; }
PID算法得到的控制量怎么與溫度控制聯(lián)系起來(lái)從而達(dá)到控制效果是關(guān)鍵一步,將得到的控制量與加熱杯的導(dǎo)通時(shí)間聯(lián)系起來(lái),即我們接觸到的脈沖占空比,得到的控制量與定時(shí)器中斷里面的水杯加熱程序共同對(duì)加熱時(shí)間進(jìn)行控制:if(a==100){a=0;aa++; }
if(m 接下來(lái)就是所有函數(shù)的整合了:void main(void) { int_timer0(); int_timer1(); EA=1; int_uart(); // uartset(); 7 P22=0; P23=0; P2_7 =0; while(1) { P2_7 = !P2_7; EA=0; pt=ReadTemperature(TH,TL,0x7f); //測(cè)溫函數(shù)返回這個(gè)數(shù)組的頭地址 EA=1; t[0] = *pt;pt++; t[1] = *pt; //上限溫度-22,下限-24,分辨率10位,也就是0.25C covert1(); display(); cc++; if(cc>100) { Uart_SendChar(0x5a); Uart_SendChar(TempBuffer1[2]); Uart_SendChar(TempBuffer1[3]); Uart_SendChar(TempBuffer1[4]); Uart_SendChar(TempBuffer1[5]); cc=0; } //讀取溫度,溫度值存放在一個(gè)兩個(gè)字節(jié)的數(shù)組中 if((aa%3)==0) //每三秒掃描一次 { m=0; dd_error=d_error; d_error=error; error = (target-value);//求e(k) //求e(k-1) //求e(k-2) det_t=k*(error-d_error)+(k*3/ti)*error+(k*td/3)*(error-2*d_error+dd_error); //增量公式 pwm=det_t; if((error>10)||(pwm>60))pwm=60; 8 3.5實(shí)驗(yàn)結(jié)果 以上是實(shí)驗(yàn)溫度曲線圖,能非常穩(wěn)定的維持在70攝氏度,超調(diào)溫度是2度,應(yīng)該是比例系數(shù)K過(guò)大所導(dǎo)致的,事實(shí)證明想要達(dá)到更好的控制效果仍要經(jīng)過(guò)更加精細(xì)的微調(diào)。 9 10 因篇幅問(wèn)題不能全部顯示,請(qǐng)點(diǎn)此查看更多更全內(nèi)容
Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號(hào)-2
違法及侵權(quán)請(qǐng)聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市萬(wàn)商天勤律師事務(wù)所王興未律師提供法律服務(wù)