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

Показатели
- Температура контроллера
- Температура воздуха
- Влажность воздуха
- Давление атмосферы
- Освещенность
- Температура земли
- Температура обогревателя земли
- Температура обогревателя воздуха
- Влажность земли
- Расход полива
- Положение окна (или двери для проветривания)
Устройства
- Охлаждение контроллера
- Полив земли
- Обогрев земли
- Полив по листу
- Обогрев воздуха
- Вентиляция
- Свет Фито
- Свет Солнце
- Проветривание (открытие/закрытие окна)
Материалы проекта
В основе проекта лежит контроллер типа 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 |
![]() | BME280 | 1 шт | Модуль | BME280 I2C | Temperature Humidity Pressure Sensor |
![]() | BH1750 | 1 шт | Модуль | BH1750 I2C | Light Intensity Sensor BH1750 |
![]() | PCF8574 | 1 шт | Модуль | PCF8574 I2C | Serial I2C LCD Display Adapter |
![]() | GndHum | 1 шт | Датчик | V1.2 | Capacitive Soil Moisture Sensor |
![]() | IrrigWater | 1 шт | Датчик | YF-S201 | Water Flow Sesnor |
![]() | WindowPos | 1 шт | Датчик | MKA-14103 | MKA14103 Reed Sensor |
![]() | SelfTemp, GndTemp, HeatAirTemp, HeatGndTemp | 4 шт | Датчик | DS18B20 | 1-wire digital temperature sensor, TO-92 |
![]() | U2, U3 | 2 шт | Отптрон | PC817 | DC Optocoupler, Vce 35V, CTR 50-300%, DIP-4 |
![]() | D1 | 1 шт | Диод | 1N4007 | 1000V 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, R9 | 5 шт | Резистор | 1K | Resistor 0.25W, THT, DIN 0207 |
![]() | R3, R4, R7, R8 | 4 шт | Резистор | 10K | Resistor 0.25W, THT, DIN 0207 |
![]() | R5, R6 | 2 шт | Резистор | 470 | Resistor 0.25W, THT, DIN 0207 |
![]() | J2, J3 | 2 шт | Разъем | MKDS 1,5/2-5.08 KF301-2P | Way Screw Terminal Block 17.5A 5.08mm |
![]() | J27 | 1 шт | Коннектор | B2B-XH-A(LF)(SN) | JST XH Series P2.5 mm |
![]() | J6, J9, J11, J12, J13, J15, J16 | 7 шт | Коннектор | B3B-XH-A(LF)(SN) | JST XH Series P2.5 mm |
![]() | J14, J17 | 2 шт | Коннектор | B4B-XH-A(LF)(SN) | JST XH Series P2.5 mm |
![]() | опционально | ? | Реле | SSR-40 DA | Твердотельное и бесшумное реле |
![]() | Pwr5V | ? | Блок питания | HLK-PM01 | AC-DC 220V to 5V |
![]() | SelfFan | ? | Вентилятор | MX-3010 | Радиальный вентилятор 30x30x10мм, 5В 150мА |
Датчик контроля температуры модуля SelfTemp, может быть размещен прямо на плате без подключения через разъем.
Печатная плата допускает подключение высоковольтной нагрузки, но все же обратите внимание:
- чтобы уменьшить сопротивление, коммутируемые дорожки идущие к реле должны быть дополнительно хорошо залужены
- со временем, коммутация цепи с большим током приведёт к подгоранию контактов, поэтому лучше использовать SSR-реле, как бесшумное и износостойкое.
Предохранитель ставится перед всеми устройствами. Его задача, в случае поломки реле (залипание контактов, выгорания MOSFET) иметь возможность разорвать цепь и не допустить предельного повышения температуры теплоносителя.
Исполнительная печатная плата с блоком реле
Печатная плата представляет собой модуль с блоками реле, который подключается к основной универсальной плате проекта и имеет следующие особенности:
- Размер 99x99мм.
- Содержит 9 блоков реле.
- Напряжение питания - 5V.
- Содержит разъём и шину для возможного подключения дополнительного напряжения 12V, которое может подключать на разъемы реле для питания устройств проекта.
Корпус для платы контроллера, блока питания и вентилятора.
Защитный колпак для ТЭНа радиатора.
Защитный корпус для датчика температуры и влажности BME280.
Переходник для компьютерного вентилятора 120х120 в трубу ?100мм.