Купить на Aliexpress
Capacitive soil moisture sensor module Corrosion Resistant V1.2 (цена: 0.75$) Capacitive Soil Moisture Sensor Module (цена: 0.94$) | Емкостной сенсор влажности. | |
LM393 Soil Moisture Hygrometer Detection (цена: 0.41$) | Резистивный сенсор влажности. | |
T21D Digital Multimeter RM113D 6000 Counts (цена: 15$) | Прикольный мультиметр, как у меня. Измерение всех основных величин + фонарик, магнит, световая индикация, детектор проводки. |
Расчеты
Емкость вычисляется по следующему выражению:
Пусть пластины имеют размеры 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 пФ):
Таким образом понятно, что при увеличении емкости ( погружение в воду) сопротивление нижнего плеча будет уменьшаться, как и падение напряжения на нем, а значит и выходное напряжение (см. подтверждение опытом ниже).
Но остается еще одно — выделить только амплитуду, именно для этого применяется АМ-детектор. Его расчет был выполнен, но ничего полезного этого не дало, поэтому номиналы взяты такие же, как у готового. Главная суть в этом:
нужно подобрать емкость и сопротивление таким образом, чтобы конденсатор успевал подзаряжаться при увеличении сигнала, а при уменьшении подразряжался за время низкого уровня, но при изменении сигнала огибающая изменялась.
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 единиц кармы к линккволити, но ценник этого модуля полностью обнуляет этот бафф :).
▍
На своём
GITHUB
для желающих повторить я выложил гербер файлы проекта для заказа плат, список компонентов, схему, модели корпуса, исходники проекта, скомпилированные файлы программы для прошивки радиомодулей.
Устройство уже добавлено в список поддерживаемых на гитхабе проекта zigbee2mqtt, автор проекта очень оперативно реагирует на pull requests.
Немного о грустном в этом направлении, я использую Мажордомо в качестве системы умного дома у себя, для этой системы написан замечательный модуль z2m, к сожалению, мой pull request висит там не рассмотренным уже месяц, так что пока на своём гитхаб я написал инструкцию о том, где необходимо внести изменения чтобы вывод информации о датчике в мажордомо заиграл красками :).
Такая же печальная история с другим проектом — SLS шлюз. Я планировал на даче развернуть сеть Zigbee управляемую через шлюз SLS, протестировать его, погонять свои датчики, поделится своими впечатлениями. Но мне так и не удалось получить обещанную прошивку с поддержкой моего датчика, наверное, забыли, а внешние конверторы в этом проекте не поддерживаются :(.
Фото датчика влажности
Что сейчас в разработке?
Уличный zigbee датчик температуры и влажности с усилителем
Если вы как и я, хотите понять, что такое Zigbee, попытаться сделать свои первые DIY Zigbee устройства, то приглашаю вас в чат для разработчиков zigbee девайсов/прошивок ZIGDEV
Если вам интересно всё, что связано с DIY, вы являетесь DIY разработчиком или хотите только начать, вы заинтересованы в использовании DIY девайсов и хотите узнавать первыми о моих проектах, то приглашаю всех в телеграм чат — DIYDEV.Так же приглашаю читателей обсудить это и любые другие устройства в самый главный Телеграм-чат по Zigbee.
Спасибо за внимание, всем добра!
Проверка на практике
Сначала непосредственно датчик, состоящий из двух кусочков фольгированного стеклотекстолита FR-4 (70×12 мм).
*также не забываем изолировать открытые участки меди клейкой лентой
И также схемка в миниатюрном исполнении.
Сигнал сгенерирован с помощью МК (ШИМ, f = 1 МГц, D = 50%), конечно это можно сделать с помощью того же таймера NE555, но если устройство уже будет иметь микроконтроллер, то зачем же еще одна МС?
Теперь просто подключаем питание (здесь 3.3 В), вольтметр на выход и смотрим как изменяется напряжение при заливании водой.
Очень хорошо, показания изменяются очень плавно и четко.
Остается только оцифровать показания с помощью встроенного в МК АЦП и придать им какие-то смысловые привязки, например проценты.
Как выбрать типоразмер детектора влаги
Прежде всего, устанавливают, какие из нижеследующих характеристик требуется получить:
- Объемное содержание воды в грунте.
- Водный потенциал почвы.
- Кривые выделения влаги.
Для выбора датчика важно верно принять тип почвы и её текстуру. Кроме того, точность показаний устройства ограничивается определённой площадью участка. Например, применительно к датчику влажности почвы для комнатных растений этот показатель несущественен, в то же время фермеру или агроному он весьма важен. Первичные сведения о типе грунта включают степень его засолённости (не более 10 дСм/м) и текстуру — форму и размеры составляющих его частиц, наличие слоёв, трещин и т.п. Точность работы возрастает, если прибор характеризуется минимальной чувствительностью к солям.
Тестирование детектора производят в следующей последовательности:
- Включают влагомер.
- Настраивают его на тот тип грунта, который предполагается исследовать на влажность.
- Щупы вставляют в грунт на рекомендуемую глубину перпендикулярно поверхности до упора нижней плоскости корпуса в почву.
- Снимают показания дисплея и сравнивают значения с эталонными для данных условий измерения.
- Повторяют замер для участков почвы, которые располагаются на расстоянии 1,0…1,5 м. Разброс данных не должен превышать 0,5 %. Для неоднородных грунтов расстояния между точками замеров следует уменьшать.
Если грунт – сухой, то для улучшения ввода щупов почву допускается использовать деревянный молоточек, но при этом удары не должны восприниматься корпусом прибора.
Более практичный датчик из пластин оцинковки
Покрыты слоем клейкой ленты.
При сухом грунте на выходе примерно 1.5 В.
После сверхобильного полива 0.75 В.
Как это работает?
Прямоугольные импульсы большой длительности (поз.1), проходя через делитель напряжения, образованного элементами C2, R2, R3, Rпочвы, R4, C3, превращаются в короткие импульсы (поз.2). Эти импульсы через конденсатор С4 поступают на вход элемента DD1.3. Туда же, через резистор R6, поступает некоторый уровень постоянного напряжения (поз.3) с делителя напряжения R5.
Когда общий уровень напряжения на входе DD1.3 (поз.4) достигает порога срабатывания компаратора (отмечено красной точкой), запускается одновибратор на DD1.3, DD1.4. Длительность управляющего импульса на выходе DD1.4 определяется постоянной времени R7, C5.
Вернуться наверх к меню.
Автоматическая система полива (простейшее исполнение)
Прикупил маленький водяной насос, работает неплохо и хорошо подойдет для проверки.
Управление насосом через ключ (полевой транзистор IRLML2502) ШИМ-сигналом 1 кГц.
После выполненой калибровки программа выключит насос, когда напряжение станет ниже нижнего порога (0.75В) и включит, когда пересечет верхний порог (1.4 В).
Исполнительные устройства автоматизации полива
Основным исполнительным устройством автоматизации полива является электронный клапан с регулировкой потока воды и без. Вторые дешевле, проще в обслуживании и управлении.
Хорошо зарекомендовали себя клапаны производства американской компании Hunter. Для разных целей используются клапаны c проходным диаметром 1, 1.5, и 2 дюйма с наружной или внутренней резьбой.
Существует множество управляемых кранов и других производителей.
Если на вашем участке случаются проблемы с подачей воды, приобретайте электромагнитные клапаны с датчиком потока. Это предотвратит выгорание соленоида при падении давления воды или прекращении водоснабжения.
Направления применения
Влажность почвы
Самым очевидным применением будет определение влажности грунта в цветочном горшке или просто на участке.
Таким образом можно встроить этот датчик в систему автоматического полива растений.
Наличие дождя
Для определения дождя также можно использовать сенсор такого типа, просто между пластинами расположить губку, а сбор капель сделать с помощью воронки.
Таким образом во время дождя поролон впитывает воду, емкость возрастает, а после прекращения дождя остатки уйдут вниз, и еще через время она снова станет сухой.
Уровень воды в емкости
Имея небольшой (или большой) запас воды в цистерне удобно проверять её уровень на расстоянии, ведь обычно емкость находится где-то в труднодоступном месте на высоте.
Если емкость металлическая, то она может выступать одним электродом. Если пластиковая, то его придется сделать, но это не так сложно.
Прикасание к телу
В одном из устройств принцип изложенный выше был использован для обнаружения касания к телу человека, пример ниже.
*это электронный термометр; смотреть в правый верхний угол
Принцип функционирования прибора
Исходный сигнал передаётся через токопроводящие щупы и усиливается. Потенциометр преобразует значение напряжения в диэлектрическую проницаемость, и усредняет полученные значения по длине щупов. Обычно детекторы имеют зону воздействия длиной 20…40 мм относительно нижней поверхности корпуса. С увеличением длины чувствительность (особенно на крайних участках) возрастает. Для обеспечения необходимой точности измерений датчики подвергают предварительной калибровке.
Датчик влажности почвы позволяет оценивать потери влаги с течением времени из-за её испарения и жизнедеятельности растений. Прибором можно контролировать содержание влаги в почве, управляя орошением в теплицах и других закрытых помещениях (см. рис. 4).
Характеристики:
- Рабочее напряжение: 2…5 В;
- Рабочий ток: 20…40 мА;
- Тип интерфейса: аналоговый или цифровой;
- Рабочая температура использования: 10°C … 30°C.
Для работы цифрового детектора его перед применением потребуется оснастить необходимым программным обеспечением.
Рисунок 4. Оценка влажности почвы для домашних растений
Итого
Преимуществом емкостного датчика перед просто двумя голыми электродами является отсутствие электрохимической реакции (электролиза), при котором на контактах будут восстанавливатся вещества (из раствора) и портить почву, а кроме этого они будут сами коррозировать. Конечно можно этот процесс очень значительно замедлить (опрашивать датчик редко), но все же.
Медные площадки защищены маской, но будет ли она достаточно устойчива в суровых условиях? Рассматривается возможность дополнительного покрытия слоем лака/краски.
Изготовление емкостного датчика легко осуществляется при использовании технологий изготовления печатных плат, особенно это хорошо, когда остальные компоненты располагаются там же. Если же он должен быть велик, то здесь используем металлический лом.
Так как получаемые показания зависят от параметров датчика, то он требует калибровки.
Принцип действия автоматики
В системах автополива обычно действует правило «поливай или не поливай». Как правило, никто не нуждается в регулировании силы напора воды. Это связано с использованием дорогостоящих управляемых клапанов и других, ненужных, технологически сложных, устройств.
Почти все предлагаемые на рынке датчики влажности, помимо двух электродов, имеют в своей конструкции компаратор. Это простейший аналого-цифровой прибор, который преобразует входящий сигнал в цифровую форму. То есть при установленном уровне влажности вы получите на его выходе единицу или ноль (0 или 5 вольт). Этот сигнал и станет исходным для последующего исполнительного устройства.
Для автополива наиболее рациональным будет использование в качестве исполнительного устройства электромагнитного клапана. Он включается в разрыв трубы и может также использоваться в системах микро-капельного орошения. Включается подачей напряжения 12 В.
Для простых систем, работающих по принципу « датчик сработал — вода пошла», достаточно использование компаратора LM393. Микросхема представляет собой сдвоенный операционный усилитель с возможностью получения на выходе командного сигнала при регулируемом уровне входного. Чип имеет дополнительный аналоговый выход, который можно подключить к программируемому контроллеру или тестеру. Приблизительный советский аналог сдвоенного компаратора LM393 — микросхема 521СА3.
На рисунке представлено готовое реле влажности вместе с датчиком в китайском исполнении всего за 1$.
Ниже представлен усиленный вариант, с выходным током 10А при переменном напряжении до 250 В, за 3-4$.