Skip to main content

পাঠ ২: '৫' নম্বরে গাড়ি চালান

এই পাঠে, ভিআর রোবটটি নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '5' নম্বরে গাড়ি চালিয়ে '1' নম্বরে ফিরে যাবে!

নম্বর গ্রিড ম্যাপ খেলার মাঠের উপর থেকে নীচের দৃশ্য, যেখানে ৫ নম্বরটি একটি লাল বাক্স দ্বারা হাইলাইট করা হয়েছে। ভিআর রোবটটি ১ নম্বর থেকে শুরু হয় এবং ৫ নম্বর বর্গক্ষেত্রটি ডানদিকে চারটি স্থান।

লক্ষ্য করুন যে VR রোবট X অক্ষ বরাবর ভ্রমণ করবে এবং X মান বৃদ্ধি পাবে নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '5' নম্বরে যেতে।

নম্বর গ্রিড ম্যাপ খেলার মাঠের উপর থেকে নীচের দৃশ্য, যেখানে ৫ নম্বর স্থানটি একটি কালো বাক্স দ্বারা হাইলাইট করা হয়েছে। একটি রেখা X অক্ষ জুড়ে পরিমাপ নির্দেশ করে, প্রথম স্থানটি X অক্ষের উপর -900 মিলিমিটার এবং পরবর্তী স্থানটি -700 প্রতিবার 200 দ্বারা গণনা করা অব্যাহত রাখে। পঞ্চম স্থানটি -১০০ মিলিমিটারের X অবস্থানে রয়েছে।

ভিআর রোবটটি নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '5' নম্বরের অবস্থানে চলে যাবে। যাইহোক, ভিআর রোবট সেই নম্বরে নেভিগেট করার আগে, ভিআর রোবটকে সেই নম্বরটির অবস্থান কোথায় তা জানাতে হবে। খেলার মাঠের কেন্দ্র থেকে শুরু করে, '5' নম্বরের স্থানাঙ্কগুলি হল (-100, -900)।

পঞ্চম স্থানের অবস্থান চিহ্নিত করে দুটি অক্ষ নির্দেশক সহ নম্বর গ্রিড ম্যাপ খেলার মাঠের উপর থেকে নীচের দৃশ্য। ভিআর রোবটটি -৯০০ X এবং -৯০০ Y থেকে শুরু হয়, যেখানে পঞ্চম স্থানটি -১০০ X এবং -৯০০ Y থেকে শুরু হয়।
  • শুরু করার জন্য, VR রোবটটিকে '5' নম্বরের মুখোমুখি হতে হবে। কর্মক্ষেত্রে একটি [Turn for] ব্লক টেনে আনুন।

    VEXcode VR ব্লক প্রজেক্ট যা "When Started" ব্লক দিয়ে শুরু হয় এবং তারপরে "Turn For" ব্লক দিয়ে 90 ডিগ্রি ডানে ঘুরতে হয়।
  • [ড্রাইভ] নন-ওয়েটিং ব্লকটিকে কর্মক্ষেত্রে টেনে আনুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন টার্ন ফর ব্লকের পরে একটি ড্রাইভ ফরোয়ার্ড ব্লক যুক্ত করা হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।"
  • [ড্রাইভ] ব্লকের নিচে একটি [অপেক্ষা করুন] ব্লক সংযুক্ত করুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন ড্রাইভ ফরোয়ার্ড ব্লকের পরে একটি Wait Until ব্লক যুক্ত করা হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।" অবশেষে এখন একটি খালি বুলিয়ান প্যারামিটার সহ একটি Wait Until ব্লক রয়েছে।
  • ব্লকটি বুলিয়ান শর্ত স্বীকার না করা পর্যন্ত অপেক্ষা করুন। ঠিক দূরত্ব সেন্সর ইউনিটের মতো, এই প্রকল্পটি নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ডএর মাধ্যমে ড্রাইভ করতে শর্তাবলী ব্যবহার করবে। <Greater than> বুলিয়ান রিপোর্টার ব্লকটি [অপেক্ষা করুন] ব্লকে টেনে আনুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন Wait Until ব্লকের মধ্যে একটি Greater Than ব্লক ঢোকানো হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।" সবশেষে এখন একটি Wait Until ব্লক আছে যার মধ্যে একটি Greater Than ব্লক আছে যেখানে লেখা আছে 'blank is Greater Than 50'।
  • মনে রাখবেন যে <Less than> ব্লকের পরিবর্তে <Greater than> ব্লক ব্যবহার করা হয়েছে কারণ VR রোবটটি খেলার মাঠের বাম দিক থেকে ডানদিকে ড্রাইভ করছে। VR রোবট -900 মিলিমিটার (মিমি) এর X-মানে শুরু হচ্ছে। VR রোবট এগিয়ে যাওয়ার সাথে সাথে X-মান বৃদ্ধি পায়।

    পঞ্চম স্থানের অবস্থান চিহ্নিতকারী দুটি অক্ষ নির্দেশক সহ নম্বর গ্রিড ম্যাপ খেলার মাঠের একই উপর থেকে নীচের দৃশ্য। ভিআর রোবটটি -৯০০ X এবং -৯০০ Y থেকে শুরু হয়, যেখানে পঞ্চম স্থানটি -১০০ X এবং -৯০০ Y থেকে শুরু হয়।
  • (রোবটের অবস্থান) ব্লকটি <Greater than> ব্লকে টেনে আনুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন গ্রেটার থান ব্লকে একটি পজিশন অফ রোবট ব্লক সন্নিবেশ করা হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।" অবশেষে অপেক্ষা করুন যতক্ষণ না মিলিমিটারে রোবটের X অবস্থান 50 এর বেশি হয়।

    আপনার তথ্যের জন্য

    (রোবটের অবস্থান) ব্লক হল একটি সংখ্যাসূচক রিপোর্টার ব্লক যা VR রোবটের কেন্দ্রের X বা Y স্থানাঙ্কের অবস্থান রিপোর্ট করে। X বা Y স্থানাঙ্কের অবস্থান রিপোর্ট করা হয়েছে কিনা তা চয়ন করুন।

    অক্ষ ড্রপডাউন মেনু সহ রোবট ব্লকের অবস্থান খোলা হয়েছে, পরিমাপের অক্ষকে X থেকে Y তে পরিবর্তন করা হয়েছে।

    সুইচ ব্লক ব্যবহার করা 

    এটি হল সুইচ (রোবটের অবস্থান) ব্লক। Y স্থানাঙ্ক রিপোর্ট করার জন্য (রোবটের অবস্থান) ব্লকের প্যারামিটার পরিবর্তন করতে, স্থানাঙ্ক মানের জন্য কেবল "Y" টাইপ করুন অথবা প্রদর্শিত স্থানাঙ্ক পরামর্শটি নির্বাচন করুন। 

    স্বয়ংক্রিয়-সম্পূর্ণ বৈশিষ্ট্যটি প্রদর্শনের জন্য রোবট সুইচ ব্লকের অবস্থান। ব্লকটিতে 'location.position(X, MM)' লেখা আছে, এবং ব্যবহারকারী অটো-কমপ্লিট ব্যবহার করে X প্যারামিটারটি Y তে পরিবর্তন করছেন।

    (রোবটের অবস্থান) ব্লকটি মিলিমিটার (মিমি) বা ইঞ্চিতে মান রিপোর্ট করতে পারে।

    পরিমাপ ইউনিট ড্রপডাউন মেনু সহ রোবট ব্লকের অবস্থান খোলা হয়েছে, পরিমাপের একক মিলিমিটার থেকে ইঞ্চিতে পরিবর্তন করা হয়েছে।

    আপনি "ইঞ্চি" টাইপ করে অথবা প্রদর্শিত পরামর্শটি নির্বাচন করে সুইচ (রোবটের অবস্থান) ব্লক ব্যবহার করার সময় পরিমাপের এককের প্যারামিটার পরিবর্তন করতে পারেন। পরিমাপের এককের জন্য প্যারামিটার টাইপ করার সময় সমস্ত বড় অক্ষর ব্যবহার করতে ভুলবেন না।

    স্বয়ংক্রিয়-সম্পূর্ণ বৈশিষ্ট্যটি প্রদর্শনের জন্য রোবট সুইচ ব্লকের অবস্থান। ব্লকটিতে 'location.position(X, MM)' লেখা আছে, এবং ব্যবহারকারী অটো-কমপ্লিট ব্যবহার করে মিলিমিটার প্যারামিটারটি ইঞ্চিতে পরিবর্তন করছেন।

  • <Greater than> ব্লকের প্যারামিটার -১০০ তে সেট করুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন গ্রেটার থান ব্লকের দ্বিতীয় প্যারামিটার 50 থেকে -100 এ পরিবর্তিত হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।" অবশেষে অপেক্ষা করুন যতক্ষণ না মিলিমিটারে রোবটের X অবস্থান -১০০ এর চেয়ে বেশি হয়।
  • একটি [ড্রাইভিং বন্ধ করুন] ব্লকে টেনে আনুন এবং এটিকে প্রকল্পে যোগ করুন।

    VEXcode VR ব্লক প্রকল্পের ধারাবাহিকতা, এখন Wait Until ব্লকের নিচে একটি Stop Driving ব্লক যোগ করা হয়েছে। পুরো প্রকল্পটি এখন পড়ে আছে "শুরু হলে, ৯০ ডিগ্রি ডানে ঘুরুন এবং তারপর সামনের দিকে ড্রাইভ করুন।" সবশেষে অপেক্ষা করুন যতক্ষণ না মিলিমিটারে রোবটের X অবস্থান -১০০ এর বেশি হয় এবং তারপর গাড়ি চালানো বন্ধ করুন।
  • নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড খুলুন যদি এটি ইতিমধ্যে খোলা না থাকে এবং প্রকল্পটি চালান।
  • নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '5' নম্বরে ভিআর রোবট ড্রাইভ দেখুন।

    নম্বর গ্রিড ম্যাপ খেলার মাঠের উপর থেকে নীচের দৃশ্য, যেখানে ভিআর রোবটটি পঞ্চম স্থানে চলে গেছে।
  • এই প্রকল্পে, ভিআর রোবট নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ডএ '5' নম্বরে ড্রাইভ করে। [অপেক্ষা করুন] ব্লকটি ব্যবহার করা হয় যাতে VR রোবটটি এগিয়ে যেতে থাকবে যতক্ষণ না X-মানটি নির্দেশিত নম্বরটি চালু করা স্থানাঙ্কের X-মানের চেয়ে বেশি হয়।
  • একবার X-মান -100-এর বেশি হলে, প্রকল্পটি স্ট্যাকের পরবর্তী ব্লকে চলে যায়, যা একটি [স্টপ ড্রাইভিং] ব্লক। যেহেতু '5' নম্বরের X-মান -100, X-মান -100-এর বেশি হলে VR রোবট গাড়ি চালানো বন্ধ করে দেবে৷

VEXcode VR ব্লক প্রকল্পে যুক্তির প্রবাহকে কল্পনা করে একটি চিত্র। প্রকল্পটি 90 ডিগ্রি ডানদিকে ঘুরিয়ে শুরু হয় এবং তারপর সামনের দিকে গাড়ি চালায় এবং সেই কমান্ডটি ধরে রাখে যতক্ষণ না মিলিমিটারে রোবট সেন্সরের X অবস্থানের অবস্থান -100 এর বেশি হয়, যার পরে একটি স্টপ ড্রাইভিং ব্লক ড্রাইভ ফরোয়ার্ড কমান্ডটি শেষ করে।

সুইচ ব্লক ব্যবহার করা 

এই পাঠে, আপনি শিখেছেন কিভাবে VEXcode [Wait until] ব্লকটি বুলিয়ান কন্ডিশন সহ ব্যবহার করতে হয় যাতে রোবটটি পরবর্তী আচরণে যাওয়ার আগে X-অক্ষে -১০০ এর বেশি অবস্থানে পৌঁছানো পর্যন্ত অপেক্ষা করতে পারে।

VEXcode VR ব্লক যা "Wait Until X" পড়ে আছে, মিলিমিটারে রোবটের অবস্থান -১০০ এর বেশি।

নিচের ছবিতে পাইথনে একই কমান্ড সহ সুইচ [অপেক্ষা করুন] ব্লক দেখানো হয়েছে। সুইচ ব্লকের মধ্যে, while not location.position(X, MM) > -100: হল প্রথম পাইথন কমান্ড যা পরীক্ষা করে যে X-অক্ষ বরাবর রোবটের অবস্থান -100 এর চেয়ে বেশি কিনা।

ইন্ডেন্টেড কমান্ড, wait (5, MSEC)একটি নির্দিষ্ট সময়ের জন্য চেকের সম্পাদনকে বিরতি দেয়। এই উদাহরণে, প্রকল্পটি পরীক্ষা করে যে রোবটের অবস্থান প্রতি ৫ MSEC-তে -১০০ এর X মানের চেয়ে বেশি কিনা। এই কোডের লাইনটি কোডের প্রথম লাইনের নীচে ইন্ডেন্ট করা হয়েছে কারণ এই কমান্ডটি এমন আচরণ যা শর্ত (-১০০ এর বেশি X স্থানাঙ্ক মান) পূরণ না হওয়া পর্যন্ত পুনরাবৃত্তি হবে। 

VEXcode VR সুইচ ব্লকে Python কোড লেখা আছে 'while not location.position(X, MM) > -100: wait(5, MSEC)'।

এই পাঠের বাকি অংশটি চালিয়ে যেতে পরবর্তী বোতামটি নির্বাচন করুন।