《《計算機控制技術》課程設計容器水位控制系統(tǒng)的設計》由會員分享,可在線閱讀,更多相關《《計算機控制技術》課程設計容器水位控制系統(tǒng)的設計(9頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、
《計算機控制技術》
課程設計
題 目: 容器水位控制系統(tǒng)的設計
學生姓名:
學 號:
專業(yè)班級:
指導教師:
二○一○年十二月二十二日
目 錄
1. 課程設計目的……………………………………………………………2
2. 課程設計題目的描述和要求………
2、……………………………………2
3. 課程設計報告內(nèi)容………………………………………………………2
4. 結論………………………………………………………………………7
5. 心得體會…………………………………………………………………8
一.設計的目的
通過課程設計,掌握以下知識和技能:
1.培養(yǎng)針對課題需要,選擇和查閱有關手冊.圖表及文獻資料的自學能力。
2.提高綜合及靈活運用所學知識解決工業(yè)控制的能力單片機應用系統(tǒng)的硬件設計。
3.通過對課題設計熟悉單片機用系統(tǒng)開發(fā).研制的過程,軟硬件設計的方法。
二.設計要求
2.1課程設計的要求和內(nèi)容(包括原始數(shù)據(jù).技術要求.工作要
3、求)
1.要求設計水位控制系統(tǒng),要求無余差,超調(diào)小,水位穩(wěn)定速度快。
2.硬件采用51系列單片機,采用閥門作為控制元件。
3采用keil c作為編程語言,采用結構化的設計方法
2.2課程設計圖紙內(nèi)容及張數(shù)
1.畫出系統(tǒng)控制框圖。
2.要求用protel設計出硬件電路圖。
3.畫出軟件流程圖。
三.課程設計報告內(nèi)容
1.模擬PID控制原理
在模擬控制系統(tǒng)中,控制器最常用的控制規(guī)律是PID控制。為了說明控制器的原理,以圖1.1的例子說明。給定輸入信號n0(t)與實際輸出信號n(t)進行比較,其差值e(t)=n0(t)-n(t),經(jīng)過PID控制器調(diào)整輸出控制信號u(t),u(t)
4、對目標進行作用,使其按照期望運行。
常規(guī)的模擬PID控制系統(tǒng)原理框圖如同1.2所示。該系統(tǒng)有模擬PID和被控對象組成。圖中r(t)是給定的期望值,y(t)是系統(tǒng)的實際輸出值,給定值與實際輸出值,給定值與實際值構成控制偏差e(t)=r(t)-y(t)。e(t)作為PID控制的輸入,u(t)作為PID控制的輸出和被控對象的輸入。構成PID和被控對象的輸入。構成PID控制的規(guī)律為:
其中:Kp為控制器的比例系數(shù)
Ti為控制器的積分時間,也稱積分系數(shù)
Td為控制器的
5、未分時間,也稱微分系數(shù)
2.系統(tǒng)控制框圖程序模塊
3.protel硬件控制框圖
4.軟件設計
4.1設計流程圖:
主要程序流程說明:
主程序首先進行初始化,包括PID參數(shù)設定及賦初值。然后循環(huán)做執(zhí)行以下程序:等待延時程序時間到,通過AD轉換對反饋值采樣,根據(jù)設定值
6、減反饋值計算偏差進而計算輸出值,根據(jù)輸出值算出DA的值,以此改變閥門的開度。
4.2程序
#pragma db oe sb
#include
#include
#define DAC0832 XBYTE[0x7fff] /* 定義DAC0
7、832端口地址 */
#define uchar unsigned char
sbit A=0;//模擬通道選擇位
sbit BB=0;
sbit C=0;
sbit ST=P2^2;
sbit EOC=P2^1;
sbit OE=P2^0;
void ad();//模數(shù)轉換
void PID();//PID計算
void delay();//延時
int a=0,b=0,out=0;
double p=0.4,i=0.1,d=0;//PID參數(shù)設定
double s=0,e0=0,elast=0,in=200;
main()
{
OE=1;
8、
while(1)
{ delay(10);//設置采樣時間
ad();//模數(shù)轉換
PID();//進行PID運算
DAC0832=out;//將運算結果送至數(shù)模轉換器
}
}
void delay(long i)//延時
{
int j=255;
while(i--)
{
for(;j>0;j--);
}
}
void ad() //模數(shù)轉換
{
ST=0;
ST=1;
ST=0;//啟動轉換
while(EOC==0); //等待轉換結束
}
9、
void PID() //PID計算
{
e0=in-P0;//偏差值
out=p*(e0+i*s+d*(e0-elast));//由公式計算輸出值
s=s+e0;//累計偏差
elast=e0;
}
}
4. 結論
測試結果:
用Keil uVision3編寫程序,經(jīng)檢查成功后,通過編譯鏈接產(chǎn)生*.hex文件,并用Proteus 7.5設計繪制電路圖,并將生成的*.hex文件導入芯片中,進行仿真。滿足無余差,超調(diào)小,水位穩(wěn)定速度快的要求。
五.心得體會:
經(jīng)過兩周的忙碌與學習,自己取得了很大的進步,我的心情無法平靜。但
10、是在學習過程當中由于經(jīng)驗的匱乏,知識局限,,遇到不少困難,很多可敬的師長、同學、朋友給了我許多幫助,在這里請接受我誠摯的謝意?。?!
雖然本次實訓是要求自己獨立完成,但是,彼此還是脫離不了集體的力量,遇到問題和同學互相討論交流。多和同學討論。我們在做課程設計的過程中要不停的討論問題,這樣,我們可以盡可能的統(tǒng)一思想,這樣就不會使自己在做的過程中沒有方向。討論不僅是一些思想的問題,還可以深入的討論一些技術上的問題,這樣可以使自己的處理問題要快一些,少走彎路。多改變自己設計的方法,在設計的過程中最好要不停的改善自己解決問題的方法,這樣可以方便自己解決問題。
參考書目:
[1] 《單片機的C語言應用程序設計》 馬忠梅 北京航空航天出版,2006
[2] 《計算機控制技術》 于海生 機械工業(yè)出版社,2007
[3] 《單片機原理及接口技術(第3版)》 李朝青 北京航空航天大學出版社,2006
[4] 《51單片機C設計快速入門》 田立,田青,代萬震 人民郵電出版社,2007
[5] 《51單片機設計實例》 樓然苗,李光飛 北京航空航天大學出版社,2004
[6] 《51單片機開發(fā)入門與典型實例》 王守中 人民郵電出版社,2007
- 8 -