Автономная станция погодного контроля и полива растений
Это руководство объединяет процесс разработки и сборки автономной станции для орошения и мониторинга работающей на солнечной энергии, которую мастер-самодельщик сделал для своего домашнего сада.
Станция выполняет несколько задач. Она собирает атмосферные данные, данные о влажности почвы, отправляет их в режиме реального времени в облако для удаленного мониторинга и контролирует орошение через систему капельного полива.
Данные со станции в реальном времени можно просмотреть по следующей ссылке:
https://thingspeak.com/channels/1281247
Сам мастер проживает в городе, и его теплица расположена на крыше дома.
На ее базе он уже реализовал сбор дождевой воды и переработку отходов. Однако, одна из основных проблем — полив растений. Нужно было сделать такую систему, которая бы работала, в его отсутствии в течении нескольких дней.
Инструменты и материалы:
-ESP8266 D1 Мини-плата;
-Модуль датчика температуры и влажности BME280;
-Модуль ADS1115 ADC;
-Модуль повышения напряжения DC-DC SX1308;
-Понижающий модуль постоянного тока MP1584;
-Солнечная панель;
-TP4056 Модуль зарядного устройства;
-4шт. A03400 N-Mosfet;
-2шт. A03401 P-Mosfet;
-18650 LiPo аккумулятор;
-6 резисторов по 51 кОм;
-6 резисторов по 2 кОм;
-3 емкостных датчика влажности почвы;
-2x 2-контактных разъема JST XH;
-3x 3-контактных разъема JST XH;
-Паяльное оборудование;
-Макетная плата;
-3D-принтер;
-Монтажная плата;
-Крепеж;
-Шуруповерт;
-Отвертка;
Шаг первый: настройка канала Thingspeak
Первое, что нужно сделать при разработке такого проекта, — это настроить канал облачных данных и проверить связь между устройством и каналом. Таким образом, у пользователя будет последовательный журнал и справочная информация обо всех данных и поведении системы по мере ее разработки.
Начать нужно с создания учетной записи Thingspeak и нового канала. Затем переходим к настройке, как указано на изображениях. Нужно обратить внимание на идентификатор канала, а также на ключ API записи и ключ API чтения, так как их нужно будет прописать в Arduino Sketc.
После настройки все готово для приема и просмотра данных, нужно просто не забыть добавить информацию о канале, а также учетные данные пользовательской сети Wi-Fi в эскиз и загрузить его в микроконтроллер Wemos. Обязательно нужно подключить аккумулятор. Поскольку код оптимизирован для работы от аккумулятора, устройство не будет подключаться к Интернету, пока оно не считывает показания датчика I2C.
Как только плата подключится к Интернету, на канале Thingspeak будут видны первые загруженные данные. Теперь можно проверить работу датчиков. Проверить их можно периодически нажимая кнопку сброса, каждый сброс отправляет 1 позицию данных. В качестве альтернативы, можно просто оставить станцию включенной, и получать периодические данные с 15-минутными интервалами.
Шаг второй: разработка прототипа
Станция построена на базе микроконтроллера ESP8266 D1 Mini. Этот микроконтроллер представляет собой очень компактный и удобный способ создания устройств IoT, однако у него не так много контактов ввода-вывода, как у Arduino, поэтому нужно использовать цифровые датчики, которые могут обмениваться данными через единую шину данных. В настоящее время большинство датчиков являются цифровыми и имеют гораздо большую точность, чем аналоговые датчики. Базовая плата включает шину I2C для установки различных датчиков, которые можно легко заменять или комбинировать с модулями другого назначения.
Ключевыми функциями, которые мастер хотел реализовать, были мониторинг атмосферы, мониторинг почвы и управление орошением. Решением было использовать плату ESP8266 как управляющий модуль, и установить модуль датчика воздуха BME280, 16-разрядный модуль аналогового ввода ADS1115, и модуль постоянного тока, чтобы иметь возможность управлять электромагнитными клапанами полива. Кроме того, он хотел иметь возможность отключать датчики почвы, когда они не используются, поэтому он добавил два N-МОП-транзистора для переключения датчиков и клапана полива.
Так как устройство будет работать от солнечной батареи, был добавлен модуль TPS4056 BMS и понижающий модуль MP1584 DC-DC.
Мастер разработал свою метеостанцию так, чтобы она полностью умещалась на половине макетной платы. Это сделано для того, можно было в процессе работы ее легко модифицировать добавляя или убирая комплектующие.
Шаг третий: разработка модульного корпуса
При разработке корпуса мастер руководствовался тем, что он должен быть модульным, простым в сборке и модификации и, что самое главное, экономичным в изготовлении.
Первая модель корпуса была выполнена в программе SolidWorks. К сожалению, этот корпус был не самым удачным. Корпус собирался простой установкой деталей друг в друга и детали не совсем сопрягались.
Файл для печати этого корпуса можно скачать ниже.
STEVE_WATERS_Original_Stevenson_Screen_CAD.SLDPRT
Второй корпус мастер сделал сборным на винтах.
В верхней части корпуса есть 4 резьбовых отверстия, в которые ввинчиваются 4 стержня с резьбой, а затем все последующие модули надеваются на эти стержни. После последнего модуля 4 гайки фиксируют детали.
Корпус спроектирован так, чтобы нижнюю крышку можно было снять без демонтажа остальных модулей
Этот корпус имеет просторную внутреннюю часть, в которой достаточно места для установки 2 макетных плат половинного размера, а также модуля 18650 аккумулятор + зарядное устройство.
Первоначально мастер собирался установить солнечную панель наверху, но затем вынес ее за пределы теплицы.
Для лучшего приема сигнала Wi-Fi мастер установил дополнительную антенну, для чего пришлось сделать отверстие в корпусе.
Файлы для печати можно скачать ниже.
STEVE_WATERS_Final_Stevenson_Screen_CAD.SLDPRT
STEVE_WATERS_Final_Stevenson_Screen_STL_All_Pieces.STL
STEVE_WATERS_Solar_Panel_Mount_STL.SLDPRT
STEVE_WATERS_Solar_Panel_Mount_CAD.STL
Шаг четвертый: защита датчиков влажности почвы от атмосферных воздействий
Несмотря на то, что эти датчики влажности почвы относятся к новому емкостному типу, в котором в зоне зондирования нет оголенного металла, их все равно нужно защищать от влаги.
Мастер покрывает датчик, электронику и провод эпоксидной смолой.
Шаг пятый: схема и код
Принцип работы кода следующий:
Станция должна считывать и, через определенные промежутки времени, сообщать об окружающих условиях и влажности почвы в облачную службу, а также автономно управлять поливом через систему капельного орошения. Все время между отчетами, для экономии электроэнергии, система находится в спящем режиме.
Облачная платформа: Thingspeak
Интервал отчета: 15 минут
Орошение: 3 минуты каждые 15 минут (по 1 циклу)
Функциональная разбивка кода выглядит следующим образом:
После пробуждения включите питание датчиков и отключите клапаны полива.
Считайте показания всех датчиков (условия окружающей среды и влажность почвы) и сохраните их значения в памяти.
Включите соединение Wi-Fi и получите последние сохраненные данные с канала Thingspeak.
Обновите канал Thingspeak последними данными и, если какой-либо датчик почвы ниже порогового значения, установите для ожидающих циклов полива значение 3.
Если были отложенные циклы орошения по предыдущим данным, считанным из thingspeak, начните цикл орошения и уменьшите счетчик в канале, в противном случае перейдите в режим сна на 15 минут.
Если включен цикл полива, выключите Wi-Fi, включите клапан и дайте воде течь в течение 3 минут. Затем выключите клапан и уйдите в режим сна на оставшиеся 15 минут.
Программа ведет себя таким образом, что облачная платформа управляет поливом. Так же реализована функция управления поливом вручную, через облачную службу.
Код, а также схему, можно скачать ниже.
Steve Waters V1_0 SCH.pdf
Thingspeak_Irrigation_Station_F1_0.ino
Шаг шестой: плата
Согласно схемы монтирует плату. Несмотря на то, что плата выглядит довольно массивной, на самом деле под каждым модулем имеется много свободного места, и многие из них подключаются к одним и тем же контактам.
Шаг седьмой: сборка
Поскольку печатная плата уже установлена на 3 стойках, ее очень легко установить внутрь корпуса. Для этого нужно поместить его на пустую базовую плату и аккуратно обрисовать каждую стойку. Затем просверлить отверстия и прикрутить плату к корпусу. Перед установкой платы в корпус нужно загрузить на нее код и установить батарею.
Шаг восьмой: установка станции
Станция крепится на алюминиевую полосу с отверстием по центру. В отверстие вставляется защелка. Пружинный механизм надежно удерживает станцию на месте, а также легко снимается в случае необходимости.
После установки нужно подключить датчики, солнечную панель и капельный полив.
Чтобы установить внешнюю солнечную панель, мастер напечатал на 3D-принтере кронштейн, который легко перемещается и регулируется.
Шаг девятый: тестирование
После тестирования в течении некоторого времени мастер выяснил некоторые детали.
Во-первых, солнечной панели достаточно для зарядки батареи и работы устройства.
Во-вторых, датчики влажности не совсем точные (хотя и достаточны для работы системы) и их нужно периодически калибровать.
Несмотря на то, что датчики не так точны, их вполне достаточно для измерения влажности и полива в нужное время.
Поскольку это постоянно развивающийся проект, мастер уже разработал несколько планов будущих обновлений и уже начал реализовывать некоторые из них.
Среди будущих проектов можно выделить следующие:
tinyStacky — полностью автономная садовая башня с рециркуляцией.
Smart Solar Pack — блок питания на 75 Втч с солнечным панелью, регулируемым выходом 12 В и и 24 В, для систем более высокой мощности, таких как водяные насосы и вентиляторы.
tinyTanker — простой менеджер резервуаров для воды, который отслеживает сбор дождевой воды и использование водопроводной воды.
Источник (Source)
Источник: