Բովանդակություն:

Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը `4 քայլ
Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը `4 քայլ

Video: Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը `4 քայլ

Video: Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը `4 քայլ
Video: DHT11 Temperature and Humidity sensor with Raspberry Pi 2024, Հուլիսի
Anonim
Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը
Ազնվամորի Pi / DHT11 - Չափել խոնավությունը և ջերմաստիճանը

Ես ուզում էի չափել ջերմաստիճանը և խոնավությունը ՝ օգտագործելով իմ Raspberry Pi- ն: Ես ընտրեցի DHT11 սենսոր, քանի որ այն ամուր է և էժան: Այն կազմաձևելը նույնպես լավ փաստաթղթավորված է, բայց ճանապարհին կան մի շարք որոգայթներ, որոնց վրա ես կցանկանայի կենտրոնանալ:

DHT11- ն ունի 4 կապում: Ամենից ձախը Vcc- ի կամ դրական (+) կապի համար է, որը միացված է Raspberry Pi 3.3V քորոցին: Հաջորդ քորոցը տվյալների պինն է, որը պետք է միացված լինի Raspberry Pi- ի GPIO կապին: Այս երկու կապում պետք է միացված լինի ՝ օգտագործելով 4.7 Կ ռեզիստոր:

Ձախից 3 -րդ քորոցը չի օգտագործվում: Ամենաաջին և չորրորդ քորոցը հիմնավորված կամ բացասական քորոցն է, որը պետք է միացված լինի Raspberry Pi- ի գետնափնջերից մեկին:

Քայլ 1: Պահանջվում են բաղադրիչներ

Պահանջվող բաղադրիչներ
Պահանջվող բաղադրիչներ

1. Ազնվամորի Պի

2. DHT11

3. 4.7k դիմադրություն

4. Տարբեր հացահատիկի լարեր

5. Հացաթուղթ

Քայլ 2: Իրերի միացում

Իրերի միացում
Իրերի միացում
Իրերի միացում
Իրերի միացում

Միացրեք Raspberry Pi- ն և DHT11- ը հետևյալ կերպ.

DHT11 (+ քորոց) RaspberryPi (3.3V քորոց)

DHT11 (տվյալների քորոց) RaspberryPi (GPIO pin - ես օգտագործել եմ GPIO22)

DHT11 (3 -րդ փին) Կապ չկա

DHT11 (-քորոց) ------ Ազնվամորի Պի (gnd քորոց)

Քայլ 3: theրագրաշարի տեղադրում

RaspberryPi հրամանի տողից կատարեք հետևյալը. (ՆՇՈՄ, մի բաց թողեք SUDO- ն)

sudo git կլոն

Դուք պետք է տեսնեք. հեռավոր. Ընդամենը 249 (դելտա 0), վերօգտագործված 0 (դելտա 0), փաթեթ ՝ կրկին օգտագործված 249 Ստացող օբյեկտներ ՝ 100% (249/249), 77.01 KiB, կատարված: Դելտաների լուծում. 100% (142/142), կատարված:

cd Adafruit_Python_DHT/

sudo apt-get թարմացում sudo apt-get տեղադրել կառուցել-անհրաժեշտ python-dev python-openssl

ls

Դուք պետք է տեսնեք - Adafruit_DHT օրինակներ ez_setup.py LICENSE README.md setup.py աղբյուր

cd Adafruit_DHT/

Դուք պետք է տեսնեք -Beaglebone_Black.py common.py _init_.py platform_detect.py Raspberry_Pi_2.py Raspberry_Pi.py Test.py

sudo python setup.py տեղադրել

(Ուշադրություն դարձրեք, եթե դուք շրջանցեք այս քայլը, ապա կարող եք հանդիպել սխալ - Traceback (վերջին զանգը վերջին անգամ).

Ֆայլ "./AdafruitDHT.py", տող 24, ներմուծման մեջ Adafruit_DHT ImportError: Adafruit_DHT անունով մոդուլ չկա)

cd օրինակներ

sudo./AdafruitDHT.py 11 22 (11 = DHT11 և 22 = GPIO22, որը դուք ընտրել եք ավելի վաղ)

Դուք պետք է տեսնեք Temp = 18.0* Խոնավություն = 46.0% (այսինքն ՝ շրջակա միջավայրի ջերմաստիճանը և խոնավությունը)

Քայլ 4: Ինչ անել ելքի հետ

Այսպիսով, ինչպես տեսանք, ելքը «Temp = 18.0* խոնավություն = 46.0%» է

Կան մի քանի եղանակներ, որոնցով կարող եք օգտագործել այս ելքը, օրինակ ՝ օգտագործելով այս թեստային php ֆայլը, test_dht11.php ֆայլը

Նախ, ես AdafruitDHT.py սցենարը տեղափոխեցի/var/www/:

PHP սցենարը փորձարկելու և գործարկելու համար փոխեք /var /www, այնուհետև sudo php test_dht11.php

Ելքը ցույց է տալիս ջերմաստիճան և խոնավություն ներկայացնող երկու թիվ: Այս թվերը կարող են գրվել տվյալների բազայում կամ համեմատվել նախազգուշացման սահմանների հետ և ուղարկել ահազանգ և այլն:

// <? php // մեկնաբանել վերը նշված տողը. հրահանգներին դուր չի գալիս php start հրամանը

// կատարում է python ֆայլ ՝ DHT11 ջերմաստիճանի տվիչ կարդալու համար

// և քաղում է ջերմաստիճանի և խոնավության արժեքները $ temperature = 0; $ խոնավություն = 0; $ my_pos = 0; $ exec_msg = "sudo /var/www/AdafruitDHT.py 11 22 2> & 1"; $ test = shell_exec ($ exec_msg); // արդյունահանում է ջերմաստիճանը $ my_pos = strpos ($ test, "Temp =", 0); $ temperature = substr ($ test, $ my_pos+5, 4); արձագանք "\ n". $ ջերմաստիճան; // արդյունահանում է խոնավությունը $ my_pos = strpos ($ test, "Humidity =", $ my_pos); $ խոնավություն = substr ($ փորձարկում, $ my_pos+9, 4); արձագանք "\ n". $ խոնավություն; ?>

Խորհուրդ ենք տալիս: