Мазмуну:

ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен: 5 кадам
ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен: 5 кадам

Video: ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен: 5 кадам

Video: ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен: 5 кадам
Video: Подключение GY-BME-280 3.3v к ESP8266 NodeMcu V3, сравнение с классическим барометром 2024, Ноябрь
Anonim
ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен
ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен
ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен
ESP8266 NodeMCU BME280 өлчөгүчтөрү жана диаграммасы менен

BME280 температурасы, нымдуулугу жана басым сенсору менен ESP8266 NodeMCU өнүктүрүү тактасы үчүн Fancy Gauges жана Chart. Thingspeak бардык маалыматыңызды булутта сактап калат жана каалаган убакта, каалаган убакта (үмүт менен) келе берет. Ченегичтер жана диаграмма нерселерде сакталган маалыматтардын эсебинен толтурулат жана ар 5 мүнөт сайын автоматтык түрдө жаңыртылып турат.

Керектүү буюмдар:

ESP8266 NodeMCU өнүктүрүү тактасы (Banggood.com Гонконгдон $ 3.79)

Bosch BME280 (Banggood.com Гонконгдон $ 5.63)

Breadboard Jumpers ($ 3.09 Banggood.com Гонконгдон)

Breadboard ($ 2.28 Banggood.com Гонконгдон)

Электр энергиясы менен камсыздоо, эгерде микро USB телефонуңуздун заряддагыч түзүлүшү бар болсо, бекер

Микро USB кабели, эгер сизде буга чейин бар болсо, бекер

Arduino IDE, бекер түшүрүү

. Ino &. HTML код файлдарын бул жерден алыңыз

1 -кадам: Thingspeak каналдарыңызды түзүңүз жана орнотуңуз

Thingspeak каналдарыңызды түзүңүз жана орнотуңуз
Thingspeak каналдарыңызды түзүңүз жана орнотуңуз

1. Акысыз Thingspeak эсебин жана https://thingspeak.com дарегинен жаңы канал түзүңүз, "ESP8266-NodeMCU-12E-BME280" каналына чалыңыз.

2. Жаңы каналдын температурасы нымдуулуктун басымы деген 3 талаасы болушу керек (Биринчи тамга баш тамгасына көңүл буруңуз).

3. Жаңы "каналдын идентификатору" XXXXXXти "Каналдын Орнотууларына" көңүл буруңуз.

4. "API ачкычтары" шилтемесин чыкылдатыңыз жана "API жазуу" жана "API ачкычтарын окуу" XXXXXXXXXXXXXXX эске алыңыз. Ошондой эле, бул бөлүшүү астында жалпыга ачык канал кылыңыз.

5. Экинчи Thingspeak каналын түзүңүз, ал "Бүгүн" (түн ортосунан бери) Жогорку Төмөн маалыматтарды өткөрөт. Аны "BME280 Daily High Low Data" деп атаңыз

6. Бул жаңы каналдын Tmax Tmin Hmax Hmin Pmax Pmin аттуу 6 талаасы болушу керек.

7. Жогорудагы кадамдардагыдай эле "BME280 Daily High Low Data" "каналдын идентификаторуна", "Окууга" жана "API ачкычтарын жазууга" көңүл буруңуз.

2 -кадам: Arduino IDE, китепканаларды орнотуңуз жана BME280ди конфигурациялаңыз

Arduino IDE, китепканаларды орнотуңуз жана BME280ди конфигурациялаңыз
Arduino IDE, китепканаларды орнотуңуз жана BME280ди конфигурациялаңыз

8. Arduino IDE & ESP8266 өзөгүн орнотуу боюнча нускамаларды аткарыңыз

9. Бизге керек болгон төрт китепкананы орнотуу үчүн Arduino IDEди күйгүзүңүз.

10. Сизге "Adafruit Unified Sensor Driver" китепканасы керек болот, аны Arduino IDEдеги "Китепкана менеджерине" орнотуңуз. Меню эскизине китепкана кирет Китепканаларды башкаруу Түр = "Сунушталган" Тема = "Сенсорлор" боюнча издөө жүргүзөт, андан кийин издөө кутусуна Adafruit Unified Sensor Driver деген сөздөрдү коюңуз. Сиз каалаган "Adafruit тарабынан Adafruit унификацияланган сенсор драйвери" дейт

11. Мындан тышкары, сиз "Adafruit BME280 китепканасынан" аны Arduino IDEдеги "Китепкана менеджерине" орнотууну талап кыласыз. Меню эскизине китепкана кирет Китепканаларды башкаруу Түр = "Сунушталган" Тема = "Сенсорлор" боюнча издөө жүргүзөт, андан кийин издөө кутусуна Adafruit BME280 Китепкана деген сөздөрдү коюңуз. Сиз каалаган "Adafruit BME280 китепканасы Adafruit" дейт

12. Сизге керек болгон дагы бир китепкана - Wire.h, аны Arduino IDEдеги "Китепкана менеджерине" орнотуңуз. Меню, Эскиз Китепкананы камтыйт Китепканаларды башкарыңыз Түрү боюнча издөө жүргүзүңүз = "Салым" Темасы = "Сигнал киргизүү/чыгаруу", андан кийин Wire сөзүн издөө кутусуна салыңыз. Каалаганыңыз "Ардуино тарабынан орнотулган зым" дейт, кыязы, тандоонун түбүндө.

13. Дагы бир китепкана, ESP8266WiFi, аны Arduino IDEдеги "Китепкана менеджерине" орнотуңуз. Меню, Эскиз Китепкананы камтыйт Китепканаларды башкаруу Түрү боюнча издөө жүргүзүңүз = "Салым" Темасы = "Байланыш", андан кийин издөө кутусуна ESP8266wifi сөзүн коюңуз. Сиз каалаган "ESP8266wifi орнотулган Иван Грохотков" дейт

14. BME280 үчүн I2C дареги Adafruit_BME280_Library папкасынын ичинде Adafruit_BME280.h файлында (#define BME280_ADDRESS 0x77 линиясын издеңиз) катуу коддолгон. Adafruitтин BME сенсор модулдары 0x77 I2C дарегин колдонууга зымдуу. Бирок BME280 бир аз башкача I2C дарегине ээ болушу мүмкүн (0x76), эгер анын тышкы SDO пини негизделген болсо. Эгерде сиз сенсор модулдарын үчүнчү тараптан колдонуп жатсаңыз, анда анын дареги Adafruit китепканасындагы демейки мааниге дал келбеши мүмкүн. Мисалы, eBay же Aliexpressте бар BME280 сенсор модулдарынын көпчүлүгүнүн I2C дареги 0x76 болушу керек. Эгерде сенсор Adafruit_BME280.h файлында орнотулган демейки даректи колдонуп жооп ала албаса, анда аны 0x76га өзгөртүү керек болушу мүмкүн.

BME280 & ESP8266 туташуу пункттары. ESP8266 3.3V үчүн BME280 Vin, ESP8266 GND үчүн BME280 GND, ESP8266 D4 үчүн BME280 SCL, ESP8266 D3 үчүн BME280 SDA. 15. Берилген ESP8266-NodeMCU-12E-BME280.html файлын текст редакторунда ачып, "ESP8266-NodeMCU-12E-BME280" (Сиз түзгөн биринчи канал) "Channel ID" жана "API ачкычын окуу" үчүн key1 & chan1 өзгөрмөлөрү. Ошондой эле key2 жана chan2 үчүн "BME280 Daily High Low Data" (Сиз түзгөн экинчи канал) үчүн "API ачкычын" жана "Каналдын IDсин" киргизиңиз. Мындан тышкары, UTCден убакыт алкагыңыздын ордун киргизиңиз. Мен үчүн -5те. Бардык баалуулуктар "XXXXX" берилген жалгыз тырмакчалардын ичинде болушу керек. Сактоо жана текст редакторунан чыгуу.

Компьютериңизге USB кабели менен ESP8266 сайыңыз, андан кийин USB порту болуу үчүн сериялык портуңузду тандаңыз.

Linux колдонуучулары /dev /ttyUSB0 менен 'sudo chown your username /dev /ttyUSB0' же байланышта болуу үчүн USB портунун менчик укугун өзгөртүүгө туура келиши мүмкүн.

3 -кадам: ESP8266ны Arduino IDE менен программалаңыз

ESP8266 программасын Arduino IDE менен
ESP8266 программасын Arduino IDE менен

16. Кийинки биз ESP8266 программасын түзөбүз. ESP8266 менен компьютериңиздин ортосуна USB кабелин туташтырыңыз.

Берилген New_BME_Sensor.ino файлын Arduino IDEге жүктөңүз. Сиздин BME280 сенсоруңуз ESP8266дагы D3 (SDA) & D4 (SCL) менен байланыштырылышы керек. Эскиздин туура бөлүмүнө "ESP8266-NodeMCU-12E-BME280" (Сиз жараткан биринчи канал) "Жазуу ачкычын" "Зымсыз SSID" жана "Сырсөздү" киргизиңиз. Андан кийин менюдагы "Эскиз" жана "Жүктөө" баскычын чыкылдатыңыз. Эскизди жүктөгөндөн кийин (Прогресс 100%га жетет) ESP8266га сериялык мониторду ача аласыз (сөлөкөттүн оң жагы чоңойтуучу айнекке окшош) жана маалыматыңыз 5 мүнөттөн кийин, ар 5 мүнөттө басып чыгарылганын көрө аласыз. Берилиштер 5 мүнөт интервалда сүйлөөгө жөнөтүлөт, андыктан диаграммадагы маанилүү маалыматка ээ болгонго чейин бир аз убакыт өтөт, бирок 5 мүнөттөн кийин өлчөөчү көрсөткүчтөргө ээ болушуңуз керек.

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

Биринчи өлчөө жараксыз нан болуп калышы мүмкүн.

Кийинки окууга чейин бир нече мүнөт күтө туруңуз жана окуу жакшы экенин текшериңиз.

4 -кадам: Маалыматты оңдоо үчүн Thingspeakке кайтыңыз

Маалыматты оңдоо үчүн Thingspeakке кайтыңыз
Маалыматты оңдоо үчүн Thingspeakке кайтыңыз

17. Азыр, маалымат жай сүйлөп жатканда, жүктөлүп жаткан нерселерден кошумча маалыматтарды алуу үчүн бир аз оңдоп койгонго мүмкүнчүлүк берет. Thingspeak "BME280 Daily High Low Data" каналынын баракчасына кайтып келиңиз (сиз жараткан экинчи канал) жашыл "MATLAB анализи" баскычын басыңыз. Калыпты тандаңыз "Ыңгайлаштырылган (Башталгыч коду жок)"

18. MATLAB анализин "Түн ортосунан бери минималдуу максимумду эсептөө" деп атагыла.

19. MATLAB Analysis.txt кодун берилген мейкиндикке көчүрүңүз. "Каналдын идентификаторун" "ESP8266-NodeMCU-12E-BME280" (сиз түзгөн биринчи канал) "readChannelID" ге киргизиңиз. "BME280 Daily High Low Data" киргизиңиз (Сиз жараткан экинчи канал) "Channel ID" жана "Write Key" деп жазыңыз WriteNewChannelID & writeAPIKey урматтоо менен. Билем, бул түшүнүксүз угулат (кайра окуңуз). Сактоо жана иштетүү дегенди басыңыз. Эгер сиз муну туура кылсаңыз жана окуу каналы жалпыга ачык болсо, сиз эч кандай ката көрбөйсүз жана ал баалуулуктарды ийгиликтүү басып чыгарат. Эскертүү, азырынча ал каналга эч кандай маалымат жүктөлбөсө, ката кетиши мүмкүн. Катага карабай улантыңыз. Кааласаңыз, кайталап көрсөңүз болот Сактоо жана иштетүү, бул маалымат жүктөлгөндөн кийин иштээрине ынануу үчүн.

20. Андан кийин, биз бул кодду 5 мүнөт сайын өчүрүү үчүн "Убакытты көзөмөлдөө" түзүшүбүз керек жана биздин маалыматтар "BME280 Daily High Low Data" каналына жазылат (сиз жараткан экинчи канал). "BME280 Daily High Low Data" (Сиз жараткан экинчи канал) башкы барагынан жогору жагындагы Колдонмолорду тандаңыз. Аракеттердин астынан "TimeControl", андан кийин "New TimeControl" жашыл баскычын тандаңыз. Аны "Жогорку төмөн темптерди ESP8266 жөнөтүү" деп атаңыз. Керек болсо, убакыт алкагыңызды тандап, Жыштыктын астынан "Кайталануучу" дегенди тандаңыз. Кайталануу астындагы Мүнөттү тандаңыз. Ар 5 мүнөт сайын иштетүүгө коюңуз. Аракет MATLAB анализи болушу керек жана "Аткаруу коду" "Түн ортосунан бери минималдуу максимумду эсептөө". TimeControl үнөмдөңүз.

5 -кадам: Берилген HTML файлын түзөтүңүз

Берилген HTML файлын түзөтүңүз
Берилген HTML файлын түзөтүңүз

HTML файлдарын түзөтүңүз жана "******** Мени 8дин 1ин алмаштыр *********" деген комментарийлерди издеңиз.

Эскертүүлөр:

Текст талааларынын айрымдары жана жумалык диаграмма 24 саат жана жума бөлүмү жана диаграммасы үчүн толук күн жана толук жума болгуча туура толтурулбайт. Сизде бир топ маалымат болгондон кийин, чычкан дөңгөлөгү менен диаграммаларды чоңойтсоңуз болот (Баштапкы абалга келтирүү үчүн оң баскычты басыңыз). Сиз дагы башка каналдын башка сенсорунан төртүнчү өлчөгүчтү (скриншотто көрүнүп тургандай) алсаңыз болот, бирок мен тиешелүү бөлүктөрдү бөлүп койдум. Эгерде сиз өзүңүздү акылдуу сезсеңиз, аны байлаңыз. Билүү үчүн кээ бир убакыт маселелери да бар. Сизде эң акыркы маалыматтар жок болушу мүмкүн, бирок ал ар дайым 5 мүнөттөн аз болушу керек. Бул убакыт көзөмөлү иштен чыкканда, маалыматтар ESP8266дан жөнөтүлгөндө жана веб -баракчаны жүктөгөндө / жаңыртканыңызда болот.

Берилген ESP8266-NodeMCU-12E-BME280.html файлын веб-браузериңизде ачыңыз, анда сиз өлчөгүчтөрдү жана диаграмманы көрүшүңүз керек.

. Ino &. HTML код файлдарын бул жерден алыңыз

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