Простой контроллер для аквариума на ARDUINO

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

Это старый проект, он рабочий, но обновляться больше не будет!
Новый проект с управлением светодиодным светом находится тут ССЫЛКА на проект.

В интернете очень много подобных схем, я же хочу предложить один из простейших вариантов. Я не претендую на оригинальность и лучший код. Такой приборчик у меня трудится у же 4 года без серьёзных поломок.

Для начала определимся что нам нужно — сколько каналов для 220в нагрузок, сколько для 12в нагрузок.

Я выбрал 5 каналов 220в: 4 независимых канала с периодом 30 мин (48 интервалов на сутки), один отдельный канал для углекислоты.
Для охлаждения будем использовать компьютерный вентилятор на 12в
Плюс к этому я хочу видеть состояние каналов в реальном времени, поэтому добавим ко всему LCD дисплей.
Управлять всей этой красотой будем с помощью одного энкодера. Переходы по меню нажатием на энкодер, переход по значениям внутри одного меню — поворотом энкодера. Для изменения значения, нужно нажать на энкодер и не отпуская повернуть в нужную сторону.
После прошивки контроллера нужно отключить питание, зажать энкодер нажатым и заново подключить питание. Подождать до появления вот такой картинки

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

Список необходимых комплектующих под спойлером

Необходимые комплектующе:

1. Arduino nano 3.0 с Atmega 328p на борту

Ссылка на али: Купить
2. Дисплей 1602 с модулем I2c

Ссылка на али: Купить
3. Датчик температуры Ds18b20 В герметичном корпусе
Ссылка на али: Купить
4. Часы реального времени DS3231
Ссылка на али: Купить
5. Модуль реле на 4 канала и еще один на 1 канал
Ссылка на али: Купить
5. Или модуль твердотельных реле (более надежный вариант)
Ссылка на али: Купить
6. Модуль с силовым ключем
Ссылка на али: Купить
6. Понижающий Преобразователь
Ссылка на али: Купить
7. Энкодер, 1шт

Ссылка на али: Купить

Для монтажа потребуются провода, разъемы, макетные платы для сборки драйверов, принадлежности для пайки:

1. Отличный монтажный провод

Ссылка на али: Купить
3. Хороший припой
Ссылка на али: Купить
4. Макетные платы
Ссылка на али: Купить
5. Флюс безотмывочный RMA 223
Ссылка на али: Купить
7. Паяльник с регулировкой температуры

Ссылка на али: Купить

Схемы проекта и прошивки

Схема и прошивка

Перед сборкой нужно настроить понижающий преобразователь на 5В

Прошивка:

После сборки по схеме остается залить прошивку.

Файл прошивки лежит ТУТ Обновлен 22 ноября 2019г.

Прошиваем один HEX с помощью простейшей программы XLoader:

Работать с ней предельно просто:
— подключаем Arduino в USB-порт (отдельного питания не нужно)
— выбираем Hex файл
— выбираем тип Вашего Arduino
— выбираем COM порт, который создался при подключении Arduino к USB (скорость порта автоматически подставится при выборе типа Arduino)
— жмем Upload

Архив с программой Xloader.zip

Варианты, схемы силовых плат:

Силовая плата может быть как на основе реле:

Обычных

При использовании таких реле и индуктивной нагрузки (двигатели, помпы, фильтры) во избежании помех на контроллер следует поставить RC фильтр:

R=100 Oм, C=0.1мкФ*630V

или твердотельных

Так и на основе симисторов:

Файл платы для Sprint в формате lay6 СКАЧАТЬ

Если есть вопросы, то их можно обсудить в соответствующей теме ССЫЛКА НА ТЕМУ

Простой контроллер для аквариума на ARDUINO: 23 комментария

    1. Pf

      Добавить рассвет — закат — луна было б вообще здорово! Автору респект!

  1. сергей

    Всем привет .ПРОДЕЛАЛ ПРОЕКТ ..со2 4 реле и температура .. прошу помощи ..
    меню разьяснить —переключение джойсиком .. — один режим работал по температуре ..пока щелкал остальные 1234 реле разобраться .. после включения реле щелкают но не в режиме программы молчат .. например ..подсветка экранчика ..крутил присматревался к стреле ..где как ..можно случайно включить ..

    1. Analog Автор записи

      Добрый день.Переходы по меню нажатием на энкодер, переход по значениям внутри одного меню — поворотом энкодера. Для изменения значения, нужно нажать на энкодер и не отпуская повернуть в нужную сторону.

  2. Уведомление: Контроллер для аквариума с LED на ARDUINO | AQUAkmv

  3. Андрей

    Отличный контроллер, это то что я искал, спасибо большое автору. Пару месяцев использования полет нормальный. Сборка удалась не с первого раза. По началу вылетали глюки в виде иероглифов, отказа энкодера, просто зависания и отключение дисплея. Не знал на что грешить, в итоге заказал еще один полный пакет комплектующих, новая сборка тоже не увенчалась успехом. А в итоге оказалось дело в проводах которые фонили. Сменил провода, изолировал фольгой и все отлично. Собрано в деревянном корпусе. Но осталась одна небольшая проблемка это немного тупит энкодер при прокручивании, но это не страшно, т.к. настройки меняются редко. В итоге у меня деревянный ящик с 6ю розетками(5 через реле и одна прямая на случай всякий что то подключить или вечером возишься в аквариуме и что бы не лезть в настройки просто переставляешь свет в прямую) в итоге вертикальный ящик с 6 розетками, энкодером и дисплеем

  4. Иван

    Здравствуйте, пытаюсь разобраться в теме аквариумов на МК и наткнулся на ваш. Возникло несколько вопросов. Обязательно ли подключать вентилятор через Mosfet? Нельзя ли убрать отдельную релешку взяв более крупный блок из 6-ти?

  5. Иван

    Надо было одним комментарием все вопросы сразу задать.
    Можно ли обойтись без мосфета, и подвести вентилятор на один из каналов реле?
    Обязательно ли использовать понижающий преобразователь, если учесть что вентилятор запитан отдельно?
    Заранее спасибо за ответ!

    1. Analog Автор записи

      Мосфет для 12в вентилятора, в новой версии вентилятор будет с PWM, для плавного разгона в зависимости от температуры. Преобразователь желателен в любом случае.

  6. Ghenadie

    привет, спасибо за идею и конструкцию если это возможно пришлите пожалуйста
    arduino скетьчь «Простой контроллер для аквариума на ARDUINO»
    по е-почте .
    зарание блогодарин Г.

  7. Вячеслав

    Вечер добрый. Собрал акваконтроллер по первой схеме. Еще толком не разобрался с работой каналов. Непонятна логика работы каналов 1-4. Можно ли сделать время работы так же как и у канала со2, от какого то времени до какого то определенного ?

    1. Analog Автор записи

      Добрый, логика проста — сутки разбиты на интервалы по 30 минут, в каждый интервал нагрузку можно или включить или выключить. Очень похоже на механический таймер.

      1. Максим

        Добрый вечер. Возможно ли в схеме заменить ds3231 на ds1302? Другого просто нет под рукой а заказ долго ждать. Помогите к каким контактам его можно подсоединить и реально ли? Понимаю что в скейче менять надо еще но хотя бы практически.

  8. Дмитрий

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *