Датчик влажности почвы
Нередко в продаже можно встретить такие приспособления, которые устанавливаются на цветочный горшок и следят за уровнем влажности почвы, включая при необходимости насос и поливая растение. Благодаря такому устройству можно будет спокойно уезжать в отпуск на недельку, не боясь, что любимый фикус завянет. Однако цена на такие приспособления неоправданно высока, ведь их устройство предельно простое. Так зачем покупать, если можно сделать самому?
Схема
В почку горшка опускаются два металлических прутка, сделать которые можно, например, разогнув скрепку. Их нужно воткнуть в землю на расстоянии примерно 2-3 сантиметра друг от друга. Когда почва сухая, она плохо проводит электрический ток, сопротивление между прутками очень велико. Когда почва влажная – её электропроводность значительно повышается и сопротивление между прутками уменьшается, именно это явление лежит в основе работы схемы.
Резистор 10 кОм и участок почвы между прутками образуют делитель напряжения, выход которого соединён с инвертирующим входом операционного усилителя. Т.е. напряжение на нём зависит лишь от того, насколько увлажнена почва. Если поместить датчик во влажную почву, то напряжение на входе ОУ будет равно примерно 2-3 вольтам. По мере высыхания земли это напряжение будет увеличиваться и достигнет значения 9-10 вольт при совершенно сухой земле (конкретные значения напряжения зависят от типа почвы). Напряжение на неинвертирующем входе ОУ задаётся вручную переменным резистором (10 кОм на схеме, его номинал можно менять в пределах 10-100 кОм) в пределах от 0 до 12-ти вольт. С помощью этого переменного резистора задаётся порог срабатывания датчика. Операционный усилитель в этой схеме работает в качестве компаратора, т.е. он сравнивает напряжения на инвертирующем и неинвертирующем входах. Как только напряжение с инвертирующего входа превысит напряжение с неинвертирующего, на выходе ОУ появится минус питания, загорится светодиод и откроется транзистор. Транзистор, в свою очередь, активирует реле, управляющее водяным насосом или электрическим клапаном. Вода начнёт поступать в горшок, земля вновь станет влажной, её электропроводность увеличиться, и схема отключит подачу воды.
Печатная плата, предлагающаяся к статье, рассчитана на использования сдвоенного операционного усилителя, например, TL072, RC4558, NE5532 или других аналогов, одна его половинка при этом не используется. Транзистор в схеме используется малой или средней мощности и структуры PNP, можно применить, например, КТ814. Его задача – включение и выключение реле, также вместо реле можно применить ключ на полевом транзисторе, как это сделал я. Напряжение питания схемы – 12 вольт.
Сборка датчика влажности почвы
Может случиться такое, что при высыхании почвы реле включается не чётко, а сначала начинает быстро щёлкать, и только после этого устанавливается в открытом состоянии. Это говорит о том, что провода от платы до горшка с растением улавливают сетевые наводки, пагубно влияющие на работу схемы. В таком случае, не помешает заменить провода на экранированные и поставить электролитический конденсатор ёмкостью 4,7 – 10 мкФ параллельно участку почвы, вдобавок к ёмкости 100 нФ, указанной на схеме.
Работа схемы мне очень понравилась, рекомендую к повторению. Фото собранного мной устройства:
??Надежный емкостной датчик влажности почвы своими руками (STM32)
Рассмотрена теория построения емкостного датчика для системы автополива. расчеты, проверка на практике, примеры применения.
Если взять два куска фольгированного стеклотекстолита и расположить их параллельно медными плоскостями внутрь на небольшом расстоянии, то получим плоский конденсатор. Рассмотрим как будет влиять изменение его емкости и как это можно использовать.
Купить на Aliexpress



Расчеты
Емкость вычисляется по следующему выражению:
Пусть пластины имеют размеры w = 12 мм; l = 35 мм, тогда площадь S = 12*35=420 мм², а расстояние между ними d = 3 мм, тогда расчетная электрическая емкость C = 1 пФ.
Геометрические размеры (площадь) S, как и расстояние между пластинами d не меняется. Остается для изменения емкости менять вещество между пластинами, пока это воздух ε = 1. Как думаете какая относительная диэлектрическая проницаемость воды ? Источники показывают, что ε = 81.
Полное погружение в воду даст увеличение емкости в 81 раз! Расчетная ёмкость C составит уже не 1 пФ, а 100 пФ.
Таким образом плавно погружая этот самодельный кондер также плавно и пропорционально будет изменятся и емкость, что дает возможность эффективно отслеживать состояние влажности.
Превращение изменения емкости в изменение напряжения
Подключив последовательно с резистором конденсатор получим ФНЧ (фильтр нижних частот).
Получается делитель напряжения, где у верхнего плеча R1 сопротивление не изменяется, а емкостное сопротивление нижнего плеча C1 меняется в зависимости от частоты.
Но так как частота сигнала будет неизменной, то построим график зависимости емкостного сопротивления от емкости (C = 1-100 пФ):
Таким образом понятно, что при увеличении емкости ( погружение в воду ) сопротивление нижнего плеча будет уменьшаться, как и падение напряжения на нем, а значит и выходное напряжение (см. подтверждение опытом ниже).
Но остается еще одно — выделить только амплитуду, именно для этого применяется АМ-детектор. Его расчет был выполнен, но ничего полезного этого не дало, поэтому номиналы взяты такие же, как у готового. Главная суть в этом:
Схема электрическая принципиальная
Моделирование работы работы схемы
Собираем (номиналы изменены из-за сложности моделирования на высоких частотах!).

Здесь видно как хорошо выделяется амплитуда при изменении емкости C2.

Проверка на практике
Сначала непосредственно датчик, состоящий из двух кусочков фольгированного стеклотекстолита FR-4 (70×12 мм).

*также не забываем изолировать открытые участки меди клейкой лентой
И также схемка в миниатюрном исполнении.

Сигнал сгенерирован с помощью МК (ШИМ, f = 1 МГц, D = 50%), конечно это можно сделать с помощью того же таймера NE555, но если устройство уже будет иметь микроконтроллер, то зачем же еще одна МС?

Теперь просто подключаем питание (здесь 3.3 В), вольтметр на выход и смотрим как изменяется напряжение при заливании водой.

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

Показания менялись медленно и уверенно, на следующий день на выходе имеем плюс 214 мВ, т.к. слой почвы мал.

Более практичный датчик из пластин оцинковки
Покрыты слоем клейкой ленты.

При сухом грунте на выходе примерно 1.5 В.

После сверхобильного полива 0.75 В.

Подключение к микроконтроллеру
Остается вместо вольтметра подключить один из входов АЦП МК и настроить генерацию ШИМ-сигнала одним из таймеров. Чтобы не повторять одно и то же см. видос или код на гитхабе.
Выполняем калибровку
Отсутствие воды: U = 0.75 В = ADC = 930 = 0 %.
Заполнение полностью (до определяемой границы): U = 1.4 В = ADC = 1737 = 100 %.
Автоматическая система полива (простейшее исполнение)
Прикупил маленький водяной насос, работает неплохо и хорошо подойдет для проверки.

Управление насосом через ключ (полевой транзистор IRLML2502) ШИМ-сигналом 1 кГц.

После выполненой калибровки программа выключит насос, когда напряжение станет ниже нижнего порога (0.75В) и включит, когда пересечет верхний порог (1.4 В).

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

Видос
Скачать

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

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

Когда светодиод LED1 светится — земля сухая, при поливе светодиод гаснет.
Датчик (E1) сделан из двух железных пластин расположенных друг от друга на расстоянии пяти миллиметров
Транзисторы VT1, VT2 — КТ315.
R3 — три резистора по 91 Ом.
Микросхема DD1 — К155ЛА3
Исполнительное устройство: реле с потреблением катушки не более 90 ма
VR1 — кренка на 5 вольт.
Схема проверена мною. Если все детали исправны и все правильно собрано — работать будет сразу.
DIY Zigbee датчик влажности почвы
Приветствую читателей Habr! Хочу поделиться с вами своим очередным проектом, сегодня речь пойдёт о небольшом датчике измерения влажности почвы на чипе СС2530. Проект основывается на разработке с открытым исходным кодом DIYRUZ Flower, разработчик @anonymass. Измерение влажности почвы у датчика осуществляется ёмкостным методом, работает от батарейки CR2450 или CR2477, есть защита от переполюсовки батарейки, датчик предназначен для работы в сетях Zigbee.

Я уже давно посматривал в сторону Zigbee, огромное количество недорогих фабричных устройств, появившихся в последние годы и скорость с которой после появления проекта zigbee2mqtt эта технология стала захватывать умы домашних автоматизаторов, отличные DIY-проекты, которые во многом так же стали драйвером этой популярности, все эти факты просто кричали тебе туда надо.
Почти сразу как я обзавёлся небольшим количеством фабричных и DIY устройств и запустив у себя Zigbee сеть мне захотелось сделать что-то под себя. Родившаяся идея сделать датчик влажности почвы органично вписалась в мои планы, так как я как раз заканчивал тесты другого своего проекта аналогичного датчика на nRF52 c e-ink экраном. Компактные размеры и внешний вид это всё что закладывалось из требований в будущий проект, а заготовка под эти требования у меня, получается, уже была.
▍ Потратив пару часов на переработку проекта на nRF52 железная часть проекта на CC2530 была готова:

Опираясь на опыт (хоть и скромный, так как я не агроном) в повседневном использовании таких датчиков на подоконниках и с учётом параметров потребления у чипов CC2530 в датчике был заложен минимальный функционал, исключительно измерение уровня влажности почвы. Плата датчика получился в размерах 137мм х 20мм, для удобства сборки электронные компоненты располагаются на одной стороне платы, за исключением держателя батарейки, который напаивается на обратную сторону платы. Датчик имеет светодиод, пару кнопок, порт программирования, простую защиту от переполюсовки батарейки на транзисторе. Время сборки датчика при ручной пайке составляет 10-15 минут, схема датчика состоит всего из 10 элементов, включая радиомодуль.


▍ Схема датчика:

Если сборка датчика занимает 10-15 минут, то изготовление корпуса этим, к сожалению, похвастаться не может.
▍ С разработкой модели корпуса особых проблем не было, так как за основу также был взят корпус от проекта датчика влажности почвы на nRF52 c e-ink. Пара штрихов в редакторе и корпус стал немного тоньше и без выреза под экран, ещё парой штрихов корпус был дополнен окном для индикации расположенного на плате светодиода. Сделал сразу два варианта задней крышки под батарейку CR2450 и CR2477. Печать всех трёх деталей корпуса занимает чуть больше часа. На этом лёгкая часть с корпусом заканчивается, далее начинается грустная история, шлифовка, сверловка, заливка жидким УФ полимером индикаторного отверстия под светодиод, полировка. На всё это времени было потрачено около полутора двух часов. Наверное, как самый хороший и правильный вариант изготовления корпуса стоит рассматривать просто печать корпуса на хорошо настроенном принтере, уверен результат будет не хуже.


▍ Основа программной части проекта это популярный проект DIYRUZ Flower. Я определённо не программист, мой багаж — это опыт пары лет программирования в Arduino, который в принципе позволил мне прочитать код проекта и разобраться в нём. Трудным моментом, пожалуй, можно отметить настройку среды для разработки. Но описание проблем с которыми столкнулся, опущу, в этой статье просто приведу пару ссылок на мануалы и статьи, на которые я опирался (ссылка 1, ссылка 2, ссылка 3) и также поблагодарю неравнодушных к чужим проблемам участников чата ZIGDEV, помогавших советами. Изменения, которые я внёс в код оригинального проекта: увеличение интервала чтения сенсора влажности почвы до 1 часа, хранение предыдущих значений влажности почвы для сравнения с новыми значениями и отправки данных в сеть только при изменении значений на 1%. Добавлено чтение внутреннего температурного сенсора CC2530, сравнение, и отправка данных при изменении температуры на 1°С. Конечно, точность температуры с внутреннего температурного сенсора имеет большую погрешность, но в целом даёт понимание об изменении температуры воздуха. Точнее, этот параметр можно откалибровать в конверторе zigbee2mqtt, правда, особой (и не особой) нужды я в этом не увидел.

Так выглядит передача данных об уровне влажности почвы, запрос уровня влажности почвы через модуль Телеграм в Мажордомо

Проблема с которой я столкнулся при тестировании
Об этом решил упомянуть, уверен это кому-то поможет быстрее найти решение, столкнувшись с чем-то похожим. Вопрос, возникший при тестировании датчиков, вызывал непонимание в каком направлении копать, рождал разнообразные теории магического характера :). Суть проблемы была в том, что датчики при слабом сигнале (linkquality<90) начинали слать довольно часто анонсы координатору, кто кого терял было не очень понятно, соответственно, находясь большее время не во сне, датчик активнее терял заряд батареи. Проблема решилась после покупки координатора от Jet Home (CC2652) купленного с оказией по акции.

До этого сеть работала на координаторе ZigBee стик V4 (RF Star CC2652). Думаю здесь дело в прошивке координатора, к сожалению, какая прошивка находится в моём старом, я не знаю, но это та, на которой не подключена индикация светодиодов на плате координатора, в дальнейшем планирую перепрошить старый координатор в роутер.
Пока наблюдались эти проблемы, я даже сделал ещё одну версию платы под другой радиомодуль, единственный его плюс — это +5 единиц кармы к линккволити, но ценник этого модуля полностью обнуляет этот бафф :).

Устройство уже добавлено в список поддерживаемых на гитхабе проекта zigbee2mqtt, автор проекта очень оперативно реагирует на pull requests.
Немного о грустном в этом направлении, я использую Мажордомо в качестве системы умного дома у себя, для этой системы написан замечательный модуль z2m, к сожалению, мой pull request висит там не рассмотренным уже месяц, так что пока на своём гитхаб я написал инструкцию о том, где необходимо внести изменения чтобы вывод информации о датчике в мажордомо заиграл красками :).

Такая же печальная история с другим проектом — SLS шлюз. Я планировал на даче развернуть сеть Zigbee управляемую через шлюз SLS, протестировать его, погонять свои датчики, поделится своими впечатлениями. Но мне так и не удалось получить обещанную прошивку с поддержкой моего датчика, наверное, забыли, а внешние конверторы в этом проекте не поддерживаются :(.




Уличный zigbee датчик температуры и влажности с усилителем
Если вы как и я, хотите понять, что такое Zigbee, попытаться сделать свои первые DIY Zigbee устройства, то приглашаю вас в чат для разработчиков zigbee девайсов/прошивок ZIGDEV
Если вам интересно всё, что связано с DIY, вы являетесь DIY разработчиком или хотите только начать, вы заинтересованы в использовании DIY девайсов и хотите узнавать первыми о моих проектах, то приглашаю всех в телеграм чат — DIYDEV.
Так же приглашаю читателей обсудить это и любые другие устройства в самый главный Телеграм-чат по Zigbee.
