रोबोट आर्म की प्रोग्रामिंग - पायथन
शिक्षक टूलबॉक्स
-
गतिविधि रूपरेखा
- इस अध्ययन के माध्यम से छात्रों को वी5 क्लॉबॉट के आर्म मोटर की बुनियादी प्रोग्रामिंग से परिचित कराया जाएगा।
- आर्म मोटर को प्रोग्राम करना सीखने से छात्र वी5 क्लॉबॉट की भुजाओं की गतिविधियों को ठीक से नियंत्रित कर सकते हैं। पायथन प्रोजेक्ट में उपयोग किए जाने वाले निर्देशों के बारे में जानकारी के लिए, VEXcode V5 पायथन के लिए सहायता जानकारी देखें
शिक्षकों के लिए सुझाव
-
ऑटो-कंप्लीट का उपयोग करना
ऑटो-कंप्लीट VEXcode V5 का एक फीचर है जो आपके द्वारा टाइप किए जा रहे कमांड के बाकी हिस्से का अनुमान लगाता है। चूंकि छात्र VEXcode V5 में काम कर रहे हैं, इसलिए उन्हें पायथन सिंटैक्स में मदद के लिए ऑटो-कंप्लीट सुविधा का उपयोग करने के लिए प्रोत्साहित करें। निर्देश टाइप करना शुरू करते समय आपको ऑटो-कंप्लीट फंक्शन दिखाई दे सकता है। अपनी पसंद का नाम चुनने के लिए "ऊपर" और "नीचे" कुंजियों का उपयोग करें, फिर चयन को अंतिम रूप देने के लिए अपने कीबोर्ड पर "टैब" या (एंटर/रिटर्न) दबाएं। इस फीचर के बारे में अधिक जानकारी के लिए पायथन लेख देखें। 
V5 क्लॉबॉट पहुंचने के लिए तैयार है!
इस अन्वेषण से आपको वी5 क्लॉबॉट के हाथ का उपयोग करके कुछ शानदार प्रोजेक्ट बनाना शुरू करने के लिए आवश्यक उपकरण मिलेंगे।
- इस अध्ययन में उपयोग किए जाने वाले VEXcode V5 Python निर्देश:
- arm_motor.spin_for(FORWARD, 90, DEGREES)
- आर्म_मोटर.सेट_पोजिशन(0, डिग्री)
- प्रतीक्षा करें(2, सेकंड)
-
निर्देश के बारे में अधिक जानकारी प्राप्त करने के लिए, किसी कमांड के आगे स्थित चिह्न आइकन का चयन करें।

- सुनिश्चित करें कि आपके पास आवश्यक हार्डवेयर, आपका इंजीनियरिंग नोटबुक और VEXcode V5 डाउनलोड और तैयार हैं।
| मात्रा | आवश्यक सामग्री |
|---|---|
| 1 |
VEX V5 क्लासरूम स्टार्टर किट (नवीनतम फर्मवेयर के साथ) |
| 1 |
VEXcode V5 |
| 1 |
इंजीनियरिंग नोटबुक |
| 1 |
क्लॉबॉट और एडवांस्ड ट्रेनिंगबॉट (ड्राइवट्रेन 2-मोटर, बिना जाइरो) उदाहरण प्रोजेक्ट |
शिक्षक सुझाव
छात्रों के लिए समस्या निवारण के प्रत्येक चरण का प्रदर्शन करें।
चरण 2: एक नया प्रोजेक्ट शुरू करें
अपना प्रोजेक्ट शुरू करने से पहले, सही टेम्पलेट प्रोजेक्ट का चयन करें। क्लॉबॉट और एडवांस्ड ट्रेनिंगबॉट (ड्राइवट्रेन 2-मोटर, नो जाइरो) उदाहरण प्रोजेक्ट में क्लॉबॉट के मोटर्स का कॉन्फ़िगरेशन शामिल है। यदि टेम्पलेट का उपयोग नहीं किया जाता है, तो आपका रोबोट प्रोजेक्ट को सही ढंग से नहीं चला पाएगा।
निम्नलिखित चरणों को पूरा करें:
- फ़ाइल मेनू खोलें।
- खोलेंउदाहरण चुनें।
- क्लॉबॉट और एडवांस्ड ट्रेनिंगबॉट (ड्राइवट्रेन 2-मोटर, नो जाइरो) उदाहरण प्रोजेक्ट का चयन करें और खोलें।
- चूंकि हम भुजा को नियंत्रित करने के लिए प्रोग्रामिंग करेंगे, इसलिए अपनी परियोजना का नाम बदलकरArmControl कर दें।
- अपनी परियोजना सहेजें
- यह सुनिश्चित करने के लिए जांच करें कि प्रोजेक्ट का नाम ArmControl अब टूलबार के केंद्र में स्थित विंडो में दिखाई दे रहा है।

शिक्षक सुझाव
- क्योंकि यह प्रोग्रामिंग की शुरुआती गतिविधि है, इसलिए शिक्षक को चरणों का प्रदर्शन करना चाहिए और फिर छात्रों से उन्हीं क्रियाओं को पूरा करने के लिए कहना चाहिए। इसके बाद शिक्षक को छात्रों की निगरानी करनी चाहिए ताकि यह सुनिश्चित हो सके कि वे निर्देशों का सही ढंग से पालन कर रहे हैं।
- सुनिश्चित करें कि छात्रों ने फ़ाइल मेनू से उदाहरण खोलें विकल्प का चयन किया हो।
- सुनिश्चित करें कि छात्रों ने क्लॉबॉट और एडवांस्ड ट्रेनिंगबॉट (ड्राइवट्रेन 2-मोटर, बिना जाइरो) उदाहरण परियोजना का चयन किया है।
आप छात्रों को बता सकते हैं कि पर चुनने के लिए कई विकल्प मौजूद हैं। जैसे-जैसे वे अन्य रोबोटों का निर्माण और उपयोग करेंगे, उन्हें विभिन्न टेम्पलेट्स का उपयोग करने का मौका मिलेगा।
- आप छात्रों से प्रोजेक्ट के नाम में अपने नाम के पहले अक्षर या अपने समूह का नाम जोड़ने के लिए कह सकते हैं। यदि आप छात्रों से प्रोजेक्ट जमा करने के लिए कहते हैं तो इससे प्रोजेक्टों में अंतर करने में मदद मिलेगी।
शिक्षक टूलबॉक्स
-
बचत परियोजनाएं
- इस बात पर ध्यान दें कि जब उन्होंने पहली बार VEXcode V5 खोला, तो विंडो पर VEXcode प्रोजेक्ट लिखा हुआ था। VEXcode V5 को पहली बार खोलने पर VEXcode प्रोजेक्ट डिफ़ॉल्ट प्रोजेक्ट नाम होता है। प्रोजेक्ट का नाम बदलने और उसे सेव करने के बाद, डिस्प्ले अपडेट होकर नया प्रोजेक्ट नाम दिखाने लगा। टूलबार में मौजूद इस विंडो का उपयोग करके, यह आसानी से जांचा जा सकता है कि छात्र सही प्रोजेक्ट का उपयोग कर रहे हैं या नहीं।
- छात्रों को बताएं कि वे अब अपना पहला प्रोजेक्ट शुरू करने के लिए तैयार हैं। छात्रों को समझाएं कि कुछ सरल चरणों का पालन करके, वे एक ऐसा प्रोजेक्ट बना और चला सकेंगे जो क्लॉबॉट की भुजा को ऊपर और नीचे करेगा।
- छात्रों को याद दिलाएं कि वे काम करते समय अपने प्रोजेक्ट को सेव करते रहें। VEX लाइब्रेरी के पायथन अनुभाग में लेख VEXcode V5 में बचत प्रथाओं की व्याख्या करते हैं।
शिक्षक टूलबॉक्स
-
रुकें और चर्चा करें
यह एक अच्छा मौका है कि छात्र समूह रुकें और VEXcode V5 में एक नया प्रोजेक्ट शुरू करने के लिए अभी-अभी पूरे किए गए चरणों की समीक्षा करें।
चरण 3: बांह को ऊपर उठाएं
अब हम हाथ को ऊपर उठाने के लिए प्रोग्रामिंग शुरू करने जा रहे हैं!
# लाइब्रेरी आयात
vex से आयात *
# प्रोजेक्ट कोड प्रारंभ
arm_motor.set_position(0, DEGREES)- आर्म के लिए प्रारंभिक स्थिति निर्धारित करने के लिए प्रोग्रामिंग क्षेत्र में ऊपर दिखाए अनुसार arm_motor.set_position()कमांड लिखें।
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)- आर्मऊपर ले जाने के लिए ऊपर दिखाए अनुसार () कमांडनीचे () जोड़ें
- स्लॉट आइकन का चयन करें। आप अपने प्रोजेक्ट को रोबोट ब्रेन में उपलब्ध स्लॉट में से किसी एक में डाउनलोड कर सकते हैं। स्लॉट 1 का चयन करें।
- रोबोट को अपने कंप्यूटर या टैबलेट से कनेक्ट करें। टूलबार में ब्रेन आइकनसफल कनेक्शन स्थापित होने के बाद हरे रंगबदल जाता है।
- रोबोट ब्रेन में आर्मकंट्रोल प्रोजेक्ट डाउनलोड करने के लिए टूलबार पर मौजूदडाउनलोडबटन पर क्लिक करें।
शिक्षक टूलबॉक्स
यदि छात्र कंप्यूटर का उपयोग कर रहे हैं, तो उनसे कहें कि वे रोबोट ब्रेन से यूएसबी केबल को डिस्कनेक्ट कर दें। किसी प्रोजेक्ट को चलाते समय रोबोट को कंप्यूटर से कनेक्ट रखने से रोबोट कनेक्शन केबल को खींच सकता है।

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

- अपने ArmControl प्रोजेक्ट में दूसरा arm_motor.spin_for()कमांड जोड़ें ताकि आर्म 90 डिग्री तक उठे, 2 सेकंड प्रतीक्षा करे और फिर वापस नीचे आ जाए।
- संकेत:आपको कमांड के भीतर दिशा बदलने की आवश्यकता होगी।
- ध्यान दें किwaitकमांड चलने के दौरान आर्म अपनी स्थिति बनाए रखता है। मोटर बैटरी से शक्ति प्राप्त करके भुजा को गुरुत्वाकर्षण बल के विरुद्ध ऊपर की ओर स्थिर रखती है। ऐसा इसलिए है क्योंकि मोटर को रोकने के लिए डिफ़ॉल्ट सेटिंगहोल्डसेटिंग है। रुकने के लिए दो अन्य सेटिंग्स हैं -ब्रेकऔरकोस्ट। आप इनके बारे में किसी दूसरी प्रयोगशाला में सीखेंगे।
शिक्षक टूलबॉक्स
-
समाधान
इस समस्या का समाधान नीचे दिया गया है। हाथ को नीचे करने के लिए, छात्रोंजोड़े गए () कमांड में "FORWARD" पैरामीटर"REVERSE" में बदलना होगा
# प्रोजेक्ट कोड प्रारंभ करें
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
wait(2, SECONDS)
arm_motor.spin_for(REVERSE, 90, DEGREES)
चरण 5: फ्लाइट ट्रैफिक कंट्रोलर चैलेंज को पूरा करें

फ्लाइट ट्रैफिक कंट्रोलर चैलेंज में, क्लॉबॉट को अपनी भुजा को एक बार 90 डिग्री तक ऊपर और नीचे घुमाना होगा, 3 सेकंड तक प्रतीक्षा करनी होगी, फिर भुजा को दो बार 45 डिग्री तक ऊपर और नीचे घुमाना होगा, 5 सेकंड तक प्रतीक्षा करनी होगी, और फिर भुजा को तीन बार 90 डिग्री तक ऊपर और नीचे घुमाना होगा।
यहां क्लॉबॉट के व्यवहारों की सूची दी गई है:
- हाथ को ऊपर उठाएं और फिर 90 डिग्री तक नीचे लाएं।
- 3 सेकंड प्रतीक्षा करें।
- हाथ को ऊपर उठाएं और फिर 45 डिग्री तक नीचे लाएं।
- हाथ को ऊपर उठाएं और फिर 45 डिग्री नीचे लाएं।
- 5 सेकंड प्रतीक्षा करें।
- हाथ को ऊपर उठाएं और फिर 90 डिग्री तक नीचे लाएं।
- हाथ को ऊपर उठाएं और फिर 90 डिग्री तक नीचे लाएं।
- हाथ को ऊपर उठाएं और फिर 90 डिग्री तक नीचे लाएं।
शिक्षक टूलबॉक्स
-
समाधान
इस चुनौती के अधिकांश कमांड arm_motor.spin_for() हैं। हाथ को ऊपर की ओर ले जाने के लिए एक कमांड और हाथ को नीचे की ओर ले जाने के लिए एक कमांड जोड़ने के बाद, आप दोनों कमांड को हाइलाइट कर सकते हैं, राइट-क्लिक कर सकते हैं और फिर आवश्यकतानुसार उन्हें कॉपी और पेस्ट कर सकते हैं। फिर चुनौती के अनुरूप मापदंडों को बदला जा सकता है और बीच में waitकमांड जोड़े जा सकते हैं।
- यहां फ्लाइट ट्रैफिक कंट्रोलर चैलेंज के समाधान का एक उदाहरण देखें:
# प्रोजेक्ट कोड प्रारंभ करें
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
wait(5, SECONDS)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, डिग्री)
आर्म_मोटर.स्पिन_फॉर(फॉरवर्ड, 90, डिग्री)
आर्म_मोटर.स्पिन_फॉर(रिवर्स, 90, डिग्री)
आर्म_मोटर.स्पिन_फॉर(फॉरवर्ड, 90, डिग्री)
आर्म_मोटर.स्पिन_फॉर(रिवर्स, 90, डिग्री)अधिक उन्नत छात्र समाधान को सरल बनाने के लिए लूप का उपयोग कर सकते हैं।
# प्रोजेक्ट कोड प्रारंभ
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
for repeat_count in range(2):
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
wait(5, SECONDS)
for repeat_count in range(3):
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)