ARDUINO Простой автополив. Обсуждение проекта

srv

★✩✩✩✩✩✩
20 Мар 2019
9
10
Всем привет. Решил проверить на сколько врет таймер за сутки что бы скорректировать интервал в прошивке.
Поступил следующим образом: если на пк открыть блокнот и нажать F5 то мы в него вставляем текущее время, естественно F5 нажимал микроконтроллер, в прошивке выставил 86400 секунд = 24 часа.

Вот что получилось...

13:11 03.04.2019 - подача питания
17:07 04.04.2019 - сработка сервы

Таймер отстал на 3 часа 56 минут за 24 часа.
Расхождение в минутах 236, в секундах 14160

1440 минут в сутках
1440+236=1676 минут по таймеру в сутках
86400 секунд в сутках
86400+14160=100560 секунд по таймеру в сутках
69,8333333 секунд в минуте по таймеру

100560/24=4190 секунд по таймеру в часе а не 3600 как положено
стало быть вместо 1 секунды надо вводить 0,85918854
пересчитываем на сутки 0,85918854*60*60*24=74233,8899 секунд на сутки.

Alex может сделаешь автоматическую коррекцию в скетче исходя из выше изложенных данных?
 

Вложения

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,136
412
Москва
wan-derer.ru
@srv, Во-первых, разброс будет разным для каждого экземпляра Digispark. Ты можешь откорректировать свой чтобы он ходил поточнее, а для другого значение коррекции будет отличаться.
Во-вторых, Digispark не имеет кварцевого резонатора, а значит тактовая частота зависит от температуры и напряжения питания. Т.е. даже твой экземпляр будет иметь разброс от испытания к испытанию. Можно подать на вход SCK сигнал кварцованного генератора и засинхронизировать Digispark от него, но для этого надо перебивать фузы и, возможно, переписывать загрузчик. Тогда уж проще Ардуино взять.
 
  • Лойс +1
Реакции: craz и Аркадий

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
Всем привет. Решил проверить на сколько врет таймер за сутки что бы скорректировать интервал в прошивке.
Поступил следующим образом: если на пк открыть блокнот и нажать F5 то мы в него вставляем текущее время, естественно F5 нажимал микроконтроллер, в прошивке выставил 86400 секунд = 24 часа.

Вот что получилось...

13:11 03.04.2019 - подача питания
17:07 04.04.2019 - сработка сервы

Таймер отстал на 3 часа 56 минут за 24 часа.
Расхождение в минутах 236, в секундах 14160

1440 минут в сутках
1440+236=1676 минут по таймеру в сутках
86400 секунд в сутках
86400+14160=100560 секунд по таймеру в сутках
69,8333333 секунд в минуте по таймеру

100560/24=4190 секунд по таймеру в часе а не 3600 как положено
стало быть вместо 1 секунды надо вводить 0,85918854
пересчитываем на сутки 0,85918854*60*60*24=74233,8899 секунд на сутки.

Alex может сделаешь автоматическую коррекцию в скетче исходя из выше изложенных данных?
Я вносил поправку ( на 12% меньше) , стало срабатывать немного более адекватно.
Если нужна точность, только ставить внешний модуль часов DS3231, иначе никак.
 

srv

★✩✩✩✩✩✩
20 Мар 2019
9
10
Он такой же, только в коде нужно поменять WDTCR на WDTCSR везде , чтобы не было ошибки компиляции
хотел перетащить проект на ардуино нано поменял везде WDTCR на WDTCSR но все равно ошибка при компиляции
:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:13:10: error: redefinition of 'uint32_t mainTimer'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:13:10: note: 'uint32_t mainTimer' previously declared here

uint32_t mainTimer, myTimer;

^

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:13:21: error: redefinition of 'uint32_t myTimer'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:13:21: note: 'uint32_t myTimer' previously declared here

uint32_t mainTimer, myTimer;

^

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:14:9: error: redefinition of 'boolean state'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:14:9: note: 'boolean state' previously defined here

boolean state = false;

^

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino: In function 'void setup()':

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:23:6: error: redefinition of 'void setup()'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:23:6: note: 'void setup()' previously defined here

void setup() {

^

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:34:3: error: 'WDTCR' was not declared in this scope

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino: In function 'void loop()':

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:39:6: error: redefinition of 'void loop()'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:39:6: note: 'void loop()' previously defined here

void loop() {

^

In file included from C:\Users\makarichev\Desktop\arduino-1.8.8\hardware\arduino\avr\cores\arduino/Arduino.h:30:0,

from sketch\digi_pump.ino.cpp:1:

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino: In function 'void __vector_6()':

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:62:6: error: redefinition of 'void __vector_6()'

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump.ino:62:6: note: 'void __vector_6()' previously defined here

ISR (WDT_vect) {

^

C:\Users\makarichev\Desktop\Auto_Pump_Sleep-master\digi_pump\digi_pump — копия.ino:63:3: error: 'WDTCR' was not declared in this scope

exit status 1
Ошибка компиляции для платы Arduino Nano.
 

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,136
412
Москва
wan-derer.ru
@srv, Накопипастил два раза. Зачем тебе два setup?
И судя по этому: 'WDTCR' was not declared ... , заменил не везде
 

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
Через пол года эксплуатации, заметил, что мосфеты криво работают (не до конца открываются и не до конца закрываются). Тестер распознает Мосфет, как 2 резистора...
Погуглил вопрос. Оказалось, в режиме торможения мотор постоянного тока может работать как генератор, тем самым убивая мосфет. Нагуглил схему с защитным диодом. Буду пробовать.
Защита мосфета.JPG1111.jpg
 

SHIVinyl

✩✩✩✩✩✩✩
2 Май 2019
1
0
@EandV, очень странно, у меня два кастрированных под ноль дигиспарка замечательно работают и прошиваются! Даже не знаю в чём дело. Насчёт времени - да, сбив есть, виноват кривой таймер вотчдога
с многоканальным автополивом вообще беда. там не по заданному времени работает реле. своей жизнью живёт. причем не у меня одного эта проблема, многие жалуются (на странице проекта) (((
 

Аркадий

✩✩✩✩✩✩✩
17 Июн 2019
10
2
Если уровень в емкости для воды выше шлангов в цветах, то все заливает самотеком после включения полива, нужно ставить дополнительный клапан на гребенке.
 

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
Если уровень в емкости для воды выше шлангов в цветах, то все заливает самотеком после включения полива, нужно ставить дополнительный клапан на гребенке.
Да, против физики не попрешь. У меня емкость ниже подоконника, поэтому проблем нет.
Кстати видел ещё системы у которых бак с водой специально выше растений вешают. Там вместо помпы электрические клапаны. Контролер открывает/закрывает клапаны, вода сама льется. Единственное условие шланг из дна должен выходить.
 
  • Лойс +1
Реакции: craz

Аркадий

✩✩✩✩✩✩✩
17 Июн 2019
10
2
Реализовал простой проект автополива с одной помпой. Столкнулся со следующими проблемами:
1) Если уровень воды в баке выше уровня поливочных трубок в горшках цветов то после останова помпы вода продолжает течь в горшки и заливает подоконник.
2) Помпа слабая и не поднимает воду с бутылки на уровне пола.
Выход: заказал клапан на 4,5 В. Хочу поставить его перед коллектором. Планирую запитать его параллельно с помпой, чтобы они срабатывали одновременно. Если клапан будет работать норм то в принципе можно устанавливать такой на каждую линию от коллектора и управлять им отдельно, что позволит регулировать полив на разные растения и сделает проект более эластичным и эстетичным (меньше трубок).
 

Вложения

traigor

✩✩✩✩✩✩✩
1 Фев 2019
1
0
29
Украина
Так и не получилось решить проблему герметизации стыка провода помпы. Родной провод у неё очень короткий - не достаёт до дна даже 5-литровой бутыли. Удлиннял следующим образом: спаянное соединение каждое заливал термоклеем из пистолета, затем одевал термоусадку, обжимал, потом оба провода еще раз заливал термоклеем и их оба снова в термоусадку большего размера. При погружении минут через 20 помпа перестает работать. Прошу совета, какие более эффективные способы герметизации стыка существуют?
Существует термоусадочная трубка, которая по
идее герметизирует соединение. Сразу с припоем внутри. Одел, нагрел и всё. https://s.click.aliexpress.com/e/iT242Qk
 

Flich13

✩✩✩✩✩✩✩
1 Авг 2019
1
0
Реализовал простой проект автополива с одной помпой. Столкнулся со следующими проблемами:
1) Если уровень воды в баке выше уровня поливочных трубок в горшках цветов то после останова помпы вода продолжает течь в горшки и заливает подоконник.
2) Помпа слабая и не поднимает воду с бутылки на уровне пола.
Выход: заказал клапан на 4,5 В. Хочу поставить его перед коллектором. Планирую запитать его параллельно с помпой, чтобы они срабатывали одновременно. Если клапан будет работать норм то в принципе можно устанавливать такой на каждую линию от коллектора и управлять им отдельно, что позволит регулировать полив на разные растения и сделает проект более эластичным и эстетичным (меньше трубок).
Приветствую! Увидел ваш ответ, и даже зарегистрировался, чтобы вам ответить, и по общаться.
В общем у меня точно такая же проблема, с уровнем. И тоже ниже не могу поставить резервуар. Меня также посещала данная идея, с одновременным открытием электромагнитного клапана и помпы, но я в ней сомневаюсь (помпа у меня мощная). Интересно вы реализовали данную идею? Как успехи? Клапаны не горят? Или помпы?
Ещё вот что думаю, щас бы клапан, чтобы самотёк перекрывал, а когда помпа вкл открывался бы. Не нашёл ничего подобного в интернете, как не искал. Может кто знает подобную продукцию - посоветуйте где продают или как называется сей прибор?
Пока самое лучшее придумал, что надо смастерить такой клапан. Трубка вертикально идёт от помпы, далее наш прибор, в виде камеры, с шариком подшипника, который приподнимается, от напора помпы, а когда выключается, шарик собственным весом перекрывает, отверстие и предотвращает самотёк.

Я поражён, что ничего подобного нет в продаже.. Может не в нашей стране..?
 
Изменено:

Аркадий

✩✩✩✩✩✩✩
17 Июн 2019
10
2
Приветствую! Увидел ваш ответ, и даже зарегистрировался, чтобы вам ответить, и по общаться.
В общем у меня точно такая же проблема, с уровнем. И тоже ниже не могу поставить резервуар. Меня также посещала данная идея, с одновременным открытием электромагнитного клапана и помпы, но я в ней сомневаюсь (помпа у меня мощная). Интересно вы реализовали данную идею? Как успехи? Клапаны не горят? Или помпы?
Ещё вот что думаю, щас бы клапан, чтобы самотёк перекрывал, а когда помпа вкл открывался бы. Не нашёл ничего подобного в интернете, как не искал. Может кто знает подобную продукцию - посоветуйте где продают или как называется сей прибор?
Пока самое лучшее придумал, что надо смастерить такой клапан. Трубка вертикально идёт от помпы, далее наш прибор, в виде камеры, с шариком подшипника, который приподнимается, от напора помпы, а когда выключается, шарик собственным весом перекрывает, отверстие и предотвращает самотёк.

Я поражён, что ничего подобного нет в продаже.. Может не в нашей стране..?
Добрый день, я заказал клапан, он работает но у него очень маленькое сечение входа и выхода - поэтому эта идея не прошла. Решил проблему по другому, взял бутылку из под молока пластиковую типа канистра, прорезал в боку дырку для помпы и все. Уровень в бутылке не выше чем в трубках подачи на каждом из витков и ничего самотеком не течёт. А так как в бутылке 2 литра, на 5 средних цветков капельного орошения под корень на месяц хватает с избытком.
 

Вложения

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
Добрый день, я заказал клапан, он работает но у него очень маленькое сечение входа и выхода - поэтому эта идея не прошла. Решил проблему по другому, взял бутылку из под молока пластиковую типа канистра, прорезал в боку дырку для помпы и все. Уровень в бутылке не выше чем в трубках подачи на каждом из витков и ничего самотеком не течёт. А так как в бутылке 2 литра, на 5 средних цветков капельного орошения под корень на месяц хватает с избытком.
Клапаны - это как-то сложно... Я просто подвесил канистру 5л ниже уровня подоконника на веревке:
https://community.alexgyver.ru/threads/avtonomnyj-avtopoliv-na-1-12-komnatnyx-rastenij.189/

На 8-9 средних растений хватает на месяц.
 

Аркадий

✩✩✩✩✩✩✩
17 Июн 2019
10
2
Клапаны - это как-то сложно... Я просто подвесил канистру 5л ниже уровня подоконника на веревке:
https://community.alexgyver.ru/threads/avtonomnyj-avtopoliv-na-1-12-komnatnyx-rastenij.189/

На 8-9 средних растений хватает на месяц.
У меня помпа какая-то слабенькая, даже в таком как у меня режиме (сосуд с водой на уровне) Поток на 5 растений очень слабенький, а если разместить сосуд ниже на 30 см, то вода вообще не поднимается. напряжение 5В
 

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
У меня помпа какая-то слабенькая, даже в таком как у меня режиме (сосуд с водой на уровне) Поток на 5 растений очень слабенький, а если разместить сосуд ниже на 30 см, то вода вообще не поднимается. напряжение 5В
Пичаль... Может трубки потолще взять? У меня до гребенки трубки с внутренним диаметром 6мм. Поднимает на 60-70см без проблем.
Ещё кстати плохо качает, если в помпе воздушная пробка. Я в алгоритме специально прописал: включить на 2 секунды, потом 3 секунды пауза, только потом основной полив. Помпа после мини запуска нормально наполняется водой и уже потом лучше качает. Проверено.
 
  • Лойс +1
Реакции: craz

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
Уважаемый Аркадий! Можно без помпы. Вот мое видео.
Я там ничего не объясняю - объясню здесь.
В ванночку, из которой берется вода, вы ставите пластиковую бутылку (хоть 9 литров, не проблема). Внизу стенки бутылки на уровне, который вы хотите поддерживать проделываете отверстие. Оно должно быть такого размера, чтобы вода могла пробулькивать через него. Заполняете бутылку водой, ПЛОТНО ЗАВОРАЧИВАЕТЕ ВЕРХНЮЮ КРЫШКУ и ставите бутылку в ванночку. Вода из бутылки будет вытекать до уровня вашего отверстия. После полива (забрали сколько-то воды из ванночки) бутылка дольет ванночку до уровня отверстия. Т.е . у вас во время полива будет фиксированный перепад уровня (уровень горшка - уровень отверстия в пластиковой бутылке), а значит насос будет наливать ОДНО И ТО ЖЕ КОЛИЧЕСТВО ВОДЫ за один полив. Дополнительный бонус в том, что бутылку можно отдельно вынимать из ванночки и доливать , не нарушая процессов в системе. В моем видео я использовал насос внешний, предварительно проклеив пазы, чтобы не уходила вода за время, которое насос находится в режиме ожидания. Но это не догма, можно использовать погружной, как в исходном проекте.
Решение интересное, я бы только ещё ванночку крышкой прикрыл, хотя бы частично, а то пыль налетит, вода быстро протухнет.
 
  • Лойс +1
Реакции: craz

bojarinov

✩✩✩✩✩✩✩
30 Июл 2019
23
6
можно ли использовать в этой схеме датчик освещенности, или температуры? возможно ли временно вывести из сна плату, и считать данные с датчика analogRead(sensor) после сработки таймера?
 
  • Лойс +1
Реакции: craz

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
можно ли использовать в этой схеме датчик освещенности, или температуры? возможно ли временно вывести из сна плату, и считать данные с датчика analogRead(sensor) после сработки таймера?
Можно! Но зачем?
 

bojarinov

✩✩✩✩✩✩✩
30 Июл 2019
23
6
Можно! Но зачем?
чтобы поливало парник вечером, после захода солнца, когда вода в бочке нагреется. таймер за лето может убежать, когда уже вода остынет. таймер считает суток несколько, потом датчик ждет вечера, датчик освещенности я подключил, только analogRead(sensor) не считывает значения, предполагаю из за сна (я применил слегка другой способ полива, кому интересно могу описать)
получилось, подсмотрел здесь https://community.alexgyver.ru/threads/avto-poliv-s-datchikom-vlazhnosti-na-attiny85.583/
 
Изменено:

EandV

★★★✩✩✩✩
4 Авг 2018
288
167
чтобы поливало парник вечером, после захода солнца, когда вода в бочке нагреется. таймер за лето может убежать, когда уже вода остынет. таймер считает суток несколько, потом датчик ждет вечера, датчик освещенности я подключил, только analogRead(sensor) не считывает значения, предполагаю из за сна (я применил слегка другой способ полива, кому интересно могу описать)
получилось, подсмотрел здесь https://community.alexgyver.ru/threads/avto-poliv-s-datchikom-vlazhnosti-na-attiny85.583/
Я просто сделал нормальный модуль часов DS 3231 и Ардуино Нано, время отлично держит и полив точный. Заморочки с солнцем, ну не знаю...
 
  • Лойс +1
Реакции: craz

bojarinov

✩✩✩✩✩✩✩
30 Июл 2019
23
6
Я просто сделал нормальный модуль часов DS 3231 и Ардуино Нано, время отлично держит и полив точный. Заморочки с солнцем, ну не знаю...
Можно ль посмотреть скетч. Можно ли менять колличество дней через которые поливает не перепрошивая (например перестановкой перемычек)? Как с экономией батареек? До этого у меня стояла покупная аквадуся, там 8 АА хватало на всё лето. Вместе с работай 2 помп.
 
  • Лойс +1
Реакции: mxm