Система полива цветов своими руками с интеграцией в Apple HomeKit

12 октября 2018, 22:32

Введение 

Привет дорогой читатель. 

Хочу поблагодарить каждого читатель и тех кто меня поддержал в моих начинаниях. Особую благодарность выражаю Олегу за материальную поддержку и Dmitriy Batyushin (ReD) за помощь в программной части проекта.
Как и большинства нас в квартире у нас есть цветы, хотя б один но, есть. Я как студент и много цветов не могу поставить, но одним я обзавелся. Моя главная проблема была это - не забыть полить цветок. Сколько бы напоминаний я не ставил, записки не писал, всегда забывал это сделать. Но я же начал автоматизировать всю комнату и полив цветка нужно как то автоматизировать.
Недолго думая я пришел к решению. Так как мне нравиться решения на всем известной плате ESP 8266 она и была основой проекта.
Чтобы автоматически поливать и не заливать цветок нужны датчики и чтобы полив автоматически работал нам нужен насос ну и немного расходников.
По итогу получаем автоматический полив цветка и остаться только доливать воду в контейнер и все. 
В данную схему еще можно добавить датчик уровня воды, но это уже на будущее.

Комплектующие

Комплектующие покупались в одном магазине Амперкот в СПб. Приятный магазин с отзывчивым персоналом.

  1. Плата ESP 8266 - 305 руб.
  2. Маленький погружной насос DC 3-5v - 125 руб
  3. Соединительные провода Male-Female 40 шт 10см - 70 руб
  4. Мини макетный платы - 2шт - 35р*2
  5. Модуль реле одноканальный 5v красный текстолит - 95 руб
  6. Модуль датчика влажности почвы FC-28  - 65 руб
  7. Капельница медицинская - 23 руб (нужна только трубка была)
  8. Кабель Micro USB - 100 рублей (купил у метро)
Итого: 853 рубля
Из этой всей схемы можно поменять насос, все зависит от поставленной задачи.
1600x_image.png

Все что требовалось для проекта вот на столе, если чего-то не хватает, то это уже было куплено ранее.

Сборка проекта

Собираем согласно схеме

1600x_image.png

Если схему плохо видно прикладываю ссылку на оригинальный файл.

Прошивка

За основу была взята мне полюбившаяся прошивка ESP Easy. О ней я рассказывал в своей статье про DIY Бюджетная умная кофеварка своими руками как прошить я так же рассказывал в видео.

Как настроить прошивку так же в первом видео рассказывал, на этом сильно не буду останавливаться и кратко покажу все настройки на скриншотах.

Настройка прошивки

Задача следующая: нужно когда сухость почвы доходит до определенной отметки, автоматически включается реле на определенное время и начинает работу насос. Чтобы понять сколько потребуется времени на полив цветка, нужно провести эксперимент и проверить. Я путем тестирования понял, чтобы полить нормально цветок мне хватит 5 секунд.

Получилось следующая логика работы: когда сухость доходит до 90, срабатывает реле и включает насос на 5 секунд, через 5 секунд выключается. Цветок полит, влажность хорошая и мы видим влажность в нашем приложении дом.
Скачиваем прошивку по ссылке.
Начинаем настройку:
1. Настроим Уникальное имя устройства.
В браузере набираем ip-устройства и попадает на него
Заходим в Config и меняем Unit Name и спускаемся в низ страницы и нажимаем Submit
1600x_image.png

2. Заходим в Controllers и выбираем первый пункт и нажимаем Edit и вводим настройки ниже как на скриншоте.

1600x_image.png

После этого спускаемся вниз и нажимаем Submit

3.Переходим на вкладку Hardware и выставляем все как на скрине ниже, спускаемся вниз и нажимаем Submit

1600x_image.png

4. Переходим на вкладку Devices и начинаем настройку нашего Реле и Датчика влажности почвы.

Выбираем 1 пункт и Edit, и тип выбираем как на скрине

1600x_image.png

Далее нам нужно настроить взаимодействия с Реле, настройки выставляем как на скрине.

1600x_image.png

Все как на скрине прописываем, в будущем все это потребуется для прописывания правил 

Нажимаем кнопку Submit

Выбираем 2 пункт и Edit, и тип выбираем как на скрине

1600x_image.png

Далее нам нужно настроить взаимодействия с Датчиком влажности почвы, настройки выставляем как на скрине.

1600x_image.png

Формула нужна чтобы сделать влажность в 100% если не использовать эту формулу, то влажность будет не точной и не будет правильно отображаться в приложении Дом

(%value%-24)/10

Нажимаем Submit.

Ну почти все готово, девайсы подключены и мы должны увидеть следующую картину во вкладке Devices

1600x_image.png

Как мы видим что реле не работает, а влажность 56.20.

Но тут так же есть одно, но. 56.20 Это не влажность, а сухость. Инверсию данных пока не знаю как сделать, но в ближайшее время найду решение.

5. Ну и теперь осталось прописать правила.

Переходим в Rules и в Rules Set 1 прописываем

1 правило это чтобы автоматически поливалось при сухости 90% и более включать полив

on flags#Analog do
if [flags#Analog]>90
gpio,12,1
endif
endon

2 правило прописываем чтобы реле работало не более 5 секунд, но тут нужно понимать сколько секунд нужно полить чтобы и не залить цветок и ему хватило. Путем экспериментов понятно стало, что 5 секунд полива достаточно. В Rules Set 2 прописываем следующее правило.

on Relay1#Switch do
 if [Relay1#Switch]=1
  gpio,12,1
  timerSet,1,5
 endif
endon

on Rules#Timer=1 do
 gpio,12,0
endon

На этом программная настройка самого контроллера ESP 8266 закончена.

Прописываем настройки в config.json 

{
            "accessory": "mqttthing",
            "type": "switch",
            "name": "насос",
            "url": "mqtt://ip-малины",
            "username": "admin",
            "password": "admin",
            "topics": {
                "getOn": "/poliv/Relay1/Switch",
                "setOn": "/poliv/gpio/12"
            },
            "integerValue": "true",
            "onValue": "1",
            "offValue": "0"
        },
        {
            "accessory": "mqttthing",
            "type": "humiditySensor",
            "name": "vlaga",
            "url": "mqtt://ip-малины",
            "username": "admin",
            "password": "admin",
            "topics": {
                "getCurrentRelativeHumidity": "/poliv/flags/Analog"
            }
        }

Первый аксессуар отвечает за реле, а точнее делает переключатель, а второй выводит данные о влажности.

Начинаем тестирование.

После проведения всех тестов и настройки системы под ваш горшок и цветок, добавляем в бак воды под завязку и спокойно можно забыть о поливе нашего цветка надолго.

Система работает автоматически без вашего участия.

Выводы

Собранная схема работает уже почти неделю и сбоев я не находил, все четко. Цветок полит всегда, я счастлив.

Самое главное, что это все интегрировано в одну экосистему и все данные можно получить в приложении Дом.
Если нужно еще до полить цветок, то мы это так же можем сделать из приложения или же просто попросить Siri.
Такую систему можно использовать не только для одного цветка, так же можно и для рассады и так далее. 
Все зависит от задач и такой насос выбирайте. 
Не забываете подписываться на канал и ставить лайки.

Все новости мира умных домов - t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram - @Soprut

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. Олег Челбаев (sprut)

    Ты крут =) но нужен второй вариант для рукопопов которые хотят так-же, но такое никогда в жизни не повторят ;) продолжай в том же духе !!!!! мы с тобой ;)

  2. (11111986)
    (11111986) отредактировано год назад

    Всё круто, я думаю сюда подойдёт вот этот плагин https://www.npmjs.com/package/..., он какраз для полива и имет свой таймер

  3. (igor428)
    (igor428) год назад

    Очень крутая статья. Удачи в дальнейших проектах.. 

  4. Геннадий Куракин (Onag)

    Простите за критику. Давно думал о автоматизации цветочного полива. И когда увидел что вышло видео на канале Спрута, решил что уже теперь то точно сделаю это решение у себя. Но посмотрев его, не вынес практической пользы, ну да, ясно-понятно что система работае у автора. А как он ее делал-смотри в другом обзоре. И зачем делать все это на плате? Как соединены пины? Ссылки лучше на алиэкспресс, не все живут в питере. Короче посмотрел обзор, прочитал статью, и пошёл искать другую статью на эту тему. Но за труды автору спасибо. 

    • Вячеслав Фетисов (Ziracul)
      1. Спасибо за критику, но она должна быть точно конструктивной.
        Все настройки есть в данной статье, я не увлекался рассказами как прошивать, чтобы не занять время пользователя.
        На макетной плате все это собрано для наглядности что и как. Все потом можно в коробку пересобрать и можно просто перенести в коробку.
        В первом обзоре я четко разобрал прошивку платы и все, там подробнее остановился на каждом пункте. В этой статье я все кратко и понятно написал.
      2. По поводу ссылок, Ребята из Amperkot работают по все России и нет проблем у них заказать, на али уже кому удобно те и берут, названия все есть.
      3. Если тема Вам интересна можете спокойно  ознакомиться и все будет работать, критика это конечно хорошо, но давайте конструктивно писать ее.
      • Геннадий Куракин (Onag)

        Может я гоню, но статья была бы user-friendly, если все действия указывались в ней (ИМХО). Прямо по пунктам. Ну не хотите загромождать статью - уберите под спойлер. Есть люди и не из России, поэтому и предложил алишечку как кросс-государственную платформу. Пожалуйста, не обижайтесь на мои комментарии, я просто хотел как лучше. А лучшее, это враг хорошего :) Искренне желаю вам успехов в написании статей. 

  5. Геннадий Куракин (Onag)

    вот девайс на али, только к HomeKit подключайте

    https://s.click.aliexpress.com...

    • Вячеслав Фетисов (Ziracul)

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

  6. Илья Яшин (yshinig)
    Илья Яшин (yshinig) год назад

    хорошая идея, только для лимонного дерева еще бы добавить увлажнитель и будет круто.

    Молодцом

    • Вячеслав Фетисов (Ziracul)

      Ну добавить в данную схему увлажнитель вообще не проблема, тут можно сделать как независимое устройство, так и часть этой системы, там все просто можно сделать.

  7. Илья Яшин (yshinig)
    Илья Яшин (yshinig) год назад

    посоветуйте датчик влажности для 60л горшка. я думаю маловат будет что показан.

    Спасибо

    • Вячеслав Фетисов (Ziracul)

      да и данного датчика хватит, для более точных показаний можно ещё один датчик подкинуть и получать данные с 2х датчиков и исходя из показателей 2х датчиков включать полив.

  8. Илья Яшин (yshinig)
    Илья Яшин (yshinig) отредактировано год назад

    Можно вместо датчика подключить две спицы???  во всю длину горшка.

    Или Закопать поглубже???

  9. (Chapayyy)
    (Chapayyy) год назад

    Спасибо! Воспользовался вашей статьей.

    Хочу добавить что я замерил абсолютные показания датчика на сухой и  влажной почве, и эти данные внес в подраздел «Two Point Calibration» при добавлении датчика влажности в Devices. У меня при максимально сухой почве (0% влажности, point 1 - 0.000) абсолютные значения были близки к 810, на почве, при залитой почве аналоговый датчик выдавает около 380 (100% влажности, point 1 - 100.000). 

    В итоге в homekit идет нормульное отображение именно влажности почвы. 

  10. (zipclownz)
    (zipclownz) отредактировано год назад

    Привет! Спасибо за статью! Пришлось довольно сильно подзапариться, чтобы понять как все подключать, но дело почти сделано) Хотя устройство пока не хочет работать. Датчик влажности почти адекватно работает, но насос не хочет работать.
    Есть пара вопросов:
    1)Зачем реле вставлено, если можно напрямую подключить насос к выходу из ESP?
    2)Почему в настройках ESP ставится GPIO12 > D6, а в схеме подключение идет к D1?
    3)В чем может быть проблема, если датчик выдает все что нужно, но при сухости выше 90% насос не включается, хотя из homekit я могу его включать вручную кнопкой?

    • Вячеслав Фетисов (Ziracul)
      1. Привет, спасибо за комментарий.
        Реле требутся чтобы включить и выключить насос
      2. Действительно тут описался и сейчас исправлю на скрине должен стоять D1
      3. Скинь свои настройки мне в личку в телеграммной попробуем разобраться
К списку статей

Скидки для сообщества

Интернет-магазин yourhomekit.ru

+7 914 550-51-11
Промокод:
SPRUT-BLG
Размер скидки:
8%
Cамый большой ассортимент в России аксессуаров Apple HomeKit

Похожие статьи

04 сентября 2018, 12:14
Интеграция RGB ленты на ESP8266 с прошивкой tasmota в систему HomeBridge (HomeKit)
09 ноября 2018, 20:54
Кейс создания умного дома без каких либо прокладок в виде Raspberry pi
02 ноября 2018, 12:14
Кнопка звонка с уведомлениями в HomeKit
15 октября 2018, 09:05
Прошивка для Sonoff c нативным HomeKit
15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
15 ноября 2018, 13:11
Xiaomi Mi Remote 360 добавляем Apple HomeKit
01 октября 2018, 07:43
Нативный HomeKit на ESP8266
15 июня 2018, 12:13
Охранная система в гараж на ESP8266 с интеграцией в Apple HomeKit
28 августа 2018, 09:48
От голого Raspbian до веб-интерфейса homebridge за четыре команды в терминале.