基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)_第1頁
基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)_第2頁
基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)_第3頁
基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)_第4頁
基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

畢業(yè)設(shè)計(jì)題目:基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)系:電氣信息學(xué)院專業(yè):自動(dòng)化班級(jí):學(xué)號(hào):學(xué)生姓名:導(dǎo)師姓名:林國(guó)漢完成日期:2023年6月誠(chéng)信聲明本人聲明:1、本人所呈交的畢業(yè)設(shè)計(jì)〔論文〕是在老師指導(dǎo)下進(jìn)行的研究工作及取得的研究成果;2、據(jù)查證,除了文中特別加以標(biāo)注和致謝的地方外,畢業(yè)設(shè)計(jì)〔論文〕中不包含其他人已經(jīng)公開發(fā)表過的研究成果,也不包含為獲得其他教育機(jī)構(gòu)的學(xué)位而使用過的材料;3、我承諾,本人提交的畢業(yè)設(shè)計(jì)〔論文〕中的所有內(nèi)容均真實(shí)、可信。作者簽名:日期:年月日畢業(yè)設(shè)計(jì)〔論文〕任務(wù)書題目:基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)姓系電氣信息學(xué)院專業(yè)級(jí)學(xué)號(hào)指導(dǎo)老師林國(guó)漢職稱講師教研室主任黃峰根本任務(wù)及要求:課題設(shè)計(jì)以單片機(jī)為核心的爐溫系統(tǒng)。設(shè)計(jì)內(nèi)容包括:確定系統(tǒng)的總體方案進(jìn)行單片機(jī)、及其它元器件選型顯示模塊、報(bào)警模塊、溫度調(diào)節(jié)模塊以及鍵盤模塊設(shè)計(jì)4、完成文獻(xiàn)綜述、開題報(bào)告及畢業(yè)設(shè)計(jì)說明書的撰寫工作。進(jìn)度安排及完成時(shí)間:1第1周:明確課題任務(wù)及要求,搜集課題所需資料,了解本課題研究現(xiàn)狀、存在問題及研究的實(shí)際意義;做好選題和文獻(xiàn)綜述。2第2-3周:閱讀有關(guān)單片機(jī)編程及爐溫控制系統(tǒng)文獻(xiàn)資料,撰寫開題報(bào)告和文獻(xiàn)綜述3第4-5周:畢業(yè)實(shí)習(xí)。4第6-8周:掌握單片機(jī)程序設(shè)計(jì)方法,編寫PID控制模塊程序5第9-12周:硬件電路設(shè)計(jì)、軟件設(shè)計(jì)和模塊調(diào)試、系統(tǒng)聯(lián)調(diào)。6第13-14周:整理資料,撰寫并修改畢業(yè)設(shè)計(jì)初稿。7第15周:畢業(yè)論文審定、打印,辯論資料歸檔。8第16周,辯論、設(shè)計(jì)論文整改目錄摘錄=1\*ROMANIAbstract=2\*ROMANIITOC\o"1-3"\h\u13372第1章緒論1274871.1課題的目的與意義1185611.2課題開展現(xiàn)狀和前景展望1175181.3課題主要內(nèi)容21505第2章系統(tǒng)設(shè)計(jì)方案及思路351942.1系統(tǒng)總體方案3229032.2單片機(jī)的選擇4160372.2.1AT89S51簡(jiǎn)介479772.3溫度傳感器的選擇67372.3.1DS18B20簡(jiǎn)介6265262.4PID控制器7273072.5MOC3041簡(jiǎn)介927364第3章仿真1113963第4章硬件設(shè)計(jì)13300344.1主電路設(shè)計(jì)13327014.1.1時(shí)鐘電路13185354.1.2復(fù)位電路13169174.2鍵盤輸入電路設(shè)計(jì)14306474.3顯示電路設(shè)計(jì)15219474.4溫度采集電路設(shè)計(jì)16189804.5報(bào)警電路設(shè)計(jì)17245714.6溫度控制電路設(shè)計(jì)1710738第5章軟件設(shè)計(jì)19152415.1主程序設(shè)計(jì)19170225.2顯示模塊程序設(shè)計(jì)2071395.3鍵盤掃描模塊程序設(shè)計(jì)2283455.4報(bào)警模塊程序設(shè)計(jì)2432535.5PID控制程序244827參考文獻(xiàn)2613675致謝2719034附錄A電路圖2828922附錄B程序清單29基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)摘要:隨著生產(chǎn)水平的提高,熱電設(shè)備對(duì)溫度控制的要求也越來越高,而傳感器技術(shù)和單片機(jī)技術(shù)等不斷開展,為智能溫度測(cè)控系統(tǒng)精度的提高和穩(wěn)定性改善等提供了條件。本系統(tǒng)為以AT89S51單片機(jī)為核心的爐溫控制系統(tǒng)。該系統(tǒng)在硬件設(shè)計(jì)上主要是通過溫度傳感器DS18B20對(duì)溫度進(jìn)行采集,直接輸出數(shù)字式的溫度值。AT89S51將采集到的數(shù)字溫度送到LCD1602,以數(shù)字形式顯示測(cè)量溫度,并采用PID控制來實(shí)現(xiàn)對(duì)溫度的調(diào)節(jié)。關(guān)鍵詞:?jiǎn)纹瑱C(jī);溫度傳感器;PID控制DesignofTemperatureControlSystemBasedonSingleChipMicrocomputerAbstract:Alongwiththeproductionimproving,therequesttothetemperaturecontrolforthermalpowerequipmentismoreandmorehigher.ThesustainabledevelopingofthesensortechnologyandtheSCMtechnologyprovidedtheconditionsfortheprecisiondevelopmentandthestabilityimprovementoftheintellectualtemperaturecontrolsystem.ThispaperintroducesakindoffurnacetemperaturecontrolsystemwithAT89S51asthecore.DS18B20,thedigitaltemperaturesensorisusedtocollecttemperatureinthehardwaredesignofthesystem.Anditoutputthetemperaturevalueindigitalway.UsingRTX1602,thecollectedtemperatureisdisplayed,andusingthePIDcontrollertoadjustthefurnacetemperature.Keywords:singlechipmicrocomputer;thetemperaturesensor;PIDcontrol第1章緒論1.1課題的目的與意義溫度是生活及生產(chǎn)中最根本的物理量,自然界中任何物理、化學(xué)過程都與溫度緊密聯(lián)系。隨著現(xiàn)代工業(yè)水平的逐步提高,溫度控制在工業(yè)生產(chǎn)中顯得越來越重要。在許多工業(yè)領(lǐng)域,都需要對(duì)各種熱處理爐、加熱爐、反響爐和鍋爐進(jìn)行控制,如軋鋼工業(yè)需要對(duì)鋼坯進(jìn)行前加熱,塑料的定型、高精度模具制造,機(jī)床制造,量具等高精密儀器、機(jī)器都要求環(huán)境溫度管控。在這些領(lǐng)域?qū)囟鹊目刂浦陵P(guān)重要,溫度過低,達(dá)不到工藝的要求。溫度過高,不僅影響品質(zhì),還會(huì)產(chǎn)生不必要的能源浪費(fèi),甚至可能有爆炸的危險(xiǎn)。不同領(lǐng)域?qū)τ跍囟鹊纳舷路秶?、測(cè)溫元件、控制精度都不盡相同。一致的是現(xiàn)場(chǎng)一般都會(huì)比擬復(fù)雜,有的人無法靠近,有的不需要人來現(xiàn)場(chǎng)監(jiān)測(cè)??偟膩碚f溫度控制復(fù)雜多樣,所以設(shè)計(jì)一個(gè)較為通用的溫度控制系統(tǒng)具有重要意義。眾所周知,加熱爐是一個(gè)具有強(qiáng)耦合性、強(qiáng)非線性、大滯后、時(shí)變等特點(diǎn)的典型的復(fù)雜工業(yè)被控對(duì)象,用傳統(tǒng)的控制方法對(duì)其進(jìn)行控制很難取得滿意的控制效果。隨著傳感器技術(shù)和單片機(jī)技術(shù)等不斷開展,為智能溫度測(cè)控系統(tǒng)精度的提高和穩(wěn)定性改善等提供了條件,并得到日益開展和完善。1.2課題開展現(xiàn)狀和前景展望由于工業(yè)過程控制的需要,特別是微電子技術(shù)和計(jì)算機(jī)技術(shù)的迅猛開展以及自動(dòng)控制理論和設(shè)計(jì)方法開展的推動(dòng)下,國(guó)外溫度測(cè)控系統(tǒng)開展迅速,尤其是控制方面,在智能化、自適應(yīng)、參數(shù)自整定等方面取得顯著成果。在這方面,以日本、美國(guó)、德國(guó)、瑞典等國(guó)家技術(shù)領(lǐng)先,都生產(chǎn)出了一批商品化、性能優(yōu)異的溫度控制儀表,并在各行業(yè)廣泛應(yīng)用。其特點(diǎn)是適應(yīng)于大慣性、大滯后等復(fù)雜溫度測(cè)控系統(tǒng),具有參數(shù)自整定功能和自學(xué)習(xí)功能,即溫控器對(duì)控制對(duì)象、控制參數(shù)及特性進(jìn)行自動(dòng)整定,并根據(jù)歷史經(jīng)驗(yàn)及控制對(duì)象的變化情況,自動(dòng)調(diào)整相關(guān)控制參數(shù),以保證控制效果的最優(yōu)化。溫度控制系統(tǒng)具有控制精度高、抗干擾力強(qiáng)等特點(diǎn)。目前,國(guó)外溫度控制儀表正朝著高精度、智能化、小型化等方向開展。微處理技術(shù)的開展和數(shù)字智能式控制器的實(shí)際應(yīng)用,在控制領(lǐng)域出現(xiàn)的一系列新的技術(shù)課題之一的被控對(duì)象動(dòng)靜態(tài)參數(shù)、控制系統(tǒng)結(jié)構(gòu)、參數(shù)發(fā)生較大范圍變化的情況下,控制系統(tǒng)仍能滿足給定的品質(zhì)指標(biāo),這是自適應(yīng)控制的最根本特征,自適應(yīng)PID控制可以在線不斷整定參數(shù),克服干擾,跟蹤系統(tǒng)的時(shí)變特性,使控制對(duì)象到達(dá)一定的目標(biāo)。同時(shí),隨著現(xiàn)代控制理論〔諸如智能控制、自適應(yīng)模糊控制和神經(jīng)網(wǎng)絡(luò)技術(shù)等〕研究和應(yīng)用的開展與深入,為控制復(fù)雜無規(guī)那么系統(tǒng)開辟了新途徑,逐步弱化或取消了對(duì)受控對(duì)象數(shù)學(xué)模型結(jié)構(gòu)不變的限制。隨著社會(huì)需要和技術(shù)開展,優(yōu)化算法的種類會(huì)越來越多并越來越完善,也會(huì)有越來越多的優(yōu)化算法被提出并在不同的應(yīng)用場(chǎng)合中出現(xiàn),其優(yōu)越性也會(huì)越來越明顯,在目前的研究中,只有幾種根本的和改良的優(yōu)化算法在爐溫優(yōu)化設(shè)定中應(yīng)用??梢灶A(yù)見,在以后的研究工作中,將會(huì)有更多先進(jìn)的優(yōu)化算法應(yīng)用于爐溫的優(yōu)化設(shè)定。智能控制的優(yōu)越性、有效性已經(jīng)無法被取代,它已經(jīng)成為現(xiàn)在控制技術(shù)的主要手段和方法,并且可以與其他多種控制方法進(jìn)行結(jié)合,在爐溫控制中,主要是采用智能控制方法或智能控制與其他方法相結(jié)合。隨著計(jì)算機(jī)的普及及計(jì)算機(jī)性能的提高,計(jì)算機(jī)控制也逐漸開展并完善起來,智能控制技術(shù)與計(jì)算機(jī)控制技術(shù)相結(jié)合已經(jīng)成為一種趨勢(shì),也是加熱爐控制方法的一種趨勢(shì)!1.3課題主要內(nèi)容本次設(shè)計(jì)總體表達(dá)了基于單片機(jī)對(duì)工業(yè)生產(chǎn)中溫度的控制與設(shè)計(jì),包括硬件組成和軟件的設(shè)計(jì),該系統(tǒng)在硬件設(shè)計(jì)上主要分為溫度采集和溫度控制兩局部。以AT89S51單片機(jī)為核心器件,通過溫度傳感器DS18B20對(duì)溫度進(jìn)行采集,DS18B20將采集到的溫度信號(hào)直接以數(shù)字形式輸入給單片機(jī),然后單片機(jī)再將將采集到的數(shù)字溫度送到顯示器LCD1602,以數(shù)字形式顯示測(cè)量的溫度。溫度控制局部主要是以PID控制進(jìn)行溫度的調(diào)節(jié),將采集到的溫度和設(shè)定溫度進(jìn)行PID運(yùn)算,單片機(jī)通過其輸出量控制可控硅調(diào)控器的接通時(shí)間,來調(diào)節(jié)溫度的。整個(gè)系統(tǒng)的軟件編程對(duì)單片機(jī)實(shí)現(xiàn)其控制功能。整個(gè)系統(tǒng)簡(jiǎn)單可靠,操作靈活,性能價(jià)格比高,較好的滿足了現(xiàn)代生產(chǎn)和科研的需要。第2章系統(tǒng)設(shè)計(jì)方案及思路2.1系統(tǒng)總體方案系統(tǒng)設(shè)計(jì)要求:以MCS-51單片機(jī)為核心,設(shè)計(jì)一個(gè)爐溫控制系統(tǒng)。采用液晶顯示器顯示溫度測(cè)量值。檢測(cè)的溫度范圍為0~128℃。溫度超過警戒值時(shí)能報(bào)警提示。能通過鍵盤輸入設(shè)定溫度并顯示。用PID控制溫度,控溫精度≦±2℃。根據(jù)要求,以電爐為控制對(duì)象,單片機(jī)AT89S51為核心器件。該溫度控制系統(tǒng)按功能分主要包括了顯示模塊、溫度調(diào)節(jié)模塊、鍵盤模塊、報(bào)警模塊。溫度傳感器采用數(shù)字式溫度傳感器DS18B20,對(duì)溫度進(jìn)行實(shí)時(shí)采樣,并將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)返回給單片機(jī),通過LCD1602顯示。系統(tǒng)可通過鍵盤設(shè)定溫度,單片機(jī)根據(jù)當(dāng)前爐內(nèi)溫度和預(yù)設(shè)溫度進(jìn)行計(jì)算,通過控制雙向可晶閘管的通斷來調(diào)節(jié)爐內(nèi)溫度。當(dāng)溫度一旦超出設(shè)定范圍,報(bào)警模塊就會(huì)工作。借助KeilC51開發(fā)工具,以C語言開發(fā)語言,分別編寫程序?qū)崿F(xiàn)對(duì)各模塊的控制。最后以Proteus為根底,畫出系統(tǒng)電路圖,加載程序模擬實(shí)際電路的運(yùn)行進(jìn)行仿真并調(diào)試。系統(tǒng)總體結(jié)構(gòu)框架如圖2.1。圖2.1系統(tǒng)結(jié)構(gòu)框圖2.2單片機(jī)的選擇目前我國(guó)最常用的單片機(jī)有Intel公司的MCS-51系列,MCS-96系列〔16位〕;Philips公司的87、80系列〔51內(nèi)核〕、AVR系列;Microchip公司的PIC系列;ATMEL公司的89系列〔51內(nèi)核〕等;其中ATMEL公司所產(chǎn)的ATMEL89系列的單片機(jī)是基于Intel公司的MCS-51系列而研制的。ATMEL公司把自身的先進(jìn)的Flash存儲(chǔ)器技術(shù)和80C31核心相結(jié)合。從而產(chǎn)生出了Flash單片機(jī)系列。根據(jù)初步設(shè)計(jì)方案分析,應(yīng)選擇具有以下功能的單片機(jī):1〕片內(nèi)有FlashROM的單片機(jī),可以反復(fù)的燒錄、擦除程序,應(yīng)用程序直接存儲(chǔ)在片內(nèi),不用再擴(kuò)展存儲(chǔ)器,可以簡(jiǎn)化電路。Philips80C51系列單片機(jī)、ATMEL公司的AT89系列單片機(jī)和AVR的單片機(jī)、STC單片機(jī)、PIC單片機(jī)均帶有片內(nèi)FlashROM。2〕支持在線可編程〔ISP〕的單片機(jī),在單片機(jī)開發(fā)開發(fā)過程中,編程器是必不可少的。選用具有ISP技術(shù)的單片機(jī),只要通過一條下載線與計(jì)算機(jī)相連就可以直接將程序燒錄到內(nèi)部,不但可以方便,還省去了昂貴的編程器。帶ISP的單片機(jī)主要有:ATMEL公司的AT89S5x系列、AVR;Microchip公司的帶8為的PIC單片機(jī),結(jié)尾不帶e的pic24系列和dsPIC系列;飛思卡爾的所有STC系列單片機(jī);意法半導(dǎo)體的SST系列單片機(jī)。除了上述根本要求外,還要盡可能的降低本錢。由于系統(tǒng)控制方案簡(jiǎn)單,數(shù)據(jù)量不大,經(jīng)分析比照本系統(tǒng)選用AT89S51單片機(jī)。AT89S51芯片內(nèi)含有4kB的E2PROM,無需外擴(kuò)存儲(chǔ)器,電路簡(jiǎn)單可靠,其時(shí)鐘頻率為0~24MHz,并且價(jià)格低廉,批量?jī)r(jià)在10元以內(nèi)。2.2.1AT89S51簡(jiǎn)介AT89S51是一個(gè)高性能,低功耗的CMOS8位單片機(jī),片內(nèi)含4k的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器,采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造。帶有ISP,既支持在線編程,也可用傳統(tǒng)方法進(jìn)行編程。兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu)。AT89S51性價(jià)比高,可靈活運(yùn)用于各種場(chǎng)合。1.AT89S51主要功能特性:工作電壓兼容MCS-51指令系統(tǒng)4k可反復(fù)擦寫ISPFlashROM32個(gè)雙向I/O口時(shí)鐘頻率0-33MHz2個(gè)16位可編程定時(shí)/計(jì)數(shù)器2個(gè)外部中斷源全雙工UART串行中斷口線中斷喚醒省電模式看門狗〔WDT〕電路此外,AT89S51設(shè)計(jì)和配置了振蕩頻率可降至0Hz的靜態(tài)邏輯操作,可通過軟件設(shè)置省電模式??臻e時(shí)停止CPU的工作,而RAM定時(shí)計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電模式振蕩器停止工作,保存RAM的數(shù)據(jù),并停止芯片其它工作直到外中斷激活或硬件復(fù)位。同時(shí)該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。2.AT89S51的優(yōu)越性在89C51的根底上89S51的性能有了很大的提升,新增功能很多,價(jià)格卻根本不變,甚至更低。89S51彌補(bǔ)了89C51于不支持ISP在線編程這一缺陷,改寫單片機(jī)存儲(chǔ)器內(nèi)的程序不再需要把芯片從工作環(huán)境中剝離。89C51的極限工作頻率只有24M,而89S51工作頻率為33MHz,具有更高工作頻率,從而計(jì)算速度更快。內(nèi)部集成看門狗計(jì)時(shí)器,不需要再像89C51外接看門狗計(jì)時(shí)器單元電路向下完全兼容51全部字系列產(chǎn)品。MCS-51早期產(chǎn)品,如:8051、89C51等都可在89S51上照常運(yùn)行全新的加密算法,89S51幾乎不可能被解密,程序的保密性大大加強(qiáng),可以有效的保護(hù)知識(shí)產(chǎn)權(quán)不被侵犯。2.3溫度傳感器的選擇溫度傳感器主要有四種類型:熱電偶、熱敏電阻、電阻溫度檢測(cè)器(RTD)和IC溫度傳感器。與熱敏電阻、熱電偶傳感器和RTD相比,IC溫度傳感器具有線性度高,本錢低,集成復(fù)雜的功能,測(cè)量溫度能夠直接提供一個(gè)數(shù)字輸出,并且溫度測(cè)量范圍滿足設(shè)計(jì)要求,應(yīng)選擇IC溫度傳感器。2.3.1DS18B20簡(jiǎn)介DS18B20具有微型化、低功耗、高性能抗干擾能力、強(qiáng)易配處理器等優(yōu)點(diǎn),是由DALLAS公司生產(chǎn)的一種采用單總線協(xié)議的數(shù)字溫度傳感器。用于工作的電源可以外接,也可以通過數(shù)據(jù)線獲得。目前常用的單片機(jī)與外部進(jìn)行數(shù)據(jù)傳輸?shù)拇锌偩€有SPI,SCI和I2C總線。其中I2C總線采用同步串行雙線進(jìn)行通信,SPI總線那么采用同步串行三線的方式進(jìn)行通信,而SCI總線是以異步方式進(jìn)行通信。這三種總線至少需要兩根或以上的信號(hào)線,而DS18B20的單總線方式只需要一根信號(hào)線,不僅能傳輸時(shí)鐘、數(shù)據(jù),還能數(shù)據(jù)雙向傳輸。DS18B20溫度傳感器特性獨(dú)特的單總線接口方式,與單片機(jī)僅僅只需要一條數(shù)據(jù)線即可實(shí)現(xiàn)雙向通信,占用單片機(jī)的端口少。不需要任何外圍元件,全部電路及傳感元件都集成在一個(gè)小小的器件內(nèi),可以節(jié)省大量的邏輯電路。測(cè)溫范圍為-55℃~+125℃,在-10℃~+85℃時(shí)精度為±0.5℃,滿足設(shè)計(jì)需要??删幊痰姆直媛蕿?~12位,對(duì)應(yīng)的可分辨溫度分別為0.5℃,0.25℃,0.125℃,0.0625℃,可以實(shí)現(xiàn)高精度編程。獨(dú)特的單總線接口方式,與單片機(jī)僅僅只需要一條數(shù)據(jù)線即可實(shí)現(xiàn)雙向通信,占用單片機(jī)的端口少。不需要任何外圍元件,全部電路及傳感元件都集成在一個(gè)小小的器件內(nèi),可以節(jié)省大量的邏輯電路。測(cè)溫范圍為-55℃~+125℃,在-10℃~+85℃時(shí)精度為±0.5℃,滿足設(shè)計(jì)需要。可編程的分辨率為9~12位,對(duì)應(yīng)的可分辨溫度分別為0.5℃,0.25℃,0.125℃,0.0625℃,可以實(shí)現(xiàn)高精度編程。測(cè)得的溫度結(jié)果用符號(hào)擴(kuò)展的16位數(shù)字量方式直接串行輸出,在傳送給CPU的同時(shí)可傳送CRC校驗(yàn)碼,具有很強(qiáng)的抗干擾糾錯(cuò)能力。支持多點(diǎn)組網(wǎng),多個(gè)DS18B20可以并聯(lián)到三根線上,而CPU只需一個(gè)端口線就能與多個(gè)DS18B20通信。10〕綜上,DS18B20不僅能滿足設(shè)計(jì)要求,還能很大程度的簡(jiǎn)化設(shè)計(jì),故在本系統(tǒng)中采用DS18B20測(cè)量溫度。2.4PID控制器溫度的控制具有大滯后性、非線性的特點(diǎn)。當(dāng)爐內(nèi)溫度升高到設(shè)定溫度時(shí),停止加熱,由于慣性發(fā)熱絲的溫度不會(huì)保持在設(shè)定溫度,而會(huì)繼續(xù)上升幾度,然后才開始下降。當(dāng)溫度低于設(shè)定溫度時(shí),開始加熱,溫度還會(huì)繼續(xù)下降幾度。因此,傳統(tǒng)的頂點(diǎn)開關(guān)控制溫度會(huì)有幾度的誤差?,F(xiàn)代溫度控制技術(shù)不斷開展,PID、最優(yōu)控制、自適應(yīng)控制,模糊控制每一種方法都改善了控制的性能。在爐溫控制中,PID和模糊控制應(yīng)用最多,也最具代表性。本設(shè)計(jì)選用PID算法。PID控制是控制工程中技術(shù)比擬成熟、應(yīng)用廣泛的一種控制方法。通過長(zhǎng)期的工程實(shí)踐,已經(jīng)形成了一套比擬完整的控制方法和典型的結(jié)構(gòu)。PID控制具有穩(wěn)定性能好、構(gòu)簡(jiǎn)單簡(jiǎn)單、可靠性高等優(yōu)點(diǎn),特別是適于可以建立精確數(shù)學(xué)模型的控制系統(tǒng)。PID控制規(guī)律:〔2.1〕式中:——控制器的輸出;——比例系數(shù);——偏差。模擬PID控制器的執(zhí)行機(jī)構(gòu)可以有電動(dòng)、液壓、氣動(dòng)等多種類型,這些通常采用硬件來實(shí)現(xiàn)PID控制規(guī)律。用軟件來實(shí)現(xiàn)PID控制具有更大的靈活性和可靠性。由于計(jì)算機(jī)只能處理數(shù)字,因此,要計(jì)算機(jī)軟件實(shí)現(xiàn)PID控制,首先必須將PID控制規(guī)律進(jìn)項(xiàng)數(shù)字化處理。PID數(shù)字化處理有兩種算法:位置式PID和增量式PID。式〔2.2〕為位置式控制算法,式〔2.3〕為增量式控制算法。位置式PID。位置式PID控制算法的每次輸出與所有的歷史狀態(tài)有關(guān),計(jì)算式中要用到歷史偏差的累加值,容易產(chǎn)生較大的誤差積累;而增量式PID只需要計(jì)算增量,計(jì)算誤差缺乏時(shí)對(duì)控制量的計(jì)算影響較小。增量式PID控制算法計(jì)算得到的是控制量的增量,誤動(dòng)作比擬小,不會(huì)嚴(yán)重影響生產(chǎn)過程;而PID位置式控制算法輸出的是控制量的全量輸出,誤動(dòng)作影響大。因此,本系統(tǒng)采用增量式PID控制算法。(2.2)(2.3)式中:——第次采樣時(shí)刻計(jì)算機(jī)運(yùn)算的控制量;——第次采樣時(shí)刻的偏差量;——第次采樣時(shí)刻的偏差量;=——積分系數(shù);——微分系數(shù)。2.5MOC3041簡(jiǎn)介本系統(tǒng)采用雙向晶閘管作為無觸點(diǎn)開關(guān)對(duì)爐溫進(jìn)行調(diào)節(jié)控制。單片機(jī)的驅(qū)動(dòng)能力有限,晶閘管還需另接觸發(fā)電路,采用MOC3041光耦過零觸發(fā)。MOC3041是帶有光隔的過零觸發(fā)器件,其硅探測(cè)器是一個(gè)帶有過零觸發(fā)的雙向可控硅。MOC3041通過P2口輸出的上下電平控制其觸發(fā)信號(hào)的輸出,從而控制晶閘管的開關(guān)。在對(duì)電爐溫度進(jìn)行調(diào)功控制時(shí)。通過對(duì)爐溫的定時(shí)采樣和PID控制運(yùn)算,單片機(jī)輸出一個(gè)控制量調(diào)節(jié)在設(shè)定的加熱周期內(nèi)調(diào)節(jié)晶閘管導(dǎo)通時(shí)間,就能實(shí)現(xiàn)對(duì)爐溫的控制。MOC3041驅(qū)動(dòng)電路如圖2.1。檢測(cè)器是一個(gè)含有兩個(gè)對(duì)紅外發(fā)射很敏感的反向并聯(lián)的高壓可控硅器件,每個(gè)可控硅的控制端和高速過零檢測(cè)電路相連接,這就保證了當(dāng)砷化鎵二極管LED通以電流,在交流電壓越過零點(diǎn)附近時(shí),檢測(cè)器轉(zhuǎn)換狀態(tài)。圖2.1根本驅(qū)動(dòng)電路當(dāng)加到二極管兩端的電流為零時(shí),電源電壓加在功率可控硅和可控硅驅(qū)動(dòng)器的陽極和陰極之間,假設(shè)在二極管中引入足夠的電流,那么可控硅驅(qū)動(dòng)器處于導(dǎo)通狀態(tài),向功率可控硅提供一個(gè)觸發(fā)電流,使功率可控硅導(dǎo)通。功率可控硅一旦導(dǎo)通,其陽極和陰極之間的壓降將降低,這將導(dǎo)致可控硅驅(qū)動(dòng)器的輸出電流降低,甚至降到低于它的維持電流,迫使可控硅驅(qū)動(dòng)器進(jìn)入關(guān)斷狀態(tài)。第3章仿真由于硬件條件有限,本次設(shè)計(jì)主要由仿真軟件Proteus實(shí)現(xiàn)。Proteus能實(shí)現(xiàn)單片機(jī)與外設(shè)的混合電路系統(tǒng)、軟件系統(tǒng)的設(shè)計(jì)和仿真。在仿真過程中,用戶可以用鼠標(biāo)單擊開關(guān)、鍵盤、電位計(jì)、可調(diào)電阻等外設(shè)設(shè)備,使單片機(jī)系統(tǒng)根據(jù)輸入信號(hào)做出相應(yīng)的響應(yīng),并將響應(yīng)處理結(jié)果根據(jù)所編制的軟件在顯示器上顯示,整個(gè)過程與硬件仿真器的調(diào)試過程相似。因此,在缺乏硬件的情況下,這是款非常實(shí)用的仿真軟件。其仿真原理圖經(jīng)驗(yàn)證后可直接應(yīng)用到顯示中。本次設(shè)計(jì)的電加熱爐采用Proteus中的OVEN進(jìn)行仿真,OVEN通電之后開始加熱,并輸出一個(gè)模擬量。由于軟件中的DS18B20無法采集電加熱爐的溫度,故要分兩局部進(jìn)行仿真:DS18B20溫度顯示仿真和PID控制仿真。DS18B20溫度顯示仿真如圖3.1,DS18B20的值可以任意調(diào)整,模擬溫度的采集,LCD的顯示值隨DS18B20的溫度值變化而變化。當(dāng)溫度超過界限,LED亮,同時(shí)SOUNDER響,模擬警報(bào)系統(tǒng)。當(dāng)按下k1,顯示溫度的最高位光標(biāo)開始閃爍,進(jìn)入設(shè)定溫度調(diào)整,按下k2,光標(biāo)右移,按下k3數(shù)值加1,按下k4數(shù)值減1。圖3.1DS18B20仿真圖PID控制仿真如圖3.2,電加熱爐OVEN輸出的模擬量經(jīng)ADC0804轉(zhuǎn)化成數(shù)字量,再送到LCD顯示。OVEN的溫度與設(shè)定溫度在單片機(jī)內(nèi)進(jìn)行PID運(yùn)算,PID輸出量控制晶閘管的導(dǎo)通,從而控制OVEN的加熱。圖3.2PID控制仿真圖第4章硬件設(shè)計(jì)4.1主電路設(shè)計(jì)4.1.1時(shí)鐘電路AT89S51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是反相放大器的輸入端和輸出端,通常,經(jīng)由片外晶體振蕩器或陶瓷諧振器與兩個(gè)相匹配的電容一起構(gòu)成一個(gè)自激振蕩電路,為單片機(jī)提供時(shí)鐘源,如圖4.1所示。圖4.1時(shí)鐘電路MSC-51單片機(jī)的工作頻率為2~12MHZ,晶振的選擇很關(guān)鍵。單片機(jī)在運(yùn)行時(shí),是按照統(tǒng)一時(shí)鐘源時(shí)鐘的信號(hào)來驅(qū)動(dòng)完成一系列的操作,在一定時(shí)鐘節(jié)拍下完成指令規(guī)定的操作。晶振的選擇直接影響了單片機(jī)的運(yùn)行速度。本系統(tǒng)選用頻率為12MHZ的晶振。MCS-51指令的每個(gè)機(jī)器周期包含6個(gè)狀態(tài)周期,每個(gè)狀態(tài)周期由兩個(gè)節(jié)拍組成,每個(gè)節(jié)拍持續(xù)一個(gè)時(shí)鐘周期,也就是說,12次時(shí)鐘振蕩后完成一個(gè)機(jī)器周期。本系統(tǒng)一個(gè)機(jī)器周期的時(shí)間為12·﹙1/12﹚=1us。電容值無嚴(yán)格要求,但電容值對(duì)振蕩頻率輸出的穩(wěn)定性、起振速度有少許影響。本設(shè)計(jì)選擇30pF電容。4.1.2復(fù)位電路復(fù)位時(shí)單片機(jī)的初始化操作,其作用是使PCU和系統(tǒng)中的中其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。MCS-51單片機(jī)有兩種復(fù)位方式:上電復(fù)位和按鍵復(fù)位。RST/Vpd引腳是復(fù)位輸入引腳,通過一個(gè)施密特觸發(fā)器與內(nèi)部復(fù)位電路相連。在RST端變?yōu)楦唠娖降牡诙€(gè)機(jī)器周期內(nèi)執(zhí)行復(fù)位,此后每個(gè)周期執(zhí)行一次,直至RST端出現(xiàn)低電平。最簡(jiǎn)單的復(fù)位電路,是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的,上電瞬間RST端的電位與Vcc相同,隨著電容充電電流的減小,RST端電位逐漸下降。只要Vcc上升時(shí)間不超過10ms,上電復(fù)位就能保證在上電開機(jī)時(shí)完成復(fù)位操作。為了保證復(fù)位電路可靠地工作,出來上電復(fù)位外,有時(shí)還需要手動(dòng)復(fù)位。本系統(tǒng)采用按鍵復(fù)位,如圖4.2。圖4.2復(fù)位電路4.2鍵盤輸入電路設(shè)計(jì)單片機(jī)常用的鍵盤有獨(dú)立式和矩陣式。獨(dú)立鍵盤就是一組互相獨(dú)立的按鍵,這些按鍵的一端直接與單片機(jī)的I/O口相連,每個(gè)按鍵占用一個(gè)I/O口。矩陣鍵盤是由m條I/O線組成輸出口,n條I/O線組成輸入口,在行列線的每個(gè)交點(diǎn)設(shè)置一個(gè)鍵盤,因此鍵盤數(shù)=m×n。由于本系統(tǒng)所需鍵盤數(shù)目不多故采用獨(dú)立鍵盤。鍵盤直接與單片機(jī)的P1口的P1.0、P1.1、P1.2、P1.3相連。如圖4.3所示,當(dāng)?shù)谝淮伟磌1鍵時(shí),進(jìn)入恒定溫度設(shè)置;當(dāng)按k3鍵時(shí),當(dāng)前值加1;當(dāng)按下k4鍵時(shí),當(dāng)前值減1;當(dāng)按下k2時(shí),待調(diào)整值右移,進(jìn)入下一個(gè)數(shù)的調(diào)整;當(dāng)?shù)诙伟聪耴1,系統(tǒng)退出調(diào)整狀態(tài)。圖4.3鍵盤輸入電路4.3顯示電路設(shè)計(jì)本次設(shè)計(jì)采用了LCD液晶顯示來顯示采集的溫度值和設(shè)定溫度值。如圖4.3,LCD的D0~D7八位雙向數(shù)據(jù)線,由單片機(jī)P0口控制,經(jīng)過阻值為10K?的上拉電阻連接。RS存放器選擇,由單片機(jī)P2.6口控制,高電平時(shí)選擇數(shù)據(jù)存放器、低電平時(shí)選擇指令存放器,。RW讀寫信號(hào)線,由單片機(jī)P2.6口控制,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。EN端為使能端,由單片機(jī)P2.7口控制,當(dāng)EN端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。圖4.4顯示電路圖4.4溫度采集電路設(shè)計(jì)DS18B20結(jié)構(gòu)簡(jiǎn)單,采用TO-92封裝和SOIC封裝,如圖4.5所示,其引腳功能見表4.1。DS18B20引腳功能說明見表4.2。TO-92封裝SOIC封裝圖4.5DS18B20封裝圖表4.1DS18B20引腳功能說明引腳功能說明GND地DQ數(shù)據(jù)輸入/輸出VDD外部供電電源引腳NC空腳DS18B20有兩種供電方式:一種是外部電源供電,另一種是寄生電源供電。本次設(shè)計(jì)采用外部供電,Vcc接5V電源,GND接地。DS18B20與單片機(jī)的連接非常簡(jiǎn)單,單總線DQ直接與單片機(jī)端口P3.7相連。圖4.6溫度采集電路圖4.5報(bào)警電路設(shè)計(jì)當(dāng)測(cè)量溫度高于或低于溫度界限,系統(tǒng)有必要進(jìn)行警報(bào)提示。為此,在本系統(tǒng)中采用了LED和喇叭同時(shí)工作進(jìn)行警報(bào)工作。如圖4.7,Q1為開關(guān)元件,當(dāng)溫度超過界限,單片機(jī)給P2.4送一個(gè)低電平,此時(shí)Q1導(dǎo)通,LED和喇叭同時(shí)開始工作,直到溫度被控制在設(shè)定范圍之內(nèi)。圖4.7報(bào)警電路4.6溫度控制電路設(shè)計(jì)該電路的主要任務(wù)是控制爐溫。晶閘管又稱可控硅,是一種半導(dǎo)體器件,具有單向?qū)щ姷奶攸c(diǎn),能以小功率控制大功率的機(jī)電設(shè)備,反響速度非常快,納秒級(jí)就可以開通、關(guān)斷,無觸點(diǎn)運(yùn)行,效率高。本系統(tǒng)采用雙向晶閘管作為爐內(nèi)加熱的開關(guān)元件,采用MOC3041可控硅調(diào)節(jié)方式來控制晶閘管的導(dǎo)通。如圖4.8,MOC3041的輸入端分別與電源和單片機(jī)的P2.3口相接,當(dāng)需要加熱時(shí),單片機(jī)通過P2.3給MOC3041一個(gè)低電平來控制雙向晶閘管的導(dǎo)通,從而使電爐開始加熱。但需要停止加熱,P2.3輸出高電平來關(guān)斷晶閘管,從而停止加熱。圖4.8溫度控制電路第5章軟件設(shè)計(jì)5.1主程序設(shè)計(jì)在單片機(jī)應(yīng)用系統(tǒng)中,軟件占有至關(guān)重要的作用,硬件電路需要軟件的支持才能得以功能的實(shí)現(xiàn)。根據(jù)設(shè)計(jì)要求,將軟件分為幾個(gè)獨(dú)立的模塊,如圖5.1所示。圖5.1主程序框圖主程序是整個(gè)軟件的核心局部,主要包括相關(guān)模塊的初始化和子程序的調(diào)用。主程序的流程圖如圖5.2所示。圖5.2主程序流程圖5.2顯示模塊程序設(shè)計(jì)LCD1602根本操作時(shí)序如表5.1,謹(jǐn)按照其操作時(shí)序編寫程序。原那么上每次對(duì)控制器進(jìn)行讀/寫操作時(shí),都要進(jìn)行讀/寫檢測(cè),由于單片機(jī)的操作速度慢于液晶控制器的反響速度,因此只需進(jìn)行簡(jiǎn)單延時(shí)就行。表5.1LCD根本操作時(shí)序讀狀態(tài)輸入RS=L,R/W=H,E=H輸出D0—D7=狀態(tài)字寫指令輸入RS=L,R/W=L,D0—D7=指令碼,E=高脈沖輸出無讀數(shù)據(jù)輸入RS=H,R/W=H,E=H輸出D0—D7=數(shù)據(jù)寫數(shù)據(jù)輸入RS=H,R/W=L,D0—D7=數(shù)據(jù),E=高脈輸出無LCD的內(nèi)部設(shè)有一個(gè)數(shù)據(jù)地址指針,可以通過它們?cè)L問內(nèi)部全部80B的RAM,如表5.2。圖5.3為L(zhǎng)CD顯示程序流程圖。表5.2數(shù)據(jù)指針設(shè)置指令碼功能80H+地址碼〔0~27H,40~67H〕設(shè)置數(shù)據(jù)地址指針圖5.3顯示程序流程圖5.3鍵盤掃描模塊程序設(shè)計(jì)常用鍵盤的按鍵是一個(gè)機(jī)械開關(guān)結(jié)構(gòu),被按下時(shí),由于機(jī)械觸點(diǎn)的彈跳及電壓不穩(wěn)等原因,在按鍵在被按下和釋放的瞬間會(huì)出現(xiàn)抖動(dòng)。其觸點(diǎn)的電壓變化過程如圖5.4所示。圖5.4按鍵被按下是電壓變化圖5.5硬件去抖從圖5.4可看出,理想波形與實(shí)際波形之間的區(qū)別,實(shí)際波形在按下和釋放的瞬間都要抖動(dòng)的現(xiàn)象,抖動(dòng)的時(shí)間長(zhǎng)短和按鍵的機(jī)械特性有關(guān),一般為5~10ms。這種抖動(dòng)可能會(huì)引起按鍵被讀入屢次的情況。通常按鍵按下然后立即釋放,這個(gè)動(dòng)作中穩(wěn)定閉合的時(shí)間超過20ms。因此單片機(jī)在檢測(cè)鍵盤的時(shí)候都要加上去抖的操作。有硬件去抖和軟件去抖,硬件去抖電路如圖5.5。一般用軟件延時(shí)就能解決抖動(dòng)的問題,而沒必要添加硬件電路。當(dāng)檢測(cè)到按鍵閉合后執(zhí)行一個(gè)數(shù)毫秒延時(shí)程序,讓前沿抖動(dòng)消失后再檢測(cè)按鍵是否閉合;當(dāng)檢測(cè)到鍵松開后,也要給數(shù)毫秒的延時(shí),待后沿抖動(dòng)消失后再檢測(cè)檢測(cè)下一次按鍵的閉合。鍵盤掃描程序流程圖如圖5.6。圖5.6鍵盤掃描程序流程圖5.4報(bào)警模塊程序設(shè)計(jì)圖5.7報(bào)警程序流程圖5.5PID控制程序?yàn)榫幊谭奖悖瑢⑹健?.3〕整理成〔5.5〕式中:、、、確定之后,只需要計(jì)算當(dāng)前偏差和前兩次的偏差就可以由式〔5.5〕計(jì)算出當(dāng)前的控制量增量。定時(shí)器定時(shí)50ms,每隔50ms執(zhí)行一次中斷完成PID的運(yùn)算,再根據(jù)PID輸出的控制量來調(diào)節(jié)電爐的溫度。PID算法的程序框圖如圖5.8。圖5.8PID算法程序流程圖參考文獻(xiàn)[1]王迎旭.單片機(jī)原理與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2023.[2]郭天祥.51單片機(jī)C語言教程[M].北京:電子工業(yè)出版社,2023.[3]戴永.微型計(jì)算機(jī)控制技術(shù)[M].湘潭:湘潭大學(xué)出版社,2023.[4]賈宗璞,許合利.C語言程序設(shè)計(jì)[M].徐州:中國(guó)礦業(yè)大學(xué)出版社,2007.[5].康華光、鄒壽彬,電子技術(shù)根底[M].北京:高等教育出版社,2004.[6].三恒星科技.MCS51單片機(jī)原理與應(yīng)用實(shí)例[M].北京:電子工業(yè)出版社,2023.1[7].張友德,單片機(jī)原理應(yīng)用與實(shí)驗(yàn)[M].上海,復(fù)旦大學(xué)出版社,1992.[8].張毅剛、彭喜源、譚曉鈞,曲春波.MCS-51單片機(jī)應(yīng)用設(shè)計(jì)[M],哈爾濱工業(yè)大學(xué)出版社,2001.1.[9].曹巧媛,單片機(jī)原理及應(yīng)用[M].北京:電子工業(yè)出版社,1997.[10].RajagopalKRComputeraideddesignofahysteresismotorusedinspaceapplication2003[11].張俊謨.單片機(jī)中高級(jí)教程—原理與應(yīng)用〔第2版[M]〕.北京:北京航空航天大學(xué)出版社,2006.[12].樓然苗,李光飛.單片機(jī)課程設(shè)計(jì)指導(dǎo)[M].北京:北京航空航天大學(xué)出版社,2007.[13].賴壽宏.微型計(jì)算機(jī)控制技術(shù)[M].北京:機(jī)械工業(yè)出版社.2003[14].邊春遠(yuǎn),王志強(qiáng).51單片機(jī)C語言教程[M].人民郵電出版社.2005[15].徐愛鈞.基于proteus虛擬仿真[M].電子工業(yè)出版社.2023致謝在這幾個(gè)月的設(shè)計(jì)過程中我收獲不少,我對(duì)單片機(jī)的實(shí)際應(yīng)用有了更深的認(rèn)識(shí),對(duì)單片機(jī)的理論知識(shí)有了更深的理解,動(dòng)手能力明顯提高。很感謝老師們和同學(xué)們的無私幫助,尤其是我的指導(dǎo)老師林老師。最初拿到畢業(yè)設(shè)計(jì)課題——基于單片機(jī)的爐溫控制系統(tǒng)設(shè)計(jì)時(shí)我一片茫然,不知道具體是要做什么,沒半點(diǎn)主意。在林老師的指點(diǎn)下,我有了大概的思路。我開始不停的在網(wǎng)上查閱各種資料,先是總體的了解爐溫控制設(shè)計(jì)的要求,然后將它分成幾個(gè)模塊,最后再一個(gè)模塊一個(gè)模塊的去解決。首先我根據(jù)設(shè)計(jì)要求畫出了電路圖,接下來最關(guān)鍵的就是寫程序了。我通過參考書本和網(wǎng)上查閱資料,學(xué)習(xí)了LCD1602、DS18B20、MOC3041芯片的結(jié)構(gòu)及功能??粗W(wǎng)上各種版本長(zhǎng)長(zhǎng)的模塊程序,還真有點(diǎn)摸不著頭腦,沒方法,只能硬著頭皮看下去。融會(huì)貫穿之后,很快寫了完程序,局部模塊〔溫度顯示、鍵盤輸入、報(bào)警〕我是用單片機(jī)開發(fā)板在線調(diào)試的,這樣方便不少,能很直觀的知道哪局部程序執(zhí)行有問題。由于條件有限,溫度控制就只能局部就只能用proteus仿真了。經(jīng)過反復(fù)的調(diào)試、修改整個(gè)畢業(yè)設(shè)計(jì)總算是弄得差不多了。我做畢業(yè)設(shè)計(jì)的每個(gè)階段,從選題到查閱資料,開題報(bào)告的撰寫,硬件、軟件的設(shè)計(jì),論文的修改都得到了林老師的耐心指導(dǎo)。不管多忙,林老師每周都會(huì)抽出時(shí)間檢查我們的設(shè)計(jì)進(jìn)展,并給予幫助。一個(gè)很小的問題,有時(shí)候我可能會(huì)卡很久,而向老師尋求幫助一下子就解決了,大大的加快了設(shè)計(jì)的速度。在此,我再一次真誠(chéng)的向幫助過我的同學(xué)和老師表示感謝!附錄A電路圖附錄B程序清單#include<reg52.h>#include<math.h>floatR;floatKp;floatT;floatTi;floatTd;floate2;floate1,e;floata0,a1,a2;#defineuiunsignedint#defineucunsignedcharsbitbj=P2^4;sbitlcden=P2^7;sbitlcdrs=P2^6;sbitlcdrw=P2^5;sbitcontrol=P2^3;charlshi,lge,hshi,hge;ucnum,flag;uitemp;sbitdsio=P3^7;//延時(shí)voiddelay(uiz){ ucx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}//DS18B20控制voiddsinit(){ uci; dsio=0; i=70; while(i--); dsio=1; i=4; while(i--);}voiddswritebyte(ucdat){ uci,j; for(j=0;j<8;j++) { dsio=0; i++; dsio=dat&0x01; i=6; while(i--); dsio=1; dat>>=1; }}ucdsreadbyte(){ uci,j,byte,b; for(j=0;j<8;j++) { dsio=0; i++; dsio=1; i++;i++; b=dsio; byte=(byte>>1)|(b<<7); i=4; while(i--); } returnbyte;}voiddschangetemp(){ dsinit(); delay(1); dswritebyte(0xcc); dswritebyte(0x44);}voiddsreadtemp(){ dsinit(); delay(1); dswritebyte(0xcc); dswritebyte(0xbe);}uigettemp(){ inttemp; uch,l; dschangetemp(); dsreadtemp(); l=dsreadbyte(); h=dsreadbyte(); temp=h; temp<<=8; temp|=l; temp=temp*0.0625*100+0.5; returntemp;}//LCD控制程序voidlcdwritecom(uccom){ lcdrs=0; P0=com; delay(10); lcden=1; delay(10); lcden=0;}voidlcdwritedata(ucdate){ lcdrs=1; P0=date; delay(10); lcden=1; delay(10); lcden=0;}voidlcdinit(){ lcdrw=0; lcden=0; lcdwritecom(0x38); lcdwritecom(0x0c); lcdwritecom(0x06); lcdwritecom(0x01);}//LCD顯示voidlcddisplay(inttemp){ uitab[]={0,0,0,-2,0,0}; lcdwritecom(0x80); lcdwritedata('+'); tab[0]=temp/10000; tab[1]=temp%10000/1000; tab[2]=temp%1000/100; tab[4]=temp%100/10; tab[5]=temp%10; lcdwritecom(0x81); for(num=0;num<6;num++) { lcdwritedata('0'+tab[num]); }}//報(bào)警voidbaojing(){ floatt; t=gettemp(); if(t<3000||t>8500) bj=0; elsebj=1; }voidadjust(){ delay(100); flag++; if(flag==5)flag=1; if(flag==1) { lcdwritecom(0x80+0x44); lcdwritecom(0x0f); } if(flag==2) { lcdwritecom(0x80+0x45); lcdwritecom(0x0f); } if(flag==3) { lcdwritecom(0x80+0x47); lcdwritecom(0x0f); } if(flag==4) { lcdwritecom(0x80+0x48); lcdwritecom(0x0f); }}voidinc(){ delay(100); switch(flag) { case1:lshi++;if(lshi==10)lshi=0; lcdwritedata('0'+lshi); lcdwritecom(0x10); break; case2:lge++;if(lge==10)lge=0; lcdwritedata('0'+lge); lcdwritecom(0x10); break; case3:hshi++;if(hsh

溫馨提示

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