توصيل المقاومة الضوئية بالاردوينو. مخطط ترحيل الصور وقواعد الاتصال. كيف يعمل المقاوم الضوئي؟

في الدرس السابق، تعلمت كيفية عمل مقياس الجهد، الذي تتغير مقاومته اعتمادًا على دوران المقبض - القضيب. في هذا البرنامج التعليمي، ستتعرف على المقاومة الضوئية، والتي تغير مقاومتها اعتمادًا على مقدار الضوء الذي يصل إلى عنصر الاستشعار الخاص بها.

لا يستطيع الأردوينو تفسير المقاومة نفسها لأنه يعمل بالجهد، لذلك تستخدم هذه الدائرة مقسم الجهد. يتكون المقسم عادة من مقاومتين، في حالتنا سيكون أحدهما هو المقاوم الضوئي، ويقرأ الاردوينو الجهد من النقطة الوسطى بينهما، والذي يتم توفيره لمدخل Arduino التناظري (دبوس 0). سيخرج المقسم جهدًا عاليًا عندما يتلقى المقاوم الضوئي الكثير من الضوء وجهدًا منخفضًا عندما يتلقى المقاوم الضوئي القليل من الضوء (الظلام).

في هذا البرنامج التعليمي سوف تحتاج:

1. اردوينو أونو - 1 جهاز كمبيوتر.

2. LED - 1 جهاز كمبيوتر.

3. المقاوم 10 كوم. - حاسب شخصي 1.

4. المقاوم من 200 إلى 560 أوم. - حاسب شخصي 1.

5. المقاوم الضوئي

6. توصيل الأسلاك.

الاردوينو والمقاوم الضوئي. مخطط اتصال للدرس رقم 6

تحميل الدرس مع رسم ووصف تفصيلي للدرس:

مجموعة تجارب ArduinoKit
تحميل الكود البرنامجي للتجربة رقم 6:

عرض الدرس الذي تم إنشاؤه على مخطط التخطيط:

ونتيجة لذلك يجب أن ترى LED الذي سيكون سطوعه زيادة أو نقصانوفقا لكمية الضوء التي تصل إلى المقاومة الضوئية. لو ولا يغير سطوعه, تأكد من أنكتجميعها بشكل صحيح رسم بياني. وتأكد من تحميل كود البرنامج على لوحة الاردوينو.

حظا موفقا للجميع! نحن في انتظار تعليقاتكم على ARDUINO LESSON 6 - PHOTORESISTOR.

  1. مقاوم الضوء: http://ali.ski/5GDvP7
  2. الثنائيات والمقاومات: http://fas.st/KK7DwjyF
  3. مجلس التطوير: http://ali.ski/rq8wz8
  4. اردوينو أونو: http://ali.ski/gC_mOa

في هذا البرنامج التعليمي سنقوم بتوصيل مقاومة ضوئية إلى Arduino. والتي سوف تتحكم في LED المدمج.

المقاومة الضوئية: تقل مقاومة المقاومات الضوئية عند تعرضها للضوء وتزداد في الظلام. من السهل استخدام المقاومات الضوئية، ولكنها تتفاعل ببطء مع التغيرات في مستويات الضوء وتكون كفاءتها منخفضة جدًا. دقة. عادة، يمكن أن تتراوح مقاومة المقاومات الضوئية من 50 أوم في وضح النهار إلى أكثر من 10 ميغا أوم في الظلام.

سنقوم بتوصيل المقاوم الضوئي نفسه بالأرض من خلال مقاومة 10 كيلو أوم وسنقوم بتوصيل نفس الساق بمنفذ Arduino التناظري A0، وسيتم توصيل الطرف الثاني من المقاوم الضوئي بـ Arduino 5 فولت. كل هذا يظهر بوضوح في الرسم البياني في بداية المقال.

بعد توصيل المقاومة الضوئية بـ Arduino بشكل صحيح، تحتاج إلى نسخ الكود أدناه ولصقه في برنامج Arduino ide وتحميل كل كود البرنامج هذا إلى Arduino.

Int PhotosensorPin = A0; // أشر إلى الدبوس الذي يتصل به Photoresistor unsigned int SensorValue = 0; // قم بتعريف متغير لتخزين القيم. إعداد باطلة () ( pinMode (13، OUTPUT)؛ Serial.begin (9600)؛) حلقة باطلة () (sensorValue = AnalogRead (PhotosensorPin)؛ // قراءة القيم من المقاوم الضوئي if (sensorValue)<700) digitalWrite(13, HIGH); //Включаем else digitalWrite(13, LOW); // Выключаем Serial.print(sensorValue, DEC); //Вывод данных с фоторезистора (0-1024) Serial.println(""); delay(500); }

بعد تحميل كود البرنامج في Arduino، تحتاج إلى فتح شاشة المنفذ.

الآن، إذا سقط الضوء على المقاوم الضوئي وتم إيقاف تشغيل مؤشر LED المدمج، قم بتغطية المقاوم الضوئي بيدك وسترى أنه في مرحلة ما سيتم تشغيل مؤشر LED! يمكنك أيضًا رؤية التغييرات في القيمة من المقاوم الضوئي في شاشة المنفذ.

يمكن مشاهدة عرض توضيحي لكيفية عمل المقاوم الضوئي في الفيديو أدناه.

فيديو:

مثال على توصيل مقاوم ضوئي للتحكم في مصباح LED

يوضح هذا المثال توصيل مقاوم ضوئي للتحكم في مصباح LED لإنشاء نظير للضوء الليلي. تعتمد مقاومة المقاوم الضوئي على شدة الضوء الساقط عليه، لذلك عندما ينخفض ​​الضوء، سوف يحترق مؤشر LED بشكل ساطع، وعندما يكون هناك ضوء ساطع، ينطفئ.

المكونات المطلوبة

  • لوح الخبز
  • المقاوم على 220 أوم;
  • المقاوم على 10 كيلو أوم;
  • Photoresistor مع المقاومة الاسمية 200 كيلو أوم;
  • مصباح LED أحمر واحد؛
  • أسلاك العبور

مخطط

يتصل 9 -الطرف الرقمي للاردوينو مع أحد الأطراف 220 أومالمقاوم، قم بتوصيل الطرف الآخر من هذا المقاوم بأنود LED (الساق الطويلة)، وكاثود LED بالأرض (جهة الاتصال أرضعلى لوحة اردوينو). اتصال 5 فولتقم بتوصيل لوحة Arduino بأحد أطراف المقاومة الضوئية، ثم قم بتوصيل الطرف الآخر بها 0 الدبوس التناظري لاردوينو ومع أحد المسامير 10 كيلو أومالمقاوم، قم بتوصيل الطرف الآخر للمقاوم بالأرض (جهة الاتصال أرضعلى لوحة اردوينو).

يتكون مجزئ الجهد المقاوم من مقاومتين، ويعتمد جهد الخرج على نسبة المقاومات. في هذا المثال، تكون إحدى المقاومات متغيرة (مقاومة ضوئية، بمقاومة مقدرة تبلغ 200 كيلو أومأي أنه في الظلام الدامس ستكون مقاومة المقاوم الضوئي مساوية للقيمة الاسمية، وفي الضوء الساطع ستنخفض إلى الصفر تقريبًا)، حتى نتمكن من الحصول على تغيير في الجهد. مقاوم آخر يحدد الحساسية. إذا كنت تستخدم مقاوم القطع، فيمكنك إجراء حساسية قابلة للتعديل.

يعتمد حجم ودقة القراءات على مكان وجود المقاوم الضوئي وقيمة المقاوم الثابت في دائرة مقسم الجهد. قم بتغيير الدائرة وانظر من خلال شاشة المنفذ (لهذا يمكنك تنزيل الكود من القسم ""رمز ضبط المعلمات""، الموجود أدناه) مع تغير القراءات.

في شاشة المنفذ، في الحالتين الأولى والثانية، سترى أنك لن تحصل على نطاق القيم بالكامل (من 0 إلى 1023)، لأن مقاومة المقاوم الضوئي لن تكون صفرًا أبدًا. ولكن يمكنك تحديد الحد الأدنى (MIN_LIGHT) والحد الأقصى (MAX_LIGHT) لقيم الإضاءة (تعتمد القيم على ظروف الإضاءة وقيمة المقاوم الثابت وخصائص المقاوم الضوئي) لبناء "الضوء الليلي" الخاص بنا.

شفرة

قم بتحميل المخطط الموضح أدناه على لوحة Arduino الخاصة بك.

    #define RLED 9 // قم بتوصيل مؤشر LED الأحمر بالدبوس الرقمي التاسع بدعم PWM

  1. إنت فال = 0 ; // متغير لتخزين قيمة القراءة من المستشعر

  2. الإعداد باطل()

    pinMode (RLED، OUTPUT) ؛ // قم بتعيين الدبوس 9 كمخرج

  3. حلقة فارغة()

    فال = التناظرية القراءة (LIGHT)؛ // اقرأ القيمة من المدخلات التناظرية

    فال = خريطة (فال، MIN_LIGHT، MAX_LIGHT، 255، 0) ؛ // تحويل نطاق قيم القراءة

    فال = قيد(val, 0, 255) ؛ //"تحديد" نطاق القيم المقبولة

    التناظرية (RLED، فال) ؛ // التحكم في الصمام

  • ملحوظة:يستخدم هذا المثال مقاومًا ضوئيًا بمقاومة اسمية قدرها 200 كيلو أوم. إذا كان لديك مقاومة ضوئية ذات قيمة مختلفة، فقد يتعين عليك تغيير الحد الأدنى لقيم الإضاءة (MIN_LIGHT) والحد الأقصى (MAX_LIGHT).

كود لضبط المعلمات

إذا كان لديك مقاوم ضوئي بتصنيف مختلف، فقد يتعين عليك ضبط قيم الإضاءة الدنيا (MIN_LIGHT) والحد الأقصى (MAX_LIGHT). للقيام بذلك، قم بإضافة سطرين من التعليمات البرمجية (مميز). وحدد الحد الأدنى (MIN_LIGHT) والحد الأقصى (MAX_LIGHT) لقيم الإضاءة عن طريق منع (والعكس فتح) الوصول إلى الضوء للمقاوم الضوئي بيدك ومراقبة التغيرات في القيم باستخدام شاشة المنفذ التسلسلي. بعد إجراء التعديلات، يمكنك التعليق على أسطر التعليمات البرمجية المضافة.

    #define RLED 9 // قم بتوصيل مؤشر LED الأحمر بالدبوس الرقمي التاسع بدعم PWM

    #define LIGHT 0 // قم بتوصيل المقاوم الضوئي بالدبوس التناظري رقم 0

    #define MIN_LIGHT 200 //الحد الأدنى لقيمة الضوء

    #define MAX_LIGHT 900 //الحد الأقصى لقيمة الضوء

مقالات جديدة

● المشروع 13: المقاومة الضوئية. نقوم بمعالجة الإضاءة عن طريق إضاءة أو إطفاء مصابيح LED

في هذه التجربة سوف نتعرف على المستشعر التناظري لقياس الإضاءة - المقاوم الضوئي (الشكل 13.1).

المكونات المطلوبة:

الاستخدام الشائع للمقاوم الضوئي هو قياس الاستضاءة. في الظلام تكون مقاومتها عالية جدًا. عندما يسقط الضوء على المقاومة الضوئية، تنخفض المقاومة بما يتناسب مع الإضاءة. يظهر الرسم التخطيطي لتوصيل المقاومة الضوئية بـ Arduino في الشكل. 13.2. لقياس الإضاءة، من الضروري تجميع مقسم الجهد، حيث سيتم تمثيل الذراع العلوي بمقاوم ضوئي، والذراع السفلي بمقاوم تقليدي بقيمة كبيرة بما فيه الكفاية. سوف نستخدم مقاومة 10 كيلو أوم. نقوم بتوصيل الذراع الأوسط للمقسم بالمدخل التناظري A0 الخاص بـ Arduino.

أرز. 13.2. مخطط توصيل المقاومة الضوئية بالاردوينو

لنقم بكتابة رسم تخطيطي لقراءة البيانات التناظرية وإرسالها إلى المنفذ التسلسلي. محتويات الرسم موضحة في القائمة 13.1.

ضوء كثافة العمليات. // متغير لتخزين بيانات المقاوم الضوئي الإعداد باطل()( Serial.begin (9600 )؛ ) حلقة فارغة()( ضوء = تمثيلي قراءة (0)؛ Serial.println (ضوء)؛ تأخير (100)؛ )
ترتيب الاتصال:

1. قم بتوصيل المقاوم الضوئي وفقًا للمخطط الموجود في الشكل. 13.2.
2. قم بتحميل المخطط من القائمة 13.1 على لوحة Arduino.
3. نقوم بضبط إضاءة المقاوم الضوئي يدويًا ونلاحظ إخراج القيم المتغيرة إلى المنفذ التسلسلي، وتذكر القراءات عندما تكون الغرفة مضاءة بالكامل وعندما يتم حظر تدفق الضوء تمامًا.

لنقم الآن بإنشاء مؤشر ضوئي باستخدام صف LED مكون من 8 مصابيح LED. يتناسب عدد مصابيح LED المضاءة مع الإضاءة الحالية. نقوم بتجميع مصابيح LED وفقًا للمخطط الموضح في الشكل. 13.3 باستخدام مقاومات محددة بقيمة اسمية 220 أوم.

أرز. 13.3. مخطط توصيل المقاوم الضوئي ومصابيح LED إلى Arduino


يتم عرض محتويات الرسم التخطيطي لعرض الإضاءة الحالية على خط مصابيح LED في القائمة 13.2.

// جهة الاتصال لتوصيل المصابيحمصابيح LED ثابتة = (3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 ); كونست إنت LIGHT=A0; // دبوس A0 لإدخال المقاوم الضوئيكونست إنت MIN_LIGHT=200 ; // عتبة الإضاءة السفلىكونست إنت MAX_LIGHT=900 ; // عتبة الإضاءة العليا // متغير لتخزين بيانات المقاوم الضوئيإنت فال = 0 ; الإعداد باطل(){ // تكوين دبابيس LED كمخرجاتل(int i=0;i<8 ;i++) pinMode(leds[i],OUTPUT); } حلقة فارغة()(فال = التناظرية(LIGHT); // اقرأ قراءات المقاوم الضوئي // استخدام وظيفة الخريطة (). val = Map(val, MIN_LIGHT, MAX_LIGHT, 8, 0); // الحد بحيث لا يتجاوز الحدودفال = قيد(فال، 0، 8)؛ // قم بإضاءة عدد مصابيح LED بما يتناسب مع الإضاءة، // اخماد الباقيل(int i=1;i<9 ;i++) { if (i>=فال) // تضيء المصابيحالكتابة الرقمية (المصابيح، عالية)؛ آخر // أطفئ مصابيح LEDالكتابة الرقمية (المصابيح، LOW)؛ ) تأخير(1000); // توقف مؤقتًا قبل القياس التالي }
ترتيب الاتصال:

1. قم بتوصيل المقاوم الضوئي ومصابيح LED وفقًا للمخطط الموجود في الشكل. 13.3.
2. قم بتحميل المخطط من القائمة 13.2 على لوحة Arduino.
3. نقوم بضبط إضاءة المقاوم الضوئي يدويًا ونحدد مستوى الإضاءة الحالي بعدد مصابيح LED المضيئة (الشكل 13.3).

نأخذ حدود الإضاءة الدنيا والعليا من القيم المتذكرة عند إجراء التجربة باستخدام الرسم السابق (القائمة 13.1). نقوم بقياس قيمة الإضاءة المتوسطة بمقدار 8 قيم (8 مصابيح LED) ونضيء عدد مصابيح LED بما يتناسب مع القيمة بين الحدين الأدنى والأعلى.

قوائم البرنامج

يتيح لك ADC المدمج في وحدة التحكم الدقيقة، والتي تمت مناقشتها في الجزء السابق من المراجعة، توصيل أجهزة استشعار تناظرية مختلفة بسهولة بلوحة Arduino، والتي تحول المعلمات الفيزيائية المقاسة إلى جهد كهربائي.

مثال على المستشعر التناظري البسيط هو المقاوم المتغير المتصل باللوحة، كما هو موضح في الشكل. 1. يمكن أن يكون من أي نوع، على سبيل المثال SP3-33-32 (الشكل 2). يشار إلى قيمة المقاوم في الرسم البياني تقريبًا ويمكن أن تكون أقل أو أكثر. ومع ذلك، يجب أن نتذكر أنه كلما انخفضت مقاومة المقاوم المتغير، كلما زاد التيار الذي يستهلكه من مصدر طاقة المتحكم الدقيق. وعندما تكون مقاومة مصدر الإشارة (في هذه الحالة، مقاومة متغيرة) أكثر من 10 كيلو أوم، فإن ADC الخاص بالمتحكم الدقيق يعمل بأخطاء كبيرة. يرجى ملاحظة أن مقاومة المقاوم المتغير كمصدر للإشارة تعتمد على موضع شريط التمرير الخاص به. وهي صفر في أقصى موضعيها والحد الأقصى (يساوي ربع المقاومة الاسمية) في الموضع الأوسط.

أرز. 1. مخطط توصيل المقاوم المتغير باللوحة

أرز. 2. SP3-33-32

من الملائم استخدام المقاوم المتغير عندما تريد تغيير المعلمة بسلاسة وليس في خطوات (منفصلة). على سبيل المثال، النظر في العمل الوارد في الجدول. 1 برنامج يقوم بتغيير سطوع LED اعتمادًا على موضع شريط تمرير المقاومة المتغيرة. السطر U = U/4 مطلوب في البرنامج لتحويل الرقم الثنائي ذو العشرة بتات الذي يتم إرجاعه بواسطة ADC إلى رقم ذو ثمانية بتات، ويتم قبوله باعتباره المعامل الثاني بواسطة الدالة AnalogWrite(). في هذه الحالة، يتم ذلك عن طريق قسمة الرقم الأصلي على أربعة، وهو ما يعادل التخلص من الرقمين الثنائيين الأقل أهمية.

الجدول 1.

يمكن أن يكون المقاوم المتغير ذو التصميم المناسب بمثابة مستشعر زاوية الدوران أو مستشعر الإزاحة الخطية. وبالمثل، يمكنك توصيل العديد من العناصر الراديوية: المقاومات الضوئية، والثرمستورات، والثنائيات الضوئية، والترانزستورات الضوئية. باختصار، الأجهزة التي تعتمد مقاومتها الكهربائية على عوامل بيئية معينة.

في التين. يوضح الشكل 3 رسمًا تخطيطيًا لتوصيل المقاومة الضوئية بالاردوينو. عندما تتغير الإضاءة، تتغير مقاومتها الكهربائية، وبالتالي يتغير الجهد عند الإدخال التناظري للوحة Arduino. يمكن استبدال المقاوم الضوئي FSK-1 المشار إليه في الرسم التخطيطي بأي مقاوم آخر، على سبيل المثال SF2-1.

أرز. 3. مخطط اتصال المقاوم الضوئي بالاردوينو

في الجدول يوضح الشكل 2 برنامجًا يحول لوحة Arduino المزودة بمقاوم ضوئي متصل بها إلى مقياس ضوء بسيط. أثناء العمل، يقوم بشكل دوري بقياس انخفاض الجهد عبر المقاوم المتصل على التوالي مع المقاوم الضوئي، وينقل النتيجة في الوحدات التقليدية من خلال المنفذ التسلسلي إلى الكمبيوتر. سيتم عرضها على شاشة محطة تصحيح أخطاء Arduino، كما هو موضح في الشكل. 4. كما نرى، في لحظة معينة انخفض الجهد المقاس بشكل حاد. حدث هذا عندما تم حجب الصمام الثنائي الضوئي ذو الإضاءة الساطعة بواسطة شاشة غير شفافة.

الجدول 2.

أرز. 4. صورة على شاشة محطة تصحيح أخطاء Arduino

للحصول على قيم الإضاءة باللوكس (وحدات SI القياسية)، تحتاج إلى مضاعفة النتائج بعامل تصحيح، ولكن سيتعين عليك تحديده تجريبيًا وبشكل فردي لكل مقاوم ضوئي. لهذا سوف تحتاج إلى مقياس لوكس قياسي.

يتم توصيل الترانزستور الضوئي أو الثنائي الضوئي (الشكل 5) بالاردوينو بطريقة مماثلة. باستخدام العديد من الأجهزة الحساسة للضوء، من الممكن بناء نظام رؤية بسيط للروبوت. من الممكن تنفيذ العديد من التصميمات الكلاسيكية المعروفة لمجموعة واسعة من هواة الراديو على مستوى تقني جديد - نموذج إلكتروني لفراشة ليلية أو نموذج دبابة تتحرك نحو الضوء.

أرز. 5. مخطط اتصال الثنائي الضوئي بالاردوينو

على غرار المقاوم الضوئي، يتم توصيل الثرمستور بالاردوينو (الشكل 6)، والذي يغير مقاومته الكهربائية حسب درجة الحرارة. بدلاً من الثرمستور MMT-4 المشار إليه في الرسم التخطيطي، والميزة الرئيسية له هي غلافه المحكم، يمكنك استخدام أي مقاوم آخر تقريبًا، على سبيل المثال، MMT-1 أو المستورد.

أرز. 6. مخطط توصيل الثرمستور بالاردوينو

بعد المعايرة المناسبة، يمكن استخدام هذا الجهاز لقياس درجة الحرارة في جميع أنواع محطات الطقس المنزلية وأجهزة تنظيم الحرارة والهياكل المماثلة.

من المعروف أن جميع مصابيح LED تقريبًا لا يمكن استخدامها كمصادر للضوء فحسب، بل أيضًا كمستقبلات للضوء - الثنائيات الضوئية. الحقيقة هي أن بلورة LED موجودة في غلاف شفاف وبالتالي فإن وصلة p-n الخاصة بها يمكن الوصول إليها للضوء من مصادر خارجية. بالإضافة إلى ذلك، عادةً ما يكون غلاف LED على شكل عدسة، والتي تركز الإشعاع الخارجي على هذه الوصلة. تحت تأثيره، على سبيل المثال، تتغير المقاومة العكسية للوصلة pn.

من خلال توصيل مؤشر LED بلوحة الاردوينو حسب المخطط الموضح في الشكل. 7، يمكنك استخدام نفس مؤشر LED للغرض المقصود منه وكجهاز استشعار للضوء. ويرد في الجدول برنامج يوضح هذا الوضع. 3. فكرتها هي أنه يتم أولاً تطبيق جهد عكسي على الوصلة pn الخاصة بـ LED، لشحن سعتها. يتم بعد ذلك عزل كاثود LED عن طريق تكوين طرف Arduino المتصل به كمدخل. بعد ذلك، يقيس البرنامج مدة تفريغ سعة وصلة p-n الخاصة بمصباح LED مع التيار العكسي الخاص به إلى مستوى الصفر المنطقي، اعتمادًا على الإضاءة الخارجية.

أرز. 7. مخطط اتصال LED بلوحة Arduino

الجدول 3

في البرنامج أعلاه، تم وصف المتغير t بأنه unsigned int - وهو عدد صحيح غير موقّع. متغير من هذا النوع، على عكس int العادي، الذي يأخذ القيم من -32768 إلى +32767، لا يستخدم الرقم الثنائي الأكثر أهمية لتخزين الإشارة ويمكن أن يأخذ القيم من 0 إلى 65535.

يقوم البرنامج بحساب وقت التفريغ في حلقة while(digitalRead (K)!=0)t++. يتم تنفيذ هذه الحلقة، في كل مرة تزيد قيمة t بمقدار واحد، حتى تصبح الحالة بين قوسين صحيحة، أي حتى ينخفض ​​الجهد عند كاثود LED إلى مستوى منطقي منخفض.

في بعض الأحيان، يُطلب من الروبوت ألا يتلقى معلومات حول إضاءة السطح الذي يتحرك عليه فحسب، بل يكون قادرًا أيضًا على تحديد لونه. يقومون بتطبيق مستشعر لون للسطح الأساسي، وإضاءته بالتناوب باستخدام مصابيح LED ذات ألوان تألق مختلفة واستخدام الثنائي الضوئي لمقارنة مستويات الإشارات المنعكسة منه في ظل ظروف الإضاءة المختلفة. يظهر الرسم التخطيطي لتوصيل عناصر مستشعر الألوان بلوحة Arduino في الشكل. 8، والبرنامج الذي يخدمه موجود في الجدول. 4.

أرز. 8. مخطط توصيل عناصر مستشعر الألوان مع لوحة الاردوينو

الجدول 4

يتم تكرار إجراء قياس الإشارات التي يستقبلها الثنائي الضوئي تحت إضاءة مختلفة للسطح عدة مرات، ويتم تجميع النتائج التي تم الحصول عليها لإزالة الأخطاء العشوائية. ثم يقوم البرنامج باختيار أكبر القيم المتراكمة. هذا يسمح لك بالحكم تقريبًا على لون السطح. لتحديد اللون بشكل أكثر دقة، من الضروري تعقيد معالجة النتائج، مع الأخذ في الاعتبار ليس فقط أكبرها، ولكن أيضا علاقتها مع الأصغر. من الضروري أيضًا مراعاة السطوع الحقيقي لمصابيح LED ذات الألوان المتوهجة المختلفة، بالإضافة إلى الخصائص الطيفية للثنائي الضوئي المستخدم.

يظهر في الشكل مثال لتصميم مستشعر الألوان الذي يتكون من أربعة مصابيح LED وصمام ثنائي ضوئي. 9. يجب أن تتقارب المحاور البصرية لمصابيح LED والصمام الضوئي عند نقطة واحدة على السطح قيد الدراسة، وتقع الأجهزة نفسها في أقرب وقت ممكن من أجل تقليل تأثير الإضاءة الخارجية.

أرز. 9. مثال لتصميم مستشعر الألوان الذي يتكون من أربعة مصابيح LED وصمام ضوئي

يتطلب المستشعر المجمع معايرة فردية دقيقة على الأسطح ذات الألوان المختلفة. يتعلق الأمر بمجموعة مختارة من المعاملات التي يجب من خلالها مضاعفة نتائج القياس التي تم الحصول عليها في ظل ظروف الإضاءة المختلفة قبل المقارنة. يمكن تعليم الروبوت المجهز بمثل هذا المستشعر أداء خوارزميات الحركة المثيرة للاهتمام. على سبيل المثال، سيكون قادرا على التحرك في مجال العمل بلون واحد دون انتهاك حدود المناطق "المحظورة" المطلية بلون مختلف.