ЕСП32 ДХТ11 Очитавања температуре и влажности на ОЛЕД дисплеју користећи Ардуино ИДЕ

Esp32 Dht11 Ocitavana Temperature I Vlaznosti Na Oled Displeju Koristeci Arduino Ide



ЕСП32 је напредна плоча микроконтролера која може покренути више инструкција за генерисање излаза. ОЛЕД екран се користи за приказ различитих врста података. Користећи ЕСП32 са ДХТ11 сензором можемо мерити температуру и влажност. Сви ови подаци се могу приказати преко ОЛЕД дисплеја. Овај водич покрива све кораке потребне за повезивање ових сензора са ЕСП32.

Овај водич покрива следећи садржај:







1: Увод у ДХТ11 сензор



2: Пиноут сензора ДХТ11



2.1: 3-пин ДХТ11 сензор





2.2: 4-пин ДХТ11 сензор

3: ОЛЕД екрански модул са ЕСП32



4: Инсталирање потребних библиотека

4.1: Ардуино библиотека за ДХТ сензор

4.2: Ардуино библиотека за ОЛЕД екран

5: Повезивање ЕСП32 са ДХТ11 сензором

5.1: Шема

5.2: Код

5.3: Излаз

1: Увод у ДХТ11 сензор

ДХТ11 је један од најчешће коришћених сензора за праћење температуре и влажности у електронској заједници. Прецизнији је у давању температуре и релативне влажности. Он емитује калибрисани дигитални сигнал који избацује у два различита очитавања температуре и влажности.

Користи технику аквизиције дигиталног сигнала која даје поузданост и стабилност. Сензор ДХТ11 садржи компоненту за мерење влажности отпорног типа и компоненту за мерење температуре НТЦ. Оба су интегрисана у 8-битни високо ефикасан микроконтролер који нуди брз одговор, способност против сметњи и економичност.

Ево неких главних техничких спецификација ДХТ11:

    • ДХТ11 сензор ради на напону од 5В до 5.5В.
    • Радна струја током мерења је 0,3 мА, ау стању приправности 60уА.
    • Избацује серијске податке у дигиталном сигналу.
    • Температура сензора ДХТ11 се креће од 0°Ц до 50°Ц.
    • Распон влажности: 20% до 90%.
    • Тачност од ±1°Ц за мерење температуре и ±1% за очитавања релативне влажности.

Пошто смо покрили основни увод у ДХТ11 сензор, сада пређимо на пиноут ДХТ11.

2: Пиноут сензора ДХТ11

Већину времена ДХТ11 сензор долази у две различите конфигурације пинова. ДХТ11 сензор који долази у конфигурацији са 4 пина има 3 пина који не раде или су означени као да нема везе.

3-пински ДХТ11 сензорски модул долази у три пина који укључују напајање, ГНД и пин за податке.

2.1: 3-пин ДХТ11 сензор

На слици су приказане 3 пинске конфигурације ДХТ11 сензора.


Ове три игле су:

1. Подаци Излазна температура и влажност у серијским подацима
2. Вцц Улазна снага 3.5В до 5.5В
3. ГНД ГНД кола

2.2: 4-пин ДХТ11 сензор

Следећа слика илуструје 4-пински ДХТ11 сензорски модул:


Ове 4 игле укључују:

1. Вцц Улазна снага 3.5В до 5.5В
2. Подаци Излазна температура и влажност у серијским подацима
3. НЦ Нема везе или се не користи
Четири. ГНД ГНД кола

3: ОЛЕД екрански модул са ЕСП32

ОЛЕД екран углавном долази са два различита комуникацијска протокола. Два протокола су И2Ц и СПИ. Серијски периферни интерфејс (СПИ) је генерално бржи од И2Ц, али смо преферирали И2Ц у односу на СПИ протокол јер је захтевао мањи број пинова.

Следећа слика илуструје дијаграм повезивања ЕСП32 са ОЛЕД екраном од 128×64 пиксела (0,96'').


Испод је табела веза:


Када се ЕСП32 повеже са ОЛЕД екраном, следећи корак на листи је инсталирање свих потребних библиотека за ЕСП32 програмирање користећи Ардуино ИДЕ.

4: Инсталирање потребних библиотека

Овде ћемо повезати два различита сензора са ЕСП32 тако да оба захтевају одвојене библиотеке за рад. Сада ћемо инсталирати библиотеке за ДХТ11 и ОЛЕД екран.

4.1: Ардуино библиотека за ДХТ сензор

Отворите Ардуино ИДЕ, идите на: Скица>Укључи библиотеку>Управљај библиотекама

Алтернативно, такође можемо да отворимо менаџер библиотеке са бочног дугмета на Ардуино ИДЕ интерфејсу.

Потражите ДХТ библиотеку и инсталирајте најновију ажурирану верзију. ДХТ библиотека ће вам помоћи да прочитате податке сензора.


Након инсталирања ДХТ библиотеке, морамо да инсталирамо а обједињена библиотека сензора би Адафруит.

4.2: Ардуино библиотека за ОЛЕД екран

Више библиотека је доступно у Ардуино ИДЕ за програмирање ЕСП32 са ОЛЕД екраном. Овде ћемо користити две библиотеке из Адафруита: ССД1306 и ГФКС библиотеку.

Отворите ИДЕ и кликните на Либрари Манагер и потражите ОЛЕД ССД1306 библиотеку. Инсталирајте библиотеку ССД1306 од Адафруита са траке за претрагу.

Алтернативно, можете ићи на: Скица>Укључи библиотеку>Управљај библиотекама


Следећа библиотека коју треба да инсталирамо је ГФКС библиотека Адафруит.


Инсталирали смо библиотеке за ОЛЕД екран и ДХТ11 сензор. Сада можемо лако да повежемо оба са ЕСП32.

5: Повезивање ЕСП32 са ДХТ11 сензором и ОЛЕД-ом

За повезивање ЕСП32 са ДХТ11 сензором потребан нам је дигитални пин за читање података сензора и за напајање ДХТ11 сензора можемо користити или 3В3 пин или Вин пин ЕСП32.

За ОЛЕД екран ће се користити И2Ц пинови СДА и СЦЛ. За напајање можемо користити Вин или 3В3 пин ЕСП32.

5.1: Шема

На датој слици можемо видети шематски дијаграм ЕСП32 са ДХТ11 и за излаз се користи ОЛЕД екран. Ова слика представља 3-пински сензорски модул који је повезан са ЕСП32. Не заборавите да повежете пулл уп отпорник од 10кΩ.


Слично, 4-пински ДХТ11 се такође може повезати, једина разлика овде је 3-пински који није од користи или се назива Нема везе. Пин за податке је на пину 2 сензора.

ОЛЕД екран је повезан помоћу И2Ц СДА и СЦЛ пинова на Д21 и Д22.

5.2: Код

Повежите ЕСП32 са рачунаром и отворите Ардуино ИДЕ. Отпремите дати код на ЕСП32 плочу.

#инцлуде <Вире.х>             /*Укључи библиотеку жичне комуникације*/
#инцлуде <Адафруит_ГФКС.х>
#инцлуде <Адафруит_ССД1306.х> /*ОЛЕД библиотека*/
#инцлуде <Адафруит_Сенсор.х>
#инцлуде <ДХТ.х>             /*Библиотека сензора температуре и влажности*/
#дефине СЦРЕЕН_ВИДТХ 128    /*Ширина ОЛЕД екрана 128 пиксела*/
#дефине СЦРЕЕН_ХЕИГХТ 64   /*ОЛЕД екран висина 64 пиксела*/
Адафруит_ССД1306 дисплеј ( СЦРЕЕН_ВИДТХ, СЦРЕЕН_ХЕИГХТ, & жица, - 1 ) ; /* ССД1306 И2Ц Иницијализација екрана */
#дефине ДХТПИН 4          /*Сигнални пин за ДХТ11 сензор*/
#дефине ДХТТИПЕ    ДХТ11
ДХТ дхт ( ДХТПИН, ДХТТИПЕ ) ;
празнина подешавања ( ) {
Сериал.бегин ( 115200 ) ;
дхт.бегин ( ) ;
ако ( ! приказ.почети ( ССД1306_СВИТЦХЦАПВЦЦ, 0к3Ц ) ) { /* И2Ц Адреса на која ОЛЕД је повезан */
Сериал.принтлн ( Ф ( „ССД1306 алокација није успела“ ) ) ;
за ( ;; ) ;
}
кашњење ( 2000 ) ;
дисплаи.цлеарДисплаи ( ) ;
дисплаи.сетТектЦолор ( БЕО ) ; /* Боја излазног текста бела */
}
празнина петља ( ) {
кашњење ( 5000 ) ;
флоат т = дхт.реадТемпературе ( ) ; /* читати температура */
флоат х = дхт.реадВлажност ( ) ; /* читати влажност */
ако ( је ( х ) || је ( т ) ) {
Сериал.принтлн ( „Очитавање са ДХТ сензора није успело!“ ) ;
}
дисплаи.цлеарДисплаи ( ) ; /* јасно ОЛЕД екран пре приказивања читања */
дисплаи.сетТектСизе ( 1 ) ; /* ОЛЕД фонт за текст величина */
дисплаи.сетЦурсор ( 0 , 0 ) ;
дисплаи.принт ( 'Температура: ' ) ;
дисплаи.сетТектСизе ( 2 ) ;
дисплаи.сетЦурсор ( 0 , 10 ) ;
дисплаи.принт ( т ) ; /* температура штампања ин Целзијус */
дисплаи.принт ( ' ' ) ;
дисплаи.сетТектСизе ( 1 ) ;
дисплаи.цп437 ( истина ) ;
приказати.писати ( 167 ) ;
дисплаи.сетТектСизе ( 2 ) ;
дисплаи.принт ( 'Ц' ) ;

дисплаи.сетТектСизе ( 1 ) ;
дисплаи.сетЦурсор ( 0 , 35 ) ;
дисплаи.принт ( 'Влажност:' ) ;
дисплаи.сетТектСизе ( 2 ) ;
дисплаи.сетЦурсор ( 0 , Четири, пет ) ;
дисплаи.принт ( х ) ; /* штампа проценат влажности */
дисплаи.принт ( '%' ) ;
дисплеј.дисплеј ( ) ;
}


Код је започео укључивањем потребних библиотека за ОЛЕД и ДХТ11 сензоре. Након тога се дефинишу димензије ОЛЕД екрана. Затим се дефинише тип ДХТ сензора у случају да користите ДХТ22, замените га у складу са тим.

У делу подешавања се иницијализује ДХТ сензор и ОЛЕД екран. ОЛЕД екран је повезан на И2Ц адресу 0к3Ц. У случају да неко жели да провери И2Ц адресу, отпремите код дат у овоме чланак .

Вредности температуре и влажности се чувају унутар варијабле флоат т и х редом. Након тога обе ове вредности се штампају на ОЛЕД дисплеју.

5.3: Излаз

У излазу можемо видети измерену температуру и влажност у реалном времену приказане на ОЛЕД екрану.




Успешно смо завршили повезивање ЕСП32 са ДХТ11 сензором и ОЛЕД екраном.

Закључак

ОЛЕД екрани са ЕСП32 могу приказати више података који се читају помоћу екстерних сензора. Овде овај чланак покрива све кораке за повезивање ЕСП32 са ДХТ11 сензором за мерење температуре и влажности у просторији. Након тога сви очитани подаци се приказују на И2Ц ОЛЕД модулу дисплеја.