Датчик HC-SR505 PIR выдает только HIGH уровень

Недавно я купил датчик HC-SR505 Mini PIR. Я подключил его плюс к 5 В моего Arduino UNO, выход к цифровому контакту 2 и землю к земле. Я использовал код от Adafruit, чтобы протестировать его, но все последовательные на мониторе отображалось «Обнаружено движение», что означало, что PIR всегда был в ВЫСОКОМ состоянии. Затем я также попытался включить его с помощью 3V3, но PIR продолжал циклически переключаться между состояниями HIGH и LOW. Мы будем очень признательны за любую помощь в том, чтобы мой датчик действительно работал.

, 👍0


5 ответов


0

PIR работает при напряжении 5 В, но вам нужно настроить чувствительность и длину сигнала. Обычно при обнаружении движения датчик передает сигнал ВЫСОКОГО уровня в течение x секунд, определяемых потенциометром на плате. Когда он опускается, датчик готов зафиксировать новое движение.

,

Спасибо за объяснение. Просто хочу отметить, что на HC-SR505 нет потенциометра. Кроме того, вы знаете, является ли выходное напряжение 5В или 3В3?, @Brandon


0

У меня похожая проблема с датчиком HC-SR505. Первые несколько секунд он удерживает 0 на выходном контакте, а затем всегда 1. Я думаю, что это была плохая партия датчиков. Плохая партия китайского производства означает, что рынок наводнили тысячи (или сотни тысяч) неисправных модулей.

Тем временем я решил выбрать один из вариантов:

  1. Придерживайтесь датчика HC-SR501. Он больше, но работает более или менее.
  2. Купите дорогой ($5,90) PIR-датчик от Seeed .
  3. Создайте свой собственный модуль PIR по моим требуемым размерам и функциям (в процессе).

Обновление: Из 5 полученных датчиков 2 выполняют свою работу. Напряжение питания должно быть 5В или выше. Первые 20-60 секунд вывод ненадежен и его следует игнорировать. Тогда все работает нормально (если вообще работает). Поскольку модуль имеет на борту 3,3 В LDO, выходной сигнал составляет 3,3 В.

,

0

Переключитесь на 5 В для Vcc, датчик будет работать правильно. У меня такая же проблема, если я использую 3,3 В для Vcc. На выходе по-прежнему 3,3 В, даже если напряжение Vcc выше 5 В.

,

Хотя использование 3,3 В звучит проблематично, если вы прочитаете вопрос еще раз, вы увидите, что спрашивающий начал свои эксперименты с питанием 5 В и обнаружил, что это не работает. Так что реальная проблема должна быть в чем-то другом., @Chris Stratton

Пробовал с другим источником питания, не от платы. В моем случае я использую ESP8266, и для получения 5 В мне нужен другой источник питания., @ndphu

Вы можете использовать ESP8266, но спрашивающий использует Arduino Uno., @Chris Stratton

Пусть спрашивающий попробует 5в от другого источника питания, не от Уно. Имеет ли это смысл?, @ndphu

Несмотря на то, что это может не помочь ОП, это была моя проблема, и я благодарен за то, что нашел этот ответ., @Marcel Waldvogel


3

Датчик PIR имеет задержку 8 секунд. Поэтому, когда вы включаете Arduino, следите за тем, чтобы на PIR не было движения, а затем через 8 секунд он не должен обнаруживать никакого движения. И всегда такая задержка, каждый раз, когда обнаруживает движение.

,

Это зависит от обстоятельств, не обобщайте (<- как бы вы ни написали это слово)., @Dat Ha

Зависит от того?, @wishmaster75

*Датчик PIR имеет задержку 8 секунд* не факт, что влияет на все PIR., @Dat Ha

я про Hc sr505, @wishmaster75

Я боролся с той же проблемой. Вот также характеристики: https://www.elecrow.com/wiki/index.php?title=HC-SR505_Mini_PIR_Motion_Sensor Спасибо за разъяснение. Подвести итог. 8 секунд начинаются с момента последнего обнаружения движения., @Carlo Gonzales


0

Я нуб. У меня была такая же проблема.

Я подключил сигнал к контакту 7, поэтому я слушал gpio7, который всегда выдавал 1. Но контакт 7 — это gpio4... Прослушивание gpio4 решило проблему :)

,