电子说
传感器测量土壤中水的体积含量,并以电压表示水分值。
它还提供模拟和数字输出,但对于这个项目,我们将仅使用模拟输出。
要启用传感器模拟模式,我们需要一个模拟引脚来产生输出。
这是一个问题,因为Raspberry Pi不包含模拟引脚。
MCP3008
我们将使用MCP3008 IC,10位,8通道ADC(模数转换器),用于解决模拟引脚问题。
MCP3008使用SPI总线协议接收模拟来自Raspberry Pi的输入值。
它具有8个模拟输入,并使用Raspberry Pi的4个引脚,不包括电源和接地引脚。
它产生的输出值范围为0-1023(注意:0代表OV,1023代表3.3V)。
使用Raspberry Pi启用SPI接口
按照以下步骤启用与Raspberry Pi的SPI接口:
首先启动终端并输入以下命令:
sudo raspi-config
导航到接口选项。
启用SPI接口。
重新启动Raspberry Pi。
安装spidev库
spidev库将帮助您通过SPI接口读取传感器值。
使用以下命令安装spidev库:
sudo apt-get install git python-dev
git clone git://github.com/doceme/py-spidev
cd py-spidev/
sudo python setup.py install
安装numpy库
为了转换输出值,还需要numpy库
我们从MCP3008 IC获得的输出值将在前面提到的0-0123范围内。然后我们将这些值映射到0-100的百分比。
使用以下命令安装numpy模块:
sudo apt-get install python-numpy
必需的组件
此项目所需的组件:
Raspberry Pi
FC-28土壤湿度传感器
面包板
跳线电缆
电路图和说明
MCP3008共有16个引脚,其中8个用于记录模拟输入值。其余8个位于CH0-CH7(引脚1-8),用于通过SPI协议方法与Raspberry Pi通信。
Python代码
从土壤湿度传感器读取模拟输出值时 - 请记住测量湿度百分比,并将映射0-100的值。
将使用来自numpylibrary的特定interpmodule映射这些值。
全部0条评论
快来发表一下你的评论吧 !