1 2 3 4 5 6 7 8 9 10 9/10 9,18оценок: 11

Контроллер для теплицы на Arduino

Тема в разделе "Теплицы и парники", создана пользователем Cofessor, 20.10.15.

Статус темы:
Закрыта.
  1. Лифтанутый
    Регистрация:
    11.04.08
    Сообщения:
    4.642
    Благодарности:
    13.644

    Лифтанутый

    УВЕРЕННЫЙ

    Лифтанутый

    УВЕРЕННЫЙ

    Регистрация:
    11.04.08
    Сообщения:
    4.642
    Благодарности:
    13.644
    Адрес:
    Москва
    Когда работал с КИПиА я не встречал простых датчиков влажности почвы, хотя для сыпучих материалов их немало. Все дело в сильной нестабильности свойств почвы. Конечно датчик должен быть осциллирующий, а не на постоянном токе и наверно на разной глубине их надо ставить выше и ниже уровня 10см. Само собой нужна коррекция по температуре почвы.
     
  2. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    У меня такая мысль, что датчик этот совершенно не нужен. Как Вы собираетесь определить нужную величину полива? Где-нибудь, кто-нибудь встречал её? И как её определили? Ведь, по большому счёту, на каждое растение нужна своя норма полива, поскольку даже растения одного сорта отличаются степенью развития, поэтому датчиков и капельниц нужно столько же, сколько растений посажено в теплице. А растения могут быть разных сортов, одни здоровые, другие - больные, одни на свету - другие в тени, одни у форточки, другие - в тени, и, следовательно, меньше испаряют. Да и почва не однородна и степень её прогрева.
    Можно найти ещё кучу факторов но смысла нет, и так ясно что измерение параметров в одной точке ничего не говорит о том, каковы они на другом конце теплицы. тогда уж совет: убедитесь что показания датчика влажности в разных местах теплицы достаточно однородны, хотя и так ясно что они будут сильно отличаться, может быть, в разы.
    Величина полива в течение сезона вегетации в любом случае величина не постоянная, хотя бы потому уже, что отличается оптимальная влажность почвы у растения до цветения, во время цветения и во время плодоношения. Зависит она также от погоды на улице, так в пасмурную погоду вообще не рекомендуют поливать, а в жару производить дополнительный ночной полив. К сожалению не помню порядка цифр, но что-то в памяти стоит что при поступлении энергии от света 1100 Дж - 1 дополнительный полив, при 1800 - 2 полива, при 3800 - 3.
    Но даже если Вам удастся сделать гибкий алгоритм полива, учитывающий все эти условия, нет гарантии что растения будут находиться в превосходной форме и любое заболевание или ещё что может сломать весь Ваш график. Так что подумайте, надо ли Вам вообще связываться с поливом по влажности или проще отрегулировать норму полива опытным путём и вносить коррективы вручную по мере надобности.
     
  3. ask33
    Регистрация:
    06.11.13
    Сообщения:
    1.583
    Благодарности:
    3.398

    ask33

    Живу здесь

    ask33

    Живу здесь

    Регистрация:
    06.11.13
    Сообщения:
    1.583
    Благодарности:
    3.398
    Адрес:
    Ногинск
    На начальном этапе как я и писал уже мне в теплице нужно проветривание и мониторинг.
    Полив это уже вторая задача, и тут 2 пути или сложный с определением влажности или простой с поливом по заданному алгоритму. Ну а прививки от фитофторы и обрыв пасынков это уже потом, когда первые 2 этапа заработают :))
    Автоматика мне нужна не для того чтобы совсем в теплицу не ходить, а для того чтобы от рутины избавится. Сейчас как, таймер на мобиле поставил, кран открыл и ушел делать другую работу. Таймер запищал пришел закрыл кран. Но пару раз забыл таймер поставить, понадеялся что так вспомню. Один раз огурцы до полусмерти залил, второй раз повезло всего 200 литров было в емкости, как раз на полив.
    А с поливом надо экспериментировать, по времени выливать определенное количество воды, по датчику влажности, тут каждый то что ему ближе выберет.
     
  4. Krivich_67
    Регистрация:
    30.10.16
    Сообщения:
    27
    Благодарности:
    30

    Krivich_67

    Новичок

    Krivich_67

    Новичок

    Регистрация:
    30.10.16
    Сообщения:
    27
    Благодарности:
    30
    Я тоже за простоту! Но просто прикупить нержавейки в данном случае не получится. Датчик мой сейчас в стадии отладки ПО. Опять без ПО не обошлось:). От измерения активной составляющей сигнала отказался после обсуждения с коллегой, имеющим большой жизненный опыт и опыт по данной тематике. Решили измерять диэл. проницаемость и использовать тот факт, что у воздуха она равна 1, а у воды уже 80. Влажный грунт будет иметь некоторое промежуточное значение в зависимости от количества воды. Проницаемость сильно зависит от температуры лишь при переходе воды в другое агрегатное состояние - в лед. У него порядка 3, если не ошибаюсь. От солей, в отличии от проводимости грунта, зависит незначительно. Как калибровать - это вопрос. Можно не заморачиваться и ноль скалибровать на воздухе, а 100% по воде. Надеемся получить стабильный датчик. Пусть он и измеряет в попугаях. Потребление у него около 20 мА от 5В. К моему контроллеру подключается через 4-х проводной кабель (2 провода - питание, 2 провода - RS485). Сейчас подумываю, а не сделать ли батарейное питание и выводить влажность на вольтметр. Например 100% = 1В с линейной шкалой. Тогда можно будет пройтись по всей теплице и определить где поливается сильнее, где слабее. Проверить почему заболели растения - уж не заливаем ли их:). RS485 позволит использовать много датчиков на одной шине при необходимости.
     
  5. Krivich_67
    Регистрация:
    30.10.16
    Сообщения:
    27
    Благодарности:
    30

    Krivich_67

    Новичок

    Krivich_67

    Новичок

    Регистрация:
    30.10.16
    Сообщения:
    27
    Благодарности:
    30
    Если заметили, у меня в контроллере есть держатель батарейки, а в МК - часы реального времени с календарем. Плюс датчик освещенности и температуры. В общем все возможности дли реализации гибкого алгоритма полива.
     
  6. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Ну я своё мнение сказал и сам не пойду по этому пути, ведь, даже если сделал очень сложный алгоритм полива и добился равномерного увлажнения по всей поверхности, всё равно оптимальную величину увлажнённости невозможно определить теоретически. А раз сам алгоритм далеко не точен, какой толк от того что автомат поддерживает заданную влажность с высокой точностью? Сами томаты есть сильно облиственные и слабо облиственные, одни субтильные, другие - мощные и нуждаются в разных нормах полива - по какому будете оптимизировать?
    Полагаю, хуже конечно не будет от интеллектуального полива, но и выдающихся результатов тоже.
     
    Последнее редактирование: 06.11.16
  7. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Ну вот, возобновил разработку контроллера. Поскольку решил теперь всё делать на Nano, то понадобилось найти и установить в Proteus модель контроллера Arduino Nano. Нашёл ранее, на поиски ушло часа 2. Установил в графический редактор ISIS в составе Proteus-а, выглядит так:
    Безымянный.jpg
    Затем создал корпус для этой модели в графическом редакторе ARES в составе Proteus-а. В общем, выглядит как обыкновенный DIP-корпус, отобразить здесь не удалось, не стал разбираться почему.
    Затруднения вызвала ассоциация модели ISIS с корпусом PCB, без чего невозможно передать модель в редактор ARES. Забыл, как весной делал. Провозился вечер и всё утро, но сделал.
    Теперь нужно схему полностью с модулем Arduino Nano нарисовать. Она будет отличаться от схемы с Arduino Uno не только модулем. Решил первоначально сделать плату для Гроубокса, а в этом варианте достаточно всего 2-х оптореле: включение обогрева и освещения, ну и другие упрощения. Соответственно платка будет намного меньше.
    Последовательность работы будет такая:
    - рисую схему в ISIS
    - передаю в ARES, расставляю детали
    - рисую плату трассировщиком Spectra
    Как нарисую, фото платы - сюда, можно выводить отпечатки на струйнике и делать плату, но сейчас некогда, убегаю.
     
  8. ask33
    Регистрация:
    06.11.13
    Сообщения:
    1.583
    Благодарности:
    3.398

    ask33

    Живу здесь

    ask33

    Живу здесь

    Регистрация:
    06.11.13
    Сообщения:
    1.583
    Благодарности:
    3.398
    Адрес:
    Ногинск
    Для разработки на нано есть интересный шилд https://s.aliexpress.com/36VfQZrm
     
  9. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    А чем он Вас привлёк? Я там не вижу, что, собственно, добавлено. Для гроу бокса себе нарисовал сегодня простецкую схемку (правда ещё немного недоработал):
    Безымянный.jpg
    Здесь я на плате дополнительно, кроме модуля Arduino, добавил м/сх 7805, модуль real time clock - DS3231, LCD1602, кнопку, 3 резистора и 4 конденсатора. сейчас трассировку делаю.
     
  10. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Примерно такая плата получается:
    Безымянный.jpg
    С правого краю здесь экран LCD1602 припаивается. Его можно загнуть на плату, ну когда сделаю - нагляднее будет.
    Что-то цветное изображение не могу вывести, а раньше делал.
     
  11. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Ага, вот:
    1111.jpg
    Завтра, будет время, доработаю принципиалку и плату, попробую вывести на печать шаблоны.
     
  12. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Вчера ни минуты не удалось уделить. Сегодня немного посидел, сообразил что схему для Гроубокса ещё можно упростить, потому что в нём источник +12V не нужен и аккумулятор не нужен. В общем, ещё несколько деталей убираются со схемы и на плате остаётся всего 6 деталек. Сама платка становится совсем небольшой - маленький квадратик 53*53 мм.
    По моему, получился вариант близкий к окончательному.
    22.jpg
    В ней всего 2 разъёма: один для подключения датчика температуры/влажности и один - для подключения оптореле на 2 канала. У меня правда есть оптореле только на 1 канал, на 4 канала и на 8 каналов, на 2 нужно заказать.
    Проверять на макетной плате работу схемы не буду, проверю только программно на симуляторе, однако надо вспоминать. Последний раз пытался дорабатывать скетч в мае, но только испортил, сейчас буду исправлять, хотя для гроубокса там половину нужно будет выкинуть и все выводы модуля ардуино поменялись после замены Uno на Nano.
     
  13. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Ещё один сюрприз - хотел отобразить краевые разъёмы на плате, но тогда симулятор перестаёт видеть те устройства, которые подключаются через разъёмы:
    111.jpg
    Оно и понятно, ведь фактически это разрыв, хотя на самом деле J3 и J1 - это две части одного разъёма, папа и мама, просто я пока не догадался как правильно их надо отображать. Можно было бы конечно просто датчик соединить со входом модуля Ардуино, но тогда разъём исчезает, а ведь он есть на плате.
    Ну не делать же мне две схемы: одну для разработки печатной платы, другую - для симуляции работы программы. Пока остаётся непонятным, как совместить два в одном.
     
  14. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Присвоил обеим сторонам разъёма один и тот же джампер, но неуверен что теперь симулятор воспримет их как одно и то же. Для того чтобы узнать, нужно написать скетч и запустить симуляцию.
    Попробовал сегодня возобновить разработку скетча и сразу же срезался на первых командах. А первыми, как известно, стоят вызовы библиотек. Куда же они девались? Ведь каталог Arduino IDE я скопировал при смене компьютера. Но всё оказалось довольно прозаическим. Дело в том, что стандартные библиотеки находятся внутри каталога Arduino в папке Librares, а те библиотеки, которые добавляешь сам, попадают в другой каталог, поэтому я их просто утратил. Пришлось снова искать библиотеки в Интернете. Однако библиотеку OneWire оказалось найти очень непросто, каждый раз попадалась библиотека с оболочкой Dallas, а я разрабатывал скетч без этой оболочки в целях повышения надёжности и экономии памяти. Весь вечер у меня на это ушёл, но в результате удалось-таки такую версию найти и скетч после её установки сразу скомпилировался.
    Теперь можно править программу, выбрасывать из неё всё лишнее и адаптировать под Arduino Nano. В первую очередь переделаю фрагмент опроса датчика и вывод температуры и влажности на LCD, тогда сразу будет видно, проходит ли сигнал через папу-маму разъёма.
     
  15. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.325
    Благодарности:
    8.484
    Адрес:
    Брянск
    Вот так выглядит 3D изображение платки на Arduino Nano для Гроубокса:
    Безымянный.jpg
    Здесь большой красный квадрат - это экран LCD1602, и его можно запаять под углом 90° к плате или так, что плата окажется под ним. То есть размеры всей системы будут крохотные.
     
Статус темы:
Закрыта.