Отключите питание датчика влажности, за исключением случаев считывания значений.
У меня есть Arduino Uno и датчик влажности (похоже на клон YL-69), погруженный в воду. Мне нужно считывать значение датчика (аналоговое) каждые 3 минуты или около того. Проблема в том, что датчик всегда питается от Arduino (GND и VCC), т. е. ток проходит через него все время. Из-за этого на одном из электродов датчика (предположительно, содержащем медь) образуется голубой остаток. Я бы хотел НЕ подавать питание на датчик, за исключением короткого момента, когда мне нужно считать значение. Как это сделать?
E DIT: Я только что заметил связанный вопрос (ссылка ниже). Пользователь решил периодически подавать питание на датчик через цифровой вывод, а не через VCC. Это разумно?
@MrSparkly, 👍2
4 ответа
Лучший ответ:
Если ваш датчик потребляет менее 40 мА для работы, то вы можете безопасно «питать» его от контакта GPIO.
Связанный вопрос также спрашивает, как долго датчик должен быть включен, чтобы получить стабильные показания. Для такого датчика, как этот, он, по-видимому, является простым резистивным делителем напряжения, причем сам датчик влажности обеспечивает одну ветвь схемы делителя. Активный компонент, по-видимому, является компаратором для обеспечения цифрового выхода HIGH/LOW в качестве альтернативы аналоговому выходу.
Большинство схем показывают конденсатор между землей и выходом делителя напряжения, предположительно для снижения шума. Вам нужно дать этому конденсатору зарядиться и стабилизироваться, прежде чем вы начнете считывать показания. Время для этого в некоторой степени зависит от значения этого конденсатора и напряжения питания, которое вы используете.
Однако можно с уверенностью предположить, что времени ожидания в 1 секунду более чем достаточно.
Вот другие меры по защите датчиков влажности от коррозии, которые я нашел:
Датчик влажности с позолоченными электродами: https://www.dfrobot.com/product-599.html#.UhflOL-N_H0
Замена металлических электродов на графитовые: http://tuxgraphics.org/electronics/200908/eth-flower-watering.shtml
Емкостный (т.е. не резистивный) датчик влажности: https://www.amazon.com/DFROBOT-Gravity-Capacitive-Corrosion-Resistant/dp/B01GHY0N4K/ref=cm_cr_arp_d_product_top?ie=UTF8
Некорродирующий высококачественный датчик ($$$): https://www.vegetronix.com/Products/VH400/
Я построил проект, очень похожий на этот, прошлой зимой для мониторинга уровня влажности в почве растений, которые я хранил зимой в подвале. Я использовал контакты GPIO для питания датчиков, похожих на те, что описал выше Хосе Кан Ук, и провел тестирование, чтобы определить минимальное время для получения показаний. Я обнаружил, что 150 мс было достаточно для получения стабильных показаний в почвах, варьирующихся от полностью насыщенных и со стоячей водой до очень сухих (листья растений начинают показывать признаки высыхания).
В своем проекте я использую полностью водонепроницаемый датчик SMT50 (см. http://www.truebner.de/en/smt50). Он рассчитан на питание от 3,3 В до 30 В с током около 3 мА, поэтому его можно запитывать от GPIO. Обратите внимание, что выходное напряжение GPIO уменьшается с током (см. AVR datasheet pin driver strength).
- Какое максимальное энергопотребление Arduino Nano 3.0?
- Питание светодиодной ленты - Сколько ампер?
- Как запомнить значения переменных после перезагрузки платы Arduino Uno R3
- Power Bank самопроизвольно отключается
- Как я могу запитать Arduino Nano от батареи LiPo, желательно 3,7 В
- Если USB дает 5 В, как Arduino может подавать 5 В на контакт 5 В? (И еще вопрос)
- Могу ли я иметь резервное питание для устройства Arduino?
- Клон Digispark не распознается при подключении