肖志紅
(西安石油大學 電子工程學院,陜西 西安 710065)
倉庫是用于存放物品的場所,通風以及溫度、濕度的監測是倉庫重要條件,它直接影響到儲備物資的使用壽命和工作可靠性。現實生活中,溫、濕度的測量和控制在紡織工業、林業、化工以及氣象觀測等領域中也同樣有著廣泛的應用。傳統的溫、濕度測量方法采用測試器材,通過人工進行檢測,這種人工測試方法費時費力,因而有必要研制倉庫的自動溫、濕度控制系統,以便實時檢測倉庫的溫、濕度,并根據所測的數據控制加濕器、空調器等設備的運行,確保倉庫有合適的溫、濕度環境[1-3]。
這里提出的倉庫溫濕度自動控制系統是為某民用倉庫設計的,可實時檢測倉庫的溫濕度,根據檢測結果對溫、濕度加以控制,同時還具有在線修訂溫、濕度控制上下限,溫、濕度顯示和報警功能,并可向主控室傳送數據。
系統采用AT89S51為主控制器,由鍵盤電路,溫、濕度檢測電路,看門狗電路,溫、濕度控制電路,顯示電路,通信電路等組成,系統硬件框圖如圖1所示。AT89S51內含有4 KB的E2PROM,無需外擴存儲器[4]。

圖1 系統硬件框圖Fig.1 Block diagram of system hardware
系統通過溫、濕度傳感器檢測環境的溫度值和濕度值,將環境的溫度和濕度轉換成數字量,并將結果傳送給單片機,通過數碼管顯示。單片機利用鍵盤設置環境溫度和濕度的最大值和最小值,并將檢測的當前值和預設的最大值和最小值作比較,根據比較結果單片機做出相應的判斷,以控制輸出繼電器的工作狀態,執行相應的控制操作,從而實現對環境溫、濕度的檢測和控制,還可與上位機(PC機)通信,實現溫度、濕度的打印、分析等功能,系統采用串行通信,單片機的TXD和RXD通過MAX485與上位機相連。本系統可設定溫度范圍為0~80℃,可設定濕度范圍為0%~99%RH。
看門狗復位電路采用微處理器監控器DS1232。DS1232采用8引腳DIP封裝,具有性能可靠、使用簡單、價格低廉的特點,在單片機產品中能夠提高硬件的抗干擾能力。DS1232具有如下功能:微處理器掉電或電源電壓瞬變降低時可自動復位微處理器;在微處理器失控狀態下可以停止和重新啟動微處理器;精確的5%或10%電源供電監視。DS1232內部集成有看門狗定時器,當DS1232的周期輸入ST端在設置的周期時間內沒有有效信號到來時,DS1232的 RST端將產生復位信號。這一功能對于防止由于干擾等原因造成的微處理器死機是有效的??撮T狗定時器的定時時間由DS1232的TD引腳確定。本系統中TD接地,定時器時間為150 ms。P1.0接DS1232,為其提供周期輸入信號。RST輸出信號反向后接單片機外部中斷INT0。
溫、濕度檢測電路由溫度傳感器、濕度傳感器、LM324型運算放大器、ADC0809型A/D轉換器等構成。溫度與濕度傳感器將溫度及濕度值變成電信號,通過放大器使得信號在A/D轉換器的量程范圍內放大,在單片機的控制下,A/D轉換器完成信號的A/D轉換,然后將轉換后的數字信號送入單片機進行數據分析與處理。
溫度傳感器選用AD590。AD590是電流輸出型的集成溫度傳感器,具有較強的抗干擾能力,適合遠距離測量,其工作電壓范圍較寬(4~30 V),測溫范圍為-55~150 ℃,輸出電阻較大,長導線上的壓降一般不影響測量精度,因此不需要專門的溫度補償電路[5]。流過AD590的電流等于所處環境的熱力學溫度系數。
濕度測量采用IH3605,IH3605是一種電容式濕度傳感器,其內部集成有信號調理電路,具有精度高、線性度好、互換性強及輸出電壓范圍大等優點。其測量濕度范圍為0~100%RH,固有精度為2%RH,工作溫度范圍為-40~+85℃,工作電壓為4~5.8 V,它的輸出電壓是供電電壓、濕度、溫度的函數。電源電壓升高,輸出電壓將成比例升高[6]。在實際應用中,可通過以下步驟計算出實際的相對濕度值。
1)計算在25℃條件下的相對濕度值:

式中,u0為傳感器輸出電壓值,Vcc為傳感器供電電壓值,RH0為 25℃時相對濕度值。本系統中傳感器供電電壓值為5 V,因此相對濕度值RH在0~100%之間變化時,傳感器輸出電壓值在0~3.9 V之間變化。
2)溫度補償,計算當前溫度T下的實際相對濕度值RH0。

溫濕度測量電路如圖2所示,溫度測量電路是將溫度信號變成0~5 V電壓信號送入模數轉換器。圖2中R1為精密電阻,溫度每變化1℃,R1兩端電壓變化1 mV。

圖2 溫濕度測量電路Fig.2 Temperature and humidity measurement circuit
IH3605的輸出電壓較高且線性度較好,可以將 IH3605的輸出信號直接接到A/D轉換器上,完成模擬量到數字量的轉換,但為了提高精度,本系統還對IH3605的輸出電壓進行放大,使濕度范圍為0%~99%RH的變化對應了A/D轉換器ADC0809的模擬量輸入范圍為0~5 V。
選用8路8位逐位比較式A/D轉換器ADC0809,實現模擬量向數字量的轉換。ADC0809采用單一電源(+5 V)供電,模擬量輸入范圍為 0~5 V,轉換時間是128 μs左右,不必零點和滿刻度調整。圖3為ADC0809與AT89S51接口電路。

圖3 ADC0809與AT89S51接口電路Fig.3 Interface circuit between ADC0809 and AT89S51
鍵盤電路的作用主要是確定系統的工作狀態及設定參數,可在線設置需要的溫、濕度值以及報警的上下限值。共有以下按鍵:左移鍵、右移鍵、加1鍵、減1鍵、設定/運行鍵等。鍵盤電路接單片機P2.0~P2.4,鍵盤電路中有阻容電路組成的消抖電路用于消除按鍵的抖動帶來的干擾。
系統共有4個共陽極數碼管,輪流顯示溫度及濕度值、設備運行狀態、設定值等。數碼管由帶鎖存功能的芯片CD4511驅動。系統還有4路狀態指示燈,用于顯示系統工作狀態及溫、濕度超限報警。
溫、濕度值輸入單片機后為進一步提高測量精度,對信號再進行數字濾波,此信號經過數字濾波、標度轉換后,一方面通過LED將溫度顯示出來;另一方面,將該溫度值與設定的溫度值進行比較,根據其偏差值的大小按PID控制算法得到輸出控制量,從而調節環境溫度的變化。系統通過鍵盤輸入溫、濕度允許變化的上、下限值,在正常情況下,應保持溫、濕度介于上、下限值之間,當溫濕度超限時,報警燈亮,同時執行機構動作,直到溫度和濕度達到標準范圍內為止。執行機構包括加熱器、制冷機、加濕器等,用繼電器進行控制。圖4為溫、濕度控制電路,繼電器J1控制加熱器,J2控制制冷機,J3控制加濕器,J4控制除濕器,繼電器由晶體管 9013驅動 ,驅動電流為 150 mA 左右。 VD1~VD4為續流二極管,VL1~VL4為各執行機構動作指示燈。當單片機檢測到溫度值或濕度值超過預設的范圍時,單片機的P1口輸出控制信號通過三極管驅動繼電器,啟動繼電器工作,實現對溫度或濕度的控制。

圖4 溫、濕度控制電路Fig.4 Control circuit of temperature and humidity
系統的電磁性負載較多,它們對系統的干擾較大。系統采用了以下抗干擾措施:1)對單片機使用電源監控及看門狗電路,采用微處理器監控芯片DS1232[7]實現;2)繼電器線圈增加續流二極管,消除斷開線圈時產生的反電動勢干擾,在繼電器觸點兩端并接火花抑制電路,減小電火花影響;3)做好電源濾波,電路板上每個IC的電源與地之間要并接一個0.01 μF電容;4)為了使“亂飛”程序在程序區迅速納入正軌,盡量多采用單字節指令,并且在關鍵地方插入一些空操作指令NOP或者將有效單字節指令重寫;5)采用軟件陷阱技術處理出錯程序,采用數字濾波技術處理采樣數據;6)通信程序中加數據校驗位。
軟件采用模塊化設計。系統軟件主要包括主程序和按鍵處理、中斷、執行機構控制、顯示和通信等子程序。主程序完成器件的初始化,并判斷有無按鍵按下、有無中斷請求,然后根據判斷結果調用相應的子程序。圖5為主程序流程圖。

圖5 主程序流程圖Fig.5 Flow chart of main program
該系統的樣機在某書庫進行了試運行,調試后在室內進行了模擬測試,檢驗了系統的控制精度。通常書庫室內空氣溫度應控制在25~26℃之間、相對濕度應控制在 50%~65%。表1給出了一天不同時刻預設溫濕度與實測溫濕度的部分數據比較情況。

表1 測試結果Tab.1 Test results
從以上結果可以看出其溫度最大絕對誤差為0.5℃,濕度最大相對誤差為±3%RH。
以AT89S51單片機作為系統控制器的溫、濕度自動測控系統可自動檢測并顯示倉庫溫、濕度,并根據用戶要求設定系統的溫、濕度閾值進行控制,它克服了電子式溫濕度控制系統電路較復雜,控制精度低等特點,系統由于具有與上位機通信功能,方便進行對倉庫溫濕度的集中管理。經測試,該裝置工作穩定可靠,有很強的實用性,可廣泛應用在糧庫、機房、檔案館、特殊材料加工場等場所。
[1]田建君.倉庫自動通風及溫、濕度監測系統[J].電子產品世界,2006(5):70-71.TIAN Jian-jun.The system of automatic ventilating and temperature monitoring in warehouse[J].Electronic Engineering&Product World, 2006(5):70-71.
[2]朱濱峰,徐桂云,李俊敏.單片機在溫濕度測量系統中的應用[J].儀器儀表標準化與計量,2006(5):44-46.ZHU Bin-feng, XU Gui-yun, LI Jun-min.Application of the single-chip in temperature and humidity measuring system Instrument[J].Standardization&Metrology, 2006(5):44-46.
[3]張天鵬,翟亞芳,張修太.基于LTM8901的溫濕度控制系統設計[J].電子產品世界,2009(11):50-51.ZHANG Tian-peng, ZHAI Ya-fang, ZHANG Xiu-tai.Design of temperatureand humidity controlsystem based on LTM8901[J].Electronic Engineering&Product World,2009(11):50-51.
[4]王幸之,鐘愛琴,王雷.AT89系列單片機原理與接口技術[M].北京:北京航空航天大學出版社,2004:15-19.
[5]孫傳有,孫曉斌,張一.感測技術與系統設計[M].北京:科學出版社,2004:239-240.
[6]Honeywell.Humidity sensor[EB/OL].[2009-09-06].http://content.honey2 well.com/sensing/prodinfo/Humidity moisture/009012_2.pdf.
[7]賈振國,許琳.“看門狗”電路 DS1232在單片機產品中的應用[J].電子設計工程,2002(4):20-21.JIA Zhen-guo, XU Lin.The application of DS1232 watch-dog in circuit chip product[J].Electronic Design Engineering,2002(4):20-21.