SHT10与DHT22的精度比较

2014-04-013.7万
精华项目
AI 快速预览详细 收起
本文通过实验对比了SHT10和DHT22两种温湿度传感器的精度。主要器件包括DFROBOT的DHT22、SHT1x、Nano 3.0和扩展板,以及天津凤洋的温湿度计。实验结果显示,在温度测量上,SHT1x和DHT22相差不大,但湿度测量上,两者相差超过10%RH。SHT1x与机械温湿度计的湿度测量值较接近,而DHT22的湿度测量准确性较低,需进行修正。此外,SHT1x更灵敏,DHT22更稳定。


到手DHT22温湿度传感器,网上号称可替代SHT1x,遂简单地做了一下对比实验

SHT10与DHT22的精度比较图1
主要器件:
DFROBOT      DHT22             2个
DFROBOT      SHT1x             1个
DFROBOT      Nano 3.0         1个
DFROBOT      Nano扩展板     1个
天津凤洋         温湿度计           1个

Arduino程序如下:
#include <DHT22.h>
#include <SHT1x.h>

SHT1x SHT(7, 8);
DHT22 DHT1(2);
DHT22 DHT2(4);

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Serial.print("SHT: ");
  Serial.print(SHT.readTemperatureC(),2);
  Serial.print("C ");
  Serial.print(SHT.readHumidity(),2);
  Serial.print("%");
  
  DHT22_ERROR_t errorCode;
  Serial.print(" DHT1: ");
  errorCode = DHT1.readData();
  if(errorCode==DHT_ERROR_NONE){
    Serial.print(DHT1.getTemperatureC(),2);
    Serial.print("C ");
    Serial.print(DHT1.getHumidity(),2);
    Serial.print("%");
  }
  else {
    Serial.print("Error");
  }
  Serial.print(" DHT2: ");
  errorCode = DHT2.readData();
  if(errorCode==DHT_ERROR_NONE){
    Serial.print(DHT2.getTemperatureC(),2);
    Serial.print("C ");
    Serial.print(DHT2.getHumidity(),2);
    Serial.print("%");
  }
  else {
    Serial.print("Error");
  }
  Serial.println("");
  delay(3000);
}


程序运行输出如下:
SHT10与DHT22的精度比较图2

就温度读数来看,SHT1x和DHT22相差不大,两者与机械温湿度计的温度测量值也差不多,故在温度测量的准确性,SHT1x和DHT22差不多
但湿度方面,SHT1x和DHT22就相差很大了,有超过10%RH的差距,而SHT1x与机械温湿度计的湿度测量值较接近,故判断DHT22的湿度测量准确性很低,若要在项目上应用须对读数进行修正。
稳定性或灵敏度方面,相对地,SHT1x较灵敏,DHT22较稳定



创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(6)
我爱小宇宙
我爱小宇宙
SHT1x这个传感器我也很看好~以前用这个做过中央空调控制器,效果非常好
lauren
lauren
牛逼,有尝试过推测他们快速响应性上的差异吗?以及原始数据在变化时的波动情况?。
Holiday
Holiday
SHT1x感觉比较工业。。。。第一感觉就是价格高。。。然后就是准
Grey
Grey
采样频率也有应该有所不同,相比SHT1X,我更期待DHT22和DHT11,这两兄弟的对比
何处不江南
何处不江南
价格差距摆在那呢 呵呵。。。佩服楼主的研究精神
Angleo
Angleo
SHT1x这个传感器每只都进行过数据矫正的,妥妥的~~:lol
- 没有更多了 -