 |
|
17.03.2014, 13:10
|
|
Простой акваконтроллер ARDUINO
Живу я тут
Реєстрація: 11.07.2013
Звідки Ви: Киев (Борщаговка)
Дописи: 665
сказав Дякую: 106
сказали Дякую 535 раз(и) в 244 повідомленні

17.03.2014, 13:10
Рейтинг:
(9 голосов - 5,00 средняя оценка)
Аква контроллер ARDUINO.
(Обратите внимание на доработанный вариант от форумчан. Ссылка внизу!)
( ПродолжениеПростой акваконтроллер ARDUINO v.2 (LED море))
(ГОТОВЫЕ КОНТРОЛЛЕРЫ НЕ ПРОДАЮ)
Решил ознакомиться я с ARDUINO, за одно порадовать своих рыбасей.
Сделать им(себе) доп удобства за минимальную цену и с минимальным напрягом по времени.
На eBay заказал.
Контроллер
Arduino PRO Mini ATMEGA328P 5V 16M (16MHZ) + CP2102 модуль + кабель = полный комплект для программирования - US $3.18
Часы реального времени
I2C RTC DS1307 AT24C32 Real Time Clock Module for Arduino + Батарейка US $1.15
Индикатор 84*48 LCD Module White backlight adapter PCB for Nokia 5110 Arduino US $1.83
Влагозащищенный цифровой датчик температуры
DS18b20 Waterproof Temperature Sensors (5м нормального кабеля) US $3.7
В качестве блока питания зарядка от iPhon там же за 1 бакс.
Еще немного мелочи типа симисторов и опторазвязки для силовой части.
Что вышло в итоге.
Аква контроллер с энергонезависимыми часами реального времени.
Графический экран с регулировкой яркости подсветки и контрастности.
Управление 13-ю нагрузками.
Куча таймеров, ограничил по 25 на канал (памяти хватит на 500).
Поддержка режима «кормление» - отключается фильтр на 20 мин.
Цифровой термометр и управление нагревателем и охладителем(в моем случае кулер).
Органы управления
1 кнопка отмена
2 кнопка вверх
3 кнопка вниз
4 кнопка ОК
Нагрузки
D10 куллер (С регулировкой оборотов)
D11 ЛЕД (Восход/закат)
А0 1W (термометр)
D12 Фильтр
D13 Нагреватель
D1 СО2
D0 Компрессор
А1 Свет1
А2 Свет2
А3 УДО Микро
А4 УДО Макро
А5 УДО Железо
А6 Управление БП
Себестоимость контроллера чуть больше 10 баксов.
На картинке силовая часть в виде готового релейного модуля (такие есть и на 8 каналов - цена около 8 баксов), я использовал свою плату силовой части - схема и печатка во вложении(плату изготавливал по ЛУТ технологии).
Все проверено - работает.
Все комплектующие покупались на ибей и цены ориентировочные доставке везде БЕСПЛАТНАЯ.
ВАЖНО.
соединять ардуино и часы проводниками минимальной длинны !!!
Варианты скетча:
MIHS, скетч с измененными буквами.
Одна из лучших реализаций от форумчан
burnashev https://www.aquaforum.ua/showpost.ph...postcount=1221
Ant0ny https://www.aquaforum.ua/showpost.ph...postcount=1224
Мініатюри долучень
Долучені файли
 |
libraries.rar (225,8 КБ, 5026 переглядів) |
 |
aqua_controll_PNG.zip (1,59 МБ, 5040 переглядів) |
 |
aqua_controll_spl7.rar (237,5 КБ, 4493 переглядів) |
 |
aqua_controll.rar (9,1 КБ, 4894 переглядів) |
 |
220_v3.rar (18,4 КБ, 4530 переглядів) |
Востаннє редагував AlexVOK: 01.02.2019 о 23:47..
|
Переглядів: 550113
|
Ці 48 користувач(ів) сказали Дякую AlexVOK за це повідомлення:
|
AkaPain (28.08.2015), Alex Meng (30.10.2017), Andressio (01.02.2015), Ant0ny (08.07.2018), Arduino (03.12.2016), burnashev (16.09.2018), chack (10.12.2014), Denisios (27.05.2014), dimul (29.04.2014), Floyd (09.07.2018), Gorbounov (20.09.2014), h_a_m (12.01.2015), imac2008 (20.12.2015), kolljj (20.11.2014), Litr55 (24.02.2021), LVit (20.01.2016), Mehannik (11.11.2014), MIHS (27.01.2016), Multiman (27.03.2015), nanolab (18.03.2015), Olegvs (25.03.2017), PaninAV (07.09.2018), paradox860 (22.12.2014), pdv1965 (20.03.2014), RozarioAgro (10.03.2015), rusianGrt (09.10.2017), sae74 (22.08.2014), sefr111 (28.04.2016), Sem (22.03.2015), Sikx (30.01.2019), Slesh (18.10.2014), Spiker (12.11.2015), spolyakov (20.06.2015), steals81 (17.03.2014), Toha24510 (22.10.2015), Tvister86 (07.02.2017), ya7sergey (09.02.2017), _Vadim (27.02.2016), _Константин_ (28.03.2016), акв@фанат (23.11.2014), Артур Дент (24.04.2014), Ветал (08.03.2016), Вячеслав Сергеев (14.09.2015), Игорь-1 (30.10.2014), Никола73 (31.03.2017), Петко Шкодров (18.10.2014), Сан Саныч (07.10.2024), Юрий77 (26.02.2016) |
15.01.2019, 22:22
|
#1216
|
Живу я тут
Реєстрація: 18.11.2011
Звідки Ви: Россия
Дописи: 182
сказав Дякую: 11
сказали Дякую 12 раз(и) в 11 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від evrebodylies
О какой конкретно схеме идёт речь?
|
Схема одна и она в шапке, но на ней полевик неверно подключен и выше дал один из вариантов верного подключения. Смотрите проверяйте, разбирайтесь...
|
|
|
16.01.2019, 12:38
|
#1217
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Сегодня попробую поставить энкодер вместо кнопок, да и возможно кнопку кормления отдельно, не знаю как пойдёт)
tropfish.org.ua
__________________
ParkZoo Fish
__________________ 
|
|
|
20.01.2019, 20:31
|
#1218
|
Придивляюся
Реєстрація: 20.01.2019
Звідки Ви: г. Ставрополь
Дописи: 2
сказав Дякую: 3
сказали Дякую 2 раз(и) в 1 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Думал купить таймер для аквариума, но случайно набрёл на эту тему- спасибо автору. Совсем не програмист, но когда-то баловался радиолюбительством (паял разные мелочи и несколько Spectrum-ов)- решил попробовать.С Али пришло всё кроме силовой части(где-то потерялось), спаял,прошил(всё из шапки)- сразу получилось. Чтобы быстрее запустить, отрезал кусок
платы с 5-ю кнопками от старого тьюнера, перерезал ненужные дорожки, припаял резисторы по схеме и соединил с платой. На некоторые выходы ардуинки припаял светодиоды для наглядности. Перепробовал почти все скетчи. Лучше шьёт arduino-1.8.8 (проверить const в библиотеке). Остановился на версии AntOny с русификацией MIHS, добавил его же улучшения и
доработки AlexVOK.
Дальше, поскольку кнопки Вверх-Вниз и Отмена-Ок на схеме попутаны местами, решил их поправить. Посмотрел что показывает key_test ,подумал и переставил их назначение в скетче. Как ни странно- получилось.
Тут захотелось использовать 5-ю кнопку (для режима кормления -чтобы не искать в меню), добавил к ней резистор 1.8k - проверил key_test-ом и по аналогии с другими кнопками вставил
в скетчь, дальше нашёл где задаётся кормление и продублировал этой кнопкой. Опять получилось.
Насчёт датчиков ds18b20- подпаял один,смотрю -что-то он врёт, занижает
температуру. Сравнил с термометрами(один старый советский с подписью контролёра
и коррекционной таблицей)- ошибка -3.3*, подпаял второй -1.2*, третий оказался почти
точным. Методом научного тыка в скетче удалось это поправить- строку cur_temp = getTemp();
переделал в cur_temp = getTemp()+3.3; .
Контролер стал показывать точно и отрабатывает по этой температуре.
С паразитным питанием ds18b20 тоже работает- можно соединять двумя проводами.
Получился отличный контроллер!
Но возник один вопрос.
ШИМ у pro mini 8-ми разрядный-то есть должно быть 255 ступенек яркости, но поскольку на выход изменения проходят раз в минуту, то при времени рассвета 127 мин. получается 127 ступенек-то есть 7 разрядов. Соответственно если выставить 1час- то 6,
а полчаса-5 разрядов(30 ступенек яркости).
Можно ли это исправить? Возмётся кто-нибуть за эту задачку?
|
|
|
20.01.2019, 20:36
|
#1219
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Скрытый текст
Цитата:
Допис від Sikx
Думал купить таймер для аквариума, но случайно набрёл на эту тему- спасибо автору. Совсем не програмист, но когда-то баловался радиолюбительством (паял разные мелочи и несколько Spectrum-ов)- решил попробовать.С Али пришло всё кроме силовой части(где-то потерялось), спаял,прошил(всё из шапки)- сразу получилось. Чтобы быстрее запустить, отрезал кусок
платы с 5-ю кнопками от старого тьюнера, перерезал ненужные дорожки, припаял резисторы по схеме и соединил с платой. На некоторые выходы ардуинки припаял светодиоды для наглядности. Перепробовал почти все скетчи. Лучше шьёт arduino-1.8.8 (проверить const в библиотеке). Остановился на версии AntOny с русификацией MIHS, добавил его же улучшения и
доработки AlexVOK.
Дальше, поскольку кнопки Вверх-Вниз и Отмена-Ок на схеме попутаны местами, решил их поправить. Посмотрел что показывает key_test ,подумал и переставил их назначение в скетче. Как ни странно- получилось.
Тут захотелось использовать 5-ю кнопку (для режима кормления -чтобы не искать в меню), добавил к ней резистор 1.8k - проверил key_test-ом и по аналогии с другими кнопками вставил
в скетчь, дальше нашёл где задаётся кормление и продублировал этой кнопкой. Опять получилось.
Насчёт датчиков ds18b20- подпаял один,смотрю -что-то он врёт, занижает
температуру. Сравнил с термометрами(один старый советский с подписью контролёра
и коррекционной таблицей)- ошибка -3.3*, подпаял второй -1.2*, третий оказался почти
точным. Методом научного тыка в скетче удалось это поправить- строку cur_temp = getTemp();
переделал в cur_temp = getTemp()+3.3; .
Контролер стал показывать точно и отрабатывает по этой температуре.
С паразитным питанием ds18b20 тоже работает- можно соединять двумя проводами.
Получился отличный контроллер!
Но возник один вопрос.
ШИМ у pro mini 8-ми разрядный-то есть должно быть 255 ступенек яркости, но поскольку на выход изменения проходят раз в минуту, то при времени рассвета 127 мин. получается 127 ступенек-то есть 7 разрядов. Соответственно если выставить 1час- то 6,
а полчаса-5 разрядов(30 ступенек яркости).
Можно ли это исправить? Возмётся кто-нибуть за эту задачку?
|
Классно, могу скинуть свою версию со всеми плюшками по теме которые как не программист смог всунуть)
tropfish.org.ua
__________________
ParkZoo Fish
__________________ 
Востаннє редагував burnashev: 26.01.2019 о 12:07..
|
|
|
25.01.2019, 23:15
|
#1220
|
Придивляюся
Реєстрація: 20.01.2019
Звідки Ви: г. Ставрополь
Дописи: 2
сказав Дякую: 3
сказали Дякую 2 раз(и) в 1 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від burnashev
Классно, могу скинуть свою версию со всеми плюшками по теме которые как не программист смог всунуть)
|
Интересно посмотреть.
Попробую выложить скетч и схему с доп. кнопкой кормление и поправками.
|
|
|
Ці 2 користувач(ів) сказали Дякую Sikx за це повідомлення:
|
|
26.01.2019, 12:02
|
#1221
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Всем доброго времени суток !
Пытаюсь все доработать контроллер и уже почти все готово огромное спасибо Ant0ny ,
за его труды с коррекцией времени и наконец-то заработало удо без задержки контроллера, по секундный лэд для смягчения ступенек ,а так же на кнопку назад добавлена функция кормления спасибо sergeyaz с другого форума , что облегчает работу .
Прошу помощи в решении этих вопросов!)
также планируется:
1) PH sensor
2) разделение таймеров удо для каждого отдельно
3) и перебрать под это меню чтоб было более лаконично
4) прикрутить энкодер модуль но придется или пожертвовать функциями или добавлять расширитель портов
ну и конечно просьба ко всем кто может по тестить посмотреть и рассказать как да что
в архиве скетч и все библиотеки на сегодня убрал включение бп на пин А6
 
__________________
ParkZoo Fish
__________________ 
Востаннє редагував burnashev: 18.02.2019 о 07:35..
|
|
|
Ці 2 користувач(ів) сказали Дякую burnashev за це повідомлення:
|
|
26.01.2019, 16:30
|
#1222
|
Живу я тут
Реєстрація: 18.11.2011
Звідки Ви: Россия
Дописи: 182
сказав Дякую: 11
сказали Дякую 12 раз(и) в 11 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
burnashev, 
Если датчик в обрыве и контроллер перезагрузится - то нагрев не включится:
Цитата:
if (cur_temp < (float)T_N) {
изменить на
if (cur_temp < (float)T_N && cur_temp > 10.0 ) {
|
а на случай обрыва во время работы:
Цитата:
if (cur_temp >= (float)T_N + 0.2 )
заменить на
if (cur_temp >= (float)T_N + 0.2 || | cur_temp < 1)
|
Благодарите за это Петко Шкодров
|
|
|
cказали "Дякую" GreyJester за цей допис:
|
|
26.01.2019, 16:38
|
#1223
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від GreyJester
burnashev,
Если датчик в обрыве и контроллер перезагрузится - то нагрев не включится:
а на случай обрыва во время работы:
Благодарите за это Петко Шкодров
|
У меня другие обозначения) ну в любом случае попробую
tropfish.org.ua
__________________
ParkZoo Fish
__________________ 
|
|
|
28.01.2019, 20:40
|
#1224
|
Придивляюся
Реєстрація: 08.07.2018
Звідки Ви: Суми
Дописи: 16
сказав Дякую: 12
сказали Дякую 5 раз(и) в 3 повідомленні
|
Відповідь: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Мій дошліфований варіант скетчу. На основі скетчу MIHS і мого попереднього варіанту.
Переробив управління LED, світанок/захід. Переніс його в посекундний цикл для плавності. А то були помітні стрибки.
Ще з попереднього варіанту в меню настройки часу додав меню коррекції ходу годинника. Коррекція раз на добу, 30 хвилин після півночі. І скрінсейвер.
Прямий вхід в меню Настройки кнопкою Enter.
Прямий вхід в настройку яскравості LED кнопкою Вгору, Enter з цього меню фіксує виставлене значення, Esc виключає LED.
Кнопки Вниз і Esc - як і було, вхід в меню.
І основне: використавши ідею автора реалізував відновлення після виключення/включення чи сбросу. В Setup прокручується весь розклад, і якщо час менше ніж тепер, запам'ятовується стан кожного каналу вкл. або викл. Після циклу відповідно включаються, які "виловились".
Цикл читання розкладу виніс в окрему функцію, яку визиваю на старті або в основному циклі з різними параметрами.
Один недолік - записи в розкладі повинні бути в хронологічному порядку, інакше - який останній, той і спрацює. (Це тільки в Setup). І ще на старті читаються тільки сьогоднішні записи, у мене всі дні тижня в розкладі включені, тому не заморочувався.
Ага, ще переробив управління УДО. Позбавився delay, в розкладі задаю кількість секунд включення каналу, а в посекундному циклі перевіряю чи більше нуля, включаю якщо так і віднімаю секунду. І так до нуля, тоді виключаю. Тривалість буде до 252 секунди. Якщо треба більше, то треба збільшувати розрядність змінних. Я сам УДО не використовую, так, зачепив заодно
Ще одне: У мене на двох різних Ардуїнах чомусь не включється A6. Тому перееніс PS_ON на A5.
aqua_controll-my2.0.zip
Апдейт: https://www.aquaforum.ua/showpost.ph...postcount=1232 - Виправив одну помилку і додав секунди на головний екран.
Виправлений скетч aqua_controll-my2.1.zip
Востаннє редагував Ant0ny: 02.03.2019 о 17:19..
|
|
|
Ці 3 користувач(ів) сказали Дякую Ant0ny за це повідомлення:
|
|
28.01.2019, 22:04
|
#1225
|
Бан за нарушения
Реєстрація: 16.10.2012
Звідки Ви: Львів
Дописи: 472
сказав Дякую: 71
сказали Дякую 329 раз(и) в 197 повідомленні
|
Відповідь: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від Ant0ny
чомусь не включється A6
|
А6 и А7 працюють тільки на вхід і тільки як аналогові піни. То написано в даташиті на ATMEGA
|
|
|
cказали "Дякую" bobus за цей допис:
|
|
28.01.2019, 22:25
|
#1226
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Не сохраняет время ds1307 после отключения питания, резистор и диод выпаял, не помогло батарейка рабочая
tropfish.org.ua
__________________
ParkZoo Fish
__________________ 
|
|
|
29.01.2019, 20:27
|
#1227
|
Живу я тут
Реєстрація: 18.11.2011
Звідки Ви: Россия
Дописи: 182
сказав Дякую: 11
сказали Дякую 12 раз(и) в 11 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від burnashev
резистор и диод выпаял
|
я ещё резистор в делители выпаял, тот который на мОм и резистор от батарейки по + заменил на 470 кажется Ом (был на кОм)
|
|
|
29.01.2019, 20:31
|
#1228
|
Харьковский клуб аквариумистов
Реєстрація: 30.03.2011
Звідки Ви: г. Харьков
Дописи: 584
сказав Дякую: 145
сказали Дякую 292 раз(и) в 213 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від GreyJester
я ещё резистор в делители выпаял, тот который на мОм и резистор от батарейки по + заменил на 470 кажется Ом (был на кОм)
|
4 выпаять надо?
tropfish.org.ua
__________________
ParkZoo Fish
__________________ 
|
|
|
29.01.2019, 22:27
|
#1229
|
Бан за нарушения
Реєстрація: 16.10.2012
Звідки Ви: Львів
Дописи: 472
сказав Дякую: 71
сказали Дякую 329 раз(и) в 197 повідомленні
|
Відповідь: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Схема виглядає так

Вона розрахована на батарейку ML2032 або схожу з написом "rechargeable" якщо ви ставите звичайну CR2032, то потрібно видалити D1, R4, R5, а на місце R6 поставити перемичку. Часом допомагає, коли припаяти паралельно С1 електролітичний конденсатор на 4,7 мкф.
|
|
|
Ці 2 користувач(ів) сказали Дякую bobus за це повідомлення:
|
|
30.01.2019, 17:17
|
#1230
|
Живу я тут
Реєстрація: 18.11.2011
Звідки Ви: Россия
Дописи: 182
сказав Дякую: 11
сказали Дякую 12 раз(и) в 11 повідомленні
|
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===
Цитата:
Допис від burnashev
4 выпаять надо?
|
Да Р4 по схеме ниже он на 1.5мОм, а тот который советуют перемычкой заменить Р6 на 430Ом поставил
|
|
|
 |
|
Тут присутні: 1 (учасників - 0 , гостей - 1)
|
|
Ваші права у розділі
|
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи
HTML код Вимк.
|
|
|
Часовий пояс GMT +3. Поточний час: 21:02.
|