Датчик освітлення — це фотоприймач, який вимірює рівень зовнішнього світла для автоматичного регулювання яскравості дисплея. Він визначає освітленість в люксах (лк) від 0 (повна темрява) до 100 000+ лк (пряме сонячне світло). За даними Vishay Application Note, 2024, автоматична яскравість на основі ALS знижує енергоспоживання дисплея на 25–40% порівняно з ручним керуванням.
Головне
Датчик освітлення (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(λ)) |
Окрім автоматичної яскравості, датчик освітлення застосовується для калібрування камери (визначення умов зйомки), у додатках для моніторингу освітлення (Light Meter) та в системах розумного будинку. За даними Strategy Analytics (2024), понад 95% усіх продаваних смартфонів оснащені ALS.
В основі ALS лежить кремнієвий фотодіод, що генерує фотострум, пропорційний інтенсивності падаючого світла. Фотострум перетворюється на напругу через трансімпедансний підсилювач і оцифровується вбудованим АЦП (12–20 біт). Для спектральної корекції використовуються інтерференційні або абсорбційні оптичні фільтри, що послаблюють ІЧ- та УФ-компоненти.
Людське око сприймає яскравість логарифмічно, тому ALS має логарифмічний або програмований підсилювач для роботи в діапазоні від 0.1 лк (глибока ніч) до 100 000+ лк (яскраве сонце). За даними Broadcom APDS-9306 Datasheet (2024), датчик автоматично перемикає підсилення при зміні освітленості більш ніж у 100 разів — час перемикання не перевищує 100 мс.
Сучасні 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 мс при зміні яскравості, що робить процес непомітним для користувача. Різкі стрибки (більше 5% за кадр) блокуються.
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
}
}
Sensor.TYPE_LIGHT надає поточну освітленість у люксах. Датчик належить до категорії Environmental Sensors — він не потребує калібрування та працює одразу. Частота опитування — SENSOR_DELAY_NORMAL (200 мс) достатня для всіх сценаріїв. Для роботи ALS не потрібні дозволи користувача.
При різкій зміні освітленості (вихід з тунелю на сонце) ALS показує значення із затримкою 50–300 мс через вбудований фільтр низьких частот у чіпі датчика. Це запобігає мерехтінню яскравості при швидких змінах світла (наприклад, при проїзді під ліхтарями). Додаток може додатково фільтрувати дані через ковзне середнє (moving average) з вікном 3–5 відліків для усунення шуму.
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.
Окрім автоматичної яскравості, датчик освітлення використовується в фотографії та AR-додатках. Додаток Camera FV-5 використовує ALS для автоматичного вибору експопари при зйомці в ручному режимі. ARCore коригує яскравість віртуальних об’єктів залежно від реального освітлення, роблячи AR-сцени фотореалістичними.
Дисплей — найбільш енергоємний компонент смартфона: при яскравості 600 кд/м² він споживає 3–5 Вт. Автоматична яскравість на основі ALS знижує середню яскравість дисплея на 30–50% у приміщенні (200–500 лк) порівняно з максимальним ручним встановленням. За даними дослідження DisplayMate (2024), користувачі з увімкненою автояскравістю отримують на 25–40% більше часу роботи від батареї, ніж ті, хто встановлює яскравість вручну на максимальний рівень. На вулиці при 50 000+ лк ALS, навпаки, підвищує яскравість до 800–1000 кд/м² для читабельності екрана.
Сучасні камери смартфонів використовують дані ALS для автоматичного вибору режиму зйомки: HDR при контровому світлі, нічний режим при освітленості нижче 10 лк, портретний режим при студійному освітленні. За даними Qualcomm Snapdragon ISP Whitepaper (2024), ALS дозволяє камері за 100 мс визначити тип джерела освітлення — денне світло, лампа розжарювання, LED або флуоресцент — і скоригувати баланс білого до натискання кнопки спуску.
Підекранні датчики освітлення (under-display ALS) стають стандартом у 2025–2026 роках. Samsung та Apple вже патентують технології розміщення ALS під пікселями OLED-дисплея. Розвиток спектральних сенсорів дозволить вимірювати не тільки інтенсивність, але й колірну температуру світла (CCT) — це покращить True Tone та автоматичний баланс білого камери.
Часті запитання
Датчик освітлення вимірює рівень зовнішнього світла в люксах, система зіставляє його з кривою яскравості та встановлює відповідну яскравість дисплея. На Android 9+ крива адаптується під вподобання користувача за допомогою машинного навчання на пристрої.
Датчик розташований у верхній частині екрана, поруч із розмовним динаміком та фронтальною камерою. У більшості сучасних телефонів він прихований під склом дисплея та не видимий неозброєним оком. У старих моделей датчик виглядає як невелика точка.
Причини: забруднення датчика (пил, жирні сліди), товсте захисне скло, що перекриває область датчика, або збій у кривій адаптації. Протріть верхню частину екрана м’якою тканиною. Якщо не допомагає — вимкніть та увімкніть автояскравість у налаштуваннях.
Ні — камера та ALS — різні сенсори. Камера знімає зображення у форматі RGB, ALS вимірює інтенсивність світла спектрально-скоригованим фотодіодом. Додатки-люксметри, що використовують камеру, дають похибку 50–100% порівняно з ALS.
Наберіть у телефонному додатку *#0*# (для Samsung) для входу в інженерне меню та виберіть Light Sensor. Для інших брендів використовуйте Sensor Test із Google Play. Наведіть телефон на джерело світла — покази повинні змінюватися від 0 до 10 000+ лк.
Підсумки
Ми розробимо мобільний застосунок під ключ
IT Sectr створює застосунки для iOS та Android для стартапів і бізнесу з 2017 року. Ми проконсультуємо вас і запропонуємо найкраще рішення.
Читайте також