Датчик освещённости в мобильных устройствах: что это, виды и как работает

Автор: IT Sectr Опубликовано: 2026-03-23 Время чтения: 9 мин

Датчик освещённости — это фотоприёмник, измеряющий уровень внешнего света для автоматической регулировки яркости дисплея. Он определяет освещённость в люксах (лк) от 0 (полная темнота) до 100 000+ лк (прямой солнечный свет). По данным Vishay Application Note, 2024, автоматическая яркость на основе ALS снижает энергопотребление дисплея на 25–40% по сравнению с ручным управлением.

Главное

  • Датчик освещённости (ALS — Ambient Light Sensor) измеряет освещённость от 0 до 100 000+ лк.
  • Спектральная коррекция фильтром воспроизводит чувствительность человеческого глаза (фотопическая кривая V(λ)).
  • Android API использует Sensor.TYPE_LIGHT с возвратом значения в люксах (lux).
  • Автояркость — основная функция: дисплей автоматически подстраивается под условия освещения.
  • True Tone и Night Shift — ALS позволяет менять цветовую температуру дисплея в зависимости от освещения.

Что такое датчик освещённости в телефоне

Датчик освещённости (Ambient Light Sensor, ALS) — это полупроводниковый фотоприёмник, расположенный на лицевой панели смартфона рядом с разговорным динамиком. Первые мобильные телефоны с ALS появились в середине 2000-х (Nokia N95, 2006), а сегодня сенсор устанавливается даже в бюджетные модели стоимостью от 100 долларов.

Спектральный диапазон

Современные ALS имеют спектральную коррекцию, приближающую их чувствительность к человеческому глазу (фотопическая кривая V(λ) с пиком на 555 нм). Датчик измеряет освещённость в люксах — единице, учитывающей спектральную чувствительность глаза. Типичные производители — ams OSRAM (TSL, TMD серии), Vishay (VEML серия), Broadcom (APDS серия).

ПараметрЗначение
Диапазон0 – 100 000+ лк
Разрешение0.1 лк (низкий свет)
Потребление0.1–0.5 мА
Размер1.5×1.0×0.4 мм
Спектральный пик555 нм (V(λ))

Где используется ALS

Помимо автоматической яркости, датчик освещённости применяется для калибровки камеры (определение условий съёмки), в приложениях для мониторинга освещения (Light Meter) и в системах умного дома. По данным Strategy Analytics (2024), более 95% всех продаваемых смартфонов оснащены ALS.

Как работает фотодиод и спектральная фильтрация

В основе ALS лежит кремниевый фотодиод, генерирующий фототок, пропорциональный интенсивности падающего света. Фототок преобразуется в напряжение через трансимпедансный усилитель и оцифровывается встроенным АЦП (12–20 бит). Для спектральной коррекции используются интерференционные или абсорбционные оптические фильтры, ослабляющие ИК- и УФ-компоненты.

Динамический диапазон и логарифмическое восприятие

Человеческий глаз воспринимает яркость логарифмически, поэтому ALS имеет логарифмический или программируемый усилитель для работы в диапазоне от 0.1 лк (глухая ночь) до 100 000+ лк (яркое солнце). По данным Broadcom APDS-9306 Datasheet (2024), датчик автоматически переключает усиление при изменении освещённости более чем в 100 раз — время переключения не превышает 100 мс.

Подавление мерцания (Flicker Detection)

Современные ALS (ams TSL2520) поддерживают детектирование мерцания света от LED-ламп и люминесцентных источников с частотой 50/100 Гц или 60/120 Гц. Эта функция используется камерами для синхронизации затвора — без неё на фото появляются тёмные полосы от мерцания ламп. ALS фиксирует частоту и передаёт её ISP-процессору камеры.

Алгоритмы работы автоматической яркости

Автоматическая яркость — главная функция ALS. Алгоритм включает 5 этапов: измерение освещённости, фильтрация шума, расчёт целевой яркости, сглаживание перехода и применение к дисплею. Типичная целевая яркость для разных условий: 2–5 кд/м² ночью, 200–400 кд/м² в офисе (500 лк), 600–1000+ кд/м² на солнце (50 000+ лк).

Адаптивные кривые

Начиная с Android 9 (Pie), Google внедрила адаптивные кривые яркости, которые обучаются на поведении пользователя. Если пользователь вручную меняет яркость при определённой освещённости, система запоминает это отклонение и корректирует кривую. На Android 13+ используется модель машинного обучения на устройстве (TensorFlow Lite) для предсказания предпочтений яркости по времени суток и контексту.

Плавные переходы

Резкое изменение яркости дискомфортно для глаз. Современные алгоритмы используют фильтр нижних частот с постоянной времени 0.5–3 секунды и ограничение скорости изменения яркости (ramp rate limit). Apple использует анимацию перехода 200–400 мс при смене яркости, что делает процесс незаметным для пользователя. Резкие скачки (more than 5% за кадр) блокируются.

kotlin
class AdaptiveBrightnessController {

    private val smoothFactor = 0.15f
    private var targetBrightness = 0.5f

    fun calculateBrightness(
        lux: Float,
        userOverride: Float?
    ): Float {
        val mapped = luxToBrightnessCurve(lux)
        val adaptive = userOverride
            ?.let { it * 0.7f + mapped * 0.3f }
            ?: mapped

        // Фильтр нижних частот (сглаживание)
        targetBrightness = smoothFactor * adaptive +
            (1f - smoothFactor) * targetBrightness
        return targetBrightness
    }

    private fun luxToBrightnessCurve(
        lux: Float
    ): Float = when {
        lux < 10f  -> 0.05f
        lux < 200f -> 0.15f  + lux * 0.0005f
        lux < 5000f -> 0.25f + lux * 0.00005f
        else -> 0.7f  + lux * 0.000005f
    }
}

Доступ к датчику освещённости в Android

Sensor.TYPE_LIGHT предоставляет текущую освещённость в люксах. Датчик относится к категории Environmental Sensors — он не требует калибровки и работает сразу. Частота опроса — SENSOR_DELAY_NORMAL (200 мс) достаточно для всех сценариев. Для работы ALS не требуется разрешений пользователя.

Обработка резких изменений

При резком изменении освещённости (выход из туннеля на солнце) ALS показывает значение с задержкой 50–300 мс из-за встроенного фильтра низких частот в чипе датчика. Это предотвращает мерцание яркости при быстрых изменениях света (например, при проезде под фонарями). Приложение может дополнительно фильтровать данные через скользящее среднее (moving average) с окном 3–5 отсчётов для устранения шума.

kotlin
class LightSensorMonitor {

    private val windowSize = 5
    private val readings = LinkedList<Float>()

    fun smoothLightReading(lux: Float): Float {
        readings.add(lux)
        if (readings.size > windowSize) {
            readings.removeFirst()
        }
        return readings.average().toFloat()
    }

    fun detectLightChange(
        currentLux: Float
    ): LightChange = when {
        currentLux < 5f  -> LightChange.DARK
        currentLux < 200f -> LightChange.INDOOR
        currentLux < 5000f -> LightChange.OUTDOOR_SHADE
        else -> LightChange.DIRECT_SUNLIGHT
    }
}

enum class LightChange {
    DARK, INDOOR, OUTDOOR_SHADE, DIRECT_SUNLIGHT
}

Проверка наличия датчика

Датчик освещённости присутствует в 99% современных смартфонов, но для корректной работы проверяйте через PackageManager.hasSystemFeature(FEATURE_SENSOR_LIGHT). В исключительных случаях (ультрабюджетные модели, планшеты) датчик может отсутствовать — приложение должно корректно обрабатывать возврат null.

Применение ALS в мобильных приложениях

Помимо автоматической яркости, датчик освещённости используется в фотографии и AR-приложениях. Приложение Camera FV-5 использует ALS для автоматического выбора экспопары при съёмке в ручном режиме. ARCore корректирует яркость виртуальных объектов в зависимости от реального освещения, делая AR-сцены фотореалистичными.

  • Люксметры (Light Meter) — приложения для измерения освещённости в люксах. Используются дизайнерами и фотографами для оценки равномерности освещения.
  • Ночной режим (Night Mode) — автоматическое включение тёмной темы и уменьшение синего свечения при низкой освещённости (менее 10 лк).
  • Фотография — ALS помогает камере выбрать сценарий съёмки: HDR при ярком солнце, ночной режим при темноте, портретный режим при среднем освещении.
  • Умный дом — приложения управления освещением используют ALS для автоматического включения света при снижении освещённости ниже порога.

Влияние ALS на энергопотребление

Дисплей — самый энергоёмкий компонент смартфона: при яркости 600 кд/м² он потребляет 3–5 Вт. Автоматическая яркость на основе ALS снижает среднюю яркость дисплея на 30–50% в помещении (200–500 лк) по сравнению с максимальной ручной установкой. По данным исследования DisplayMate (2024), пользователи с включённой автояркостью получают на 25–40% больше времени работы от батареи, чем те, кто устанавливает яркость вручную на максимальный уровень. На улице при 50 000+ лк ALS, напротив, повышает яркость до 800–1000 кд/м² для читаемости экрана.

ALS и калибровка камеры

Современные камеры смартфонов используют данные ALS для автоматического выбора режима съёмки: HDR при контровом свете, ночной режим при освещённости ниже 10 лк, портретный режим при студийном освещении. По данным Qualcomm Snapdragon ISP Whitepaper (2024), ALS позволяет камере за 100 мс определить тип источника освещения — дневной свет, лампа накаливания, LED или флуоресцент — и скорректировать баланс белого до нажатия кнопки спуска.

Будущее ALS

Подэкранные датчики освещённости (under-display ALS) становятся стандартом в 2025–2026 годах. Samsung и Apple уже патентуют технологии размещения ALS под пикселями OLED-дисплея. Развитие спектральных сенсоров позволит измерять не только интенсивность, но и цветовую температуру света (CCT) — это улучшит True Tone и автоматический баланс белого камеры.

Часто задаваемые вопросы

Как работает автояркость на телефоне?

Датчик освещённости измеряет уровень внешнего света в люксах, система сопоставляет его с кривой яркости и устанавливает соответствующую яркость дисплея. На Android 9+ кривая адаптируется под предпочтения пользователя с помощью машинного обучения на устройстве.

Где находится датчик освещённости в телефоне?

Датчик расположен в верхней части экрана, рядом с разговорным динамиком и фронтальной камерой. В большинстве современных телефонов он скрыт под стеклом дисплея и не виден невооружённым глазом. У старых моделей датчик выглядит как небольшая точка.

Почему автояркость работает неправильно?

Причины: загрязнение датчика (пыль, жирные следы), толстое защитное стекло, перекрывающее область датчика, или сбой в кривой адаптации. Протрите верхнюю часть экрана мягкой тканью. Если не помогает — отключите и включите автояркость в настройках.

Можно ли снять показания ALS через камеру телефона?

Нет — камера и ALS — разные сенсоры. Камера снимает изображение в формате RGB, ALS измеряет интенсивность света спектрально-скорректированным фотодиодом. Приложения-люксметры, использующие камеру, дают погрешность 50–100% по сравнению с ALS.

Как проверить датчик освещённости на Android?

Наберите в телефонном приложении *#0*# (для Samsung) для входа в инженерное меню и выберите Light Sensor. Для других брендов используйте Sensor Test из Google Play. Наведите телефон на источник света — показания должны меняться от 0 до 10 000+ лк.

Итоги

  • Датчик освещённости (ALS) — фотодиод со спектральной коррекцией, измеряющий освещённость в диапазоне 0–100 000+ лк.
  • Спектральный фильтр воспроизводит чувствительность человеческого глаза с пиком на 555 нм (фотопическая кривая V(λ)).
  • Автоматическая яркость снижает энергопотребление дисплея на 25–40% и повышает комфорт при чтении в разных условиях.
  • Android API — Sensor.TYPE_LIGHT, данные в люксах, потребление 0.1–0.5 мА, калибровка не требуется.
  • Адаптивные кривые на Android 9+ обучаются на поведении пользователя, используя TensorFlow Lite на устройстве.
  • Современные ALS поддерживают детектирование мерцания (50/60 Гц) для синхронизации затвора камеры.
  • Подэкранные датчики и спектральные ALS с измерением цветовой температуры — ключевые тренды развития технологии.

Мы разработаем мобильное приложение под ключ

IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.

Обсудить проект

Читайте также