freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的水溫控制系統(tǒng)—畢業(yè)設(shè)計(jì)論文-文庫吧資料

2025-03-06 12:04本頁面
  

【正文】 } } //主函數(shù) void main() { chushihua() : kp=3: ki=: kd=0: while( 1) {mubiaowendu() : //看是否設(shè)置好目標(biāo)溫度才可以開始測量 while( flag) {EA=0: //先關(guān)掉中斷 chongshewendu() : delay( 3) : read_temp() : //讀取當(dāng)前溫度值 bcd( temp) : //將當(dāng)前溫度轉(zhuǎn)化為各位以方便顯示 pid() : //進(jìn)行 pid 操作來調(diào)節(jié) uk 值 display() : //顯示當(dāng)前溫度值 delayms( 10) : } 25 } } 內(nèi) 部資料 請(qǐng)勿外傳 9JWKf wvGt YM*Jgamp。 最后感謝教過我的各位老師,是您們讓我從一個(gè)青澀的什么不太懂得學(xué)生成長為一個(gè)對(duì)電氣專業(yè)有相當(dāng)了解的合格大學(xué)生,在畢業(yè)之際,真心感謝老師們的教導(dǎo) ! 20 參考 文獻(xiàn) [1] 胡壽松 編著《 自動(dòng)控制原理 》 .第五版 .北京:科學(xué)出版社 .2021 [2] 劉建清 編著《 輕松玩轉(zhuǎn) 51 單片機(jī) C 語言 》 .北京:北京航空航天大學(xué)出版社 . 第一版 . . [3] 陸斌 編著《 21天學(xué)通 51單片機(jī)開發(fā) 》 . 北京 :電子工業(yè)出版社 . [4] 夏世英 編著《 關(guān)于電熱水器模糊 PID 水溫控制系統(tǒng)的設(shè)計(jì) 》 .隴東學(xué)院學(xué)報(bào) .文章編號(hào): 16741730( 2021) 04003103. [5] 《電子制作》 [6] ( 美 ) Bjarne Stroustrup 《 THE C++ PROGRAMMING LANGUAGE, SPECIAL EDITION》 Addison Wesley 1997 [7] 趙麗娟,邵欣編著《基于單片機(jī)的溫度監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)》機(jī)械制造 [8] 武慶生 仇梅 編著 《單片機(jī)原理與應(yīng)用》 電子科技大學(xué)出版社 [9] 譚浩強(qiáng) 編著《 C 語言設(shè)計(jì)》 .北京:清華大學(xué)出版社 1999 年 [10] 王彬 任艷穎 編著《 Digital IC System Design》 西安電子科技大學(xué)出版社 21 附 錄 系統(tǒng)源程序 //求取這個(gè)溫度數(shù)值的每一位 void bcd( uint m) {dubf[3]=m/100: dubf[2]=m/10%10: dubf[1]=m%10: dubf[0]=m*10%10: } //將溫度數(shù)值用動(dòng)態(tài)顯示的方法顯示在五位數(shù)碼管上 void display( void) {uint g,i: g=20: while( g) { for( i=0: i5: i++) {if( i==4) {P0=0xbf: P2=0xbf: } else {P0=table[dubf[i]]: //選擇相應(yīng)的七段碼值并送入段選 P2=table2[i]: } //選相應(yīng)的位并送入 delayms( 5) : } } } //關(guān)掉顯示器 void guan( void) 22 {P0=0xff: P2= 0xff: } //設(shè)置目標(biāo)溫度值 void mubiaowendu( void) { while( !flag) {bcd( tempset) : display() : delayms( 30) : if( inc10==0) {delayms( 70) : if( inc10==0) {dubf[2]=dubf[2]+1: if( dubf[2]==10) {dubf[3]=dubf[3]+1:: dubf[2]=0: } } } if( inc==0) {delayms( 70) : if( inc==0) {dubf[1]=dubf[1]+1: if( dubf[1]==10) {dubf[2]=dubf[2]+1: dubf[1]=0: } } } tempset=dubf[3]*100+dubf[2]*10+dubf[1]: if( qd==0) {delayms( 70) : if( qd==0) 23 {flag=1: guan() : } } } } //定時(shí)器 0 中斷函數(shù) void dingshiqi( void) interrupt 1 //定時(shí)器 0中斷處理函數(shù) ,定時(shí) 50ms自動(dòng)進(jìn)入中斷 {static uchar i=0: //必須是靜態(tài)變量否則一出程序就歸零了,無法正常工作 i++: TH0=( 6553550000) /256: //高 8 位放的值 ,重裝初值 ,重新計(jì)時(shí) TL0=( 6553550000) %256: //低 8 位放的值 if( i==uk) {pwm=1: }//高電平的時(shí)間為( 50*uk) ms ,通過調(diào)節(jié) uk來調(diào)節(jié)固態(tài)繼電器的通斷時(shí)間來調(diào)節(jié)加熱速度 if( i==100) {pwm=0: i=0: }//pwm 的周期為 100*50ms } //pid 調(diào)節(jié)函數(shù) void pid( void) { ek=tempsettemp: //求取當(dāng)前偏差 if(( ek15) ||( ek==15)) //當(dāng)偏差值在 10 度內(nèi)不用 pid 調(diào)節(jié)直接加熱 {EA=0: pwm=0: } if(( ek0) amp。 19 致 謝 經(jīng)過三個(gè)月的努力,我從一個(gè)對(duì)軟件設(shè)計(jì)不太了解的新手成長為一個(gè)可以很輕松的編出一套相對(duì)比較綜合的程序,并且如期完成了我的畢業(yè)設(shè)計(jì),我感覺自己的成長真的好大,在這里我不得不說一下我的設(shè)計(jì)艱辛與在這個(gè)過程中 那些不離不棄的支持我的可愛的人們。 另外此設(shè)計(jì)雖然能夠完成溫度的顯示和控制,但是 功能和精度有待于進(jìn)一步提高。在選擇 STC89C51 單片 機(jī)的控制器時(shí)用了速度相對(duì)較 慢的 單片 機(jī),若采用速度更快的單時(shí)鐘周期系列的單片機(jī),提高采樣頻率,控制精度將會(huì)更高。在程序的編寫過程中特別注意了人機(jī)的交互性及各種功能的實(shí)現(xiàn),如鍵盤控制管理程序和 89C51 單片機(jī)的運(yùn)算程序都是經(jīng)過深思熟慮而精心設(shè)計(jì),使系統(tǒng)的操作界而更容易讓人理解,同時(shí)使用鍵盤輸入控制溫度,雖然一定程度上增加了程序的復(fù)雜性,但同時(shí)也使系統(tǒng)的溫度更容易設(shè)定。 同時(shí)硬件結(jié)構(gòu)簡單明了,對(duì)于工業(yè)控制領(lǐng)域來講,有很大的實(shí)用性,控制簡單但是準(zhǔn)確,并且故障點(diǎn)少,不易出現(xiàn)問題,故而本系統(tǒng)可以很好地應(yīng)用到一些工業(yè)領(lǐng)域中去。 基于 89C51單片機(jī)溫度控制系統(tǒng),利用溫度傳感變送器 DS18B20,將采樣到的溫度信號(hào)輸入到單片機(jī)中,再由單片機(jī)作為 整個(gè)溫控系統(tǒng) 的控制器,根據(jù)測量溫度與設(shè)定溫度的差值和 89C51 單片機(jī)的算法生成控制信號(hào),控制電熱杯的通電與斷電。 ( 1) 首先可以 實(shí)現(xiàn)按鍵設(shè)定溫度,用五位數(shù)碼管顯示實(shí)時(shí)溫度; ( 2)溫度控制范圍為 0~100 度,測量誤差為士 度; ( 3)恒溫控制并且可以快速達(dá)到預(yù)設(shè)溫度且?guī)缀鯚o超調(diào); 綜上三點(diǎn),本系統(tǒng)都完美的實(shí)現(xiàn)了,本次設(shè)計(jì)可以說是比較成功的,但相對(duì)也有不足之處,如調(diào)節(jié)時(shí)間還有些偏慢, 過渡時(shí)間過長, PID 參數(shù)還可以進(jìn)一步的優(yōu)化,來更加快速準(zhǔn)確的達(dá)到閾值溫度,并 且仍然無超調(diào), 所以,作為本系統(tǒng)仍有很大發(fā)揮之處 , 17 但是就目前來看,用這款打片機(jī)只有達(dá)到這樣的目標(biāo),也是很好的完成了設(shè)計(jì)之初的目的,可以達(dá)到要求的控制效果 。 15 第 6 章 系統(tǒng)調(diào)試 硬件和軟件系統(tǒng)都做好之后,就要進(jìn)行硬軟結(jié)合,系統(tǒng)聯(lián)調(diào)了, 經(jīng)過多日努力,終于可以進(jìn)行系統(tǒng)的調(diào)試,并根據(jù)之前的設(shè)計(jì)目標(biāo)來記錄相應(yīng)的實(shí)驗(yàn)數(shù)據(jù),并做出對(duì)應(yīng)的波形,進(jìn)一步的來驗(yàn)證系統(tǒng)的功能是否完備 [10]。 作為關(guān)鍵部分, 本人通過仔細(xì)的查閱資料,和分析作用過程編寫出此模塊詳細(xì)的運(yùn)行流程,進(jìn)一步為編寫程序提供幫助。 圖 52 PID 模塊流程圖 定時(shí)器模塊流程圖的搭建 定時(shí)器中斷作為本次設(shè)計(jì)中必不可少的一部分, 用來通過中斷 來產(chǎn)生 PWM波。在本程 序中,以閾值溫度與實(shí)時(shí)檢測溫度的差值作為偏差給定 ek,根據(jù) PID 算法求出控制量 uk,本次設(shè)計(jì)中在根據(jù) uk 的變化去調(diào)節(jié)輸出 PWM 波的占空比,從而來實(shí)現(xiàn)加熱快慢,達(dá)到控制溫度的目的。 如下圖 51 則是主程序的流程圖,也就是我的編程邏輯順序。所以,有一個(gè)細(xì)致邏輯精確的軟件系統(tǒng)是本次設(shè)計(jì)能否成功的關(guān)鍵,下面便按照編程思路來逐一介紹比較重要的幾個(gè)設(shè)計(jì)模塊。顯示部分的電路如下圖 43 所示 [6]: 圖 43 數(shù)碼管顯示模塊 溫度采集模塊的設(shè)計(jì) 本次設(shè)計(jì)采用的是溫度傳感器 DS18B20 來采集溫度 ,由于 DS18B20 直接輸出的就是數(shù)字信號(hào),所以非常方便,直接避開了應(yīng)用其他采集溫度方法的繁瑣,并且 DS18B20 的誤差相對(duì)來說非常小,從而可以精確的采集到溫度,對(duì)于 PID 控制來說,幫助非常大,準(zhǔn)確的采集溫度才可以精確地進(jìn)行 PID 運(yùn)算來調(diào)節(jié)溫度。鍵盤模塊如圖 42所示: 10 圖 42 鍵盤模塊 顯示模塊的設(shè)計(jì) 本次設(shè)計(jì)由于用的是實(shí)驗(yàn)室的實(shí)驗(yàn)板,上面帶有八位數(shù)碼管,所以顯示模塊就選用數(shù)碼管顯示即可,顯示應(yīng)用動(dòng)態(tài)顯示原理,通過循環(huán)輸出,由于人眼誤差,從而來實(shí)現(xiàn)顯示的溫度值可以讀出的目的。當(dāng)想從加熱環(huán)節(jié)中退出時(shí)候,按下返回鍵,進(jìn)入重新設(shè)置閾值溫度模塊,直到設(shè)置好在重新進(jìn)入加熱模式。 如下圖 41所示 [5]: 圖 41單片機(jī)最小系統(tǒng) 鍵盤模塊的設(shè)計(jì) 本次設(shè)計(jì)需要用鍵盤來設(shè)定閾值溫度,而不是用電位器以及 AD 的模擬輸入,所以設(shè)置了四個(gè)按鍵,加一按鍵( INC1),加十按鍵( INC10) ,確定按鍵( QUEDING), 返回按鍵( FUWEI)。因?yàn)樵撃_不接時(shí)為低電平,單片機(jī)將直接讀取外部程序存儲(chǔ)器 而系統(tǒng)沒有外部程序存儲(chǔ)器,所以 EAVP 必須接高電平。如圖 單片機(jī)最小系統(tǒng)有復(fù)位電路和振蕩器電路。 PID 應(yīng)用到水溫控制器中的編程思路 本設(shè)計(jì)要求使用 PID 算法來實(shí)現(xiàn)水的恒溫控制,所以在程序中,以實(shí)測溫度與設(shè)定溫度的差值作為偏 差即 ek,通過 PID 運(yùn)算求出 uk,用 uk來調(diào)節(jié)輸出 PWM 波的占空比, 8 從而實(shí)現(xiàn)對(duì)水溫的精確調(diào)節(jié)控制,最終實(shí)現(xiàn)穩(wěn)準(zhǔn)快的控制目標(biāo)。若要設(shè)定,與確定 P 和 Ti 的方法相同,取不振蕩時(shí)的 30%。積分時(shí)間常數(shù) Ti調(diào)試完成。 ( 2) 確定積分時(shí)間常數(shù) Ti 比例增益 P 確定后,設(shè)定一個(gè)較大的積分時(shí)間常數(shù) Ti 的初值,然后逐漸減 小 Ti,直至系統(tǒng)出現(xiàn)振蕩,之后在反過來,逐漸加大 Ti,直至系統(tǒng)振蕩消失。輸入設(shè)定為系統(tǒng)允許的最大值的 60%70%,由 0 逐漸加大比例增益 P,直至系統(tǒng)出現(xiàn)振蕩 : 再反過來,從此時(shí)的比例增益 P逐漸減小,直至系統(tǒng)振蕩消失,記錄此時(shí)的比例增益 P,設(shè)定 PID 的比例增益 P 為當(dāng)前值的 60%70%。這就給使用者帶來相當(dāng)?shù)穆闊貏e是對(duì)初學(xué)者 。 采樣周期的選取應(yīng)與 PID參數(shù)的整定進(jìn)行綜合考慮,采樣周期應(yīng)遠(yuǎn)小于過程的擾動(dòng)信號(hào)的周期,在執(zhí)行器的響應(yīng)速度比較慢時(shí),過小的采樣周期將失去意義,因此可適當(dāng)選大一點(diǎn) : 在計(jì)算機(jī)運(yùn)算速度允許的條件下 ,采樣周期短,則控制品質(zhì)好 : 當(dāng)過程的純滯后時(shí)間較長時(shí),一般選取采樣周期為純滯后時(shí)間 的四分之一到八分之一 。實(shí)際采樣周期的選擇還要受到多方而因素的影響,不同的系統(tǒng)采樣周期應(yīng)根據(jù)具體情況來選擇。 香農(nóng)采樣定律 : 為不失真地復(fù)現(xiàn)信號(hào)的變化,采樣頻率至少應(yīng)大于 或 等于 連續(xù)信號(hào) 7 最高頻率分量的二倍。將公式 ( 35) 代入公式 ( 32)就可以得到離散的 PID 表達(dá)式 : 1=0= K p [ + + ]k kkk k jjiT TdTeeu e eT ? ( 36) 或者 1=0= * + + K d ( )kk k j k kjK p K iu e e e e? ( 37) 公式 ( 36) 或公式 ( 37) 表示的控制算法是直接按照公式 ( 31) 說給出的 PID控制規(guī)律定義進(jìn)行運(yùn)算 的,所以它給出了全部控制量的大小,因此稱為全量式或位置式PID 控制算法。由于這一特點(diǎn),公式 ( 22 ) 中的積分項(xiàng)和微分項(xiàng)不能直接使用,必須進(jìn)行離散化處理。 數(shù)字式 PID 控制算法可以分為位置 式 PID 和增量式 PID 控制算法。人們將模擬 PID 控制規(guī)律引入到計(jì)算機(jī)中來。 適當(dāng)?shù)剡x擇微分常數(shù) Td,可以使微分作用達(dá)到最優(yōu)。 Td 越大時(shí),則它抑制偏差變化的作用越 6 強(qiáng) : Td
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1