單片機(jī)水溫控制電路設(shè)計_第1頁
單片機(jī)水溫控制電路設(shè)計_第2頁
單片機(jī)水溫控制電路設(shè)計_第3頁
單片機(jī)水溫控制電路設(shè)計_第4頁
單片機(jī)水溫控制電路設(shè)計_第5頁
已閱讀5頁,還剩64頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 單片機(jī)水溫控制電路設(shè)計序言無論是工業(yè)控制領(lǐng)域還是消費電子領(lǐng)域,溫度控制的應(yīng)用都非常廣泛,如工業(yè)控制中的鍋爐、加熱爐的控制,消費電子領(lǐng)域的熱水器、飲水機(jī)的控制,內(nèi)部都涉及到溫度控制1。傳統(tǒng)靠人工控制的溫度、濕度、液位等信號的測壓力控系統(tǒng),外圍電路比較復(fù)雜,測量精度較低,分辨力不高,需進(jìn)行溫度校準(zhǔn)(非線性校準(zhǔn)、溫度補(bǔ)償、傳感器標(biāo)定等);且它們的體積較大、使用不夠方便。隨著社會的發(fā)展、科技的進(jìn)步以及人們生活水平的逐步提高,各種方便于生產(chǎn)的自動控制系統(tǒng)開始進(jìn)入了人們的生活,以單片機(jī)為核心的溫度采集系統(tǒng)就是其中之一2。采用MCS-51單片機(jī)對溫度進(jìn)行控制,不僅具有控制方便、簡單和靈活等優(yōu)點,而且可以大

2、幅度提高溫度控制的技術(shù)指標(biāo)。本文正是介紹一個基于單片機(jī)的水溫控制電路來控制電爐內(nèi)的水溫。水溫控制在工業(yè)及日常生活中應(yīng)用廣泛,分類較多,不同水溫控制系統(tǒng)的控制方法也不盡相同,其中以PID控制法最為常見,但是,常規(guī)調(diào)節(jié)三個參數(shù)的整定一般需要經(jīng)驗豐富的工程技術(shù)人員來完成,步驟繁瑣復(fù)雜,既耗時又耗力.而且當(dāng)對象特征變化時,又要重新整定,并且在現(xiàn)代工業(yè)控制過程中,許多被控對象機(jī)理復(fù)雜,這種情況下,采用常規(guī)PID調(diào)節(jié)器,三個參數(shù)的整定比較困難,為此本文提出了采用歸一參數(shù)整定法,即只整定一個參數(shù),這樣減少了許多工作量,提高了工作效率,為實現(xiàn)簡易的自整定控制帶來方便3。 本設(shè)計單片機(jī)控制部分采用AT89C51

3、單片機(jī)為核心,采用軟件編程,實現(xiàn)用PID算法來控制PWM波的產(chǎn)生,進(jìn)而控制電爐的加熱來實現(xiàn)溫度控制。適用于環(huán)境參數(shù)經(jīng)常變化的小型水溫控制電路。設(shè)計中使用7407同相器作為數(shù)碼管和固態(tài)繼電器的驅(qū)動。 第一章 設(shè)計任務(wù)1.1功能1.總的工作功能 本設(shè)計的任務(wù)是:用電爐對水加熱,基于單片機(jī)設(shè)計一個電爐水加熱控制電路。要求顯示實際溫度和門限溫度,并且要求門限水溫可以由人工通過鍵盤來設(shè)定。電路可以通過對實際溫度和門限溫度的差值的處理來控制繼電器進(jìn)而控制電爐的開關(guān),從而對水溫進(jìn)行控制,使水溫保持在一定溫度上。2.各部分的功能(1)電爐 接上220V 交流電,由繼電器控制其開關(guān),對水進(jìn)行加熱。(2)傳感器

4、對水溫進(jìn)行實時檢測,輸出溫度信號給單片機(jī)。(3)單片機(jī)基本系統(tǒng) a.要采集溫度傳感器傳過來的信號,進(jìn)行相應(yīng)的處理,送往顯示部分;b.接受鍵盤輸入的信號,進(jìn)行相應(yīng)的處理,送往顯示部分; c.根據(jù)實測溫度和設(shè)定溫度的比較,進(jìn)行相應(yīng)的處理,給出控制信號??刂评^電器開關(guān),從而控制電爐開關(guān)。顯示 由六個七段數(shù)碼管以及數(shù)碼管的驅(qū)動電路組成,三位數(shù)碼管顯示出測量結(jié)果,三位數(shù)碼管顯示出限定溫度。按鍵鍵入門限值。 (6)報警電路 當(dāng)按鍵輸入的溫度在軟件所限制的范圍之外時,報警電路報警。繼電器 接受單片機(jī)傳來的信號,通過其驅(qū)動,然后作出相應(yīng)的操作來控制電爐工作與否。相當(dāng)于一個由單片機(jī)控制的開關(guān)。1.2 技術(shù)指標(biāo)

5、1門限溫度可以在4090之間設(shè)定; 2可以通過用鍵盤人工設(shè)定門限溫度; 3用數(shù)碼管顯示設(shè)定溫度和實際溫度。第二章 設(shè)計思路2.1 總體設(shè)計此設(shè)計一個基于單片機(jī)的水溫控制電路,需要完成的功能是溫度的設(shè)定、檢測與顯示以及的溫度的控制和報警等。當(dāng)溫度小于設(shè)定溫度時電爐工作,當(dāng)溫度大于設(shè)定溫度時電爐不工作。(1)軟、硬件功能劃分4 在絕大多數(shù)單片機(jī)應(yīng)用電路中,電路功能的軟、硬件劃分往往是由應(yīng)用電路對控制速度的要求決定的,在沒有速度限制的情況下可以考錄以軟件換取硬件電路的簡化,以求降低硬件成本。速度估算 在不考慮容器熱容量和環(huán)境溫度影響的情況下,水溫上升1所需的時間達(dá)到秒,如果考慮容器熱容量和環(huán)境溫度的

6、影響,時間可能更長。由此可見,對于指令執(zhí)行時間一般為幾個微妙的單片機(jī)應(yīng)用電路來說,控制速度幾乎沒有熱核限制。軟、硬件功能劃分為了簡化華電路硬、 降低硬件成本、提高電路靈活性和可靠性,有關(guān)PID運算,輸入信號濾波及大部分控制過程都可由軟件來完成,硬件的主要功能是溫度信號的傳感,設(shè)定值的鍵入,數(shù)值的顯示及輸出信號的轉(zhuǎn)換。2.2 簡述首先,要選擇一個CPU控制芯片。由于電路控制方案簡單,在運行過程中需要存放的中間變量只有給定溫度、實測溫度、PI運算中間結(jié)果及輸出結(jié)果等十幾個變量,因此選用AT89C51微控制器作為電路的核心,由于AT89C51的片內(nèi)RAM已能滿足存放要求,可不必再擴(kuò)充外部RAM4。其

7、次,要選擇一個溫度敏感元件,它能夠很靈敏的根據(jù)溫度變化輸出一定的信號。這樣的器件種類很多,本設(shè)計選用的數(shù)字式集成溫度傳感器DS18B20。這是由于本設(shè)計中單片機(jī)除了要完成數(shù)據(jù)采集、處理、控制和顯示任務(wù)外,還要完成按鍵值得采集、處理。如果用常規(guī)的數(shù)字加模擬電路實現(xiàn)就會相對困難一些。DS18B20是DALLAS半導(dǎo)體公司(現(xiàn)屬MAXIM公司)設(shè)計生產(chǎn)的單總線數(shù)字溫度傳感器,其測量溫度范圍為55125,在-10+85時精度為0.5,這個精度已可以滿足普通型的環(huán)境溫度控制或測溫類消費產(chǎn)品的要求。這個傳感器最大的特點就是能夠從一根總線直接輸出二進(jìn)制的溫度信號,不需要A/D轉(zhuǎn)換和信號放大。這樣的選擇使得整

8、個電路的硬件設(shè)計更為簡化,節(jié)省了單片機(jī)的資源 5 。再次,設(shè)計顯示部分、按鍵部分和報警。顯示部分的設(shè)計考慮到在軟件設(shè)計過程中實際溫度和設(shè)定溫度之間會有影響,本設(shè)計采用實際溫度和門限溫度單獨顯示,各用一組I/O口。選用的是兩組共陰極數(shù)碼管,采用一塊同相器74LS07集成塊來驅(qū)動。動態(tài)掃描顯示。按鍵部分的設(shè)計考慮到單片機(jī)I/O資源不足的緣故,本設(shè)計采用三個按鍵分別用來設(shè)定門限值十位、個位和一位小數(shù)位。報警部分就是當(dāng)設(shè)定的門限溫度在4090之外,就要報警,用一個發(fā)光二極管表示。最后,控制部分的設(shè)計,這一部分主要就是繼電器的選擇。本設(shè)計選擇的是固態(tài)繼電器。固態(tài)繼電器(Solid state Relay

9、-SSR)是近幾年發(fā)展起來的一種新型電子繼電器,其輸入控制電流小,容易驅(qū)動,其輸出利用晶體管或可控硅驅(qū)動,無觸點。與普通的電磁式繼電器和磁力開關(guān)相比,具有無機(jī)械噪聲、無抖動和回跳、開關(guān)速度快、體積小質(zhì)量輕、壽命長、工作可靠等特點,并且耐沖擊、抗潮濕、抗腐蝕,因此在單片機(jī)測控等領(lǐng)域中6。本設(shè)計采用同相器74LS07集成塊來驅(qū)動固態(tài)繼電器。另外在選擇繼電器時還要注意它的供電電壓和帶負(fù)載能力。本設(shè)計中繼電器是由單片機(jī)控制的所以它的供電電壓選擇5V直流電。繼電器所帶的負(fù)載為一個額定功率300W,接220V交流電的電爐。所以繼電器的要選用交流型(AC-SSR),耐壓在220V以上,電流為1.5A以上。本

10、設(shè)計選用的是5V供電,2A 250VAC的固態(tài)繼電器。2.3設(shè)計框圖 1.設(shè)計過程框圖如圖2-1軟件各模塊設(shè)計、修改硬件各部分設(shè)計、修改軟硬件劃分查資料整體工作電路設(shè)計結(jié)束軟硬件的聯(lián)調(diào)圖2-1 設(shè)計過程框圖2.電路框圖如圖2-2 鍵盤 報警電路 顯示電路 單片機(jī)基本系統(tǒng) 繼電器傳感器 電爐圖 2-2 水溫控制電路總體框圖第三章 理論設(shè)計3.1 控制部分的設(shè)計3.1.1 AT89C51單片機(jī)的結(jié)構(gòu)7 一.AT89C51結(jié)構(gòu)框圖 AT89C51內(nèi)部結(jié)構(gòu)框圖如圖3-1內(nèi)部中斷中斷控制 外部中斷 CPU OSC ALE 程序存貯器4K字節(jié) ROM總線控制 P0 P1 P2 P3 數(shù)據(jù)存貯器128字節(jié)

11、RAM 48 I/O口TXD RXD 串行口外部計數(shù)脈沖定時器1定時器0 圖3-1 AT89C51內(nèi)部結(jié)構(gòu)框圖圖3-2 AT89C51引腳圖二.引腳功能說明 AT89C51是雙列制插封裝形式的器件,其引腳圖如圖3-2所示。 AT89C51的引腳P00P07、P10P17、P20P27、P30P37為四個8位并行輸入/輸出口,其中P3口、P0口、P2口為雙功能口,可以作為普通輸入/輸出口(第一功能),也可以作為特殊輸入/輸出口。RST為復(fù)位輸入線,ALE、為系統(tǒng)擴(kuò)展控制線,XTAL1和XTAL2為時鐘電路輸入/輸出線,VCC、VSS為電源輸入線,一般接5V和地。3.1.2 AT89C51單片機(jī)最

12、小系統(tǒng)最小系統(tǒng)包括單片機(jī)的基本供電、時鐘電路和復(fù)位電路。一.時鐘和時鐘電路 時鐘電路是計算機(jī)的心臟,它控制著計算機(jī)的工作節(jié)奏。AT89C51單片允許的時鐘頻率的典型值12MHZ,也可以是6MHZ。本設(shè)計采用12MHZ。單片機(jī)時鐘電路圖如圖3-3 圖3-3 單片機(jī)時鐘電路 圖3-10中晶振頻率選擇12MHZ。接到晶振兩端的瓷片電容作用是使振蕩器起振和對f 微調(diào)補(bǔ)償,典型值為30PF,本設(shè)計中選用20PF瓷片電容。當(dāng)單片機(jī)加電以后延遲約10ms的時間振蕩器起振產(chǎn)生時鐘,不受軟件控制(XTAL2輸出幅度為3V左右的正弦波。二.復(fù)位和復(fù)位電路計算機(jī)在啟動運行時都需要復(fù)位,使中央處理器CPU和系統(tǒng)中的其

13、它部件都處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。單片機(jī)的復(fù)位引腳是RST,當(dāng)振蕩器起振后,該引腳上出現(xiàn)2個周期的高電平,是器件復(fù)位,只要RST保持高電平,單片機(jī)保持復(fù)位狀態(tài)。單片機(jī)復(fù)位方式有二種:上電復(fù)位(如圖3-4)、人工復(fù)位(如圖3-5)。 圖3-4 上電復(fù)位電路 圖3-5 上電復(fù)位和開關(guān)復(fù)位注:RST與Vss之間的那個電阻在NMOS型單片機(jī)種需要接,但是在CMOS型單片機(jī)中不接。其中電容一般為10UF的電解電容。三.AT89C51單片機(jī)最小系統(tǒng)連接原理圖 本設(shè)計的AT89C51單片機(jī)最小系統(tǒng)原理圖。如圖3-6圖3-6 AT89C51最小系統(tǒng)連接原理圖3.2 顯示部分的設(shè)計 LED顯

14、示器接口原理6 LED(Light Emitting Diode)是發(fā)光二極管的縮寫。LED顯示器是由發(fā)光二極管構(gòu)成的。LED顯示器在單片機(jī)中的應(yīng)用非常普遍。LED顯示器的結(jié)構(gòu)(a) 外形 (b)共陽極 (c)共陰極圖3-7 七段發(fā)光顯示器的結(jié)構(gòu) 常用的LED顯示器為8段(或7段,8段比7段多了一個小數(shù)點“dip”段)。每一個段對應(yīng)一個發(fā)光二極管。這種顯示器有共陰極和共陽極兩種,如圖3-7所示。共陰極LED顯示器的發(fā)光二極管的陰極連結(jié)在一起,通常此公共陰極接地。當(dāng)某個發(fā)光二極管的陽極為高電平時,發(fā)光二極管點亮,相應(yīng)的段被顯示。同樣,共陽極LED顯示器的發(fā)光二極管的陽極連結(jié)在一起,通常此公共陽極

15、接正電壓,當(dāng)某個發(fā)光二極管的陽極為低電平時,發(fā)光二極管點亮,相應(yīng)的段被顯示11。為了使LED顯示器顯示不同的符號或數(shù)字,就要把不同段的發(fā)光二極管點亮,這樣就要為LED顯示器提供代碼,因為這些代碼可使LED相應(yīng)的段發(fā)光,從而顯示不同的字型,因此該代碼稱之為段碼(或字型碼)。7段發(fā)光二極管,再加上一個小數(shù)點位,共計8段。因此提供給LED顯示器的字型碼正好是一個字節(jié)。各段與字節(jié)中的各位對應(yīng)的關(guān)系如表3-1。表3-1 顯示段與代碼位的對應(yīng)關(guān)系表代碼位D7D6D5D4D3D2D1D0顯示段dipgfedcba按照表3-1格式,8段LED顯示器的字型碼如表3-2所示。表3-2 8段LED顯示器部分字型碼顯

16、示字符共陰極段碼共陽極段碼顯示字符共陰極段碼共陽極段碼03FHC0H67DH82H106HF9H707HF8H25BHA4H87FH80H34FHB0H96FH90H466H99H“滅”00H88H56DH92H注:段碼是相對的,它由個字段在字節(jié)中所處的位決定。應(yīng)根據(jù)實際情況確定,以上表格用來參考。二.LED顯示器工作原理 LED顯示器有靜態(tài)顯示和動態(tài)顯示兩種顯示方式。 1.LED靜態(tài)顯示方式7所謂靜態(tài)顯示,就是當(dāng)顯示器顯示某一個字符時,相應(yīng)的發(fā)光二極管恒定地導(dǎo)通或截止。這種顯示方式的每一個8段顯示器需要一個8位輸出口控制。如圖3-8用AT89C51單片機(jī)控制LED靜態(tài)顯示方式接口3.3K排阻

17、AT89C51單片機(jī)圖3-8 用AT89C51單片機(jī)控制LED靜態(tài)顯示方式接口 2.LED動態(tài)顯示方式所謂的動態(tài)顯示,就是一位一位地輪流點亮各位顯示器(掃描)。在多位LED顯示時,為簡化硬件電路,節(jié)省I/O口資源,通常將所有位的段碼線相應(yīng)的并聯(lián)在一起,由一個8位I/O口控制,而各位的共陽極或共陰極分別由相應(yīng)的I/O線控制,形成各位的分時選通。如圖3-9用AT89C51單片機(jī)控制LED動態(tài)顯示方式接口。圖3-9用AT89C51單片機(jī)控制LED動態(tài)顯示方式接口圖3-10 集成塊7407的內(nèi)部結(jié)構(gòu)圖其中7407是同相器集成塊,其內(nèi)部結(jié)構(gòu)如圖3-10,它是用來驅(qū)動共陰極數(shù)碼管的。 在使用動態(tài)顯示電路的

18、時候,由于各位的段碼線并聯(lián),8位I/O口輸出的段碼對各個顯示位來說都是相同的。因此,要在同一時刻,如果各位的位選線都處于選通狀態(tài)的話,那兩位LED將顯示相同的字符。若要各位LED能夠同時顯示出與本位相應(yīng)的顯示字符,就必須采用動態(tài)顯示方式,即在某一時刻,只讓某一位的位選線處于選通狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài),同時,段碼線上輸出相應(yīng)位要顯示的字符的段碼。這樣,在同一時刻2位LED中只有選通的那一位顯示出字符,而其它的LED則是熄滅的。同樣,在下一時刻,只讓下一位的位選線處于選通狀態(tài)。也就是說在同一時刻只有選通位才能顯示出相應(yīng)的字符,而其它位是熄滅的。如此循環(huán)下去就可以使各位顯示出將要顯示的

19、字符。雖然這些字符是不在同一時刻出現(xiàn)的,但由于LED顯示器的余輝和人眼的“視覺暫留”作用,只要每位顯示間隔足夠短,則可以造成“多位同時亮”的假象,達(dá)到同時顯示的效果。這是用軟件來實現(xiàn)的。下面我就來介紹一下LED顯示器動態(tài)顯示的軟件子程序清單(以圖3-9共陰極2位LED顯示器為例):見附錄四(本設(shè)計就是采用這種方式顯示)。3.3 按鍵部分的設(shè)計鍵盤接口技術(shù)8鍵盤是一組按鍵組合,它是最常用的單片機(jī)輸入設(shè)備。鍵盤分編碼鍵盤和非編碼鍵盤。鍵盤上閉合鍵的識別由專用的硬件譯碼器實現(xiàn),并產(chǎn)生鍵編碼或鍵值的稱為編碼鍵盤??寇浖R別的稱為非編碼鍵盤。本設(shè)計使用非編碼鍵盤,下面主要介紹非編碼鍵盤的原理、接口技術(shù)和

20、程序設(shè)計。一.鍵盤工作原理鍵盤中每個按鍵都是一個常開開關(guān)電路,如圖3-11所示。圖3-11 按鍵電路當(dāng)按鍵K未被按下時,P3.1輸入高線平;當(dāng)K閉合時,P3.1輸入低電平。通常按鍵所用的開關(guān)為機(jī)械彈性開關(guān),當(dāng)機(jī)械觸點端來、閉合時,電壓信號波形如圖3-12所示。由于機(jī)械觸點的彈性作用,一個按鍵開關(guān)在閉合時不會馬上穩(wěn)定的接通,在斷開時也不會一下子斷開。因而在閉合及斷開的瞬間均伴隨有一連串的抖動,如圖3-12所示。抖動的時間的長短由按鍵的機(jī)械特性決定,一般為510ms。按鍵穩(wěn)定閉合時間的長短則是由操作人員的按鍵動作決定的,一般為零點幾秒。按鍵抖動會引起一次按鍵被誤讀多次。為確保CPU對按鍵的一次閉合

21、僅做一次處理,必須去除鍵抖動。在鍵閉合穩(wěn)定時,讀取鍵的狀態(tài),并且必須判別鍵號;當(dāng)鍵釋放穩(wěn)定后,再做處理。按鍵的抖動,可用硬件或軟件兩種方法消除。本設(shè)計使用的是軟件。圖3-12 鍵按下和釋放時的電壓波形如果按鍵較多,常用軟件方法去抖動,及檢測出鍵閉合后執(zhí)行一個延時程序,產(chǎn)生510ms的延時;讓前沿抖動消失后,再一次檢測按鍵的狀態(tài),如果仍保持閉合狀態(tài)電平則確定真正有鍵按下。當(dāng)檢測到按鍵釋放后,也要經(jīng)過510ms的延時,待后沿抖動消失后,才能轉(zhuǎn)入該鍵的處理程序。二.獨立式按鍵圖3-13 獨立式鍵盤鍵盤可分為獨立連接式和行列式(矩陣式)兩類,本設(shè)計使用的是獨立連接式,所以這里只介紹獨立連接式。獨立式按

22、鍵是指各按鍵相互獨立地接通一條輸入數(shù)據(jù)線,如圖3-13所示。這是最簡單的鍵盤結(jié)構(gòu),該電路為查詢方式電路。當(dāng)任何一個鍵按下時,與之相連的輸入數(shù)據(jù)線即被清0(低電平),而平時該線為1(高電平)。要判別是否有鍵按下,用單片機(jī)的位處理指令十分方便。下面列出以圖3-13為例的按鍵子程序:見附錄五。3.4前向通道的設(shè)計3.4.1 數(shù)字溫度傳感器DS18B20的發(fā)展 美國Dallas半導(dǎo)體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持 一線總線接口的溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。一線總線獨特而且經(jīng)濟(jì)的特點,使用戶可輕

23、松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。現(xiàn)在,新一代的DS18B20體積更小、更經(jīng)濟(jì)、更靈活。使你可以充分發(fā)揮“一線總線”的優(yōu)點。目前DS18B20批量采購價格僅10元左右。3.4.2 DS18B20的主要特性9(1)適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù)據(jù)線供電。(2)獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。(3)DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫。(4)DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一

24、只三極管的集成電路內(nèi)。(5)溫度范圍55125,在-10+85時精度為0.5。(6)可編程的分辨率為912位,對應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實現(xiàn)高精度測溫。(7)在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。(8)測量結(jié)果直接輸出數(shù)字溫度信號,以一線總線串行傳送給CPU,同時可傳送CRC校驗碼,具有極強(qiáng)的抗干擾糾錯能力。(9)負(fù)壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。 3.4.3 DS18B20的外形、內(nèi)部結(jié)構(gòu)及引腳定義一.DS18B20的外形及管腳排列。如圖3-1

25、4所示圖3-14 DS18B20的外形及管腳排列 二.DS18B20的內(nèi)部結(jié)構(gòu)。如圖3-15所示圖3-15 DS18B20的內(nèi)部結(jié)構(gòu)圖三.DS18B20引腳定義: (1)DQ為數(shù)字信號輸入/輸出端; (2)GND為電源地線; (3)VDD為外界供電電源輸入端(在寄生電源接線方式時接地)。3.4.4 DS18B20工作原理DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由2s減為750ms。 DS18B20測溫原理如圖3-16所示。 計數(shù)器1加1低溫系數(shù)晶振振 停止0 計數(shù)器2高溫系數(shù)晶振溫度寄存器0LSB置位/清除斜率累加器

26、 預(yù)置比較 預(yù)置 圖3-16 DS18B20測溫原理 圖3-16中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預(yù)置在55所對應(yīng)的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預(yù)置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖3-3中的斜率累加器用于補(bǔ)償和修正測溫過程中

27、的非線性,其輸出用于修正計數(shù)器1的預(yù)置值9。一.DS18B20有4個主要的數(shù)據(jù)部件: (1) 光刻ROM中的64位序列號是出廠前被光刻好的,他可以看作是該DS18B20的地址序列碼。64為光刻ROM的排列是:開始八位(28H)是產(chǎn)品類型標(biāo)號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20的目的。 (2) DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625/LS

28、B形式表達(dá),其中S為符號位。DS18B20溫度值格式表如表3-3所示表3-3:DS18B20溫度值格式表LS Bytebit7bit6bit5bit4bit3bit2bit1bit0232221202-12-22-32-4BS Bytebit15bit14bit13bit12bit11bit10bit9bit8SSSSS262524 這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲在DS18B20的兩個8比特的RAM中,二進(jìn)制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數(shù)值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測到的數(shù)值需要取反加1再乘于0.0625即可得

29、到實際溫度。例如:125的數(shù)字輸出為07D0H, 25.0625的數(shù)字輸出為0191H, 25.0625 的數(shù)字輸出為FF6FH,55 的數(shù)字輸出為FC90H。如實際溫度值十進(jìn)制與傳感器輸出二進(jìn)制、十六進(jìn)制對應(yīng)表3-4所示表3-4 實際溫度值十進(jìn)制與傳感器輸出二進(jìn)制、十六進(jìn)制對應(yīng)表TemperatureDigital Output(Binary)Digital Output (Hex)1250000 0111 1101 000007D0H850000 0101 0101 00000550H25.06250000 0001 1001 00010191H10.1250000 0000 1010 0

30、01000A2H0.50000 0000 0000 10000008H00000 0000 0000 00000000H0.5 1111 1111 1111 1000FFF8H10.125 1111 1111 0101 1110FF5EH25.06251111 1110 0110 1111FF6FH55 1111 1100 1001 0000FC90H注:The power-on reset value of the temperature register is 85(3)DS18B20溫度傳感器的存儲器 DS18B20溫度傳感器的內(nèi)部存儲器包括一個高速暫存RAM和一個非易失性的可電擦除的E

31、EPRAM,后者存放高溫度和第溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。(4)配置寄存器該字節(jié)各位的意義如表3-5所示:表3-5 :配置寄存器結(jié)構(gòu)TMR1R011111低5位一直都是1,TM是測試模式位,用于設(shè)置DS18B20在工作模式還是在測試模式。在DS18B20出廠時該位被設(shè)置為0,用戶不要去改動。R1和R0用來設(shè)置分辨率,如表3-6所示:(DS18B20出廠時被設(shè)置為12位)表3-6:溫度分辨率設(shè)置表R1R0分辨率溫度最大轉(zhuǎn)換時間009位93.75ms0110位187.5ms1011位375ms1112位750ms二. 高速暫存存儲器 高速暫存存儲器由9個字節(jié)組成,其分配如表3-7所示。當(dāng)溫度

32、轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如表1所示。對應(yīng)的溫度計算:當(dāng)符號位S=0時,直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S=1時,先將補(bǔ)碼變?yōu)樵a,再計算十進(jìn)制值。表3-4是對應(yīng)的一部分溫度值。第九個字節(jié)是冗余檢驗字節(jié)。表3-7:DS18B20暫存寄存器分布寄存器內(nèi)容字節(jié)地址溫度值低位(LS Byte)0溫度值高位(BS Byte)1高溫限值(TH)2低溫限值(TL)3配置寄存器4保留5保留6保留7CRC校驗值8 根據(jù)DS18B20的通訊協(xié)議,主機(jī)(單片機(jī))控制DS18B20完成溫度

33、轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對DS18B20進(jìn)行復(fù)位操作,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,當(dāng)DS18B20收到信號后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號表示復(fù)位成功。如表3-8 ROM指令表(a)、RAM指令表(b)表3-8:(a) ROM指令表指令約定代碼功能讀ROM33H讀DS18B20溫度傳感器ROM中的編碼(即64位地址)。符合ROM55H發(fā)出此命令之后,接著發(fā)出64位ROM編碼,訪問但總線上與該編碼相對應(yīng)的DS18B20使之作出

34、響應(yīng),為下一步對該DS18B20的讀寫作準(zhǔn)備。搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個數(shù)和識別64位ROM地址。為操作個器件做好準(zhǔn)備。跳過ROM0CCH忽略64位ROM地址,直接向DS18B20發(fā)溫度變換指令命令。適用于單片機(jī)工作。告警搜索命令0ECH執(zhí)行后只有溫度超過設(shè)定值上限或下限的片子才做出響應(yīng)。表3-8:(b) RAM指令表指令約定代碼功能溫度變換33H啟動DS18B20進(jìn)行溫度轉(zhuǎn)換,12位抓換時間最長為750ms(9位為93.75 ms)。結(jié)果存入9字節(jié)RAM中。 讀暫存器55H讀內(nèi)部RAM中9字節(jié)的內(nèi)容。寫暫存器0F0H發(fā)出向內(nèi)部RAM的3、4字節(jié)寫上、下限溫度

35、數(shù)據(jù)命令,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)。復(fù)制暫存器0CCH將RAM中內(nèi)容恢復(fù)到RAM中的第3、4字節(jié)。重調(diào)EEPROM0ECH將EEPROM中內(nèi)容恢復(fù)到RAM中的第3、4字節(jié)。讀供電方式0B4H讀DS18B20的供電模式。寄生供電時DS18B20發(fā)送“0”,外界電源供電DS18B20發(fā)送“1”。三.DS18B20的應(yīng)用電路 DS18B20測溫系統(tǒng)具有測溫系統(tǒng)簡單、測溫精度高、廉潔方便、占用口線少等優(yōu)點。下面就是DS18B20幾個不同應(yīng)用方式下的測溫電路圖:1.DS18B20寄生電源供電方式電路圖 如下圖3-17所示,在寄生電源供電方式下,DS18B20從單總線信號線上汲取能量:在信號線D

36、Q處于高電平器件把能量儲存到內(nèi)部電容里,在信號線處于低電平期間消耗電容上的電能工作,直到高電平到來再給節(jié)省電源(電容)充電。 獨特的寄生電源方式有三個好處:進(jìn)行遠(yuǎn)距離測溫時,無須本地電源;可以在沒有常規(guī)電源的條件下讀取ROM;電路更加簡潔,僅適用一個I/O口實現(xiàn)測溫。 要想使DS18B20進(jìn)行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由于每個DS18B20在溫度轉(zhuǎn)換期間工作電流達(dá)到1mA,當(dāng)幾個溫度傳感器掛在同一根I/O線上進(jìn)行多點測溫時,只靠4.7K上拉電阻就無法提供足夠的能量,會造成無法轉(zhuǎn)換溫度或溫度誤差極大。因此,圖3-4電路只適應(yīng)于單一溫度傳感器測溫情況下使用,不是

37、一待用電池供電系統(tǒng)中。并且工作電源VCC必須保證在5V,當(dāng)電源電壓下降時,寄生電源能夠汲取的能量也降低,會使溫度誤差變大。 注:此電路當(dāng)VCC低于4.5V時,測出的溫度值比實際的溫度高,誤差較大。當(dāng)電源電壓降為4V時,溫度誤差有3之多,應(yīng)該是因為寄生電源汲取能量不夠造成的,建議在開發(fā)測溫系統(tǒng)是不要使用此電路。圖3-17 DS18B20寄生電源供電方式電路圖 2.DS18B20寄生電源強(qiáng)上拉供電方式電路圖 改進(jìn)的寄生電源供電方式如下面圖3-18所示,為了使DS18B20在動態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng),當(dāng)進(jìn)行溫度轉(zhuǎn)換或拷貝到E2存儲器操作時,用MOSFET把I/O線直接拉到VCC就可提供足夠的

38、電流,在發(fā)出任何涉及到拷貝到E2存儲器或啟動溫度轉(zhuǎn)換的指令后,必須在最多10S內(nèi)把I/O線轉(zhuǎn)換到強(qiáng)上拉狀態(tài)。在強(qiáng)上拉方式下可以解決電流供應(yīng)不走的問題,因此也適合于多點測溫應(yīng)用,缺點就是要多占用一根I/O口線進(jìn)行強(qiáng)上拉切換。圖3-18 DS18B20寄生電源強(qiáng)上拉供電方式電路圖 注意:在圖3-17和圖3-18寄生電源供電方式中,DS18B20的VDD引腳必須接地。3.DS18B20的外部電源供電方式外部電源供電方式如下圖3-19所示,DS18B20工作電源由VDD引腳接入,此時I/O線不需要強(qiáng)上拉,不存在電源電流不足的問題,也是本設(shè)計選用的一種DS18B20工作方式,此方式可以保證轉(zhuǎn)換精度,同時

39、在總線上理論可以掛接任意多個DS18B20傳感器如下圖3-20所示,組成多點測溫系統(tǒng)。圖3-19 DS18B20的外部電源供電方式注意:在外部供電的方式下,DS18B20的GND引腳不能懸空,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85。圖3-20:外部供電方式的多點測溫電路圖 外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比較簡單,可以開發(fā)出穩(wěn)定可靠的多點溫度監(jiān)控系統(tǒng)。站長推薦大家在開發(fā)中使用外部電源供電方式,畢竟比寄生電源方式只多接一根VCC引線。在外接電源方式下,可以充分發(fā)揮DS18B20寬電源電壓范圍的優(yōu)點,即使電源電壓VCC降到3V時,依然能夠保證溫度

40、量精度。四.本設(shè)計中DS1820使用中注意事項14DS18B20雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點,但在實際應(yīng)用中也應(yīng)注意一些問題,下面列出本設(shè)計中使用DS18B20應(yīng)注意的問題:連接DS18B20的總線電纜是由長度限制的。當(dāng)采用普通型號電纜傳輸長度超過50m時,讀取的測溫數(shù)據(jù)將發(fā)生錯誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時,正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時,正常通訊距離進(jìn)一步加長。這種情況主要是由總線分布電容使信號波形產(chǎn)生畸變造成的。因此,在用DS18B20進(jìn)行長距離測溫系統(tǒng)設(shè)計時要充分考慮總線分布電容和阻抗匹配問題。在DS18B2

41、0測溫程序設(shè)計中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS1820的返回信號,一旦某個DS1820接觸不好或斷線,當(dāng)程序讀該DS1820時,將沒有返回信號,程序進(jìn)入死循環(huán)。這一點在進(jìn)行DS1820硬件連接和軟件設(shè)計時也要給予一定的重視。測溫電纜線建議采用屏蔽4芯雙絞線,其中一對線接地線與信號線,另一組接VCC和地線,屏蔽層在源端單點接地。由于本設(shè)計要求不高,所以只采用了簡單的電源線。DS18B20溫度檢測子程序:見附錄六3.5 后向通道的設(shè)計為了實現(xiàn)水溫的PID控制,電路的輸出不能是一個簡單的開關(guān)量,輸入電爐的功率必須連續(xù)可調(diào)。一般來說改變輸入電爐的電壓平均值就可以改變電爐的輸出功

42、率,而較簡單的調(diào)壓方法有相位控制調(diào)壓和通斷控制調(diào)壓法。本設(shè)計采用的脈寬調(diào)制輸出控制電爐與電源的接通和斷開的比例,以通斷控制調(diào)壓法控制電爐的輸入功率。這種方法不僅十輸出通道省去了D/A轉(zhuǎn)換器和移向觸發(fā)電路,大大簡化了硬件系統(tǒng)4。在后向通道的控制中,一般采用繼電器、可控硅等開關(guān)器件。繼電器又有電磁繼電器和固態(tài)繼電器之分。一些常用的小型電磁繼電器,由于受電流大小的限制,只能控制功率較小的負(fù)載。在實際的工程項目設(shè)計中,由于繼電器控制的負(fù)載多為感性或容性負(fù)載(比如本設(shè)計中的電爐就是感性負(fù)載),如果電磁隔離不好,這些負(fù)載所產(chǎn)生的高次諧波信號便會串進(jìn)單片機(jī)控制電路產(chǎn)生各種干擾。這種干擾信號往往會導(dǎo)致系統(tǒng)的可

43、靠性降低,具體表現(xiàn)有系統(tǒng)死機(jī)、CPU反復(fù)復(fù)位、控制失靈等,也就是常說的“程序的跑飛”。因此對于大功率負(fù)載的控制,信號的隔離是電路設(shè)計中的一個非常重要的環(huán)節(jié)。我們可以采用光耦對電路進(jìn)行隔離。由于電磁繼電器啟動瞬間會產(chǎn)生電磁火花干擾,所以在實際應(yīng)用中如本設(shè)計類似的控制一般都選用固態(tài)繼電器SSR10。下面我就重點介紹一下固態(tài)繼電器。 固態(tài)繼電器6固態(tài)繼電器(Solid state Relay-SSR)是近幾年發(fā)展起來的一種新型電子繼電器,其輸入控制電流小,用TTL、HTL、CMOS等集成電路或加簡單的輔助電路就可直接驅(qū)動,因此適宜于單片機(jī)測控系統(tǒng)中作為輸出通道的控制元件;其輸出利用晶體管或可控硅驅(qū)動

44、,無觸點。與普通的電磁式繼電器和磁力開關(guān)相比,具有無機(jī)械噪聲、無抖動和回跳、開關(guān)速度快、體積小質(zhì)量輕、壽命長、工作可靠等特點,并且耐沖擊、抗潮濕、抗腐蝕,因此在單片機(jī)測控等領(lǐng)域中,已逐漸取代傳統(tǒng)的電磁式繼電器和磁力開關(guān)作為開關(guān)量輸出控制元件。一.固態(tài)繼電器的主要特性(1) 功率?。河捎谄漭斎氩捎玫氖枪怆婑詈掀?,其驅(qū)動電流僅需幾毫安便能可靠地控制,所以可以直接用TTL、HTL、CMOS等集成驅(qū)動電路控制。(2) 高可靠性:由于其結(jié)構(gòu)上無可動接觸不見,且采用全塑密閉式封裝,所以SSR開關(guān)時無抖動和回跳現(xiàn)象,無機(jī)械噪聲,同時能耐潮、耐振、耐腐蝕;由于無觸點火花,可用在有依然易爆介質(zhì)的場合。(3) 低

45、電磁噪聲:交流型SSR在采用了過零觸發(fā)技術(shù)后,電路具有零電壓開啟、零電流關(guān)斷的特性,可使對外界和本系統(tǒng)的射頻干擾減低到最低程度。(4) 能承受的浪涌電流大:其數(shù)值可為SSR額定值的610倍。(5) 對縣原電壓適應(yīng)能力強(qiáng):交流型SSR的負(fù)載電源電壓可以在30220V范圍內(nèi)任選。(6) 抗干擾能力強(qiáng):由于輸入與輸出之間采用了光電隔離,割斷了兩者的電氣聯(lián)系,避免了輸出功率負(fù)載電路對輸入電路的影響。另外,又在輸出端附加了干擾抑制網(wǎng)絡(luò),有效地抑制了線路中的dv/di和di/dt的影響。二.固態(tài)繼電器的分類 固態(tài)繼電器是一種四端器件,兩端輸入,兩端輸出。他們之間用光電耦合器隔離。(1) 以負(fù)載電源類型分類

46、:可分為直流型(DC-SSR)和交流型(AC-SSR)兩種。直流型是用功率晶體管做開關(guān)器件;交流型則用雙向晶閘管做開關(guān)器件,分別用來接通和斷開直流或交流負(fù)載電源。(2) 以開關(guān)觸點形式分類:可分為長開式和常閉式。目前市場上以常開式為多。圖3-21 觸點控制(3) 以控制觸發(fā)信號的形式分類:可分為過零型。他們的區(qū)別在于負(fù)載交流電流導(dǎo)通的條件。非過零型在輸入信號時,不管負(fù)載電源電壓相位如何,負(fù)載端立即導(dǎo)通。而過零型必須在負(fù)載電源電壓接近零且控制信號有效時,輸出端負(fù)載電源才導(dǎo)通。其關(guān)斷向晶閘管的負(fù)載電流為零時,SSR關(guān)斷。三.固態(tài)繼電器的典型應(yīng)用 1.輸入端的驅(qū)動 (1)觸點控制最基本的驅(qū)動觸點控制

47、,見圖3-21。 (2)TTL驅(qū)動SSR,見圖3-22。 (3)CMOS驅(qū)動SSR,見圖3-23。圖3-23 CMOS驅(qū)動SSR圖3-22 TTL驅(qū)動SSR2.輸出端驅(qū)動負(fù)載(1)DCSSR驅(qū)動大功率負(fù)載,見圖3-24。(2)DCSSR驅(qū)動大功率高壓負(fù)載,見圖3-25。圖3-25 DCSSR驅(qū)動大功率高壓負(fù)載圖3-24 DCSSR驅(qū)動大功率負(fù)載 本設(shè)計固態(tài)繼電器的選擇與應(yīng)用10圖3-26 固態(tài)繼電器控制電路由于固態(tài)繼電器的輸出采用的光電耦合器對信號進(jìn)行了隔離,本設(shè)計無需再接光電耦合器了。接口驅(qū)動本設(shè)計使用的是集成塊7407(在3.1處略有介紹)。具體連接如圖3-26所示。本設(shè)計中繼電器是由單片

48、機(jī)控制的所以它的供電電壓選擇5V直流電。繼電器所帶的負(fù)載為一個額定功率300W,接220V交流電的電爐。所以繼電器的要選用交流型(AC-SSR),耐壓在220V以上,電流為1.5A以上。本設(shè)計選用的是5V供電,2A 250VAC的固態(tài)繼電器。 后向通道中單片機(jī)對繼電器的控制方案的確定4 由于水溫控制電路的控制對象具有熱貯存能力大,慣性也較大的特點,水在容器內(nèi)的流動或熱量傳遞都存在一定的阻力,因而可以歸于具有純滯后的一階大慣性環(huán)節(jié)。一般來說,熱過程大多具有較大的滯后,他對熱核信號的響應(yīng)都回推遲一些時間使輸出與輸入之間產(chǎn)生相移。對于這樣一些存在大的滯后特性的過渡過程控制,一般可采用以下幾種控制方案

49、4:輸出開關(guān)量控制 對于慣性較大的過程可簡單地采用輸出開關(guān)量控制的方法,這種方法通過比較給定值與被控參數(shù)的偏差來控制輸出的狀態(tài):開通或關(guān)斷,因此控制過程十分簡單也容易實現(xiàn)。但由于輸出控制量只有兩種狀態(tài),使被控參數(shù)在兩個方向上變化的速率均為最大,因此容易引起反饋回路產(chǎn)生振蕩,對自動控制會產(chǎn)生十分不利的影響,甚至?xí)驗檩敵鲩_關(guān)的頻繁動作而不能滿足系統(tǒng)對控制精度的要求。因此,這種控制方案一般在大慣性系統(tǒng)對控制精度和動態(tài)特性要求不高的情況下采用。比例控制(P控制) 比例控制的特點是控制器的輸出與偏差成比例,輸出量的大小與偏差之間有對應(yīng)關(guān)系。當(dāng)負(fù)荷變化時,抗干擾能力強(qiáng),過渡過程時間短,但過程終了存在余差

50、。因此它適應(yīng)于控制通道滯后較小,負(fù)荷變化不大、允許被控量在一定范圍內(nèi)變化的系統(tǒng)。應(yīng)用時還應(yīng)注意經(jīng)過一段時間后需要將累計誤差消除。比例積分控制(PI控制) 由于比例積分控制的特點是控制器的輸出與偏差的積分比例,積分的作用使過渡過程結(jié)束時無余差,但系統(tǒng)的穩(wěn)定性降低。雖然加大比例度可使穩(wěn)定性提高,但又使過渡過程時間家常。因此,適用于之后較小,負(fù)荷變化不大,被控量不允許有余差的控制系統(tǒng),它是工程上使用最多、應(yīng)用最廣泛的一種控制方法。比例積分加微分控制(PID控制) 比例積分加微分控制的特點是微分的作用使控制器的輸出與偏差變化的速度成比例,它對克服對象的容量之后有顯著的效果。在比例基礎(chǔ)上加入微分作用,使

51、穩(wěn)定性提高,再加上積分作用,可以消除余差。因此,PID控制適用于負(fù)荷變化大、容量滯后較大、控制品質(zhì)要求有很高的控制系統(tǒng)。 綜合本設(shè)計任務(wù)與要求,我選用最常用的比例積分控制(PI控制),由于是集于單片機(jī)實現(xiàn)控制過程,采用這種方法不會增加系統(tǒng)硬件成本。而且采用PI控制在滿足電路要求的基礎(chǔ)上,在軟件編寫方面也比PID控制簡單很多。3.6硬件的整合與軟件設(shè)計 硬件的整合11水溫控制電路的原理圖見附錄二 根據(jù)原理圖,實際水溫顯示的字型碼是由P0口送出,十位、個位和小數(shù)位分別由P1.0、P1.1、P1.2選通;設(shè)定溫度顯示的字型碼是由P2口送出,十位、個位和小數(shù)位分別由P1.3、P1.4、P1.5選通。按

52、鍵接在P3.1、P3.2、P3.3,分別控制設(shè)定溫度的十位、個位和小數(shù)位。溫度傳感器輸入到P3.1口,單片機(jī)的輸出控制信號由P3.5輸出。 軟件的設(shè)計1.主程序流程圖12如圖3-27所示圖3-27 水溫控制電路的主流程圖2.按鍵處理子程序流程圖2如圖3-28所示圖3-28 按鍵處理子程序3.預(yù)置溫度非法報警程序流程圖2如圖3-29顯示40Y調(diào)顯示子程序顯示90報警Y按鍵預(yù)置溫度40?N按鍵預(yù)置溫度90?N報警圖3-29 預(yù)置溫度非法報警程序流程圖4.輸出可采用PWM波,加在電爐上的平均電壓與脈寬成正比7、13。PWM流程圖(定時中斷1子程序1ms定時)如圖3-30。否是P-1=0?100?P初

53、值UK置P3.5高(上升沿)T送初值100返回置P3.5低(下降沿)P初值UK圖3-30 PWM流程圖5.控制系統(tǒng)的數(shù)學(xué)模型14、15溫度控制系統(tǒng)可采用比例積分調(diào)節(jié)器來校正,按一定采樣周期采集r(k)和F(k),其偏差值為 e(k)= r(k)-F(k) ()根據(jù)偏差值來計算輸出u(k),其對應(yīng)差分方程為:u(k)= u(k-1)+ a0e(k)- a1e(k-1) ()其中: a0=Kp(1+T/T1) () a1= Kp ()e(k)= r(k)-F(k) ()u(k)為輸出 比例積分調(diào)節(jié)流程圖如圖3-31所示取溫度F(k)取給定溫度r(k)e(k)= r(k)F(k),存放在EK單元計算

54、a0e(k)結(jié)果存在A0Ek單元Ek1Ek返回Uk1Uk從EK1取出e(k-1)計算a1e(k-1)結(jié)果存在A1Ek單元計算uk1+ a0e(k)- a1e(k-1)結(jié)果存在Uk將Uk送入PWM單元圖3-31 比例積分調(diào)節(jié)流程圖第四章 電路安裝和調(diào)試4.1 安裝和調(diào)試工具一.安裝工具 1.電烙鐵 2.焊錫絲 3.錫槍 4.鉗子等二.調(diào)試工具 1.電腦2.仿真機(jī)3.電源 4.MF47型萬用表 5.焊接工具一套4.2 設(shè)計中遇到的問題 在設(shè)計按鍵電路的時候我最初的想法是用矩陣鍵盤,我用到了AT89C51芯片的P3.6、P3.7。經(jīng)過多次修改程序發(fā)現(xiàn),這兩個口都沒有反應(yīng),后來經(jīng)過查資料發(fā)現(xiàn),如果將0

55、寫入P3.6、P3.7,則CPU不能對外部RAM/IO進(jìn)行讀/寫。由于I/O口資源較少所以后來改用獨立式鍵盤電路,并且沒有使用P3.6、P3.7口。 在軟件程序中加上測溫子程序時,原來很穩(wěn)定的顯示變得很閃爍,多次修改掃描時間,不能達(dá)到好的效果。經(jīng)過仔細(xì)的分析發(fā)現(xiàn)這與測溫子程序有關(guān),檢測溫度的頻率和延時會影響整個電路的穩(wěn)定性,這與機(jī)器周期有關(guān)系,一開始我用的是6MHZ的晶振(機(jī)器周期為2um),后來換了一個12MHZ的晶振(機(jī)器周期為1um),顯示穩(wěn)定了許多,然后修改了一下顯示延時程序,顯示穩(wěn)定。 第五章 本課程設(shè)計的拓展通常,以微處理器,單片機(jī)為核心的智能儀器工作現(xiàn)場的環(huán)境比較惡劣,存在著諸如

56、電網(wǎng)波形畸變及各種電磁干擾,嚴(yán)重時,會使智能儀器正常工作的程序遭到破壞,發(fā)生人們習(xí)慣稱為的“程序跑飛”。這是智能儀器便失去控制,需迅速采取有效措施恢復(fù)程序的正常運行。5.1看門狗電路的設(shè)計16 采用屏蔽、隔離、去耦、濾波等措施,雖然可以提高智能儀器的抗干擾能力,但這不僅需要增加儀器的成本、增大儀器的體積和復(fù)雜性,而且不可能從根本上杜絕智能儀器發(fā)生程序跑飛問題。所以需要提出一個充分利用CPU的智能,采用以軟件為主、軟硬件結(jié)合檢測程序跑飛的方法,使智能儀器在受嚴(yán)重干擾、發(fā)生程序跑飛時能實現(xiàn)自診斷和自恢復(fù)運行。下面介紹看門狗電路的具體分析和電路看門狗電路的原理與設(shè)計智能儀器一旦接通電源便首先進(jìn)入復(fù)位

57、狀態(tài)。復(fù)位結(jié)束后,儀器的CPU便從程序計數(shù)器的復(fù)位值開始執(zhí)行初始化程序。初始化程序結(jié)束后,系統(tǒng)便進(jìn)入主程序模塊。主程序結(jié)構(gòu)是儀器而定。本設(shè)計就是不斷從數(shù)據(jù)采集系統(tǒng)、外設(shè)輸入信息,按程序規(guī)定的方式進(jìn)行數(shù)據(jù)處理;得出結(jié)果后,一方面輸出顯示;另一方面向控制執(zhí)行的I/O口輸出一定的控制信息。為及時監(jiān)視某些外設(shè)的變化和定時地做一些諸如掃描鍵盤顯示器,有規(guī)律地控制執(zhí)行器等,往往需要設(shè)立一些中斷。CPU在接到中斷申請后,若中斷開發(fā),便中斷主程序執(zhí)行,八主程序中斷,中斷結(jié)束后再返回到主程序執(zhí)行,如此不斷循環(huán)。一程序跑飛的表現(xiàn)當(dāng)儀器遇到某種強(qiáng)的干擾時,可能會影響和破壞程序的正常運行。通常表現(xiàn)為:CPU突然離開監(jiān)

58、控程序規(guī)定的正常順序雜亂無章地執(zhí)行一些莫名其妙的指令,顯示和輸出出錯,儀器與系統(tǒng)完全按失控。這種情況是因干擾使CPU執(zhí)行程序的指揮棒程序計數(shù)器(PC)值突然出錯所至。實踐和經(jīng)驗證明,相對RAM和其它寄存器而言,程序計數(shù)器最容易受干擾的影響。RAM區(qū)和寄存器某些參數(shù)和標(biāo)志全部或局部被破壞。造成這種情況最主要的可能是PC值破壞后,跑飛程序訪問了RAM區(qū)和使用了有關(guān)寄存器,也可能因干擾非常嚴(yán)重直接破壞了寄存器和RAM區(qū)中的數(shù)據(jù),通常后一種可能性較少發(fā)生。而一旦出現(xiàn)直接破壞RAM數(shù)據(jù)的強(qiáng)干擾。PC值通常已先遭破壞。全部或某些中斷不響應(yīng)。這種現(xiàn)象通常是CPU在執(zhí)行中斷服務(wù)程序時,智能儀器受干擾后使PC值

59、發(fā)生突變,越過了開放中斷指令和中斷返回指令所致。另外,象鍵盤無法輸入,數(shù)據(jù)采集系統(tǒng)是偶那個等一般也是儀器干擾后PC值出錯、程序跑飛所造成的。為了防止智能儀器受到某種強(qiáng)干擾時出現(xiàn)“程序跑飛”的情況,我們可以設(shè)計響應(yīng)的看門狗電路,即采用軟、硬件結(jié)合檢測程序跑飛的方法,使智能儀器在受嚴(yán)重干擾、發(fā)生程序跑飛時能實現(xiàn)自診斷和自恢復(fù)運行。二看門狗電路的具體設(shè)計由于以主動方式從電源、信號傳輸通道、I/O口能產(chǎn)生電磁耦合的任何空間方向檢測各種干擾將是極端復(fù)雜和困難的;即使能測出來也難以計算它們對智能一般與系統(tǒng)的實際影響。因此,我們可以采用被動方式即檢測智能儀器與系統(tǒng)干擾的情況。其原理是,若程序一直正常運行,R

60、AM單元未遭破壞,即使儀器受到很大的干擾,也照樣不聞不問;但當(dāng)干擾一旦破壞了程序的正常運行,通過軟硬件相結(jié)合的辦法就能立即發(fā)現(xiàn)程序已經(jīng)跑飛。進(jìn)而由CPU作一系列故障檢測和分析判斷,然后自動在合適的地址上迅速恢復(fù)程序的正常運行。根據(jù)上面的思路,我們采用一片雙可再觸發(fā)單穩(wěn)態(tài)多謝震蕩器74LS123、一片四2輸入或門7432、一片四2輸入或非門7402及機(jī)制電阻電容來組成這個電路。該電路如圖5-1所示。74123的真值表如表5-1所示。該電路的原理圖如下:圖5-1 看門狗電路U4:B的清零端CLR和正觸發(fā)端B接高電平,因此整個電路的輸出完全取決于負(fù)觸發(fā)端A輸入狀態(tài)和Cx、Rx的數(shù)值。在CPU上電復(fù)位

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論