مستشعر القرب هو مستشعر أشعة تحت الحمراء يكتشف وجود جسم أمام شاشة الهاتف الذكي دون اتصال فيزيائي. وظيفته الرئيسية هي إطفاء الشاشة أثناء المكالمة الهاتفية لمنع اللمسات العرضية بالخد وتوفير عمر البطارية. وفقًا لدليل مطوري Android من Google، 2024، تقيس مستشعرات القرب الحديثة المسافات من 0 إلى 10 سم بدقة 0.5 سم ووقت استجابة أقل من 50 مللي ثانية.
النقاط الرئيسية
مستشعر القرب — مستشعر أشعة تحت الحمراء لا تماسي يوجد في الجزء العلوي من الواجهة الأمامية للهاتف الذكي، بجانب سماعة المكالمات. يتكون من مصباح LED أشعة تحت الحمراء (IR LED) وكاشف ضوئي (ثنائي الضوء أو ترانزستور ضوئي). كان أول هاتف ذكي جماهيري بمستشعر قرب هو Apple iPhone (2007) — منذ ذلك الحين، أصبح المستشعر مكونًا إلزاميًا في جميع الهواتف الحديثة.
عادة ما يكون المستشعر مخفيًا تحت زجاج الشاشة ويظهر فقط من زاوية معينة كنقطة صغيرة. تستخدم الطرازات الحديثة وحدة بصرية بزاوية ضيقة (15–30 درجة) لتجنب التنشيطات الكاذبة من الانعكاسات على الزجاج. يضم المصنعون Sharp، ams OSRAM (سلسلة TMD)، Silicon Labs وشركاؤهم المتعاقدين.
| المعلمة | القيمة |
|---|---|
| الطول الموجي | 850–940 نانومتر (نطاق IR غير مرئي) |
| المدى | 0–10 سم |
| الدقة | 0.5 سم |
| استهلاك الطاقة | 0.3–0.7 ملي أمبير |
| وقت الاستجابة | 10–50 مللي ثانية |
تستخدم الأجهزة المحمولة مستشعرات منفصلة (شريحة منفصلة بمصباح LED أشعة تحت الحمراء + ثنائي الضوء) ووحدات متكاملة (كلا العنصرين على شريحة واحدة). تستخدم الحلول المتكاملة (ams TMD2635، بحجم 1×1×0.5 ملم) في هياكل فائقة الرقة للهواتف الرائدة الحديثة وتشغل مساحة ضئيلة على اللوحة.
يعتمد مبدأ عمل مستشعر القرب على قياس شدة الإشعاع الأشعة تحت الحمراء المنعكس. يصدر مصباح LED الأشعة تحت الحمراء نبضة ضوئية (850–940 نانومتر)، ويقيس الثنائي الضوئي كمية الضوء المنعكس من الجسم. إذا تجاوزت الإشارة المنعكسة حدًا معينًا، يعتبر الجسم قريبًا (أقل من 3–5 سم).
التحدي التقني الرئيسي هو التدخل الشمسي والضوضاء من مصادر IR أخرى. الحل هو تشكيل الانبعاث: يصدر LED الأشعة تحت الحمراء نبضات بتردد 10–100 كيلوهرتز، ويكتشف المستقبل الضوئي الإشارة بشكل متزامن، مصفيًا مركب التيار المستمر. وفقًا لملحوظة ams التقنية AN000610 (2024)، يكبت الكشف المتزامن الإضاءة الخلفية بمقدار 40–60 ديسيبل.
عتبة التنشيط يضبطها المصنع أثناء المعايرة وتعتمد على شفافية زجاج الشاشة. العتبة النموذجية تتوافق مع مسافة انعكاس 2–4 سم. عند وضع إصبع أو أذن عند مسافة أقل من العتبة، يصدر المستشعر القيمة 0 (قريب)؛ وإلا يعيد أقصى قيمة النطاق (8–10 سم حسب الطراز).
مستشعر القرب IR يقيس شدة الانعكاس — مستشعر ثنائي بحالتين. Time-of-Flight (ToF) يقيس الوقت الذي يستغرقه الضوء للسفر إلى الجسم والعودة، مما يسمح بقياس المسافة بدقة لعدة أمتار. في الأجهزة المحمولة، تستخدم مستشعرات ToF (VL53L5 من STMicroelectronics) للتركيز التلقائي للكاميرا وتطبيقات الواقع المعزز (AR).
لمهمة إطفاء الشاشة أثناء المكالمة، يكفي مستشعر IR ثنائي بسيط — تكلفته 0.10–0.30 دولار مقابل 1–3 دولارات لوحدة ToF. يضيف مستشعر ToF وظيفة قياس المسافة الدقيقة، ولكنه زائد عن الحاجة للمهمة الأساسية. تستخدم بعض الهواتف الرائدة (Samsung Galaxy S23 Ultra) وحدات مدمجة تجمع كلتا التقنيتين.
| المعلمة | IR Proximity | مستشعر ToF |
|---|---|---|
| المبدأ | شدة الانعكاس | وقت طيران الضوء |
| المدى | 0–10 سم | 0–400 سم |
| الدقة | 0.5 سم | 0.1 سم |
| التكلفة | $0.10–$0.30 | $1–$3 |
| التطبيق | الشاشة أثناء المكالمات | التركيز التلقائي، AR |
يوفر Android الوصول إلى مستشعر القرب من خلال Sensor.TYPE_PROXIMITY. ميزة رئيسية في API هي أن المستشعر يعيد قيمتين فقط ذات دلالة عملية: 0 (الجسم قريب) وقيمة المدى الأقصى (عادة 5–10 سم) عند عدم وجود جسم. تخفي الخوارزميات الداخلية الطبيعة التناظرية للإشارة.
الطبيعة الثنائية للمستشعر تعني أن التطبيق لا يستطيع الحصول على المسافة الدقيقة للجسم — فقط معرفة وجود أو غياب عائق داخل منطقة الاستشعار. هذا قيد مادي. للحصول على قياسات أكثر دقة، استخدم مستشعر ToF (إذا كان متوفرًا) من خلال API TYPE_PROXIMITY القياسي، ولكن على الأجهزة مزودة بـ ToF يعيد قيمًا تناظرية.
val proximitySensor = sensorManager
.getDefaultSensor(Sensor.TYPE_PROXIMITY)
sensorManager.registerListener(
object : SensorEventListener {
override fun onSensorChanged(event: SensorEvent) {
val distance = event.values[0]
val maxRange = proximitySensor?.maximumRange ?: 10f
when {
distance < maxRange -> lockScreen()
else -> unlockScreen()
}
}
override fun onAccuracyChanged(
sensor: Sensor, accuracy: Int
) {}
},
proximitySensor,
SensorManager.SENSOR_DELAY_UI
)
عند تسجيل مستشعر القرب، من المهم استخدام SCREEN_OFF_WAKE_LOCK إذا كان التطبيق يحتاج إلى مواصلة العمل عند إطفاء الشاشة (على سبيل المثال، تسجيل المكالمات). بدون Wake Lock، قد يدخل المعالج المركزي (CPU) في وضع السكون ويتوقف عن استقبال بيانات المستشعر. يكفي علم SENSOR_DELAY_UI (200 مللي ثانية) لمعظم السيناريوهات.
على الرغم من أن الوظيفة الرئيسية للمستشعر هي إطفاء الشاشة أثناء المكالمات، يجد المطورون استخدامات أكثر إبداعًا. يستخدم تطبيق Glimmer مستشعر القرب لتخطي المسارات بحركة يد أمام الشاشة — مرر راحتك لتخطي الأغنية. عمر البطارية لا يتأثر: يستهلك المستشعر 0.3–0.7 ملي أمبير فقط.
المشكلة الرئيسية لمستشعرات القرب هي التنشيطات الكاذبة عند استخدام واقيات الشاشة والأغطية. بعض المصنعين (Google Pixel 8، 2023) يستخدمون مستشعر قرب فوق الصوتي بدلاً من IR — يعمل من خلال أي واقي شاشة وشاشة من أي سمك، ولكنه أقل دقة وأعلى زمن استجابة (حتى 100 مللي ثانية). يُبعدد الزجاج السميك (أكثر من 0.5 ملم) الإشعاع الأشعة تحت الحمراء، مما يسبب تنشيطًا مستمرًا. الحل هو استخدام أغطية بقطع دقيق للمستشعر. عيب ثان هو عدم القدرة على العمل من خلال شاشات OLED ذات الشفافية المتغيرة (مستشعر تحت الشاشة).
في 2024–2025، بدأ المصنعون في تطبيق مستشعرات القرب تحت الشاشة، مما قلل الإطار العلوي إلى 1–2 ملم. كان أول جهاز إنتاج كتلي بمستشعر قرب تحت الشاشة هو Xiaomi 14 Ultra (2024)، تلاه OnePlus 12 و Samsung Galaxy S25. تستخدم التقنية إشعاعًا أشعة تحت الحمراء بطول موجي 940 نانومتر، يمر جزئيًا عبر بكسلات OLED. وفقًا لورقة Samsung Display التقنية (2024)، تبلغ شفافية OLED للإشعاع الأشعة تحت الحمراء 15–25%، وهو ما يكفي لعمل المستشعر عند سطوع شاشة يصل إلى 600 كندلة/متر مربع. عند سطوع أعلى، تصبح المصفوفة غير شفافة للأشعة تحت الحمراء، ويتطلب المستشعر إطفاء الإضاءة الخلفية لمدة 1–2 إطار للقياس.
عند تطوير تطبيقات Android، لا يدعم المحاكي مستشعر القرب — يجب محاكاته برمجيًا. على جهاز فعلي، يمكنك استخدام أمر adb: adb shell sendevent /dev/input/eventX مع أكواد ABS_MT_TOUCH_MAJOR المناسبة. لمحاكاة إطفاء الشاشة أثناء المكالمة في الاختبارات، استخدم SensorManager مع كائن وهمي (mock) يعيد 0 عند استدعاء onSensorChanged.
لاختبار مستشعر القرب على جهاز Android، افتح تطبيق الهاتف، اطلب *#0*# (على Samsung) واختر Sensor. عند تقريب إصبعك من الجزء العلوي من الشاشة، يجب أن يتغير قيمة المستشعر من “Far” إلى “Near.” إذا لم يستجب المستشعر، نظف الجزء العلوي من الشاشة وتحقق من وجود واقي شاشة يغطي المستشعر. على iPhone، يتم الاختبار من خلال تشخيص النظام في الإعدادات.
الأسئلة الشائعة
السبب الأكثر شيوعًا هو واقي الشاشة أو الغطاء الذي يغطي مستشعر القرب. تأكد من عدم انسداد المنطقة بجانب سماعة المكالمات. إذا كانت المشكلة على هاتف دون واقيات، فقد يكون عيبًا في العدة أو وسخًا في المستشعر.
يوجد المستشعر في الجزء العلوي من الواجهة الأمامية، بجانب سماعة المكالمات. في الهواتف الذكية الحديثة، هو مخفي تحت زجاج الشاشة. يمكنك رؤيته بإضاءة مصباح كشاف بزاوية — يبدو كنقطة صغيرة أو شق.
باستخدام أدوات Android القياسية — لا. ولكن توجد تطبيقات تتيح الوصول إلى قائمة الهندسة (اطلب *#0*# على Samsung) للاختبار. في بعض الأجهزة، يمكن ضبط الحساسية من خلال وضع الخدمة.
API القياسي لمستشعر القرب يعيد فقط علامة الكشف — 0 أو maxRange. للحصول على المسافة الدقيقة، استخدم مستشعر Time-of-Flight (إذا كان الجهاز مزودًا به) — متاح من خلال TYPE_PROXIMITY نفسه على الأجهزة المتوافقة.
يعتمد على السمك والمادة. الواقيات المرنة الرفيعة (0.15–0.2 ملم) لا تؤثر على العمل. الزجاج المقسى السميك (0.5+ ملم) قد يُبعدد الإشعاع الأشعة تحت الحمراء ويسبب تنشيطًا كاذبًا. يوصى باستخدام واقيات بقطع دقيق أو بإطار أسود حول المستشعر.
الملخص
سنقوم بتطوير تطبيق جوال جاهز
تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.
اقرأ أيضًا