Sadržaj:

Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature: 4 koraka
Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature: 4 koraka

Video: Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature: 4 koraka

Video: Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature: 4 koraka
Video: Temperature and Humidity Sensor DHT11 connected to Raspberry Pi Pico 2024, Srpanj
Anonim
Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature
Raspberry Pi / DHT11 - Mjerenje vlažnosti i temperature

Htio sam mjeriti temperaturu i vlažnost pomoću Raspberry Pi. Odabrao sam DHT11 senzor jer je robustan i jeftin. Konfiguriranje je također dobro dokumentirano, ali na putu bih se htio usredotočiti na brojne zamke.

DHT11 ima 4 pina. Krajnji lijevi dio je za Vcc ili pozitivni (+) pin koji je spojen na pin 3.3V Raspberry Pi. Sljedeći pin preko je pin za podatke koji mora biti spojen na GPIO pin na Raspberry Pi. Ova dva pina moraju biti spojena pomoću 4,7K otpornika.

3. iglica s lijeve strane se ne koristi. Krajnji desni i četvrti pin je uzemljeni ili negativni pin koji mora biti spojen na jedan od uzemljnih pinova na Raspberry Pi -u.

Korak 1: Potrebne komponente

Potrebne komponente
Potrebne komponente

1. Malina Pi

2. DHT11

3. 4,7 k otpornik

4. Razne žice za izradu matične ploče

5. Oglasna ploča

Korak 2: Povezivanje stvari

Povezivanje stvari
Povezivanje stvari
Povezivanje stvari
Povezivanje stvari

Povežite Raspberry Pi i DHT11 na sljedeći način:

DHT11 (+ pin) RaspberryPi (pin 3.3V)

DHT11 (podatkovni pin) RaspberryPi (GPIO pin - koristio sam GPIO22)

DHT11 (3. pinski) Nema veze

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

Korak 3: Instaliranje softvera

Iz naredbenog retka RaspberryPi učinite sljedeće: (NAPOMENA, ne izostavljajte SUDO)

klon sudo git

Trebali biste vidjeti - Kloniranje u 'Adafruit_Python_DHT' … daljinski: Brojanje objekata: 249, gotovo. daljinski: Ukupno 249 (delta 0), ponovno korišteno 0 (delta 0), ponovno pakiranje 249 Objekti koji primaju: 100% (249/249), 77,01 KiB, učinjeno. Rješavanje delta: 100% (142/142), učinjeno.

cd Adafruit_Python_DHT/

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

ls

Trebali biste vidjeti - Adafruit_DHT primjeri ez_setup.py LICENCA README.md source.py izvor

cd Adafruit_DHT/

Trebali biste vidjeti -Beaglebone_Black.py common.py _init_.py platform_detect.py Raspberry_Pi_2.py Raspberry_Pi.py Test.py

sudo python setup.py install

(Napomena, ako zaobiđete ovaj korak, možda ćete vidjeti pogrešku nailaska - Traceback (posljednji zadnji poziv):

Datoteka "./AdafruitDHT.py", redak 24, u uvozu Adafruit_DHT ImportError: Nema modula s imenom Adafruit_DHT)

cd primjeri

sudo./AdafruitDHT.py 11 22 (11 = DHT11 i 22 = GPIO22 koje ste ranije odabrali)

Trebali biste vidjeti Temp = 18,0* Vlažnost = 46,0% (tj. Temperatura i vlažnost za vašu okolinu)

Korak 4: Što učiniti s izlazom

Dakle, kao što smo vidjeli, izlaz je "Temp = 18,0* Vlažnost = 46,0%"

Postoji nekoliko načina na koje možete upotrijebiti ovaj izlaz, na primjer pomoću ove testne php datoteke, datoteke test_dht11.php

Prvo sam preselio skriptu AdafruitDHT.py u/var/www/.

Da biste testirali i pokrenuli php skriptu, promijenite na /var /www, a zatim sudo php test_dht11.php

Izlaz prikazuje dva broja koji predstavljaju temperaturu i vlažnost. Ti se brojevi mogu zapisati u bazu podataka ili usporediti s ograničenjima upozorenja i poslati upozorenje itd

// <? php // raskomentirajte gornji redak - instructables ne voli naredbu za pokretanje php //test_dht11.php

// izvršava python datoteku za čitanje osjetnika temperature DHT11

// i ekstrahira vrijednosti temperature i vlažnosti $ temperature = 0; $ vlažnost = 0; $ my_pos = 0; $ exec_msg = "sudo /var/www/AdafruitDHT.py 11 22 2> & 1"; $ test = shell_exec ($ exec_msg); // ekstrahira temperaturu $ my_pos = strpos ($ test, "Temp =", 0); $ temperatura = podstr ($ test, $ my_pos+5, 4); echo "\ n". $ temperature; // izvlači vlažnost $ my_pos = strpos ($ test, "Humidity =", $ my_pos); $ vlažnost = substr ($ test, $ my_pos+9, 4); echo "\ n". $ vlažnost; ?>

Preporučeni: