Цифровой датчик освещенности GY-30 на чипе BH1750 предназначен для измерения фонового освещения. BH1750 - это 16-битный датчик освещённости (люксметр) с интерфейсом I2C. Эта микросхема хорошо подходит для получения данных об окружающем освещении. Фотодиод на BH1750 определяет интенсивность света, которая преобразуется в выходное напряжение с помощью операционного усилителя. Встроенный АЦП выдает 16-битные цифровые данные. Внутренняя логика BH1750 избавляет от необходимости каких-либо сложных вычислений, поскольку он напрямую выводит значимые цифровые данные в люксах.
Согласно документации, датчик BH1750 чувствителен к видимому свету и практически не подвержен влиянию инфракрасного излучения, т.е. реагирует примерно на тот же спектральный диапазон, что и человеческий глаз.
Измерение освещенности является важным параметром при создании приложений домашней автоматики и Интернета вещей. Самым распространенным датчиком измерения освещенности у любителей Arduino является фоторезистор - аналоговый датчик, изменяющий свое сопротивление в зависимости от интенсивности света, однако точность его невысока. В отличие от него, модуль GY-30, представляет собой высокоточный цифровой датчик интенсивности света, выдающий значение в люксах. В проектах Arduino лучше использовать уже готовый модуль GY-30 со стабилизатором напряжения и удобными выводами подключения.
Технические характеристики BH1750:
- Спектральная характеристика: близка к визуальной чувствительности
- Малое влияние инфракрасного излучения
- Функция спящего режима: есть
- Фильтрация световых шумов: 50/60 Гц
- Рабочее напряжение питания: 3.3-5 В
- Ток потребления: 120 мкА
- Ток потребления в спящем режиме: 0.01 мкА
- Чувствительность: 65536 градаций
- Точность в режиме высокого разрешения: 1 Лк
- Точность в режиме низкого разрешения: 4 Лк
- Период измерения в режиме высокого разрешения: 120 мс
- Период измерения в режиме низкого разрешения: 16 мс
- Калибровка: не требуется
Установка I2C адреса
BH1750 может иметь, в зависимости от уровня сигнала на входе ADDR, два адреса: 0x23 (ADDR=LOW) и 0x5C (ADDR=HIGH). Это значит, что на одну I2C линию можно подсоединить одновременно два датчика BH1750. Вывод AD0 модуля GY-30 можно оставить не подключённым, соединить с землёй или с питанием. Следует учесть, что нельзя подавать больше 3.3 В. На модуле распаян подтягивающий к земле (pull-down) резистор, поэтому при отсутствии соединения по умолчанию используется адрес (0x23).