DS18B20型數(shù)字溫度傳感器在煙葉烤房監(jiān)測儀中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:文中介紹DS18B20型數(shù)字溫度傳感器內(nèi)部結(jié)構(gòu)及工作時(shí)序,給出以DS18B20和單片機(jī)為核心設(shè)計(jì)的煙葉烤房溫/濕度控溫度控制裝置的硬件及軟件設(shè)計(jì)方案.實(shí)驗(yàn)證明該裝置的溫濕度控制準(zhǔn)確、測量精度高、控制性能良好。
關(guān)鍵詞:DS18B20 煙葉烤房 溫/濕度控制
1 引言
近年來,隨著我國煙葉生產(chǎn)水平的提高,煙葉烘烤過程成為制約煙葉質(zhì)量的關(guān)鍵因素。傳統(tǒng)的人工長期監(jiān)守、利用干濕球玻璃溫度計(jì)采集數(shù)據(jù)的方式,勞動強(qiáng)度大,操作規(guī)程復(fù)雜,與現(xiàn)代化的烤房設(shè)施不相適應(yīng)。目前推廣應(yīng)用的許多智能煙葉烤房監(jiān)測儀多采用電阻式溫度傳感器,測量精度低,需要A/D轉(zhuǎn)換,電路復(fù)雜,離散性大,溫度反應(yīng)緩慢。為此,設(shè)計(jì)的煙葉烤房監(jiān)測儀采用DS18B20型數(shù)字式溫度傳感器作為溫度采集單元,較好地解決了上述問題。
DS18B20是由Dallas半導(dǎo)體公司生產(chǎn)的“一線總線”接口的溫度傳感器。一線總線結(jié)構(gòu)具有簡潔且經(jīng)濟(jì)的特點(diǎn),可使用戶輕松地組建傳感器網(wǎng)絡(luò),從而為測量系統(tǒng)的構(gòu)建引入全新概念,DS18B20的測溫范圍為-55℃~+125℃,在-10℃~+85℃的范圍內(nèi),精度為±0.5℃,現(xiàn)場溫度可直接通過“一線總線”以數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。DS18B20適合于惡劣環(huán)境的現(xiàn)場溫度測量,如環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。它工作在3V~5.5V的電壓范圍,采用多種封裝形式,從而使系統(tǒng)設(shè)計(jì)靈活、方便,設(shè)定分辨率及用戶設(shè)定的報(bào)警溫度存儲在EEPROM中,掉電后依然保存。
2 DS18B20的內(nèi)部結(jié)構(gòu)
DS18B20的內(nèi)部結(jié)構(gòu)如圖1所示,主要由4部分組成:64位ROM、溫度傳感器、非易失性溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的封裝形式及引腳排列如圖2所示,其中DQ為數(shù)字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(采用寄生電源供電方式時(shí)接地)。
ROM中的64位序列號是出廠前被光記得好的,它可以看作是該DS18B20的地址序列碼,每個(gè)DS18B20的64位序列號均不相同。64位ROM的排列是:前8位是產(chǎn)品家族碼,接著48位是DS18B20的序列號,最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。ROM作用是使每一個(gè)DS18B20都各不相同,這樣就可實(shí)現(xiàn)一根總線上掛接多個(gè)。DS18B20采用單總線工作方式,由于所有信號(控制和數(shù)據(jù))都通過單總線傳輸,因此總線的時(shí)序邏輯必須非常嚴(yán)格,其工作時(shí)序如圖3所示。
DS18B20中的溫度傳感器可完成對溫度的測量,并用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式輸出溫度值,以0.0625℃/LSB形式表達(dá),其中S為符號位。例如+125℃的數(shù)字輸出為07D0H,+25.0625的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為FF6FH,-55℃的數(shù)字輸出為FC90H。
3 硬件設(shè)計(jì)
圖4給出基于AT89C52型單片機(jī)和DS18B20的煙葉烤房監(jiān)測系統(tǒng)的硬件連接圖。圖中DS18B20采用外接電源工作方式,VCC端用3V~5.5V電源供電。本系統(tǒng)選用AT89C52作為CPU。AT89C52是一種低功耗、高性能,片內(nèi)帶4kB快閃可編程/擦除只讀存儲器的8位CMOS微控制器,與MCS-51型微控制器產(chǎn)品系列兼容,使用高密度、非易失存儲技術(shù)制造,不需擴(kuò)展即能滿足要求。
溫度設(shè)定通過一個(gè)2×2的矩陣鍵盤輸入P2 I/O口。同時(shí),P3口將設(shè)定的溫濕度值送到LCD上顯示,在該I/O上還連接了8段LED驅(qū)動電路,用來將烤房的溫濕度送到LED上顯示,以方便煙農(nóng)夜間觀察烤房工作狀態(tài)。報(bào)警電路由一只三極管構(gòu)成驅(qū)動放大,然后外接蜂鳴器構(gòu)成。風(fēng)門控制和排濕風(fēng)扇控制電路采用可控硅,為了提高系統(tǒng)的抗干擾能力,采用MOC3020光耦電路作為驅(qū)動模塊。
4 軟件設(shè)計(jì)
目前采用的煙葉烘烤工藝是3段式烘烤,該工藝將煙葉的烘烤過程分為3個(gè)階段,第一階段為變黃期,第二階段為定色期,第三階段為烘干期,各階段對烤房的溫度要求不同,如圖5所示。
在3段式煙葉烘烤過程中,溫度控制曲線要求第一、三段按照每小時(shí)1℃的固定斜率均勻升溫,第二階按照每小時(shí)0.5℃的固定斜率均勻升溫。這需要對烤房溫度連續(xù)讀入并比較,以控制升溫速率,并根據(jù)烤房的歷史經(jīng)驗(yàn)數(shù)據(jù)模擬出溫度慣性參數(shù),從而進(jìn)行模糊控制。當(dāng)烤房內(nèi)溫度達(dá)到溫度設(shè)定值時(shí),結(jié)束升測控制過程,進(jìn)入恒溫控制狀態(tài)??痉績?nèi)濕度的控制方式和溫度控制方式類似因此,應(yīng)用程序主要包括系統(tǒng)初始化、鍵盤掃描、溫度檢測讀入、數(shù)字濾波、溫度顯示、恒溫恒濕控制、報(bào)警及驅(qū)動輸出等,這些操作分別由相應(yīng)子程序模塊完成。其程序框圖如6所示。
下面給出DS18B20的外接電源工作方式下的初始化、讀出、寫入程序。
;————————初始化——————
INI11:CLR DAT
DJNZ R2,INI11
SETB DAT
MOV R2,#30
INI12:DJNZ R2,INI12
CLR C
ORL C,DAT
JC INI10
MOV R6,#80
INI13:ORL C,DAT
JC INI14
DJNZ R6,INI13
SJMP INI10
INI14:MOV R2,E240
INI15:DJNZ R2,INI15
RET
;——————寫入——————
WRITE:CLR EA
MOV R3,#8;
WR11:SETB DAT
MOV R4,#8
RRCA;
CLR DAT
WR12:DJNZ R4,WR12
MOV DAT,C
MOV R4,#20
WR12:DJNZ R4,WR13
DJNZ R3,WR11
SETB DAT
RET
;——————讀出——————
READ:CLREA
MOV R6,E8
RD11:CLR DAT
MOV R4,#4
NOP
SETB DAT;
RD12:DJNZ R4,RD12
MOV C,DAT
RRCA;
MOV R5,#30
RD13:DJNZ R5,RD13
DJNZ R6,RD11
SETB DAT
RET
;————————————
5 結(jié)束語
利用DS18B20設(shè)計(jì)的煙葉烤房監(jiān)測儀硬件結(jié)構(gòu)簡單、整機(jī)可靠性高、開發(fā)周期短、反應(yīng)靈敏、較好地滿足了用戶需求,已推廣使用。