 |
|
06.01.2017, 11:47
|
|
AquaController
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні

06.01.2017, 11:47
Рейтинг:
(2 голосов - 5,00 средняя оценка)
Уважаемые аквариумисты, хочется поделиться информацией и опытом по созданию умной "железяки" аквариумного контроллера. За последние несколько лет развитие одно платных компьютеров и им подобных шагнуло далеко в перед. Если ранее нужно было сидеть с паяльником травить лудить и вообще обладать не дюжими знаниями в области радиоэлектроники и программирования, то на текущий момент все это упростилось на столько что появилась возможность и желание сделать все самому. А посему, сею тему буду развивать и поддерживать в силу свободного времени и развития проекта...
Основные экраны
Печатные платы
Рекомендуется использовать готовые платы для сборки контроллера и силовой части:
Контроллер выполнен в виде нескольких функционально законченных блоков. Данный контроллер построен на платформе Arduino Nano на микроконтроллере ATmega328. Основной упор при разработке делался на дешевизну проекта, поэтому использовались простые комплектующие без сенсорных экранов и прочих излишеств. За исходный функционал брался контроллер Юсупова, а так же меню и экраны управления были взяты по примеру этого контроллера. За исключением собственного функционала.
Принципиальная схема
Для тех кто хочет собрать на макетке.
Комплектующие:
Скрытый текст
Мозги:Arduino Nano ATmega328
Дисплей: LCD 2004
Блока часов реального времени (DS3231)
Силового блока:Применяются 8-ми канальные блоки реле (твердотельное), либо собственная силовая плата.
Блок связи ESP8266 модель ESP-07
Основные функции.
Скрытый текст
• Часы. Индикация даты и времени.
• Управление аквариумными нагрузками от 4 до 8 каналов.
• До 10 ежедневных программ таймера.
• До 10 ежечасных программ таймера. С диапазоном длительности работы до 60 минут.
• До 10 секундных разовых таймеров. С диапазоном длительности работы от 1 до 255 секунд.
• Поддержка до 8 цифровых датчиков температуры2. на 3-х проводной шине.
• Измерение температуры в пределах 16…35 градусов. Разрешение измерения 0.125°C. Возможность управления нагрузкой (обогревателем/охладителем) на любом канале выхода.
• Аккумулятор для работы часов МК. Сохранение хода часов.
• Автоматическое сохранение в энергонезависимой памяти всех настроек (кроме хода часов) при полном отключении питания и разряде аккумулятора.
• Управление устройством через 2-х осевой джойстик.
• Вывод информации на ЖК-дисплей 20*4 с минимальными сокращениями, интуитивно-понятный интерфейс.
• Связь со смартфоном на ОС Android по Wi-Fi. Дополнительное программное обеспечение для быстрого программирования таймеров, термостата, синхронизации времени.
• Удаленное управление устройством по средствам Wi-Fi в локальной сети (либо сети Internet при определенной настройка сетевого оборудования).
• Самостоятельная синхронизация и корректировка даты и времени устройства при наличии доступа устройству в сеть Internet. Либо удаленная синхронизация через смартфон.
• Функция слежения за отклонением показаний датчиков от среднего установленного значения со звуковым оповещением и индикацией аварийного датчика.
• Отключение нагрузки (фильтра) при нажатии одной кнопки на 5 или 30 минут (временное отключение фильтра).
• Функция слежения и оповещения за уровнем воды (перелив).
Мобильный клиент.
Скачать можно по ссылке:
Также пишется документация по работе с устройством его сборке и прошивке... Полная документация
Что из этого можно будет потрогать руками?
Практически все. Все материалы по плате, схема, разводки, gerber файлы доступны для скачивания во вложениях.
Распиновка
Скрытый текст
D6 (10), D7(11),D8(12), D9(13), D10(14), D11(15), D12(16), D13(17) - каналы используются для силовой части (реле).
D5(9) - switchPin (кнопка джойстика)
D4(8) - tonePin (канал спикера)
D3(7) - температурные датчики
A7(26), A6(25) - X,Y джойстика
A4(27),A5(28) - I2C шина, используется для подключения экрана и модуля часов.
TDX(31), RDX(30) - UART шина для обмена данных с WiFI модулем
A0(19) - waterpin (подключение датчика уровня воды)
Для чего это?
Да на форуме много тем с различными проектами аквариумной автоматики, данное устройство не претендует на какую-то оригинальность, делалось под себя, и возможно кому-то понравится данный проект... На все вопросы с удовольствием отвечу, все советы с удовольствием выслушаю...
Альтернативный источник скачивания: https://1drv.ms/f/s!AtUQdsFO3hWIgYMbwP45VuvP0xUTUA
Исходники прошивок
Все исходники доступны под MIT License по адресу: https://bitbucket.org/account/user/i...ch/projects/AQ
Последняя актуальная версия 1.3.9
- Обновлен протокол передачи данных до версии 0.6 (см. документацию)
- Добавлены уведомления о протечке (низком уровне) воды на удаленном клиенте. По умолчанию выключены.
- Добавлена возможность автоматического обновления прошивок удаленно с сервера. Данная функция настраивается только через удаленный клиент.
По умолчанию выключена.
-Добавлено кеширования основных настроек на модуле связи для ускорения подключения клиента к контроллеру.
Готовые решения
Итоговый вариант.

Мініатюри долучень
Долучені файли
 |
Schema_v1_1.zip (42,4 КБ, 2358 переглядів) |
 |
Elemets_list.zip (7,4 КБ, 2184 переглядів) |
 |
Schema_power_v1_1.zip (29,7 КБ, 2149 переглядів) |
 |
Power_gerber_v_1_1.zip (88,6 КБ, 2192 переглядів) |
 |
Power_PCB_v_1_1.zip (89,5 КБ, 2178 переглядів) |
 |
Elemets_list_power.zip.zip (7,5 КБ, 2119 переглядів) |
 |
PCB_gerber_v_1_3.zip (215,0 КБ, 2215 переглядів) |
 |
PCB_v_1_3.zip (1,17 МБ, 2207 переглядів) |
 |
AquaControllerNano-1.3.9-0.6.zip (31,1 КБ, 1882 переглядів) |
 |
AquaControllerNano-1.3.9-0.6-invers-logic.zip (31,1 КБ, 1863 переглядів) |
 |
AquaControllerESP-1.3.9-0.6.zip (261,7 КБ, 1954 переглядів) |
Востаннє редагував AquaGomel: 09.11.2019 о 23:58..
|
Переглядів: 194109
|
Ці 33 користувач(ів) сказали Дякую AquaGomel за це повідомлення:
|
AfricaNN52 (05.11.2021), AlexVOK (02.05.2017), Alserk-3 (28.05.2017), AndrewUh (05.04.2017), Arduino (07.01.2017), Asrok (11.01.2017), chack (28.03.2017), Danchik (20.07.2018), Denisios (17.10.2017), DjoserZee (12.03.2020), Floyd (25.02.2018), harn (08.06.2018), igor_tj21 (04.07.2020), imac2008 (18.01.2017), kolljj (06.01.2017), litlechina (04.05.2022), LVit (05.10.2018), mashenkaM (28.03.2017), myprog (06.01.2017), nickanya (06.01.2017), orthos (23.01.2017), Rulik (02.09.2017), Sem (06.01.2017), Star_POM (22.10.2017), Torin21 (24.03.2017), Vadim_VD (04.05.2017), Wayler (09.08.2017), xxxFeLiXxxx (18.04.2017), ya7sergey (28.03.2017), yarishNEW (18.01.2017), _Vadim (22.01.2018), Сергій М (06.01.2017), Юрий77 (06.01.2017) |
04.10.2017, 11:15
|
#286
|
Придивляюся
Реєстрація: 08.08.2017
Звідки Ви: Москва
Дописи: 61
сказав Дякую: 12
сказали Дякую 6 раз(и) в 6 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Сейчас сниму логи с контроллера, вот и я удивился когда начал сравнивать с протоколом обмена.
Поправка, это данные которые контроллер передает в есп. ИМХО это косяк не клиента, а скорее контроллера, поэтому и клиент пишет ошибку, т.к. не корректные данные приходят.
Востаннє редагував Wayler: 04.10.2017 о 11:30..
|
|
|
08.10.2017, 19:19
|
#287
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Залил новую прошивку и изменения в клиенте:
Изменения в прошивке контроллера
- изменен протокол отправки состояния каналов. ( http://www.aquaforum.ua/showpost.php...&postcount=284)
Теперь устройство отправляет состояний канала в зависимости от его работы а так же от типа таймера который включил этот канал:
"cl": [2, 2, 1, 1, 1, 1, 1, 1] - состояние канала (1 - off, 2 - on, 3-daily, 4-hour, 5-sec, 6-temp)
Изменения в прошивке модуля связи
-исправлены тайминги начальной задержки для корректной синхронизации устройств.
Изменения в клиенте
-добавлена валидация получаемых данных.
-добавлены повторных запросы на не валидные данные. Теперь в случае если контроллер не ответил или ответил не корректно, будут производиться повторные запросы.
-исправлена ошибка не обновления состояния каналов при срабатывании таймера
------------------------------------------------------
При обновлении необходимо обновить прошивку контроллера и прошивку модуля связи!
|
|
|
Ці 3 користувач(ів) сказали Дякую AquaGomel за це повідомлення:
|
|
09.10.2017, 11:35
|
#288
|
Придивляюся
Реєстрація: 08.08.2017
Звідки Ви: Москва
Дописи: 61
сказав Дякую: 12
сказали Дякую 6 раз(и) в 6 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Спасибо, все работает ))))
|
|
|
09.10.2017, 13:47
|
#289
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Wayler
Спасибо, все работает ))))
|
Ок, тогда продолжим расширять функционал клиента!
|
|
|
16.10.2017, 20:49
|
#290
|
Придивляюся
Реєстрація: 27.10.2010
Звідки Ви: Казань
Дописи: 50
сказав Дякую: 23
сказали Дякую 3 раз(и) в 3 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Здравствуйте, можете провести эксперимент, задайте два события на один канал. Я задавал интервал с 8:00 до 12:00 и с 15:00 до 20:00 на 2 канал, событие вроде записалось, но теперь моргает экран и не могу сбросить ни как. Интервалы задавал с мобильного клиента Извените что так сумбурно.
|
|
|
16.10.2017, 21:44
|
#291
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Alserk-3
Здравствуйте, можете провести эксперимент, задайте два события на один канал. Я задавал интервал с 8:00 до 12:00 и с 15:00 до 20:00 на 2 канал, событие вроде записалось, но теперь моргает экран и не могу сбросить ни как. Интервалы задавал с мобильного клиента Извените что так сумбурно.
|
Добрый вечер. Такой эксперимент провел еще на прошлой неделе. В шапке лежат прошивки версии 1.2.5 исправляющий этот баг. Изменилась логика проверки каналов. По поверхностным тестам все типы каналов теперь включаются и выключаются правильно, включая температурные таймеры. Однако возможны какие-либо краевые неучтенные случаи так как глубокие тесты не успел провести, если будут проблемы пишите будем дальше исправлять)))
|
|
|
cказали "Дякую" AquaGomel за цей допис:
|
|
17.10.2017, 13:16
|
#292
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Обновился мобильный клиент. 1.2.5
--------------------------------------------------
-Исправлены некоторые ошибки ( и добавлены новые)
-Добавлена служба мониторинга температуры. Работает в фоновом режиме собирает статистику по температурным датчикам. В
системном лотке можно узнать температуру первого датчика не запуская программу.
-Настроена правильный подсчет расхода электроэнергии (пока без учета температурных таймеров)
-Добавлена информация по температуре для всех датчиков. На вкладке температурных таймеров.
-Добавлены графики изменения температуры для первых двух датчиков. (Нажатие на иконки температуры с главного окна)
-Добавлена синхронизация времени контроллера с временем телефона (через контекстное меню).
-Добавлена настройка GMT часового пояса для правильной синхронизации времени.
-Добавлена информация о типе таймера включившего канал

---------------------------------------------------------------
Как всегда замечания и багрепорты приветствуются!
Востаннє редагував AquaGomel: 17.10.2017 о 15:54..
|
|
|
17.10.2017, 17:24
|
#293
|
Придивляюся
Реєстрація: 15.09.2012
Звідки Ви: Харьков
Дописи: 55
сказав Дякую: 13
сказали Дякую 9 раз(и) в 7 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
AquaGomel, а вы не планировали полностью отказаться от дисплея? Так как предполагаю, что код под его обработку занимает не мало места, а это место можно использовать под другие функции, ведь можно все установки через мобильный клиент сделать.
|
|
|
17.10.2017, 18:27
|
#294
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Denisios
AquaGomel, а вы не планировали полностью отказаться от дисплея? Так как предполагаю, что код под его обработку занимает не мало места, а это место можно использовать под другие функции, ведь можно все установки через мобильный клиент сделать.
|
Отказавшись от дисплея мы сильно усложним задачу большинству аквариумистов. Удаленный доступ к устройству это всего лишь возможность повысить комфорт и информативность для конечного пользователя, по сути для того что бы настроить и забыть. Ну и как максимум получить информацию удаленно если что-то случиться. Хотя опять же сомнительная функция. Если мне на работе придет уведомление о том что упала температура или выключится какой-то канал. А я буду на работе, смысл такого уведомления. Вообще есть тысяча причин почему дисплей должен быть, прежде всего это индикатор того что устройство работает правильно. Хотя даже в этом случае есть вероятность обратного, но она гораздо меньше если мы через кучу устройств будем слать команду состоянии и управления рассчитывая что все сработает как мы думаем...
По поводу объема кода: да отъедает не мало места. Но есть более простые способы нарастить функционал не в ущерб удобству. В рамках текущего контроллера о них мы говорить не будем, хотя забегая в перед скажу что работы в этом направлении ведутся... 
|
|
|
17.10.2017, 19:47
|
#295
|
Придивляюся
Реєстрація: 15.09.2012
Звідки Ви: Харьков
Дописи: 55
сказав Дякую: 13
сказали Дякую 9 раз(и) в 7 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
AquaGomel, подскажите пожалуйста, возможно ли добавить поддержку датчика влажности si7021?
|
|
|
17.10.2017, 21:08
|
#296
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Denisios
AquaGomel, подскажите пожалуйста, возможно ли добавить поддержку датчика влажности si7021?
|
В этой версии функционал меняться не будет. В следующей датчик влажности и давления будет присутствовать. Но это не прямо сейчас. Тут бы обкатать прошивку с текущим функционалом.
|
|
|
17.10.2017, 21:51
|
#297
|
Придивляюся
Реєстрація: 15.09.2012
Звідки Ви: Харьков
Дописи: 55
сказав Дякую: 13
сказали Дякую 9 раз(и) в 7 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
|
|
|
17.10.2017, 21:56
|
#298
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Denisios
|
Уже заготовлен BME280.
|
|
|
18.10.2017, 16:48
|
#299
|
Придивляюся
Реєстрація: 27.10.2010
Звідки Ви: Казань
Дописи: 50
сказав Дякую: 23
сказали Дякую 3 раз(и) в 3 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Здравствуйте, не совсем понял логику работы температурного датчика. Установил температуру включения 25 градусов, отключения 26 градусов, в итоге он включается ниже 25 градусов, а выключается выше 25 градусов. Канал фильтра по умолчанию №1 и как сделать выключение на 30 минут? Спасибо заранее
|
|
|
18.10.2017, 17:16
|
#300
|
Живу я тут
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
|
Re: AquaController ===www.aquaforum.ua===
Цитата:
Допис від Alserk-3
Здравствуйте, не совсем понял логику работы температурного датчика. Установил температуру включения 25 градусов, отключения 26 градусов, в итоге он включается ниже 25 градусов, а выключается выше 25 градусов. Канал фильтра по умолчанию №1 и как сделать выключение на 30 минут? Спасибо заранее
|
По поводу настройки температуры: http://aquacontroller.ru/ru/set/menu/temperatura
Вы задаете интервал поддержания температуры в аквариуме: Первое значение это нижняя граница когда грелка включиться верхнее когда она выключиться.
"30 мин" Я так понимаю идет речь про временное отключение фильтра? Курсор вверх удерживаем в течении 3-5 сек отключение на 5 мин вниз на 30 мин...
|
|
|
 |
|
Тут присутні: 1 (учасників - 0 , гостей - 1)
|
|
Параметри теми |
|
Параметри перегляду |
Лінійний вигляд
|
Ваші права у розділі
|
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи
HTML код Вимк.
|
|
|
Часовий пояс GMT +3. Поточний час: 08:10.
|