DHT11 температурасы жана нымдуулук сенсорун Arduino менен кантип байланыштырса болот

Мазмуну:

DHT11 температурасы жана нымдуулук сенсорун Arduino менен кантип байланыштырса болот
DHT11 температурасы жана нымдуулук сенсорун Arduino менен кантип байланыштырса болот

Video: DHT11 температурасы жана нымдуулук сенсорун Arduino менен кантип байланыштырса болот

Video: DHT11 температурасы жана нымдуулук сенсорун Arduino менен кантип байланыштырса болот
Video: Arduino Uno и Датчик температуры и влажности DHT11 (DHT22) 2024, Май
Anonim

DHT17 температурасы жана нымдуулук сенсору температуранын жана салыштырмалуу нымдуулуктун кеңири диапазонунда колдонула турган популярдуу жана арзан сенсор. Келгиле, аны Arduino менен кантип байланыштырууга жана андан алынган маалыматтарды кантип окууга боло тургандыгын карап көрөлү.

DHT11 температурасы жана нымдуулук сенсору
DHT11 температурасы жана нымдуулук сенсору

Зарыл

  • - Arduino;
  • - DHT17 температурасы жана нымдуулук сенсору.

Нускамалар

1 кадам

Ошентип, DHT11 сенсору төмөнкүдөй мүнөздөмөлөргө ээ:

- өлчөнгөн салыштырмалуу нымдуулуктун диапазону - 5% га чейинки ката менен 20..90%, - өлчөнгөн температуранын диапазону - 2 градуска чейинки ката менен 0..50 градус Цельсий;

- нымдуулуктун өзгөрүшүнө жооп берүү убактысы - 15 секундага чейин, температура - 30 секундага чейин;

- добуш берүүнүн минималдуу мөөнөтү 1 секунд.

Көрүнүп тургандай, DHT11 сенсору анчалык так эмес, температуранын диапазону терс маанилерди камтыбайт, бул биздин климатта суук мезгилде сырткы өлчөө үчүн дээрлик ылайыктуу эмес. Бирок, анын арзан баасы, кичинекей көлөмү жана колдонууга ыңгайлуулугу бул кемчиликтерди жарым-жартылай толтурат.

Сүрөттө сенсордун көрүнүшү жана анын өлчөмдөрү миллиметр менен көрсөтүлгөн.

DHT11 сенсорунун көрүнүшү жана өлчөмдөрү
DHT11 сенсорунун көрүнүшү жана өлчөмдөрү

2-кадам

DHT11 температурасы жана нымдуулук сенсорунун микроконтроллерге, тактап айтканда, Arduinoго туташуу схемасын карап көрөлү. Сүрөттө:

- MCU - микроконтроллер (мисалы, Arduino же ушул сыяктуу) же бир тактайлуу компьютер (Raspberry Pi же ушул сыяктуу);

- DHT11 - температура жана нымдуулук сенсору;

- ДАТА - маалымат шинасы; эгер сенсордон микроконтроллерге чейин туташтыруучу кабелдин узундугу 20 метрден ашпаса, анда бул автобусту 5, 1 кОм резистор менен электр кубатына тартуу сунушталат; 20 метрден ашык болсо, анда дагы бир ылайыктуу маани (кичирээк).

- VDD - сенсордун кубаттуулугу; ~ 3,0 ден ~ 5,5 вольтка чейин туруктуу токтун чыңалуусу; эгерде электр кубаты ~ 3.3 V колдонулса, анда 20 смден ашпаган электр зымын колдонуу туура болот.

Датчиктин бири - үчүнчүсү - эч нерсеге байланыштуу эмес.

DHT11 сенсору көп учурда керектүү түтүкчөлөрү менен тартылып алынган резистор жана чыпка конденсатору менен толук жыйынды катары сатылат.

DHT11 сенсорун микроконтроллерге туташтыруу схемасы
DHT11 сенсорун микроконтроллерге туташтыруу схемасы

3-кадам

Келгиле, каралып бүткөн схеманы түзөлү. Логикалык анализаторду контурга туташтырам, ошондо сенсор менен байланыштын убакыт схемасын изилдей алам.

DHT11 сенсору жана Arduino
DHT11 сенсору жана Arduino

4-кадам

Келгиле, жөнөкөй жол менен: DHT11 сенсорунун китепканасын жүктөп алыңыз ("Булактар" бөлүмүндөгү шилтеме), аны стандарттуу түрдө орнотуңуз (Arduino өнүгүү чөйрөсүнүн / libraries / каталогуна ороп).

Келгиле, ушундай жөнөкөй эскизди жазалы. Ардуиного жүктөлсүн. Бул эскиз DHT11 сенсорунан компьютердин сериялык портуна 2 секунд сайын окулган RH жана Temperature билдирүүлөрүн берет.

DHT11 температура-нымдуулук сенсору менен иштөө үчүн эскиз
DHT11 температура-нымдуулук сенсору менен иштөө үчүн эскиз

5-кадам

Эми, логикалык анализатордон алынган убакыт диаграммасын колдонуп, маалымат алмашуу кандайча жүргүзүлүп жаткандыгын аныктайлы.

DHT11 температурасы жана нымдуулук сенсору микроконтроллер менен байланышуу үчүн бир зымдуу сериялык интерфейсти колдонот. Бир маалымат алмашуу болжол менен 40 мс убакытты камтыйт: микроконтроллерден 1 сурам бит, сенсордун жооп берүүсүнөн 1 бит жана сенсордон 40 маалымат бит. Маалыматтарга төмөнкүлөр кирет: 16 бит нымдуулук жөнүндө маалымат, 26 бит температура жөнүндө маалымат жана 8 текшерүү бит.

DHU11 сенсору менен Arduino байланышынын убакыт диаграммасын кененирээк карап чыгалы.

Сүрөттөн импульстун эки түрү бар экендигин көрүүгө болот: кыска жана узун. Бул алмашуу протоколундагы кыска импульстар нөлдөрдү, узун импульстар - бирлерин билдирет.

Ошентип, алгачкы эки импульс - Arduino компаниясынын DHT11ге суранычы жана ошого жараша сенсордун жообу. Андан кийин 16 бит нымдуулук келет. Анын үстүнө, алар жогору жана төмөн, сол жагынан жогору деп байттарга бөлүнөт. Башкача айтканда, биздин сүрөттө нымдуулук жөнүндө маалыматтар төмөнкүчө:

0001000000000000 = 00000000 00010000 = 0х10 = 16% RH.

Температура маалыматтары окшош:

0001011100000000 = 00000000 00010111 = 0x17 = 23 градус Цельсий.

Текшерүү биттери - текшерүү суммасы алынган 4 байттын жыйындысы гана:

00000000 +

00010000 +

00000000 +

00010111 =

00100111 экилик же 16 + 23 = 39 ондук менен.

Сунушталууда: