Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Doja të matja temperaturën dhe lagështinë duke përdorur Raspberry Pi tim. Zgjodha një sensor DHT11 sepse është i fortë dhe i lirë. Konfigurimi i tij është gjithashtu i dokumentuar mirë, por ka një numër kurthesh në rrugën në të cilën do të doja të përqendrohesha.
DHT11 ka 4 kunja. Pjesa më e majtë është për Vcc ose pin pozitiv (+) i cili është i lidhur me kunjën Raspberry Pi 3.3V. Kunja tjetër në të është kunja e të dhënave e cila duhet të lidhet me një kunj GPIO në Raspberry Pi. Këto dy kunja duhet të lidhen duke përdorur një rezistencë 4.7K.
Kunja e 3 -të nga e majta nuk përdoret. Kunja më e djathtë dhe e katërt është kunja e tokëzimit ose negative e cila duhet të lidhet me një nga kunjat e tokëzimit në Raspberry Pi.
Hapi 1: Përbërësit e kërkuar
1. Raspberry Pi
2. DHT11
3. Rezistencë 4.7k
4. Tela të ndryshëm të bukës
5. Tabela e bukës
Hapi 2: Lidhja e Gjërave
Lidhni Raspberry Pi dhe DHT11 si më poshtë:
DHT11 (+ pin) RaspberryPi (pin 3.3V)
DHT11 (kunja e të dhënave) RaspberryPi (pin GPIO - kam përdorur GPIO22)
DHT11 (kunja e tretë) Nuk ka lidhje
DHT11 (-pin) ------ Raspberry Pi (gnd pin)
Hapi 3: Instalimi i Softuerit
Nga rreshti i komandës RaspberryPi, bëni sa më poshtë: (SHENIM, mos e lini pas dore SUDO)
sudo git klon
Duhet të shihni - Klonimi në 'Adafruit_Python_DHT' … telekomandë: Numërimi i objekteve: 249, i kryer. telekomandë: Gjithsej 249 (delta 0), të ripërdorura 0 (delta 0), pako të ripërdorura 249 Objekte marrëse: 100% (249/249), 77.01 KiB, e kryer. Zgjidhja e deltave: 100% (142/142), e kryer.
cd Adafruit_Python_DHT/
sudo apt-merrni përditësim sudo apt-get install install-thelbësor python-dev python-openssl
ls
Ju duhet të shihni - Adafruit_DHT shembuj ez_setup.py LICENSE README.md setup.py burim
cd Adafruit_DHT/
Duhet të shihni -Beaglebone_Black.py common.py _init_.py platform_detect.py Raspberry_Pi_2.py Raspberry_Pi.py Test.py
sudo python setup.py install
(Shënim, nëse e anashkaloni këtë hap atëherë mund të shihni një gabim të takimit - Gjurmimi (thirrja më e fundit e fundit):
Skedari "./AdafruitDHT.py", rreshti 24, në import Adafruit_DHT ImportError: Asnjë modul i quajtur Adafruit_DHT)
cd shembuj
sudo./AdafruitDHT.py 11 22 (11 = DHT11 dhe 22 = GPIO22 që keni zgjedhur më herët)
Ju duhet të shihni Temp = 18.0* Lagështia = 46.0% (dmth. Temperatura dhe lagështia për mjedisin tuaj)
Hapi 4: Çfarë të bëni me daljen
Pra, siç e pamë, dalja është "Temp = 18.0* Lagështia = 46.0%"
Ka një numër mënyrash në të cilat mund ta shfrytëzoni këtë dalje, për shembull duke përdorur këtë skedar testi php, skedar test_dht11.php
Së pari, unë zhvendosa skenarin AdafruitDHT.py në/var/www/.
Për të testuar dhe ekzekutuar skriptin php, ndryshoni në /var /www pastaj sudo php test_dht11.php
Dalja tregon dy numra që përfaqësojnë temperaturën dhe lagështinë. Këta numra mund të shkruhen në një bazë të dhënash, ose të krahasohen me limitet e paralajmërimit dhe të dërgojnë një alarm etj
// <? php // mos komentoni rreshtin e mësipërm - udhëzuesit nuk e pëlqejnë komandën e fillimit të php //test_dht11.php
// ekzekuton skedarin python për të lexuar sensorin e temperaturës DHT11
// dhe nxjerr vlerat e temperaturës dhe lagështisë $ temperature = 0; lagështia $ = 0; $ my_pos = 0; $ exec_msg = "sudo /var/www/AdafruitDHT.py 11 22 2> & 1"; $ test = shell_exec ($ exec_msg); // nxjerr temperaturën $ my_pos = strpos ($ test, "Temp =", 0); $ temperature = substr ($ test, $ my_pos+5, 4); jehona "\ n". temperatura $; // nxjerr lagështi $ my_pos = strpos ($ test, "Lagështia =", $ my_pos); lagështia $ = substr ($ test, $ my_pos+9, 4); jehonë "\ n". lagështia $; ?>