蘇冠楠+姚樂+易小龍+王晉+鐘沁耘

【摘 要】溫度、濕度、光照是文物保護的基本因素,傳統的測量方法費事費力,效率低,且隨機性大,本文通過設計基于STC12C5A60S2單片機,綜合利用傳感器技術、數字電子技術和LCD顯示等知識知識的測量系統達到自動檢測室內環境溫度、濕度及光強的目的,并在超過閾值時進行報警,并行性高,且能夠處理多點溫濕度,光強等信息。
【關鍵詞】單片機;光強;溫度;濕度;測量
0 前言
溫度、濕度、光照度和人類的生產、生活有著密切的關系,同時也是博物館文物保護中最常見最基本的參數,例如不同的溫度可能會造成珍貴文物的過早氧化,而濕度的大小也同樣對于文物的保護有著重要的意義,還有光的強度也會對文物的材質有著很大的影響,所以對溫度、濕度及光照度的檢測及控制就非常有必要了。傳統的方法是用溫度表、雙金屬式測量計、等手段,通過人工進行檢測,對不符合溫度、濕度、光照度要求的環境進行通風、去濕、降溫、采光等工作。隨著生產的發展,一個低成本和具有較高精度的環境測量儀在許多領域會代替人工操作。為此,本設計開發了一種能夠同時測量多點,并實時性高、精度高,能夠綜合處理多點溫濕度、光照度信息的設計方案。
1 單片機的選擇
基于性價比的考慮,在電子設計中8位單片機仍是首選。在8位單片機中又以MCS-51系列單片機及其兼容機所占的份額最大。通過內部資源比較,單片機芯片我們選擇STC12C5A60S2,STC12C5A60S2/AD/PWM系列單片機是宏晶科技生產的單時鐘/機器周期(1T)的單片機,是高速/低功耗/超強抗干擾的新一代8051單片機,指令代碼完全兼容傳統8051,但速度快8-12倍。內部集成MAX810專用復位電路,2路PWM,8路高速10位A/D轉換(250K/S),針對電機控制,強干擾場合。
2 傳感器的選擇
2.1 光強傳感器
2.1.1 TSL2561簡介
TSL2561是TAOS公司推出的一種高速、低功耗、寬量程、可編程靈活配置的光強度數字轉換芯片。
2.1.2 TSL2561的引腳功能
TSL2561有2種封裝形式:6LEAD CHIPSCALE和6LEAD TMB。封裝形式不同,相應的光照度計算公式也不同。
各引腳的功能如下:
腳1和腳3:分別是電源引腳和信號地。其工作電壓范圍是2.7~3.5V。
腳2:器件訪問地址選擇引腳。由于該引腳電平不同,該器件有3個不同的訪問地址。
腳4和腳6:I2C或SMBus總線的時鐘信號線和數據線。
腳5:中斷信號輸出引腳。當光強度超過用戶編程配置的上或下閾值時,器件會輸出一個中斷信號。
2.1.3 TSL2561的內部結構和工作原理
TSL2561是第二代周圍環境光強度傳感器。通道0和通道1是兩個光敏二極管,其中通道0對可見光和紅外線都敏感,而通道1僅對紅外線敏感。積分式A/D轉換器對流過光敏二極管的電流進行積分,并轉換為數字量,在轉換結束后將轉換結果存入芯片內部通道0和通道1各自的寄存器中。當一個積分周期完成之后,積分式A/D轉換器將自動開始下一個積分轉換過程。微控制器和TSL2561可通過標準的SMBus(System Management Bus)V1.1或V2.0實現,TSL2561則可通過I2C總線協議訪問。
2.1.4 硬件設計
TSL2561能夠通過I2C總線訪問,所以硬件接口電路很簡單。假如所選用的微控制器帶有I2C總線控制器,則將該總線的時鐘線和數據線直接和TSL2561的I2C總線的SCL和SDA分別相連;假如微控制器內部沒有上拉電阻,則還需要再用2個上拉電阻接到總線上。假如微控制器不帶I2C總線控制器,則將TSL2561的I2C總線的SCL和SDA和普通I/O口連接即可[6];但編程時需要模擬I2C總線的時序來訪問TSL2561,INT引腳接微控制器的外部中斷。
2.2 溫度傳感器
2.2.1 DS18B20功能特點
1)獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現微處理器與DS18B20的雙向通訊。
2)測溫范圍 -55℃~+125℃,固有測溫誤差1℃。
3)支持多點組網功能,多個DS18B20可以并聯在唯一的三線上,最多只能并聯8個,實現多點測溫,如果數量過多,會使供電電源電壓過低,從而造成信號傳輸的不穩定。
4)工作電源: 3.0~5.5V/DC (可以數據線寄生電源)。
5)在使用中不需要任何外圍元件。
6)測量結果以9~12位數字量方式串行傳送。
7)用戶可定義的非易失性溫度報警設置。
2.2.2 DS18B20結構和工作原理
64位只讀存儲器儲存器件的唯一片序列號。高速暫存器含有兩個字節的溫度寄存器,這兩個寄存器用來存儲溫度傳感器輸出的數據。除此之外,高速暫存器提供一個直接的溫度報警值寄存器(TH和TL),和一個字節的的配置寄存器。配置寄存器允許用戶將溫度的精度設定為9,10,11或12位。TH,TL和配置寄存器是非易失性的可擦除程序寄存器(EEPROM),所以存儲的數據在器件掉電時不會消失。DS18B20通過達拉斯公司獨有的單總線協議依靠一個單線端口通訊。當全部器件經由一個3態端口或者漏極開路端口(DQ引腳在DS18B20上的情況下)與總線連接的時候,控制線需要連接一個弱上拉電阻。在這個總線系統中,微控制器(主器件)依靠每個器件獨有的64位片序列號辨認總線上的器件和記錄總線上的器件地址。由于每個裝置有一個獨特的片序列碼,總線可以連接的器件數目事實上是無限的。
2.2.3 硬件設計
DS18B20可以通過從VDD引腳接入一個外部電源供電,或者可以工作于寄生電源模式,該模式允許DS18B20工作于無外部電源需求狀態。當總線為高電平時,寄生電源由單總線通過VDD引腳。這個電路會在總線處于高電平時偷能量,部分汲取的能量存儲在寄生電源儲能電容內,在總線處于低電平時釋放能量以提供給器件能量]。用漏極開路把I/O直接拉到電源上就可以實現DS18B20有充足的供電。在發出溫度轉換指令或拷貝暫存器指令之后,必須在至多10us之內把單總線轉換到強上拉,并且在溫度轉換時序或拷貝數據時序必須一直保持為強上拉狀態。對DS18B20供電的另一種傳統辦法是從VDD引腳接入一個外部電源。這樣做的好處是單總線上不需要強上拉。而且總線不用在溫度轉換期間總保持高電平。溫度高于100℃時,不推薦使用寄生電源,因為DS18B20在這種溫度下表現出的漏電流比較大。
2.3 濕度傳感器
2.3.1 DHT11引腳說明及工作原理
引腳說明
數字濕溫度傳感器采用單總線數據格式。即單個數據引腳端口完成輸入輸出雙向傳輸。其數據包由5Byte(40Bit)組成。一次通訊時間最大3ms,數據分小數部分和整數部分,具體格式在下面說明。DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數據格式,當前小數部分用于以后擴展,現讀出為0。操作流程如下:
一次完整的數據傳輸為40bit,高位先出。
數據格式:8bit濕度整數數據+8bit濕度小數數據 +8bit溫度整數數據+8bit溫度小數數據 +8bit校驗和,校驗和數據為前四個字節相加。
2.3.2 DHT11與單片機連接的設計
DHT11數字濕溫度傳感器連接電路簡單,只需要占用控制器一個I/O口即可完成上下位的連接[8]。另外,建議連接線長度短于20時用5K上拉電阻,大于20米時根據實際情況使用合適的上拉電阻。
3 其他硬件模塊的設計
3.1 復位電路
單片機復位的原理是在時鐘電路開始工作后,在單片機的RST引腳施加24個時鐘振蕩脈沖(即兩個機器周期)以上的高電平,單片機便可以實現復位。在復位期間,單片機的ALE引腳和\P\S\E\N引腳均輸出高電平。當RST引腳從高電平跳變為低電平后,單片機便從0000H單元開始執行程序。
在實際應用中,一般采用既可以手動復位,又可以上電復位的電路,這樣可以人工復位單片機系統。上電復位電路部分的原理也是RC電路的充放電效應。除了系統上電的時候可以給RST引腳一個短暫的高電平信號外,當按下按鍵開關的時候,VCC通過一個高電阻連接到RST引腳,給RST一個高電平,按鍵松開的時候,RST引腳恢復為低電平,復位完成。
3.2 晶振電路
時鐘電路是用于產生單片機正常工作時所需要的時鐘信號,STC89C52單片機內部包含有一個振蕩器,可以用于CPU的時鐘源。另外也可以采用外部振蕩器,由外部振蕩器產生的時鐘信號來供內部CPU運行使用。
3.3 顯示模塊
在單片機應用系統設計中,一般都是把鍵盤和顯示器放在一起考慮。顯示器作為輸出部件,可以將系統的運行結果、狀態等信息直觀地顯示出來供操作者了解系統的運行情況和程序的執行結果,本次設計的溫濕度、光照度實時信息采用LCD12864來顯示。
3.4 報警電路
壓電式蜂鳴器約10mA的驅動電流,可以使用TTL系列集成電路7406或7407低電平驅動,在此選用一個三極管來做驅動。P2.5接三極管輸入端,當P2.5輸出低電平時,三極管導通,壓電式蜂鳴器兩端獲得+5V電壓而發出報警,當P2.5輸出為高電平時,三極管截止,蜂鳴器[12]停止工作。
4 整體設計
本方案以STC89C51單片機系統為核心來對溫度、濕度、光照度進行實時檢測。各檢測單元能獨立完成各自功能。單片機負責發送控制指令,并控制各個檢測模塊進行數據采集,收集測量數據,同時對測量結果進行整理和顯示。通過軟件編程設定報警值,一旦檢測數據超過閾值,蜂鳴器實現報警。整體包括單片機、復位電路、溫度檢測、濕度檢測、光照度檢測、報警電路、系統軟件等部分的設計。
[責任編輯:楊玉潔]