Съдържание:

ESP32 Weathercloud Weather Station: 16 стъпки (със снимки)
ESP32 Weathercloud Weather Station: 16 стъпки (със снимки)

Видео: ESP32 Weathercloud Weather Station: 16 стъпки (със снимки)

Видео: ESP32 Weathercloud Weather Station: 16 стъпки (със снимки)
Видео: Using Arduino IoT Cloud with ESP32 | Is it better than New Blynk 🤔 2024, Ноември
Anonim
ESP32 Weathercloud Weather Station
ESP32 Weathercloud Weather Station

Миналата година публикувах най -голямата си Instructable досега, наречена Arduino Weathercloud Weather Station. Бих казал, че е много популярен. Той беше представен на началната страница на Instructables, блога на Arduino, музея на Wiznet, Instructables Instagram, Arduino Instagram, а също и във Weathercloud Twitter. Това дори беше един от топ 100 на инструкторите за 2018 г.! И това беше много голяма работа за малък производител като мен. Бях доволен да видя толкова много положителни реакции и внимателно прочетох всеки един коментар и съвет. От около 8 месеца работя върху тази нова, усъвършенствана станция. Поправих и подобрих различни неща. Опитах се да го направя по -малък, по -прост, по -интелигентен, по -хладен и да оставя приемливата цена от 150 € (165 $). Станцията е монтирана в роботизирана ферма близо до Сенец, Словакия. Ето актуалните данни.

Ще се опитам да обясня целия ми мисловен процес тук, така че ако просто искате да преминете директно към компилацията, просто преминете към стъпка 3.

Характеристика:

  • измерване на 12 метеорологични стойности
  • използване на 8 различни сензора
  • IoT - данните са публични в облака
  • Работа 5V 500mA
  • комуникация чрез Wi-Fi
  • напълно устойчив на атмосферни влияния
  • изглежда готино
  • това е DIY

Благодаря много на Lab Cafe makerspace за предоставяне на пространство и подкрепа при изграждането на тази станция. Отидете да ги проверите!

Снимка: ME (разбира се) + Viktor Demčák

АКТУАЛИЗИРАНЕ 18.07.2020: Здравейте на всички! Мина много време. Много от вас ми пишеха за множество проблеми с хардуера и софтуера. Новият хардуер ще бъде готов само след няколко седмици, но дотогава пускам нов фърмуер. Този софтуер ще ви помогне да премахнете някои от проблемите. Преминете към стъпка 12, за да научите повече. И най -важното - наслаждавайте се!

Стъпка 1: Дизайн

Дизайн
Дизайн

Проектирането на метеорологична станция е дълъг и обмислен процес. Имате толкова много възможности за избор. Това са основните неща, за които трябва да помислите, когато проектирате метеорологична станция (или поне аз го направих):

1) БЮДЖЕТ. Това е доста обяснително.

2) МЕСТОПОЛОЖЕНИЕ. Това е много важно, тъй като засяга инсталацията, както и комуникационната технология и необходимия източник на захранване. Отдалечените метеорологични станции се нуждаят от предаватели с дълъг обхват и от самоустойчив източник на енергия, като например слънчев панел.

3) ИЗМЕРЕНИ ПРОМЕНИМИ. Искате ли просто да измерите температура или влажност? След това можете да поставите сондата почти навсякъде. Но ако искате да измерите валежите, вятъра, слънчевата радиация, UV индекса или други неща, свързани със слънцето или валежите, тогава сензорите не могат да бъдат в сянка и не могат да бъдат блокирани нито отгоре, нито отстрани.

4) ТОЧНОСТ. Искате ли вашите измервания да бъдат точно калибрирани и сравними с националния метеорологичен институт или са достатъчно аматьорски стойности за вас?

Така че досега трябва да имате доста добър образ на това, което искате. Така че нека да стигнем до дъската за рисуване! Ето някои основни правила, за които се замислих:

1) ЗАЩИТЕТЕ ТЕМПЕРАТУРНИЯ СЕНЗОР. Абсолютно трябва да направите това. Топлината може да пътува по толкова много начини, които може да излъчва и провежда през структурата на самата станция. Затова се опитайте да покриете всички метални части и поставете температурния сензор в радиационен щит. Знам, радиационната ми станция не е перфектна, но помага.

2) ПОСТАВЕТЕ ДАТЧИКА НА ВЕТРА НАГОРЕ. Според международните стандарти сензорите за вятър трябва да бъдат поставени на 10 метра височина. Дори нямам пари да си купя 10м стълб, така че 2м тръба над покрива ми е достатъчна.

3) ЯСНА ОБЛАСТ ОКОЛО И НАД СТАНЦИЯТА. Ако искате да измервате слънчевата светлина, сензорът не може да бъде в сянка. Ако искате да измерите валежите, не можете да блокирате капките. Затова се уверете, че зоната около и над станцията е изчистена.

Нека продължим. Така че, за моята станция реших, че искам да измервам тези променливи: Температура на въздуха, температура на земята, относителна влажност, атмосферно налягане, топлинен индекс, точка на оросяване, охлаждане на вятъра, валежи, слънчева радиация, UV индекс, скорост на вятъра и посока на вятъра. Това са общо 8 сензора, от които има 3 малки модула, монтирани на печатни платки и 5 външни сонди. Ще ми трябват 2 отделни микроконтролера, единият за обработка само на измерванията на валежите, а вторият за всичко останало.

Реших да поставя всичко, което мога, на една печатна платка. Поставих печатната платка в кутия IP65 с прозрачен капак, така че слънчевата светлина да може да премине през сензорите за слънчева радиация и UV индекс. Всички останали сензори ще бъдат свързани към основната контролна кутия с кабел. Това е всичко за моя дизайн.

Стъпка 2: Weathercloud

Weathercloud
Weathercloud

"ESP32 Weathercloud Weather Station" Какво е Weatherclud? Weathercloud е голяма мрежа от метеорологични станции, отчитащи данни в реално време от цял свят. Той е безплатен и към него са свързани повече от 10 000 метеорологични станции. Първо, имах собствен HTML уебсайт, където всички данни бяха изпратени, но създаването на собствен уеб сайт и графика е трудно и е много по -лесно просто да изпратите всички данни до голяма облачна платформа, която има хубава графика и стабилни сървъри. Потърсих как да изпращам данни към weathercloud и открих, че можете да постигнете това лесно чрез просто GET повикване. Единственият проблем с Weathercloud е, че с безплатен акаунт той ви позволява да изпращате данни само на всеки десет минути, но това не би трябвало да е проблем за повечето приложения. Ще трябва да направите акаунт във Weathercloud, за да работи. След това ще трябва да създадете профил на станция на техния уебсайт. Когато създавате своя профил на метеорологичната станция във Weathercloud, получавате идентификатора на Weathercloud и КЛЮЧ на Weathercloud. Запазете ги, защото Arduino ще се нуждае от тях, за да знае къде да изпраща данни.

Стъпка 3: Списък на частите

Списък с части
Списък с части

Добре, така че за този проект ще ви трябват всички неща, които са добре изброени в спецификацията на Google Документи точно тук.

ПРОЦЕНТЕН РАЗХОД НА ПРОЕКТА: 150 €/165 $

Стъпка 4: Инструменти

Инструменти
Инструменти

Тези инструменти могат да ви бъдат полезни (въпреки че повечето от тях са абсолютно необходими):

Лазерен нож

Заварчик

Стоманен трион

Машина за сваляне на тел

Бормашина

Акумулаторна бормашина

Поялник

Клещи

Отвертки

Пистолет за лепило

Мултиметър

Свредло за дърво

Стъпка 5: Дизайн на контролната платка

Дизайн на таблото за управление
Дизайн на таблото за управление
Дизайн на таблото за управление
Дизайн на таблото за управление
Дизайн на таблото за управление
Дизайн на таблото за управление

Отидох с много централизирана архитектура. Това означава, че всичко, което може да бъде, е не само в една кутия, но и на една платка. Наскоро научих как да проектирам печатни платки, което е много ценно и полезно умение. Всички проекти са много по -спретнати и по -прецизни и дори елегантни по някакъв начин. Също така е много удобно: просто изпращате файловете си в Китай и те извършват цялата работа по окабеляването и ви изпращат цялата платка. След това просто запоявате компонентите на място и сте готови.

Печатната платка съдържа двата микроконтролера в тази станция: ESP32 (основният контролен блок) и Arduino NANO (процесор за валежи). Той също така съдържа някои от сензорите, които включват: BME280, BHT1750 и ML8511. След това има DS3231 RTC модул. Не на последно място, има някои резистори и винтови съединители.

Проектирах дъската си в Autodesk Eagle. Просто изтеглете включения Gerber файл, наречен "ESP32 weather station.zip" и го качете на JLC PCB. Или ако искате да го редактирате, можете да изтеглите файловете „ESP32 weather station schematic.sch“и „ESP32 weather station board.brd“файловете и да ги редактирате в Eagle. Силно съветвам първо да запишете класа по дизайн на печатни платки от Instructables.

Стъпка 6: Запояване

Запояване
Запояване
Запояване
Запояване
Запояване
Запояване
Запояване
Запояване

Добре всички, вероятно сте правили това и преди. Тази красива дъска, която проектирах, има отпечатани хубави отпечатъци от копринен печат. Когато имате това, запояването трябва да е парче торта, защото виждате къде точно отива. Има само THT компоненти със стандартно разстояние 0,1 . Така че, просто продължете и запоявайте дъската, защото сте умни и можете да го направите сами! Не трябва да ви отнема повече от половин час.

АКТУАЛИЗИРАНЕ 7/18/2020: RTC модулът вече не е необходим. Няма нужда да го монтирате на дъската. Можете да научите повече в стъпка 12.

Стъпка 7: Създаване на радиационен щит

Изработване на радиационен щит
Изработване на радиационен щит

Когато изграждах това, си казах: "Добре, вече сте го правили два пъти, няма шанс да го объркате сега." И аз не го направих.

Щитът от слънчева радиация е много често срещано нещо, използвано в метеорологичните станции за блокиране на директната слънчева радиация и следователно намаляване на грешките в измерената температура. Той също така действа като държач за температурния сензор. Радиационните щитове са много полезни, но обикновено са изработени от стомана и са скъпи, затова реших да направя свой собствен щит. Направих Instructable, който показва как се прави радиационен щит по този начин.

Стъпка 8: Контролна кутия

Контролна кутия
Контролна кутия
Контролна кутия
Контролна кутия
Контролна кутия
Контролна кутия

Основната част от тази станция очевидно е контролната кутия. Той съдържа първичен и вторичен микроконтролер, някои от сензорите, RTC и някои пасивни компоненти. Всичко това в удобен IP65 пакет. Кутията има прозрачен капак, така че слънчевата светлина може да премине през сензорите за UV и слънчева радиация.

Преди да можем да монтираме платката, трябва да подготвим кутията за кабелите. В кутията влизат пет кабела за захранване и данни. За да поддържаме водоустойчивите свойства на станцията, ще се нуждаем от водоустойчиви кабелни уплътнения. По -конкретно, един PG7 за захранващия кабел, втори PG7 за сензорите за вятър и валежи и третият PG11 за двата температурни сензора. Поставих по -голямата (PG11) жлеза в центъра на едната стена на кутията и двете по -малки (PG7) жлези в противоположната стена. Така че процесът на промяна на кутията е както следва:

1) Маркирайте центъра за всяка дупка с маркер.

2) Пробийте малка дупка с тънка свредло.

3) Бавно увеличете размера на отвора с бормашина за дърво.

4) Изчистете дупките.

5) Поставете и закрепете кабелна втулка във всеки от отворите.

Стъпка 9: Монтаж на печатна платка

Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка
Монтаж на печатна платка

Тъй като имам само студентската пробна версия на Autodesk Eagle, не мога да проектирам печатни платки, по -големи от 8 см. Всичко пасва на тази дъска, така че това е добре. Единственият проблем е с контролната кутия. Отворите за монтаж на дъската, включени в кутията, са на 14 см една от друга. Това означава, че ще имаме нужда от държач за печатни платки. Това може да бъде дъска (дървена/пластмасова/метална), върху която ще монтираме платката. След това ще прикрепим държача към контролната кутия. По този начин печатната платка ще бъде закрепена към контролната кутия.

Можете да направите държача така, както искате. Можете да го направите ръчно от плоча от дърво или стомана, можете да го изрежете лазерно (като мен) или дори да го отпечатате 3D. Включвам размерите на дъската, така че изборът е ваш. Ако имате достъп до лазерен нож, лазерното рязане е най -простият вариант. Тук можете да намерите файловете за лазерно рязане във формат.pdf и.svg.

Както можете да видите, минах през множество варианти на държача. Накрая отидох с акрилната, защото не се влияе от влага (като дърво) и не привлича топлина (като стомана).

Стъпка 10: Сглобяване + окабеляване

Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване
Сглобяване + окабеляване

Това ще бъде доста лесно да се направи, но доста трудно за обяснение, защото има много малки стъпки. Нека да преминем веднага към това:

1) Поставете всички кабели в съответния им отвор. Все още не фиксирайте кабелните уплътнения.

2) Свържете всички проводници от сензорите за вятър, сензора за валежи и от захранващия кабел съгласно включената електрическа схема. Все още не свързвайте кабели от температурните сензори.

3) Ако е монтиран, свалете стойката за печатна платка. След това обърнете печатната платка, така че кабелите да вървят по долната й страна. Закрепете монтажната платка, така че кабелите да са закрепени в сандвич между печатната платка и стойката.

4) Поставете и завийте монтажа на печатната платка с печатната платка.

5) Закрепете двата по -малки (PG7) кабелни уплътнения. Все още не обезопасявайте по -големия.

6) Поставете и свържете кабелите от температурните сензори съгласно включената електрическа схема.

7) Поставете горния капак и го завийте на място.

Стъпка 11: Бъдете щастливи

Бъди щастлив
Бъди щастлив

Тази стъпка е нещо като контролен пункт. В този момент трябваше да си направите нещо, което да прилича на това, което виждате на снимката. Ако това е правилно, бъдете щастливи. Продължавай, закуси си и си почивай, защото това не е само една малка стъпка за един мъж, а гигантски скок за човечеството. Ако не, прегледайте предишните стъпки и намерете проблема. Ако това не помогне, коментирайте или ми пишете.

Така че, когато сте здрави и отново във форма, можете да преминете напред към частта за кодиране и отстраняване на грешки.

Стъпка 12: Кодиране и отстраняване на грешки

Кодиране и отстраняване на грешки
Кодиране и отстраняване на грешки

Яаааа, всеки обича кодирането! И дори да не го направите, няма значение, защото можете просто да изтеглите и използвате моя код.

Първо, трябва да добавите ESP32 dev модул към вашия мениджър на дъски. За да направите това, ще трябва да изтеглите JSON пакет и да го инсталирате чрез мениджъра на дъските. Вижте този урок от ръководства за случайни глупаци.

Сега трябва да изтеглите всички основни библиотеки. Създадох ZIP архива „Libraries.zip“, за да го опростите. Не импортирайте архива в Arduino IDE като класическа библиотека. Вместо това извлечете архива и преместете всички файлове в библиотеки Documents/Arduino/. Сега можете да изтеглите и четирите ми програми: „Wi-Fi_Weathercloud_API_test.ino“, „System_test.ino“, „ESP32_Weathercloud_Weather_Station.ino“.

Отворете „Wi-Fi_Weathercloud_API_test.ino“. Ще трябва да промените няколко неща. Първо, ще трябва да замените „SSID“и „KEY“с SSID (име) и паролата на вашата Wi-Fi мрежа. Второ, ще трябва да замените „WID“и „KEY“с вашия Weathercloud ID и KEY, които трябва да имате от Стъпка 2. Ще трябва да направите същото и с „ESP32_Weathercloud_Weather_Station.ino“. Продължете и качете кода в ESP32. Трябва да видите предварително зададените данни, идващи на уебсайта на Weathercloud. Ако това е правилно, продължете.

Качете „System_test.ino“в ESP32 и „I2C_rainfall_sender“в Arduino NANO. Отворете серийната конзола на ESP32 на 115200 бода. Сега трябва да виждате сензорни данни, идващи на всеки 15 секунди на екрана ви. Играйте със сензорите. Осветете светлина в сензора за слънчева радиация, духайте в сензора за скорост на вятъра, загрейте температурната сонда … По този начин можете да проверите дали всичко работи. Ако заключите, че всичко е както трябва, продължете.

Качете „ESP32_Weathercloud_Weather_Station.ino“в ESP32. Ако сте направили всичко правилно, трябва да виждате реалните данни от станцията, които влизат на страницата Weathercloud на всеки 10 минути. Ако това работи, това означава, че вашата станция вече е напълно работеща и единственото, което остава да направите, е да я инсталирате някъде хубаво.

АКТУАЛИЗИРАНЕ 18.07.2020: Всички вторични програми/програми за тестване остават същите. Но основната програма на метеорологичната станция беше надстроена. Структурата на кода е много по -ясна от преди. Можете да зададете всички необходими параметри в началото на кода. ESP32 сега получава време от NTP сървър, така че RTC модулът вече не е необходим. Не на последно място, ESP32 сега изпълнява процедура за дълбок сън, когато не измерва и изпраща данни. Това ще намали консумацията на електроенергия и ще спомогне за удължаване живота на метеорологичната станция. За да използвате новия код, просто изтеглете обновения код „ESP32_Weathercloud_Weather_Station.ino“и актуализирания ZIP файл с библиотеки (Instructables не го приема, така че ето връзка към Google Диск). Наслади се!

Стъпка 13: Монтиране на станцията

Станционен монтаж
Станционен монтаж
Станционен монтаж
Станционен монтаж
Станционен монтаж
Станционен монтаж

Така че, след като сте потвърдили, че вашата станция работи, трябва да проектирате и направите монтаж за нея. Той ще трябва да бъде здрав, издръжлив, компактен и не на последно място трябва да е хубав. Направете тази стъпка по -скоро препоръка или вдъхновение, отколкото точни инструкции. Не знам как изглежда къде ще го монтирате. Трябва да проявите малко повече творчество. Но ако имате плосък покрив с стърчаща метална тръба с диаметър 5 см, продължете и направете както направих аз. Тази станция има две кутии. Затова реших да сложа и двамата един до друг върху метален панел. Трябва да се монтира върху метална тръба с диаметър 5 см. Затова сложих тръба с вътрешен диаметър 5 см в долната част на панела. И двата сензора за вятър трябва да са далеч от останалата част на станцията. Затова поставете две тръби с дължина 40 см от всяка страна на станцията и две тръби с дължина 10 см в края на всяка. Радиационният щит трябва да бъде монтиран под панела, за да осигури допълнителна сянка. За това поставих 7 на 15 см L скоба върху дебелата метална тръба.

Ето всички необходими метални части една по една [размери в мм]:

1x тръба, вътрешен диаметър 50, дължина 300

1x панел, 250 на 300, дебелина 3

1x L скоба, 75 и 150 рамена

2x тръба, външен диаметър 12, дължина 400

2x тръба, вътрешен диаметър 17, дължина 100

Когато разполагате с всички тези метални части, можете да ги заварявате на място според предоставения от мен 3D модел. След това ще трябва да пробиете всички отвори за кутиите и за радиационния щит. След това просто го боядисайте с боя за метал. Препоръчвам да използвате бяло, тъй като то абсорбира най -малко топлина от всички цветове. Това е всичко, което имате, за да можете да монтирате станцията си!

Стъпка 14: Инсталиране

Инсталация
Инсталация
Инсталация
Инсталация
Инсталация
Инсталация

Вземете метеорологичната си станция, стойката и всичките си инструменти, защото ще ви трябват всички. Качете се в кола (или автобус, който не ме интересува) и стигнете до бъдещото местоположение на вашата гара. И накрая, можете да монтирате станцията.

Да накараш метеорологичната си станция да работи във твоя цех е едно, но да работиш в сурови условия в реалния свят е друго. Процедурата за инсталиране зависи много от сградата, върху която монтирате вашата станция. Но ако имате държач от предишната стъпка и мощна тренировка, би трябвало да е наред. Просто трябва да залепите дебелата тръба от стойката върху малко по -тънката тръба на покрива. След това просто пробийте през двете тръби и ги закрепете с дълъг винт. Монтирайте всички кутии и сензори. Това е. Вашата станция е успешно инсталирана.

Направихме това в дъждовен ден. Беше много трудно, но нямахме друга възможност поради крайния срок за състезанието.

Стъпка 15: Захранване, настройка нагоре и отстраняване на грешки

Захранване, настройка нагоре и отстраняване на грешки
Захранване, настройка нагоре и отстраняване на грешки
Захранване, настройка на връзката нагоре и отстраняване на грешки
Захранване, настройка на връзката нагоре и отстраняване на грешки
Захранване, настройка на връзката нагоре и отстраняване на грешки
Захранване, настройка на връзката нагоре и отстраняване на грешки
Захранване, настройка нагоре и отстраняване на грешки
Захранване, настройка нагоре и отстраняване на грешки

Вашата станция е физически инсталирана, но все още не е онлайн. Нека направим това сега. Трябва по някакъв начин да захранвате станцията. Тук трябва да сте малко креативни. Можете да поставите адаптер вътре в къщата и да издърпате кабел през прозореца. Можете да заровите кабела под земята. Можете да го захранвате чрез слънчев панел. Важното е само, че има 5V 500mA върху щифтовете на захранващия кабел, идващи от контролната кутия. Не забравяйте, че всичко трябва да е устойчиво на атмосферни влияния! Когато захранвате станцията си, можете да преминете към настройката и отстраняването на грешки във връзката нагоре.

Uplink Setup по принцип кара ESP32 да се свърже с вашата Wi-Fi мрежа. Ако е в къщата ви, трябва да е добре. Ако е в гараж или по-далеч един от друг, може да се нуждаете от Wi-Fi разширител или дори персонализирана Wi-Fi мрежа. След това следва фазата на отстраняване на грешки. Можете просто да качите крайния код и да се надявате на най -доброто, но аз наистина препоръчвам да тествате всеки от сензорите един по един, само за да сте сигурни, че всичко функционира правилно. По същество същото като в стъпка 12. Ако всичко работи както трябва, можете да натиснете бутона UPLOAD, да изключите USB кабела и да затворите контролната кутия.

Стъпка 16: Живейте щастливо след това

Живейте щастливо след това
Живейте щастливо след това

Боже, това беше много в последния момент момчета. Забелязах конкурса за сензори само 10 дни преди да приключи. Същата вечер трябваше да направя около 10 телефонни разговора, за да организирам всичко необходимо за финализиране на станцията. Още не беше завършено. В деня, в който трябваше да инсталираме станцията, дойде гигантска буря, която наруши плановете ни. Трябваше да финализирам целия текст, преди станцията да бъде завършена. Станцията най -накрая беше инсталирана точно днес, в същия ден, в който публикувах тази инструкция.

Със сигурност има много неща, които биха могли да бъдат направени по -добре тук, но има много полезни неща, които можете да научите тук и да ги използвате, когато изграждате своя собствена станция. Ако сте направили всички стъпки правилно, сега имате напълно работеща облачна метеорологична станция ESP32. И това е нещо! Цялата упорита работа се изплати (надявам се, че се получи). Можете да видите данните от моята станция тук. Ако имате въпроси или предложения, ще се радвам да ги чуя в секцията за коментари по -долу.

Да, и също така, ако този проект ви е харесал, ще съм много благодарен, ако гласувате за мен в конкурса Sensors. Благодаря много и се наслаждавайте !!!

Състезание за сензори
Състезание за сензори
Състезание за сензори
Състезание за сензори

Първа награда в конкурса за сензори

Препоръчано: