«Умная теплица»: автоматика для теплиц. Терморегулятор для теплиц - Конструкции средней сложности - Схемы для начинающих Блоки управления умного дома для теплицы

GyverControl – универсальный контроллер-таймер для теплицы и других мест, где нужна автоматизация по таймеру или показателям микроклимата/другим датчикам, имеет 10 отдельно настраиваемых каналов управления, собран из недорогих китайских компонентов и заменяет несколько “магазинных” контроллеров разного назначения: управление поливом, освещением, открытием дверей и многого другого. Может использоваться как для теплиц/грядок, так и для аквариумов, террариумов, инкубаторов и прочих автоматических систем. Обязательно читайте документацию на контроллер (ссылки выше), там подробно рассказано обо всех возможностях. Здесь лишь краткий перечень!

Данный проект полностью открытый, то есть любой из вас может сделать себе контроллер для теплицы своими руками, GyverControl сочетает в себе контроллер полива, освещения, проветривания и многого многого другого. Самое главное, что сделать себе такой контроллер умной теплицы можно по себестоимости, т.е. по розничной стоимости китайских компонентов. А это очень дёшево.

Железо:

  • Arduino Nano (ATmega 328p) как главный контроллер системы
  • 7 каналов с логическим выходом 5V, к которым можно подключать обычное реле, твердотельное реле, силовые ключи (транзисторы, модули на основе транзисторов)
  • 2 канала сервоприводов, подключаются обычные модельные серво больших и маленьких размеров
  • 1 канал управления линейным электроприводом с концевиками ограничения движения и с работой по тайм-ауту
  • Датчик температуры воздуха (BME280 )
  • Датчик влажности воздуха (BME280 )
  • 4 аналоговых датчика (влажности почвы или других)
  • Модуль опорного (реального) времени RTC DS3231 с автономным питанием
  • Большой LCD дисплей (LCD 2004, 20 столбцов, 4 строки)
  • Орган управления – энкодер
  • Поддержка датчиков влажности DHT11/DHT22, температуры DS18b20 и термисторов

Программные фишки:

  • Хранение всех настроек в энергонезависимой памяти (не сбрасываются при перезагрузке )
  • Датчики влажности почвы (все аналоговые датчики) не находятся под постоянным напряжением, оно подаётся только на момент опроса , что позволяет продлить жизнь даже самым дешёвым датчикам влажности почвы (напряжение подаётся за 50 мс до опроса и выключается через 50 мс после).
  • Оптимизированный вывод данных на дисплей
  • Каждый из 10 каналов (7 реле, 2 серво и 1 привод) имеет индивидуальные настройки и может работать по таймеру или по датчикам
  • 4-6 режимов работы каждого канала: три разных таймера и работа по условию с датчиков, режимы ПИД и рассвет
  • Серво работает с моей библиотекой ServoSmooth , это обеспечивает плавное их движение: плавный разгон и торможение с ограничением максимальной скорости, а также отсутствие рывков и незапланированных движений при старте системы
  • Линейный привод имеет концевики , внешние кнопки для управления и настройку скорости движения. Частота ШИМ драйвера – 31 кГц, т.е. не пищит
  • Экран отладки , где отображается вся текущая информация о состоянии железа и датчиков
  • Графики температуры и влажности воздуха и показаний с аналоговых датчиков за последние сутки
  • Сервисное меню , позволяющее вручную управлять каждой железкой

Применение как контроллер теплицы/бокса:

  • Периодичный полив (реле)
    • Схема с индивидуальными помпами/клапанами
    • Схема с одной помпой и несколькими клапанами
  • Полив на основе показаний датчиков влажности почвы
  • Управление освещением (реле) с привязкой ко времени суток
  • Проветривание (привод открывает окно/серво открывает заслонку) по датчику температуры или влажности воздуха
  • Увлажнение (включение увлажнителя) по датчику влажности воздуха
  • Обогрев (включение обогревателя) по датчику температуры
  • Выполнение действий сервоприводом (нажатие кнопок на устройствах, поворот рукояток, поворот заслонок, перемещение предметов) по датчику или таймеру

Применение как контроллер аквариума:

  • Режим рассвет для светодиодных лент (через МОСФЕТ) и ламп накаливания (сервопривод)
  • ПИД регулятор для поддержания температуры воды
  • Сервоприводы (2 шт) для сброса еды
  • Остальные каналы можно использовать по таймерам для запуска фильтров/аэраторов/подсветки

Другие применения:

  • Система поддерживает 4 аналоговых датчика, это не обязательно должны быть датчики влажности почвы, у китайцев полно других «датчиков-модулей», которые точно так же подключаются к схеме:
    • Датчик света : «умная» система освещения, резервное освещение
    • Термистор (до 80 градусов): контроль нагрева объекта
    • Датчик звука : закрывание окна при сильном шуме снаружи (почему нет? =))
    • Датчик ИК излучения (датчик пожара) – разные варианты сигнализации, или даже тушения (включаем помпу с водой, открываем кран сервой)
    • Датчик дождя : закрытие окон, сигнализирование, включение помп на откачку
    • Датчик уровня воды /датчик наличия воды: автоматическое наполнение резервуара, автоматическая откачка воды помпой из ёмкости/подвала, перекрытие водяных магистралей при протечке, сигнализация о протечке
    • Газоанализаторы в ассортименте: сигнализатор или даже проветривание (открываем окно) по уровню угарного газа и других промышленных газов
    • Оптический датчик препятствия : тут нужна фантазия
    • Потенциометр : как дополнительный орган контроля системы
  • Сервопривод довольно универсальная штука, может открывать/закрывать заслонки, может нажимать кнопки других устройств, вращать ручки регулировки других устройств, с приделанным шатуном получает возможность линейно перемещать предметы/ползунки других устройств. Сервоприводы есть разных размеров, от микро (2 кг/см) и средних (13 кг/см) до весьма мощных (50 кг/см)
  • Реле умеет замыкать контакты питания и управлять любыми устройствами, также реле может включить блок питания (например светодиодной ленты). Реле можно поставить параллельно проводам к кнопке другого устройства, и оно будет его включать или выключать.
  • Версия 1.4 и выше позволяет поддерживать температуру при помощи ПИД регулятора, для
    террариумов/инкубаторов/любого поддержания температуры:
    – Подавать ШИМ сигнал на полевой транзистор, управляющий нагревом
    – Поворачивать сервоприводом крутилку сетевого диммера
  • Версия 1.4 и выше имеет режим Рассвет, позволяющий использовать контроллер для
    аквариума/террариума и прочих «животных ферм»
  • Основным органом управления является энкодер , рукоятку которого может вращать и нажимать (она является кнопкой). При запуске системы мы попадаем на настройку канала 0. Вращая рукоятку энкодера можно перемещать курсор выбора (стрелочка) по пунктам меню. Чтобы изменить значение выбранного пункта, нужно нажать рукоятку энкодера и повернуть её, удерживая нажатой . Также можно кликнуть по кнопке, курсор изменится со стрелки на галочку > , и вращением можно изменить выбранную величину. Повторный клик вернёт стрелку, при помощи которой можно выбрать другой пункт меню. Удержанный поворот при выбранном имени канала – смена канала для настройки. Листаем направо и у нас будет по порядку 7 каналов реле, два серво и линейный привод.
  • Чтобы перейти к настройке режима, нужно навести на него курсор и кликнуть кнопкой , не поворачивая. Откроется окно настройки режима, выйти из которого можно кликнув по надписи BACK (назад). Удерживая и вращая рукоятку на выбранном названии режима можно сменить режим, всего их 4.
  • В корне меню (выбор каналов) листая налево от канала 0 будет экран отладки (DEBUG ) и сервисный режим (SERVICE ). На экране отладки показаны все текущие положения реле, приводов и показания с датчиков. Вращая рукоятку на экране отладки последовательно листаются суточные графики показаний с датчиков: температура воздуха, влажность и показания с аналоговых датчиков. Деления на графике имеют шаг 1.6 часа . На экране сервиса можно управлять любым каналом в ручном режиме, при активном экране сервиса автоматика не работает, система находится полностью в ручном режиме. Поворотом рукоятки можно выбрать нужный канал, положение серво или настройку текущего времени, и удержанным поворотом её изменить.
  • Если включить систему с зажатой рукояткой энкодера, произойдёт полный сброс настроек каналов и режимов.

Режимы работы каналов

  1. Таймер – простой периодичный таймер: задаются периоды ПАУЗЫ и время РАБОТЫ в формате ЧЧ:ММ:СС. С периодом ПАУЗЫ совершается выбранное действие и выполняется в течение периода РАБОТЫ. Например, ПАУЗА стоит 1 час, РАБОТА – 10 секунд. Каждый час будет совершаться действие в течение 10 секунд, то есть если выбран канал реле, то реле включится и выключится через 10 секунд, затем снова включится через час и выключится через 10 секунд и так далее. Как канал ведёт себя на участке РАБОТЫ задаётся в параметре НАПРАВЛЕНИЕ, то есть это может быть вкл/выкл и выкл/вкл (реле), направо/налево и налево/направо (серво) и открыть/закрыть и закрыть/открыть (линейный привод). Данный режим не имеет привязки к реальному времени, перезагрузка системы сбрасывает текущий таймер. Внимание! РАБОТА не должна быть дольше ПАУЗЫ!
    • Мин. значение: 1 секунда
    • Макс. значение: 999 часов
    • Привязка к реальному времени: нет
  1. Таймер RTC – периодичный таймер, в отличие от предыдущего обладает привязкой к реальному времени, имеет настройку ПЕРИОДА включения и продолжительности РАБОТЫ (в секундах), которая будет совершаться, и СТАРТ – начального часа, с которого начинается отсчёт периода (для периодов больше 2 часов ). Например, период 15 минут, работа 10 секунд: каждые 15 минут будет производиться действие продолжительностью 10 секунд. Привязка к реальному времени работает следующим образом: действие будет совершаться с выбранным периодом от начала часа , то есть если выбран 15 минутный, то действие будет в 0, 15, 30 и 45 минут каждого часа . Если выбранный ПЕРИОД больше часа (от двух и более) то можно выбрать час СТАРТА, от которого пойдёт отсчёт. Все периоды кратны 24 часам, поэтому работа начинается в одни и те же часы каждого дня! Пример: ПЕРИОД 8 часов, начальный час 0. Действие будет выполнено в 0, 8 и 16 часов каждого дня. Если поставить начальный час (СТАРТ) 3 часа, то действие будет выполнено в 3, 11 и 19 часов каждого дня. При сбросе питания следующее действие будет совершено в ближайшее время «будильника». Внимание! РАБОТА не должна быть дольше ПЕРИОДА!
    • Периоды на выбор: каждые 1, 5, 10, 15, 20, 30, 60 минут и 1, 2, 3, 4, 6, 8, 12, 24 часа
    • Применение: полив в гидропонных системах, проветривание без датчика
Период Раз в сутки Когда срабатывает
1 мин 1440 Каждую минуту
3 мин 480 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57 мин. каждого часа
5 мин 288 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 мин. каждого часа
10 мин 144 0, 10, 20, 30, 40, 50 мин. каждого часа
15 мин 96 0, 15, 30, 45 мин. каждого часа
30 мин 48 0, 30 мин. каждого часа
1 час 24 Каждый час
2 часа 12 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22 часа каждого дня (+ сдвиг на стартовый час)
3 часа 8 0, 3, 6, 9, 12, 15, 18, 21 час каждого дня (+ сдвиг на стартовый час)
4 часа 6 0, 4, 8, 12, 16, 20 часов каждого дня (+ сдвиг на стартовый час)
6 часов 4 0, 6, 12, 18 часов каждого дня (+ сдвиг на стартовый час)
8 часов 3 0, 8, 16 часов каждого дня (+ сдвиг на стартовый час)
12 часов 2 0, 12 часов каждого дня (+ сдвиг на стартовый час)
24 часа 1 0 часов каждого дня (+ сдвиг на стартовый час)
  1. Week (бывший Day) – простой таймер на одно действие с привязкой к реальному времени, имеет настройку On (время в формате ЧЧ:ММ:СС) – время, с которого действие активно, и Off (время в формате ЧЧ:ММ:СС) – время, с которого действие не активно. Также имеется 7 «ячеек» – дней недели Days , с понедельника по воскресенье. При перезагрузке действие вернётся в нужное положение согласно текущему времени. Пример: таймер настроен на 6 и 20 часов (Start и Stop). Соответствующее текущему каналу и параметру Direction действие будет активно с 6 до 20 часов, и неактивно с 20 до 6 часов утра следующего дня. При внезапной перезагрузке система совершит действие так, как оно должно быть на этом отрезке времени, то есть из прошлого примера если в промежуток между 6 и 20 часами произойдёт внезапная перезагрузка, при запуске система активирует действие по каналу. Внимание! On должен быть меньше Off!
    Также режим имеет настройку Global , которая вынуждает любой другой режим работать «по расписанию» Week. Что это даёт: например можно настроить полив во вторник и пятницу с 17 до 18 часов вечера (из бочки), поставить галочку global и настроить режим Sensor под полив. Как это будет работать: система будет поливать этот канал по режиму Sensor, но делать это только по расписанию (вторник и пятница 17-18).
    • Выбор дня недели
    • Выбор времени: 0-23 часа, кратно 1 часу
    • Привязка к реальному времени: да
    • Применение: идеальный режим для освещения и редкого полива
  1. Датчик – действие на основе датчика. С периодом опроса ПЕРИОД опрашивается выбранный датчик под названием ДАТЧИК и при превышении порогового значения ПОРОГ выполняется действие согласно выбранному каналу (реле/серво/привод). ПЕРИОД опроса опроса задаётся в секундах или минутах (по мере увеличения). Датчик выбирается из списка: Т.ВЗД. – температура воздуха, В.ВЗД. SENS_1 по SENS_4 . ПОРОГовое значение задаётся с 0 до 1023 с шагом 1 до значения 50 и с шагом 10 начиная от 50 (датчики влажности почвы имеют диапазон значений 0-1023). Например, выбран датчик температуры воздуха, период опроса 1 час и пороговое значение 25. Каждый час система проверяет температуру, при превышении 25 градусов будет выполнено соответствующее каналу действие (включить реле, открыть окно). Через час будет снова произведена проверка.
    • Применение: открытие/закрытие створок по температуре/влажности (привод), полив по влажности почвы, управление вентилятором/увлажнителем (реле) или заслонками (серво) по температуре/влажности.
  1. PID (для каналов 3, 4 и серво) – пропорционально-интегрально-дифференциальный регулятор, позволяет с высокой точностью поддерживать управляемую величину (нагреватель-температура, заслонка-температура, вентилятор-температура, вентилятор-влажность, и так далее). Режим доступен для каналов 3 и 4 (отмечены звёздочкой), а также обоих каналов серво в режиме серво. Имеет настройки коэффициентов P , I , D (D вам скорее всего не пригодится в реальной работе, но он там всё равно есть). Выбираем Sens – источник входного сигнала – один из сенсоров, как в режиме Sensor (Air t. – температура воздуха, Air h. – влажность воздуха и 4 аналоговых датчика (влажности почвы) с SENS_1 по SENS_4 ). Настройка Set указывает, к какому значению показания с выбранного датчика регулятор будет стараться приводить систему. Настройка
    T задаёт период итерации расчёта, для медленных процессов есть смысл поставить побольше (читайте в отдельной главе «Настройка ПИД регулятора»). Настройки min и max отвечают за минимальный и максимальный управляющий сигнал с данного канала, для каналов 3 и 4 это ШИМ сигнал, рабочий диапазон 0-255. Для каналов серво это угол, 0-180 градусов.
    Применение : поддержание заданной величины (температура, влажность) не релейным способом, т.е. плавно и без резких включений. ШИМ сигнал может управлять транзистором, который отвечает за нагреватель. Серво может поворачивать заслонки (проветривание) или крутилки диммеров для управления сетевыми нагревателями, вентиляторами и прочим оборудованием.
  1. Рассвет (для каналов 3, 4 и серво) – режим «рассвета» для контроля освещения с плавным рассветом и закатом. Режим доступен для каналов 3 и 4 (отмечены звёздочкой), а также обоих каналов серво в режиме серво. Плавно включается в час Start на протяжении Dur минут, затем выключается в час Stop в течение Dur минут. Включается до максимального значения, указанного в max , и выключается до min . На каналах 3 и 4 эта величина задаёт скважность ШИМ сигнала, рабочий диапазон 0 – 255. Управлять можно полевым транзистором, например, светодиодной лентой. На каналах серво рабочий диапазон 0 – 180, градусов поворота вала серво. Может управлять крутилкой сетевого диммера, для ламп накаливания или диммируемых светодиодных.
    Применение : организация условий освещённости, приближенных к реальным, для аквариумов, террариумов, курятников и проч.

Настройки каналов реле

  1. Направление – как ведёт себя реле при активации по таймеру/датчику. ВКЛ-ВЫКЛ или ВЫКЛ-ВКЛ
  2. ТИП – логика работы реле
    • Реле – канал реле ведёт себя как обычное реле, может использоваться для управления любой нагрузкой постоянного или переменного тока (управлять сетевыми устройствами): полив индивидуальными помпами, полив индивидуальными клапанами от источника воды под давлением, управления увлажнителями, обогревателями, вентиляторами, приборами освещения и всем другим подобным. Не зависит от других каналов.
    • Клапан – тип канала реле для системы, где есть общая помпа/клапан от источника воды и несколько индивидуальных клапанов на полив разных участков. Канал реле, настроенный как клапан, одновременно со своей активацией (по таймеру/датчику) активирует другой канал/каналы, настроенный как общий .
    • Общий – тип канала реле для системы, где есть общая помпа/клапан от источника воды и несколько индивидуальных клапанов на полив разных участков. Канал реле, настроенный как общий, не имеет настроек режима. Вместо этого он активируется сам одновременно с любым другим каналом, настроенным как клапан . Автоматически сам деактивируется при отсутствии неактивных каналов клапанов.

Настройки каналов серво

  1. Направление – как ведёт себя серво при активации по таймеру/датчику. Поворот в направлении МИН-МАКС угол или наоборот, МАКС-МИН угол
  2. Пределы – углы поворота серво от 0 до 180 градусов с шагом 10
  3. Дополнительно: в скетче в секции настроек есть настройка максимальной скорости движения сервоприводов (SERVO1_SPEED и SERVO2_SPEED) и их ускорение на разгон и торможение (SERVO1_ACC и SERVO2_ACC). Я не стал вносить их в настройки сервисного меню и каналов, т.к. они не так часто нужны.

Настройки канала привода

  1. Направление – как ведёт себя привод при активации по таймеру/датчику, ОТКРЫТЬ-ЗАКРЫТЬ или ЗАКРЫТЬ-ОТКРЫТЬ
  2. Таймаут – время, которое будет подаваться сигнал на движение привода. Концевик (если он есть) прервёт движение привода

Идея сделать автоматическую теплицу у меня появилась давно. Дошло дело до реализации и я начал изучать тепличное хозяйство и устройство автоматики для теплиц. Оказывается интеллектуальная теплица - это не так просто, очень много тонкостей, которые придется учитывать. Начну наверное с главного - как происходит рост и созревание разных культур и какие параметры окружающей среды надо в эти периоды поддерживать.

Температура воздуха

Если в теплице будет расти помидоры и огурцы, то параметры окружающей среды для этих культур схожи. Помидоры хорошо себя чувствуют при температуре воздуха от +18 до +25°С днем и не ниже +16°С ночью. Температура почвы от +10°С и выше. Для цветения и плодоношения температуру можно немного увеличить, чтобы плоды созревали быстрее и были больше.
В ночное время вещества из листьев уходят к плодам. Если температуру увеличить то плод будет активнее наливаться. Если температура в нижних пределах, то это способствует росту побегов и корней - для продолжительного плодоношения.

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

Итак начну о способах понижения температуры в теплице. Самое простой способ понизить температуру в теплице это создать проветривание. Для проветривания используются "актуаторы", которые открывают форточки при повышении температуры.

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

Актуаторы для теплиц

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

Влажность воздуха

Это такой же важный параметр в теплице как и температура, она не должна опускаться ниже 60%. Для разных культур этот параметр может отличаться от 60% до 90%. И мало того, параметр влажности воздуха меняется в зависимости от стадии роста, цветения и плодоношения. Поетому в автоматике для теплиц должна быть предусмотрена возможность менять условия или выбирать уже заложенные программы для разных культур и стадий роста.

Способы увлажнения теплиц

Для увлажнения воздуха в теплице используют увлажнители и датчики влажности , это могут быть ультразвуковые увлажнители или распылители высокого давления. Для ультразвуковых увлажнителей надо использовать фильтры обратного осмоса, т.к. пьезоэлемент быстро придет в негодность от солней и других налетов. Но и форсунки распылителя высокого давления так же засоряются, поетому нужен фильтр тонкой очистки.
Для ультразвукового увлажнения стоит учесть один факт, при ультразвуковом увлажнении температура пара почти 40 градусов, т.е. при увлажнении немного поднимется общая температура в теплице. Но ультразвуковые увлажнители это эконом вариант, лучше конечно использовать насос высокого давления и сппециальные распыляющие форсунки.

Влажность почвы и полив

Еще важный параметр для теплиц - влажность почвы. В разные стадии роста и созревания этот параметр меняется. Самая большая потребность растений во влаге в рассадный период - до 90-95%, а также в фазу плодообразования и плодоношения.

Системы автополива

Автополив в теплице устроен по разному, но в итоге все приходят к дозирующему поливу. Датчики влажности почвы можно использовать но с тащтельной доработкой. Китайские датчики влажности из печатных плат могут показывать точные данные не больше месяца, после чего металлическая поверхность контактов расзрушается и окисляется. Если использовать этот датчик, то в конце концов придет момент, когда вы зайдете в теплицу а у вас там бассейн, все залито а ваши растения вероятно всего погибнут. Поетому датчики влажности можно использовать совместно с датчиком потока воды (счетчиком воды). Надо замерить количество потребляемой воды в сутки и задать этот параметр. Датчик влажности почвы можно использовать но с доработкой, контакты должны быть из такого материала, который проводит электрический ток и как можно меньше окисляется. Это может быть медь, но и она окисляется ос временем, но это уже хорошо, т.к. можно раз в год чистить контакты и опять использовать. Но лучше попробовать графитовые стержни, графит проводит электрический ток и не окисляется. Я пока не пробовал, но вот хоче сделать для теста такой датчик. Вообщем за основу надо взять показатели счетчика воды, а датчиком влажности можно отключать полив, если он покажет максимальные значения. Например в дождливую погоду, расход воды уменьшается в разы, и установленного количества воды для датчика потока можнт быть черезчур много. Так что контроль для полива лучше сделать комбинированным.

Полив включается с помощью реле по сигналу от датчика или по времени. Емкость для полива должна находиться на высоте и полив лучше делать "самотеком" просто открывая или закрывая электроклапан. Таким образом можно сделать более автономную систему, т.к. для питания контроллера и клапанов хватит обычного аккумулятор и солнечной батареи. Такой принцип работы полива будет уместен в местах, где часто отключают электричество на длительное время.

Температура почвы

Температура почвы - так же важно регулировать, т.к. поддержание температуры почвы в определенных пределах поможет расширить возможности вашей теплице. Например, таким способом можно увеличить время использования теплицы от ранней весны до поздней осени, и вырастить некоторые экзотические растения. Регулировка температуры в автоматической теплице можнро сделать с помощью нагревательных тенов. В магазинах продается нагревательные провода, которые укладываются на дно грядок. Управление нагревом происходит через контроллер, который постоянно считывает данные с датчика температуры, который должен находится в грунте. Т.е. датчик температуры должен быть влагозащищенный. При понижении темперутары, контроллер подаст сигнал реле на включение питания для подогрева. Как только температура почвы достигнет заданных пределов, контроллер отключит питания от нагревателя. Чтобы нагревательный элемент не вышел из строя от частого включения и отключения, лучше использовать специальные диммеры, которые будут постепенно подавать нагрузку на нагреватель.

Теплица на ардуино


Оборудование для теплицы

  1. Контроллер Arduino Mega - цена на aliexpress 10 долларов
  2. Блок реле на 8 каналов - цена на aliexpress 10 долларов
  3. Датчики Температур DHT - цена на aliexpress 1 доллара
  4. Датчики Температур DS1820 - цена на aliexpress 1 доллара
  5. Модуль отображения данных LCD I2C - цена на aliexpress 3 доллара
  6. Датчики влажности почвы - цена на aliexpress 1 доллар
  7. Датчик освещенности - цена на aliexpress 1 доллар
  8. Электро магнитные клапана для капельного полива - 150 рублей за штуку в автомагазине
  9. Блок бесперебойного питания на 12воль без батареи - 700 рублей, с батареей 2000 рублей.
  10. Электро привод замка дверей для авто (для форточки) - 250 рублей в автомагазине
  11. Поплавковые датчики уровня воды - 200 рублей

Управление электронагрузками


Для управления электрооборудованием подойдёт плата Relay Shield, количество реле должно соответствовать количеству устройств + запас на будущее, всегда можно добавить. На картинке 4 канальная плата. Мы будем включать\выключать насос, электромагнитные краны. Если использовать сервопривода или электро привод замка дверей для авто, можно открывать\закрывать форточки.

Параметры окружающей среды


Параметры окружающей среды считываются в теплице с помощью датчиков температуры и влажности. Эти данные можно использовать для проветривания.

Управление освещением

Так же нужен фоторезистор, который будет включать освещение.

Автополив

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

Таймер

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

Доступ к теплице через интернет

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

Аварийное оповещение по SMS

Не хочу забегать вперед, вот мысль в голову пришла. Например, если в бак не закачивается вода, засорился насос, или форточка заклинила и температура в помещении поднимается выше 80 градусов, это все может привести к гибели растений. Если мы живем на даче, то можно раз в день заглянуть в теплицу, чтобы посмотреть все ли в порядке с растениями. Но что делать если мы в другом городе? Я считаю надо делать алгоритм безопаности для проверки пограничных параметров теплицы. Если один из параметров приближается к критической отметке, можно отправить SMS с помощью GSM шилда для ардуионо, стоит около 50 баксов на алиекспресс. Мы всегда будем в курсе, если нашим растениями некомфортно, и можем позвонить соседу, чтобы он проверил все ли в порядке с теплицей.

Проветривание

Поддерживать оптимальную температуру можно несколькими способами. Для теплиц, оптимальная температура +22 градуса, максимальная +30 градусов и минимальная +16 градусов. Для начала мы будем использоваться масляный термопривод, цену не знаю, т.к. специализированный стоит от 1500 рублей, но можно сделать самому из старого амортизатора автомобильного и дополнительной емкости для лучшего расширения. Вообщем идея такая, при повышении температуры в теплице, масло в цилиндре термопривода расширяется и толкает поршень, который связан с форточкой, тем самым открывает. И наоборот, как температура падает, термопривод закрывает форточку. Если все правильно рассчитать, то электронные устройства для поддержания температуры не нужны, но мы будем делать полностью автоматизированную теплицу, на случай сильной жары. И добавим еще вентиляторы, которые будут включаться, если не будет хватать масляных термоприводов.

Полив

Мы уже много начитались про выращивания растений в теплице, поетому полив делаем тоже динамический, а может быть и подстраивающийся под определенные растения. Основные данные для полива мы получаем с датчиков влажности, но бывает что надо специально сделать особенный полив по таймеру в момент созревания или роста. Для этого мы напишем сценарий под определенный тип растений, но в основной будем использовать датчик влажности. Для полива используется большая бочка, лучше темного цвета, чтобы вода нагревалась в ней, холодной водой поливать нельзя. Бочка ставится на высоту, чтобы было небольшое давление. К бочке подключается клапан, который пускает воду в систему капельниц. Для полного контроля, можно разделить на секции с клапанами, чтобы не переливались или недоливались в разноудаленных местах, а на каждую секцию использовать свой датчик влажности. В бак надо врезать два датчика уровня воды (минимум и максимум). По этим датчикам насос будет наполнять бочку, если там мало воды и выключать, если воды в бочке полно.

Оживляем все это с помощью программы

Как мы придумаем точную схему автоматики, можно приступать к программированию скетчей. Написание программы основано на языке программирования C++. В интернете можно найти много примеров, которые надо будет просто подстроить под свои задачи и поменять цифры. Первое время надо будет подгонять параметры и почти вручную все настроить, и отлаживать в процессе, поэтому придется постоянно мониторить и подстраивать. Это обычно занимает пару дней, один для настройки второй для проверки, но лучше бы первое время постоянно быть в курсе, что происходит в теплице, а то может датчик не там стоит, и плохо реагировать на изменения. Но зато потом, когда все будет отлажено, можно будет не беспокоится за микроклимат в теплице, и просто собирать свежие овощи и ягоды с грядок. Программирование на ардуино не сложное, в интернете много примеров. Это занятие можно назвать конструктором для взрослых, весело и полезно. Единственное, что хотел бы всем этим сказать, ардуино может решить все, но для использования в промышленных масштабах или для высокой надежности, под вопросом. Для надежности, лучше использовать готовые устройства, хотя у меня ардуино работает уже несколько лет без проблем.

Как я уже писал в прошлой части, изначально настройка параметров теплицы с кнопочек с отображение на дисплее не планировалась, поэтому я предусмотрел кнопки и переключатели в ящике.

Все это можно было тоже реализовать программно, но раз уже сделал, то они сохранили свою функциональность:

Переключатель обогрева почвы (обогрев отключен / включен автоматический обогрев),
- переключатель обогрева водуха (обогрев отключен / включен автоматический обогрев),
- трехпозиционный переключатель открывания окон (автоматика отключена, окна открыты / автоматическое управление окнами / автоматика отключена, окна закрыты),
- кнопка набора воды в бак,
- кнопка полива,
- переключатель режимов полива (один раз в день / два раза в день)
- кнопка включения подсветки дисплея, установленная сверху ящика. Включает подсветку на 30с.

Сразу понятно, что все это для случаев, если вдруг что-то пойдет не так с автоматикой.
Теперь о настройках, которые можно установить с кнопок на панели. Этой зимой, постаравшись максимально сымитировать теплицу, работал над написанием кода для лежащего на столе ящика.

Итак, основное меню состоит из 3-х пунктов:
1. Меню настроек.
2. Установка даты-времени.
3. Тестовая программа для концевиков и моторов открывания окон.

С установкой даты и времени все понятно. Тестовая программа - чтобы подключить окна, погонять их с помощью кнопочек, проверить как закрываются, правильно ли подключил, настроить сработку концевиков и т.д.

В меню настроек можно установить следующие параметры:

1. Время полива.
2. Время второго полива (если включен режим полива 2 раза в день)
3. Время набора воды.
4. Температура открытия окон.
5. Температура закрытия окон.
6. Температура включения обогрева почвы.
7. Температура отключения обогрева почвы.
8. Температура включения обогрева воздуха.
9. Температура отключения обогрева воздуха.

Жена сказала, что поскольку нет никакого резервирования и защиты, если концевики не сработают, нужно еще установить предельное для работы насоса и моторов окон. Это было правильное и справедливое замечание, поэтому пришлось ввести и такие настройки:

10. Предельное время работы мотора открывания окна 1.
11. Предельное время работы мотора открывания окна 2.
12. Предельное время работы мотора закрывания окна 1.
13. Предельное время работы мотора закрывания окна 2.
14. Предельное время работы насоса.
15. Время работы насоса для запуска полива.

Теперь для иллюстрации работы меню предлагаю посмотреть небольшое видео:,/p>

Несмотря на то, что снег еще у нас в середине апреля еще лежал, я установил блок управления в теплицу и подключил обогрев почвы (теплый пол) пока без автоматики и обогрев воздуха обогревателем с автоматическим управлением. По прошествии недели, что почва прогрелась до 30 градусов, на момент осмотра обогреватель отключен, температура воздуха 22 градуса - солнце уже работает как надо.
Кроме того, 15 апреля я включил автопроветривание, чтобы понаблюдать за его работой. Как работает автопроветривание можно также посмотреть на видео:

Попробовал следующие настройки:

Открывание окон 25 градусов;
- закрывание окон 21 градус;
- включение обогревателя 18 градусов;
- выключение обогревателя 20 градусов.

Настройки оказались неоптимальными. То есть на улице температура 8 градусов и ветер. Примерно каждые 20 минут температура в теплице достигала 25 градусов, окна открывались, теплица быстро проветривалась, окна при 21 градусе начинали закрываться, пока закрывались, температура падала еще ниже, поэтому сразу после закрытия окон на 5 мин. включался обогреватель.

Изменил настройки:

Открывание окон 28 градусов;
- закрывание окон 22 градус;
- включение обогревателя 16 градусов;
- выключение обогревателя 19 градусов.

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

В течение двух недель в теплице не только тестировалась система автоматического поддержания температуры, но и в 20-х числах апреля были высажены огурцы. Теперь расскажу об автоматическом поливе. Его конструкция в моей теплице выглядит примерно так:>

Из большого бака раз в день в определенное время (настраивается с помощью меню) вода наливается в бак, расположенный в теплице, с помощью насоса. В моем случае в 10-00. Количество воды определяется срабатыванием поплавкового датчика. На всякий случай через меню можно настроить предельное время работы насоса (защита от несработки датчика. Итак, вода налилась:

После этого вода в баке весь день греется в теплице, в которой тепло. А вечером, у меня настроено в 19-00, насос включается на 40 секунд, вода переливается и уже самотеком, по закону сообщающихся сосудов, выливается на грядку:

Как я настраивал автоматический полив, тоже можно увидеть на видео:

В начале мая температура несколько ночей опускалась до -8С. Обогреватель работал, в теплице температура была не ниже +12С, температура почвы +20С. Работа в таком режиме выявила недостаток китайских реле. Несмотря на то, что в характеристиках заявлено 10А 250В, а обогреватель 1кВт, реле, отвечающее за включение обогревателя воздуха, стало греться и "залипать." Пришлось поставить последовательно реле помощнее. В настоящее время автополив включен и работает. На следующей неделе надеюсь вывести теплицу в "онлайн", чтобы наблюдать ее параметры на своем сайте.
В настоящее время скетч для Ардуино выглядит так: https://ideone.com/GvHs7u Прошу не критиковать код - программист я начинающий, однако код рабочий, что доказано, хоть и недолгой пока, эксплуатацией.

Принципиальная схема и пример установки в

теплице терморегулятора на микроконтроллере ATmega8.

Один из способов обогрева теплиц - это использование электроэнергии. При хорошей и умной автоматике можно обеспечить высокий коэффициент полезного действия системы обогрева, а также простоту обслуживания и автоматизацию в поддержании заданной температуры. Эффективность теплицы можно заметно повысить, если сделать подогрев почвы и поддержание температуры воздуха. При разработке данного устройства был применен самодельный электрокотел 5 кв. Два ТЭНа 2+3 кв. Можно в работе использовать по одному ТЭНу, сейчас тепло на улице, так что и один ТЭН вполне справляется с поставленной задачей. Обогревает тепличку 11 на 5 метров, высота по центру - 3 м, двойная пленка, теплица углублена в землю на один метр. Блок управления отслеживает пять точек и управляет тремя контурами. Две - теплая грядка, температура помещения. В меню прибора можно установить для каждого контура свою температуру и гистерезис. Отдельно для каждого контура устанавливается дневная и ночная температуры.

Терморегулятор предусматривает также контроль температуры теплоносителя для аварийного отключения котла при перегреве, а также возможность подключения датчика температуры для наблюдения за дополнительным параметром (например, температура наружного воздуха). Время перехода с дневного режима на ночной и наоборот устанавливается в меню и является общим для всех контуров. Работа насоса управляется блоком автоматики. Если температура вышла на заданные параметры и котел отключился - насос ещё проработает установленное время и выключится. Насос применен один общий, на тёплые грядки и на помещение. Тёплые грядки и температура воздуха, управляются электроклапанами, на 12 вольт. Принципиальная схема терморегулятора:

Так выглядит фото спаянной платы со стороны дорожек:

1.Инструкция работы автоматики

Микроконтроллер терморегулятора работает с 5-ю датчиками DS18B20. Датчики подключены на одну шину. Возможно, надо будет уменьшить R1. МК различает датчики по их серийному номеру. При изготовлении первый раз придется методом тыка определить, какой датчик за что отвечает и установить их соответствующим образом.

Данные отображаются в формате целых чисел, десятые отбрасываются, незначащие нули гасятся. Диапазон температур от -9 до +99 градусов. При выходе температуры за пределы или при ошибке датчика на дисплее -- вместо показаний соответствующего датчика.

При первом подключении при успешной инициализации всех 5-и датчиков их серийные номера запишутся в EEPROM. Это позволит в дальнейшем корректно работать в случае, если некоторые датчики демонтированы или неисправны. В случае замены датчиков необходимо стереть EEPROM и включить устройство. Стереть EEPROM пока возможно только в программаторе. Потом может придумаю как это сделать через меню. МК будет работать без кварца 8 МГц. Должны быть соответствующим образом установлены FUSE. Индикатор на базе процессора HD44780.

2.Работа с терморегулятором

1.Кнопка «MENU» по кругу листает страницы меню.

2.В меню настроек (Установка) параметр, доступный для установки, мигает.

3.Установка кнопками PLUS/MINUS как обычно.

4.Часы на DS1307. Время выводится в формате чч:мм:сс. Формат отображения 24-х часовый. Доступ к часам через меню. На странице доступны установки времени – по очереди: секунды (кнопки PLUS/MINUS обнуляют значение секунд), минуты, часы. Выставляется время включения дневного режима – день и ночного – ночь. Для режимов формат вывода чч:мм. Настройки часов заносятся в память DS1307.

5.Переход от одного параметра к другому кнопками UP/DOWN. Кнопки работают по одиночному нажатию, независящему от длительности.

6.Через 10 секунд от последнего нажатия настройки запишутся в память. Дисплей перейдет в основной режим.

7.При нажатии на любую кнопку, а также при подаче питания включается подсветка. Подсветка отключится через 30 сек от последнего нажатия на кнопки.

3. Алгоритм управления котлом

1.При подаче питания на устройство контроллер опрашивает датчики, считывает информацию с часов реального времени. Контроллер сравнивает текущее время с заданными для дневного и ночного режимов и выбирает соответствующие настройки для работы терморегуляторов.

2.Примерно через 5 сек устройство активируется и начинает управлять котлом.

3.Если температура с датчиков Пол-1, Пол-2 или Офис становится ниже заданной, то включается в работу насос, нагреватель и подается напряжение на соответствующий исполнительный механизм подачи теплоносителя в данный контур. Когда температура повысится выше заданной на величину гистерезиса, то нагреватель отключается, насос остается в работе на время 30 сек для обеспечения охлаждения нагревательного элемента до безопасной температуры. Для обеспечения протока воды через контур котла подача теплоносителя остается открытой в данный контур на время работы насоса. Если работа котла необходима для другого контура, то теплоноситель перекрывается на уже ненужный контур сразу.

4. Аварийный режим

1.Если температура теплоносителя превысила заданную для параметра Котел, независимо от состояния датчиков включается насос, нагреватель отключается, а для обеспечения протока воды через котел открывается контур Офис.

2.При неисправности датчика какого-либо контура данный контур считается отключенным, если по нему работал нагреватель, то через 30 сек, насос и контур отключатся.

3.В случае неисправности датчика температуры теплоносителя при работающем котле, прибор переведет котел в режим, как указано в п. 4.1.

В статье описана аппаратная реализация системы управления микроклиматом в теплице. Данная система является частью реального приусадебного хозяйства. С её помощью процесс выращивания растений стал частично автоматизированным, не требующим постоянного присутствия человека.

Конкретный экземпляр данной системы отрабатывается на каркасностеклянной теплице, длиной 6 метров, шириной 3 метра, высотой 2 метра. В теплице имеется одна дверь и 2 форточки, проведены электричество и водопровод. Нагрев воды происходит в емкости объемом 70 литров. Давление в емкости составляет порядка двух атмосфер. В теплице выращивается около 35 растений.

Система имеет следующий вид:

Рисунок 1. Схема системы управления микроклиматом в теплице

Центральное место в системе занимает плата Arduino Mega (на рис. 1 -1):

Рисунок 2. Arduino Mega

Arduino является полностью открытой платформой, состоящей из платы и среды разработки, в которой реализована переработанная версия языка Processing/Wiring.

Используемая аппаратная платформа построена на микроконтроллере ATmega1280.

В данной системе задействованы 8 цифровых входов/выходов (всего на платформе их 54) и 10 аналоговых (всего их 16). Плата получает питание от внешнего блока питания.

Плата имеет следующие характеристики:

  • рабочее напряжение: 5В;
  • рекомендуемое входное напряжение: 7-12 В;
  • предельное входное напряжение: 6-20 В;
  • 54 цифровых портов ввода/вывода;
  • 16 аналоговых входов;
  • ток потребления на одном выводе: до 40 мА;
  • ток потребления вывода 3.3В: 50 мА;
  • память Flash Memory: 128 KB, из которых 4KB используются загрузчиком;
  • ОЗУ: 8 KB;
  • энергонезависимая память: 4 KB;
  • тактовая частота: 16 МГц;
  • размер: 75x54x15 мм;
  • вес: 45 г;

К Arduino Mega подключены необходимые датчики и модули.

Включение/выключение полива зависит от ряда параметров:

  • влажность почвы;
  • температура воды;
  • время суток.

В данной системе задействовано 4 датчика влажности почвы (на рис. 1 — 2).

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

Гвозди, введенные в почву на некотором расстоянии друг от друга, выступают в качестве щупов, между которыми проверяется сопротивление. По итоговому аналоговому сигналу можно судить о степени влажности.

Схема датчика представлена на рисунке:

Для измерения температуры воды используется LM335Z -аналоговый термодатчик (термостабилитрон, на рисунке 1 — 3):

Рисунок 4. Аналоговый термодатчик LM335Z

Используемый датчик имеет следующие характеристики:

  • диапазон: -40…+100;
  • точность: 1°С;
  • зависимость: 10мВ/оС.

Для подключения датчика к плате требуется резистор, сопротивлением 2.2 кОм. Задавая ток через датчик в диапазоне от 0.45 мА до 5 мА (резистором R1), получаем напряжение на датчике, которое в десятках мВ представляет абсолютную температуру в градусах Кельвина.

Схема подключения имеет следующий вид:

Для того, чтобы полив включался только в темное время суток, используются 2 датчика света Light Sensor-BH1750 (на рис. 1 — 4):

Данный датчик служит для измерения освещённости в пределах от 1 до 65535 люкс.

Он имеет следующие характеристики:

Напряжение питания: 3-5В;

Разрешение: 16 бит;

Габариты: 19х14х3 мм;

Погрешность: ± 20%.

Подключение датчика производится следующим образом:

Рисунок 7. Подключение датчика света Light Sensor-BH1750

Когда полученные с датчиков показания удовлетворяют определенным условиям (она различаются для каждого вида растений), включается полив. Для регулирования полива используется электромагнитный клапан. Он подключается к плате с помощью реле (на рис. 1 — 5). А именно используется релейный модуль для Arduino проектов Relay Module 2 DFR0017. Он использует высококачественное реле Omron G5LA. Состояние выхода реле отображается с помощью светодиода. Этот модуль управляется с помощью цифрового порта ввода-вывода. Время переключения контакта составляет 10 мс. Как и датчики для измерения температуры и влажности почвы, релейный модуль подключается в управляющей электронике через три провода:

Рисунок 9. DHT11 Temperature Humidity Sensor

Помимо полива данная система контролирует и температуру воздуха в теплице.

Для одновременного измерения температуры и влажности воздуха используется датчик DHT11 Temperature Humidity Sensor (нарис. 1 — 6).

Он подключаются к управляющей электронике через три провода: питание (Vсс), земля GND) и сигнальный.

На плате кроме датчика расположен микроконтроллер, в памяти которого записаны калибровочные поправки для датчиков. Сигнал с устройства передается по шине в цифровом виде. Это позволяет передавать данные на расстояние до 20 м.

Данный датчик имеет следующие характеристики:

  • напряжение питания: 5 В;
  • диапазон температур: 0-50 ° С, погрешность ±2 ° С;
  • влажность: 20-90%, погрешность ±5%.

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

Открытие форточек производится с помощью двух (по одному на форточку) сервоприводов Futaba Т306 MG995 (на рисунке 1 — 7):

Рисунок 10. Сервопривод Futaba Т306 MG995

Используемые сервопривод имеет следующие характеристики:

  • скорость работы: 0.17 с / 60 градусов (4,8 В без нагрузки);
  • момент: 13 кг-см при 4,8 В;
  • момент: 15 кг-см при 6 В;
  • рабочее напряжение: 4,8 — 7.2 В;
  • длина провода: 300 мм;
  • размеры: 40мм х 19мм х 43 мм;
  • вес: 55 г.

Полученные с датчиков данные записываются на карту памяти SD (на рисунке 1 - 8). В дальнейшем они обрабатываются, анализируются и на их основе строятся графики различных показаний. Для этого используется модуль SD-карт DFRobot:

Рисунок 11. Модуль SD-карт

Подключение вентилятора производится таким же способом, как и подключение клапана (через релейный модуль).