摘要:SHT11是瑞士Sensirion公司生產的具有I2C總線接口的單片全校準數字式相對濕度和溫度傳感器。該傳感器采用獨特的CMOSens TM技術,具有數字式輸出、免調試、免標定、免外圍電路及全互換的特點。文中對傳感器的性能特點、接口時序與命令進行了詳細的闡述,給出了SHT11與單片機的接口電路及相應程序。 關鍵詞:數字式;溫濕度傳感器;I2C總線;單片機 1 概述 溫濕度的測量在倉儲管理、生產制造、氣象觀測、科學研究以及日常生活中被廣泛應用,傳統(tǒng)的模擬式濕度傳感器一般都要設計信號調理電路并需要經過復雜的校準和標定過程,因此測量精度難以保證,且在線性度、重復性、互換性、一致性等方面往往不盡人意。SHT11是瑞士Sensirion公司推出的基于CMOSensTM技術的新型溫濕度傳感器。該傳感器將CMOS芯片技術與傳感器技術結合起來,從而發(fā)揮出它們強大的優(yōu)勢互補作用。 SHT11溫濕度傳感器的主要特性如下: ●將溫濕度傳感器、信號放大調理、A/D轉換、I2C總線接口全部集成于一芯片(CMOSensTM技術); ●可給出全校準相對濕度及溫度值輸出; ●帶有工業(yè)標準的I2C總線數字輸出接口; ●具有露點值計算輸出功能; ●具有卓越的長期穩(wěn)定性; ●濕度值輸出分辨率為14位,溫度值輸出分辨率為12位,并可編程為12位和8位; ●小體積(7.65×5.08×23.5mm),可表面貼裝; ●具有可靠的CRC數據傳輸校驗功能; ●片內裝載的校準系數可保證100%互換性; ●電源電壓范圍為2.4~5.5V; ●電流消耗,測量時為550μA,平均為28μA,休眠時為3μA。 (1)GND:接地端; (2)DATA:雙向串行數據線; (3)SCK:串行時鐘輸入; (4)VDD電源端:0.4~5.5V電源端; (5~8)NC:空管腳。 SHT11的濕度檢測運用電容式結構,并采用具有不同保護的“微型結構”檢測電極系統(tǒng)與聚合物覆蓋層來組成傳感器芯片的電容,除保持電容式濕敏器件的原有特性外,還可抵御來自外界的影響。由于它將溫度傳感器與濕度傳感器結合在一起而構成了一個單一的個體,因而測量精度較高且可精確得出露點,同時不會產生由于溫度與濕度傳感器之間隨溫度梯度變化引起的誤差。CMOSensTM技術不僅將溫濕度傳感器結合在一起,而且還將信號放大器、模/數轉換器、校準數據存儲器、標準I2C總線等電路全部集成在一個芯片內。SHT11傳感器的內部結構框圖如圖2所示。 SHT11的每一個傳感器都是在極為精確的濕度室中校準的。SHT11傳感器的校準系數預先存在OTP內存中。經校準的相對濕度和溫度傳感器與一個14位的A/D轉換器相連,可將轉換后的數字溫濕度值送給二線I2C總線器件,從而將數字信號轉換為符合I2C總線協議的串行數字信號。 3.1 輸出特性 (1)濕度值輸出 SHT11可通過I2C總線直接輸出數字量濕度值,其相對濕度數字輸出特性曲線如圖3所示。由圖3可看出,SHT11的輸出特性呈一定的非線性,為了補償濕度傳感器的非線性,可按如下公式修正濕度值: RHlinear=c1+c2SORH+c3SORH2 式中,SORH為傳感器相對濕度測量值,系數取值如下: 12位:SORH:c1=-4,c2=0.0405,c3=-2.8×10-6 8位:SORH:c1=-4,c2=0.648,c3=-7.2×10-4 (2)溫度值輸出 由于SHT11溫度傳感器的線性非常好,故可用下列公式將溫度數字輸出轉換成實際溫度值: T=d1+d2SOT 當電源電壓為5V,且溫度傳感器的分辨率為14位時,d1=-40?d2=0.01,當溫度傳感器的分辨率為12位時,d1=-40?d2=0.04。 (3)露點計算 空氣的露點值可根據相對濕度和溫度值來得出,具體的計算公式如下: LogEW=(0.66077+7.5T/(237.3+T)+[log10(RH)-2] Dp=[(0.66077-logEW)×237.3]/(logEW-8.16077) 3.2 命令與接口時序 SHT11傳感器共有5條用戶命令,具體命令格式見表1所列。下面介紹一下具體的命令順序及命令時序。
(1)傳輸開始 初始化傳輸時,應首先發(fā)出“傳輸開始”命令,該命令可在SCK為高時使DATA由高電平變?yōu)榈碗娖?,并在下一個SCK為高時將DATA升高。 接下來的命令順序包含三個地址位(目前只支持“000”)和5個命令位,當DATA腳的ack位處于低電位時,表示SHT11正確收到命令。 (2)連接復位順序 如果與SHT11傳感器的通訊中斷,下列信號順序會使串口復位:即當DATA線處于高電平時,觸發(fā)SCK 9次以上(含9次),此后應接著發(fā)一個“傳輸開始”命令。
(3)溫濕度測量時序 當發(fā)出了溫(濕)度測量命令后,控制器就要等到測量完成。使用8/12/14位的分辨率測量分別需要大約11/55/210ms的時間。為表明測量完成,SHT11會使數據線為低,此時控制器必須重新啟動SCK,然后傳送兩字節(jié)的測量數據與1字節(jié)CRC校驗和??刂破鞅仨毻ㄟ^使DATA為低來確認每一個字節(jié),所有的量均從右算,MSB列于第一位。通訊在確認CRC數據位后停止。如果沒有用CRC-8校驗和,則控制器就會在測量數據LSB后保持ack為高來停止通訊,SHT11在測量和通訊完成后會自動返回睡眠模式。需要注意的是:為使SHT11的溫升低于0.1℃?此時的工作頻率不能大于標定值的15%(如:12位精確度時,每秒最多進行3次測量)。測量溫度和濕度命令所對應的時序如圖4所示。 SHT11傳感器中的一些高級功能是通過狀態(tài)寄存器來實現的,寄存器各位的類型及說明見表2所列。下面對寄存器相關位的功能說明: (1)加熱 使芯片中的加熱開關接通后,傳感器溫度大約增加5℃,從而使功耗增加至8mA@5V。加熱用途如下: ●通過對啟動加熱器前后的溫、濕度進行比較,可以正確地區(qū)別傳感器的功能; ●在相對濕度較高的環(huán)境下,傳感器可通過加熱來避免冷凝。 (2)低電壓檢測 SHT11工作時可以自行檢測VDD電壓是否低于2.45V,準確度為±0.1V。 (3)下載校準系數 為了節(jié)省能量并提高速度,OTP在每次測量前都要重新下載校準系數,從而使每一次測量節(jié)省8.2ms的時間。 (4)測量分辨率設定 將測量分辨率從14位(溫度)和12位(濕度)分別減到12位和8位可應用于高速或低功耗場合。 4.1 運行條件 測量量程以外的溫度會使?jié)穸刃盘枙簳r地偏移+3%。然后傳感器會慢慢返回到校準條件。若將芯片在濕度小于5%環(huán)境下加熱24小時到90℃,芯片就會迅速恢復高相對濕度、高溫度環(huán)境的影響,但是,延長強度條件會加速芯片的老化。 4.2 安裝注意事項 由于大氣的相對濕度與溫度的關系比較密切,因此,測量大氣溫度時的要點是將傳感器與大氣保持同一溫度,如果傳感器線路板上有發(fā)熱元件,SHT11應與熱源保持良好的通風,為減少SHT11和PCB之間的熱傳導,應使銅導線最細并在其中加上窄縫,同時應避免使傳感器在強光或UV下曝曬。 傳感器在布線時,SCK和DATA信號平行且相互接近,或信號線長于10cm時,均會產生干擾信息,此時應在兩組信號之間放置VDD或GND。 圖5是AT89C2051單片機與SHT11的接口電路。由于AT89C2051不具備I2C總線接口,故使用單片機通用I/O口線來虛擬I2C總線,并利用P1.0來虛擬數據線DATA,利用P1.1口線來虛擬時鐘線,并在DATA端接入一只4.7kΩ的上拉電阻,同時,在VDD及GND端接入一只0.1μF的去耦電容。下面給出與上述硬件電路配套的C51應用程序。 #define DATA P1_1 #define SCK P1_0 #define ACK 1 #define noACK 0 #define MEASURE_TEMP 0x03 //測量溫度命令 #define MEASURE_HUMI 0x05 //測量濕度命令 //讀溫濕度數據 char s-measure(unsigned char *p- value, un-signed char *p_checksum, unsigned char mode) { unsigned char error=0; unsigned int i; s_transstart(); //傳輸開始 switch(mode){ case TEMP:error+=s_write_byte(measure_temp); break; case HUMI:error+=s_write_byte(measure_humi);break; default:break; } for(i=0;i<65535;i++) if(DATA==0) break; if (DATA) reeor+=1; *(p_value)=s_read_byte(ACK); *(p_value+1)=s_read_byte(ACK); *p_checksum=s_read_byte(noACK); return error; } //溫濕度值標度變換及溫度補償 void calc_sth15(float *p_humidity,float *p_tempera-ture) { const float c1=-4.0; const float c2=0.0405; const float c3=-0.0000028; const float t1=-0.01; const float t2=0.00008; float rh=×p_humidity; float t=×p_temperature; float rh_lin; float th_ture; float t_c; t_c=t×0.01-40; rh_lin=c3×rh×rh+c2×rh+c1; trh_ture=(t_c-25)×(t1+t2×rh)+rh_lin; ×p_temperature=t-c; ×p_humidity=rh_ture; } //從相對溫度和濕度計算露點 char calc_dewpoint(float h,float t) {float logex,dew_point; logex=0.66077+7.5×t/(237.3+t)+[log10(h)-2]; dew_point=(logex-0.66077)×237.3/(0.66077+7.5-logex); return dew_point; } 限于篇幅,上述程序中未給出傳輸開始、寫字節(jié)數據、讀字節(jié)數據函數。 SHT11數字式溫濕度傳感器由于將溫度傳感器、濕度傳感器、信號調理、模/數轉換器、標定參數及I2C總線接口全部集成到傳感器內部,因此,既提高了傳感器的性能,又降低了成本、減少了體積,同時也非常便于和微控制器接口,由此可見,該傳感器是嵌入式系統(tǒng)溫濕度測試的理想選擇。 |
- I2C總(8474)
相關推薦
51單片機溫濕度監(jiān)控系統(tǒng)
51單片機dht11溫濕度傳感器
I2C接口與溫濕度傳感器AM2320是如何進行通信的
SHT11傳感器的溫度濕度監(jiān)控報警系統(tǒng)單片機Proteus設計
SHT11溫濕度測量儀設計led顯示 誰會做幫幫忙
SHT11溫濕度測量值錯誤小結
SHT21和SHT11有啥區(qū)別,各位大神誰有SHT21的源代碼沒。。
SHT30溫濕度模塊怎么使用
sht10溫濕度傳感器驅動
在機房監(jiān)控產品環(huán)境溫濕度中應用的溫濕度傳感器
數字輸出溫濕度傳感器HTU21D技術方案詳解
數字式溫濕度測量儀設計
溫濕度變送器
DHT11數字溫濕度傳感器產品概述
DHT11數字溫濕度傳感器的相關資料分享
DHT11數字溫濕度傳感器的相關資料推薦
DHT11數字溫濕度傳感器的相關資料推薦
DHT11數字溫濕度傳感器的相關資料推薦
DHT11數字式溫濕度傳感器的應用性研究
DHT11溫濕度傳感器介紹
DHT11溫濕度傳感器的相關資料推薦
DHT11溫濕度傳感器簡介
STM32應用實例五:與SHT1X溫濕度傳感器通訊
proteus仿真和程序基于at89c52單片機sht11溫濕度控制系統(tǒng),lcd1602顯示
【STM32L476 Nucleo試用體驗】DHT12數字式溫濕度傳感器數據讀取
【Tisan物聯網試用體驗】+溫濕度傳感器
【原創(chuàng)】DHT11傳感器溫濕度監(jiān)測系統(tǒng)畢設,論文、代碼、原理圖和仿真介紹
一種智能溫濕度控制器的設計
上位機顯示并存儲,RS485傳輸溫濕度監(jiān)控系統(tǒng)(SHT11傳感器20個點位)
使用PSOC I2C獲取SHT20溫濕度
使用STM32來讀取DHT11數字溫濕度傳感器
單總線傳感器DHT11在溫度測控中的應用
基于I2C硬件協議的AHT20溫濕度傳感器的數據采集
基于SHT11溫濕度傳感器和單片機技術的智能溫濕度測量系統(tǒng)
基于SHT11溫濕度遠程監(jiān)控系統(tǒng)的工作原理是什么?
基于SHT10傳感器的溫濕度檢測儀設計
基于SHT10的便攜式數顯溫濕度檢測儀設計
基于sht11的溫濕度測量課設
基于單片機的SHT11的溫濕度監(jiān)測
基于單片機的溫濕度分析遙控開關門窗系統(tǒng)
基于單片機的多功能數字鐘加溫濕度傳感器
基于AT89C51的溫濕度的測量 (要SHT11)做,求仿真圖..
基于MSP4300F149單片機的溫濕度檢測系統(tǒng)用DHT11溫濕度傳感器怎樣實現
如何使用SHT31溫度/濕度傳感器呢
如何利用軟件模擬I2C讀寫SHT20溫濕度傳感器
如何去實現基于I2C的AHT20溫濕度傳感器的數據采集及串口輸出
如何在IIC0口上實現讀取SHT3x溫濕度傳感器的溫濕度功能呢
怎樣去設計一個基于溫濕度和煙霧傳感器的火災檢測系統(tǒng)
怎樣去設計一種基于STC89C52RC單片機的大棚溫濕度自動控制系統(tǒng)
新人發(fā)帖問關于i2c溫濕度傳感器SHT20在藍牙協議棧的問題
有什么方法可以去獲取DHT11數字溫濕度傳感器的數據呢
請問SHT11測到的溫濕度如何在數碼管上顯示?SHT11的程序用的官方的,如何增加數碼管顯示?
通過使用AT89C52和DHT11設計的溫濕度控制系統(tǒng)資料分享
采用數字溫濕度傳感器的多點溫濕度報警系統(tǒng)設計
高精度溫濕度傳感器SHT2x的應用有哪些
數字式溫濕度傳感器SHT15及其應用

集成式溫濕度傳感器雙總線數字信號輸出高精度濕敏傳感器模塊
數字溫濕度傳感器SHT11與CC2430應用接口電路


溫濕度傳感器SHT15在嵌入式系統(tǒng)中的應用

基于Bang-Bang控制的溫濕度調節(jié)系統(tǒng)


溫濕度傳感器 sht11 仿真程序下載

基于SHT11溫濕度遠程監(jiān)控系統(tǒng)設計

基于Avalon總線SHT11溫濕度傳感器自定義IP核的開發(fā)流程


闡述I2C總線數字式溫濕度傳感器SHT11及其在單片機系統(tǒng)的應用

sht11采集與顯示有仿真圖

DHT22+數字溫濕度傳感器+AM2302+溫濕度模塊+取代SHT11+SHT15

SHT15數字式溫濕度傳感器內部結構及工作原理的介紹

數字溫濕度傳感器SHT11的溫濕度遠程監(jiān)控系統(tǒng)的設計

關于ZigBee網絡的分布式無線溫濕度測量系統(tǒng)

基于51單片機溫濕度檢測的設計資料合集免費下載

C51單片機實現DTH11溫濕度傳感器測量仿真的設計

數字溫濕度傳感器技術手冊SHT1x(SHT10SHT11SHT15)

評論