電烤箱畢業(yè)設(shè)計論文_第1頁
電烤箱畢業(yè)設(shè)計論文_第2頁
電烤箱畢業(yè)設(shè)計論文_第3頁
電烤箱畢業(yè)設(shè)計論文_第4頁
電烤箱畢業(yè)設(shè)計論文_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、前 言 近年來,電烤箱等西式小家電越來越受到大家的追捧。給我們生活帶來了很多方便!電烤箱所用的發(fā)熱元件大致可分為三類:一類是選用一根遠紅外管和一根石英加熱管的電烤箱,它是所有的電烤箱中檔次較低的類型。不過,基本的電烤功能還是能實現(xiàn)的,只是烤的速度相對會慢一點。因此,它比較適合經(jīng)濟狀況一般,但卻需要買電烤箱的家庭以及單身一族。另一類是采用兩根遠紅外管和一根石英加熱管的電烤箱,這類烤箱的特點是加熱速度比較快。不過,與前者相比,價格要稍微高出一些,一般貴上一兩百元。還有一類則是在附件中備有一根紫外線加熱管,可附帶用于高溫消毒。它能殺菌消毒,衛(wèi)生程度較高,而且加熱速度快,所以價格就比較貴了,它適合于經(jīng)

2、濟條件好的消費者。本文介紹了以C51單片機為核心的電烤箱溫度控制系統(tǒng)。電烤箱的溫度控制系統(tǒng)由硬件和軟件兩個部分構(gòu)成。其中硬件部分包括:單片機電路、傳感器電路、放大器轉(zhuǎn)換電路、轉(zhuǎn)換器電路以及顯示電路。軟件部分包括:主程序、運算控制程序、以及各功能實現(xiàn)模塊的程序。關(guān)鍵詞:單片機,電烤箱,溫度控制第一章 概述溫度控制是工業(yè)生產(chǎn)過程中經(jīng)常遇到的過程控制,有些工藝過程對其溫度的控制效果直接影響著產(chǎn)品的質(zhì)量,因而設(shè)計一種較為理想的溫度控制系統(tǒng)是非常有必要的。根據(jù)溫度變化快慢,并且控制精度不易掌握的特點,本文以電烤箱的溫度控制模型,設(shè)計了以C51單片機為檢測控制中心的溫度控制系統(tǒng)。溫度控制采用PID數(shù)字控制

3、算法,采用三位LED靜態(tài)顯示。該設(shè)計結(jié)構(gòu)簡單,控制算法新穎,控制精度高,有較強的通用性。1.1 電烤箱溫度控制設(shè)計要求(1) 當(dāng)控制設(shè)定100時,從室溫開始升溫要求控制系統(tǒng)調(diào)節(jié)時間ts5 分鐘,超調(diào)量10%。(2) 要求控制溫度范圍為50200連續(xù)可調(diào)。(3) 用數(shù)碼管實時顯示箱內(nèi)溫度。1.2電烤箱溫度控制方案 產(chǎn)品的工藝不同,控制溫度的精度也不同,因而所采用的控制算法也不同。就溫度控制系統(tǒng)的動態(tài)特性來看,基本上都是具有純滯后的一階環(huán)節(jié),當(dāng)系統(tǒng)精度及溫控的性能要求較高時,多使用PID算法實現(xiàn)溫度的過程控制。本系統(tǒng)是個典型的閉環(huán)控制系統(tǒng)。從溫控要求可以看出,系統(tǒng)對溫度控制精度要求不高,通過控制加

4、熱爐的通斷從而實現(xiàn)溫度控制。第二章 硬件部分設(shè)計系統(tǒng)的硬件部分包括:單片機電路、傳感器電路、放大器轉(zhuǎn)換電路、轉(zhuǎn)換器電路以及顯示電路等。 電烤箱溫度控制結(jié)構(gòu)2.1 C51單片機簡介 AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51 ? 指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器

5、,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。(參考附錄1 圖2-1)1主要特性:·與MCS-51 兼容·4K字節(jié)可編程閃爍存儲器壽命:1000寫/擦循環(huán)數(shù)據(jù)保留時間:10年·全靜態(tài)工作:0Hz-24Hz·三級程序存儲器鎖定·128*8位內(nèi)部RAM·32可編程I/O線·兩個16位定時器/計數(shù)器·5個中斷源·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路2管腳說明:VCC:供電電壓。GND:接地。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流

6、。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當(dāng)FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳

7、被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作

8、為AT89C51的一些特殊功能口,如下表所示:口管腳 備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時

9、,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。 2.2溫度傳感器檢測放大電路設(shè)計 利用物質(zhì)各種物理性質(zhì)隨溫度變化的規(guī)律把溫度

10、轉(zhuǎn)換為電量的傳感器。這些呈現(xiàn)規(guī)律性變化的物理性質(zhì)主要有體。溫度傳感器是溫度測量儀表的核心部分,品種繁多。按測量方式可分為接觸式和非接觸式兩大類,按照傳感器材料及電子元件特性分為熱電阻和熱電偶兩類。 現(xiàn)代信息技術(shù)的三大基礎(chǔ)是信息采集(即傳感器技術(shù))、信息傳輸(通信技術(shù))和信息處理處理(計算機技術(shù))。傳感器屬于信息技術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器被廣泛用于工農(nóng)業(yè)生產(chǎn)、科學(xué)研究和生活等領(lǐng)域,數(shù)量高居各種傳感器之首。溫度傳感器的發(fā)展大致經(jīng)歷了以下三個階段;(1)傳統(tǒng)的分立式溫度傳感器(含敏感元件);(2)模擬集成溫度傳感器控制器;(3)智能溫度傳感器。國際上新型溫度傳感器正從模擬式向數(shù)字式、由集成

11、化向智能化、網(wǎng)絡(luò)化的方向發(fā)展。在20世紀(jì)90年代中期最早推出的智能溫度傳感器,采用的是8位A/D轉(zhuǎn)換器,其測溫精度較低,分辨力只能達到1°C。國外已相繼推出多種高精度、高分辨力的智能溫度傳感器,所用的是912位A/D轉(zhuǎn)換器,分辨力一般可達0.50.0625°C。由美國DALLAS半導(dǎo)體公司新研制的DS1624型高分辨力智能溫度傳感器,能輸出13位二進制據(jù),其分辨力高達0.03125°C,測溫精度為±0.2°C。為了提高多通道智能溫度傳感器的轉(zhuǎn)換速率,也有的芯片采用高速逐次逼近式A/D轉(zhuǎn)換器。以AD7817型5通道智能溫度傳感器為例,它對本地傳感

12、器、每一路遠程傳感器的轉(zhuǎn)換時間分別僅為27us、9us。進入21世紀(jì)后,智能溫度傳感器正朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測溫系統(tǒng)等高科技的方向迅速發(fā)展。目前,智能溫度傳感器的總線技術(shù)也實現(xiàn)了標(biāo)準(zhǔn)化、規(guī)范化,所采用的總線主要有單線(1_wire)總線、I2C總線、SMBus總線和spI總線。溫度傳感器作為從機可通過專用總線接口與主機進行通信。pt100是鉑熱電阻,它的阻值會隨著溫度的變化而改變。PT后的100即表示它在0時阻值為100歐姆,在100時它的阻值約為138.5歐姆。它的工業(yè)原理:當(dāng)PT100在0攝氏度的時候他的阻值為100歐姆,它

13、的阻值會隨著溫度上升而成勻速增長的。常見的pt100感溫元件有陶瓷元件,玻璃元件,云母元件,它們是由鉑絲分別繞在陶瓷骨架,玻璃骨架,云母骨架上再經(jīng)過復(fù)雜的工藝加工而成。熱電阻測溫是基于金屬導(dǎo)體的電阻值隨溫度的增加而增加這一特性來進行溫度測量。通常將其放到電橋的橋臂上,溫度變化時,熱電阻兩端的電壓信號被送到儀器放大器LM741的輸入端,經(jīng)過儀器放大器放大后的電壓輸出送給A/D轉(zhuǎn)換芯片,從而把熱電阻的阻值轉(zhuǎn)換成數(shù)字量。對方大信號,使用低價格,高精度的儀器放大器LM741,它運用方便,可以通過外接電阻方便的進行各種增益(11000)的調(diào)整。(參考附錄1 圖2-2)2.3A/D轉(zhuǎn)換電路設(shè)計 ADC08

14、04轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器(ADC),是將輸入的模擬信號轉(zhuǎn)換成數(shù)字信號。信號輸入端可以是傳感器或轉(zhuǎn)換器的輸出,而ADC的數(shù)字信號也可能提供給微處理器,以便廣泛地應(yīng)用。(參考附錄1 圖2-3-1)ADC0804的規(guī)格:8位COMS依次逼近型的A/D轉(zhuǎn)換器.三態(tài)鎖定輸出存取時間:135US分辨率:8位轉(zhuǎn)換時間:100US總誤差:正負1LSB工作溫度:ADC0804LCN-070度AGND:模擬信號地。DGND:數(shù)字信號地。CLKIN:外電路提供時鐘脈沖輸入端。CLKR:內(nèi)部時鐘發(fā)生器外接電阻端,與CLKIN端配合可由芯片自身產(chǎn)生時鐘脈沖,其頻率為1/1.1RC。CS:片選信號輸入端,低電平有效

15、,一旦CS有效,表明A/D轉(zhuǎn)換器被選中,可啟動工作。WR:寫信號輸入,接受微機系統(tǒng)或其它數(shù)字系統(tǒng)控制芯片的啟動輸入端,低電平有效,當(dāng)CS、WR同時為低電平時,啟動轉(zhuǎn)換。RD:讀信號輸入,低電平有效,當(dāng)CS、RD同時為低電平時,可讀取轉(zhuǎn)換輸出數(shù)據(jù)。INTR:轉(zhuǎn)換結(jié)束輸出信號,低電平有效。輸出低電平表示本次轉(zhuǎn)換已完成。該信號常作為向微機系統(tǒng)發(fā)出的中斷請求信號。(參考附錄1 圖2-3-2和2-3-3)2.4LED電路設(shè)計 數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按能顯示多少個“8”可分

16、為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陰極為高電平時,相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陽極為低電平時,相應(yīng)字段就不亮。(參考附錄1 圖2-4)2.5 蜂鳴器電路設(shè)計蜂鳴器是一種一體化結(jié)構(gòu)

17、的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計算機、打印機、復(fù)印機、報警器、電子玩具、汽車電子設(shè)備、電話機、定時器等電子產(chǎn)品中作發(fā)聲器件。 ;蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。蜂鳴器在電路中用字母“H”或“HA”(舊標(biāo)準(zhǔn)用“FM”、“LB”、“JD”等)表示。現(xiàn)在市場上出售的一種小型蜂鳴器因其體積小(直徑只有l(wèi)lmm)、重量輕、價格低、結(jié)構(gòu)牢靠,而廣泛地應(yīng)用在各種需要發(fā)聲的電器設(shè)備、電子制作和單片機等電路中。有源蜂鳴器直接接上額定電源(新的蜂鳴器在標(biāo)簽上都有注明)就可連續(xù)發(fā)聲;而無源蜂鳴器則和電磁揚聲器一樣,需要接在音頻輸出電路中才能發(fā)聲。(參考附錄 圖2-5)2.6 加熱器控制

18、電路加熱器控制電路主要由光電耦合器MOC3041和雙向可控硅BAT12組成。采用脈寬調(diào)制輸出控制電爐與電源的接通和斷開比例,以通斷控制調(diào)壓法控制電爐的輸入功率。MOC3041光電耦合器常用作大功率可控硅的光電隔離觸發(fā)器,且是即時觸發(fā)的,其耐壓值為400V,它的輸出級由過零觸發(fā)的雙向可控硅構(gòu)成,它控制著主電路雙向可控硅的導(dǎo)通和關(guān)閉。100歐姆電阻與0.01微法電容組成雙向可控硅保護電路。(參考附錄 圖2-6加熱控制電路)2.7 鍵盤電路設(shè)計 鍵盤是由若干按鈕組成的開關(guān)矩陣,它是單片機系統(tǒng)中最常用的輸入設(shè)備,用戶能通過鍵盤向計算機輸入指令、地址和數(shù)據(jù)。一般單片機系統(tǒng)中采和非編碼鍵盤,非編碼鍵盤是由

19、軟件來識別鍵盤上的閉合鍵,它具有結(jié)構(gòu)簡單,使用靈活等特點,因此被廣泛應(yīng)用于單片機系統(tǒng)。 組成鍵盤的按鈕有觸點式和非觸點式兩種,單片機中應(yīng)用的一般是由機械觸點組成的。在下圖中,當(dāng)開關(guān)S未被按下時,P1。0輸入為高電平,S閉合后,P1。0輸入為低電平。由于按鈕是機械觸點,當(dāng)機械觸點斷開、閉合時,會有抖動動,P1。0輸入端的波形如圖2所示。這種抖動對于人來說是感覺不到的,但對計算機來說,則是完全能感應(yīng)到的,因為計算機處理的速度是在微秒級,而機械抖動的時間至少是毫秒級,對計算機而言,這已是一個“漫長”的時間了。前面我們講到中斷時曾有個問題,就是說按鈕有時靈,有時不靈,其實就是這個原因,你只按了一次按鈕

20、,可是計算機卻已執(zhí)行了多次中斷的過程,如果執(zhí)行的次數(shù)正好是奇數(shù)次,那么結(jié)果正如你所料,如果執(zhí)行的次數(shù)是偶數(shù)次,那就不對了。為使CPU能正確地讀出P1口的狀態(tài),對每一次按鈕只作一次響應(yīng),就必須考慮如何去除抖動,常用的去抖動的辦法有兩種:硬件辦法和軟件辦法。單片機中常用軟件法,因此,對于硬件辦法我們不介紹。軟件法其實很簡單,就是在單片機獲得P1。0口為低的信息后,不是立即認定S1已被按下,而是延時10毫秒或更長一些時間后再次檢測P1。0口,如果仍為低,說明S1的確按下了,這實際上是避開了按鈕按下時的抖動時間。而在檢測到按鈕釋放后(P1。0為高)再延時5-10個毫秒,消除后沿的抖動,然后再對鍵值處理

21、。不過一般情況下,我們常常不對按鈕釋放的后沿進行處理,實踐證明,也能滿足一定的要求。當(dāng)然,實際應(yīng)用中,對按鈕的要求也是千差萬別,要根據(jù)不一樣的需要來編制處理程序,但以上是消除鍵抖動的原則。(參考附錄 圖2-7-1和2-7-2) 第三章 軟件部分設(shè)計3.1 工作流程烤箱在上電復(fù)位后先處于停止加熱狀態(tài),這時可以用“1”鍵設(shè)定預(yù)置溫度,顯示器顯示預(yù)訂溫度,溫度設(shè)定好后就可以按啟動鍵啟動系統(tǒng)工作了。溫度檢測系統(tǒng)不斷檢測當(dāng)前溫度,并送往顯示器顯示達到預(yù)定值后停止加熱并顯示當(dāng)前溫度;當(dāng)溫度下降到下限時再啟動加熱。這樣不斷重復(fù)上述過程,使溫度保持在預(yù)訂范圍內(nèi)。啟動后不能再修改預(yù)置溫度,必須復(fù)位后才重新設(shè)定。

22、3.2 功能模塊 根據(jù)上面對工作流程的分析,系統(tǒng)軟件可以分為以下幾個模塊:(1) 鍵盤管理:監(jiān)測鍵盤輸入,接收溫度預(yù)置,啟動系統(tǒng)工作。(2) 顯示:顯示設(shè)定溫度和當(dāng)前溫度。(3) 溫度檢測及溫度值變換:完成A/D轉(zhuǎn)換。(4) 溫度控制:根據(jù)檢測到得溫度控制電烤箱工作。(5) 報警:當(dāng)溫度超過范圍時報警。 流程圖:3.3 資源分配 I/O口:P10P17用作A/D,P34,P35,P22,P24用作鍵盤接口,P23接蜂鳴器,P26接數(shù)碼管段選線,P27接數(shù)碼管位選線,P00P07接數(shù)碼管,P21接加熱控制電路結(jié) 論通過使用C51單片機控制電烤箱,它可達到模擬控制所達不到的控制效果,還可實現(xiàn)顯示,

23、鍵盤設(shè)定等多種功能,且易于擴展,大大提高了系統(tǒng)的智能化,也使得系統(tǒng)測量結(jié)果的精度大大提高。通過PID對溫度的過程控制,使得溫度控制精度更高。如果在低溫控制時,數(shù)字溫度傳感器DS18B20是個不錯的選擇,單總線控制方式,這對I/O口不多的C51單片機來說相當(dāng)重要。參考文獻1.馬俊.基于單片機系統(tǒng)烤箱溫度閉環(huán)控制實驗的設(shè)計與實驗.A.2003.2.李靜.快速學(xué)通51單片機C語言程序設(shè)計.M.北京:人民郵電大學(xué)出版社,2010.8.3.謝維成.單片機原理與應(yīng)用及C51程序設(shè)計.M.北京:清華大學(xué)出版社,2009.7.附錄1:圖2-1 89S52單片機引腳圖圖2-2 信號采集與放大 圖2-3-1 AD

24、C0804的規(guī)格和引腳圖 圖2-3-2 ADC0804的外部電路圖圖2-3-3ADC0804與單片機接線圖 圖2-4 數(shù)碼管與單片機接線圖圖2-5 蜂鳴器與單片機接線圖圖2-6 加熱器控制電路圖1圖2圖2-7-1 鍵盤消抖圖2-7-2 獨立鍵盤電路附錄2:#include<reg52.h>#include<intrins.h>#include<stdio.h>#include<math.h>#include <string.h>/C語言中memset函數(shù)頭文件#define uint unsigned int#define uchar

25、 unsigned charsbit ctr=P21;/加熱控制電路sbit dula=P26;/數(shù)碼管段選線sbit wela=P27;/數(shù)碼管位選線sbit beep=P23;/蜂鳴器sbit key=P34;/溫度設(shè)定鍵sbit up=P35;/溫度調(diào)大鍵,每按一次加1sbit down=P22;/溫度調(diào)小鍵,沒按一次減1sbit sure=P24;/溫度確認按鈕,同時啟動系統(tǒng)sbit adwr=P36;/定義A/D的WR端口sbit adrd=P37;/定義A/D的RD端口uint temp,m,shu;/定義整形的溫度數(shù)據(jù)float f_temp;/定義浮點型的溫度數(shù)據(jù)uint wa

26、rn_l=50;/定義溫度下限值 uint warn_h=200;/定義溫度上限值uchar flag=0;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/帶小數(shù)點的的09編碼void dis_temp1(uint t);void delay(uint z)/延時函數(shù) uint x,y;for(x=z;x>0;x-)for(y=0;y>0;y-);void keyscan()/鍵盤掃描 if(key=0)/鍵盤按下delay(10);/消抖if(key=0) flag=1; while(!key

27、); /鍵盤松手 while(flag)if(up=0)delay(10);if(up=0) shu+;dis_temp1(shu); while(!up);/if(down=0)delay(10);if(down=0)shu-; while(!down);if(sure=0)delay(10);if(sure=0) flag=0; ctr=1;dis_temp1(shu);while(!sure);typedef struct PID double SetPoint; / 設(shè)定目標(biāo)Desired value double Proportion; / 比例常數(shù)Proportional Cons

28、t double Integral; / 積分常數(shù)Integral Const double Derivative; / 微分常數(shù)Derivative Const double LastError; / Error-1 double PrevError; / Error-2 double SumError; / Sums of Errors PID; /*= PID計算部分 =*/ double PIDCalc( PID *pp, double NextPoint ) double dError, Error; Error = pp->SetPoint - NextPoint;/ 偏差

29、pp->SumError += Error; / 積分 dError = Error - pp->LastError; / 當(dāng)前微分 pp->PrevError = pp->LastError; pp->LastError = Error; return (pp->Proportion * Error / 比例項 + pp->Integral * pp->SumError / 積分項 + pp->Derivative * dError / 微分項 ); /*= Initialize PID Structure PID參數(shù)初始化=*/ voi

30、d PIDInit (PID *pp) memset ( pp,0,sizeof(PID); /*= Main Program 主程序=*/ double sensor (void) / Dummy Sensor Function return 100.0; uint get_temp(uint z)/讀取寄存器中存儲的溫度數(shù)據(jù) f_temp=z*0.894;/溫度在寄存器中為12位,分辨率為0.0625temp=f_temp+0.5;/加0.5是四舍五入 return temp;/temp是整形void display(uchar num,uchar dat)/數(shù)據(jù)顯示程序 num是第幾個數(shù)

31、碼管,dat是要顯示的數(shù)字uchar i; P0=tabledat;/編碼賦給p0口dula=1;dula=0;wela=0;i=0xff;i=i&(0x01)<<(num);/用i來存儲位選數(shù)據(jù),只有一位為0P0=i;wela=1;wela=0;delay(1);void dis_temp1 (uint t)/按鍵顯示溫度數(shù)值函數(shù) t傳遞的是整形的溫度值uchar i;i=t/100;/除以100得到商,為溫度的百位display(3,i);/在第四個數(shù)碼管顯示i=t%100/10;/為溫度的十位display(4,i);/在第五個數(shù)碼管上顯示i=t%100/10;/為溫度的個數(shù)位display(5,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論