سنسور نور در دستگاه‌های موبایل: چیست، انواع و نحوه کار

نویسنده: IT Sectr منتشر شده: 2026-03-23 زمان مطالعه: 9 دقیقه

سنسور نور یک آشکارساز نوری است که سطح نور محیط را برای تنظیم خودکار روشنایی نمایشگر اندازه‌گیری می‌کند. این سنسور روشنایی را بر حسب لوکس (lx) از 0 (تاریکی کامل) تا 100,000+ lx (نور مستقیم خورشید) تعیین می‌کند. طبق Vishay Application Note, 2024، روشنایی خودکار مبتنی بر ALS مصرف انرژی نمایشگر را 25 تا 40 درصد در مقایسه با کنترل دستی کاهش می‌دهد.

نکات اصلی

  • سنسور نور (ALS — Ambient Light Sensor) روشنایی را از 0 تا 100,000+ lx اندازه‌گیری می‌کند.
  • تصحیح طیفی با فیلتر حساسیت چشم انسان را بازتولید می‌کند (منحنی فوتوپیک 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+ lx
دقت0.1 lx (نور کم)
مصرف0.1–0.5 mA
ابعاد1.5×1.0×0.4 mm
اوج طیفی555 nm (V(λ))

ALS در کجا استفاده می‌شود

علاوه بر روشنایی خودکار، سنسور نور برای کالیبراسیون دوربین (تعیین شرایط عکاسی)، در برنامه‌های پایش نور (Light Meter) و در سیستم‌های خانه هوشمند استفاده می‌شود. طبق Strategy Analytics (2024)، بیش از 95٪ از تمام گوشی‌های هوشمند فروخته شده مجهز به ALS هستند.

فوتودیود و فیلتر طیفی چگونه کار می‌کنند

اساس ALS یک فوتودیود سیلیکونی است که جریان نوری متناسب با شدت نور تابیده تولید می‌کند. جریان نوری از طریق تقویت‌کننده ترانس‌امپدانس به ولتاژ تبدیل شده و توسط ADC داخلی (12–20 بیت) دیجیتالی می‌شود. برای تصحیح طیفی از فیلترهای نوری تداخلی یا جذبی استفاده می‌شود که مؤلفه‌های IR و UV را تضعیف می‌کنند.

محدوده دینامیک و ادراک لگاریتمی

چشم انسان روشنایی را به صورت لگاریتمی درک می‌کند، بنابراین ALS دارای تقویت‌کننده لگاریتمی یا قابل برنامه‌ریزی برای کار در محدوده 0.1 lx (شب عمیق) تا 100,000+ lx (خورشید روشن) است. طبق Broadcom APDS-9306 Datasheet (2024)، سنسور هنگام تغییر روشنایی بیش از 100 برابر به طور خودکار بهره را تغییر می‌دهد — زمان سوئیچینگ از 100 میلی‌ثانیه تجاوز نمی‌کند.

تشخیص سوسو (Flicker Detection)

ALSهای مدرن (ams TSL2520) از تشخیص سوسو نور از لامپ‌های LED و منابع فلورسنت با فرکانس 50/100 هرتز یا 60/120 هرتز پشتیبانی می‌کنند. این عملکرد توسط دوربین‌ها برای همگام‌سازی شاتر استفاده می‌شود — بدون آن، نوارهای تیره از سوسو زدن لامپ‌ها در عکس‌ها ظاهر می‌شوند. ALS فرکانس را ثبت کرده و به پردازنده ISP دوربین منتقل می‌کند.

الگوریتم‌های کار روشنایی خودکار

روشنایی خودکار — عملکرد اصلی ALS. الگوریتم شامل 5 مرحله است: اندازه‌گیری روشنایی، فیلتر نویز، محاسبه روشنایی هدف، هموارسازی انتقال و اعمال به نمایشگر. روشنایی هدف معمول برای شرایط مختلف: 2–5 cd/m² در شب، 200–400 cd/m² در دفتر (500 lx)، 600–1000+ cd/m² در آفتاب (50,000+ lx).

منحنی‌های تطبیقی

از Android 9 (Pie) به بعد، گوگل منحنی‌های روشنایی تطبیقی را معرفی کرد که از رفتار کاربر یاد می‌گیرند. اگر کاربر به طور دستی روشنایی را در یک نور خاص تغییر دهد، سیستم این انحراف را ذخیره کرده و منحنی را تصحیح می‌کند. در Android 13+ از مدل یادگیری ماشین روی دستگاه (TensorFlow Lite) برای پیش‌بینی ترجیحات روشنایی بر اساس زمان روز و زمینه استفاده می‌شود.

انتقال‌های نرم

تغییر ناگهانی روشنایی برای چشم ناراحت‌کننده است. الگوریتم‌های مدرن از فیلتر پایین‌گذر با ثابت زمانی 0.5–3 ثانیه و محدودیت نرخ تغییر روشنایی (ramp rate limit) استفاده می‌کنند. اپل از انیمیشن انتقال 200–400 میلی‌ثانیه در تغییر روشنایی استفاده می‌کند که فرآیند را برای کاربر نامرئی می‌کند. جهش‌های ناگهانی (بیش از 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 lx).
  • عکاسی — ALS به دوربین در انتخاب سناریوی عکاسی کمک می‌کند: HDR در آفتاب روشن، حالت شب در تاریکی، حالت پرتره در نور متوسط.
  • خانه هوشمند — برنامه‌های کنترل نور از ALS برای روشن کردن خودکار چراغ هنگام کاهش نور زیر آستانه استفاده می‌کنند.

تأثیر ALS بر مصرف انرژی

نمایشگر — پرمصرف‌ترین جزء گوشی هوشمند: در روشنایی 600 cd/m²، 3–5 وات مصرف می‌کند. روشنایی خودکار مبتنی بر ALS میانگین روشنایی نمایشگر را در داخل ساختمان (200–500 lx) 30–50٪ در مقایسه با تنظیم دستی حداکثر کاهش می‌دهد. طبق تحقیقات DisplayMate (2024)، کاربرانی که روشنایی خودکار فعال دارند 25–40٪ عمر باتری بیشتری نسبت به کسانی که روشنایی را به صورت دستی در حداکثر سطح تنظیم می‌کنند، دریافت می‌کنند. در فضای باز در 50,000+ lx، ALS برعکس، روشنایی را به 800–1000 cd/m² برای خوانایی صفحه افزایش می‌دهد.

ALS و کالیبراسیون دوربین

دوربین‌های گوشی‌های هوشمند مدرن از داده‌های ALS برای انتخاب خودکار حالت عکاسی استفاده می‌کنند: HDR در نور پس‌زمینه، حالت شب در روشنایی زیر 10 lx، حالت پرتره در نور استودیویی. طبق Qualcomm Snapdragon ISP Whitepaper (2024)، ALS به دوربین اجازه می‌دهد در 100 میلی‌ثانیه نوع منبع نور — نور روز، لامپ رشته‌ای، LED یا فلورسنت — را تعیین کرده و تراز سفیدی را قبل از فشار دکمه شاتر تصحیح کند.

آینده ALS

سنسورهای نور زیر نمایشگر (under-display ALS) در سال‌های 2025–2026 به استاندارد تبدیل می‌شوند. سامسونگ و اپل در حال ثبت اختراع فناوری‌های قرار دادن ALS زیر پیکسل‌های نمایشگر OLED هستند. توسعه سنسورهای طیفی امکان اندازه‌گیری نه تنها شدت، بلکه دمای رنگ نور (CCT) را فراهم می‌کند — این کار True Tone و تراز سفیدی خودکار دوربین را بهبود می‌بخشد.

سؤالات متداول

روشنایی خودکار در تلفن چگونه کار می‌کند؟

سنسور نور سطح نور محیط را بر حسب لوکس اندازه‌گیری می‌کند، سیستم آن را با منحنی روشنایی مقایسه کرده و روشنایی متناسب نمایشگر را تنظیم می‌کند. در Android 9+ منحنی با استفاده از یادگیری ماشین روی دستگاه با ترجیحات کاربر تطبیق می‌یابد.

سنسور نور در تلفن کجا قرار دارد؟

سنسور در قسمت بالای صفحه، در کنار بلندگوی مکالمه و دوربین جلو قرار دارد. در اکثر تلفن‌های مدرن، در زیر شیشه نمایشگر پنهان است و با چشم غیرمسلح دیده نمی‌شود. در مدل‌های قدیمی، سنسور به صورت یک نقطه کوچک به نظر می‌رسد.

چرا روشنایی خودکار درست کار نمی‌کند؟

دلایل: آلودگی سنسور (گرد و غبار، اثر چربی)، شیشه محافظ ضخیم پوشاننده ناحیه سنسور، یا نقص در منحنی تطبیق. قسمت بالای صفحه را با پارچه نرم پاک کنید. اگر کمکی نکرد — روشنایی خودکار را در تنظیمات خاموش و روشن کنید.

آیا می‌توان مقادیر ALS را از طریق دوربین تلفن خواند؟

خیر — دوربین و ALS سنسورهای متفاوتی هستند. دوربین تصویر را با فرمت RGB ثبت می‌کند، ALS شدت نور را با فوتودیود تصحیح‌شده طیفی اندازه‌گیری می‌کند. برنامه‌های لوکس‌متر که از دوربین استفاده می‌کنند در مقایسه با ALS 50–100٪ خطا دارند.

چگونه سنسور نور را در Android بررسی کنیم؟

در برنامه تلفن *#0*# (برای سامسونگ) را شماره‌گیری کنید تا وارد منوی مهندسی شوید و Light Sensor را انتخاب کنید. برای برندهای دیگر از Sensor Test از Google Play استفاده کنید. تلفن را به سمت منبع نور بگیرید — مقادیر باید از 0 تا 10,000+ lx تغییر کنند.

خلاصه

  • سنسور نور (ALS) — فوتودیود با تصحیح طیفی که روشنایی را در محدوده 0–100,000+ lx اندازه‌گیری می‌کند.
  • فیلتر طیفی حساسیت چشم انسان را با اوج در 555 نانومتر (منحنی فوتوپیک V(λ)) بازتولید می‌کند.
  • روشنایی خودکار مصرف انرژی نمایشگر را 25–40٪ کاهش داده و راحتی خواندن را در شرایط مختلف افزایش می‌دهد.
  • Android API — Sensor.TYPE_LIGHT، داده‌ها بر حسب لوکس، مصرف 0.1–0.5 mA، نیازی به کالیبراسیون ندارد.
  • منحنی‌های تطبیقی در Android 9+ از رفتار کاربر با استفاده از TensorFlow Lite روی دستگاه یاد می‌گیرند.
  • ALSهای مدرن از تشخیص سوسو (50/60 هرتز) برای همگام‌سازی شاتر دوربین پشتیبانی می‌کنند.
  • سنسورهای زیر نمایشگر و ALS طیفی با اندازه‌گیری دمای رنگ — روندهای کلیدی توسعه فناوری.

ما یک اپلیکیشن موبایل به صورت کلید در دست توسعه خواهیم داد

IT Sectr از سال 2017 برنامه‌های iOS و Android را برای استارتاپ‌ها و کسب‌وکارها ایجاد می‌کند. ما به شما مشاوره می‌دهیم و بهترین راه‌حل را پیشنهاد خواهیم کرد.

بحث درباره پروژه

همچنین بخوانید