Съдържание:

IoT сензор за влага: 12 стъпки
IoT сензор за влага: 12 стъпки

Видео: IoT сензор за влага: 12 стъпки

Видео: IoT сензор за влага: 12 стъпки
Видео: Подключение и прошивка ESP-12 (ESP-12F/ESP-12E/ESP-12Q) с помощью Arduino 2024, Ноември
Anonim
IoT сензор за влага
IoT сензор за влага
IoT сензор за влага
IoT сензор за влага
IoT сензор за влага
IoT сензор за влага

Исках сензор за влага, който да ме уведоми, когато стайните растения се нуждаят от вода. Исках нещо, което да използвам за стартиране на семена и за зрели стайни растения. Винаги съм притеснен, че ги поливам или ги поливам.

Прекарах малко време в работа по IoT софтуер за устройства Arduino, използвайки софтуер на други хора, имах доста добра представа за изискванията за моето.

  1. Исках нещо, което мога да прехвърля на множество устройства и да конфигурирам през wifi. Не исках да променям конфигурационен файл всеки път, когато качвам на ново устройство. Също така не исках да поставям идентификационни данни или други подробности в кода, тъй като винаги съм имал намерение да споделя този код.
  2. Исках и доста солидна рамка от софтуер, която да мога да персонализирам за бъдещи проекти. Това е сензор за влага. Може да изградя сензор за движение/светлина/звук/вибрации/накланяне и исках да мога да използвам някои от същия софтуер за това.
  3. Накрая исках това да се захранва от батерии и като такова исках да издържи дълго. Прекарах известно време, за да разбера режима на дълбоко заспиване, където устройството ще прекарва по -голямата част от времето в спящо състояние.

Консумативи

Wemos D1 Mini

Капацитивен сензор за влага

18650 Батерия

Положителни и отрицателни конектори на батерията

Плъзгащи превключватели

Достъпът до 3D принтер също е от съществено значение, въпреки че можете да намерите други начини за свързване и поставяне на частите.

Ето линк към моя пост в Thingiverse с всички модели, които създадох.

Стъпка 1: Вземете софтуера

Вземете софтуера
Вземете софтуера

Публикувах софтуера си в GITHUB. Той е изграден с помощта на PlatformIO

  1. Следвайте инструкциите на уебсайта на PlatformIO, за да инсталирате VSCode и PlatformIO
  2. Изтеглете фърмуера от моето GITHUB репо. Щракнете върху Клониране или изтеглете и изтеглете ZIP
  3. Извлечете и отворете папката във VSCode
  4. Свържете Wemos D1 към компютъра чрез микро USB
  5. В VSCode щракнете върху извънземното, за да отворите панела PlatformIO
  6. Щракнете върху Изграждане и качване, за да качите фърмуера на дъската на Wemos

Стъпка 2: Настройте проект на Blynk, с който вашият сензор да разговаря

Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря
Настройте проект на Blynk, с който вашият сензор да разговаря

Съсредоточих се върху два вида услуги MQTT и Blynk, и двете са по избор.

Blynk е лесна за използване и евтина IOT платформа. Можете да създавате приложения предимно с помощта на компонентите, които получавате безплатно. Ако ви свършат кредитите, можете да купите повече, като използвате покупките на приложения.

  1. Инсталирайте приложението Blynk на телефона си
  2. Създай профил
  3. Създайте нов нов проект
  4. Дайте му име и изберете Wemos D1 като устройство
  5. Вземете ключа Blynk от имейла си, той ще се използва за конфигуриране на устройството по -късно
  6. Продължете и докоснете навсякъде на таблото за управление на вашия проект, за да добавите компонент
  7. Изберете LCD дисплей засега, но можете да го промените за диаграма или други компоненти по -късно. Blynk ви позволява да рециклирате компоненти, така че да не се притеснявате за загуба на кредити
  8. Докоснете LCD дисплея и задайте щифтовете. Фърмуерът използва два виртуални пина. Няма значение кои от тях използвате, стига да използвате същото в приложението си като фърмуера си по -късно

Стъпка 3: Настройте MQTT услуга (домашен асистент)

Вече използвам Home Assistant за домашната си автоматизация и планирам да настроя известия или за изсъхнало предприятие, или за сензор, който спря да докладва (батерията е изтощена).

Можете да намерите информация за настройка на HA тук, ако желаете, или можете просто да настроите Mosquitto Service за MQTT.

И в двата случая ще искате да знаете вашия IP адрес, потребителски идентификатор и парола.

Ако използвате Home Assistant, ще настроите сензор на платформата MQTT, но ще ви е необходим чипидът. Фърмуерът ще публикува съобщение с тема [идентификатор на чип]/влага със стойността на отчитането на влагата

Ето примерна конфигурация на сензора за Home Assistant

state_topic: "ESP6e4bac/влага/"

device_class: влажност

Стъпка 4: Конфигурирайте фърмуера

Конфигурирайте фърмуера
Конфигурирайте фърмуера
  1. Когато платката се нулира, тя ще стартира wifi точка за достъп WifiMoisture
  2. Свържете се с него с помощта на телефона или компютъра си
  3. Отворете браузър и отидете на 192.168.4.1
  4. Ще видите уеб формуляр
  5. Добавете вашите идентификационни данни за wifi.
  6. Можете да зададете интервал на заспиване за минути, но ви съветвам просто да го оставите по подразбиране (максимумът за вашето устройство)
  7. Добавете настройките на Blynk Key и/или MQTT
  8. Натиснете „подаване“

Можете да въведете ключове на Blynk и или MQTT идентификационни данни в зависимост от това как искате да проследите влагата. Трябва да работи и с двете, но смятам да използвам и двете.

Използвам Home Assistant за домашната си автоматизация и ще настроя предупреждение въз основа на MQTT, но също така използвам графика в Blynk, за да проследявам нещата в реално време.

Бих посъветвал да направите тази конфигурация с устройството Wemos, все още свързано с вашия компютър, и докато работите със серийния монитор. Ако сте написали нещо неправилно или имате други проблеми, ще ви е необходим сериен изход за диагностика.

Стъпка 5: Отпечатване на части

Печатни части
Печатни части

Отидете на моя пост в Thingiverse, вземете частите и отпечатайте най -новото (v2 към момента на писане).

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

Стъпка 6: Свържете всичко

Свържете всичко нагоре
Свържете всичко нагоре

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

Стъпка 7: Започнете с батерията

Батерията е изработена от отпечатания държач, положителен и отрицателен конектор, два черни проводника и един червен.

След като отпечатате държача на батерията, поставете положителния и отрицателния съединител в двата края, като щифтът стърчи отдолу.

Обърнете държача на батерията, сгънете фиксаторите и добавете към тях частица спойка

Завийте заедно краищата на двата черни проводника и ги калайдете с припой

Калайдайте края на червения проводник със спойка

След това запоявайте черните проводници към отрицателния конектор (този с пружината) и червения проводник към положителния конектор.

Накрая сгънете фиксаторите, за да се настанят плоско до страната на държача на батерията.

Стъпка 8: Сглобете превключвателя

Този фърмуер е предназначен да се възползва максимално от батерията, използвайки режима Deep Sleep на чиповете.

Устройството се събужда, приема и публикува показания и след това се връща в режим на заспиване. За да може чипът да се събуди, има връзка между D0 и RST.

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

Също така установих, че понякога се налага да прекъсна връзката D0-RST, за да мигна нова версия на фърмуера. Превключвателят работи и за това.

Окабеляването на превключвателя е просто, проводник от едната страна към щифта RST, а централният проводник към щифта D0. Преди запояване това нагоре плъзнете отпечатания блок на превключвателя върху превключвателя.

Стъпка 9: Запояйте останалата част от връзките

Сега, когато батерията и превключващият блок са свързани, е време да свържете всички останали връзки.

  1. Запоявайте червения проводник от батерията към 3.5v щифта на Wemos
  2. Запояйте един от черните проводници от батерията към заземяващия щифт на Wemos
  3. Запоявайте жица с двата края отстранени към щифта А0. Ще го свържем с жълтия проводник на сензора
  4. Запоявайте червен проводник с двата края отстранени към щифта D1 на Wemos. Това ще бъде завишено от фърмуера за захранване на сензора

Като алтернатива можете да отрежете женската заглавка от сензора и да я запоите директно към Wemos. Не го направих, но няма нищо лошо в това, стига да не планирате да разглобявате това по -късно.

Стъпка 10: Поставете всичко в кутията

Поставете всичко в кутията
Поставете всичко в кутията
Поставете всичко в кутията
Поставете всичко в кутията

Опитах се да направя всичко да приляга плътно, но да не поема твърде много сила, но всеки отпечатък е малко по -различен.

  1. Поставете Wemos. първо натиснете usb края. Уверете се, че се подрежда добре. Ако нямате право на ъгъл, задният край няма да влезе лесно.
  2. След това поставете сензора. Когато окабеляването вече е свързано, плъзнете го под ъгъл и когато е в правилната позиция, го натиснете надолу. Кутията трябва да държи скобата за окабеляване.
  3. След това поставете държача на батерията на място. Може да се наложи да огънете малко стените на кутията. Възползвайте се от факта, че едната му страна е отворена (може да направя и двете страни отворени при следващото преразглеждане). Намерете двете кръгли подложки в долната част на кутията и натиснете държача на батерията върху тях.
  4. Накрая поставете превключвателя на място от вътрешната страна на кутията. Завийте двата винта 1,7 mm x 8 mm отвън, като се уверите, че оказвате малко натиск върху отпечатания блок на превключвателя. Винтовете трябва да се захващат за отпечатания блок, но не забравяйте, че отпечатаните части са меки и винтовете лесно ще отстранят дупките.

След като всичко е в кутията, отделете няколко минути, за да организирате проводниците. Може да успеете да ги плъзнете покрай държача на батерията, но в зависимост от проводника, това може да доведе до разпръскване на страните.

Стъпка 11: Включете го и направете първите си четения

Накрая се уверете, че превключвателят е обърнат, за да свържете D0 и RST щифтовете и поставете батерия.

поставете капака и завийте 6 винта, за да го задържите на място (или капакът не може просто да се задържи с триене).

Устройството трябва да отчете веднага, да заспи за конфигурираното време и след това да вземе друго.

Сега, когато го стартирате, можете да настроите диаграма в Blynk, да настроите известие в HomeAssistant или някоя от разнообразието от други опции за проследяване на влагата и поддържане на растенията ви живи.

Стъпка 12: Следващи повторения

В бъдеще вероятно ще актуализирам софтуера MQTT, за да кажа нещо повече от суровото четене. Един от блиндираните пинове публикува интерпретация, така че поне искам да добавя това към MQTT. Трябва да включа и последното

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

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

И накрая, освен Wemos D1 Mini, има и други дъски, които имат вграден държач за батерия и/или зарядно устройство. Използването им може да спести малко място и да ми попречи да отварям кутията по -късно.

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