




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于PID的恒溫箱溫度控制系統設計(2008屆) 2008年6月摘 要本設計是恒溫箱溫度控制系統設計。可供各類實驗室、醫療機構、食品加工、生產部門等使用。在周圍溫度不斷變化條件下,使用恒溫箱,可以使一定范圍的溫度恒定在特定溫度下,從而適應生活和工作。控制的溫度范圍為50120。恒溫箱可以在線設定溫度,并對溫度進行實時數碼顯示。設計內容包括硬件和軟件兩個部分。硬件主要由AT89S52單片機、DS18B20數字溫度傳感器、8155片外存儲器、繼電器,LED數碼管和報警器等組成。電原理圖包括數據采集、溫度顯示、鍵盤設定、溫度控制和復位電路等幾個模塊。軟件部分主要對PID算法進行了數學建模和編程。本設
2、計由鍵盤電路輸入設定溫度信號給單片機,溫度信號采集電路采集現場溫度信號給單片機,單片機根據輸入與反饋信號的偏差進行PID計算,輸出控制信號給加溫控制電路,實現加溫和停止。當實際溫度比設定溫度大2攝氏度以上時,則清P1.3輸出口,從而停止對電阻絲的加熱。當實際溫度比設定溫度小2攝氏度以上時,取PID的最大值,實現全功率輸出。在它們之間時,實現PID算法控制,控制可控硅的接觸時間,調節電阻絲功率。顯示電路實現現場溫度的實時監控。軟件部分 ,采用PID控制和時間最優控制相結合的控制方案,實現了控制速度快、超調小、線性控制精度高和實現成本低等的優點。硬件部分采用單片機來實現溫度控制,不僅具有控制方便、
3、簡單、靈活等優點,而且可以大幅度的提高被控溫度的技術指標,從而大大提高產品的質量。關鍵詞:恒溫控制,單片機,數字PID算法ABSTRACTThe system of this design is the temperature controller of a constant temperature box.Can be provided as each kind of laboratory, medical treatment organization, food processing and produce the section etc. usage.Under the conditio
4、n that the surroundings temperature continuously change, the usage constant temperature box, can make the temperature maintaining of the certain scope settle under the particular temperature, thus adapt the life and works.The temperature scope of the control is 50-120, The constant temperature box c
5、an with on-line enactment temperature, and carry on the solid hour to the temperature figures manifestation.When be placed in to set the appearance, figures tube manifestation enactment temperature, circulate, manifestation actual temperature.Design content including hardware and software two parts.
6、 The hardware mainly by at89S52 monolithic integrated circuit, the DS18B20 digit temperature sensor, 8155 piece of external memory, the relay, the LED nixietube and the alarm apparatus and so on is composed. Electricity schematic diagram including data acquisition, temperature demonstration, keyboar
7、d hypothesis, temperature control and reset circuit and so on several modules. The software part mainly has carried on mathematics modelling and the programming to the PID algorithm.The circuit design of the keyboard input from the set temperature signal to the microcontroller, Temperature Signal Ac
8、quisition Circuit collect temperature signal to the microcontroller, According to SCM input and feedback signal, the error for PID, the output control signals to the heating control circuit, Heating and achieve stop. Show circuit scene of the real-time monitoring of temperature. When actual temperat
9、ure compares to set temperature big more than 2 degrees , then the pureexportation, thus stop to electric resistance silk of heating.When the actual temperature compares to set smaller than 2 degrees , taking the PID biggest value, carrying out the whole power exportation.among the two , carry out t
10、he PID calculate way control, control contact time that controvable silicon , regulate the electric resistance silk power. software part, the adoption PID control and the control project that time superior control combine together, carried out to control the speed quick, super adjust small, line con
11、trol the accuracy is high and carry out the cost advantage of low etc.The hardware part adopts a machine to carry out the temperature control, not only have the control convenience, simple, vivid etc. advantage, and can is control with the significant exaltation the technique index sign of the tempe
12、rature, raise the quantity of the product thus and consumedly.Keywords:Temperature,control,microcontroller,PID,algorithm, MATLAB目 錄緒論 把溫度作為被控參數進行研究無論在工業生產,還是在日常生活中,都已經變得非常適用和廣泛了。在工業生產中,例如冶金工業、化工生產、電力工程、食品加工、機械制造、醫療以及科研研究室等,人們對需要對溫度進行監測和控制;而日常生活中的家用電器如電烤箱、微波爐、烘干箱、保溫箱等等,也是我們不可或缺的。因此,就恒溫箱的研究就有極其重要的現實意義
13、。本設計系統主要由AT89S52單片機、8155片外存儲器、繼電器、27128片外存儲器和DS18B20數字溫度傳感器等組成。電原理圖包括數據采集、BCD碼轉換和溫度顯示、鍵盤設定、溫度控制和復位電路等幾個模塊。通常,采用單片機系統來實現對溫度的控制,不僅具有控制方便、簡單、靈活等優點,而且可以大幅度的提高被控溫度的技術指標。 在本設計中,需要達到以下幾點技術要求:(1) 控制溫度范圍50-120,控制精度為2 。(2) 溫度采集數字量輸入。(3) 鍵盤按鍵輸入,具有設定功能。(4) 顯示功能,數碼管顯示設定值及當前所測溫度值。(5) 具有超溫報警功能。本課題應該解決的問題:在設計過程中,對硬
14、件選型時一定要注意控制精度。所選用的芯片必須達到我們設計任務書中的精度要求。顯然,恒溫箱的微機系統的設計是一個閉環控制系統,雖然可以到達一定的精度,但是仍然有極限。核心設計內容是硬件和軟件部分,硬件是基礎,在軟件設計中,分析清楚各個功功能模塊,如主程序,中斷服務程序,以及包含在中斷程序中的數據采集, PID控制,溫度顯示子程序。第一章 方案設計分析 控制模塊的選擇,數字比較器與模擬控制器相比較,數字比較器具有以下幾個優點: 1、模擬調節器調節能力有限,當控制規律較為復雜時,就難以甚至無法實現。而數字控制器能實現復雜控制規律的控制。 2、計算機具有分時控制能力,可實現多回路控制。 3、數字控制器
15、具有靈活性。起控制規律可靈活多樣,可用一臺計算機對不同的回路實現不同的控制方式,并且修改控制參數或控制方式一般只可改變控制程序即可,使用起來簡單方便,可改善調節品質,提高產品的產量和質量。 4、采用計算機除實現PID數字控制外,還能實現監控、數據采集、數字顯示等其他功能。綜合考慮,本設計控制模塊采用數字PID調節器。本系統是一個恒溫箱的溫度控制器。其控溫范圍是50-120攝氏度。控制器可以在線設定控制溫度,并對溫度進行實時數碼顯示。當系統處于設定狀態時,數碼管顯示設定溫度值,平時顯示實際溫度。當實際溫度與設定溫度偏差達小于負2時,全功率加熱電阻絲,當偏差值在正負2的范圍內時,實行PID控制來達
16、到控制溫度的目的,當偏差值大于2時,停止加熱,從而達到恒溫控制的目的。這樣的一閉環控制系統,其控制速度快,超調小、線性控制精度高和實現成本低。根據上面分析,結合控制要求,總體方案確定如下為了使設計的成本低、抗干擾強,系統動態性能與穩態性能好的前提下,設計方案的總體結構框圖如圖1.4所示:AT89S52單片機按 鍵LED 顯 示溫 度 采 集 EEPROM控制繼電器越 限 報 警圖1.4 設計總體結構框圖此系統主要有單片機系統、用戶接口、溫度控制電路、傳感器等組成。單片機系統主要用來運行控制軟件,接受溫度設定和控制指令,輸入采樣溫度信息,輸出加熱控制信號、溫度顯示數據。(1)用戶接口包括溫度顯示
17、,報警和按鍵三部分。由于控溫范圍為50-120攝氏度,可以采用三位8段LED數碼管顯示。溫度超過一定的范圍報警。按鈕設置四個,分別為設定鍵、增鍵、減鍵和移位鍵。(2)DS18B20采集到的就是為數字信號。(3)繼電器的接通時間來控制電阻絲的加熱功率,而繼電器的接通時間又由P1.3上的觸發脈沖來控制。其中我主要負責按鍵、LED顯示、溫度采集第2章 恒溫控制系統硬件設計考慮到盡量降低成本和避免與復雜的電路,此系統所用到的元器件均為常用的電子器件。而主控器采用低功耗、高性能、片內含8k byte可反復檫寫的Flash 、只讀程序器CMOS8位單片機AT89S52;溫度傳感器采用DALLAS公司生產的
18、單總線數字溫度傳感器DS18B20;采用控制端TTL電平,即可實現對繼電器的開關,使用時完全可以用 NPN型三極管接成電壓跟隨器的形式驅動;單片機所需要的+5V工作電源是通過220V交流電壓通過變壓、整流、穩壓、濾波得到。用DS18B20定時采集環境溫度存到EEPROM,通過三個LED實時顯示采集到的溫度值,并用此溫度與設定的溫度比較,通過單片機對偏差進行PID運算,控制繼電器的通斷,加熱或斷開熱敏電阻,使溫度上升或下降,溫度達到時斷開繼電器,使溫度自然下降,不夠時接通繼電器加熱,控制顯示器、鍵盤并通過單片機來完成鍵盤掃描與輸出動態顯示。2.1 AT89S52單片機簡介2.1.1 AT89S5
19、2單片機資源簡介AT89S52的結構如圖2.1所示。由于它的廣泛使用使得市面價格較8155、8255、8279要低,所以說用它是很經濟的。該芯片具有如下功能:有1個專用的鍵盤/顯示接口;有1個全雙工異步串行通信接口;有2個16位定時/計數器。這樣,1個89S52,承擔了3個專用接口芯片的工作;不僅使成本大大下降,而且優化了硬件結構和軟件設計,給用戶帶來許多方便。89S52有40個引腳,有32個輸入端口(I/O),有2個讀寫口線,可以反復插除。所以可以降低成本。主要功能特性: (1)兼容MCS51指令系統(2)32個雙向I/O口線(3)3個16位可編程定時/計數器中斷(4)2個串行中斷口 (5)
20、2個外部中斷源(6)2個讀寫中斷口線(7)低功耗空閑和掉電模式(8)8k可反復擦寫(>1000次)Flash ROM(9)256x8 bit內部RAM(10)時鐘頻率0-24MHz(11)可編程UART串行通道(12)共6個中斷源(13)3級加密位(14)軟件設置睡眠和喚醒功能2.1.2 AT89S52芯片2.1.3 AT89S52單片機時鐘和復位電路時鐘電路單片機內部有一個高增益反向放大器,輸入端為芯片引腳,輸出端為引腳。而在芯片外部和 之間跨接晶體振蕩器和微調電容,從而構成一個穩定的自激振蕩器。晶體震蕩頻率高,則系統的時鐘頻率也高,單片機運行速度也就快,但反過來運行速度快對存儲器的速
21、度要求就高,對印制電路板的工藝要求也高,所以,這里使用震蕩頻率為6MHz的石英晶體。震蕩電路產生的震蕩脈沖并不直接是使用,而是經分頻后再為系統所用,震蕩脈沖經過二分頻后才作為系統的時鐘信號。在設計電路板時,振蕩器和電容應盡量靠近單片機,以避免干擾。需要注意的是:電路板時,振蕩器和電容應盡量安裝得與單片機靠近,以減小寄生電容的存在更好的保障振蕩器穩定、可靠的工作電路圖如圖2.2所示復位電路單片機的復位電路分上電復位和按鍵復位兩種方式。(a)上電復位: 在加電之后通過外部復位電路的電容充電來實現的。當的上升時間不超過1ms,就可以實現自動上電復位,即接通電源就完成了系統的初始化電路原理圖。RST上
22、的電壓必須保證在斯密特觸發器的閥值電壓以上足夠長時間,滿足復位操作的要求。 (b) 按鍵復位:程序運行出錯或操作錯誤使系統處于死鎖狀態時,為了擺脫困境,也需按復位鍵以重新啟動。RST引腳是復位信號的輸入端,復位信號是高電平有效。按鍵復位又分按鍵脈沖復位(圖2.3)和按鍵電平復位。電平復位將復位端通過電阻與相連,按鍵脈沖復位是利用RC分電路產生正脈沖來達到復位的。(c) 注意:因為按鍵脈沖復位是利用RC微分電路產生正脈沖來達到復位的。所以電平復位要將復位端通過電阻與相連.如復位電路中R、C的值選擇不當,使復位時間過長,單片機將處于循環復位狀態。故本設計采用按鍵復位。.2DS18B20數字溫度傳感
23、器簡介2.2.1 DS18B20數字溫度傳感器資源簡介新的"一線器件"DS18B20體積更小、適用電壓更寬、更經濟。 美國Dallas半導體公司的數字化溫度傳感器DS1820是世界上第一片支持 "一線總線"接口的溫度傳感器,在其內部使用了在板(ON-B0ARD)專利技術。全部傳感元件及轉換電路集成在形如一只三極管的集成電路內。一線總線獨特而且經濟的特點,使用戶可輕松地組建傳感器網絡,為測量系統的構建引入全新概念。現在,新一代的DS18B20體積更小、更經濟、更靈活。使你可以充分發揮“一線總線”的優點。目前D
24、S18B20批量采購價格僅10元左右。 DS18B20、DS1822 "一線總線"數字化溫度傳感器 同DS1820一樣,DS18B20也支持"一線總線"接口,測量溫度范圍為-55°C+125°C,在-10+85°C范圍內,精度為±0.5°C。DS1822的精度較差為±2°C。現場溫度直接以"一線總線"的數字方式傳輸,大大提高了系統的抗干擾性。適合于惡劣環境的現場溫度測量,如
25、:環境控制、設備或過程控制、測溫類消費電子產品等。與前一代產品不同,新的產品支持3V5.5V的電壓范圍,使系統設計更靈活、方便。而且新一代產品更便宜,體積更小。 DS18B20、DS1822的特性 DS18B20可以程序設定912位的分辨率,精度為±0.5°C。可選更小的封裝方式,更寬的電壓適用范圍。分辨率設定,及用戶設定的報警溫度存儲在EEPROM中,掉電后依然保存。DS18B20的性能是新一代產品中最好的!性能價格比也非常出色!DS1822與DS18B20軟件兼容,是DS18B
26、20的簡化版本。省略了存儲用戶定義報警溫度、分辨率參數的EEPROM,精度降低為±2°C,適用于對性能要求不高,成本控制嚴格的應用,是經濟型產品。繼"一線總線"的早期產品后,DS1820開辟了溫度傳感器技術的新概念。DS18B20和DS1822使電壓、特性及封裝有更多的選擇,讓我們可以構建適合自己的經濟的測溫系統。2.2.2 DS18B20數字溫度傳感器引腳介紹 DS18B20引腳定義: (1)DQ為數字信號輸入/輸出端; (2)GND為電源地; (3)VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。DS18B20電
27、路圖參考圖: DS18B20數字溫度傳感器的使用一、DS18B20的主要特性(1)適應電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數據線供電(2)獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現微處理器與DS18B20的雙向通訊(3)DS18B20支持多點組網功能,多個DS18B20可以并聯在唯一的三線上,實現組網多點測溫(4)DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉換電路集成在形如一只三極管的集成電路內 (5)溫范圍55125,在-10+85時精度為±0.5(6)可編程的分辨率為912位,對應的可分辨溫度分別為0.5、0.
28、25、0.125和0.0625,可實現高精度測溫(7)在9位分辨率時最多在93.75ms內把溫度轉換為數字,12位分辨率時最多在750ms內把溫度值轉換為數字,速度更快(8)測量結果直接輸出數字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力(9)負壓特性:電源極性接反時,芯片不會因發熱而燒毀,但不能正常工作。 二、DS18B20的內部結構 DS18B20內部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。存儲器和控制器64位ROM和是
29、單線接口溫度靈敏元件低溫觸發器高速緩存存儲器電源檢測高溫觸發器TH配置寄存器8位CRC生成器三、DS18B20工作原理 DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數因分辨率不同而不同,且溫度轉換時的延時時間由2s減為750ms。 DS18B20測溫原理如圖3所示。圖中低溫度系數晶振的振蕩頻率受溫度影響很小,用于產生固定頻率的脈沖信號送給計數器1。高溫度系數晶振隨溫度變化其振蕩率明顯改變,所產生的信號作為計數器2的脈沖輸入。計數器1和溫度寄存器被預置在55所對應的一個基數值。計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當計數器1的預置值減到0時,溫度寄存器
30、的值將加1,計數器1的預置將重新被裝入,計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環直到計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。圖3中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數器1的預置值。DS18B20有4個主要的數據部件: (1)光刻ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開始8位(28H)是產品類型標號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環冗余校驗碼(CRC
31、=X8+X5+X4+1)。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現一根總線上掛接多個DS18B20的目的。 (2)DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉化為例:用16位符號擴展的二進制補碼讀數形式提供,以0.0625/LSB形式表達,其中S為符號位。表1: DS18B20溫度值格式表LS byteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0232221202-12-22-32-4LS byteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSSS2
32、62524這是12位轉化后得到的12位數據,存儲在18B20的兩個8比特的RAM中,二進制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測到的數值需要取反加1再乘于0.0625即可得到實際溫度。 例如+125的數字輸出為07D0H,+25.0625的數字輸出為0191H,-25.0625的數字輸出為FF6FH,-55的數字輸出為FC90H。TEMPERATUREDIGITAL OUTPUTDIGITAL OUTPUT+1250000 0111 1101 000
33、007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00010191H+10.1250000 0000 1010 001000A2H+0.500000 0000 0000 10000008H00000 0000 0000 00000000H-0.51111 1111 1111 1000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90HThe power_on reset value of the
34、temperature register is +85(3)DS18B20溫度傳感器的存儲器 DS18B20溫度傳感器的內部存儲器包括一個高速暫存RAM和一個非易失性的可電擦除的EEPRAM,后者存放高溫度和低溫度觸發器TH、TL和結構寄存器。 (4)配置寄存器該字節各位的意義如下:表3:配置寄存器結構TMR1R011111低五位一直都是"1",TM是測試模式位,用于設置DS18B20在工作模式還是在測試模式。在DS18B20出廠時該位被設置為0,用戶不要去改動。R1和R0用來設
35、置分辨率,如下表所示:(DS18B20出廠時被設置為12位)表4:溫度分辨率設置表R1R0分辨率溫度最大轉換時間009位93.75ms0110位187.5 ms1011位375 ms1112位750 ms四、高速暫存存儲器 高速暫存存儲器由9個字節組成,其分配如表5所示。當溫度轉換命令發布后,經轉換所得的溫度值以二字節補碼形式存放在高速暫存存儲器的第0和第1個字節。單片機可通過單線接口讀到該數據,讀取時低位在前,高位在后,數據格式如表1所示。對應的溫度計算:當符號位S=0時,直接將二進制位轉換為十進制;當S=1時,先將補碼變為原碼,再計算十進制值
36、。表5是對應的一部分溫度值。第九個字節是冗余檢驗字節。表5:DS18B20暫存寄存器寄存器內容字節地址溫度值低位(LS Byte)0溫度值高位(MS Byte)11高溫限值(TH)2低溫限值(TL)3配置寄存器4保留5保留6保留7CRC校驗值8根據DS18B20的通訊協議,主機(單片機)控制DS18B20完成溫度轉換必須經過三個步驟:每一次讀寫之前都要對DS18B20進行復位操作,復位成功后發送一條ROM指令,最后發送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數據線下拉500微秒,然后釋放,當DS18B20收到信號后等待1660微秒左右,后發出60240微秒的存在低
37、脈沖,主CPU收到此信號表示復位成功。表6:ROM指令表指令約定代碼功能讀ROM33H讀DS18B20溫度傳感器ROM中的編碼(即64位地址)符合ROM55H發出此命令之后,接著發出64位ROM編碼,訪問單總線上與該編碼相對的DS18B20使之作出響應,為下一步對該DS18B20的讀寫作準備搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個數和識別64位ROM地址。為操作各器件作好準備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20發溫度變換命令,適用于單片機工作告警搜索命令0ECH執行后只有溫度超過設定值上限或下限的片子才做出響應。表6:RAM指令表指令約定代碼功能溫度
38、變換44H啟動DS18B20進行溫度轉換,12位轉換時最廠為750MS(9位93.75MS)。結果存入內部9字節ROM中讀暫存器0BEH讀內部RAM中9字節的內容寫暫存器4EH發出向內部RAM的3、4字節寫上、下限溫度數據命令,緊跟該命令之后,是傳送兩字節的數據。復制暫存器48H將RAM中第3、4字節的內容復制到EEPROM中重調EEPROM0B8H將EEPROM中內容恢復到RAM中底第3、4字節讀供電方式0B4H讀DS18B20的供電模式,寄生供電時DS18B20發送“0”,外接電源供電DS18B20發送“1”。2.3 并行I/O接口芯片的選擇在單片機控制系統中,經常利用I/O接口芯片來擴張
39、CPU的并行I/O端口。這類I/O接口芯片的種類很多。在單片機系統中,廣泛應用的I/O接口芯片是8155。 Intel81558155是Intel公司研制的通用I/O接口芯片。AT89S52芯片和8155相連不僅可為外設提供兩個八位I/O端口(A口和B口)和一個六位I/O端口(C口),而且也為CPU提供一個256字節的RAM存儲器和一個14位定時器/計數器。內部結構如下圖所示。圖2-4 8155芯片引腳圖 內部結構8155共有七部分電路組成,她們是雙線數據總線緩沖器、地址鎖存器、地址譯碼器和讀寫編碼盤、RAM存儲器、I/O寄存器、命令寄存器和狀態寄存器以及定時器/計數器等。雙向數據總線緩沖器:
40、該緩沖器是8位的,用于傳送CPU對RAM存儲器的讀寫數據。地址譯碼器:共八位,用于鎖存CPU送來的RAM單元地址和端口地址。地址譯碼器和讀寫控制器:地址譯碼器的三位地址由地址鎖存器輸出端送來,譯碼后可以選中命令/狀態寄存器、定時器/計數器和ABC三個I/O寄存器中的某個工作。讀寫控制其接收RD和WR線上的信息,實現對CPU和8155間所傳信息的控制。RAM存儲器,容量為256字節,主要用于存放實時數據。存儲器存儲單元地址由地址鎖存器輸出端送來。I/O寄存器,分為ABC三個端口。A口和B口的I/O寄存器為8位,既可以存放外設的輸出數據又可以存放外設的輸入數據;C口的I/O寄存器只有6位,用于存放
41、I/O數據或命令/狀態信息。8155在某一瞬間只能選中某個I/O寄存器工作,這有CPU送給8155的命令字決定。命令寄存器和狀態寄存器,皆為8位寄存器。命令寄存器存放CPU送來的命令字,狀態寄存器存放8155的狀態字。定時器/計數器,這是一個二進制14位的減1計數器,計數器初值由CPU通過程序送來。定時器/計數器由T/N輸入線上脈沖減1,每當計滿溢出時可在T/OUT線上輸出一個終止脈沖。 引腳功能(1)AD7-AD0(8條):AD7-AD0為地址/數據總線,常可和MCS-51的P0口相接,用于分時的傳送地址/數據信息。I/O總線(22條):PA7-PA0通用I/O線,用于傳送A口上的外設數據,
42、數據外送方向由8155命令字決定。PB7-PB0為通用I/O線,用于傳送B口上的外設數據,數據傳送的方向也是由8155命令字決定的。PC5-PC0為I/O數據/控制線,共6條,通用I/O方式下,用作傳送I/O數據,在選通I/O方式下,用作傳送命令/狀態信息。(2)控制總線(8條)RESET:8155總清輸入線,在RESET線上輸入一個大于600ns寬的正脈沖時,8155立即處于總清狀態,A、B、C三口也定義為輸入方式。CE和IO/M:CE為8155片輸入線,若CE=0,則CPU選中本8155工作;否則,本8155不工作。IO/M為I/O端口或RAM存儲器的選通輸入線;若IO/ M=0,則CPU
43、選中8155的RAM存儲器工作;若IO/M=1 ,則CPU選中8155內某一寄存器工作。RD和WR:RD是8155的讀/寫命令輸入線,WR為寫命令線當RD=0和WR=1時,8155處于讀出數據狀態;當RD=1和WR=0時,8155處于寫入數據狀態。ALE:為允許地址輸入線,高電平有效。若ALE=1,則8155允許AD7AD0上的地址鎖存道“地址鎖存器”;否則,8155的地址鎖存器處于封鎖狀態。8155的ALE常和MCS-51的同名端相連。T/IN和T/OUT:T/IN實計數器輸入線,其上脈沖用于對8155片內14位計數器減1。T/OUT為計數器輸出線,當14位計數器從計滿回零時就可以在該引線上
44、輸出脈沖波形,輸出脈沖的形狀和計數器工作方式有關。(3)電源線(2條):Vcc為+5V電源輸入線,Vss為接地線。第3章 恒溫控制系統模塊分析設計3.1 溫度的采集溫度測量轉換部分是整個系統的數據來源,直接影響系統的可靠性。傳統的溫度測量方法是:溫度傳感器例如AD590,將測量的溫度轉換成模擬電信號,再經過A/D轉換器把模擬信號轉換成數字信號,單片機再對采集的數字信號進行處理3。這種模擬數字混合電路實現起來比較復雜,濾波消噪難度大系統穩定性不高,鑒于這些考慮,本設計采用數字式溫度傳感器DS18B20。DS18B20支持“一線總線”接口,測量溫度的范圍為-55°C+125°C
45、,現場溫度直接以“一線總線”的數字式傳輸,大大的提高了系統的抗干擾性。DS18B20為3引腳, DQ為數字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端。溫度采集電路模塊如圖2.4所示。DSB8B20的3腳接系統中單片機的P1.4口線,用于將采集到的溫度送入單片機中處理,2腳和3腳之間接一個4.7K上拉電阻,即可完成溫度采集部分硬件電路。DS18B20內部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉化為例:用16位符號擴展的二進制補碼讀數形式提供,以0.0625/LSB
46、形式表達,其中S為符號位。數據轉換如下表2.1。表2.1 DS18B20溫度數據轉換表LS ByteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0232221202-12-22-32-4MS ByteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSS262524這是12位轉化后得到的12位數據,存儲在18B20的兩個8比特的RAM中,二進制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測到的數值需要取反加1再乘于0.0625即可得到實際溫度。例如+125
47、的數字輸出為07D0H,+25.0625的數字輸出為0191H,-25.0625的數字輸出為FF6FH,-55的數字輸出為FC90H。DS18B20采集到的溫度數字量存在31H(高位),30H(低位3.2鍵盤和顯示電路的設計 按鍵設置本系統中,采用四個按鍵實現溫度的設定,分別為設定鍵、增鍵、減鍵和移位鍵,溫度值有三個位,通過移位鍵可以方便的設定溫度值。并接在8155PC口中。PC為讀入口表2.2 按鍵功能按鍵鍵名功能SET鍵設定鍵或退出鍵使系統產生中斷,進入設置狀態或退出+ 鍵增鍵按一次當前值加1- 鍵減鍵按一次當前值減1MOV鍵移位鍵按一次移動到另一位設置電路參考圖2.7(在下面)3.2.2
48、 LED數碼管顯示原理顯示電路實行LED顯示。這里采用八段共陽LED。A口字段口,B為在字位口。LED數碼管結構簡單,價格便宜。八段LED顯示管有八只發光二極管組成,編號分別為a、b、c、d、e、f、gS、P,分別和同名管相連。八段LED數碼顯示管原理簡單,是通過同名管腳上所加電壓高低來控制發光二極管是否點亮而顯示不同的字形的。例如,若在共陽LED管的SP、g、f、e、d、c、b、a管腳上分別加上80H控制電平(即SP上為TTL高電平,不亮,其余為0伏,亮),則LED顯示管顯示字形“8”。80H是按照SP、g、f、e、d、c、b、a順序排列后的十六進制編碼(0為TTL低電平,1為TTL高電平)
49、,常稱為字形碼。因此,LED上顯示字形不同,相應字形碼也不一樣。 LED管的顯示可以分為靜態顯示和動態顯示兩種。(1)靜態顯示的特點是各個LED管能穩定地同時顯示各自字形;動態顯示是指各LED輪流地一遍一遍顯示各自字符,人們因視覺氣管惰性而看到的是各LED似乎在同時顯示不同字形。但是靜態顯示所需的硬件開鎖大,CPU也無法預先知道什么時候需要改變LED的被顯示字符。為了減少硬件開鎖,提高系統可靠性和降低成本,單片機控制控制系統通常采用動態掃描顯示。在本電路圖中,8031通過8155對三只共陽LED的接口電路;A口和所有LED的a、b、c、d、e、f、g、SP 引線相連,各LED控制端G和8155
50、C口相連,故B口為字形口和C口為字形口,因為CPU可以通過C口控制各LED是否點亮。(2) 動態顯示采用軟件法把欲顯示十六進制(或BCD碼)轉換為相應的字形碼,故它通常需要在RAM區建立一個顯示緩沖區。顯示緩沖區內包含的存儲單元個數常和系統中LED的個數相等。顯示緩沖區的起始很重要,它決定了顯示緩沖區在RAM中的位置。在本系統程序中,設置了70H,71H,72H三個顯示緩沖區。 LED接口電路顯示采用3位共陽LED動態顯示方式,顯示內容有溫度值的百位、十位、個位,按鍵并接在8155PC口中,PC為讀入口。顯示電路實行LED顯示,A口字段口,B口為在位選口,LED用動態顯示,這里采用八段共陽LE
51、D。模塊電路如下圖2.7所示: 圖2.7 顯示接口電路第4章 恒溫控制系統各功能和軟件設計4.1 工作流程恒溫箱在復位后處于停止加熱的狀態,此時,系統默認顯示設定溫度值為50攝氏度。我們可以通過用設定鍵改變預設定溫度,也可以直接啟動運行。在運行的過程中,系統不斷的檢測當前溫度,并送往顯示器顯示,超過設定溫度值允許的范圍后停止加熱,當溫度下降到上限(比設定溫度大2度時)啟動加熱,實行PID計算達到控制溫度的目的。當下降到下限(比設定溫度小2以上)時,實行全功率控制。快速達到加熱到設定溫度的目的。這樣不斷的重復上述的過程,使溫度保持在與設定的溫度范圍內。當然,運行過程中,也可以隨時地改變設定溫度,
52、溫度設定好之后運行,系統按新設定的溫度運行。4.2 主程序設計主程序應該包括各個的初始化工作,T0初始化,開中斷、溫度顯示和鍵盤的掃描以及看門狗子程序。其相應的程序框圖以及程序見附錄。T0 初始化時,設定T0的計數器方式為2,初值為06H,故它的溢出中斷時間為250個過零同步觸發脈沖。而T1中斷服務程序的執行時間必須滿足T0的這一時間要求,因為T1 的中斷是嵌套在T0中斷之中的。其中有LED顯示子程序,按鍵溫度設定子程序。主程序設計基本框圖;主程序匯編:MAIN:MOVA,#03H;初始化8155 A,B輸出,C輸入(方式控制字03H)MOV DPTR,#8000H MOVX DPTR,AMO
53、V TMOD,#56H ;定義T0為定時器計數方式2,T1為方式1(01010110) MOV TL0,#06H ;裝入定時初值 MOV TH0,#06H CLRPT0;T0為低中斷優選 MOV IE,#82H ;開T0中斷(10000010) SETB TR0 ;啟動T0計數MIAN1:ACALL LED_DISPACALLBUTTONAJMPMIAN14.2.1 LED顯示子程序LED采用動態顯示,先由PA口送段選碼,PB口送位選碼,延時1MS,指向下一單元,判斷是否3位顯示完,完了返回,沒完,位選碼左移,繼續顯示。;動態顯示匯編子程序:LED_DISP: MOVR0,#00HMOVR1,
54、#00HMOVA,#03H ;A口輸出,B輸出 C輸入MOVDPTR,#8000H ;命令狀態字MOVXDPTR,AMOVR0,LED_NUM1 ;顯示存儲首址送R0MOVR1,0FEH ;LED1位選(字位碼始址送R1)MOVA,R1LED_1: MOVDPTR,#8002H ;位選碼送B口MOVXDPTR,AMOVA,R0 ;取顯示數據MOVDPTR,#LED_TAB ;字型碼表首址MOVCA,A+DPTRMOVDPTR,#8001H ;A口地址MOVXDPTR,AACALL DELAYINC R0 ;指向下一顯示單元MOVA,R1JNBACC.2,LED_2;顯示完一遍,則跳轉RLAMOVR1,AAJMPLED_1LED_2:RETLED_TAB:DB0C0H,0F9H,0A4H,0B0H,99H DB92H, 82H, 0F8H,80H, 90H DB88H, 83H, 0C6H,0A1H,86H DB8EH, 0FFH,0CH, 89H, 7FH DB0BFH4.2.2 按鍵溫度設定子程序本設計中,安排四個按鍵,分別
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 導游證資格考試講解風格探討試題及答案
- 2025年房地產經紀人資格考試通關試題與答案
- 營養學實踐應用題與答案匯編
- 營養師證書的考試內容解析試題及答案
- 營養師的職業心態調節試題及答案
- 個體營養需求的多樣性試題
- 高效備考營養師證試題及答案
- 2024年演出經紀人資格證考場注意事項試題及答案
- 演出項目管理與經紀人考試:試題及答案
- 演出經濟人的職業發展與試題及答案
- 校園消費進行時青春權益不掉隊-3·15消費者權益日教育宣傳主題班會課件
- 污水處理設施運維服務投標方案(技術標)
- 通用電子嘉賓禮薄
- 司馬管道防腐保溫涂漆施工檢查記錄
- 一組超全的6S可視化標準辦公室課件
- 橫河氧量變送器標定及檢修
- ArcGIS應用基礎培訓(共98張)
- 南京鼓樓區部編版五年級語文下冊第二單元教材分析
- 主要設備開箱檢驗記錄表
- 武術健身操教案《旭日東升》(共18頁)
- 校企合作就業協議書標準版范本
評論
0/150
提交評論