Мазмуну:

Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси: 8 кадам
Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси: 8 кадам

Video: Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси: 8 кадам

Video: Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси: 8 кадам
Video: Удаленно контролировать энергопотребление дома | ПЗЭМ-004Т | Облако Интернета вещей RemoteXY 2024, Декабрь
Anonim
Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси
Arduino жана ESP8266 менен DS18B20 температура сенсорунун интерфейси

Эй, эмне болду, жигиттер! Акарш бул жерде CETechтен.

Бүгүн биз арсеналга DS18B20 Температура Сенсору деп аталган жаңы сенсорду кошмокчубуз. Бул DHT11ге окшош температура сенсору, бирок башка колдонмолор топтому бар. Биз аны температура сенсорлорунун ар кандай түрлөрү менен салыштырып көрөбүз жана бул сенсорлордун техникалык мүнөздөмөлөрүн карап чыгабыз.

Бул окуу куралынын аягында биз температураны көрсөтүү үчүн DS18B20 менен Arduino жана ESP8266 менен байланышабыз. Ардуино учурда, температура Serial Monitorдо көрсөтүлөт жана ESP8266 үчүн биз температураны веб -серверде көрсөтөбүз.

Келгиле, азыр тамашадан баштайлы.

1 -кадам: Проектиңиз үчүн ПХБларды алыңыз

Проектиңиз үчүн ПХБларды алыңыз
Проектиңиз үчүн ПХБларды алыңыз

Сиз онлайн өндүрүлгөн проектиңиз үчүн ПХБ алуу үчүн OurPCB текшеришиңиз керек.

Алар Arrow, Avnet, Future Electronics ж.б сыяктуу аккредитацияланган жеткирүүчүлөрдөн алынган ишенимдүү компоненттерди колдонушат жана акырында колдонуучунун кирешелүүлүгүн максималдаштыруу үчүн бааларды сунушташат. Көп катмарлуу жана катаал-ийкемдүү технологиялар боюнча адистешкен, алардын артыкчылыгы жогорку сапат стандарттарын сактоо.

OurPCB чакан жана орто көлөмдөгү буйрутмаларга басым жасайт жана 1-100 чарчы метрге чейин абдан атаандаш бааны камсыз кылат. Сиз болгону файлдарыңызды жеткиликтүү форматтардын бирине жүктөшүңүз керек (Gerber,.pcb,.pcbdoc, же.cam) жана ПХБнын прототиптери босогого чейин жеткирилет.

Сиз ошондой эле алардын өнөктөшү WellPCBден жакшы сунуштарды текшере аласыз.

2 -кадам: Температура сенсорлорунун ар кандай түрлөрүн салыштыруу

Температура сенсорлорунун ар кандай түрлөрүнүн ортосундагы салыштыруу
Температура сенсорлорунун ар кандай түрлөрүнүн ортосундагы салыштыруу
Температура сенсорлорунун ар кандай түрлөрүнүн ортосундагы салыштыруу
Температура сенсорлорунун ар кандай түрлөрүнүн ортосундагы салыштыруу

Жогоруда көрсөтүлгөн салыштыруу DS18B20, DHT11 жана NTC Thermistor үч сенсоруна ээ, бирок бул жерде биз салыштырууну санарип сенсорлор менен гана чектейбиз. Бул NTC термистору санарип сенсорлор сыяктуу маанилүү эмес дегенди билдирбейт. Санарип сенсорлор кээ бир микропроцессорлор менен байланышкан NTC Thermistorдон турат, бул акыры санариптик чыгууну берет.

Салыштыруунун негизги пункттары:-

1. DS18B20 суу өткөрбөйт жана бышык, бирок DHT11 андай эмес, ошондуктан чыныгы турмуштук сценарийлерде жана контактка негизделген сезүү талап кылынган тиркемелерде DS18B20 көбүнчө DHT11 ачык асмандагы чөйрөдө колдонулат.

2. DS18B20 9-12 бит маалыматтарын түкүрөт, ал эми DHT11 8 бит маалымат берет.

3. DS18B20 DHT11 температураны жана нымдуулукту алуу үчүн колдонулушу мүмкүн болгондо гана температураны берет.

4. DS18B20 DHT11ге салыштырмалуу кененирээк температура диапазонун камтыйт жана DHTге салыштырмалуу жакшыраак тактыкка ээ (DHT11 үчүн + 2 градуска караганда + 0,5 градус).

5. Бул баа берүү жөнүндө сөз болгондо, бул сенсорлордун ортосунда бир аз айырма бар, анткени DS18B20нун эки башка варианты, алар пакеттелген зым түрүндө жана TO92 пакетинде баасы 1 доллардын тегерегинде жана $ 0,4, DHT11дин баасы 0,6 доллардын тегерегинде.

Ошентип, биз DS18B20 DHT11ден бир аз жакшыраак деп айта алабыз, бирок сенсор талап кылынган колдонмонун негизинде гана жакшы тандоо жасалышы мүмкүн.

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

3 -кадам: DS18B20 Arduino менен туташуу

DS18B20 Arduino менен туташууда
DS18B20 Arduino менен туташууда
DS18B20 Arduino менен туташууда
DS18B20 Arduino менен туташууда

Бул жерде биз температураны алуу жана аны сериялык монитордо көрсөтүү үчүн DS18B20 температура сенсорун Arduino менен туташтырабыз.

Бул кадам үчүн бизге керек- Arduino UNO, DS18B20 Температура сенсору (Топтомдолгон түрү же TO92 пакети бар) жана 4.7kohm каршылыгы

DS18B20 сенсорунда 3 зым бар, алар кара, кызыл жана сары. Кара - GND үчүн, Кызыл - Vcc үчүн, ал эми сары - сигналдын пини

1. GND пин же сенсордун кара зымын GNDге туташтырыңыз.

2. VC пин же сенсордун Кызыл зымын 5V камсыздоого туташтырыңыз.

3. 4.7kohm каршылыгы аркылуу сигналдын пинин же сары зымды 5Vга туташтырыңыз, ошондой эле бул сигналдын пинин Ардуинонун Digital Pin no-12 ге туташтырыңыз.

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

4 -кадам: Температураны көрсөтүү үчүн Arduino коддоо

Температураны көрсөтүү үчүн Arduino коддоо
Температураны көрсөтүү үчүн Arduino коддоо
Температураны көрсөтүү үчүн Arduino коддоо
Температураны көрсөтүү үчүн Arduino коддоо
Температураны көрсөтүү үчүн Arduino коддоо
Температураны көрсөтүү үчүн Arduino коддоо

Бул кадамда биз Arduino тактабызды кодировкалайбыз жана температураны сериялык монитордо көрсөтөбүз.

1. Arduino UNO тактасын PCке туташтырыңыз.

2. Бул жерден бул долбоордун Github репозиторийине өтүңүз.

3. GitHub репозиторийинде сиз "Негизги код" деп аталган файлды көрөсүз, ал файлдын кодун көчүрүп, Arduino IDEге чаптаңыз.

4. Tools тактасынын астындагы туура тактаны жана COM портун тандап, жүктөө баскычын басыңыз.

5. Код жүктөлгөндөн кийин, Serial Monitorду ачыңыз жана туура жүгүртүү ылдамдыгын тандаңыз (биздин учурда 9600), анда DS18B20 тарабынан сезилген температураны көрө аласыз.

Температуранын көтөрүлүшүн жана төмөндөшүн температураны көтөрүү үчүн же темир бөлүгүн сүртүү же күйгүзгүчтү таңгакталган металл сенсорунун металл бөлүгүнүн жанына коюу сыяктуу ылайыктуу нерселерди жасоо менен көрө аласыз.

5 -кадам: DS18B20ду ESP8266 менен туташтыруу

DS18B20ду ESP8266 менен туташтыруу
DS18B20ду ESP8266 менен туташтыруу
DS18B20 менен ESP8266 туташтыруу
DS18B20 менен ESP8266 туташтыруу

Бул кадамда биз температураны алуу үчүн DS18B20ду ESP8266 модулу менен байланыштырабыз.

Бул кадам үчүн бизге = ESP8266 модулу, 4.7 кох резистор жана DS18B20 температура сенсору керек (Топтомдолгон түрү же TO92 пакети бар).

Бул кадамдын туташуулары Arduino менен жасалган байланыштарга окшош.

1. GND пин же сенсордун кара зымын GNDге туташтырыңыз.

2. Vcc пинин же сенсордун Кызыл зымын 3.3V камсыздоого туташтырыңыз.

3. 4.7kohm каршылыгы аркылуу сигнал пин же сары зымды 3.3Vга туташтырыңыз жана бул сигналдын пинин модулдун D5 пини GPIO12ге туташтырыңыз.

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

6 -кадам: Arduino IDE орнотуу

Arduino IDE орнотуу
Arduino IDE орнотуу

ESP8266ны Arduino IDE аркылуу коддоо үчүн, биз ESP8266 тактасын Arduino IDEнин кошумча такталарына орнотушубуз керек, анткени алар алдын ала орнотулган эмес. Бул үчүн биз төмөндө айтылган кадамдарды аткарышыбыз керек:-

1. Файл> Тандоолорго өтүңүз

2. Кошумча такталар менеджеринин URL даректерине https://arduino.esp8266.com/stable/package_esp8266com_index.json кошуңуз.

3. Куралдар> Такта> Такта менеджери бөлүмүнө өтүңүз

4. esp8266 издеп, анан тактаны орнотуңуз.

5. IDEди кайра иштетиңиз.

7 -кадам: Температураны көрсөтүү үчүн ESP8266 коддоо

Температураны көрсөтүү үчүн ESP8266 коддоо
Температураны көрсөтүү үчүн ESP8266 коддоо
Температураны көрсөтүү үчүн ESP8266 коддоо
Температураны көрсөтүү үчүн ESP8266 коддоо

Бул кадамда биз температураны окуу үчүн ESP8266 кодун киргизебиз жана андан кийин ал температураны сериялык монитордо көрсөтүүнүн ордуна, аны веб -серверде көрсөтөбүз.

1. Бул жерден бул долбоордун Github репозиторийине өтүңүз.

2. Репозиторийде сиз "ESP8266 Temperature Web Server" деген аталыштагы кодду көрөсүз, жөн гана ошол кодду көчүрүп, Arduino IDEге чапташыңыз керек.

3. Кодду чаптагандан кийин SSID менен Сырсөздү Wifi тармагыңызга алмаштырыңыз.

4. Куралдар өтмөгүнүн астынан туура тактаны жана COM портун тандап, андан кийин жүктөө баскычын басыңыз.

5. Код жүктөлгөндө IDEдин сериялык мониторун ачыңыз, андан кийин ESP8266 модулунун жаңыртуу баскычын бассаңыз, анда белгисиз тил жазылган жана анын астында IP дареги болот. Сиз бул IP дарегин көчүрүшүңүз керек, анткени ал температураны көрсөтө турган веб -сервердин дареги.

8 -кадам: жана ал бүттү

Жана Бүттү
Жана Бүттү

Качан код жүктөлүп, IP дареги алынат. Ошол IP дарегин колдонуу менен веб -серверди ачыңыз.

Веб -серверде температура көрсөткүчтөрү Цельсий градусунда жана Фаренгейт градусунда көрсөтүлөт.

Веб -серверден тышкары, температуранын көрсөткүчтөрүн сериялык монитордон да байкоого болот.

Сенсордун жанындагы температура өзгөргөн сайын веб -сервердеги көрсөткүчтөр да өзгөрүп турганын байкайсыз.

Бул демонстрация үчүн.

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