Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/octaprog7/opt3001

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

als i2c micropython

Last synced: 29 days ago
JSON representation

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

Awesome Lists containing this project

README

        

Модуль 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](https://github.com/octaprog7/OPT3001/blob/master/pics/opt3001_board.jpg)
# Среда разработки (IDE)
## IDE
![alt text](https://github.com/octaprog7/OPT3001/blob/master/pics/opt3001_ide.png)