Универсальный аквариумный контроллер на Ардуино AquaControl

Обсуждаем цифровые устройства...
Ответить
paradoxin
Родился
Сообщения: 1
Зарегистрирован: Чт мар 28, 2013 16:18:06

Универсальный аквариумный контроллер на Ардуино AquaControl

Сообщение paradoxin »

Универсальный аквариумный контроллер на Ардуино (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 КБ) 592 скачивания
Реклама
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15575
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение BOB51 »

Как учебный макет начинающего адуринкопользователя еще вполне прилично смотрится.
Как работающий экземпляр - разве что попытка собрать платки периферии неплохо смотрится.
:roll:
Относительно той "паутины", обеспечивающей межблочный монтаж...
:facepalm:
Да и по тексту самой программки есть где поработать над содержимым.
Минус архива с прожкой - не добавлены файлы библиотек, используемых в основном проекте.
Может у Вас они и установлены, но не у всех потребителей оные могут иметься.
Искать по разносайтам в инете не лучшее удовольствие (тем более версии могут весьма отличаться).
8)
Вобщем как для начинающего - вполне пригодная самоделка.
А вот для повторения конструкции/мелкосерийки предлагать весьма рано.
:beer:

Вопросец...
Зачем выбиралась частота 62,5 КГц для осветительных светодиодов?
Из соображений реакции/восприятия рыбок/водорослей или из соображений восприятия наблюдателем?
:dont_know:
Обычно максимум 200Гц ставится (62,5-128Гц).
Тогда и проблемы с "длинными линиями" нагрузки у полевиков уйдут.
Сами же полевики предпочтительно группы logic level (IRLZ44 к примеру).
:roll:
Реклама
igor_tj21
Родился
Сообщения: 8
Зарегистрирован: Вс мар 03, 2013 16:51:53

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение igor_tj21 »

как изменить скетч под дисплей 1602,а то полный ноль в программирование.
Morroc
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение Morroc »

Что вы подразумеваете под "изменить" ? Воткните 1602, вполне возможно заработает, но с двумя строками. Как вы себе представляете сделать из 4х строчек 2 ?
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15575
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение BOB51 »

[uquote="igor_tj21",url="/forum/viewtopic.php?p=3864492#p3864492"]как изменить скетч под дисплей 1602,а то полный ноль в программирование.[/uquote]
Обратиться к автору проекта.
Заказать в разделе https://radiokot.ru/forum/viewforum.php?f=53, указав собственные "хотелки"...
:roll:
Реклама
Morroc
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение Morroc »

Быстрее будет индикатор найти, да и дешеале наверное )
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Реклама
Wladimir_TS
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Re: Универсальный аквариумный контроллер на Ардуино AquaCont

Сообщение Wladimir_TS »

При наличии подачи СО2 разве не нужно контролировать Ph ? (Просто как-то повторял на заказ подобную конструкцию для одного знакомого - там был контроль Ph) во вторых система автономного питания крайне желательна - лепездричество бывает на сутки отключают. Контроль уровня воды для автодолива.

Дисплей в корпусе лучше монтировать так, что-б рамка была за передней панелью, а то выглядит кустарновато. Для конечного пользователя лучше сделать больше кнопок, чем систему с многоуровневым меню. Хотя тут кому как.

Но так - неплохая конструкция - начало положено - впереди еще есть куда стремиться.
Ответить

Вернуться в «Цифровая техника»