Arduino 与 土壤湿度传感器 测量土壤湿度自动浇水提醒
2016-05-15 15:21
393 查看
土壤湿度传感器
1,传感器适用于土壤的湿度检测;
2,模块中蓝色的电位器是用于土壤湿度的阀值调节,
顺时针调节,控制的湿度会越大,逆时针越小
3,数字量输出D0可以与单片机直接相连,通过单片机来检测高低电平,由此来检测土壤湿度;
4,小板模拟量输出AO(0~1023)可以和AD模块相连,通过AD转换,可以获得土壤湿度更精确的数值;
主要技术参数
1,因为长期与水锈蚀,一般寿命在1年左右,真实情况还要看具体的加工工艺2,通过电位器调节控制相应阀值,
湿度低于设定值时,DO输出高电平,模块提示灯亮;
湿度高于设定值时,DO输出低电平,模块提示灯灭。
3,比较器采用LM393芯片,工作稳定;
4,工作电压3.3V-5V。
3V时,在空气中AO读取的值最大为695 , 浸泡在水里的 最小值245;
5V时,在空气中AO读取的值最大为1023 ,浸泡在水里的最小值 245。
BOM表
Ardunio Uno *1土壤湿度传感器 *1
跳线 若干
引脚说明
1 VCC --- 外接3.3V-5V2 GND --- 外接GND
3 DO --- 小板数字量输出接口(0和1)
4 AO --- 小板电压模拟量输出
接线方式
注意:模块(小板)连接传感器的两条线不分正负,随便接。
程序实现
把程序上传到板子后,点开串口监视器,查看数值的变化。//LingShun Lab #define Moisture A0 //定义AO 引脚 为 IO-A0 #define DO 7 //定义DO 引脚 为 IO-7 void setup() { pinMode(Moisture, INPUT);//定义A0为输入模式 pinMode(DO, INPUT); Serial.begin(9600); } void loop() { //串口返回测量数据 Serial.print("Moisture="); Serial.print(analogRead(Moisture));//读取AO的数值 Serial.print("|DO="); Serial.println(digitalRead(DO));//读取DO的数值 delay(1000); }
实例效果
传感器浸泡在水中和提起的来的数据变化,
Moisture数值越小,湿度越高,反之越低。
相关文章推荐
- Map的按value值排序
- @RequestParam @RequestBody @PathVariable 等参数绑定注解详解(转载)
- CodeForces 559B Equivalent Strings
- RequireJS使用注意细节
- RequireJS使用注意地方
- Frequent Pattern 挖掘之二(FP Growth算法)
- 深入理解容器系列之三--------LinkedList、Stack、Queue、PriorityQueue的总结
- iOS开发UI篇—UIScrollView控件简单使用
- Android view中的requestLayout和invalidate方法
- Primefaces menu中的menuitem过多产生的问题
- 错误The request sent by the client was syntactically incorrect ()的解决
- Window和DecorView
- Android UI基础之SeekBar--SecondaryProgress
- 深入理解StringBuilder的使用方法
- 新增crawlingtosea.loaders.LoaderBitmapqueue包
- [LeetCode] Top K Frequent Elements
- DirectUI浅谈
- Material Design(三)--UI控件之CardView
- Material Design(二)--UI控件之RecyclerView
- build.gradle中引入jar