树莓派使用DHT11温湿度传感器

树莓派使用DHT11温湿度传感器

DHT11是一种低成本的温湿度传感器。它不是最快的传感器,但其便宜的价格对于小的实验或项目很有用。该设备只需要三个引脚连接到树莓派。+ 3.3v,接地和一个GPIO引脚。

DHT11规格

设备本身有四个引脚,但其中一个引脚不被使用。你可以自行购买4针设备或3针模块都行。

树莓派使用DHT11温湿度传感器

模块有三个引脚,可以方便地直接连接到Pi的GPIO引脚。

  • 湿度:20-80%(精度5%)

  • 温度:0-50°C(±2°C精度)

制造商建议您不要在每2秒钟内多次从该设备读取数据。这样做可能会读不正确

硬件设置

树莓派使用DHT11温湿度传感器

4引脚器件需要在引脚1(3.3V)和引脚2(data数据)之间放置一个电阻(4.7K-10K)。

3引脚模块通常会包含这个电阻,使布线更容易一些。因此,我拿起了一个模块,然后用一条3pin杜邦线连接到Pi上。

3个引脚应连接到Pi,如下表所示:

DHT针 信号 引脚Pin
1 3.3V 1
2 数据输入/输出 11(GPIO17)
3 不曾用过
4 地面 6或9

data引脚可以连接到任何GPIO引脚。在我的例子中,使用了GPIO 17即物理引脚11。这是一个4针温湿度传感器。引脚1(3.3V)和2(数据/输出)之间具有10K电阻。

树莓派使用DHT11温湿度传感器

Python库

DHT11需要将特定协议应用于数据引脚。为了节省时间尝试实现这一点,使用Adafruit DHT库更容易。软件设置

要开始更新软件包列表并安装几个Python库:

sudo apt-get update  sudo apt-get install build-essential python-dev

然后从其存储库克隆Adafruit库:

git clone https ://github.com/adafruit/Adafruit_Python_DHT.git  CD Adafruit_Python_DHT

然后安装Python 2和Python 3的库:

sudo python setup.py
 install  sudo python3 setup.py
 install

执行完之后,该库已安装并可以在Python中使用。

Adafruit示例Python脚本

Adafruit提供了一个示例脚本,您可以使用它来检查传感器是否正常运行。

cd 〜  cd Adafruit_Python_DHT cd examples

然后 :

python AdafruitDHT.py
 11 17

示例脚本需要两个参数。第一种是传感器类型,因此设置为“11”以表示DHT11。第二个是GPIO号,所以在我的例子中,我对GPIO17使用“17”。如果您使用不同的GPIO引脚进行数据/输出线,则可以进行更改。

您应该会看到类似的输出:

Temp= 22.0 *Humidity= 68.0%

在其他Python脚本中使用库

一旦安装了Adafruit库,并且您已经使用了示例脚本,您可以在自己的python脚本中使用。简单地导入模块,设置几个变量并调用“read_retry”函数:

import Adafruit_DHT
# Set sensor type : Options are DHT11,DHT22 or AM2302 sensor=Adafruit_DHT.DHT11
# Set GPIO sensor is connected to gpio=17
# Use read_retry method. This will retry up to 15 times to
# get a sensor reading (waiting 2 seconds between each retry). humidity, temperature = Adafruit_DHT.read_retry(sensor, gpio)
# Reading the DHT11 is very sensitive to timings and occasionally
# the Pi might fail to get a valid reading. So check if readings are valid. if humidity is not None and temperature is not None:
print('Temp={0:0.1f  }*C Humidity={1:0.1f  }%'.format(temperature, humidity))
 else:
print('Failed to get reading. Try again!')

此脚本可以直接下载到您的Pi使用:

wget https://bitbucket.org/MattHawkinsUK/rpispy-misc/raw/master/python/dht11.py

并运行使用:

python dht11.py

购买DHT11

DHT11可从许多电器组件销售商处获得。例如得芯电子

原文始发于:树莓派使用DHT11温湿度传感器

|

发表评论