Как стать автором
Обновить

Обзор датчика освещения BH1750

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров7.3K

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. Будильник который будет срабатывать в момент рассвета

  3. Бесконтактные кнопки

  4. Охранные системы. Датчики присутствия.

  5. Наведение на источник света, например для солнечных батарей

  6. Автоматическое включение освещение улиц и помещений.

  7. Датчик угла падения солнечных лучей. Например для спутников или летательных аппаратов. Несколько датчиков света по периметру могут образовать компас относительно источника света.

  8. Фото датчик как датчик угла наклона плоскости к потоку световых лучей. Можно делать датчик открытия/закрытия двери.

  9. Датчик и ориентации спутников на орбите Земли.

  10. Можно передавать бинарные данные модулированным светом LiFi.

  11. Датчик приближения к точечному источнику света.

  12. Глобальная навигация по фазам естественного освещения Cолнца.

  13. В паре со светодиодом можно сделать пульсометр.

  14. Датчик угла на основе эффекта Малюса.

  15. Детектор тени для автоматического гномона.

Вывод

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/

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Вы программировали BH1750?
29.41% да15
70.59% нет36
Проголосовал 51 пользователь. Воздержались 4 пользователя.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Вы программировали какой-либо другой датчик освещения?
50% да24
50% нет24
Проголосовали 48 пользователей. Воздержались 5 пользователей.
Теги:
Хабы:
Всего голосов 12: ↑12 и ↓0+12
Комментарии25

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань