「雕爷学编程」Arduino动手做(8)——湿度传感器模块

37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备逐一做做实验,不管能否成功,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 

 

【Arduino】66种传感器模块系列实验之八:湿度传感器模块

 

湿敏电阻是一种对环境温度敏感的元件,它的电阻值能随着环境的相对温度变化而变化。 湿敏电阻器在电路中的文字符号用字母“R”或“RS”表示,其电路图形符号如下。

模块特色:
1、工作电压 3.3V-5V
2、设有固定螺栓孔,方便安装
3、配电位器调节温度检测阀值
4、使用宽电压 LM393 比较器
5、采用优质 HR202 湿敏传感器
6、小板 PCB 尺寸:3.2cm x 1.4cm
7、比较器输出,信号干净,波形好,驱动能力强,超过 15mA
8、输出形式 :数字开关量输出(0 和 1)或和AO模拟电压输出(4线)

工作原理
表示空气湿度的方法一般有两种,即绝对湿度和相对湿度绝对湿度是指空气中含水置的绝对值,可用空气中水蒸气的分压来表示。相对湿度是指空气中的水蒸气压与同一温度下的饱和蒸气压之比,用百分数表示。一般常用相对湿度来表征空气的干湿程度。湿敏元件是指对相对湿度敏感的元件,它可以是湿敏电阻器,也可以是湿敏电容器或其它元件。但目前研究得较多的是湿敏电阻器。


湿敏元件一般应满足以下要求:灵敏度高I元件随湿度而变化的物理罱在0〜100%的相对湿度范围内能有规则地重复变化>响应速度快;与温度依赖关系小;能在高温和低温的环境中使用>对湿度以外的各种气氛不灵敏;滞后效应小;小型;制作容易,使用方便,不易损坏,价廉等等。 测量湿度的方法一般用毛发湿度计和千湿球湿度计,由于它们对湿度的变化反应较慢,并还有其它一些缺点,因此湿度自动控制和探空气球等方面不宜使用。而湿敏电阻器具有测量精度较髙并便于使用等优点,所以被广泛应用于各种湿度测量和控制系统中。


湿敏电阻器是一种电阻值随环境相对湿度的变化而改变的敏感元件。它主要由感湿层、电极和具有一定机械强度的绝缘基体组成。感湿层在吸收了环境的水分后,引起两电极间阻值的变化,这样就能直接将相对湿度变换成电阻值。 湿敏电阻器按感湿层所用的材料有很多种,如有氯化裡湿敏电阻器、碳湿敏电阻器、氧化物湿敏电阻器、硫酸钙、獠化物、碘化物、偏磷酸盐等湿敏电阻器和发光湿敏电阻器等。

 

 

 

HR202L小片式湿敏电阻是采用有机高分子材料的一种新型的湿度敏感元件,感湿范围宽,长期使用性能稳定,可以应用于仓储、车厢、居室内空气质量控制、楼宇自控、医疗、工业控制系统及科研领域等广泛的应用。


基本参数
定额电压:1.5V AC (Max,正弦波)
定额功率:0.2mW (Max,正弦波)
工作频率:500Hz~2kHz
使用温度:0~60℃
使用湿度:95%RH以下(非结露)
湿滞回差:≤2%RH
响应时间:吸湿, ≤20S;脱湿≤40S
稳定性:≤1%RH/年
湿度检测精度:≤±5%RH
相对湿度
条件:at25℃ 1kHz 1V AC (正弦波)
湿度: 60%RH
中心值:31 KΩ
阻抗值范围:19.8~50.2 KΩ
湿度检测精度:±5%RH

 

模块用途:
湿度检测,湿度传感器,环境湿度检测

 

模块电原理图

 

常见的应用电路

 

模块接线(3 线制)


1 VCC 外接 3.3V-5V
2 GND 外接 GND
3 DO 小板数字量输出接口(0 和 1)

 

模块接线(4 线制)


1、VCC 接电源正极 3.3-5V
2、GND 接电源负极
3、DO TTL 开关信号输出
4、AO 小板模拟信号输出(电压信号)

模块仿真实验示意图

 

模块使用:
1、湿敏传感器模块对环境湿度很敏感,一般用来检测周围环境的湿度;
2、通过对电位器的调节,可以改变湿度检测的阀值(即控制湿度值),如需要控制环境湿度为 60%时,模块则在相应环境湿度调到其绿灯亮,DO 则输出低电平,低于此设定湿度值时,输出高电平,绿灯不亮;
3、DO 输出端可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的湿度改变;
4、DO 输出端也能直接驱动继电器模块,由此可以组成一个湿度开关,控制相关设备在合适的环境下工作;
5、小板模拟量输出 AO 可以和Arduino的AO端相连,通过 AD 转换,可以获得环境湿度更精准的数值(4线才带AO端)。

 

/*
 【雕爷学编程】Arduino动手做(8)
【Arduino】66种传感器系列实验之八——湿度传感器模块
源代码
*/

void setup() {
  pinMode(7,INPUT);
  pinMode(13,OUTPUT);
}

void loop() {
      if (digitalRead(7)) {
          digitalWrite(13, LOW);
      }
      else {
          digitalWrite(13, HIGH);
          delay(2000);
      }
}

  图形编程

 

 

posted @ 2019-08-15 10:59  行者花雕  阅读(1927)  评论(1编辑  收藏  举报