حسّاسات الضوء والحسّاسات الضوئية
الضوء معلومة مفيدة جدا لنظام التحكّم: مصباح الشارع يضيء وحده عند الغروب، والروبوت يتبع خطّا أسود على الأرض، والآلة تعدّ القطع التي تقطع شعاع ضوء. في هذا الفصل نتعرّف على المقاومة الضوئية، نوصلها بالمتحكّم بواسطة مُجزِّء الجهد، ونبني منها مصباحا ليليا تلقائيا بعتبتين. في النهاية نتعرّف باختصار على حسّاسات ضوئية أخرى ونقارن بينها.
- المقاومة الضوئية تقلّ مقاومتها مع ازدياد الضوء بعلاقة غير خطّية، وأنها بطيئة.
- نوصل المقاومة الضوئية بمُجزِّء الجهد، ونحسب الجهد والقيمة الخام في الضوء والظلام.
- التخلّف بعتبتين يمنع المشغّل من الارتعاش حول العتبة.
- الديود الضوئي، الترانزستور الضوئي، حسّاس الانعكاس والحسّاس ذا الشقّ أسرع من المقاومة الضوئية، ولكل منها استعمال نموذجي.
נגד תלוי-אור (LDR) – المقاومة الضوئية (Light Dependent Resistor)
نقيس شدّة الضوء الساقط على سطح بوحدة اللوكس [lx]؛ ويسمى هذا المقدار شدّة الإضاءة (עוצמת הארה). الجدول يعطي القيم النموذجية لمقاومة ضوئية شائعة من نوع GL5528. شدّة الإضاءة في العمود الثاني تقريبية، للتوضيح فقط.
| E [lx] | مثال (تقريبي) | RLDR |
|---|---|---|
| 0 | ظلام تام (بعد 10 s) | ≥ 1 MΩ |
| 1 | ليل، غرفة مظلمة تقريبا | 59.72 kΩ |
| 10 | غسق، إضاءة شارع خافتة | 15 kΩ |
| 100 | غرفة مضاءة إضاءة خافتة | 3.77 kΩ |
| 1000 | قرب النافذة في النهار | 0.95 kΩ |
المنحنى يبيّن أن العلاقة غير خطّية: في الضوء الخافت تهبط المقاومة بسرعة، وفي الضوء القوي تكاد لا تتغيّر. كل زيادة للضوء عشر مرّات تقسم المقاومة على نحو 4 فقط. لذلك المقاومة الضوئية جيّدة لسؤال «ضوء أم ظلام؟» ولعتبة نحدّدها بالتجربة، لكنها ليست مقياسا دقيقا لشدّة الإضاءة.
زمن الاستجابة (זמן תגובה): المقاومة الضوئية بطيئة. في GL5528 زمن الصعود نحو 20 ms وزمن الهبوط نحو 30 ms (قيمة نموذجية حسب ورقة البيانات)، وبعد ظلام طويل تحتاج وقتا أطول. هذا يكفي لمصباح ليلي، لكنه لا يكفي لعدّ نبضات سريعة.
נגד תלוי-אור במחלק מתח – المقاومة الضوئية في مُجزِّء الجهد (LDR in a Voltage Divider)
المتحكّم يقرأ جهدا لا مقاومة. لذلك نوصل المقاومة الضوئية على التوالي مع مقاومة ثابتة RF ، ونأخذ الجهد من نقطة الوسط إلى المدخل التماثلي A0. عندما تكون المقاومة الضوئية فوق، يرتفع Vout مع الضوء.
| الرمز | المعنى | وحدة القياس |
|---|---|---|
| Vout | الجهد على المدخل التماثلي | [V] |
| VCC | جهد التغذية (5 V في Uno) | [V] |
| RF | المقاومة الثابتة (إلى الأرضي) | [Ω] |
| RLDR | مقاومة المقاومة الضوئية (إلى التغذية) | [Ω] |
نختار عادة RF = 10 kΩ ، وهي قريبة من مقاومة GL5528 في ضوء الغرفة الخافت، فيتغيّر الجهد على مدى واسع بين الظلام والضوء. الجدول يبيّن السلسلة كلها مع RF = 10 kΩ : الضوء يزداد ← المقاومة تقلّ ← الجهد يرتفع ← القيمة الخام تزداد:
| E | 1 lx | 10 lx | 100 lx | 1000 lx |
|---|---|---|---|---|
| RLDR | 59.72 kΩ | 15 kΩ | 3.77 kΩ | 0.95 kΩ |
| Vout | 0.72 V | 2 V | 3.63 V | 4.57 V |
| N | 147 | 409 | 743 | 935 |
أ. ما هو Vout عند 100 lx؟
ب. هل يرتفع الجهد الآن مع الضوء أم ينخفض؟
מנורת לילה אוטומטית עם היסטרזיס – مصباح ليلي تلقائي بعتبتين (Automatic Night Lamp with Hysteresis)
الفكرة البسيطة: «إذا كان N أقل من عتبة أشعل المصباح، وإلا أطفئه». لكن عند الغروب يتغيّر الضوء ببطء، وغيمة أو ظلّ عابر يحرّك القراءة قليلا حول العتبة، فيشتعل المصباح وينطفئ مرّات كثيرة. الحلّ هو التخلّف.
نختار أن يشتعل المصباح تحت 10 lx وأن ينطفئ فوق 20 lx. نحسب القيمة الخام لكل عتبة من مُجزِّء الجهد:
المصباح هنا مصباح بيان LED. جهده الأمامي نحو 2 V (قيمة نموذجية حسب ورقة البيانات لـ LED أحمر)، فالتيار I = 5 − 2330 ≈ 9.1 mA ، أقل من 20 mA المسموح لطرف Uno.
const int LDR_PIN = A0; // LDR to 5V, 10k to GND
const int LAMP_PIN = 8; // LED + 330 ohm to GND
const int N_ON = 409; // darker than this -> lamp ON (~10 lx)
const int N_OFF = 514; // brighter than this -> lamp OFF (~20 lx)
bool lampOn = false;
void setup() {
Serial.begin(9600);
pinMode(LAMP_PIN, OUTPUT);
}
void loop() {
int n = analogRead(LDR_PIN);
float v = n * 5.0 / 1023.0;
if (!lampOn && n < N_ON) lampOn = true;
if (lampOn && n > N_OFF) lampOn = false;
digitalWrite(LAMP_PIN, lampOn ? HIGH : LOW);
Serial.print("N = "); Serial.print(n);
Serial.print(" V = "); Serial.print(v, 2);
Serial.print(" lamp = "); Serial.println(lampOn ? "ON" : "OFF");
delay(1000);
}نشغّل البرنامج في الغسق ثم عند الفجر. شدّة الإضاءة في كل ثانية (بوحدة lx) هي: 60، 25، 14، 11، 9، 12، 13، 8، 12، 17، 23، 40. الشاشة التسلسلية تُظهر:
N = 677 V = 3.31 lamp = OFF N = 548 V = 2.68 lamp = OFF N = 460 V = 2.25 lamp = OFF N = 423 V = 2.07 lamp = OFF N = 394 V = 1.93 lamp = ON N = 436 V = 2.13 lamp = ON N = 448 V = 2.19 lamp = ON N = 377 V = 1.84 lamp = ON N = 436 V = 2.13 lamp = ON N = 489 V = 2.39 lamp = ON N = 536 V = 2.62 lamp = OFF N = 619 V = 3.03 lamp = OFF
المقارنة: لو استعملنا عتبة واحدة NON = 409 ، لكان عدد تغيّرات حالة المصباح في هذا التسلسل 4. مع العتبتين يشتعل مرّة واحدة عند هبوط N تحت 409 ، ولا ينطفئ إلا بعد أن يتجاوز 514؛ فيكون عدد التغيّرات 2 فقط.
חיישנים אופטיים נוספים – حسّاسات ضوئية أخرى (Other Optical Sensors)
المقاومة الضوئية بطيئة. عندما نحتاج إلى تفاعل سريع — عدّ قطع على حزام ناقل، تتبّع خطّ، عدّ دورات محرّك — نستعمل حسّاسات مبنية على الديود الضوئي (פוטודיודה) أو الترانزستور الضوئي (פוטוטרנזיסטור). كثير منها يعمل بـالأشعة تحت الحمراء (אינפרא-אדום) غير المرئية للعين، مع باعث ومستقبل في نفس الغلاف.
| الحسّاس | ماذا يقيس أو يكشف؟ | المدى النموذجي | نوع المخرج | استعمال نموذجي |
|---|---|---|---|---|
| المقاومة الضوئية (للمقارنة) | شدّة الضوء، ببطء (عشرات ms) | من الظلام حتى ضوء النهار | مقاومة ← تماثلي بمُجزِّء | مصباح ليلي، إنارة شارع |
| الديود الضوئي | شدّة الضوء، بسرعة كبيرة جدا | من الضوء الخافت حتى ضوء الشمس | تيار صغير ← تماثلي بمقاومة | مقياس ضوء، مستقبل جهاز التحكّم عن بعد |
| الترانزستور الضوئي | وجود الضوء وشدّته، بسرعة (ميكروثوانٍ) | من الضوء الخافت حتى ضوء الشمس | تماثلي، أو رقمي عند الإشباع | داخل حسّاس الانعكاس والحسّاس ذي الشقّ |
| حسّاس الانعكاس (TCRT5000) | سطحا فاتحا أو أسود قريبا | نحو 0.2 حتى 15 mm | تماثلي، أو رقمي في الوحدة الجاهزة | روبوت يتتبّع خطّا، كشف جسم قريب |
| الحسّاس ذو الشقّ | جسما يقطع الشعاع داخل الشقّ | جسم داخل شقّ عرضه بضعة مليمترات | رقمي: نبضة لكل قطع | عدّ القطع، عدّ دورات قرص مشقوق |
الأرقام نموذجية حسب أوراق البيانات. حسّاس الانعكاس (חיישן אופטי מחזיר) فيه باعث وترانزستور ضوئي متجاوران: الضوء ينعكس عن السطح الفاتح ويعود، والسطح الأسود يمتصّه. الحسّاس الضوئي ذو الشقّ (חיישן חריץ) فيه باعث وترانزستور ضوئي متقابلان على جانبي شقّ: جسم يدخل الشقّ يقطع الشعاع. الوحدات الجاهزة لهذين الحسّاسين تعطي غالبا مخرجا رقميا DO نقرؤه بالدالة digitalRead().
(أ) روبوت يتتبّع خطّا أسود على أرض بيضاء.
(ب) عدّ الزجاجات التي تمرّ على حزام ناقل بين باعث ومستقبل.
(ج) إشعال إنارة الحديقة عند الغروب.
ملخّص قوانين الفصل:
| القانون | الصيغة |
|---|---|
| مُجزِّء الجهد مع المقاومة الضوئية | Vout = VCC·RFRF + RLDR |
| القيمة الخام في Uno | N = Vout·10235 |
قاموس المصطلحات – מילון מונחים:
| بالعربية | بالعبرية (كما تظهر في الامتحان) | English |
|---|---|---|
| المقاومة الضوئية (الخلية الضوئية) | נגד תלוי-אור (LDR) | Light dependent resistor |
| شدّة الإضاءة | עוצמת הארה | Illuminance (lux) |
| حسّاس سلبي | חיישן סביל | Passive sensor |
| زمن الاستجابة | זמן תגובה | Response time |
| مُجزِّء الجهد | מחלק מתח | Voltage divider |
| التخلّف (الهستيريسيس) | היסטרזיס | Hysteresis |
| العتبة | סף | Threshold |
| الديود الضوئي | פוטודיודה | Photodiode |
| الترانزستور الضوئي | פוטוטרנזיסטור | Phototransistor |
| الأشعة تحت الحمراء | אינפרא-אדום | Infrared (IR) |
| حسّاس الانعكاس | חיישן אופטי מחזיר | Reflective optical sensor |
| الحسّاس الضوئي ذو الشقّ (القاطع الضوئي) | חיישן חריץ (מזלג) | Slot opto-interrupter |
أسئلة للتمرين:
أ. نحسب Vout.
ب. هل الضوء أقوى أم أضعف من 10 lx؟ (عند 10 lx تكون N = 409.)