【《基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)》7700字】_第1頁(yè)
【《基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)》7700字】_第2頁(yè)
【《基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)》7700字】_第3頁(yè)
【《基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)》7700字】_第4頁(yè)
【《基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)》7700字】_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于AT89C52單片機(jī)的鍋爐恒溫控制系統(tǒng)設(shè)計(jì)摘要近些年來(lái),溫度控制在生活和工業(yè)生產(chǎn)方面廣泛應(yīng)用,在這些領(lǐng)域中,可以看到溫度控制是較為常見(jiàn)的控制。為了防止鍋爐超溫超壓造成爆炸事故,它也是保障鍋爐安全運(yùn)行的重要因素之一,所以溫度控制中的恒溫控制就更為重要了。因此,現(xiàn)在越來(lái)越多的人對(duì)一些設(shè)備的恒溫控制有了更多的研究,由此利用溫度傳感器把鍋爐溫度信號(hào)傳給單片機(jī),用PID算法控制溫度,達(dá)到恒溫的目的。本課題采用Protues進(jìn)行仿真模擬同時(shí)制作實(shí)物進(jìn)行研究,使用AT89C52單片機(jī)進(jìn)行溫度控制,鍋爐內(nèi)的溫度讀取使用溫度傳感器可以達(dá)到最準(zhǔn)確的數(shù)據(jù),鍋爐內(nèi)的水溫使用按鍵來(lái)進(jìn)行設(shè)定,鍋爐內(nèi)的水溫使用內(nèi)部加熱棒進(jìn)行加熱,使用PID控制方式,從而完成對(duì)鍋爐溫度的控制。用LCD1602液晶來(lái)顯示當(dāng)前的溫度和設(shè)定溫度。通過(guò)對(duì)仿真模擬和實(shí)物測(cè)試的結(jié)果表明,該系統(tǒng)完全能夠?qū)崿F(xiàn)鍋爐的恒溫控制功能。關(guān)鍵字:溫度控制;PID控制;溫度檢測(cè);鍋爐控制;LCD顯示目錄TOC\o"1-2"\h\u緒論 11鍋爐恒溫控制系統(tǒng)總體概述 21.1鍋爐恒溫控制系統(tǒng)的工作原理 21.2鍋爐恒溫控制系統(tǒng)的方案設(shè)計(jì) 22鍋爐恒溫控制系統(tǒng)硬件設(shè)計(jì) 42.1AT89C52單片機(jī)最小系統(tǒng)設(shè)計(jì) 42.2加熱電路設(shè)計(jì) 62.3溫度檢測(cè)電路設(shè)計(jì) 62.4液晶顯示電路設(shè)計(jì) 72.5按鍵電路電路設(shè)計(jì) 83系統(tǒng)軟件設(shè)計(jì) 103.1系統(tǒng)軟件總體設(shè)計(jì) 103.2溫度控制程序設(shè)計(jì) 103.3液晶顯示子程序設(shè)計(jì) 123.4按鍵輸入子程序設(shè)計(jì) 133.5PID控制子程序設(shè)計(jì) 134系統(tǒng)測(cè)試結(jié)果 15總結(jié)與展望 16參考文獻(xiàn) 17附錄一、電路原理圖 18附錄二、程序源碼 19緒論鍋爐溫度有多種控制系統(tǒng),分別有位式控制、PID控制、在線非接觸式溫度控制方式等。下面對(duì)鍋爐溫度控制方式進(jìn)行介紹:(1)位式控制:這種控制方法簡(jiǎn)單可靠,適合用于傳導(dǎo)型或?qū)α餍图訜岬腻仩t,位式控制的工作原理是當(dāng)設(shè)定溫度小于實(shí)際溫度時(shí),關(guān)閉加熱器,當(dāng)設(shè)定溫度大于實(shí)際溫度時(shí),打開(kāi)加熱器,這種控制系統(tǒng)可以使溫度能在設(shè)定的范圍內(nèi)進(jìn)行上下浮動(dòng)。(2)PID控制:PID控制是在當(dāng)出現(xiàn)負(fù)載變化較大的情況時(shí),可以使系統(tǒng)維持一個(gè)穩(wěn)定的控制值,使用一個(gè)或者更多的傳感器來(lái)實(shí)現(xiàn)PD/PI控制,在溫度還未發(fā)生變化時(shí)就能及時(shí)地調(diào)整控制量,確保溫度的穩(wěn)定,相比較更適合本課題的研究。(3)在線非接觸式溫度控制:它主要應(yīng)用于在線檢測(cè)和控制具有運(yùn)動(dòng)特性的工藝溫度過(guò)程,如控制滾動(dòng)物體、移動(dòng)物體的工作溫度等其他場(chǎng)合。美國(guó)等發(fā)達(dá)國(guó)家對(duì)于鍋爐溫度控制系統(tǒng)的在很早就開(kāi)始了。在鍋爐溫度控制系統(tǒng)的研究史中,美國(guó)是最早投入科學(xué)研究的國(guó)家,溫度控制系統(tǒng)的原理是將鍋爐溫度控制系統(tǒng)通過(guò)溫度反饋實(shí)現(xiàn)單閉環(huán)控制系統(tǒng);有一種智能鍋爐溫度控制系統(tǒng)是日本研究出來(lái)的,它是在溫度控制系統(tǒng)領(lǐng)域應(yīng)用中,通過(guò)多變量輸出和多變量輸入實(shí)現(xiàn)線性系統(tǒng);德國(guó)研制了基于PLC的預(yù)埋總線與集中控制的技術(shù)的溫度控制方案,實(shí)現(xiàn)鍋爐溫度控制,但由于系統(tǒng)復(fù)雜且成本比較高,無(wú)法進(jìn)行推廣。國(guó)內(nèi)對(duì)鍋爐溫度控制研究比較滯后,操作性能與使用性差不便于產(chǎn)品進(jìn)行推廣或擴(kuò)充,不能實(shí)現(xiàn)較好的控制效果。我國(guó)對(duì)于鍋爐溫度控制的研究方面也是比較重視的,并取得了一定的成就,但是我國(guó)的鍋爐溫度控制與發(fā)達(dá)國(guó)家的鍋爐溫度控制相比還是有一定的差距。我國(guó)現(xiàn)在正在培養(yǎng)和引進(jìn)相關(guān)領(lǐng)域的人才,加大對(duì)溫度控制的研發(fā)的支持力度,提高技術(shù)水平,研發(fā)國(guó)產(chǎn)的鍋爐溫度控制系統(tǒng),縮小與發(fā)達(dá)國(guó)家的差距。1鍋爐恒溫控制系統(tǒng)總體概述鍋爐恒溫控制系統(tǒng)的工作原理鍋爐恒溫控制主要在生活、工業(yè)的安全和使用方便等具體方面有所體現(xiàn),對(duì)于鍋爐來(lái)說(shuō),安全是第一位的是最最重要的因素,鍋爐安全平穩(wěn)地運(yùn)行當(dāng)然要通過(guò)溫度來(lái)進(jìn)行保障。溫度控制滯后性嚴(yán)重,所以在選擇控制算法的時(shí)候可采用PID控制,它可以較好地消除偏差,適當(dāng)?shù)財(cái)U(kuò)大控制速度??刂破鞯倪x擇有很多種,我這里選擇單片機(jī)進(jìn)行控制,鍋爐溫度信號(hào)傳給單片機(jī)是用溫度傳感器來(lái)完成的,讓設(shè)定值與當(dāng)前值進(jìn)行比較之后再根據(jù)PID算法自調(diào)整得到的信號(hào)反饋給控制器,通過(guò)對(duì)鍋爐進(jìn)行加熱調(diào)節(jié),反復(fù)循環(huán),從而達(dá)到恒溫控制的要求。這里需要完成恒溫控制系統(tǒng)的軟硬件設(shè)計(jì),同時(shí)還要進(jìn)行仿真測(cè)試,對(duì)系統(tǒng)進(jìn)行功能驗(yàn)證。1.2鍋爐恒溫控制系統(tǒng)的方案設(shè)計(jì)本課題采用的是AT89C52單片機(jī)運(yùn)行溫度控制程序,整個(gè)鍋爐溫度控制系統(tǒng)由溫度檢測(cè)模塊、按鍵輸入模塊、加熱模塊和顯示模塊構(gòu)成。其中溫度檢測(cè)模塊使用DS18B20溫度傳感器,實(shí)現(xiàn)鍋爐內(nèi)的溫度讀取。按鍵模塊可以設(shè)定當(dāng)前鍋爐內(nèi)的水溫,加熱模塊主要由加熱鍋爐實(shí)現(xiàn),通過(guò)內(nèi)部加熱絲進(jìn)行加熱,加熱的控制量由溫度檢測(cè)模塊進(jìn)行反饋,結(jié)合PID控制,實(shí)現(xiàn)鍋爐溫度的控制。顯示模塊的作用是來(lái)顯示設(shè)定的溫度和實(shí)際的溫度,在這里,我選用的LCD1602液晶顯示器。其系統(tǒng)整體框圖如圖1所示。圖SEQ圖\*ARABIC1系統(tǒng)框圖單片機(jī)采用的是AT89C52芯片來(lái)做控制器,它是基于MSC-51內(nèi)核,是由AT公司生產(chǎn)的8位單片機(jī),內(nèi)核的時(shí)鐘頻率最高可達(dá)到24Mhz,最低運(yùn)行頻率可以實(shí)現(xiàn)內(nèi)核時(shí)鐘停止,外設(shè)停止運(yùn)行。AT89C52可通過(guò)寄存器配置其工作方式和運(yùn)行模式等。PID算法運(yùn)用比例、積分、微分算法,可以通過(guò)數(shù)學(xué)運(yùn)算來(lái)對(duì)回路中的偏差進(jìn)行一定的處理,把運(yùn)算出來(lái)的結(jié)果作為信號(hào)形式送給執(zhí)行器,讓執(zhí)行器進(jìn)行參數(shù)的調(diào)節(jié),讓測(cè)量值較穩(wěn)定地保持在設(shè)定值周?chē)?,由此?shí)現(xiàn)對(duì)某一參數(shù)控制的功能。PID控制的選擇:(1)PI(比例積分控制):此控制方式可以根據(jù)時(shí)間的增多來(lái)控制,由此可以做到減小或消除靜差,因此它的缺點(diǎn)是有可能會(huì)出現(xiàn)控制作用較緩慢,控制不及時(shí)的現(xiàn)象。(2)PD(比例微分控制):此控制方式在一定的條件下,既可以提高控制質(zhì)量,也可以增加控制速度,此外還具備減小偏差和控制時(shí)間的優(yōu)點(diǎn),適用于容量滯后較大的對(duì)象。(3)PID(比例積分微分控制):它集結(jié)了三部分的優(yōu)點(diǎn),優(yōu)點(diǎn)分別為控制速度快,可以消除余差,具備較好的控制性能。綜上所述,選擇PID控制為最佳控制方式。2鍋爐恒溫控制系統(tǒng)硬件設(shè)計(jì)2.1AT89C52單片機(jī)最小系統(tǒng)設(shè)計(jì)單片機(jī)的最小系統(tǒng)是保證CPU運(yùn)行程序的最小設(shè)計(jì)單元,任何處理器都需要設(shè)計(jì)相應(yīng)的芯片最小系統(tǒng),確保CPU進(jìn)行正常的運(yùn)行,這些電路是保證CPU運(yùn)行的最小電路。AT89C52單片機(jī)的最小電路設(shè)計(jì)十分簡(jiǎn)明,需要設(shè)計(jì)外圍的時(shí)鐘電路和復(fù)位電路。時(shí)鐘電路主要是為單片機(jī)提供時(shí)鐘信號(hào),為單片機(jī)內(nèi)的核心和外設(shè)提供時(shí)間基準(zhǔn),保證指令正常執(zhí)行;復(fù)位電路使內(nèi)部的SP指針、PC指針和中斷復(fù)位,也可以在系統(tǒng)異常工作后實(shí)現(xiàn)手動(dòng)復(fù)位,重新運(yùn)行程序。下面對(duì)時(shí)鐘電路和復(fù)位電路的設(shè)計(jì)和工作原理進(jìn)行詳細(xì)的闡述:時(shí)鐘電路又稱晶振電路,本系統(tǒng)硬件設(shè)計(jì)使用的時(shí)鐘電路如圖2所示,電路設(shè)計(jì)中電容C2和C3是幫助石英晶體進(jìn)行正常起振,要想讓電容可以在電路中正常工作,電容的容值需要在20-70pf范圍之內(nèi)進(jìn)行選擇,在本次設(shè)計(jì)中實(shí)際使用的是22pf電容。電容C2的一個(gè)引腳連接到晶振的引腳,另一個(gè)引腳連接到GND上;C3的兩個(gè)引腳,一個(gè)引腳連接到晶振的引腳,另一個(gè)引腳連接到GND上。晶振的輸出端連接第18和19腳(XTAL1和XTAL2引腳),從18/19引腳進(jìn)行時(shí)鐘信號(hào)輸入。石英晶振產(chǎn)生的振蕩信號(hào)十分微弱,極易受到外部電路和環(huán)境的影響,因此在電路布局中晶振電路要盡量靠近單片機(jī)的第18、19引腳,避免出現(xiàn)電磁干擾。圖SEQ圖\*ARABIC2時(shí)鐘電路原理圖復(fù)位電路在單片機(jī)的啟動(dòng)、調(diào)試、運(yùn)行和抗干擾等方面具有重要的作用。對(duì)于復(fù)位電路可以采用專用的復(fù)位芯片,如MAX809,也可以由其他電阻電容構(gòu)成復(fù)位電路。結(jié)合實(shí)際情況,本設(shè)計(jì)使用的復(fù)位電路(阻容復(fù)位)電路,是由電阻和電容構(gòu)成的。阻容復(fù)位電路是常用的復(fù)位電路,它具備了元件少、工作穩(wěn)定、復(fù)位可靠性高的三個(gè)性能,如圖3所示。電容C1是充放電電容,其中一端連接電源,另外一端連接電阻R9,R9的另外一端連接地線,電容和電阻的連接抽頭連接單片機(jī)的第9腳RST引腳。電路的運(yùn)行原理:當(dāng)給電路通上電時(shí),其中電阻R9作為充電電阻,電容C1開(kāi)始充電,這時(shí)侯RST端為高電平,當(dāng)電容充滿電以后,電容為斷路狀態(tài),RST引腳變?yōu)榈碗娖讲⒈3之?dāng)時(shí)狀態(tài),由此在RST引腳上就形成了高脈沖信號(hào),實(shí)現(xiàn)單片機(jī)的復(fù)位。當(dāng)復(fù)位的高脈沖周期大于單片機(jī)的2個(gè)時(shí)鐘周期,觸發(fā)單片機(jī)復(fù)位。電容C1充放電公式為t=RCLn[E/(E-Vt)],電容充滿電所需要的時(shí)間t=2RC,即電容和電阻的值需要滿足t>2,本設(shè)計(jì)選用的電容的容值為10uf,電阻的阻值為10k,這種參數(shù)選擇滿足系統(tǒng)的復(fù)位時(shí)間。圖SEQ圖\*ARABIC3復(fù)位電路原理圖復(fù)位電路中并聯(lián)一個(gè)輕觸按鍵,用于實(shí)現(xiàn)手動(dòng)復(fù)位功能,在程序進(jìn)行調(diào)試時(shí)候,出現(xiàn)調(diào)試問(wèn)題,可以直接進(jìn)行復(fù)位,方便調(diào)試。按鍵復(fù)位的原理為:按下按鍵之后,RST引腳直接連接到VCC上,狀態(tài)為高電平,松開(kāi)按鍵之后,通過(guò)電阻將RST信號(hào)狀態(tài)轉(zhuǎn)換為低電平,按鍵的按下時(shí)間一般都是百毫秒級(jí)別的,遠(yuǎn)遠(yuǎn)超過(guò)了單片機(jī)的復(fù)位時(shí)間要求,由此實(shí)現(xiàn)了手動(dòng)復(fù)位功能。時(shí)鐘電路、復(fù)位電路和單片機(jī)構(gòu)成了最小系統(tǒng),可以運(yùn)行內(nèi)部ROM存儲(chǔ)器的程序,最小系統(tǒng)的電路原理圖如圖4所示。圖SEQ圖\*ARABIC4最小系統(tǒng)原理圖2.2加熱電路設(shè)計(jì)本設(shè)計(jì)使用直流5V繼電器,繼電器的作用是控制加熱絲進(jìn)行加熱,繼電器是一種單片機(jī)控制強(qiáng)電系統(tǒng)的元件,實(shí)現(xiàn)高電壓系統(tǒng)控制,并且使強(qiáng)電和弱電隔離,保護(hù)電路,電器是弱電控制強(qiáng)電的電子元件,本設(shè)計(jì)是單片機(jī)通過(guò)三極管驅(qū)動(dòng)繼電器,通過(guò)繼電器控制強(qiáng)電器件,電路圖如圖5。驅(qū)動(dòng)電路是三極管放大開(kāi)關(guān)電路,圖中是S8050型三極管,限流電阻R1串聯(lián)在單片機(jī)P3.4口和三極管的基極之間,實(shí)現(xiàn)限流作用。三極管的射極、繼電器內(nèi)部電磁線圈、電源VCC通過(guò)串接方式連接在一起,三極管的集電極與系統(tǒng)的GND連接。繼電器內(nèi)部銜鐵隔離開(kāi)關(guān),當(dāng)線圈未通電時(shí),觸點(diǎn)K1與常閉觸點(diǎn)連接,當(dāng)線圈通電時(shí),觸點(diǎn)K1與常開(kāi)觸點(diǎn)連接。此電路圖的工作原理為:當(dāng)單片機(jī)的IO口的正常輸出為低電平時(shí),即三極管為導(dǎo)通狀態(tài),該系統(tǒng)工作時(shí)繼電器通電;反之,單片機(jī)的IO口輸出為高電平,即三極管為截止?fàn)顟B(tài),繼電器停止工作,系統(tǒng)停止加熱工作。因?yàn)槔^電器為塑封外殼,表面看不到其工作狀態(tài),LED1和R2夠成了發(fā)光二極管電路,實(shí)現(xiàn)繼電器工作指示。圖SEQ圖\*ARABIC5模擬加熱鍋爐電路圖2.3溫度檢測(cè)電路設(shè)計(jì)DS18B20是一種常用的能夠采集當(dāng)前環(huán)境溫度信息的數(shù)字式溫度探頭,在調(diào)整好PID最佳參數(shù)的情況下,這款溫度傳感器的誤差可達(dá)到0.001℃。DS18B20內(nèi)部具有一個(gè)溫度敏感電阻和一個(gè)A/D轉(zhuǎn)換,轉(zhuǎn)換器的精度為12位,且具有溫度補(bǔ)償電路和溫度寄存器,能夠適應(yīng)大多數(shù)測(cè)溫應(yīng)用。溫度傳感器DS18B20具有三個(gè)功能引腳,其中第1、3引腳為電源引腳使用2-5.5V電壓供電,分別連接電源正負(fù)極。第2引腳為數(shù)據(jù)輸入輸出的通信引腳,通過(guò)這3個(gè)引腳可以訪問(wèn)內(nèi)部ROM區(qū),讀取傳感器的狀態(tài)和溫度數(shù)據(jù)。在本次設(shè)計(jì)中DS18B20的數(shù)據(jù)引腳連接單片機(jī)的P2.5口,作用是通過(guò)這個(gè)引腳讀取溫度數(shù)據(jù)。原則上,在通信數(shù)據(jù)線上加入一個(gè)上拉電阻R5,其阻值為10K歐姆,這樣保證單總線驅(qū)動(dòng)能力增強(qiáng),讀取數(shù)據(jù)更穩(wěn)定,溫度采集電路如圖6。圖SEQ圖\*ARABIC6溫度采集電路圖2.4液晶顯示電路設(shè)計(jì)LCD1602顯示器是一種薄膜晶體顯示器,通過(guò)薄膜液晶控制方式進(jìn)行顯示字符,液晶的工作情況可以在單片機(jī)的控制下顯示指定的文字。LCD1602型顯示器的主要參數(shù)有:(1)顯示字符的數(shù)量:液晶顯示器可以顯示2行32個(gè)字符。(2)顯示器具有16個(gè)對(duì)外接口,可以通過(guò)8線或者4線形式進(jìn)行控制。(3)顯示器的大小為:2.95×4.35(長(zhǎng)×寬)mm。液晶顯示器是一款具有16個(gè)對(duì)應(yīng)的引腳功能的器件,表1為引腳功能的具體介紹。表SEQ表\*ARABIC1LCD1602引腳接口說(shuō)明LCD1602外圍電路設(shè)計(jì)如圖7所示,液晶顯示器的供電電源和LED背光電源使用的就是5V供電電源。本設(shè)計(jì)使用單片機(jī)的P0.0-P0.7一組IO口并口連接LCD1602的8位數(shù)據(jù)并口,它的作用是進(jìn)行傳輸命令字節(jié)和數(shù)據(jù)字節(jié)。單片機(jī)的P2.0、P2.1和P2.2三個(gè)引腳分別連接液晶顯示器的E、RW和RS三個(gè)控制端口,用于控制通信時(shí)序過(guò)程,通信過(guò)程在軟件部分進(jìn)行詳細(xì)描述。LCD1602的VO接口連接單片機(jī)的P2.3,,實(shí)現(xiàn)LCD1602顯示器對(duì)比度調(diào)節(jié)。圖SEQ圖\*ARABIC7LCD1602電路原理圖2.5按鍵電路電路設(shè)計(jì)根據(jù)實(shí)際需求,本設(shè)計(jì)用4個(gè)按鍵,對(duì)系統(tǒng)溫度設(shè)定和PID參數(shù)的調(diào)節(jié),4個(gè)按鍵功能是溫度設(shè)定+、溫度設(shè)定-、控制參數(shù)P+和控制參數(shù)P-。4個(gè)按鍵對(duì)應(yīng)的每一個(gè)引腳分別連接在單片機(jī)的P1.3-P1.6引腳,通過(guò)IO口讀取鍵值,按鍵的另外一個(gè)引腳與GND連接,按鍵電路如圖8所示。圖SEQ圖\*ARABIC8按鍵輸入電路原理圖3系統(tǒng)軟件設(shè)計(jì)3.1系統(tǒng)軟件總體設(shè)計(jì)系統(tǒng)軟件部分是由系統(tǒng)初始化子程序、溫度設(shè)定子程序、PID子程序、溫度檢測(cè)子程序和顯示子程序幾個(gè)部分組成的。單片機(jī)通電之后就開(kāi)始運(yùn)行程序,程序開(kāi)始運(yùn)行時(shí),進(jìn)行系統(tǒng)的初始化,系統(tǒng)初始化之后,首先進(jìn)行讀取設(shè)定的溫度,接著將設(shè)定溫度和當(dāng)前溫度進(jìn)行比較,然后運(yùn)行PID子程序,最后生成PWM控制信號(hào),對(duì)鍋爐進(jìn)行加熱調(diào)節(jié)。最后將設(shè)定溫度和當(dāng)前的溫度顯示在LCD1602上,之后系統(tǒng)返回PID子程序進(jìn)行調(diào)節(jié),繼續(xù)循環(huán)。主流程圖如圖9所示。圖SEQ圖\*ARABIC9系統(tǒng)軟件總流程圖3.2溫度控制程序設(shè)計(jì)加熱子程序使用定時(shí)器1計(jì)時(shí)產(chǎn)生2路PWM信號(hào),本設(shè)計(jì)中定時(shí)器1設(shè)定為16位模式,在計(jì)數(shù)器達(dá)到65535最高值時(shí)候,實(shí)現(xiàn)一個(gè)1ms計(jì)時(shí),每一次中斷都實(shí)現(xiàn)了一次1ms的溢出中斷。在中斷函數(shù)中對(duì)Time變量進(jìn)行自加,當(dāng)其值大于100以后,表示周期為100ms,進(jìn)行Time清零,實(shí)現(xiàn)重新計(jì)數(shù)。在每次中斷過(guò)程中,Time值與設(shè)定值進(jìn)行比較,當(dāng)小于占空比數(shù)值時(shí),輸出高電平,反之輸出低電平,這樣實(shí)現(xiàn)了PWM的周期輸出過(guò)程。圖SEQ圖\*ARABIC10PWM軟件子程序流程圖鍋爐溫度是通過(guò)MCP3204子程序讀取的,然后根據(jù)傳感器的的特性將AD數(shù)據(jù)轉(zhuǎn)換成實(shí)際的參數(shù)。ADC子程序第一步對(duì)MCP3204初始化,保證內(nèi)部ADC穩(wěn)定,通過(guò)DI選擇MCP3204的轉(zhuǎn)換通道,可以選著CH0-CH4任何一個(gè)通道,然后等待A/D轉(zhuǎn)換完成,轉(zhuǎn)換完成后通過(guò)MCP3204的時(shí)序進(jìn)行讀取數(shù)據(jù)。這樣主程序通過(guò)調(diào)取AD讀取函數(shù)即可獲得A/D轉(zhuǎn)換的數(shù)值。然后經(jīng)過(guò)公式計(jì)算和轉(zhuǎn)換即可以獲得傳感器的實(shí)際物理量數(shù)據(jù),子程序流程圖如圖11所示。圖SEQ圖\*ARABIC11鍋爐溫度讀取子程序流程圖MCP3204核心通信子程序是讀取一個(gè)字節(jié)的AD轉(zhuǎn)換數(shù)據(jù),其子程序如圖12所示。讀取一個(gè)字節(jié)數(shù)據(jù)首先需要使能MCP3204即CS=0,芯片可以進(jìn)行收發(fā)數(shù)據(jù)。之后在單片機(jī)控制作用下,順序產(chǎn)生時(shí)鐘序列,在時(shí)鐘的協(xié)調(diào)下,DO口連續(xù)輸出8個(gè)bit的位數(shù)據(jù)。在整個(gè)過(guò)程中使用for循環(huán)讀取一個(gè)AD轉(zhuǎn)換后的結(jié)果,得到數(shù)據(jù)以后,需要在接收校驗(yàn)數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),校驗(yàn)之后就可以得到轉(zhuǎn)換以后的AD數(shù)據(jù)。圖SEQ圖\*ARABIC12MCP3204讀取字節(jié)子程序流程圖3.3液晶顯示子程序設(shè)計(jì)LCD1602軟件設(shè)計(jì)是對(duì)液晶進(jìn)行讀寫(xiě)過(guò)程,讀液晶是從顯示器內(nèi)部的RAM中讀取存儲(chǔ)的數(shù)據(jù),寫(xiě)液晶是將需要顯示的字符寫(xiě)入內(nèi)部RAM地址,液晶顯示屏上自動(dòng)會(huì)顯示出來(lái)。在本次設(shè)計(jì)中,只需要顯示字符,不需要讀字符,根據(jù)兩幅各自的波形圖比較可以發(fā)現(xiàn)只有R/W信號(hào)線不同,其他都是相同的通信過(guò)程。軟件程序主要函數(shù)為初始化函數(shù)、write_cmd和write_data三個(gè)函數(shù)。初始化函數(shù)主要是配置液晶的控制模式,寫(xiě)命令函數(shù)write_cmd主要是控制LCD1602的輸入指令和控制顯示字符的位置,寫(xiě)數(shù)據(jù)函數(shù)write_cmd主要是向液晶顯示器傳輸需要顯示的字符ASCII碼,流程圖如圖13所示。每次在寫(xiě)數(shù)據(jù)和寫(xiě)命令之前都要進(jìn)行液晶狀態(tài)判斷,如果液晶LCD1602忙狀態(tài),表示無(wú)法接收數(shù)據(jù),這時(shí)需要等待;當(dāng)顯示器空閑才可以進(jìn)行數(shù)據(jù)的傳輸過(guò)程。圖SEQ圖\*ARABIC13LCD1602子程序流程圖3.4按鍵輸入子程序設(shè)計(jì)獨(dú)立按鍵的子程序十分簡(jiǎn)單,子程序流程圖如圖14,子程序需要使用if語(yǔ)句對(duì)IO口的狀態(tài)進(jìn)行判斷,進(jìn)而獲得按鍵狀態(tài)。如果讀取與按鍵連接的IO口的寄存器為0,則表示按鍵處于按下?tīng)顟B(tài);如果寄存器對(duì)應(yīng)數(shù)據(jù)為1,則表示按鍵處于松開(kāi)狀態(tài)。通過(guò)對(duì)三個(gè)IO口進(jìn)行查詢,可以判斷這幾個(gè)按鍵的狀態(tài),對(duì)鍵值的反饋值傳輸給調(diào)用的函數(shù),進(jìn)而對(duì)閾值進(jìn)行設(shè)置。圖SEQ圖\*ARABIC14按鍵子程序流程圖3.5PID控制子程序設(shè)計(jì)系統(tǒng)軟件程序設(shè)計(jì)首先通過(guò)加熱鍋爐的溫度敏感電阻輸出得鍋爐溫度信息,然后計(jì)算溫度誤差,之后輸入到PID函數(shù)中,鍋爐加熱得到的PWM可以很好的對(duì)鍋爐內(nèi)部溫度進(jìn)行加熱,進(jìn)一步控制溫度,軟件流程圖如圖15所示。圖SEQ圖\*ARABIC15PID子程序流程圖PID子程序通過(guò)運(yùn)行PID算法能實(shí)現(xiàn)較好的控制效果,是需要對(duì)PID的參數(shù)進(jìn)行一定的調(diào)整,程序如下:intPIDcontrol(floatReal_temp,floatTarget,floatK_P,floatK_D) //設(shè)定目標(biāo)Desiredvalue{ staticfloatP;//比例常數(shù)ProportionalConst// staticfloatI;//積分常數(shù)IntegralConst staticfloatD;//微分常數(shù)DerivativeConst staticfloatErr,PreErr;//Error intPWM_dat; P=K_P; D=K_D; Err=Target-Real_temp; if((Err>-1)&&(Err<1))Err=0; PWM_dat=P*Err+D*(Err-PreErr); PreErr=Err; if((PWM_dat>-5)&&(PWM_dat<5))PWM_dat=0; //死區(qū); if(PWM_dat>100)PWM_dat=100; if(PWM_dat<-80)PWM_dat=-80; returnPWM_dat;}4仿真測(cè)試本設(shè)計(jì)使用仿真軟件Protues進(jìn)行溫度控制仿真,圖中設(shè)定的溫度為15.00攝氏度,當(dāng)前調(diào)節(jié)后實(shí)際溫度為13.25攝氏度。加熱爐進(jìn)行溫度調(diào)節(jié),當(dāng)實(shí)際溫度與設(shè)定溫度發(fā)生偏離,產(chǎn)生一個(gè)偏差信號(hào),這一偏差信號(hào)作為PID的輸入值,PID結(jié)合自身的算法,產(chǎn)生一個(gè)PWM波形圖的輸出,進(jìn)行溫度的調(diào)節(jié),隨著溫度升高,PWM是增大的,仿真結(jié)果如圖16所示,圖中示波器窗口顯示了溫度PWM控制的波形圖。圖SEQ圖\*ARABIC16溫度控制仿真運(yùn)行圖當(dāng)實(shí)際溫度逐漸接近設(shè)定溫度時(shí),PWM逐漸減小,最后,實(shí)際溫度與設(shè)定溫度幾乎一致時(shí),波形就成為一條直線,停止加熱,仿真結(jié)果如圖17所示。本次仿真軟件設(shè)計(jì)有1攝氏度左右的誤差。圖SEQ圖\*ARABIC17仿真軟件運(yùn)行圖在仿真軟件模擬測(cè)試之后,按照電路原理圖焊接各個(gè)元器件,檢查無(wú)誤后,對(duì)實(shí)物進(jìn)行通電使用。圖中設(shè)定值為32攝氏度,當(dāng)前溫度為29攝氏度,繼電器工作,指示燈閃爍,隨著當(dāng)前溫度越來(lái)越接近設(shè)定溫度,指示燈閃爍頻率越快。如圖18所示。圖SEQ圖\*ARABIC18實(shí)物加熱運(yùn)行圖當(dāng)前溫度等于設(shè)定溫度時(shí),指示燈熄滅,繼電器不工作,如圖19所示。一旦當(dāng)前溫度低于設(shè)定溫度時(shí),電路立刻加熱,一直這樣循環(huán)工作,實(shí)現(xiàn)了恒溫的功能。圖SEQ圖\*ARABIC19恒溫控制運(yùn)行圖總結(jié)與展望本次畢業(yè)設(shè)計(jì)通過(guò)完成軟件和硬件模擬測(cè)試,實(shí)現(xiàn)了一部分的功能。首先對(duì)鍋爐溫度控制系統(tǒng)的發(fā)展背景和國(guó)內(nèi)外現(xiàn)狀進(jìn)行了詳細(xì)的介紹,對(duì)本設(shè)計(jì)的的工作原理和方案設(shè)計(jì)進(jìn)行論述,接下來(lái)進(jìn)一步對(duì)溫度檢測(cè)、顯示電路、溫度控制電路等模塊進(jìn)行詳細(xì)的分析,然后對(duì)電路各個(gè)部分元件和電路結(jié)構(gòu)進(jìn)行闡述,完成了對(duì)軟件子程序的設(shè)計(jì)分析,最后進(jìn)行了測(cè)試,達(dá)到了一開(kāi)始實(shí)際要求的效果。雖然仿真軟件和實(shí)物測(cè)試的結(jié)果完成了大部分的要求,但是由于我在某些部分考慮得不全面導(dǎo)致此次設(shè)計(jì)沒(méi)有那么完美,還有很大的進(jìn)步空間,在今后的學(xué)習(xí)和工作中,繼續(xù)努力繼續(xù)完善。對(duì)于鍋爐溫度控制系統(tǒng)設(shè)計(jì),可以進(jìn)行加入大數(shù)據(jù)分析功能,可以得到更加有效的信息,在廣大樣本中找到一些數(shù)據(jù)規(guī)律。這是恒溫控制發(fā)展的一種方向,但是要較多的時(shí)間進(jìn)行研究。參考文獻(xiàn)[1]李盛偉,張來(lái),梁海深.基于串級(jí)PID的相變儲(chǔ)能電鍋爐溫度控制技術(shù)[J].熱能動(dòng)力工程,2020,35(08):85-89.[2]張琦,史林軍.工業(yè)鍋爐溫度控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化技術(shù)與應(yīng)用,2020,39(08):25-28.[3]李元偉.基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)的供熱鍋爐溫度解耦控制系統(tǒng)研究[J]

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論