Продолжение разработки контроллера гроубокса. Представлен конструктивно законченный вариант устройства, который может найти применение в самых различных задачах.
Предыдущая статья Список статей Следующая статья
Тема разработки контроллера гроубокса оказалась крайне востребованной и, похоже, бесконечной. Она все время подпитывается как моими собственными потребностями, так и многочисленными внешними запросами. И даже дачные воры приложили руки к развитию проекта. Проект становится по-настоящему народным.
Начал я в прошлом году с необходимости включать освещение для банана, который зимовал у меня в квартире. Создал контроллер с минимальным набором функций. Со временем добавил датчик влажности почвы.
Затем подключился Игорь из Минска. По его просьбе были добавлены датчики температуры и влажности воздуха, вентиляторы охлаждения и снижения влажности. Но это только маленькая часть его планов.
Сейчас к развитию проекта подключилась моя коллега по имени Елена. Она работает со мной в одной фирме. Елена специалист широкого профиля. Будучи математиком-программистом, еще и выполняет работу конструктора – разводчика печатных плат. Ей тоже необходим контроллер для гроубокса с рассадой, и она решила разработать для него печатную плату. Заодно Елена задумала попробовать продавать такие платы, возможно собранные на них контроллеры. Из этих соображений заказала пробную партию из 10 плат.
И еще на развитие проекта повлияли дачные воры - расхитители металла. У нас на дачах вернулись 90е годы. Более 20 лет ни гвоздика не украли. Два года лежала металлическая бочка у дороги, никто ее не трогал. А сейчас выносят все. Спиливают с заброшенных участков столбы, режут провода. Дошло до того, что на прошлой неделе у человека сняли забор из профнастила и ворота! Жуткое зрелище!
Я испугался за свой забор и решил сделать какое-то охранно-отпугивающие воров устройство. Для этой задачи идеально подходит новый контроллер. Вернее его аппаратная часть. Программа, естественно, должна быть другой.
И тут же нашлось много других потенциальных применений контроллера. В результате он превратился в достаточно универсальное устройство. При этом без какой-либо значительной избыточности в аппаратной части, а значит и цене.
На мой взгляд, устройство получилось крайне удачным. Из-за его универсальности я ушел в названии от “контроллера гроубокса”. Теперь больше подходит ”контроллер автоматизированного выращивания растений” (КАВР). Хотя, дачные воры, пчелы, аквариумные рыбки, домашняя птица и другие подобные существа не совсем растения. Пусть ключевым словом будет ”выращивание”.
Контроллером гроубокса он становится при загрузке соответствующей программы. Программы из предыдущих статей про гроубокс на нем работают. Ниже расскажу подробнее о реализации на новом контроллере других устройств.
Описание контроллера КАВР.
Я поставил задачу создать устройство с минимальной ценой комплектующих.
- По функциям оно должно выполнять задачи управления гроубоксом.
- Добавил несколько сигналы для расширения возможностей.
- Конструктивно выполнил в виде одной платы, к которой все электрические и электромеханические компоненты подключаются через клеммные колодки, от питания 220 В, до слаботочных датчиков.
- Чтобы снизить цену, на плате установлено минимальное количество электронных элементов, но ее функции могут быть расширены дополнительными модулями.
Плата получилась размерами 75 x 61 мм. Дорожки широкие. Все компоненты подписаны. В монтажной схеме необходимости нет.
Собранный контроллер выглядит так.
Используются надежные клеммные колодки DG340 с шагом 5 мм для подключения цепей 220 В и 3,81 мм для низковольтных сигналов.
- Питание 220 В подается непосредственно на контроллер. Для защиты от короткого замыкания на плате установлен плавкий предохранитель.
- Блок питания формирует напряжение 5 В, которое используется для питания модуля NodeMCU и остальных компонентов схемы. Конечно, можно использовать внешний блок питания.
- Для управления освещением на плате установлено твердотельное реле G3MB-202P-5V. К клеммным колодкам “освещение”может подключаться нагрузка 220 В с током до 2 А.
- Исполнительные механизмы (насос полива, вентилятор влажности и вентилятор температуры) коммутируются MOSFET транзисторами с предельно-допустимым током 5 А. Выходное напряжение 5 В.
- Контроллер имеет один аналоговый вход, к которому может быть подключен аналоговый датчик: влажности почвы, освещения и т.п.
- Есть вход для датчика с цифровым интерфейсом, например DHT22. Этот сигнал также может быть использован как дискретный вход или выход.
- Для подключения модулей расширения на клеммную колодку выведены сигналы последовательного интерфейса TX и RX. К ним, например, может быть подключен MP3 модуль для формирования звуковых сигналов, GSM модем и т.п.
Вот принципиальная схема устройства.
Плата разведена под модуль NodeMCU V3. Его выводы расположены несколько шире предыдущих версий NodeMCU.
Шаг между выводами такой же. При желании можно установить узкий модуль. Но придется раздвигать выводы.
Некоторое неудобство доставляет то, что питание всех исполнительных механизмов происходит от 5 В. В принципе сейчас много вентиляторов, аквариумных насосов с таким питанием.
Можно заменить реле G3MB-202P-5V на 12ти вольтовый вариант и подать питание 12 В. Но в таком режиме стабилизатор 3,3 В на плате NodeMCU будет работать на пределе рассеиваемой мощности. Может сгореть. Возможно, в следующую версию устройства я добавлю стабилизатор 5 В для питания NodeMCU.
Другой вариант – использовать дополнительные модули реле или отдельные реле. Все выходы допускают непосредственное подключение электромагнитных реле с напряжением обмотки 5 В. Я так и сделал в своем гроубоксе.
Куплю насос на 5 В – подключу непосредственно.
Ошибка на плате.
В первом варианте платы не обошлось без ошибок.
В модуле ESP-12 выводы общего назначения GPIO6 - GPIO11 использовать нельзя. Через них к микроконтроллеру подключена FLASH-память. Я еще могу понять зачем их вывели на выводы NodeMCU, но зачем эти сигналы называть универсальными портами ввода-вывода! Я ошибся и использовал 6 и 10 пины.
Если не применяется вентилятор влажности, то можно ничего не менять. Для версий 4 и 5 с использованием вентилятора необходимо сделать 2 надреза и припаять 2 проводка на нижней поверхности платы.
Эту операцию также необходимо выполнить для использования будущих версий программы. В них будет задействована кнопка установки конфигурации.
Компоненты устройства и цена.
В этой части я расскажу, какие электронные компоненты я использовал. Цены с АлиЭкспресс с учетом доставки. Можете сами посчитать стоимость устройства.
NodeMCU V3 за 154 руб.
Часы реального времени DS3231 с батарейкой , стоимость 117 руб.
AC/DC преобразователь 5 В 700 мА, цена 87 руб.
Твердотельное реле G3MB-202P-5V. Цена 67 руб.
Остальное все копейки стоит. Например, MOSFET транзисторы AO3400 65 руб за 50 штук. Кстати, транзисторы должны быть обязательно низкопороговые. Они управляются напряжением 3 В.
Реализация контроллера гроубокса.
Как я уже писал, все электрические компоненты гроубокса подключаются непосредственно к контроллеру.
Нагрузка освещение рассчитана на 220 В до 2 А.
Все остальные выходы на 5 В.
Если используются исполнительные механизмы (насос, клапан, вентиляторы) с большим напряжением питания, то их можно подключить через реле с обмоткой на 5 В.
Подойдут и стандартные модули реле.
Активный управляющий уровень низкий.
Программная поддержка контроллера.
С этой платой работают все версии программ контроллера гроубокса.
Только в версиях 4 и 5 надо заменить вывод управления вентилятором влажности с 10 на 2.
#define HUM_FAN_PIN 2 // вентилятор по влажности _-_ (D4)
В ближайшее время собираюсь разработать новую программу для гроубокса. Имя сети, пароль, режимы, параметры в ней будут устанавливаться не в исходном коде, а по нажатию кнопки ”Установка конфигурации”. Также планируется реализовать не только режим точки доступа, но и сервер, подключаемый к существующей сети WiFi.
В дальнейшем наверняка будет программа, работающая по протоколу MQTT, что позволит управлять контроллером из любого места, где есть подключение к интернету.
Моя конструкция устройства.
Я установил плату контроллера в электрическую распределительную коробку подходящего размера.
Для полива использовал аквариумный насос и китайский набор, состоящий из форсунок, тройников и трубок.
Сейчас у меня растет инжир.
Вот короткий фильм, как работает полив.
Области применение контроллера.
Контроллер был разработан для управления гроубоксом, но может быть использован в самых разных приложениях. Насколько хватит фантазии.
- Достаточно высокопроизводительный контроллер (80 мГц) с памятью 4 мБ позволяет решать любые задачи.
- Наличие WiFi обеспечивает управление устройством с помощью смартфона а, при использовании интернета, управление возможно на бесконечном расстоянии.
- Небольшие размеры и низкое энергопотребление позволяют физически устанавливать контроллер практически где угодно.
- Низкая цена контроллера позволяет использовать его в небольших локальных задачах.
Пока мне приходят в голову следующие варианты использования устройства.
- В ближайшее время я собираюсь реализовать на нем охранное устройство. Начну с малого и буду развивать проект. Подключу светильник. Будет автоматически включаться/выключаться свет, имитируя присутствия людей на участке. Добавлю датчик приближения и MP3 модуль. Буду отпугивать воров звуками. Реализую передачу данных через интернет. Возможно, добавлю беспроводные датчики на границы участка.
- Игорю необходимо реализовать на контроллере инкубатор для пчел. Не представляю, что это такое. Он просит добавить циклически формируемый сигнал с заданными временными параметрами.
- Вполне очевидные применения в различного рода инкубаторах. Управление освещением, стабилизация температуры, вентиляция…
- Думаю, устройство может широко использоваться в аквариумной автоматике.
Думаю, время добавит еще много применений.
В следующей статье из рубрики ”Умное растениеводство” собираюсь разрабатывать новую программу гроубокса.
Прикольно будет, если включить полив и вайфай роутер подвиснет. Полив не остановится, пока все не зальёт?
Здравствуйте!
Вы же запускаете на заданное время. Оно закончится и полив остановится с WiFi или без.
Здравствуйте! Как можно приобрести данное устройство?
Здравствуйте!
Я писал, что один человек заказал платы, которые я описал в статье. Надо немного подкорректировать плату. В статье написано. Он продавал платы (пустые, без компонентов) по 300 руб плюс доставка. Если такой вариант устроит, могу у него спросить.