Ang light sensor ay isang photodetector na sumusukat ng antas ng panlabas na liwanag para sa awtomatikong regulasyon ng brightness ng display. Tinutukoy nito ang illuminance sa lux (lx) mula 0 (ganap na dilim) hanggang 100,000+ lx (direktang sikat ng araw). Ayon sa Vishay Application Note, 2024, ang auto brightness na nakabatay sa ALS ay nagbabawas ng konsumo ng kuryente ng display ng 25–40% kumpara sa manu-manong kontrol.
Mga Pangunahing Punto
Light sensor (Ambient Light Sensor, ALS) ay isang semiconductor photodetector na matatagpuan sa front panel ng smartphone sa tabi ng earpiece speaker. Ang mga unang mobile phone na may ALS ay lumitaw noong kalagitnaan ng 2000s (Nokia N95, 2006), at ngayon ang sensor ay naka-install kahit sa mga budget model na nagsisimula sa 100 dolyar.
Ang mga modernong ALS ay may spectral correction na naglalapit ng kanilang sensitivity sa mata ng tao (photopic curve V(λ) na may peak sa 555 nm). Sinusukat ng sensor ang illuminance sa lux — isang unit na isinasaalang-alang ang spectral sensitivity ng mata. Mga tipikal na manufacturer — ams OSRAM (TSL, TMD series), Vishay (VEML series), Broadcom (APDS series).
| Parameter | Halaga |
|---|---|
| Range | 0 – 100,000+ lx |
| Resolution | 0.1 lx (mababang liwanag) |
| Konsumo | 0.1–0.5 mA |
| Sukat | 1.5×1.0×0.4 mm |
| Spectral peak | 555 nm (V(λ)) |
Bukod sa auto brightness, ang light sensor ay ginagamit para sa calibration ng camera (pagtukoy ng mga kondisyon ng pagkuha ng larawan), sa mga app para sa pag-monitor ng liwanag (Light Meter) at sa mga smart home system. Ayon sa Strategy Analytics (2024), mahigit 95% ng lahat ng smartphone na naibenta ay may ALS.
Ang basehan ng ALS ay isang silicon photodiode na lumilikha ng photocurrent na proporsyonal sa intensity ng liwanag na bumabagsak. Ang photocurrent ay na-convert sa boltahe sa pamamagitan ng transimpedance amplifier at na-digitize ng built-in na ADC (12–20 bits). Para sa spectral correction, ginagamit ang interference o absorption optical filters na nagpapahina ng IR at UV components.
Ang mata ng tao ay nakakakita ng brightness nang logarithmically, kaya ang ALS ay may logarithmic o programmable amplifier para sa pagtatrabaho sa range mula 0.1 lx (malalim na gabi) hanggang 100,000+ lx (maliwanag na araw). Ayon sa Broadcom APDS-9306 Datasheet (2024), ang sensor ay awtomatikong nagpapalit ng gain kapag ang pagbabago ng illuminance ay higit sa 100 beses — ang switching time ay hindi lalampas sa 100 ms.
Ang mga modernong ALS (ams TSL2520) ay sumusuporta sa detection ng flicker ng liwanag mula sa LED lamps at fluorescent sources na may frequency na 50/100 Hz o 60/120 Hz. Ang function na ito ay ginagamit ng mga camera para sa synchronization ng shutter — kung wala ito, lumilitaw ang mga madilim na guhit sa mga larawan mula sa flicker ng mga ilaw. Inire-record ng ALS ang frequency at ipinapadala ito sa ISP processor ng camera.
Auto brightness — pangunahing function ng ALS. Ang algorithm ay may 5 yugto: pagsukat ng illuminance, filtering ng ingay, pagkalkula ng target na brightness, smoothing ng transition at pag-apply sa display. Karaniwang target na brightness para sa iba't ibang kondisyon: 2–5 cd/m² sa gabi, 200–400 cd/m² sa opisina (500 lx), 600–1000+ cd/m² sa araw (50,000+ lx).
Simula sa Android 9 (Pie), ipinakilala ng Google ang adaptive brightness curves na natututo mula sa pag-uugali ng user. Kung manu-manong binabago ng user ang brightness sa isang partikular na liwanag, naaalala ng system ang deviation na ito at itinatama ang curve. Sa Android 13+, ginagamit ang machine learning model sa device (TensorFlow Lite) para sa prediction ng brightness preferences batay sa oras ng araw at konteksto.
Ang biglaang pagbabago ng brightness ay hindi komportable para sa mga mata. Ang mga modernong algorithm ay gumagamit ng low-pass filter na may time constant na 0.5–3 segundo at limitasyon sa bilis ng pagbabago ng brightness (ramp rate limit). Gumagamit ang Apple ng transition animation na 200–400 ms sa pagbabago ng brightness, na ginagawang hindi nakikita ang proseso para sa user. Ang mga biglaang pagtalon (higit sa 5% bawat frame) ay hinaharangan.
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
// Low-pass filter (pagpapakinis)
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 ay nagbibigay ng kasalukuyang illuminance sa lux. Ang sensor ay kabilang sa kategoryang Environmental Sensors — hindi ito nangangailangan ng calibration at gumagana agad. Ang polling frequency — SENSOR_DELAY_NORMAL (200 ms) ay sapat para sa lahat ng scenario. Para sa pagpapatakbo ng ALS, hindi kinakailangan ang mga pahintulot ng user.
Sa biglaang pagbabago ng liwanag (paglabas mula sa tunnel papuntang araw), ipinapakita ng ALS ang halaga nang may pagkaantala ng 50–300 ms dahil sa built-in na low-pass filter sa sensor chip. Pinipigilan nito ang flicker ng brightness sa mabilis na pagbabago ng liwanag (halimbawa, sa pagdaan sa ilalim ng mga streetlight). Maaaring dagdag na i-filter ng app ang data sa pamamagitan ng moving average na may window na 3–5 samples para alisin ang ingay.
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
}
Ang light sensor ay naroroon sa 99% ng mga modernong smartphone, ngunit para sa tamang operasyon suriin sa pamamagitan ng PackageManager.hasSystemFeature(FEATURE_SENSOR_LIGHT). Sa mga pambihirang kaso (ultra-budget models, tablets) ang sensor ay maaaring wala — ang app ay dapat na tamang hawakan ang pagbalik ng null.
Bukod sa auto brightness, ang light sensor ay ginagamit sa photography at AR apps. Ang app na Camera FV-5 ay gumagamit ng ALS para sa awtomatikong pagpili ng exposure pair sa pagkuha ng larawan sa manual mode. Inaayos ng ARCore ang brightness ng mga virtual object batay sa tunay na liwanag, na ginagawang photorealistic ang mga AR scene.
Ang display — ang pinakamalakas kumonsumo ng kuryente na component ng smartphone: sa brightness na 600 cd/m² ay kumokonsumo ito ng 3–5 W. Ang auto brightness na nakabatay sa ALS ay nagbabawas ng average na brightness ng display ng 30–50% sa loob ng bahay (200–500 lx) kumpara sa maximum na manu-manong setting. Ayon sa pananaliksik ng DisplayMate (2024), ang mga user na may naka-on na auto brightness ay nakakakuha ng 25–40% mas maraming oras ng baterya kaysa sa mga nagtatakda ng brightness nang manu-mano sa maximum level. Sa labas sa 50,000+ lx, ang ALS, sa kabaligtaran, ay nagtataas ng brightness sa 800–1000 cd/m² para sa readability ng screen.
Ang mga modernong smartphone camera ay gumagamit ng ALS data para sa awtomatikong pagpili ng shooting mode: HDR sa kontrang liwanag, night mode sa illuminance sa ibaba 10 lx, portrait mode sa studio lighting. Ayon sa Qualcomm Snapdragon ISP Whitepaper (2024), pinapayagan ng ALS ang camera na matukoy sa loob ng 100 ms ang uri ng light source — liwanag ng araw, incandescent bulb, LED o fluorescent — at itama ang white balance bago pindutin ang shutter button.
Under-display light sensors (under-display ALS) ay nagiging standard sa 2025–2026. Ang Samsung at Apple ay nagpa-patent na ng mga teknolohiya para sa paglalagay ng ALS sa ilalim ng mga pixel ng OLED display. Ang pag-unlad ng spectral sensors ay magbibigay-daan sa pagsukat hindi lamang ng intensity, kundi pati na rin ng color temperature ng liwanag (CCT) — ito ay magpapabuti ng True Tone at auto white balance ng camera.
Mga Madalas Itanong
Sinusukat ng light sensor ang antas ng panlabas na liwanag sa lux, inihahambing ito ng system sa brightness curve at itinatakda ang kaukulang brightness ng display. Sa Android 9+, ang curve ay umaangkop sa mga preference ng user gamit ang machine learning sa device.
Ang sensor ay matatagpuan sa itaas na bahagi ng screen, sa tabi ng earpiece speaker at front camera. Sa karamihan ng mga modernong telepono, ito ay nakatago sa ilalim ng salamin ng display at hindi nakikita ng mata. Sa mga lumang modelo, ang sensor ay mukhang isang maliit na tuldok.
Mga dahilan: maruming sensor (alikabok, mamantika na marka), makapal na proteksiyon na salamin na sumasakop sa lugar ng sensor, o sira sa adaptation curve. Punasan ang itaas na bahagi ng screen ng malambot na tela. Kung hindi ito makatulong — patayin at buksan muli ang auto brightness sa mga setting.
Hindi — ang camera at ALS ay magkaibang sensor. Ang camera ay kumukuha ng larawan sa RGB format, sinusukat ng ALS ang intensity ng liwanag gamit ang spectrally corrected photodiode. Ang mga luxmeter app na gumagamit ng camera ay nagbibigay ng error na 50–100% kumpara sa ALS.
I-dial sa phone app ang *#0*# (para sa Samsung) para pumasok sa engineering menu at piliin ang Light Sensor. Para sa ibang brand, gamitin ang Sensor Test mula sa Google Play. Itutok ang telepono sa isang light source — ang mga halaga ay dapat magbago mula 0 hanggang 10,000+ lx.
Buod
Gagawa kami ng mobile application na turnkey
Gumagawa ang IT Sectr ng mga iOS at Android application para sa mga startup at negosyo mula noong 2017. Magpapayo kami sa iyo at magmumungkahi ng pinakamahusay na solusyon.
Basahin din