मुख्य सामग्री पर जाएं

पाठ 4: ऑब्जेक्ट सेंसर की कोडिंग

पिछले पाठ में, आपने ऑब्जेक्ट सेंसर के बारे में सीखा और डिस्क और क्यूब्स के परावर्तन प्रतिशत को एकत्र किया। अब, आप उन मानों का उपयोग VEXcode में एक प्रोजेक्ट बनाने के लिए करेंगे ताकि ऑब्जेक्ट सेंसर द्वारा डिस्क का पता चलने पर एग्जिट कन्वेयर को रोका जा सके।

इस पाठ में आप निम्नलिखित सीखेंगे:

  • VEXcode में ऑब्जेक्ट सेंसर को कॉन्फ़िगर करें।
  • VEXcode में तुलना ऑपरेटरों का उपयोग करना सीखें।
  • ऑब्जेक्ट सेंसर से प्राप्त फीडबैक का उपयोग करके डिस्क को एंट्री कन्वेयर से एग्जिट कन्वेयर तक ले जाने के लिए एक प्रोजेक्ट बनाएं।

इस पाठ के अंत तक, आप पिछले पाठ में किए गए अपने प्रोजेक्ट को आगे बढ़ाते हुए यह सुनिश्चित कर लेंगे कि जब ऑब्जेक्ट सेंसर द्वारा डिस्क का पता लगाया जाए तो एग्जिट कन्वेयर रुक जाए।

निकास कन्वेयर पर और ऑब्जेक्ट सेंसर के नीचे हरी डिस्क।

प्रोजेक्ट का संपादन

आप यूनिट 4 लेसन 2 एक्टिविटी से अपने प्रोजेक्ट को एडिट करके शुरुआत करेंगे ताकि ऑब्जेक्ट सेंसर से संबंधित कमांड जोड़ने की तैयारी कर सकें।

अपने4 लेसन 2 एक्टिविटीप्रोजेक्ट को VEXcode EXP में खोलें, या यहां दिखाए गए प्रोजेक्ट को दोबारा बनाएं।

प्रोजेक्ट का नामयूनिट 4 लेसन कर दें।

यूनिट 4, लेसन 2 प्रोजेक्ट से लिए गए तीन ब्लॉक स्टैक। पहले स्टैक में लिखा है: शुरू होने पर, प्रवेश कन्वेयर 1 को अंदर की ओर घुमाएं, 7 सेकंड प्रतीक्षा करें, और फिर प्रवेश कन्वेयर 1 को रोकें। इसके बाद, ट्रांसपोर्ट कन्वेयर 2 को आगे की ओर घुमाएं, 4 सेकंड प्रतीक्षा करें, और फिर ट्रांसपोर्ट कन्वेयर 2 को रोक दें। अंत में, एग्जिट कन्वेयर 4 को बाहर की ओर घुमाएं, 2 सेकंड प्रतीक्षा करें, और फिर एग्जिट कन्वेयर 4 को रोक दें। अगले स्टैक में लिखा है कि जब सिग्नल टावर 6 बम्पर दबाया जाता है, तो आर्म 10 को नियंत्रण रोक दिया जाता है। अंतिम प्रोजेक्ट में लिखा है कि जब आर्म 10 का नियंत्रण बंद हो जाए, तो सिग्नल टावर 6 को हरे रंग पर सेट करें और बंद कर दें, और फिर सिग्नल टावर 6 को लाल रंग पर सेट करें और उसे ब्लिंक करने दें। अंत में, प्रवेश कन्वेयर 1 को रोकें, परिवहन कन्वेयर 2 को रोकें और फिर निकास कन्वेयर 4 को रोकें।

VEXcode में ऑब्जेक्ट सेंसर को कॉन्फ़िगर करने के लिए, डिवाइसेस विंडो खोलें औरऐड ए डिवाइस चुनें।

डिवाइस विंडो खुली हुई है और ऐड ए डिवाइस बटन हाइलाइटेड है।

3-वायर डिवाइसों की सूची खोलने के लिए 3-वायरका चयन करें।

डिवाइस विंडो में डिवाइस विकल्प, जिसमें 3 वायर आइकन को लाल रंग में दिखाया गया है।

फिर,ऑब्जेक्ट सेंसर का चयन करें।

डिवाइस विंडो में 3 वायर डिवाइस विकल्प हैं, जिनमें ऑब्जेक्ट सेंसर आइकन को लाल रंग में दिखाया गया है।

कॉन्फ़िगरेशन पूरा करने के लिए पोर्ट A, फिरDoneचुनें।

नोट:सुनिश्चित करें कि ऑब्जेक्ट सेंसर ब्रेन पर पोर्ट A में प्लग किया गया है।

ऑब्जेक्ट सेंसर के लिए पोर्ट A को हाइलाइट करते हुए डिवाइस विंडो।

प्रोजेक्ट के आखिरी दो ब्लॉक हटा दें। इसमें एग्जिट कन्वेयर के लिएवेटब्लॉक औरस्टॉपब्लॉक शामिल हैं, जैसा कि इस वीडियो में दिखाया गया है।

वीडियो फाइल

प्रोजेक्ट मेंब्लॉक जोड़ें

वेट अंटिलब्लॉक एक ऐसा ब्लॉक है जो स्टैक में अगले ब्लॉक पर जाने से पहले एक बूलियन स्थिति के सही होने की प्रतीक्षा करता है।

VEXcode EXP स्टैक का विस्तार जिसमें अंत में एक खाली Wait until ब्लॉक जोड़ा गया है। स्टैक में लिखा है: शुरू होने पर, प्रवेश कन्वेयर 1 को अंदर की ओर घुमाएं, 7 सेकंड प्रतीक्षा करें, और फिर प्रवेश कन्वेयर 1 को रोक दें। इसके बाद, ट्रांसपोर्ट कन्वेयर 2 को आगे की ओर घुमाएं, 5 सेकंड प्रतीक्षा करें, और फिर ट्रांसपोर्ट कन्वेयर 2 को रोक दें। अंत में, स्पिन एग्जिट कन्वेयर 4 आउटबाउंड को घुमाएं और फिर प्रतीक्षा करें।

तुलना ऑपरेटर

अब जबकि प्रोजेक्ट मेंवेट अंटिलब्लॉक जोड़ दिया गया है, ब्लॉक द्वारा जांच की जाने वाली शर्त को जोड़ने की आवश्यकता है। 

इससे पहले, आपने ऑब्जेक्ट सेंसर द्वारा रिपोर्ट किए गए परावर्तन प्रतिशत के बारे में सीखा और उन मूल्यों को अपनी इंजीनियरिंग नोटबुक में दर्ज किया। इस प्रोजेक्ट में, आपको एग्जिट कन्वेयर कोतकहोगा जब तक कि वह मान एक सीमा से ऊपर न हो थ्रेशहोल्ड एक ऐसी चीज़ है जिसका उपयोग यह निर्धारित करने के लिए किया जाता है कि कोई मान स्वीकार्य सीमा से ऊपर, नीचे या उसके भीतर है या नहीं। तुलनात्मक ऑपरेटरों का उपयोग यह जांचने के लिए किया जा सकता है कि क्या परावर्तनशीलता एक निश्चित मान से ऊपर है, या उस सीमा से ऊपर है।

के षट्भुजाकार स्थान में से बड़ाब्लॉक जोड़ें।ब्लॉक तक प्रतीक्षा करें।

अभी-अभी जोड़ा गया वेट अंटिल ब्लॉक, जिसमें 0 से बड़ा 50 का एक नया बूलियन पैरामीटर है।

ग्रेटर दैनब्लॉक के पहले छेद में रिफ्लेक्टिविटीब्लॉक जोड़ें।

अब वेट अंटिल ब्लॉक में ऑब्जेक्ट सेंसर रिफ्लेक्टिविटी ब्लॉक को ग्रेटर दैन ब्लॉक में जोड़ दिया गया है। अब पूरा ब्लॉक एक साथ पढ़ता है: ऑब्जेक्ट सेंसर A की परावर्तनशीलता % में 50 से अधिक होने तक प्रतीक्षा करें।

ग्रेटर देनब्लॉक पहले मान की तुलना दूसरे मान से करता है। प्रोजेक्ट में मौजूद ग्रेटर दैनब्लॉक ऑब्जेक्ट सेंसर द्वारा रिपोर्ट किए गए परावर्तन प्रतिशत की तुलना पैरामीटर '50' से कर रहा है, इससे पहले कि बूलियन कोट्रूयाफॉल्स घोषित किया जाए। 

वेट अंटिल ब्लॉक में ग्रेटर दैन वैल्यू को हाइलाइट किया गया है। अब पूरा ब्लॉक एक साथ पढ़ता है: ऑब्जेक्ट सेंसर A की परावर्तनशीलता % में 50 से अधिक होने तक प्रतीक्षा करें।

इस परियोजना के लक्ष्यों के बारे में सोचें। एग्जिट कन्वेयर को तब तक घूमना चाहिए जब तक कि ऑब्जेक्ट सेंसर किसी वस्तु का पता न लगा ले, उसके बाद कन्वेयर को रुक जाना चाहिए। पिछले पाठ में एकत्रित किए गए मानों का उपयोग इसग्रेटर देनब्लॉक के साथ उस सीमा को निर्धारित करने के लिए किया जा सकता है जिसे प्रोजेक्ट के स्टैक में अगले ब्लॉक पर जाने से पहले पार करने की आवश्यकता होती है।

ग्रेटर देनब्लॉक के दूसरे पैरामीटर को '9' में बदलें। 

यह संख्या पिछले पाठ की गतिविधि में एकत्रित मूल्यों पर आधारित है। जब हरी डिस्क ऑब्जेक्ट सेंसर के नीचे थी, तब परावर्तनशीलता 10% बताई गई थी, इसलिए9% से अधिक कोसत्य के रूप में रिपोर्ट किया जाना चाहिए।

वेट अंटिल ब्लॉक में ग्रेटर दैन वैल्यू को हाइलाइट किया गया है और इसे 50 से बदलकर 9 कर दिया गया है। अब पूरा ब्लॉक एक साथ पढ़ता है: ऑब्जेक्ट सेंसर A की परावर्तनशीलता % में 9 से अधिक होने तक प्रतीक्षा करें।

प्रोजेक्ट के अंत मेंस्टॉपब्लॉक जोड़ें। सुनिश्चित करें कि पैरामीटर 'ExitConveyor4' पर सेट है।

VEXcode EXP स्टैक का विस्तार जिसमें अंत में स्टॉप मोटर बटन जोड़ा गया है, जिस पर लिखा है स्टॉप एग्जिट कन्वेयर 4। स्टैक में लिखा है: शुरू होने पर, प्रवेश कन्वेयर 1 को अंदर की ओर घुमाएं, 7 सेकंड प्रतीक्षा करें, और फिर प्रवेश कन्वेयर 1 को रोक दें। इसके बाद, ट्रांसपोर्ट कन्वेयर 2 को आगे की ओर घुमाएं, 5 सेकंड प्रतीक्षा करें, और फिर ट्रांसपोर्ट कन्वेयर 2 को रोक दें। अंत में, निकास कन्वेयर 4 को अंदर की ओर घुमाएँ, तब तक प्रतीक्षा करें जब तक ऑब्जेक्ट सेंसर A की परावर्तनशीलता % में 9 से अधिक न हो जाए, और फिर निकास कन्वेयर 4 को रोक दें।

सुनिश्चित करें कि ब्रेन VEXcode से कनेक्टेड है और प्रोजेक्ट डाउनलोड करें।

VEXcode EXP टूलबार में, ब्रेन और रन आइकन के बीच में, डाउनलोड आइकन को लाल बॉक्स में दिखाया गया है।

कोड को पढ़ें और अनुमान लगाएं कि प्रोजेक्ट चलने पर कन्वेयर क्या करेंगे। 

अपनी भविष्यवाणी को अपनी इंजीनियरिंग नोटबुक में लिख लें।

VEXcode EXP स्टैक जिसमें स्टॉप मोटर ब्लॉक को अभी जोड़ा गया है। संपूर्ण स्टैक में लिखा है: शुरू होने पर, प्रवेश कन्वेयर 1 को अंदर की ओर घुमाएं, 7 सेकंड प्रतीक्षा करें, और फिर प्रवेश कन्वेयर 1 को रोकें। इसके बाद, ट्रांसपोर्ट कन्वेयर 2 को आगे की ओर घुमाएं, 5 सेकंड प्रतीक्षा करें, और फिर ट्रांसपोर्ट कन्वेयर 2 को रोक दें। अंत में, निकास कन्वेयर 4 को बाहर की ओर घुमाएँ, तब तक प्रतीक्षा करें जब तक ऑब्जेक्ट सेंसर A की परावर्तनशीलता % में 9 से अधिक न हो जाए, और फिर निकास कन्वेयर 4 को रोक दें।

यह सुनिश्चित करें कि प्रवेश कन्वेयर पर एक हरी डिस्क रखी गई हो। प्रोजेक्ट को टेस्ट करने के लिए ब्रेन पर मौजूद चेक बटन को दबाकर प्रोजेक्ट को चलाएं।

प्रोजेक्ट के चलने के दौरान कन्वेयर के व्यवहार का अवलोकन करें।

EXP ब्रेन में लाल बॉक्स में हीरे के आकार का चेक बटन दिखाया गया है, जिससे यूनिट 4 लेसन 4 प्रोजेक्ट शुरू किया जा सके।

जब कन्वेयर चलना बंद कर दें, तो प्रोजेक्ट को रोकने के लिए ब्रेन पर मौजूद X बटन दबाएं। अपनी इंजीनियरिंग नोटबुक में अपने अवलोकन दर्ज करें।

क्या कन्वेयर आपकी भविष्यवाणी के अनुसार चले? क्या हरी डिस्क को योजना के अनुसार निकास कन्वेयर पर ले जाया गया? क्यों या क्यों नहीं?

EXP ब्रेन प्रोजेक्ट को समाप्त करने के लिए लाल बॉक्स में हीरे के आकार का X बटन दिखाया गया है।

परियोजना की समीक्षा

आइए इस प्रोजेक्ट के प्रवाह की समीक्षा करें, जिसके तहत ऑब्जेक्ट सेंसर द्वारा हरी डिस्क का पता चलने पर एग्जिट कन्वेयर रुक गया था। वेट अंटिलब्लॉक ने प्रोजेक्ट को तब तक आगे बढ़ने से रोक दिया जब तक कि उसके भीतर की स्थिति को TRUE के रूप में रिपोर्ट नहीं किया जाता। 

यह आरेख VEXcode EXP प्रोजेक्ट में तर्क के प्रवाह को दर्शाता है। एक तीर का निशान 'Wait until' ब्लॉक के शुरू होने का संकेत देता है, और फिर एक चक्रीय तीर का निशान यह दर्शाता है कि ब्लॉक तब तक प्रतीक्षा करता है जब तक उसकी शर्त सही नहीं हो जाती। ऑब्जेक्ट सेंसर A की परावर्तनशीलता (प्रतिशत में) 9 से अधिक होने पर ही अगला ब्लॉक चलेगा।

क्योंकिस्पिनब्लॉक एक नॉन-वेटिंग ब्लॉक है, इसलिए यह सीटीई वर्कसेल को ऑब्जेक्ट सेंसर से मानों की जांच करते समय और परावर्तनशीलता की स्थिति 9% से अधिक होने की जांच करते समय कन्वेयर मोटर को घुमाते रहने की अनुमति देता है। वेट अंटिलब्लॉक में शर्त के बादTRUE के रूप में रिपोर्ट करता है, प्रोजेक्ट स्टैक में अगले ब्लॉक पर चला जाता है, जिससे एग्जिट कन्वेयर मोटर रुक जाती है।

आपकी जानकारी के लिए

किसी प्रोजेक्ट में ब्लॉकों के एक अन्य संयोजन का उपयोग ऑब्जेक्ट सेंसर के नीचे कोई वस्तु होने पर एग्जिट कन्वेयर को रोकने के लिए किया जा सकता है। सेट डिटेक्शन थ्रेशोल्डब्लॉक का उपयोग प्रोजेक्ट की शुरुआत में थ्रेशोल्ड सेट करने के लिए किया जा सकता है, ठीक उसी तरह जैसे ऊपर बनाए गए प्रोजेक्ट मेंग्रेटर दैनब्लॉक का उपयोग किया गया था। 

VEXcode EXP सेट डिटेक्शन थ्रेशोल्ड ब्लॉक जो पढ़ता है 'ऑब्जेक्ट सेंसर A डिटेक्शन थ्रेशोल्ड को 50% पर सेट करें।

एक बार थ्रेशहोल्ड सेट हो जाने के बाद, बूलियनऑब्जेक्टका पता लगाता है ब्लॉक का उपयोग षट्भुजाकार स्थानों वाले किसी भी ब्लॉक में किया जा सकता है। यह ब्लॉक TRUE रिपोर्ट करेगा जबसेट डिटेक्शन थ्रेशोल्डब्लॉक द्वारा परिभाषित डिटेक्शन थ्रेशोल्ड पूरा हो जाएगा, या FALSE रिपोर्ट करेगा जब रिफ्लेक्टिविटी प्रतिशत उस थ्रेशोल्ड से कम होगा।

VEXcode EXP Detects Object ब्लॉक जो 'ऑब्जेक्ट सेंसर A ऑब्जेक्ट का पता लगाता है?' पढ़ता है।

क्योंकिDetectsobjectब्लॉक एक बूलियन ब्लॉक है, इसलिए यह सीधेWait untilब्लॉक में फिट हो सकता है।

VEXcode EXP स्टैक का वैकल्पिक संस्करण, जिसमें वेट अंटिल बूलियन ब्लॉक को डिटेक्शन थ्रेशोल्ड सिस्टम में बदल दिया गया है। अब संपूर्ण स्टैक में लिखा है: आरंभ करते समय, ऑब्जेक्ट सेंसर A का पता लगाने की सीमा 9% पर सेट करें। इसके बाद, प्रवेश कन्वेयर 1 को अंदर की ओर घुमाएं, 7 सेकंड प्रतीक्षा करें, और फिर प्रवेश कन्वेयर 1 को रोक दें। इसके बाद, ट्रांसपोर्ट कन्वेयर 2 को आगे की ओर घुमाएं, 5 सेकंड प्रतीक्षा करें, और फिर ट्रांसपोर्ट कन्वेयर 2 को रोक दें। इसके बाद, एग्जिट कन्वेयर 4 को अंदर की ओर घुमाएं, ऑब्जेक्ट सेंसर A द्वारा ऑब्जेक्ट का पता लगाने तक प्रतीक्षा करें, और फिर एग्जिट कन्वेयर 4 को रोक दें।

अपनी समझ की जाँच करें

अगले पाठ पर जाने से पहले, अपनी इंजीनियरिंग नोटबुक में निम्नलिखित प्रश्नों के उत्तर देकर सुनिश्चित करें कि आप इस पाठ की अवधारणाओं को समझ चुके हैं।

अपनी समझ की जाँच करें प्रश्न > (गूगल डॉक / .docx / .pdf)


आगे बढ़ने के लिए अगला > चुनें और "सब कुछ एक साथ जोड़ना" गतिविधि पर जाएं।