摘要:SHT11是瑞士Sensirion公司生产的具有I2C总线接口的单片全校准数字式相对湿度和温度传感器。该传感器采用独特的CMOSens TM技术,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。文中对传感器的性能特点、接口时序与命令进行了详细的阐述,给出了SHT11与单片机的接口电路及相应程序。 关键词:数字式;温湿度传感器;I2C总线;单片机 1 概述 温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11是瑞士Sensirion公司推出的基于CMOSensTM技术的新型温湿度传感器。该传感器将CMOS芯片技术与传感器技术结合起来,从而发挥出它们强大的优势互补作用。 SHT11温湿度传感器的主要特性如下: ●将温湿度传感器、信号放大调理、A/D转换、I2C总线接口全部集成于一芯片(CMOSensTM技术); ●可给出全校准相对湿度及温度值输出; ●带有工业标准的I2C总线数字输出接口; ●具有露点值计算输出功能; ●具有卓越的长期稳定性; ●湿度值输出分辨率为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的湿度检测运用电容式结构,并采用具有不同保护的“微型结构”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还可抵御来自外界的影响。由于它将温度传感器与湿度传感器结合在一起而构成了一个单一的个体,因而测量精度较高且可精确得出露点,同时不会产生由于温度与湿度传感器之间随温度梯度变化引起的误差。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)传输开始 初始化传输时,应首先发出“传输开始”命令,该命令可在SCK为高时使DATA由高电平变为低电平,并在下一个SCK为高时将DATA升高。 接下来的命令顺序包含三个地址位(目前只支持“000”)和5个命令位,当DATA脚的ack位处于低电位时,表示SHT11正确收到命令。 (2)连接复位顺序 如果与SHT11传感器的通讯中断,下列信号顺序会使串口复位:即当DATA线处于高电平时,触发SCK 9次以上(含9次),此后应接着发一个“传输开始”命令。
(3)温湿度测量时序 当发出了温(湿)度测量命令后,控制器就要等到测量完成。使用8/12/14位的分辨率测量分别需要大约11/55/210ms的时间。为表明测量完成,SHT11会使数据线为低,此时控制器必须重新启动SCK,然后传送两字节的测量数据与1字节CRC校验和。控制器必须通过使DATA为低来确认每一个字节,所有的量均从右算,MSB列于第一位。通讯在确认CRC数据位后停止。如果没有用CRC-8校验和,则控制器就会在测量数据LSB后保持ack为高来停止通讯,SHT11在测量和通讯完成后会自动返回睡眠模式。需要注意的是:为使SHT11的温升低于0.1℃?此时的工作频率不能大于标定值的15%(如:12位精确度时,每秒最多进行3次测量)。测量温度和湿度命令所对应的时序如图4所示。 SHT11传感器中的一些高级功能是通过状态寄存器来实现的,寄存器各位的类型及说明见表2所列。下面对寄存器相关位的功能说明: (1)加热 使芯片中的加热开关接通后,传感器温度大约增加5℃,从而使功耗增加至8mA@5V。加热用途如下: ●通过对启动加热器前后的温、湿度进行比较,可以正确地区别传感器的功能; ●在相对湿度较高的环境下,传感器可通过加热来避免冷凝。 (2)低电压检测 SHT11工作时可以自行检测VDD电压是否低于2.45V,准确度为±0.1V。 (3)下载校准系数 为了节省能量并提高速度,OTP在每次测量前都要重新下载校准系数,从而使每一次测量节省8.2ms的时间。 (4)测量分辨率设定 将测量分辨率从14位(温度)和12位(湿度)分别减到12位和8位可应用于高速或低功耗场合。 4.1 运行条件 测量量程以外的温度会使湿度信号暂时地偏移+3%。然后传感器会慢慢返回到校准条件。若将芯片在湿度小于5%环境下加热24小时到90℃,芯片就会迅速恢复高相对湿度、高温度环境的影响,但是,延长强度条件会加速芯片的老化。 4.2 安装注意事项 由于大气的相对湿度与温度的关系比较密切,因此,测量大气温度时的要点是将传感器与大气保持同一温度,如果传感器线路板上有发热元件,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; } 限于篇幅,上述程序中未给出传输开始、写字节数据、读字节数据函数。 SHT11数字式温湿度传感器由于将温度传感器、湿度传感器、信号调理、模/数转换器、标定参数及I2C总线接口全部集成到传感器内部,因此,既提高了传感器的性能,又降低了成本、减少了体积,同时也非常便于和微控制器接口,由此可见,该传感器是嵌入式系统温湿度测试的理想选择。 |
- I2C总(8474)
相关推荐
51单片机温湿度监控系统
51单片机dht11温湿度传感器
I2C接口与温湿度传感器AM2320是如何进行通信的
SHT11传感器的温度湿度监控报警系统单片机Proteus设计
SHT11温湿度测量仪设计led显示 谁会做帮帮忙
SHT11温湿度测量值错误小结
SHT21和SHT11有啥区别,各位大神谁有SHT21的源代码没。。
SHT30温湿度模块怎么使用
sht10温湿度传感器驱动
在机房监控产品环境温湿度中应用的温湿度传感器
数字输出温湿度传感器HTU21D技术方案详解
数字式温湿度测量仪设计
温湿度变送器
DHT11数字温湿度传感器产品概述
DHT11数字温湿度传感器的相关资料分享
DHT11数字温湿度传感器的相关资料推荐
DHT11数字温湿度传感器的相关资料推荐
DHT11数字温湿度传感器的相关资料推荐
DHT11数字式温湿度传感器的应用性研究
DHT11温湿度传感器介绍
DHT11温湿度传感器的相关资料推荐
DHT11温湿度传感器简介
STM32应用实例五:与SHT1X温湿度传感器通讯
proteus仿真和程序基于at89c52单片机sht11温湿度控制系统,lcd1602显示
【STM32L476 Nucleo试用体验】DHT12数字式温湿度传感器数据读取
【Tisan物联网试用体验】+温湿度传感器
【原创】DHT11传感器温湿度监测系统毕设,论文、代码、原理图和仿真介绍
一种智能温湿度控制器的设计
上位机显示并存储,RS485传输温湿度监控系统(SHT11传感器20个点位)
使用PSOC I2C获取SHT20温湿度
使用STM32来读取DHT11数字温湿度传感器
单总线传感器DHT11在温度测控中的应用
基于I2C硬件协议的AHT20温湿度传感器的数据采集
基于SHT11温湿度传感器和单片机技术的智能温湿度测量系统
基于SHT11温湿度远程监控系统的工作原理是什么?
基于SHT10传感器的温湿度检测仪设计
基于SHT10的便携式数显温湿度检测仪设计
基于sht11的温湿度测量课设
基于单片机的SHT11的温湿度监测
基于单片机的温湿度分析遥控开关门窗系统
基于单片机的多功能数字钟加温湿度传感器
基于AT89C51的温湿度的测量 (要SHT11)做,求仿真图..
基于MSP4300F149单片机的温湿度检测系统用DHT11温湿度传感器怎样实现
如何使用SHT31温度/湿度传感器呢
如何利用软件模拟I2C读写SHT20温湿度传感器
如何去实现基于I2C的AHT20温湿度传感器的数据采集及串口输出
如何在IIC0口上实现读取SHT3x温湿度传感器的温湿度功能呢
怎样去设计一个基于温湿度和烟雾传感器的火灾检测系统
怎样去设计一种基于STC89C52RC单片机的大棚温湿度自动控制系统
新人发帖问关于i2c温湿度传感器SHT20在蓝牙协议栈的问题
有什么方法可以去获取DHT11数字温湿度传感器的数据呢
请问SHT11测到的温湿度如何在数码管上显示?SHT11的程序用的官方的,如何增加数码管显示?
通过使用AT89C52和DHT11设计的温湿度控制系统资料分享
采用数字温湿度传感器的多点温湿度报警系统设计
高精度温湿度传感器SHT2x的应用有哪些
数字式温湿度传感器SHT15及其应用
55集成式温湿度传感器双总线数字信号输出高精度湿敏传感器模块
数字温湿度传感器SHT11与CC2430应用接口电路
1639
温湿度传感器SHT15在嵌入式系统中的应用
139基于Bang-Bang控制的温湿度调节系统
1928
温湿度传感器 sht11 仿真程序下载
223基于SHT11温湿度远程监控系统设计
156基于Avalon总线SHT11温湿度传感器自定义IP核的开发流程
3891
阐述I2C总线数字式温湿度传感器SHT11及其在单片机系统的应用
10sht11采集与显示有仿真图
43DHT22+数字温湿度传感器+AM2302+温湿度模块+取代SHT11+SHT15
56SHT15数字式温湿度传感器内部结构及工作原理的介绍
26数字温湿度传感器SHT11的温湿度远程监控系统的设计
37关于ZigBee网络的分布式无线温湿度测量系统
18基于51单片机温湿度检测的设计资料合集免费下载
52C51单片机实现DTH11温湿度传感器测量仿真的设计
8765数字温湿度传感器技术手册SHT1x(SHT10SHT11SHT15)
8
电子发烧友App








评论