Минимизация помех при обнаружении ИК-излучения
Я начну с того, что скажу, что цель здесь состоит в том, чтобы иметь устройство обнаружения руки / расстояния. По сути, кнопка без касания.
Мне удалось заставить его работать с простым 2-контактным ИК-излучателем и 2-контактным ИК-детектором, используя аналоговое считывание с детектора для запуска события. Проблема в том, что в ясные дни я получаю помехи от солнца.
Есть ли способ подавать импульсы на излучатель с определенной частотой, чтобы детектор активировался только на этой частоте и сохранял 2-контактную настройку?
Одно из решений, к которому я склоняюсь, - заменить ИК-детектор на ИК-декодер и в основном рассматривать его как пульт дистанционного управления, но я не вижу способа определить расстояние с помощью этого метода.
Я также открыт для любых других идей о том, как заставить что-то подобное работать без инфракрасного или ультразвукового излучения.
Спасибо.
@user7274456, 👍1
Обсуждение1 ответ
На самом деле это то, что я собирался попробовать, но так и не собрался с духом.
Моя идея состоит в том, чтобы управлять светодиодом с помощью ШИМ с рабочим циклом 50%. Частота на самом деле не так уж важна, но вы не хотите, чтобы она была слишком высокой для следующей части.
Теперь вы вводите выборку из приемника на фиксированной частоте, которая как минимум в 2 раза превышает частоту ШИМ в буфер.
Затем вы выполняете БПФ для этого буфера.
Сегмент, содержащий частоту ШИМ, должен иметь значение мощности, пропорциональное расстоянию.
Другие источники света вряд ли будут влиять на тот же сегмент, что и частота ШИМ - большинство из них будут влиять только на самый низкий сегмент (0 Гц +).
Или это теория, которая пришла мне в голову. Мне еще предстоит попробовать это на практике.
- Использование VS1838B с Arduino
- Tone() конфликтует с библиотекой IRremote (множественное определение `__vector_7')
- Как остановить вращение сервопривода?
- Arduino IRremote перестает работать
- Использование ИК-пульта с Arduino
- ИК приемник принимает только 0
- Переключение между циклами Arduino ИК-пульт дистанционного управления
- Эмулятор Nikon IR remote trigger (ML-L3) не работает
поиск
VL6180X Датчик дальности времени полета
, @jsotolaВыключите ИК-индикатор. Считайте значение ИК-детектора. Включите ** на ** ИК-светодиод. Считайте значение ИК-детектора. "Вычтите" значение без включенного светодиода из значения с включенным светодиодом. Я взял слово "вычесть" в кавычки, потому что сомневаюсь, что это так просто. Вам нужно будет провести некоторые измерения с различными уровнями окружающего освещения, отобразить их в Excel и посмотреть, какова их взаимосвязь. Короче говоря, откалибруйте свою систему. Но, возможно, вам нужен другой датчик, чтобы получить более точное расстояние. Что-то вроде тех ультразвуковых датчиков., @Gerben