BH1750 это простой цифровой чип датчика освещения с I2C интерфейсом от японской компании Rohm Semiconductor. В этом тексте я представил обзор этого ASIC(а).
Аппаратная часть
Основные технические характеристики
Параметр |
Min |
Max |
Unit |
Диапазон измерений освещения |
1 |
65535 |
Lx |
Напряжение питания |
2.4 |
3,6 |
V |
I2C rate |
0< |
400 |
kHz |
Чип BH1750 можно попробовать в составе этого модуля с Aliexpress.
Вот габариты модуля с BH1750
Вся спецификация всего 20 страниц. Внутри он устроен так. Фотодиод вырабатывает напряжение, напряжение усиливается, поступает на Аналого-цифровой преобразователь. После ADC цифровой сигнал поступает в регистровый банк I2C. Из регистрового файла значение вычитывается микроконтроллером по I2C. Внутри всего один 2хбайтный регистр в формате big endian. Всю схему тактирует встроенный осцилятор на 320kHz
Распиновка 5-пиновой микросхемы.
Программная часть
С точки зрения программиста датчик освещенности выглядит так
Вот такие адреса у чипа I2C адреса.
MCU видит чип на шине I2C так.
У чипа есть несколько режимов измерения:
Режим работы |
Время измерения |
Разрешение |
ms |
lx |
|
H-resolution Mode2 |
120 |
0,5 |
H-Resolution Mode |
120 |
1 |
L-Resolution Mode |
16 |
4 |
Как же проверить работоспособность датчика освещения?
Первое, что приходит в голову, это записать освещенность Солнца за окном весь день и проверить результат с фоторезистором. Получился такой результат.
Как видно (синяя линия) показания BH1750 зашкаливают даже, если просто на окно его прилепить. Видимо на Земле этот датчик явно не справляется со своей работой. Может быть на Марсе пригодится.
Достоинства
1--показывает измерение в реальных единицах
2--цифровой интерфейс I2C для выдачи данных
Недостатки
1--Весьма ограниченный диапазон измерений, всего до 65535 Lx
Идеи устройств на датчике освещения
1--Автоматическое уменьшение подсветки экранов.
2--Будильник который будет срабатывать в момент рассвета
4--Бесконтактные кнопки
5--Охранные системы. Датчики присутствия.
6--Наведение на источник света, например для солнечных батарей
7--Автоматическое включение освещение улиц и помещений.
8--Датчик угла парения солнечных лучей. Например для спутников или летательных аппаратов. Несколько датчиков света могут образовать компас относительно источника света.
9--Фото датчик как датчик угла наклона плоскости к потоку световых лучей. Можно делать датчик покрытия закрытия двери.
10--Датчик и ориентации спутников на орбите.
11--Можно передавать бинарные данные модулированным светом LiFi.
13--Датчик приближения к точечному источнику света.
14--Глобальная навигация по фазам естественного освещения Cолнца. https://habr.com/ru/articles/687640/
15--В паре со светодиодом можно сделать пульсометр.
16--Датчик угла на основе эффекта Малюса https://habr.com/ru/articles/742358/
Вывод
BH1750 - простой и работающий датчик освещения, который выдает значение в реальных единицах измерения. Однако этот датчик не способен измерять весь диапазон для естественных природных освещений на Земле.
Словарь
Акроним |
Расшифровка |
ADC |
Analog Digital converter |
I2C |
Inter-Integrated Circuit |
PD |
Photo diode |
VCC |
Voltage common collector |
OSC |
Internal Oscillator |
IC |
Integrated circuit |
PCB |
printed circuit board |
GND |
Ground |
Links
https://habr.com/ru/articles/472204/
https://habr.com/ru/articles/400989/
https://habr.com/ru/articles/214011/
https://habr.com/ru/articles/385129/
Автор:
aabzel