Arduino温度湿度传感器-温湿度传感器选择指南
温湿度传感器评测
- DS18B20 数字温度防水传感器
防水,长距离,廉价。
TMP100温度传感器(Gadegeteer兼容)
中端价格,优秀性能,适合多种场合,IIC数字输出MLX9061红外线温度计评估板
昂贵,大量程,曲线光滑,非接触测温高精度DHT22温湿度传感器
中端价格,温湿度传感器,长距离,性价比高,应用范围广水分传感器(Water Sensor)
简单易用的水分检测工具土壤湿度传感器(Arduino兼容)
简单的土壤水分传感器,可插入土壤红外非接触测温传感器
性价比高,高灵敏,长距离,方便嵌入硬件,非接触SHT1x温湿度传感器(Arduino兼容)
高端温湿度传感器,快速响应,极高可靠性和长期稳定性,自动休眠,低功耗DHT11温湿度传感器(Arduino兼容)
价格低廉,适用低要求场景模拟LM35线性温度传感器(Arduino兼容)
价格低廉,适用低要求场景,模拟温度传感器DS18B20数字温度传感器
价格低廉,性能优秀,数字温度传感器
注:其中*项由于应用范围明确,就偷懒不比较了。(第一个和最后一个的用的传感器不是一样的嘛!之后会告诉大家这个传感器有多么适合屌丝)
第一部分:基本参数
这部分列出使用时需要的接口,传感器尺寸,工作电压和是否需要焊接,以及预算。
目的:如果已设计好其他元器件,可从剩余物理空间和接口以及剩余的预算中做出最初筛选。
至于那些完全不知道要做什么的人……恭喜你,和我现在站在了同一起跑线上了。
注:焊接指的是在接口处焊接排针。不推荐用热熔胶和双面胶……
第二部分:量程精度
假如你要和我一样把你的传感器放在火上烤的话……一定鲜嫩多汁。所以请工作在官方提示的工作范围内。
首先要确定测量范围,接着测量精度,精度是指在某一指定温度下的值,分段的精度不同,具体参照Datasheet,
若使用场合难以恒温,提出过高测量精度也不合适的,因为会随着温度变化产生湿度或温度漂移。
第三部分:响应时间比较
- 这部分比较的是MCU发出请求后收到不同传感器的温度的时间,网络中就是RTT。这个数值和写的程序(比如delay)以及通讯方式有很大关系。
- 最快的是输出电压与温度成正比的LM35,总线通讯的与通讯协议有关,1-Wire相较IIC耗时久一些,同时由于单总线由多个功能部件共用,只能时分复用,可能导致很大的时间延迟,因此不推荐多个设备挂在同一条单总线上。
第四部分:性能(对温度的追踪能力)
基本上是采用一个很不科学的方法,拿到室外等稳定后再取回室内。以此观察在温度骤变的情况下多久达到稳定。
如果有条件的话,可以尝试下开个空调到25°然后拿个冰水混合物,把传感器温柔的带着套的浸入冰水中再取出到室温。
首先是怎么看都高大上的两款红外测温传感器,由于测试时间不在同一时间,大家感受下走向和温度变化的速度就好了。红外测温分辨率很高,又由于与被测对象互不接触,可用于测量运动物体、小目标和热容量小或温度变化迅速(瞬变)对象的表面温度,也可用于测量温度场的温度分布。
总体看,两款红外温度传感器对温度都很敏感,都可以在短时间升高到环境温度。相比较MLX90614的温度曲线更平稳,抖动更少。
MLX90614红外线温度传感器
推荐度:★★☆☆☆
优点:
- 温度曲线平缓,测量温度和工作温度范围大。
- 有节能模式,可非接触测温。
- IIC连接,温度返回快,一条总线可挂多个温度传感器。
缺点:
- 价格太高。
- 库很难找,因为是Arduino代理的产品,虽然内置Arduino引导程序可以使用Arduino环境,但是IIC协议不支持用Arduino内置的Wire库所以很蛋疼!
- 很难用,要自己焊接。
关于这个产品的相关网页
这个产品的原生网页
关于如何在arduino环境下用MLX90614的教程 含库文件
应用范围:
- 医疗器具比如体温测量,运动测量,打印机扫描仪等办公设备的温度控制。
- 数据传输20米以上。而且测量温度比较极限的地方。(注意工作温度和测量温度有差别)
红外非接触测温传感器
推荐度:★★★★☆
优点:
- 价格合适。
- 而且瘦长的外观相比刚刚的平板身材更适合做温度测试笔。
- 温度曲线也不错,灵敏度很高,内含温度补偿。
- 可以选择分辨率,最高可达1/16°C,精度比较高。
- 还不要库。
- 数字量,衰减小。
缺点:
- 需要自己焊接下排针。
- 测量范围不是特别高。
- 需要3个数字口。
应用范围:同上。
接下来有三款传感器都是可以同时返回温度湿度的,放一起比较了。
可以看出来温度有所变化后
- SHT1x比较敏感,较早的达到稳定。
- DHT11——实在不忍直视这湿度误差。
- SHT1x传感器由1个电容式聚合体测湿元件和1个能隙式测温元件组成,同样,DHT22也是电容感湿原件,测温元件采用NTC测温元件,而DHT11是电阻式感湿元件盒NTC测温元件组成的。(NTC为热敏电阻)
DHT11温湿度传感器
推荐度:★★☆☆☆
优点:
- 不需要焊接,价格在三者中是最便宜的。
- 达到稳定值也比较快。(毕竟电阻元件)。
- 数据可传输20米以上,抗干扰强。
缺点:
- 需要下载库!虽然这个库DHT22也可以共用。曲线和误差也不能忍吧。
- 不能选择精度。温度误差+/-2°C,湿度误差+/-5%RH。测量范围也比较小。温度0-50°C。
应用范围:农业园艺类,有地理位置的分布,但对湿度温度感应精度要求不需要太高的场景(但假如冬天温度到零下了,还是算了)。
DHT22温湿度传感器
推荐度:★★★★☆
优点:
- 不需要焊接,和DHT22相差不了多少钱。
- 曲线平滑。湿度和湿度误差为三个传感器中最小的。湿度误差很小。
- 工作温度湿度范围最大。
- 信号传输距离也可达到20米以上。
- 抗干扰能力强。
缺点:
- 不够敏感,对温度追踪反应慢。
- 需要下载库。
应用范围:对环境温度与湿度测量精度要求较高的情况。比如环境监测。
SHT1x温湿度传感器(Arduino兼容)
推荐度:★★★★☆
优点:
- 不需要焊接,曲线平滑。
- 温度误差很小。
- 反应迅速。较快达到稳定。
- 超低功耗,自动休眠,出色的长期稳定性。
缺点:
- 需要两个数字口。
- 湿度误差比较大。
- 测量范围和DHT11一样。
- 也需要下载库。
应用范围:对跟踪温度湿度的反应要求较高的场景,精度也能保证。适合长期工作。
接下来是比较三款比较低端(但是有内涵)的温度传感器
由于DS18B20分辨率默认为12,所以看上去那么光滑。而TMP100由于默认为9,所以劣势就看上去比较明显。所以,调整分辨率结果会有不同
从这张图可以看出来。
模拟LM0035线性温度传感器
推荐度:★★★☆☆
优点:
- 使用简单,一条模拟线就搞定。
- 不需要外加库。
- 由于采用半导体测温芯片,输出电压与温度成正比所以速度感应和处理很快。
- 温度测量范围比较大。
- 价格非常低廉。
缺点:
- 没分辨率可调,精确度不高,误差看上去大了点,毛刺多了点。
应用范围:精度要求不高的一般场景都可以用。17元你买不了上当买不了吃亏。
另外比较了下我认为比较高性能的温度传感器。分别有看上去特别好的DS18B20,被迫害的TMP100,和在温湿度测试中表现出色的SHT1x和DHT22。
TMP100温度传感器(Gadegeteer兼容)
推荐度:★★★★☆
优点:
- 可选分辨率,9~12bit。
- IIC协议(可用系统自带库),可在总线上同时连接多个(最多8个)传感器(不过要用跳线设置地址),支持IDC10接口。
- 第一张图分辨率是默认的9,第二张我设置为10,可以看出平滑了很多。
- 相比其他传感器较快达到稳定值,是神器。
缺点:
- 需要焊接。
- 需要手动设置跳线。
- 要注意改程序里的地址代码,这个要特别注意的。
- 官方给出的误差很大。
- 需要下载库。
应用范围:供电温度检测,计算机相关热防护,热力控制系统等。
DS18B20数字温度传感器
推荐度:★★★★★
优点:
- 价格低廉。
- 分辨率可选择,同样也是9-12bit,默认就为12bit。
- 不需要焊接,连接容易。
- 测量范围很大。
缺点:
- 需要库。
- 案例代码中没有修改分辨率的语句。
- 单总线连接,影响效率。
- 达到最后稳定需要时间比较久。
应用范围:应用范围比较广,如家用电器,汽车电子,测量仪器,医疗器具,工业生产。
本文整理于DFRobot wiki By 毫无愧疚感的小白
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号