VEX IQ (प्रथम पीढ़ी) रंग सेंसर का उपयोग करना

रंग संवेदक किसी वस्तु के रंग, रंग मान, ग्रेस्केल मान, चमक और निकटता का पता लगाने के लिए परावर्तित प्रकाश का उपयोग करता है।

VEX IQ (पहली पीढ़ी) कलर सेंसर वाला उपकरण।

VEX IQ कलर सेंसर VEX IQ सुपर किट में शामिल है और यहां से भी खरीदा जा सकता है

क्या आप दूसरी पीढ़ी के VEX IQ रोबोट का उपयोग कर रहे हैं? यहां दूसरी पीढ़ी के सेंसर का अवलोकन देखें, और ऑप्टिकल सेंसरके बारे में जानकारी, जो कलर सेंसर का दूसरी पीढ़ी का संस्करण है।


रंग संवेदक का विवरण

VEX IQ कलर सेंसर में कई मोड हैं, जो इसे अपने परिवेश से विभिन्न प्रकार की जानकारी प्राप्त करने की अनुमति देते हैं। इसके द्वारा एकत्रित की जाने वाली जानकारी इसके परिवेश की प्रकाश स्थितियों के साथ-साथ सेंसर और उस वस्तु या सतह के बीच की दूरी से भी प्रभावित होती है जिसका यह अध्ययन कर रहा है।


रंग चक्र यह दर्शाता है कि 360 डिग्री का वृत्त किस प्रकार एक रंग मान से संबंधित होता है। लाल रंग का मान 0 डिग्री है, हरे रंग का मान 120 डिग्री है और नीले रंग का मान 240 डिग्री है।


रंग सेंसर कैसे काम करता है

कलर सेंसर रंग और निकटता दोनों का पता लगा सकता है।

रंगों का पता लगाना
VEXcode IQ उस ब्लॉक की चमक को दर्शाता है जो Color3 की चमक को प्रतिशत में पढ़ता है।
एक रंगीन सेंसर का आरेख जो एक चमकदार सतह का पता लगाकर 80% का मान बताता है, और फिर एक अंधेरी सतह का पता लगाकर 20% का मान बताता है।

ब्राइटनेस मोड में होने पर, कलर सेंसर का उपयोग रोबोट के वातावरण में सभी प्रकाश की तीव्रता का पता लगाने के लिए किया जाता है। सक्रिय होने पर रंग संवेदक तक जितना अधिक प्रकाश पहुंचेगा, रोबोट मस्तिष्क तक भेजा जाने वाला प्रतिशत मान उतना ही अधिक होगा।

VEXcode IQ सेट कलर सेंसर लाइट ब्लॉक जो "सेट कलर3 लाइट टू 50%" पढ़ता है।
एक अंधेरे वातावरण में रोबोट से जुड़ा हुआ कलर सेंसर दिखाया गया है। कलर सेंसर का लैंप आसपास के वातावरण को रोशन करने के लिए चालू हो जाता है।

यदि पाया गया चमक प्रतिशत कम या अविश्वसनीय है, तो रंग संवेदक के लैंप को चालू किया जा सकता है या ब्लॉक करने के लिए निम्नलिखित सेट प्रकाश का उपयोग करके लैंप की चमक प्रतिशत को बढ़ाया जा सकता है:

तीन VEXcode IQ कलर सेंसर ब्लॉक। पहला ब्लॉक का रंग है जो Color3 रंग का नाम पढ़ता है। दूसरा एक 'ह्यू ऑफ' ब्लॉक है जो 'कलर3' का ह्यू (डिग्री में) दिखाता है। तीसरा एक कलर डिटेक्ट्स ब्लॉक है जो पढ़ता है कि क्या Color3 किसी को डिटेक्ट नहीं करता है?

रंग संवेदक, देखे गए रंग को रंग मान या रंग मान के रूप में रिपोर्ट कर सकता है।

VEXcode IQ Color ब्लॉक का पता लगाता है जो Color3 को पढ़ता है, कोई पता नहीं लगाता? ब्लॉक का कलर ड्रॉपडाउन मेनू खोला जाता है ताकि उन रंगों की सूची दिखाई दे जिन्हें यह पहचान सके। सूची में नारंगी, बैंगनी, लाल बैंगनी, बैंगनी, नीला बैंगनी, नीला हरा, पीला हरा, पीला नारंगी और लाल नारंगी रंग शामिल हैं।

रंग मान.14 सूचीबद्ध रंग हैं जिन्हें रंग सेंसर पहचान सकता है. ब्लॉक की छवि से गायब रंग लाल, हरा, नीला, सफेद और पीला हैं।

ह्यू वैल्यू डायग्राम यह दर्शाता है कि 360 डिग्री किस प्रकार ह्यू वैल्यू से संबंधित है। लाल रंग का मान 0 डिग्री है, हरे रंग का मान 120 डिग्री है और नीले रंग का मान 240 डिग्री है।

ह्यू मान।ह्यू मान, रंग मानों की तरह ही होते हैं, लेकिन संख्यात्मक रूप में। रंग का मान 0 से 360 डिग्री तक होता है। ऊपर सूचीबद्ध रंग मानों की अपनी समतुल्य रंग मान श्रेणियाँ हैं। 

रंगों और आभाओं का पता लगाने के लिए यह महत्वपूर्ण है कि कलर सेंसर को ऐसा करने के लिए पर्याप्त मात्रा में प्रकाश मिले। अपने रोबोट के कलर सेंसर के लिए सबसे विश्वसनीय सेटिंग निर्धारित करने के लिए, विभिन्न प्रकाश स्तरों में और लैंप को अलग-अलग स्तरों पर सेट करके, अपने कलर सेंसर का परीक्षण (जिसे कैलिब्रेट करना भी कहा जाता है) अवश्य करें।

निकटता का पता लगाना

कलर सेंसर में एक इन्फ्रारेड सेंसर-एमिटर शामिल है। इन्फ्रारेड उत्सर्जक एक अदृश्य प्रकाश उत्सर्जित करता है और फिर उसके परावर्तन का पता लगाता है। यदि अधिकांश अवरक्त प्रकाश सेंसर की ओर वापस परावर्तित होता है, तो यह रोबोट के मस्तिष्क को बताता है कि कोई वस्तु निकट है।

VEXcode IQ को एक ऑब्जेक्ट ब्लॉक मिला है जो पढ़ता है कि Color3 ऑब्जेक्ट के पास है?

रंग संवेदक के सामान्य उपयोग

कलर सेंसर का उपयोग कई तकनीकी अनुप्रयोगों में किया जाता है जहां डिस्प्ले या उत्पादों पर विशिष्ट रंगों का होना महत्वपूर्ण होता है।

दैनिक जीवन में इसके कुछ सामान्य उपयोग इस प्रकार हैं:

  • रंग अंशांकन उपकरण यह जांचते हैं कि क्या डिजिटल स्क्रीन सटीक रंग प्रदर्शित कर रही है, और फिर आवश्यकतानुसार प्रदर्शन सेटिंग्स समायोजित करते हैं। ग्राफिक कलाकारों और डिजिटल स्क्रीन पर रंगों के साथ काम करने वाले किसी भी डिजाइनर के लिए यह महत्वपूर्ण है कि वे प्रदर्शित हो रहे सही रंग को देख सकें। जब रंग सही नहीं होते तो गलतफहमी पैदा होती है और संसाधनों की बर्बादी होती है।
  • कैमरे और कैमकॉर्डर प्रकाश की स्थिति के आधार पर सेटिंग्स को समायोजित करने के लिए रंग सेंसर का उपयोग करते हैं, ताकि प्रकाश के स्तर को अधिकतम करके और अन्यथा फीके रंगों को बढ़ाकर अपने फोटो और वीडियो को बेहतर बनाया जा सके। ये सेंसर फोटोग्राफर को अपनी तस्वीरों में विशिष्ट रंगों पर ध्यान केंद्रित करने की भी अनुमति देते हैं।
  • रंग सेंसर का उपयोग कभी-कभी विनिर्माण में किया जाता है, ताकि ग्राहक को भेजे जाने से पहले यह जांचा जा सके कि उत्पाद का रंग सही है या नहीं। उदाहरण के लिए, फल और सब्जियां जो पकने या खाने के लिए तैयार होने पर रंग बदल लेती हैं, उन्हें स्कैन करके यह सुनिश्चित किया जा सकता है कि बाजार भेजने के लिए उनका रंग सही है। 


VEX IQ रोबोट के कुछ सामान्य उपयोग इस प्रकार हैं:

  • इस सेंसर का उपयोग किसी वस्तु के रंग का पता लगाने के लिए किया जा सकता है। इस एनीमेशन को देखकर आप देख सकते हैं कि रोबोट तब तक आगे बढ़ता रहता है जब तक कि कलर सेंसर एक हरे घन का पता नहीं लगा लेता।

  • इस सेंसर का उपयोग किसी लाइन का पता लगाने और/या उसका अनुसरण करने के लिए किया जा सकता है। इस एनीमेशन को देखकर आप देख सकते हैं कि एक रोबोट कलर सेंसर का उपयोग करके एक चिह्नित रेखा पर गाड़ी चला रहा है।

  • यह सेंसर यह पता लगा सकता है कि कोई वस्तु निकट है या नहीं।

एक प्रतियोगिता रोबोट पर रंग सेंसर

ध्यान रहे, रंगों और आभाओं का पता लगाने के लिए यह महत्वपूर्ण है कि कलर सेंसर को ऐसा करने के लिए पर्याप्त मात्रा में प्रकाश मिले। जब भी आप किसी नए प्रतियोगिता स्थल पर पहुंचें, तो अपने कलर सेंसर का परीक्षण (जिसे कैलिब्रेट करना भी कहा जाता है) अवश्य करें, क्योंकि प्रकाश के विभिन्न स्तर आपके कलर सेंसर के प्रदर्शन को प्रभावित कर सकते हैं। अपने रोबोट के कलर सेंसर के लिए सबसे विश्वसनीय सेटिंग निर्धारित करने के लिए लैंप को अलग-अलग स्तरों पर सेट करके अपने प्रोजेक्ट का परीक्षण करें। 

कलर सेंसर द्वारा एकत्रित की गई जानकारी प्रतिस्पर्धी रोबोट को विभिन्न परिस्थितियों में प्रतिक्रिया देने के लिए प्रोग्राम करने में उपयोगी है। कलर सेंसर निम्नलिखित तरीकों से एक प्रतियोगिता रोबोट को बेहतर बना सकता है:

  • यह रोबोट को सेंसर के पास किसी वस्तु का रंग पहचानने में मदद करता है। यह तब उपयोगी होता है जब आप चाहते हैं कि रोबोट अलग-अलग रंग की वस्तुओं को छांट ले, किसी विशेष रंग की वस्तु तक पहुंचे, या सेंसर के पास से गुजरने वाली वस्तुओं के रंग का पता लगाए।
  • इससे रोबोट को यह पता लगाने में मदद मिलती है कि सेंसर में कितना प्रकाश परावर्तित होता है। इससे आपका रोबोट तब तक चल सकता है जब तक वह सतह पर एक रेखा तक नहीं पहुंच जाता, या फिर वह एक रेखा का अनुसरण भी कर सकता है।
  • इससे रोबोट को पता चलता है कि कोई वस्तु या सतह निकट है या नहीं। यह निर्धारित करने में सहायक है कि क्या पाया गया रंग किसी निकटवर्ती वस्तु का पाठ्यांक है, या संभवतः, किसी दूरवर्ती सतह या प्रकाश का असामान्य पाठ्यांक है। 

ब्लॉकों में रंग संवेदक को कोड करना

VEXcode IQ एक ऑब्जेक्ट ब्लॉक मिला जिसमें लिखा है Color3 ऑब्जेक्ट के पास है?

<Found an object> ब्लॉक एक बूलियन रिपोर्टर ब्लॉक है जो किसी स्थिति को सत्य या असत्य के रूप में रिपोर्ट करता है। बूलियन ब्लॉक, जैसे <Found an object> ब्लॉक, अन्य ब्लॉकों के लिए षट्कोणीय (छह-पक्षीय) इनपुट वाले ब्लॉकों के अंदर फिट होते हैं।

<Found an object> बूलियन ब्लॉक रिपोर्ट करता है 'सत्य' यदि रंग सेंसर किसी वस्तु का पता लगाता है तो 'सत्य', और यदि सेंसर नहीं करता है तो 'असत्य'। बूलियन ब्लॉकों के बारे में अधिक जानने के लिए सहायता या ब्लॉक आकार और अर्थ लेख पर जाएँ।

 

VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो कलर सेंसर का उपयोग करके आगे बढ़ता है जब तक कि उसे कोई ऑब्जेक्ट नहीं मिल जाता। प्रोजेक्ट में लिखा है, जब शुरू करें, तो आगे बढ़ें, तब तक प्रतीक्षा करें जब तक Color3 को कोई ऑब्जेक्ट न मिल जाए, और फिर गाड़ी चलाना बंद कर दें।

इस उदाहरण में, <Found an object> ब्लॉक का उपयोग निकटता का पता लगाने के लिए [Wait until] ब्लॉक के साथ किया जाता है, ताकि रोबोट तब तक आगे बढ़ता रहे जब तक कि कोई वस्तु का पता न चल जाए।

VEXcode IQ रंग ब्लॉक का पता लगाता है जो Color3 को हरे रंग का पता लगाता है?

<Color detects> ब्लॉक एक बूलियन रिपोर्टर ब्लॉक भी है जो किसी स्थिति को सत्य या असत्य के रूप में रिपोर्ट करता है। यदि रंग सेंसर चयनित रंग का पता लगाता है तो <Color detects> ब्लॉक 'सत्य' रिपोर्ट करता है, तथा यदि सेंसर किसी अन्य रंग का पता लगाता है तो 'असत्य' रिपोर्ट करता है। बूलियन ब्लॉकों के बारे में अधिक जानने के लिए सहायता या ब्लॉक आकार और अर्थ लेख पर जाएँ।

 

VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो आगे बढ़ने के लिए रंग सेंसर का उपयोग करता है, जब तक कि वह हरे रंग का पता नहीं लगा लेता। परियोजना में लिखा है, जब शुरू करें, तो आगे बढ़ें, Color3 द्वारा हरे रंग का पता लगाने तक प्रतीक्षा करें, और फिर गाड़ी चलाना बंद कर दें।

इस उदाहरण में, <Color detects> ब्लॉक का उपयोग [Wait until] ब्लॉक के साथ किया जाता है, ताकि रोबोट तब तक आगे बढ़ता रहे जब तक कि कलर सेंसर हरे रंग की वस्तु का पता न लगा ले। इसके बाद रोबोट गाड़ी चलाना बंद कर देगा। इसका उदाहरण ऊपर दिए गए पहले वीडियो में दिया गया है।

VEXcode IQ ब्लॉक की चमक जो Color3 चमक को % में पढ़ती है।

(की चमक) ब्लॉक रंग सेंसर द्वारा पता लगाई गई प्रकाश की मात्रा की रिपोर्ट करता है। यह एक रिपोर्टर ब्लॉक है जिसका उपयोग गोलाकार रिक्त स्थान वाले अन्य ब्लॉकों के अंदर किया जाता है।

(Brightness of) ब्लॉक 0% से 100% तक की रेंज की रिपोर्ट करता है।

 

VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो चिह्नित लाइन का अनुसरण करने के लिए नीचे की ओर स्थित कलर सेंसर का उपयोग करता है। प्रोजेक्ट में लिखा है, जब शुरू करें, तो Color3 लाइट को 25% पर सेट करें। इसके बाद, यदि Color3 की चमक % में 25 से अधिक है तो LeftMotor को 35 डिग्री तक आगे घुमाएं, अन्यथा RightMotor को 35 डिग्री तक आगे घुमाएं।

इस उदाहरण में, (Brightness of) ब्लॉक का उपयोग रोबोट को एक रेखा का पता लगाने और उसका अनुसरण करने के लिए किया जाता है, जैसा कि ऊपर दिए गए दूसरे वीडियो में दिखाया गया है।

VEXcode IQ ब्लॉक का रंग जो डिग्री में Color3 रंग पढ़ता है।

(ह्यू ऑफ) ब्लॉक कलर सेंसर द्वारा पता लगाए गए रंग के ह्यू की रिपोर्ट करता है। यह एक रिपोर्टर ब्लॉक है जिसका उपयोग गोलाकार रिक्त स्थान वाले अन्य ब्लॉकों के अंदर किया जाता है।

(Brightness of) ब्लॉक 0 से 360 तक की रेंज की रिपोर्ट करता है

 

VEXcode IQ उस प्रोजेक्ट को ब्लॉक कर देता है जो ऑप्टिकल सेंसर का उपयोग करके किसी वस्तु तक पहुंचने तक आगे बढ़ता है, और फिर यदि वह लाल है तो दाईं ओर मुड़ता है और यदि वह लाल नहीं है तो बाईं ओर मुड़ता है। प्रोजेक्ट में लिखा है, जब शुरू किया जाए, तो ब्रेन पर Color3 ह्यू को डिग्री में प्रिंट करें, आगे बढ़ाएं, और तब तक प्रतीक्षा करें जब तक Color3 को कोई ऑब्जेक्ट न मिल जाए। यदि Color3 ह्यू डिग्री में 330 से अधिक है और Color3 ह्यू डिग्री में 30 से कम है तो 90 डिग्री के लिए दाईं ओर मुड़ें, अन्यथा 90 डिग्री के लिए बाईं ओर मुड़ें।

इस उदाहरण में, (ह्यू ऑफ) ब्लॉक का उपयोग रोबोट को लाल रंग के अनुरूप ह्यू मानों की एक श्रृंखला की जांच करने के लिए किया जाता है, और यदि सेंसर द्वारा उन मानों का पता लगाया जाता है, तो रोबोट को 90 डिग्री तक दाईं ओर मोड़ने के लिए किया जाता है। यदि कोई अन्य रंग मान पाया जाता है, तो रोबोट 90 डिग्री तक बायीं ओर मुड़ जाएगा।

(ह्यू ऑफ) ब्लॉक तब उपयोगी हो सकता है जब रोबोट के लिए कुछ रंगों का पता लगाना आवश्यक हो, जब परिवेशीय प्रकाश की स्थिति असंगत हो।

पायथन में रंग संवेदक को कोड करना

नोट:पायथन में VEX IQ (पहली पीढ़ी) बम्पर स्विच को कोड करने के लिए, इसे VEX IQ (दूसरी पीढ़ी) ब्रेन से कनेक्ट किया जाना चाहिए। VEX IQ (पहली पीढ़ी) ब्रेन पाइथन को सपोर्ट नहीं करता है।

रंग_3.वस्तु_के_निकट_है()

color.is_near_object कमांड True रिपोर्ट करता है जब एक रंग सेंसर सेंसर के सामने के करीब एक वस्तु या सतह का पता लगाता है और False रिपोर्ट करता है जब एक रंग सेंसर सेंसर के सामने के करीब एक वस्तु या सतह का पता नहीं लगाता।

नोट:कमांड में दिखाई देने वाले रंग सेंसर का नाम कॉन्फ़िगरेशन में दिए गए नाम से मेल खाता है। 

ड्राइवट्रेन.ड्राइव(फॉरवर्ड)
जबकि कलर_3 ऑब्जेक्ट के निकट नहीं है:
प्रतीक्षा(20, एमएसईसी)
ड्राइवट्रेन.स्टॉप()
इस उदाहरण में,व्हाइल लूप का उपयोग नॉट कंडीशन के साथ कलर.इज_नियर_ऑब्जेक्ट कमांड के साथ किया जाता है ताकि रोबोट तब तक आगे बढ़े जब तक कि कलर सेंसर सेंसर के सामने किसी वस्तु का पता न लगा ले।
रंग_3.रंग()

color.color कमांड कलर सेंसर द्वारा वर्तमान में पता लगाए जा रहे रंग की रिपोर्ट करता है।

ड्राइवट्रेन.ड्राइव(फॉरवर्ड)
जबकि रंग_3.हरा नहीं है:
    प्रतीक्षा(20, एमएसईसी)
ड्राइवट्रेन.स्टॉप()
इस उदाहरण में,व्हाइल लूप का उपयोग नॉट कंडीशन के साथ कलर.कलर कमांड के साथ किया जाता है ताकि रोबोट तब तक आगे बढ़े जब तक कि कलर सेंसर एक हरी वस्तु का पता न लगा ले। इसके बाद रोबोट चलना बंद कर देगा। इसे ऊपर दिए गए पहले वीडियो में दर्शाया गया है।
रंग_3.चमक()

color.brightness कमांड कलर सेंसर द्वारा पता लगाए गए प्रकाश की मात्रा की रिपोर्ट करता है। यह 0% से 100% तक के मानों की एक श्रृंखला को दर्शाता है।

color_3.set_light(25, PERCENT)
    while True:
        if color_3.brightness() > 25:
            # यदि कलर सेंसर प्रकाश का पता लगाता है, तो रोबोट बाईं ओर शिफ्ट होगा
            LeftMotor.spin_for(FORWARD, 35, DEGREES)
        else:
            # यदि कलर सेंसर अंधेरे का पता लगाता है, तो रोबोट दाईं ओर शिफ्ट होगा
            RightMotor.spin_for(FORWARD, 35, DEGREES)
        wait(20, MSEC)
इस उदाहरण में, color.brightness कमांड का उपयोग रोबोट को एक लाइन का पता लगाने और उसका अनुसरण करने के लिए किया जाता है, जैसा कि ऊपर दिए गए दूसरे वीडियो में दिखाया गया है।
रंग_3.ह्यू()

color.hue कमांड कलर सेंसर द्वारा पता लगाए गए रंग के रंग की रिपोर्ट करता है। यह 0 से 360 तक रंग मानों की एक श्रृंखला की रिपोर्ट करता है

brain.screen.print(color_3.hue())
drivetrain.drive(FORWARD)
while not color_3.is_near_object():
    wait(20, MSEC)
if color_3.hue() > 330 and color_3.hue() < 30:
    drivetrain.turn_for(RIGHT, 90, DEGREES)
else:
    drivetrain.turn_for(LEFT, 90, DEGREES)

इस उदाहरण में, color.hue कमांड का उपयोग रोबोट को लाल रंग के अनुरूप रंग मानों की एक श्रृंखला की जांच करने के लिए किया जाता है, और यदि सेंसर द्वारा उन मानों का पता लगाया जाता है तो रोबोट को 90 डिग्री तक दाईं ओर मोड़ने के लिए किया जाता है। यदि कोई अन्य रंग मान पाया जाता है, तो रोबोट 90 डिग्री तक बायीं ओर मुड़ जाएगा।

color.hue कमांड तब उपयोगी हो सकता है जब रोबोट के लिए कुछ रंगों का पता लगाना आवश्यक हो, जब परिवेश प्रकाश की स्थिति असंगत हो।

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: