प्रोग्रामिंग द क्लॉ - C++
शिक्षक टूलबॉक्स
-
गतिविधि रूपरेखा
-
यह अन्वेषण छात्रों को V5 क्लॉबोट के क्लॉ मोटर की बुनियादी प्रोग्रामिंग से परिचित कराएगा।
-
क्लॉ मोटर को प्रोग्राम करना सीखने से छात्रों को यह नियंत्रित करने में सहायता मिलती है कि V5 क्लॉबोट अपने वातावरण में वस्तुओं को किस प्रकार पकड़ता है।
V5 क्लॉबोट पकड़ने के लिए तैयार है!
यह अन्वेषण आपको कुछ बेहतरीन परियोजनाएं बनाने में मदद करेगा, जो वस्तुओं को पकड़ने के लिए V5 क्लॉबोट के पंजे का उपयोग करती हैं।
- इस अन्वेषण में उपयोग किए जाने वाले VEXcode V5 निर्देशों में शामिल हैं:
- क्लॉमोटर.सेटपोजीशन(0, डिग्री);
- ClawMotor.spinFor(आगे, 90, डिग्री);
- क्लॉमोटर.सेटटाइमआउट (2, सेकंड);
-
निर्देश के बारे में अधिक जानकारी प्राप्त करने के लिए, सहायता का चयन करें और फिर अधिक जानकारी देखने के लिए आदेश के आगे प्रश्न चिह्न आइकन का चयन करें।

- सुनिश्चित करें कि आपके पास आवश्यक हार्डवेयर, आपकी इंजीनियरिंग नोटबुक और VEXcode V5 डाउनलोड और तैयार है।
| मात्रा | आवश्यक सामग्री |
|---|---|
| 1 |
VEX V5 क्लासरूम स्टार्टर किट (अप-टू-डेट फर्मवेयर के साथ) |
| 1 |
वेक्सकोड V5 |
| 1 |
इंजीनियरिंग नोटबुक |
| 1 |
क्लॉबॉट और एडवांस्ड ट्रेनिंगबॉट (ड्राइवट्रेन 2-मोटर, कोई गायरो नहीं) उदाहरण परियोजना |
| 1 |
एल्युमिनियम कैन |
शिक्षक युक्तियाँ
छात्रों के लिए समस्या निवारण के प्रत्येक चरण का मॉडल प्रस्तुत करें।
चरण 2: एक नई परियोजना शुरू करें
अपना प्रोजेक्ट शुरू करने से पहले, सही टेम्पलेट प्रोजेक्ट का चयन करें। क्लॉबोट और एडवांस्ड ट्रेनिंगबोट (ड्राइवट्रेन 2-मोटर, नो गायरो) उदाहरण परियोजना में क्लॉबोट की मोटर कॉन्फ़िगरेशन शामिल है। यदि टेम्पलेट का उपयोग नहीं किया जाता है, तो आपका रोबोट प्रोजेक्ट को सही ढंग से नहीं चलाएगा।
निम्नलिखित चरण पूरे करें:
- फ़ाइल मेनू खोलें.
- चुनेंखोलेंउदाहरण.
- क्लॉबोट और एडवांस्ड ट्रेनिंगबोट (ड्राइवट्रेन 2-मोटर, नो गायरो) उदाहरण प्रोजेक्ट का चयन करें और उसे खोलें।
- चूंकि हम पंजे को नियंत्रित करने के लिए प्रोग्रामिंग करेंगे, इसलिए अपने प्रोजेक्ट का नाम बदलकरClawControlरखें।
- अपना प्रोजेक्टसहेजें.
- यह सुनिश्चित करने के लिए जांचें कि प्रोजेक्ट का नाम ClawControl अब टूलबार के मध्य में विंडो में है।
शिक्षक युक्तियाँ
- चूंकि यह प्रोग्रामिंग के साथ एक प्रारंभिक गतिविधि है, इसलिए शिक्षक को चरणों का मॉडल बनाना चाहिए, और फिर छात्रों से वही क्रियाएं पूरी करने के लिए कहना चाहिए। इसके बाद शिक्षक को छात्रों पर निगरानी रखनी चाहिए ताकि यह सुनिश्चित हो सके कि वे चरणों का सही ढंग से पालन कर रहे हैं।
- सुनिश्चित करें कि छात्रों ने फ़ाइल मेनू से ओपन उदाहरण का चयन किया है।
- सुनिश्चित करें कि छात्रों ने क्लॉबोट और एडवांस्ड ट्रेनिंगबोट (ड्राइवट्रेन 2-मोटर, नो गायरो) उदाहरण परियोजना का चयन किया है।
आप छात्रों को बता सकते हैं किउदाहरणपृष्ठ पर चुनने के लिए कई विकल्प हैं। जैसे-जैसे वे अन्य रोबोट बनाएंगे और उनका उपयोग करेंगे, उन्हें विभिन्न टेम्पलेट्स का उपयोग करने का अवसर मिलेगा। - आप विद्यार्थियों से परियोजना के नाम में अपना आद्याक्षर या अपने समूह का नाम जोड़ने के लिए कह सकते हैं। यदि आप विद्यार्थियों से परियोजनाएं प्रस्तुत करने के लिए कहेंगे तो इससे परियोजनाओं में अंतर करने में मदद मिलेगी।
शिक्षक टूलबॉक्स
-
रुकें और चर्चा करें
यह एक अच्छा बिन्दु है कि हम रुकें और विद्यार्थी समूहों से VEXcode V5 में नया प्रोजेक्ट शुरू करने के लिए अभी-अभी पूरे किए गए चरणों की समीक्षा करवाएं।
चरण 3: V5 क्लॉ को खोलने के लिए प्रोग्राम करें
अब हम पंजे को खोलने के लिए प्रोग्रामिंग शुरू करने जा रहे हैं!
int main() {
// रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
vexcodeInit();
ClawMotor.setPosition(0, डिग्री);
}- पंजे के लिए प्रारंभिक स्थिति निर्धारित करने के लिए प्रोग्रामिंग क्षेत्र में ऊपर दिखाए अनुसारClawMotor.setPosition();निर्देश लिखें।
ClawMotor.setPosition(0, डिग्री);
ClawMotor.setTimeout(2, सेकंड);- ऊपर दिखाए अनुसारClawMotor.setTimeout();निर्देश जोड़ें।
- ध्यान दें कि यह निर्देशClawMotor.spinFor();निर्देश से पहले आता है। इसका उद्देश्य यह निर्धारित करना है कि क्लॉ मोटर कितनी देर तक चल सकती है और उस समय के बाद उसे बंद कर देना है। इसलिए यदि मोटर पूरे 60 डिग्री तक नहीं घूम पाती है, तो भी परियोजना दो सेकंड बीतने के बाद क्लॉ मोटर को रोक देती है।
- सुनिश्चित करें कि सेट टाइमआउट सेट पोजीशन कमांड से मिलान करने के लिए इंडेंट किया गया है, और सभी कमांड कर्ली ब्रेसेज़ के भीतर हैं।
ClawMotor.setPosition(0, डिग्री);
ClawMotor.setTimeout(2, सेकंड);
ClawMotor.spinFor(रिवर्स, 60, डिग्री);- पंजे को 60 डिग्री तक खोलने के लिए ऊपर दिखाए अनुसारClawMotor.spinFor();निर्देश लिखें।
- सभी उपलब्ध प्रोजेक्ट स्लॉट को खोलने और वांछित स्लॉट का चयन करने के लिए बॉक्स 1 आइकन पर क्लिक करके उस स्लॉट का चयन करें जिस पर प्रोजेक्ट को V5 रोबोट ब्रेन पर डाउनलोड किया जाएगा।
- रोबोट को अपने कंप्यूटर या टैबलेट से कनेक्ट करें। सफल कनेक्शन हो जाने के बाद टूलबार में ब्रेन आइकनहराहो जाता है।
- प्रोजेक्ट को V5 रोबोट ब्रेन पर डाउनलोड करने के लिए डिवाइस जानकारी आइकन के बगल में स्थित डाउनलोड आइकन पर क्लिक करें।

- जाँच करें कि क्लॉकंट्रोल प्रोजेक्ट आपके द्वारा चुने गए स्लॉट में मस्तिष्क में डाउनलोड हो गया है।
शिक्षक टूलबॉक्स
-
पहले मॉडल का विकल्प
सभी विद्यार्थियों को एक साथ प्रयास करने के लिए कहने से पहले कक्षा के सामने परियोजना को चलाने का मॉडल प्रस्तुत करें। छात्रों को एक जगह इकट्ठा करें और क्लॉबोट को इस प्रकार रखें कि उसका पंजा सभी को दिखाई दे। यदि आप एक से अधिक बार प्रदर्शन करने की योजना बना रहे हैं, तो आप रन के बीच में क्लॉ को धीरे से बंद कर सकते हैं।
विद्यार्थियों को बताएं कि अब उनकी परियोजनाओं को चलाने की बारी है।
- क्लॉबोट पर प्रोजेक्ट चलाएं (सी++यापायथनमें) यह सुनिश्चित करके कि प्रोजेक्ट चयनित है और फिर रन बटन दबाएं। पंजा हिलाने के लिए अपना पहला प्रोजेक्ट बनाने पर बधाई!
चरण 4: इसे आज़माएँ: V5 क्लॉ को बंद करें
अब जब आपने पंजे को खोलने के लिए प्रोग्राम कर दिया है, तो अब आप इसे बंद करने के लिए भी प्रोग्राम करेंगे।

अब जब आप पंजा खोल सकते हैं, तो आप इसे बंद भी करना चाहेंगे।
- अपने ClawControl प्रोजेक्ट पर वापस लौटें और एक अतिरिक्तClawMotor.spinFor();insनिर्देश जोड़ें ताकि Claw Motor 30 डिग्री तक बंद घूम सके। पंजा आधा बंद होना चाहिए क्योंकि यह मूलतः 60 डिग्री तक खुला रहता है।
- अपने क्लॉकंट्रोल प्रोजेक्ट को डाउनलोड करके और चलाकर परीक्षण करें कि आपके संशोधित प्रोजेक्ट में क्लॉ 60 डिग्री तक खुला है और फिर 30 डिग्री तक बंद है।
शिक्षक टूलबॉक्स
-
समाधान
इससे पहले, पंजा 60 डिग्री तक खुलता था। उस परियोजना में मोटर टाइमआउट निर्देश निर्धारित करना शामिल था, क्योंकि मैनिपुलेटर को पावर देते समय टाइमआउट निर्धारित करना एक महत्वपूर्ण अभ्यास है, क्योंकि इसकी गति को किसी तरह से प्रतिबंधित किया जा सकता है। टाइमआउट सेट करने से मोटर पर अनावश्यक टूट-फूट से बचाव होता है। इस चरण का समाधान
है:
int main() {
// रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
vexcodeInit();
ClawMotor.setPosition(0, डिग्री);
ClawMotor.setTimeout(2, सेकंड);
ClawMotor.spinFor(रिवर्स, 60, डिग्री);
ClawMotor.spinFor(फॉरवर्ड, 30, डिग्री);
}
चरण 5: इसे आज़माएँ: कई गतिविधियों को क्रमबद्ध करें

आप जो भी चीज पंजे से उठाएंगे, वह एक ही आकार की नहीं होगी। गति की सीमा के अनुसार पंजे को विभिन्न स्थितियों में खोलने का प्रयास करें।
- मोटर को घुमाएं ताकि:
- 70 डिग्री तक खुला
- 20 डिग्री के लिए बंद करें
- 10 डिग्री के लिए खुला
- 30 डिग्री के लिए बंद करें
- 25 डिग्री के लिए बंद करें
- यदि क्लॉ मोटर 0 डिग्री से शुरू होती है, तो परियोजना के अंत में क्लॉ मोटर कितने डिग्री पर खुली होगी?
- क्लॉ मोटर को बंद करके शुरू करें।
शिक्षक टूलबॉक्स
-
समाधान
इस चरण का समाधान नीचे प्रस्तुत किया गया है।
परियोजना के अंत में क्लॉ मोटर अभी भी 5 डिग्री पर खुला है: 70 - 20 = 50 -> 50 + 10 = 60 -> 60 - 30 = 30 -> 30 - 25 = 5 डिग्री।
int main() {
// रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
vexcodeInit();
// क्लॉ की वर्तमान स्थिति को शून्य के रूप में लें
ClawMotor.setPosition(0, degrees);
// क्लॉ की टाइमआउट सेट करें
ClawMotor.setTimeout(2, seconds);
ClawMotor.spinFor(reverse, 70, degrees);
ClawMotor.spinFor(forward, 20, degrees);
ClawMotor.spinFor(reverse, 10, degrees);
ClawMotor.spinFor(forward, 30, degrees);
ClawMotor.spinFor(forward, 25, degrees);
}
चरण 6: लॉक टाइट चैलेंज पूरा करना

लॉक टाइट चैलेंज
- क्लॉबोट को इस तरह प्रोग्राम करें कि वह खाली 12 औंस के एल्युमीनियम कैन के किनारों को तोड़े बिना उसके पंजे को सुरक्षित रूप से बंद कर दे।
- क्लॉबोट को कैन को पकड़े रहने दें, जबकि वह अपनी भुजा को 45 डिग्री तक ऊपर और नीचे करता है।
- इसके बाद क्लॉबोट को कैन को छोड़ देना चाहिए और उससे दूर चले जाना चाहिए।
- चुनौती की शुरुआत एक खुले पंजे और उसके भीतर एक खाली डिब्बे से करें।
शिक्षक युक्तियाँ
-
विद्यार्थियों को चुनौती की शुरुआत एक खुले पंजे और उसके भीतर एक खाली डिब्बे के साथ करने को कहें।
-
यदि कैन कुचल जाए या पंजे से बाहर गिर जाए, तो परियोजना को समायोजित करने के बाद चुनौती को पुनः शुरू करना होगा।
शिक्षक टूलबॉक्स
-
समाधान
यहाँ एक उदाहरण समाधान है:
int main() {
// रोबोट कॉन्फ़िगरेशन आरंभ कर रहा है. दूर नहीं करते!
vexcodeInit();
// क्लॉ की वर्तमान स्थिति को शून्य के रूप में लें
ClawMotor.setPosition(0, degrees);
// क्लॉ की टाइमआउट सेट करें
ClawMotor.setTimeout(2, seconds);
ClawMotor.spinFor(forward, 170, degrees);
ArmMotor.spinFor(forward, 45, degrees);
ArmMotor.spinFor(reverse, 45, degrees);
ClawMotor.spinFor(reverse, 150, degrees);
Drivetrain.driveFor(reverse, 150, mm);
}