Отправляем напрямую из Москвы за 3-4 дня

WhatsApp, Telegram, Viber
пн - пт: 10:00 – 20.00

Модуль датчиков жестов, цвета, приближения APDS-9960

9 руб.

 

Артикул: 24341157

 

есть в наличии (6)

 

Общее описание

Датчик APDS9960 - способен определять уровень освещённости в Lux (как общий, так и по трём каналам спектра - красный, зелёный, синий), приближение объектов (препятствий) и жесты (движение объектов влево, вправо, вверх, вниз, к датчику и от него). У более ранней модели APDS9930 имеются только функции определения приближения и уровня общей освещённости.

Модуль построен на базе одноимённого датчика APDS9960, в состав которого входят: ИК-светодиод с программируемым драйвером, 4 фотодиода для обнаружения жестов, 3 фотодиода реагирующих на разные спектры для определения цвета, 1 фотодиод общей освещённости, Уф и ИК-фильтры, усилители с программируемым коэффициентом усиления, МК, АЛУ, АЦП, ОЗУ, контроллер шины I2C с адресом ведомого 0x39 и множество дополнительных блоков. Результаты освещённости в Lux выводятся с использованием эмпирической формулы для аппроксимации реакции человеческого глаза.

Жесты

Датчик APDS9960 способен реагировать на следующие жесты:

  • UP - Движение руки перед датчиком ВПЕРЁД или ВВЕРХ (зависит от положения датчика в пространстве).
  • DOWN - Движение руки перед датчиком НАЗАД или ВНИЗ (зависит от положения датчика в пространстве).
  • LEFT - Движение руки перед датчиком ВЛЕВО.
  • RIGHT - Движение руки перед датчиком ВПРАВО.
  • NEAR - Приближение руки К датчику.
  • Плавно приблизьте руку к датчику сверху на расстояние ≈ 1-5 см., задержите её не менее чем на 1 секунду и быстро уберите в любую сторону.
  • FAR Удаление руки ОТ датчика.
  • Быстро приблизьте руку к датчику с любой стороны, на расстояние ≈ 1-5 см., задержите её не менее чем на 1 секунду и плавно уберите от датчика вверх.
  • NONE Датчик зафиксировал движение, но не смог его распознать.

Подключение

У датчика APDS-9960 логика и питание только 3,3 В!

Выводы SDA и SCL модуля подключаются к аппаратной шине I2C Arduino. Если Ваша Arduino имеет 5 В логику, то выводы SDA и SCL подключаются через двунаправленный преобразователь уровней 3.3 - 5 В.

Выводы GND, VCC и VL являются выводами питания (вывод VCC - питание модуля +3.3 В, а вывод VL - питание встроенного ИК-светодиода +3.0 ... +4.5 В). В модуле вывод VL соединён с VCC через перемычку PS, следовательно, напряжение питания +3.3 В, подаётся только на вывод VCC. Если Вам потребуется запитать ИК-светодиод от вывода VL а не от питания модуля VCC, то уберите припой с перемычки PS модуля.

Вывод INT модуля является выходом прерывания (активный уровень - логический «0») который в зависимости от выбранного режима работы может реагировать на яркость, обнаружение объектов, действия и т.д. Данный вывод можно не использовать (постоянно опрашивая модуль), можно использовать по прямому назначению (подключить к выводу Arduino поддерживающему внешнее прерывание) и опрашивать модуль только по внешнему прерыванию, а можно подключить к нему обычный светодиод который будет сигнализировать о том, что модуль отреагировал на какое то действие или событие.

Ниже представлены 2 варианта работы с датчиком APDS9960, с использованием вывода INT (с прерываниями) и без использования вывода INT (без прерываний).

1) Подключение без использования прерывания:

    Таблица подключения выводов датчика:
  • SDA - линия данных шины I2C. Подключается к выводу A4 Arduino UNO через двунаправленный преобразователь.
  • SCL - линия тактирования шины I2C. Подключается к выводу A5 Arduino UNO через двунаправленный преобразователь.
  • GND - общий вывод питания. Подключается к выводу GND Arduino UNO.
  • VCC - вывод питания модуля. Подключается к выводу 3.3V Arduino UNO.
  • VL - вывод питания драйвера ИК-светодиода. Не используется.
  • INT - выход прерывания модуля. Не используется.

К выводу INT датчика можно подключить светодиод (катод к выводу INT, а анод к выводу 3.3V). Если Вы будите его использовать, то функции: enableLightSensor(), enableGestureSensor() или enableProximitySensor() скетчей требуется вызывать с параметром true, а не false, как это указано в скетчах. Светодиод будет фиксировать прерывания (указывать на то, что модуль отреагировал на какое то действие или событие), но сами прерывания не будут участвовать в алгоритме обработки данных, так как вывод INT датчика не подключён к Arduino.