Беспроводной модуль для ёмкостного датчика влажности почвы на nRF52832
Всем привет, сегодня расскажу о том как я решил проапгрейдить датчик влажности почвы с Алиэкспресс. Примерно месяц назад был куплен датчик влажности почвы. Зачем покупал и сам не знаю, наверное все из-за цены в 40 рублей 🙂
Получив и успешно проверив датчик(с помощью Ардуино Нано) стал думать куда бы его пристроить в уже работающей системе на основе Майсенсорс(что это такое поясню позже). Так как датчик супер дешевый, то очень хотелось бы найти так же дешевое и незатейливое решение.
Схема датчика построена на микросхеме таймере TLC555. В схему добавлен стабилизатор напряжения XC6206P332 (даташит) на 3.3в, соответственно схему можно запитывать от источника максимум в 6в. При подаче напряжения питания ниже 3.3в, стабилизатор отдает на выходе тоже, что и получает на входе.
Уже как месяца два у меня лежали без дела два модуля nRF52832 от компании EBYTE — E73-2G4M04S1B. Очень дешевые модули, в вопросе цены оставляют далеко позади все другие модули nRF52.
Но у них есть 2 существенных для меня минуса. Первый и менее важный это размеры модуля. Они довольно большие. Второй минус, более важный это отсутствие в схеме двух маленьких элементов из-за чего модуль теряет половину своей привлекательности. Отсутствующие элементы это две индуктивности подключаемые к ножкам DCC и DEC4. Плохо это тем что не позволяет использовать модули в режиме пониженного энергопотребления, 7-8мА VS 15-16мА. Почему их не стали ставить я не могу понять, вариант «из-за экономии» не вписывается, так как на схеме можно было сэкономить и на других элементах. В общем добавляем в хотелки установку индуктивностей и наличие режима DC-DC.
Следующее что надо решить это управление питанием датчика. Так как наша тема это батарейная тема то постоянное питание это плохой вариант. Самое простое что сразу напрашивается это использование транзистора в режиме ключа. Выбор пал на полевой p-канальный транзистор IRLML6402TRPBF.
Следующее о чем нужно было подумать это порт программирования, под SWD и Serial сделал просто контактные площадки. Конечно так же добавил микро разъем, который использую и в других устройствах 2x3P | 6pin | 1.27mm | SMT | Pin Header Female, но это теперь чисто опциональная штука.
Так же нужно добавить тактовую кнопку и как минимум один светодиод, что бы было по проще понимать работает оно или нет :).
Следующее что надо было решить это как соединять ноду радио модуль и емкостный датчик. Розетку которая установлена на датчике и провода идущие в комплекте использовать совсем не хотелось. Шаг отверстий в разъёме на плате куда напаивается розетка, составляет 2.54мм, так же на плате выведен дополнительный дублирующий ряд. Было принято решение использовать обычную «гребенку» с шагом 2.54, а использование сразу обоих рядов придаст дополнительную жесткость соединения.
Вроде бы всё, из плюшек несколько элементов которые можно оставить или спаять на черный день и розетка с проводом (где нибудь пригодится :)).
Плату, как обычно, делал в программе Диптрейс. Первый вариант был сделан для ЛУТ, собственно о том что получилось как раз речь в этой статье. Позже был сделан вариант платы для заказа на производстве.
После травления, лужения, вырезания, сверления и пайки пришло время тестов. Вообще ничего особого от датчика на модуле от EBYTE не ждал, тем более с каким то внешним влагомером с Али. Но по итогу был даже удивлен некоторыми результатами. Потребление в режиме передачи данных составило не более 9мА(на половину разряженной батарейке), потребление в режиме измерений составило не более 5 мА. Потребление в режиме сна составило 2.1-2.2мкА.
Итого что теперь может датчик. Работать в пониженном режиме энергопотребления. Измерять и передавать на контролер УД посредством сети Майсенсорс показания влажности почвы, показания температуры, показания оставшегося заряда батарейки, показания уровня радиосигнала.
А что такое Майсенсорс?
A это сообщество разработчиков програмного обеспечения с открытым исходным кодом. Данный протокол разработан сообществом для создания радио и проводных сетей. Первоначально проект разрабатывался для платформы Arduino.
Поддерживаемые аппаратные платформы: Linux / Raspberry Pi / Orange Pi | ATMega 328P | ESP8266 | ESP32 | nRF5x | Atmel SAMD, используемое в Arduino Zero (Cortex M0) | Teensy3(MK66FX1M0VMD18) | STM32F1.
Поддерживаемые радиопередатчики: NRF24L01 | RFM69 | RFM95 (LoRa) | nRF5x
Поддерживаемый проводной тип связи: RS485
Поддерживаемые типы связи между гейтом и контролером: MQTT | Serial USB | WiFi | Ethernet | GSM
ПО естественно тестовое, что я бы непременно добавил(и добавлю), это учет коэффициента разряда батарейки, хоть я и использую в ПО настройку опорного напряжения как внешнее батарейное vdd/4, но все равно присутствует небольшой шум при измерениях с разным уровнем напряжения. Так же пока не ясно стоит ли или нет вводить температурный коэффициент в расчеты. Неясно потому что пока нет статистики. Но, а в целом на выходе очень симпатиШные результаты:). Стоимость всего что пришлось добавить к китайскому датчику влажности составила что-то в районе 400 рублей. Вполне неплохо.
Источник
Беспроводной DIY монитор влажности почвы
Приветствую всех читателей Хабра! Сегодня хочу поделится с вами моим новым проектом — беспроводным датчиком влажности почвы, который построен на основе всем известного модуля влажности почвы с алиэкспрес. Новый датчик это логическое продолжение первого моего DIY проекта на эту тему. Но в новой реализации это уже не ардуино модуль, а законченный девайс с своим собственным корпусом. Итак, каша из топора, часть вторая! 🙂
Китайский модуль измерения влажности почвы построен на таймере 555. Метод измерения — емкостной. Для моего проекта нужна была версия модуля с установленным стабилизатором напряжения XC6206P332 на 3.3В, который в дальнейшем придется удалить с платы модуля. Дело в том что в таких версиях используемся модификация таймера TLC555 с нижним порогом по питанию в 2В. В версиях без стабилизатора используются таймеры NE555 c нижним порогом по питанию в 5В. Но в любом случае что проще купить для повторения этого проекта дело повторяющего. В первом варианте выпаиваем стабилизатор напряжения, во втором меняем таймер например на такой — LMC555 (даташит) работающий даже от 1.5В. Для беспроводного модуля к китайскому датчику влажности почвы я выбрал радиомодуль от EBYTE E73C на котором установлен чип nRF52840. Аргументом стала цена модуля и имеющееся количество данных модулей у меня в запасах.
Беспроводной модуль получился очень простой, RGB светодиод, пара кнопок, полевой транзистор, батарейка. Собрать такой девайс сможет даже самый неопытный начинающий паяльщик. На датчике влажности помимо удаления стабилизатора напряжения так же необходимо выпаять разъем и впаять на его место штырьевую вилку 3P, шаг 2.54 мм.
Размеры платы получились немного меньше чем в первом проекте — 42х29мм, определялись размером держателя батарейки.
Корпус был напечатан на моем бытовом SLA принтере ANYCUBIC. Время печати деталей порядка пары часов. Последующая пост обработка заняла около получаса. Стоимость израсходованной полимерной смолы
Потребление в режиме сна — 4.7мкА, в режиме передачи 8мА. Интервал замеров изменяемый, шаг 1 минута. Время измерения 50мс (5 замеров в тестовой программе), потребление во время измерения
1 мА. Так же производятся измерение температуры чипа, измерение уровня заряда батарейки. Передача данных на контролер УД посредством сети Mysensors, передача данных на контролер УД посредством сети Zigbee.
Код тестовых программ находится на моем Github
Пример работы в сети Mysensors и УД Мажордомо
Пример работы в сети ZigBee и УД Мажордомо
Код настройки конвертора в модуле zigbee2mqtt для датчика влажности (пока не уверен, что это верное решение).
Тестовую прошивку написал один из участников нашего DIY сообщества — Lenz, вот его GIthub.
Стоимость компонентов которые пришлось добавить к китайскому влагомеру составила порядка 400-500 рублей. На мой взгляд вполне неплохо.
Видео работы датчика
Дальнейшие планы на этот проект. Хочется заменить МК на что то более простое, например на nRF52810 или nRF52811, но всё будет упирается в цену, скорее всего придется отказаться от радиомодулей и сделать просто на чипе. Возможно подумаю добавить зуммер, вполне вероятно стабилизатор питания, так как сейчас необходимо учитывать напряжение питания при замере. Довести до стабильного состояния Zigbee версию, сделать BLE версию, сделать мобильное приложение-показометр. Вообщем точно будет что-то еще.
Если вас заинтересовал данный проект, предлагаю зайти в группу телеграмм, там всегда будет оказана помощь в освоении протокола Майсенсорс, Zigbee, BLE на nRF5, помогут освоить программирование nRF52 в Ардуино ИДЕ и не только в ней.
Источник
Схема емкостного датчика влажности почвы
Описанные в литературе датчики дождя и влажности, как правило, основаны на измерении сопротивления между контактами-щупами, помещаемыми в контролируемую среду (например в почву). В предлагаемой схеме управление нагрузкой осуществляется с помощью генератора частоты звукового диапазона, катушка которого (L1) зарывается в почву. Прибор реагирует на распространение звуковых волн во влажной и сухой среде.
Влажная почва сделает работу генератора невозможной — произойдет уменьшение амплитуды и срыв колебаний. По величине поглощения энергии в катушке определяется степень влажности почвы. Индуктивный контроль состояния почвы по сравнению с емкостным методом и методом измерения электрического сопротивления позволяет оперативно реагировать на изменение влажности вокруг катушки L1. Сопротивление почвы постоянному току между двумя щупами-датчиками изменяется постепенно.
Емкостной метод измерения на дачном участке не эффективен вследствие перемещения по территории людей и животных, являющихся источниками ложных срабатываний. У индуктивного метода также есть свои недостатки.
На’практике установлено, что, кроме влажности, на колебания генератора с помещенной в почву катушкой L1 оказывают влияние частота генератора, глубина, на которой находится катушка, и температура почвы. Длина соединительных проводов от катушки к схеме не должна превышать 1 м. В весенне-летний сезон прибор работает стабильно в режиме 24 часа в сутки.
Метод был предложен в 2001 году журналом «Popular Electronics», однако электрическая схема, приведенная там, при повторении оказалась неработоспособной. Добавив один транзистор и самодельную катушку, удалось реализовать корректно работающий прибор (схема на рис. 2.27).
Рис. 2.27. Электрическая схема датчика влажности почвы на автогенераторе
Размеры катушки позволяют применять прибор на приусадебном участке с любым составом почв в любом климатическом поясе. А вот для контроля влажности земли, например в цветочном горшке, если только цветок — не пальма, устройство неэффективно, т. к. оптимальная глубина погружения катушки L1 составляет 45—55 см; цветочный горшок такой глубины оказывается под рукой не всегда. Устройство надежно работает, контролируя влажность почвы, скажем, в теплице.
Транзистор VT2, катушка индуктивности L1 и конденсаторы С2, СЗ образуют автогенератор. Колебания возбуждаются на частоте около 16 кГц. При сухой почве или размещении катушки L1 вне влажной среды генерация происходит нормально — амплитуда импульсов на коллекторе транзистора VT2 составляет около 3 В. Резистор R4 вместе с конденсатором С4 пропускают импульсы автогенератора на частоте резонанса. Без него чувствительность прибора недостаточна.
Транзистор VT1, включенный по схеме эмиттерного повторителя, уменьшает влияние нагрузочных цепей на работу генератора. Диоды VD1, VD2 преобразуют импульсы автогенератора в постоянный ток. Последний задает смещение на базе ключевого транзистора ѴТЗ. Усиленные транзистором ѴТ2 импульсы автогенератора проходят через разделительный конденсатор С5 (он не пропускает постоянную составляющую напряжения), выпрямляются диодами VD1, VD2 и открывают транзистор ѴТЗ — в результате сработает реле и зазвучит сирена. Устройство сирены на схеме не показано.
Транзистор ѴТЗ включит реле К1, как только выходное напряжение генератора окажется достаточным для открывания этого транзистора. Если амплитуда импульсов автогенератора на коллекторе транзистора ѴТ2 мала (менее 1 В, что свидетельствует о влажной среде вокруг L1), транзистор VT1 не открывается полностью и напряжения смещения на базе ѴТЗ не достаточно для его открытия. Реле обесточено.
В качестве нагрузки прибора рачительный дачник может использовать любую схему звуковой сигнализации или водяной насос с питанием от сети 220 В. В этом случае контакты реле К1 должны коммутировать мощное реле на соответствующее напряжение, например МКУ-48С, а оно своими контактами будет подавать напряжение на насос. Диод VD3 препятствует броскам обратного тока через переход «эмиттер-коллектор» ѴТЗ в моменты включения или выключения реле. Чувствительность генератора к изменению влажности почвы устанавливается переменным резистором R3 (типа СП5-3).
Катушка L1 намотана на пластмассовом каркасе длиной 30 см с внешним диаметром 100 мм и содержит 250 витков провода марки ПЭЛ или ПЭВ диаметром 1 мм, намотанного виток к витку. Сверху намотка закрепляется двойным слоем изоляционной ленты.
Элементы устройства закрепляют на монтажную плату длиной 50 х 70 мм. «Начинка» монтируется в любом подходящем металлическом корпусе. Движок переменного резистора через отверстое в корпусе должен быть доступен для корректирующей регулировки извне. Внутри корпуса размещается источник питания с понижающим трансформатором и стабилизатором КР142ЕН8Б с выходным напряжением 12 В, само устройство и дополнительная схема звуковой сигнализации. Светодиод HL1 индицирует режим «включено». Тумблер S1 подает питание на схему. Корпус прибора должен быть влагонепроницаемым. На торцевой стенке монтируется разъем РП10-11, который соединяет элементы схемы с питающим сетевым напряжением 220 В, проводами катушки L1 и устройством звукового сигнализатора.
Все постоянные резисторы — типа МЛТ-0,25. Оксидные конденсаторы С8, С9, сглаживающие пульсации напряжения, — типа К50-20. Конденсаторы C1—С7 — типа КМ-6. Реле К1, кроме указанного на схеме, может быть типа РЭС10 (исполнение РС4.524.314), РЭС15 (ХП4.591.010) или аналогичное слаботочное на напряжение срабатывания 8—10 В. Диодный мост VD4—VD7 — любой маломощный из серий КЦ402, КЦ405. Вместо транзисторов серии КТ3102 можно применить приборы КТ315Б. Переменный резистор можно заменить на СП5-1ВБ. Стабилизатор D1 устанавливать на радиатор не нужно, поскольку ток, потребляемый схемой, очень мал — 20 (50) мА ‘при выключенном (включенном) реле К1. HL1— любой светодиод. Трансформатор Т1 — типа TПП277-127/220-50 (необходимо соединить перемычками обмотки 3—7 и 12—13) или любой другой с напряжением на вторичной обмотке 13—17 В.
При исправных деталях устройство начинает работать сразу -после сборки. Работу генератора проверяют на рабочем столе, подключая щуп осциллографа к коллектору транзистора VT2. Регулировка прибора сводится к установке порога, при котором срывается генерация автогенератора посредством изменения величины сопротивления R3 («чувствительность»). Делают это при той же температуре среды, при которой прибор будет осуществлять контроль влажности.
Для этого индуктивную катушку L1 помещают в сухую почву (например в глубокий цветочный горшок) на глубину 20—30 см, подают питание на схему прибора с подключенным устройством звуковой сигнализации, изменением сопротивления переменного резистора R3 добиваются включения реле К1 по срабатыванию сирены. Оптимальное положение движка R3 такое, когда устройство будет работать стабильно (реле К1 включаться) при серии из нескольких переключений тумблера SA1.
После установки порога чувствительности переходят ко второму этапу регулировки — увлажняют почву в месте зондирования катушки L1. Принудительное увлажнение сводится к выливанию на испытуемый участок земли 2—3 л воды. Через минуту звуковая индикация прибора должна прекратиться. Регулировка может иметь отличие от указанной методики в зависимости от состава почвы и ее температуры.
Кашкаров А. П. 500 схем для радиолюбителей. Электронные датчики.
Источник