Kazalo:

Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo: 4 koraki
Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo: 4 koraki

Video: Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo: 4 koraki

Video: Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo: 4 koraki
Video: КАК ИЗМЕРИТЬ ТЕМПЕРАТУРУ И ВЛАЖНОСТЬ. ДАТЧИКИ DHT11 И DHT22 [Уроки Ардуино #13] 2024, Julij
Anonim
Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo
Raspberry Pi / DHT11 - Izmerite vlažnost in temperaturo

Želel sem izmeriti temperaturo in vlažnost z uporabo Raspberry Pi. Za senzor DHT11 sem se odločil, ker je robusten in poceni. Konfiguriranje je prav tako dobro dokumentirano, vendar se želim osredotočiti na številne pasti.

DHT11 ima 4 zatiči. Najbolj levo je za Vcc ali pozitivni (+) pin, ki je priključen na pin 3.3V Raspberry Pi. Naslednji zatič je podatkovni zatič, ki ga je treba priključiti na pin GPIO na Raspberry Pi. Ta dva zatiča morata biti povezana s 4,7K uporom.

Tretji zatič z leve se ne uporablja. Zadnji desni in četrti zatič je ozemljitveni ali negativni zatič, ki mora biti povezan z enim od ozemljitvenih zatičev na Raspberry Pi.

1. korak: potrebne komponente

Potrebne komponente
Potrebne komponente

1. Malina Pi

2. DHT11

3. 4,7 k upor

4. Različne žice

5. Ogledna plošča

2. korak: Povezovanje stvari

Povezovanje stvari
Povezovanje stvari
Povezovanje stvari
Povezovanje stvari

Raspberry Pi in DHT11 povežite na naslednji način:

DHT11 (+ pin) RaspberryPi (3.3V pin)

DHT11 (podatkovni pin) RaspberryPi (GPIO pin - uporabljal sem GPIO22)

DHT11 (3. pol.) Brez povezave

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

3. korak: Namestitev programske opreme

V ukazni vrstici RaspberryPi naredite naslednje: (OPOMBA, ne izpustite SUDO)

klon sudo git

Videti bi morali - Kloniranje v 'Adafruit_Python_DHT' … oddaljeno: štetje predmetov: 249, končano. daljinsko: Skupaj 249 (delta 0), ponovno uporabljena 0 (delta 0), ponovno uporabljena 249 Prejemni predmeti: 100% (249/249), 77,01 KiB, narejeno. Reševanje delt: 100% (142/142), končano.

cd Adafruit_Python_DHT/

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

ls

Morali bi videti - Adafruit_DHT primeri ez_setup.py LICENCA README.md vir setup.py

cd Adafruit_DHT/

Videti bi morali -Beaglebone_Black.py common.py _init_.py platform_detect.py Raspberry_Pi_2.py Raspberry_Pi.py Test.py

sudo python setup.py install

(Upoštevajte, če obidete ta korak, se lahko prikaže napaka pri srečanju - sledenje nazaj (zadnji klic zadnji):

Datoteka "./AdafruitDHT.py", vrstica 24, pri uvozu Adafruit_DHT ImportError: Ni modula z imenom Adafruit_DHT)

cd primeri

sudo./AdafruitDHT.py 11 22 (11 = DHT11 in 22 = GPIO22, ki ste ga izbrali prej)

Videti bi morali Temp = 18,0* Vlažnost = 46,0% (tj. Temperatura in vlažnost v vašem okolju)

4. korak: Kaj storiti z izhodom

Torej, kot smo videli, je izhod "Temp = 18,0* Vlažnost = 46,0%"

Obstaja več načinov, na katere lahko uporabite ta izhod, na primer z uporabo te testne datoteke php, datoteke test_dht11.php

Najprej sem preselil skript AdafruitDHT.py v/var/www/.

Če želite preizkusiti in zagnati skript php, spremenite na /var /www in nato sudo php test_dht11.php

Izhod prikazuje dve številki, ki predstavljata temperaturo in vlažnost. Te številke je mogoče zapisati v bazo podatkov ali primerjati z omejitvami opozoril in poslati opozorilo itd

// <? php // odkomentirajte zgornjo vrstico - instructables ne mara ukaza php start //test_dht11.php

// izvede datoteko python za branje temperaturnega senzorja DHT11

// in ekstrahira vrednosti temperature in 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 temperaturo $ my_pos = strpos ($ test, "Temp =", 0); $ temperature = substr ($ test, $ my_pos+5, 4); odmev "\ n". $ temperature; // ekstrahira vlažnost $ my_pos = strpos ($ test, "Humidity =", $ my_pos); $ vlažnost = substr ($ test, $ my_pos+9, 4); odmev "\ n". $ vlažnost; ?>

Priporočena: