מדריך לעבודה עם חיישן האור/ צבע בסימולטור מגרש המשחקים
مستشعر اللون
دليل للعمل مع مستشعر الضوء / اللون في محاكاة ملعب الألعاب
في هذا الدليل נלמד
נלמד
ما هو مستشعر الضوء/اللون؟
كيف نرى؟�عندما ننظر حولنا، تصطدم أشعة الضوء في البيئة وتخترقنا عبر بؤبؤ العين. ينقل العصب البصري المعلومات الناتجة من الأشعة الضوئية مباشرة إلى دماغنا، ويترجم الدماغ الإشارات التي يتلقاها إلى صورة. عندما تكون شدة الضوء في البيئة منخفضة، فإننا نستصعب في الرؤية.
�
هل يستطيع الروبوت الرؤية أيضًا؟ ليس تمامًا...
يُبسط الروبوت وظيفة العين إلى عدة عناصر.
هو يفعل ذلك بمساعدة مستشعر خاص يسمّى مستشعر الضوء، أو باسمه الآخر، مستشعر الألوان.
بمساعدة هذا المستشعر، يمكننا برمجة الروبوت، تحديد موقع أغراض مختلفة حسب اللون والسير حتى يجد شريط أسود، وتتبع شريط ومجموعة واسعة من الإمكانيات الأخرى!
حاسة البصر من الحواس العجيبة في جسم الإنسان.
أين يقع مستشعر الضوء / اللون؟
في المحاكاة، مستشعر الضوء / اللون هو عبارة عن مستطيل ثلاثي الأبعاد كما يظهر في الرسم التوضيحي التالي:
من الشائع أن نضع هذا المستشعر في مركز مقدمة الروبوت، كما نرى في الروبوت الافتراضي للمحاكاة:
أمر مستشعر الضوء/اللون في المحاكاة
من أجل استخدام مستشعر الضوء / اللون في المحاكاة، يجب أن نسحب أمر مستشعر اللون من علامة تبويب المستشعرات، في شريط الأوامر، إلى بيئة العمل.
من المهم أن نتذكر!
على غرار مستشعر الموجات
فوق الصوتية، يجب أيضًا
توصيل هذا المستشعر
بحلقة أو شرط.
العمل مع مستشعر الضوء
يُتيح مستشعر الضوء للروبوت أن يفحص مستويات الضوء المنعكسة إليه. في المحاكاة، يستخدم مستشعر الضوء النسب المئوية لانعكاس الضوء (لذا يتراوح المجال بين 0 إلى 100).�عندما نريد أن نفحص النسبة المئوية للضوء الذي ينعكس إلى مستشعر الضوء: ننتقل إلى شاشة المحاكاة -> نفتح نافذة المستشعرات -> ونفحص سطر الشدة الموجود أسفل مستشعر اللون:
العمل مع مستشعر الضوء– شدة الضوءالمنعكس
بَعد أن اكتشفنا شدة الضوء المنعكس الذي نبحث عنه، يمكننا الانتقال إلى "شاشة اللبنات" والبدء في البرمجة.
نسحب أمر مستشعر اللون إلى "بيئة العمل"، نختار من القائمة إمكانية شدة الضوء المنعكس، ونقوم بتوصيل لَبنة المستشعر بالشرط أو الحلقة المناسبة.�
شدة الضوء المنعكس
العمل مع مستشعر الضوء– RGB
اختصار لـ RED (أحمر)) GREEN أخضر (وَ BLUE(أزرق).
هذه هي الألوان الأساسية الثلاثة للشاشة، أشعة ضوء مُدمجة معًا. عندما نمزجها بكميات مختلفة نحصل على مجموعة واسعة من الألوان. عندما نُدخل العدد 255 في الألوان الثلاثة نحصل على لون أبيض. عندما نُدخل العدد 0 في الألوان الثلاثة نحصل على اللون الأسود.
ما هو اﻠ RGB؟
إمكانية أخرى لمستشعر الضوء هي فحص قيمة واحدة من لون اﻠ RGB.
لاستخدام هذا الإمكانية، نختار أحد الألوان الثلاثة من القائمة
على عكس شدة الضوء المنعكس، فإن قيمة الألوان الأساسية هي قيمة عددية تتراوح بين 0 إلى 255.
أحمر
العمل مع مستشعر الضوء– RGB
أخضر
أزرق
العمل مع مستشعر الضوء
الآن، نُبرمج للمحاكاة كودًا وفقًا له:
يسير الروبوت حتى يصل خط أسود، ويتوقف.�
أولًا، نفحص في المحاكاة قيمة شدة الضوء المنعكس إلى مستشعر
الضوء. نرى أنه عندما يلمس خطًّا أسود يعود إلى 0(أو قيم
منخفضة، قريبة من 0).
بَعد ذلك، نسحب أمر الإرجاع من علامة التبويب حلقات
وعامل اﻟ "=" من علامة التبويب " شروط�وقيمة عددية من علامة التبويب "مُشغلون"
نربط هذه الأوامر بأمر "عند البدء" على النحو التالي:
العمل مع مستشعر الضوء
انتبهوا! في الشريحة السابقة، رأينا أن القيمة التي تعود في الخط الأسود هي 0. لذلك، يجب اختيار عدد أعلى من 0،لكن أقل من القيم التي كانت قبل الخط الأسود.�
بعد ذلك، نحتاج إلى ضبط الحلقة بحيث تعمل "حتى ..."
للقيام بذلك، اختاروا هذه الإمكانية من قائمة لَبِنة الحلقة
الآن، اسحبوا لَبِنَة مستشعر اللون من علامة تبويب المستشعر وقوموا بربطها باللبنة "=" التي أضفتموها في الخطوة السابقة.
الوضع الافتراضي لهذه اللبنة هو شدة الضوء المنعكس.
العمل مع مستشعر الضوء
افحصوا الكود بواسطة الانتقال إلى شاشة المحاكاة
وانقروا على زر السهم
أخيرًا، اسحبوا أمر دفع الدبابة من علامة تبويب الحركة، وضعوه داخل الحلقة. لكي يتوقف الروبوت بَعد تحديد الخط الأسود، يجب عليكم ربط اللبنة: "توقف عن الحركة" بَعد الحلقة. �
يُتيح "مستشعر اللون" للروبوت أن يفحص الصورة وتحليل الألوان الموجودة فيها.
لاستخدام إمكانية مستشعر اللون في المحاكاة، نختار لَبِنة مستشعر اللون من علامة التبويب مستشعرات، ونختار اسم اللون من القائمة.
انتبهوا! إمكانية "اللون" المدرجة في القائمة لا تعمل بشكل جيد! تجاهلوها من فضلكم!
العمل مع مستشعر اللون
إنّ برمجة الشرط(أو الحلقة) للبنة مستشعر اللون الذي يعمل حسب اسم اللون مشابهة جدًّا لبرمجة نفس اللبنة مع العمل حسب شدة الضوء المنعكس.
لكن على عكس شدة الضوء المنعكس، لا يحتاج مستشعر اللون في هذه الحالة إلى "قيمة عددية"، بل إلى "قيمة كلامية". يمكن الحصول على هذا النوع من اللبنة في علامة تبويب النص:
العمل مع مستشعر اللون
نُبرمج الآن مع استخدام مستشعر اللون. مراحل البرمجة تشبه إلى حد كبير مراحل برمجة مستشعر الضوء. نُبرمج الآن كودًا بموجبه يسير الروبوت حتى يكتشف اللون الأخضر ويتوقف.
أولًا، نسحب لبنة أمر الإرجاع من علامة التبويب حلقة
والعامل "=" من علامة التبويب شروط
ولبنة " " من علامة التبويب نص
نربط هذه الأوامر بأمر "عند البدء" على النحو التالي:
العمل مع مستشعر اللون
في هذه المرحلة، يمكن أن نسحب لَبِنة مستشعر اللون من علامةالتبويب مستشعارات وأن نضعها داخل لبنة "=" المرتبطة بالحلقة.
قبل أن ننهي برمجة هذه اللبنة، من المهم أن نتذكر تحديد اسم اللون من القائمة:
العمل مع مستشعر اللون
الآن، في لبنة القيمة الكلامية أدخلوا اسم اللون الذي يجب أن يتوقف عنده الروبوت: "أخضر"
العمل مع مستشعر اللون
أخيرًا، اسحبوا أمر دفع الدبابة من علامة تبويب الحركة وضعوه داخل الحلقة. لكي يتوقف الروبوت بعد تحديد اللون الأخضر، يجب عليكم ربط اللبنة: توقف عن الحركة بَعد الحلقة.
من المهم أن نتعرف على مستشعر اللون
يستطيع مستشعر اللون أن يعمل فقط مع الألوان التي تمّ تحديدها مسبقًا في المحاكاة.�عندما نُبرمج باستخدام هذا المستشعر، من المهم جدًّا كتابة اسم اللون بدقة، وإلا فلن يعمل الكود.
أسماء الألوان
في المحاكاة
الفرق بين الضوء واللون في المحاكاة
بالطبع تتسألون عن سبب وجود فصل بين الضوء واللون في هذا المستشعر. كما رأيتم في هذا الدليل، فإنّ السبب في ذلك هو أن هذا المستشعر لديه وضعان للعمل.
طريقة العمل الأولى، هي فحص مستويات الضوء التي تنعكس إلى المستشعر وتحليلها.
الطريقة الثانية التي يمكن أن يعمل بها هذا المستشعر هي التقاط صورة لما يراه المستشعر وتحليل تلك الصورة.
بمساعدة الطريقة الأولى يستطيع الروبوت أن يعمل بشكل أكثر دقة وأسرع، فهذه الطريقة تتطلب موارد أقل من الروبوت. تسمح العملية الثانية للروبوت بتحليل وحدات البكسل في الصورة، وبهذه الطريقة يتمّ تحديد اللون الذي يبدو فيها.�من المهم أن نذكر أنه عندما نريد النجاعة والثبات في الكود، فإننا نفضل استخدام مستشعر الضوء.
ضوء
لون | ضوء | المكوّن |
كلامي | عددي | نوع القيمة |
متوسط | عالٍ جدًّا | مستوى الدقة |
سهل الاستعمال | غير مريح للاستعمال | سهولة الاستعمال |
لون
الفرق بين الضوء واللون في المحاكاة