树莓派测试土壤湿度模块

2020-09-254242
AI 快速预览详细 收起
本文介绍了如何使用树莓派和Gravity: 模拟防水土壤湿度传感器进行土壤湿度检测。首先启动树莓派的I2C接口,并安装必要的Python依赖库。然后下载并运行驱动库,连接ADC模块和土壤监测模块。注意I2C地址开关需拨到0x48处,否则会报错。最后运行代码读取土壤湿度数据。该传感器适用于3.3V/5V主控板,具有防水抗腐蚀特性,适合农业和园艺项目。
感谢DF的试用活动,今天我来分享关于树莓派玩土壤湿度检测器的体会。本次测试主角 Gravity:模拟防水土壤湿度传感器(人送外号大宝剑)
特性
  • 模拟量输出
  • 电容式传感器
  • 防水、抗腐蚀
  • 适用于3.3V/5V主控板
参数规格
  • 工作电压: 3.3 ~ 5.5 VDC
  • 输出电压: 0 ~ 2.9 VDC
  • 接口型号: 2.54-3Pin
  • 电缆线长: 1.5m
  • 尺寸(LxW): 175 x 30mm
一、知识科普
AD转换(analogue-to-digital conversion;ADC):模拟信号只有通过A/D转化为数字信号后才能用软件进行处理,这一切都是通过A/D转换器(ADC)来实现的。本次试用产品型号为Gravity:模拟防水土壤湿度传感器,主控板为树莓派,树莓派自带GPIO端口无法读取模拟值,需要通过ADC装换器来进行转换。
模数转换流程树莓派测试土壤湿度模块图1


二、实验设备清单


1.树莓派*1  https://www.dfrobot.com.cn/goods-1976.html
2.Gravity: I2C ADS1115 16位AD转换模块(Arduino、树莓派兼容)*1  https://www.dfrobot.com.cn/goods-1734.html
3.Gravity:模拟防水土壤湿度传感器*1  https://www.dfrobot.com.cn/goods-2800.html
4.测试植物




三、实验流程
1.启动树莓派的I2C接口。如已开启,可跳过该步骤。
打开终端(Terminal),键入指令,并回车:
sudo raspi-config
然后用上下键选择“ 5 Interfacing Options ”, 回车进入



选择 “ P5 I2C ”, 按回车确认“ YES ”即可。





按回车确认“ OK”。
重启树莓派主控板。




2.安装Python依赖库与git,树莓派需联网。如已安装,可跳过该步骤。
在终端中,依次键入如下指令,并回车:
sudo apt-get update
sudo apt-get install build-essential python-dev python-smbus git



3.下载驱动库,并运行。
在终端中,依次键入如下指令,并回车:
cd ~ git clone https://github.com/DFRobot/DFRobot_ADS1115.git
cd DFRobot_ADS1115/RaspberryPi/Python sudo python DFRobot_ADS1115.py

此处需注意,运行时教程中的符号“”<和>“”不要输入,否则会报错
树莓派测试土壤湿度模块图2

4.关机连接模块
连接ADC模块


此处需注意,I2C地址开关拨到0x48处,否则后续会出错。



连接土壤监测模块

树莓派测试土壤湿度模块图5

土壤监测模块有4条线,屏蔽的黑色线连接到其他端口的黑色针脚





5.依次运行代码,读取结果
cd ~/DFRobot_ADS1115/RaspberryPi/Python/ADS1115_ReadVoltage
sudo python ADS1115_ReadVoltage.py

错误反馈,原因为I2C地址开关在OX49处,没拨到0x48处

树莓派测试土壤湿度模块图3

解决办法,I2C地址开关拨到0x48处
树莓派测试土壤湿度模块图4

重行运行代码,A0口获取输入值(16位模块更加精确,所以数值反馈较大)

没插入花盆前




插入花盆后




6.由于是测试电阻值,我用手握住松开,也会有数值变化


创作许可协议

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

评论(0)
- 没有更多了 -