Мазмұны:

Raspberry Pi / DHT11 - ылғалдылық пен температураны өлшеу: 4 қадам
Raspberry Pi / DHT11 - ылғалдылық пен температураны өлшеу: 4 қадам
Anonim
Raspberry Pi / DHT11 - ылғалдылық пен температураны өлшеңіз
Raspberry Pi / DHT11 - ылғалдылық пен температураны өлшеңіз

Мен Raspberry Pi көмегімен температура мен ылғалдылықты өлшегім келді. Мен DHT11 сенсорын таңдадым, себебі ол сенімді және арзан. Оны конфигурациялау да жақсы құжатталған, бірақ мен назар аударғым келетін бірқатар қиындықтар бар.

DHT11 -де 4 түйреуіш бар. Сол жақта Raspberry Pi 3.3V түйреуішіне қосылған Vcc немесе оң (+) түйреуіш бар. Келесі түйреуіш - бұл Raspberry Pi -дегі GPIO түйреуішіне қосылуы керек деректер түйреуі. Бұл екі түйреуіш 4.7K резистордың көмегімен қосылуы керек.

Сол жақтағы 3 -ші түйреуіш қолданылмайды. Оң жақтағы және төртінші түйреуіш - бұл Raspberry Pi -дегі түйреуіштердің біріне жалғануы тиіс жер немесе теріс түйреуіш.

1 -қадам: Қажетті компоненттер

Қажетті компоненттер
Қажетті компоненттер

1. Raspberry Pi

2. DHT11

3. 4,7 к резистор

4. Әр түрлі нанға арналған сымдар

5. Нан тақтасы

2 -қадам: заттарды байланыстыру

Заттарды байланыстыру
Заттарды байланыстыру
Заттарды байланыстыру
Заттарды байланыстыру

Raspberry Pi мен DHT11 қосқышын келесідей қосыңыз:

DHT11 (+ түйреуіш) RaspberryPi (3.3В түйреуіш)

DHT11 (деректер түйіні) RaspberryPi (GPIO түйреуіші - мен GPIO22 қолдандым)

DHT11 (3 -ші түйреуіш) Байланыс жоқ

DHT11 (-түйреуіш) ------ Raspberry Pi (gnd түйрегіш)

3 -қадам: Бағдарламалық жасақтаманы орнату

RaspberryPi пәрмен жолында келесі әрекеттерді орындаңыз: (ЕСКЕРТПЕ, SUDO -ны жіберіп алмаңыз)

sudo git clone

Сіз көресіз - 'Adafruit_Python_DHT' клондау … қашықтан басқару: объектілерді санау: 249, дайын. қашықтан басқару: Барлығы 249 (дельта 0), қайта қолданылған 0 (дельта 0), пакетте қайта қолданылған 249 Қабылдау объектілері: 100% (249/249), 77.01 КБ, орындалды. Дельталарды шешу: 100% (142/142), орындалды.

CD Adafruit_Python_DHT/

sudo apt-get update sudo apt-get install build-essential 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 іске қосу командасын ұнатпайды //test_dht11.php

// DHT11 температура сенсорын оқу үшін python файлын орындайды

// және температура мен ылғалдылық мәндерін шығарады $ temperatur = 0; $ ылғалдылық = 0; $ my_pos = 0; $ exec_msg = «sudo /var/www/AdafruitDHT.py 11 22 2> & 1»; $ тест = shell_exec ($ exec_msg); // $ my_pos = strpos температурасын шығарады ($ test, «Temp =», 0); $ temperatur = substr ($ test, $ my_pos+5, 4); echo «\ n». $ температура; // ылғалдылықты шығарады $ my_pos = strpos ($ test, «Ылғалдылық =», $ my_pos); $ ылғалдылық = substr ($ test, $ my_pos+9, 4); жаңғырық «\ n». $ ылғалдылық; ?>

Ұсынылған: