Универсальный аквариумный контроллер на Ардуино (AquaController on Arduino Nano)
Разработал Павел Комаристый, г. Калининград
Основной функционал:
плавное включение-выключение освещения (рассвет-закат) 2 канала + люминесцентные лампы;
контроль температуры (включение выключение обогревателя);
подача жидких удобрений по времени (Микро, Макро, Железо);
контроль системы фильтрации (вкл-выкл по расписанию);
контроль подачи CO2 в аквариум (вкл-выкл по расписанию);
установка часов и календаря;
режим "Профилактики" с возможностью ручного включения-выключения исполнительных устройств (освещение, фильтр, обогрев, CO2);
Также планировалось реализовать автоматическое кормление рыб, посредством управления шаговым двигателем и созданием механической части самой кормушки, но руки пока не дошли, да и памяти и выходов Arduino Nano явно недостаточно.
Итак для сборки АкваКонтроллера нам понадобится:
1. Arduino Nano v 3.0 ATMEGA328P;
2. Модуль часов реального времени DS3231 I2C RTC;
3. LCD display 2004A I2C;
4. Блок реле 5V 4 канала;
5. Датчик температуры DS18B20 водонепроницаемый;
6. Три Дозирующий перистальтических насоса DC 12V;
7. Блок питания или драйвер 12V (для питания самой схемы и светодиодного освещения;
8. DC-DC преобразователь XL6009;
9. Ну и по мелочи: несколько мосфетов, транзасторов, тактильные кнопки 6*6*25 мм, китайская USB зарядка 5V, пищалка (buzzer 12085) и др.
Схема акваконтроллера представлена ниже:
Позже, после сборки схема была несколько доработана (добавлены подтягивающие резисторы в цепи затвора-истока мосфетов для предотвращения ложных запусков перистальтических насосов, рализовна полная гальваническая развязка блока силовых реле с основной схемой для предотвращения помех, и установлены LC-фильтры в цепи питания Ардуины и на нагрузочные розетки исполнительных устройств (особенно на розетку люминесцентных ламп с пускателем). Итоговую схему вы можете наблюдать ниже:
Почти все собрано навесным монтажем с помощью соединительных проводов (продаются такие специально для ардуины). На печатной плате спаяна только силовая часть (мосфеты) и кнопки управления.
Итак, изготавливаем печатные платы:
Припаиваем на платы электронные компоненты:
Выше показана также распайка соединения дисплея с кнопками с основной частью акваконтроллера посредством разъемов USB.
Кнопки 6*6*8 мм, показанные на фото, впоследствии были заменены на более подходящие для корпуса, а именнно вот на такие (6*6*25) :
Далее объединяем в корпус подходящего размера (125х83х32 мм) LCD дисплей и плату с кнопками управления:
Собираем из подручных материалов (ДСП и оргстекло) основной ящик-корпус акваконтроллера:
Оклеиваем корпус самоклейкой, и начинаем собирать основные блоки акваконтроллера в корпусе:
Первоначально у меня розовые полноспектральные светодиоды запитывались от отдельного драйвера на 34 Вольта 700 мА (его видно на 1 фото выше (маленький такой, расположен над USB зарядкой черного цвета, которая предназначена для запитывания блока реле) ), но позже выяснилось что данный драйвер не поддерживает диммирование (светодиоды начинают мигать при диммировании). Поэтому было принято решение заменить данный драйвер на DC-DC преобразователь XL6009, выставленный на выдачу 34 Вольт, и более мощный драйвер 12 Вольт 6.3 А (72 Ватта)(данная модель драйвера диммируется без проблем), от которого и запитывается вся схема, включая силовую часть со светодиодами и светодиодными полосками.
Полноспектральные светодиоды использованы на 3 Вт х 10 штук. Каждый рассчитан на 3.4 Вольта 700 мА. Белые светодиодные COB полосы (6500K), на 12 Вольт, 10-12 Ватт каждая также запитываются от общего источника питания 12В. Вот как выглядят светодиоды и полосы:
Питание к светодиодам освещения у меня подводится с помощью старого советского стереофонического аудиокабеля ( у него 4 отдельных жилы и экран (2 жилы для питания полноспектральных светодиодов, и 2 жилы запаралеленных друг с другом + экранная оплетка для питания белых светодиодных полос (у них повышенная нагрузка по току, поэтому так сделано) ) ). Соединяется кабель с помошью DIN разъема и гнезда 5-контактного (тоже аудио). Ниже показано это соединение + заводка удобрений и CO2 в аквариум:
И вот как выглядит конечная паутина проводов и элементов. Не очень эстетично, но зато работает! :
А вот так смотрятся смонтированные розетки (делал из того что было в наличии дома, поэтому розетки разные, где-то двойные, где-то одинарные) и перистальтические насосы:
Лицевая часть корпуса акваконтроллера:
Удобрения подаются из бутылочек с помощью трубок из под капельницы (Система), купленных в аптеке:
А вот так смотрится дисплей с кнопками управления:
И общий вид на аквариум:
А теперь давайте пройдемся по программной части акваконтроллера. Примерная блок-схема работы программы представлена ниже:
Главное меню Акваконтроллера, его экраны с настройками представлены ниже:
Думаю все понятно и без описания, что да как. Кроме этого еще есть несколько менюшек с настроками часов реального времени, режима "Профилактики" в котором можно вручную включать и выключать освещение (розовое, белое, и люминесцентные лампы), фильтр, обогреватель и подачу CO2. И тестовое окно для проверки работы перистальтических насосов :
Вот скомпилированный скетч в IDE Arduino:
Занимает 30718 байт памяти устройства (99%). Как видите все под завязку!
Ну и вот собственно сам скетч и архив проекта скачайте во вложении. AquaController_Archive.rar
В заключение можно посмотреть видеообзор (общее устройство, основные функции, пункты меню, демонстрация рассвета-заката) данного Акваконтроллера:
https://youtu.be/BTeF2GSRsYw
- Вложения
-
- AquaController_Archive.rar
- И напоследок можно скачать архив проекта: AquaController_Archive.rar
ардуино аквариум контроллер
- (879.71 KiB) Скачиваний: 444