Легкая автоматизация на основе ESP8266

Проект "Теплица"


Показатели

  • Температура контроллера
  • Температура воздуха
  • Влажность воздуха
  • Давление атмосферы
  • Освещенность
  • Температура земли
  • Температура обогревателя земли
  • Температура обогревателя воздуха
  • Влажность земли
  • Расход полива
  • Положение окна (или двери для проветривания)

Устройства

  • Охлаждение контроллера
  • Полив земли
  • Обогрев земли
  • Полив по листу
  • Обогрев воздуха
  • Вентиляция
  • Свет Фито
  • Свет Солнце
  • Проветривание (открытие/закрытие окна)


Материалы проекта

В основе проекта лежит контроллер типа Arduino, но более компактный и функциональный. Рекомендуемый вариант платы - Wemos D1 mini,  где используется чип ESP8266. В проекте определены:

  • SelfTemp - датчик температуры DS18B20 для контроля температуры устройства. Используется 1-Wire подключение.
  • AirHum, AirTemp, AirPress - модуль BME280 для замеров температуры, влажности и атмосферного давления в теплице. Подключается по I2С-шине.
  • SunLight - модуль BH1750 для измерения мощности светового потока. Подключается по I2С-шине.
  • GndTemp - датчик температуры DS18B20 для контроля температуры почвы. Используется 1-Wire подключение.
  • HeatGndTemp - датчик температуры DS18B20 для контроля температуры обогревателя почвы. Используется 1-Wire подключение.
  • HeatAirTemp - датчик температуры DS18B20 для контроля температуры обогревателя воздуха. Используется 1-Wire подключение.
  • GndHum (GndHumPct, GndHumPct) - аналоговый датчик измерения влажности почвы. Может быть ёмкостного или резистивного типа, максимальное напряжение сигнала до 3.2V
  • IrrigWater (IrrigWaterCnt, IrrigWaterFlow) - дискретный датчик учета расхода воды. Используется принцип прерывания сигнала, например датчик Холла или геркон.
  • WindowPos (WindowPosCnt, WindowPosPct) - дискретный датчик для определения положения окна. Используется принцип прерывания сигнала, например датчик Холла или геркон. 
  • SelfFan - управление вентилятором (U=5V, Imax=200mA) для охлаждения контроллера.
  • GndWater - управление поливом почвы.
  • GndHeat - управление обогревом почвы.
  • AirWater - управление поливом по листу.
  • AirHeat - управление обогревом воздуха.
  • AirFan - управление вытяжкой или вентилятором.
  • LampPower1 - первая зона подсветки.
  • LampPower2 - вторая зона подсветки.
  • WindowOpen - управляющий сигнал открытия окна.
  • WindowClose - управляющий сигнал закрытия окна.

Внимание! Предложенная схема является типовой и может быть модернизирована согласно Ваших предпочтений и требований. Вам необязательно использовать все компоненты указанные в схеме и подключать их! Аналогично, Вы можете использовать этот проект не по прямому назначению, заменяя устройства и компоненты на какие-либо другие. 

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

Схема предусматривает использование расширителя цифровых выводов GPIO на базе микросхемы PCF8574

Схема предусматривает подачу питания PwrSens для датчика GndHum, только в момент измерений. Это сделано для того, чтобы снизить коррозионный эффект деградации датчиков.

Для определения влажности почвы используется датчик GndHum с аналоговым выходом. Датчик калибруется после загрузки микропрограммы в контроллер на странице "Option". Для этого выставляются минимальные и максимальные значения, когда он полностью мокрый и сухой. На основе этих значений будет сформировано результирующее показание от 0 до 100%. Проверить показания можно на странице "Report", где также отображается текущее аналоговое значение GndHumRaw.

В качестве механизма открытия/закрытия окна предлагается использовать актуатор. Как правило, это 12V система содержит два контакта для задания направления (открытие/закрытие) и встроенный геркон для подсчёта сделанных оборотов. Это показатель WindowPos, который позволит спозиционировать окно теплицы с точностью до одного оборота двигателя актуатора.

Выводы IrrigWater и WindowPos используют прерывания. В схеме они подключены через оптрон, который необходимо запитать с помощью перемычек: плюс - PwrIW, PwrWP и минус - GndIW, GndWP. Напряжение питания может быть как 5V, так и 12V (рекомендуется в случае большого расстояния до датчиков и/или наличию помех).

Перечень компонентов проекта
# Обозначение Кол-во Тип Модель Описание
U1 1 шт Модуль WeMos D1 mini WiFi board with 4MB flash based on ESP-8266EX
BME2801 штМодульBME280 I2CTemperature Humidity Pressure Sensor
BH17501 штМодульBH1750 I2CLight Intensity Sensor BH1750
PCF85741 штМодульPCF8574 I2CSerial I2C LCD Display Adapter
GndHum1 штДатчикV1.2Capacitive Soil Moisture Sensor
IrrigWater1 штДатчикYF-S201Water Flow Sesnor
WindowPos 1 штДатчикMKA-14103MKA14103 Reed Sensor
SelfTemp,
GndTemp,
HeatAirTemp,
HeatGndTemp
4 штДатчикDS18B201-wire digital temperature sensor, TO-92
U2, U32 штОтптронPC817DC Optocoupler, Vce 35V, CTR 50-300%, DIP-4
D11 штДиод1N40071000V 1A General Purpose Rectifier Diode, DO-41
Q1, Q2 2 шт Транзистор 2N3904 0.2A Ic, 40V Vce, Small Signal NPN Transistor, TO-92
R2 1 шт Резистор 4K7 Resistor 0.25W, THT, DIN 0207
R1, R95 штРезистор1KResistor 0.25W, THT, DIN 0207
R3, R4, R7, R84 штРезистор10KResistor 0.25W, THT, DIN 0207
R5, R62 штРезистор470Resistor 0.25W, THT, DIN 0207
J2, J32 штРазъемMKDS 1,5/2-5.08
KF301-2P
Way Screw Terminal Block 17.5A 5.08mm
J271 штКоннекторB2B-XH-A(LF)(SN)JST XH Series P2.5 mm
J6, J9, J11, J12, J13, J15, J167 штКоннекторB3B-XH-A(LF)(SN)JST XH Series P2.5 mm
J14, J172 штКоннекторB4B-XH-A(LF)(SN)JST XH Series P2.5 mm
опционально?РелеSSR-40 DAТвердотельное и бесшумное реле
Pwr5V?Блок питанияHLK-PM01AC-DC 220V to 5V 
SelfFan?ВентиляторMX-3010Радиальный вентилятор 30x30x10мм, 5В 150мА


Опасно! Напряжение 220В опасно для жизни и может вызвать пожар! 

Универсально! Разработанная схема предусматривает как размещение на плату элементов, так и отказ от них. Например, Вы можете использовать только прямой цифровой вывод для соответствующего устройства или датчика и самостоятельно собрать исполнительную схему, либо же, Вы можете разместить на плате предложенные компоненты - блок реле, оптроны, транзисторы и т.п. и таким образом получить полностью готовый проект. Кроме прямых цифровых выводов, на плату добавлены дополнительные разъемы 5V, 3.3V, GND для питания внешних модулей. 

Датчик контроля температуры модуля SelfTemp, может быть размещен прямо на плате без подключения через разъем.

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

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

Предохранитель ставится перед всеми устройствами. Его задача, в случае поломки реле (залипание контактов, выгорания MOSFET) иметь возможность разорвать цепь и не допустить предельного повышения температуры теплоносителя.

Исполнительная печатная плата с блоком реле


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

  • Размер 99x99мм.
  • Содержит 9 блоков реле.
  • Напряжение питания - 5V.
  • Содержит разъём и шину для возможного подключения дополнительного напряжения 12V, которое может подключать на разъемы реле для питания устройств проекта.

Корпус для контроллера

Корпус для платы контроллера, блока питания и вентилятора.

Скачать STL-модель 
Колпак для радиатора

Защитный колпак для ТЭНа радиатора.

Скачать STL-модель 
Корпус для BME280

Защитный корпус для датчика температуры и влажности BME280.

Скачать STL-модель 
Адаптер для вентилятора

Переходник для компьютерного вентилятора 120х120 в трубу ?100мм.

Скачать STL-модель 



Обсуждения, отзывы, вопросы