Obsah:

Raspberry Pi / DHT11 - Měření vlhkosti a teploty: 4 kroky
Raspberry Pi / DHT11 - Měření vlhkosti a teploty: 4 kroky

Video: Raspberry Pi / DHT11 - Měření vlhkosti a teploty: 4 kroky

Video: Raspberry Pi / DHT11 - Měření vlhkosti a teploty: 4 kroky
Video: Arduino návody | Raspberry Pi: Teplotní senzor DHT11/22/AM2302 2024, Listopad
Anonim
Raspberry Pi / DHT11 - Měření vlhkosti a teploty
Raspberry Pi / DHT11 - Měření vlhkosti a teploty

Chtěl jsem změřit teplotu a vlhkost pomocí svého Raspberry Pi. Vybral jsem snímač DHT11, protože je robustní a levný. Jeho konfigurace je také dobře zdokumentována, ale na cestě je řada úskalí, na která bych se chtěl zaměřit.

DHT11 má 4 piny. Nejvíce vlevo je pro Vcc nebo kladný (+) pin, který je připojen ke kolíku Raspberry Pi 3.3V. Dalším kolíkem je datový pin, který musí být připojen ke kolíku GPIO na Raspberry Pi. Tyto dva piny musí být spojeny pomocí odporu 4,7K.

3. kolík zleva se nepoužívá. Pravý a čtvrtý kolík je zemnící nebo záporný kolík, který musí být připojen k jednomu ze zemnicích kolíků na Raspberry Pi.

Krok 1: Požadované součásti

Požadované součásti
Požadované součásti

1. Raspberry Pi

2. DHT11

3. Rezistor 4,7k

4. Různé dráty na prkénko

5. Breadboard

Krok 2: Propojení věcí

Propojování věcí
Propojování věcí
Propojování věcí
Propojování věcí

Připojte Raspberry Pi a DHT11 následujícím způsobem:

DHT11 (+ pin) RaspberryPi (3,3 V pin)

DHT11 (datový pin) RaspberryPi (GPIO pin - použil jsem GPIO22)

DHT11 (3. pin) Žádné připojení

DHT11 (-pin) ------ Raspberry Pi (gnd pin)

Krok 3: Instalace softwaru

Z příkazového řádku RaspberryPi proveďte následující: (POZNÁMKA, nevynechávejte SUDO)

klon sudo git

Měli byste vidět - Klonování do 'Adafruit_Python_DHT' … vzdálené: Počítání objektů: 249, hotovo. vzdálené: Celkem 249 (delta 0), opakovaně 0 (delta 0), opakovaně použitých 249 Přijímající objekty: 100% (249/249), 77,01 KiB, hotovo. Vyřešení delt: 100% (142/142), hotovo.

cd Adafruit_Python_DHT/

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

ls

Měli byste vidět - Adafruit_DHT příklady ez_setup.py LICENCE README.md setup.py zdroj

cd Adafruit_DHT/

Měli byste vidět -Beaglebone_Black.py common.py _init_.py platform_detect.py Raspberry_Pi_2.py Raspberry_Pi.py Test.py

instalace sudo python setup.py

(Všimněte si, že pokud tento krok obejdete, může se zobrazit chyba setkání - Traceback (poslední hovor poslední):

Soubor „./AdafruitDHT.py“, řádek 24, v importu Adafruit_DHT ImportError: Žádný modul s názvem Adafruit_DHT)

cd příklady

sudo./AdafruitDHT.py 11 22 (11 = DHT11 a 22 = GPIO22, který jste vybrali dříve)

Měli byste vidět Temp = 18,0* Vlhkost = 46,0% (tj. Teplota a vlhkost pro vaše prostředí)

Krok 4: Co dělat s výstupem

Takže, jak jsme viděli, výstup je "Teplota = 18,0* Vlhkost = 46,0%"

Existuje několik způsobů, jak můžete tento outpu využít, například pomocí tohoto testovacího php souboru, test_dht11.php souboru

Nejprve jsem přemístil skript AdafruitDHT.py na/var/www/.

Chcete -li otestovat a spustit skript php, přejděte na /var /www a poté sudo php test_dht11.php

Výstup ukazuje dvě čísla představující teplotu a vlhkost. Tato čísla lze zapsat do databáze nebo porovnat s limity varování a odeslat upozornění atd

// <? php // odkomentujte výše uvedený řádek - instructables nemá rád příkaz start php //test_dht11.php

// spustí soubor python pro čtení teplotního senzoru DHT11

// a extrahuje hodnoty teploty a vlhkosti $ teplota = 0; $ vlhkost = 0; $ my_pos = 0; $ exec_msg = "sudo /var/www/AdafruitDHT.py 11 22 2> & 1"; $ test = shell_exec ($ exec_msg); // extrahuje teplotu $ my_pos = strpos ($ test, "Temp =", 0); $ teplota = substr ($ test, $ my_pos+5, 4); echo "\ n". $ teplota; // extrahuje vlhkost $ my_pos = strpos ($ test, "Humidity =", $ my_pos); $ vlhkost = substr ($ test, $ my_pos+9, 4); echo "\ n". $ vlhkost; ?>

Doporučuje: