Почему датчик DHT22 показывает влажность 1,00 %?
У меня есть, казалось бы, простая проблема, но я пока не нашел решения. Недавно я приобрел датчик температуры/влажности DHT22 и подключил его в соответствии с руководством от Adafruit.
Я скачал и установил библиотеку. Я загрузил пример скетча «DHTtester». На всякий случай я также включил библиотеку Adafruit Unified Sensor, потому что в руководстве говорилось, что мне это может понадобиться. Но когда я загружаю скетч и проверяю серийный монитор, значение влажности всегда составляет «1,00%». Температура также снизилась примерно на 4 градуса по Фаренгейту.
Я не знаю, что здесь не так. Я удалил резистор 10К, но ничего не изменилось. Кто-нибудь знает, почему это может происходить? Любая помощь будет оценена по достоинству. Спасибо!
@MICROexchange6, 👍2
Обсуждение3 ответа
Эта проблема в основном возникает, когда датчик DHT11 ошибочно принимается за DHT22 или наоборот. Попробуйте протестировать его на DHT11. Если возможно, можете прислать изображение датчика и схемы подключения.
Определенно DHT22, но я все равно пробовал раскомментировать разные датчики, и показания были неверными., @MICROexchange6
У меня к вам два предложения.
Если вы сравните эти два листа данных: На этом написано "системы обучения adafruit" и это с сайта Adafruit , вы увидите несоответствие относительно значения используемого подтягивающего резистора. В одном документе указано 10 кОм, в другом — 1 кОм. Это немного далековато, но вы можете попробовать добавить еще один резистор сопротивлением 10 кОм параллельно тому, который у вас уже есть на линии передачи данных. Это дает эквивалентное сопротивление 5 кОм, которое работает при использовании с датчиком DHT11 (более дешевая и менее точная версия DHT22).
Существует несколько версий библиотеки DHTxx, поэтому мое следующее предложение — попробовать другую. Возможно, вам придется удалить установленную библиотеку, прежде чем пробовать новую.
Я пробовал разные резисторы, но влажность по-прежнему равна 1,00%. Странно то, что температура указана точно, что заставляет меня думать, что датчик влажности неисправен или сломан., @MICROexchange6
После года простоя за дверью в солнечную/дождливую/ветренную погоду мой DHT22 сдался и все время показывает 1% относительной влажности. Я не рекомендую использовать его просто так. Я открыл его и почистил IPA. Это решило проблему примерно на месяц. Если ваш датчик хранился в ненадлежащих условиях, он может быть подвергнут коррозии/загрязнению., @smajli
Когда я устанавливаю эти датчики для проверки, я дышу на них. И температура, и влажность должны повыситься, поскольку дыхание становится теплым и влажным.
Насколько я помню, влажность выросла с ~40% до ~70%, а температура как минимум на 5 градусов.
Если вы видите повышение температуры, но не повышение влажности, возможно, компонент влажности не работает (возможно, как предполагает смайли).
В данных также присутствует контрольная сумма, поэтому я предполагаю, что если бы возникла проблема со связью, результат был бы -1 или вообще ничего.
- Какова работа pulseIn?
- Сколько датчиков может поддерживать один модуль Arduino?
- Получение BPM из данного кода
- Как подключить более 10 датчиков к Arduino uno r3
- Как использовать два ультразвуковых датчика для управления двигателем 5 Вольт?
- Чтение датчика давления от 4 до 20 мА с использованием uno
- Что выбрать между датчиками температуры и влажности: AM230x или DHT22?
- SRF04 Ультразвуковой датчик - неточные показания
Без схемы вашей установки и кода, который вы используете, это похоже на чтение карт Таро..., @dda
Моя настройка точно такая же, как в руководстве, на которое я дал ссылку. Я использую Arduino Uno. Первый контакт DHT22 подключен к 5 В, второй к 5 В с помощью резистора 10 кОм к цифровому контакту 2, а четвертый к GND., @MICROexchange6
Тогда, если не допустить ошибки в коде или настройке, возможно, это аппаратная проблема — пробовали ли вы DHT на другой плате?, @dda