樹莓派-DHT22測量濕度
一般的溫濕度傳感器有dht11和dht22,dht11比較便宜,dht22比dht11貴好幾倍,自然測量的准確度肯定是dht22高一些。追求更高精准度的可以使用SHT1x。
一、DHT22介紹
如圖,一個dht22溫濕度傳感器
商家賣的一般都是這種已經封裝好了的,三個針腳(一個vcc,一個gnd,一個data):
二、硬件連接
接線很簡單:
Vcc接樹莓派3.3v即1號針腳,Gnd接樹莓派gnd,Data隨便接一個GPIO腳,我接的是GPIO4。
三、軟件編程
(1)輸入以下命令,下載安裝Adafruit提供的python驅動,
#sudo apt-get update #sudo apt-get install build-essential python-dev #git clone https://github.com/adafruit/Adafruit_Python_DHT.git #cd Adafruit_Python_DHT #sudo python setup.py install |
如果不出錯的話就能安裝好了。
(2)dht22的代碼如下,(如果是dht11,把sensor = Adafruit_DHT.DHT22改為sensor = Adafruit_DHT.DHT11)
在Adafruit_Python_DHT目錄外新建一個.py文件
#!/usr/bin/python import Adafruit_DHT sensor = Adafruit_DHT.DHT22 pin = 4 #GPIO4 humidity, temperature = Adafruit_DHT.read_retry(sensor, pin) 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!') |
(3)把以上代碼保存為dht22.py
然后執行
#sudo python dht22.py |
四、效果圖: