土壤湿度传感器 - 模拟

来自YFRobotwiki
2019年11月7日 (四) 15:05Allblue讨论 | 贡献的版本

跳转至: 导航搜索
土壤传感器-模拟


产品简介


土壤湿度传感器模拟模块是一个简易的湿度传感器可用于检测土壤的湿度;将其应用于自动浇花项目,当长时间不在家时,它可以感测到植物是否已经渴了,提示装置给植物浇水,防止植物因为缺水造成枯萎的情况,使得花园更智能。

将模块插入土壤中两个大面积的接触面引脚可充分接触土壤并探测其中的水分,当土壤中水分含量高时两引脚间的导电率变高,输出值变小;反之土壤水分含量越低时,则输出值变大。用户可通过单片机对输出值的大小分析判断来确定土壤湿度是否合适植物生长。


规格参数


  • 供电电压:DC3.3 - 5V
  • 输出信号:模拟
  • 检测深度:42mm
  • 安装孔径:3mm
  • 模块尺寸:66*21*8mm(长*宽*高)
  • 孔间距:15mm
  • 模块重量:2.8g


引脚说明


  • 1. G -- Gnd(地)
  • 2. V -- Vcc(电源+5V)
  • 3. S -- Sign(信号)


应用示例


电路连接示意图

土壤湿度传感器模块 - 模拟模块的 G、V、S分别连接 Arduino UNO的GND、VCC(+5V)、A0引脚。



示例代码
提示:程序中的参数值是根据实验需要设置的,用户实验时可能需要更改,偏差也可能较大属于正常情况;根据实际情况设置参数,实验效果更佳!

//Soil Moisture Sensor - analog output Test

int soilPin = A0;
int soilVal ;

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

void loop(){

  soilVal = analogRead(soilPin);
  Serial.print("soil moisture:");
  Serial.print(soilVal);
  Serial.print("\t");

  if(soilVal < 350 && soilVal >= 0)  
    Serial.println("Don't need to water!");
  else if(soilVal < 500 && soilVal >= 350)   
    Serial.println("Need Little water"); 
  else if( soilVal >= 500)  
    Serial.println("Need More water");
    
  delay(1000);  
}

程序下载地址:Soil_Moisture_Sensor_A

程序运行结果:串口输出土壤模块值。为演示直接将其插入水中,下图即为串口输出值(个体情况差异,输出值无标准,仅供实验参考):


土壤传感器-模拟串口输出.png

参考资料



返回首页

更多建议和问题欢迎反馈至 YFRobot论坛

购买方式:YFRobot 电子工作室