最新消息:

Arduino温度湿度传感器-温湿度传感器选择指南

Arduino 少儿编程 1617浏览 0评论
Arduino温湿度传感器

温湿度传感器评测

  • DS18B20 数字温度防水传感器
    防水,长距离,廉价。
  • TMP100温度传感器(Gadegeteer兼容)
    中端价格,优秀性能,适合多种场合,IIC数字输出
  • MLX9061红外线温度计评估板
    昂贵,大量程,曲线光滑,非接触测温
  • 高精度DHT22温湿度传感器
    中端价格,温湿度传感器,长距离,性价比高,应用范围广
  • 水分传感器(Water Sensor)
    简单易用的水分检测工具
  • 土壤湿度传感器(Arduino兼容)
    简单的土壤水分传感器,可插入土壤
  • 红外非接触测温传感器
    性价比高,高灵敏,长距离,方便嵌入硬件,非接触
  • SHT1x温湿度传感器(Arduino兼容)
    高端温湿度传感器,快速响应,极高可靠性和长期稳定性,自动休眠,低功耗
  • DHT11温湿度传感器(Arduino兼容)
    价格低廉,适用低要求场景
  • 模拟LM35线性温度传感器(Arduino兼容)
    价格低廉,适用低要求场景,模拟温度传感器
  • DS18B20数字温度传感器
    价格低廉,性能优秀,数字温度传感器

注:其中*项由于应用范围明确,就偷懒不比较了。(第一个和最后一个的用的传感器不是一样的嘛!之后会告诉大家这个传感器有多么适合屌丝)

第一部分:基本参数
这部分列出使用时需要的接口,传感器尺寸,工作电压和是否需要焊接,以及预算。
目的:如果已设计好其他元器件,可从剩余物理空间和接口以及剩余的预算中做出最初筛选。
至于那些完全不知道要做什么的人……恭喜你,和我现在站在了同一起跑线上了。

Arduino温度湿度传感器-温湿度传感器选择指南

注:焊接指的是在接口处焊接排针。不推荐用热熔胶和双面胶……

第二部分:量程精度
假如你要和我一样把你的传感器放在火上烤的话……一定鲜嫩多汁。所以请工作在官方提示的工作范围内。
首先要确定测量范围,接着测量精度,精度是指在某一指定温度下的值,分段的精度不同,具体参照Datasheet,
若使用场合难以恒温,提出过高测量精度也不合适的,因为会随着温度变化产生湿度或温度漂移。

Arduino温度湿度传感器-温湿度传感器选择指南

第三部分:响应时间比较

  • 这部分比较的是MCU发出请求后收到不同传感器的温度的时间,网络中就是RTT。这个数值和写的程序(比如delay)以及通讯方式有很大关系。
  • 最快的是输出电压与温度成正比的LM35,总线通讯的与通讯协议有关,1-Wire相较IIC耗时久一些,同时由于单总线由多个功能部件共用,只能时分复用,可能导致很大的时间延迟,因此不推荐多个设备挂在同一条单总线上。

第四部分:性能(对温度的追踪能力)

  • 基本上是采用一个很不科学的方法,拿到室外等稳定后再取回室内。以此观察在温度骤变的情况下多久达到稳定。
  • 如果有条件的话,可以尝试下开个空调到25°然后拿个冰水混合物,把传感器温柔的带着套的浸入冰水中再取出到室温。
  • 首先是怎么看都高大上的两款红外测温传感器,由于测试时间不在同一时间,大家感受下走向和温度变化的速度就好了。红外测温分辨率很高,又由于与被测对象互不接触,可用于测量运动物体、小目标和热容量小或温度变化迅速(瞬变)对象的表面温度,也可用于测量温度场的温度分布。

Arduino温度湿度传感器-温湿度传感器选择指南
Arduino温度湿度传感器-温湿度传感器选择指南

总体看,两款红外温度传感器对温度都很敏感,都可以在短时间升高到环境温度。相比较MLX90614的温度曲线更平稳,抖动更少。

MLX90614红外线温度传感器
推荐度:★★☆☆☆

优点:

  • 温度曲线平缓,测量温度和工作温度范围大。
  • 有节能模式,可非接触测温。
  • IIC连接,温度返回快,一条总线可挂多个温度传感器。

缺点:

应用范围:

  • 医疗器具比如体温测量,运动测量,打印机扫描仪等办公设备的温度控制。
  • 数据传输20米以上。而且测量温度比较极限的地方。(注意工作温度和测量温度有差别)

红外非接触测温传感器
推荐度:★★★★☆

优点:

  • 价格合适。
  • 而且瘦长的外观相比刚刚的平板身材更适合做温度测试笔。
  • 温度曲线也不错,灵敏度很高,内含温度补偿。
  • 可以选择分辨率,最高可达1/16°C,精度比较高。
  • 还不要库。
  • 数字量,衰减小。

缺点:

  • 需要自己焊接下排针。
  • 测量范围不是特别高。
  • 需要3个数字口。

应用范围:同上。

接下来有三款传感器都是可以同时返回温度湿度的,放一起比较了。

Arduino温度湿度传感器-温湿度传感器选择指南
Arduino温度湿度传感器-温湿度传感器选择指南

可以看出来温度有所变化后

  • 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,所以劣势就看上去比较明显。所以,调整分辨率结果会有不同

Arduino温度湿度传感器-温湿度传感器选择指南

从这张图可以看出来。

模拟LM0035线性温度传感器
推荐度:★★★☆☆

优点:

  • 使用简单,一条模拟线就搞定。
  • 不需要外加库。
  • 由于采用半导体测温芯片,输出电压与温度成正比所以速度感应和处理很快。
  • 温度测量范围比较大。
  • 价格非常低廉。

缺点:

  • 没分辨率可调,精确度不高,误差看上去大了点,毛刺多了点。

应用范围:精度要求不高的一般场景都可以用。17元你买不了上当买不了吃亏。

另外比较了下我认为比较高性能的温度传感器。分别有看上去特别好的DS18B20,被迫害的TMP100,和在温湿度测试中表现出色的SHT1x和DHT22。

TMP100温度传感器(Gadegeteer兼容)
推荐度:★★★★☆

优点:

  • 可选分辨率,9~12bit。
  • IIC协议(可用系统自带库),可在总线上同时连接多个(最多8个)传感器(不过要用跳线设置地址),支持IDC10接口。
  • 第一张图分辨率是默认的9,第二张我设置为10,可以看出平滑了很多。
  • 相比其他传感器较快达到稳定值,是神器。

缺点:

  • 需要焊接。
  • 需要手动设置跳线。
  • 要注意改程序里的地址代码,这个要特别注意的。
  • 官方给出的误差很大。
  • 需要下载库。

应用范围:供电温度检测,计算机相关热防护,热力控制系统等。

DS18B20数字温度传感器
推荐度:★★★★★
优点:

  • 价格低廉。
  • 分辨率可选择,同样也是9-12bit,默认就为12bit。
  • 不需要焊接,连接容易。
  • 测量范围很大。

缺点:

  • 需要库。
  • 案例代码中没有修改分辨率的语句。
  • 单总线连接,影响效率。
  • 达到最后稳定需要时间比较久。

应用范围:应用范围比较广,如家用电器,汽车电子,测量仪器,医疗器具,工业生产。

本文整理于DFRobot wiki By 毫无愧疚感的小白

您必须 登录 才能发表评论!