Skip to content

Модуль для управления датчиком внешней освещенности OPT3001 от Texas Instruments. Module for controlling the OPT3001 ambient light sensor from TI.

License

Notifications You must be signed in to change notification settings

octaprog7/opt3001

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Модуль MicroPython для управления OPT3001, датчиком внешней освещенности от Texas Instruments. MicroPython module for controlling the OPT3001, an ambient light sensor from TI.

Описание

OPT3001 — это датчик, измеряющий интенсивность видимого света. Спектральная реакция датчика точно соответствует фото-оптической реакции человеческого глаза и включает значительное подавление инфракрасной части спектра (так утверждает производитель, см. документацию!).

OPT3001 — это однокристальный люксметр, измеряющий интенсивность света, воспринимаемого человеческим глазом. Точная спектральная характеристика и сильное подавление ИК-излучения устройства позволяют OPT3001 точно измерять интенсивность света, воспринимаемого человеческим глазом, независимо от источника света.

Если у вас возникли вопросы по работе датчика, читайте документацию от производителя!

Применения

  • Управление подсветкой дисплея
  • Системы управления освещением
  • Планшетные компьютеры и ноутбуки
  • Термостаты и устройства домашней автоматизации
  • Терминалы точек продаж
  • Уличное освещение и уличное освещение
  • Камеры

Питание

Напряжение питания 1.6..3.6 В (3.3 В)!

Адрес датчика

Диапазон адресов датчика: 0x44..0x47.

Шина I2C

Просто подключите контакты (VCC, GND, SDA, SCL) платы с OPT3001 к соответствующим контактам Arduino, ESP или любой другой платы с прошивкой MicroPython и аппаратной поддержкой шины I2C.

Загрузка ПО в плату

Загрузите прошивку micropython на плату NANO(ESP и т. д.), а затем файлы: main.py, OPT3001mod.py и папку sensor_pack_2 полностью! Затем откройте main.py в своей IDE и запустите/выполните его.

Типы данных

opt3001_id

Именованный кортеж, содержащий информацию о идентификаторах производителя и устройства, записанных в датчик.

OPT3001_status

Именованный кортеж, содержащий полную информацию о всех настройках датчика.

opt3001_meas_data

Описывает, считанные из датчика, данные измерений в обработанном(!) виде.

opt3001_meas_raw

Описывает, считанные из датчика, данные измерений в сыром(!) виде.

OPT3001_data_status

Содержит два флага, описывающих состояние готовности данных для считывания и переполнение при измерении.

Методы класса OPT3001

def OPT3001.get_data_status() -> OPT3001_data_status

Возвращает состояние готовности данных для считывания.

def OPT3001.start_measurement(self, continuously: bool = True, lx_range_index: int = 12, refresh: bool = False)

Запускает измерение датчиком внешней освещенности.

  • Если continuously в Истина, то измерения будут запускаться автоматически, иначе для каждого измерения нужно будет вызывать OPT3001.start_measurement снова.
  • lx_range_index - индекс диапазона освещенности, измеряемой датчиком. От 0 до 11. Если вы установите этот параметр в 12, то датчик будет автоматически(!) выбирать диапазон, но время ожидания готовности данных скорее всего увеличится!
  • Если refresh в Истина, то в конце кода метода, данные о настройках в полях экземпляра класса, будут обновлены.

def get_measurement_value(self, value_index: int = 0) -> [opt3001_meas_raw, opt3001_meas_data]:

Возвращает значение, измеренное датчиком. Если 0 == value_index, то возвращаются 'сырые' данные. Если 1 == value_index, то возвращаются обработанные данные.

Режим Энергосбережения

Датчик автоматически переходит в режим энергосбережения при завершении измерения в однократном режиме (continuously is False).

Плата с OPT3001

alt text

Среда разработки (IDE)

IDE

alt text

About

Модуль для управления датчиком внешней освещенности OPT3001 от Texas Instruments. Module for controlling the OPT3001 ambient light sensor from TI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages