পাঠ ২: সবুজ ডিস্কে গাড়ি চালান তারপর নীল ডিস্কে
সবুজ ডিস্কে গাড়ি চালান তারপর নীল ডিস্কে
- পূর্ববর্তী প্রকল্পে, যখন ফ্রন্ট আই সেন্সর একটি সবুজ ডিস্ক সনাক্ত করে তখন VR রোবট ডানদিকে ঘুরিয়ে দেয়। এখন, এমন একটি প্রকল্প তৈরি করুন যেখানে VR রোবট Disk Maze Playgroundএর চারটি ডিস্কে ড্রাইভ করবে।
-
লক্ষ্য হল একটি সামঞ্জস্যপূর্ণ প্যাটার্ন তৈরি করা যেখানে VR রোবট ডানদিকে ঘুরবে যখন ফ্রন্ট আই সেন্সর একটি সবুজ ডিস্ক শনাক্ত করে এবং বাম দিকে যখন ফ্রন্ট আই সেন্সর একটি নীল ডিস্ক সনাক্ত করে।

-
VR রোবটকে ডানদিকে মোড় নেওয়ার পরে এগিয়ে যাওয়ার নির্দেশ দিতে বিদ্যমান প্রকল্পে নিম্নলিখিত ব্লকটি যুক্ত করুন।

-
'নীল' শনাক্ত করতে <Color sensing> ব্লক সেটের সাথে আরেকটি [অপেক্ষা করুন] যোগ করুন, যেহেতু ভিআর রোবটের পরবর্তী ডিস্কটি নীল।

-
একটি [Turn for] ব্লক যোগ করুন এবং প্যারামিটারটি 'বামে' সেট করুন।

-
ভিআর রোবট ডিস্ক মেজ প্লেগ্রাউন্ডএর মধ্য দিয়ে কীভাবে চলে তা দেখতে প্রকল্পটি চালান।

- লক্ষ্য করুন যে সামনের চোখের সেন্সর একটি সবুজ ডিস্ক সনাক্ত করলে VR রোবটটি ডানদিকে ঘুরবে এবং সামনের চোখের সেন্সর একটি নীল ডিস্ক শনাক্ত করলে বাম দিকে ঘুরবে৷
-
ফ্রন্ট আই সেন্সর ব্যবহার করে ডিস্ক মেজ প্লেগ্রাউন্ড এ VR রোবটটিকে আরও দুটি ডিস্কে চালাতে এই প্রকল্পটি তৈরি করা চালিয়ে যান। পরবর্তী দুটি ডিস্কে ভিআর রোবট নেভিগেট করতে নিম্নলিখিত ব্লকগুলি যোগ করুন তারপর থামুন:


-
লক্ষ্য করুন যে একটি প্যাটার্ন আছে। ব্লকের একটি সিরিজ রয়েছে যা প্রকল্পে তিনবার পুনরাবৃত্তি হয়। কোডের এই অংশটি একটি [পুনরাবৃত্তি] ব্লক ব্যবহার করে ঘনীভূত করা যেতে পারে।

- ডিস্ক মেজ প্লেগ্রাউন্ড খুলুন যদি এটি ইতিমধ্যে খোলা না থাকে এবং প্রকল্পটি চালান।
-
ডিস্ক মেজ প্লেগ্রাউন্ডএ ভিআর রোবটটিকে চারটি ডিস্কে নেভিগেট করতে দেখুন।

- এই প্রজেক্টে, VR রোবট সামনের চোখের সেন্সর সবুজ রঙ সনাক্ত না করা পর্যন্ত এগিয়ে চলে।
- VR রোবট ডানদিকে 90 ডিগ্রী ঘোরে এবং নীল রঙ শনাক্ত না হওয়া পর্যন্ত আবার এগিয়ে যায়।
- VR রোবটটি তারপর বাম দিকে ঘুরবে এবং সামনের চোখের সেন্সর নীল শনাক্ত না করা পর্যন্ত সামনের দিকে ড্রাইভ করবে। একবার নীল রঙ শনাক্ত হয়ে গেলে, VR রোবট আবার বাম দিকে ঘুরবে।
- অবশেষে, VR রোবট সামনের চোখের সেন্সর নীল শনাক্ত না হওয়া পর্যন্ত এগিয়ে যায়, তারপর থামে।
- প্যাটার্নটি লক্ষ্য করুন যে যখন সামনের চোখের সেন্সর সবুজ শনাক্ত করে, তখন VR রোবট ডানদিকে ঘুরবে। যখন ফ্রন্ট আই সেন্সর নীল শনাক্ত করে, তখন ভিআর রোবটটি এই প্রকল্পে বাম দিকে ঘুরবে।
সুইচ ব্লক ব্যবহার করা
এখন পর্যন্ত, আপনি সবুজ ডিস্ক এবং তারপর তিনটি নীল ডিস্কে ড্রাইভ করার জন্য একটি প্রকল্প তৈরি করেছেন।
নীচের ছবিতে VEXcode ব্লক ব্যবহার করে পুরো প্রকল্পটি দেখানো হয়েছে, লাল রঙে বক্স করা তিনটি নীল ডিস্কে ড্রাইভ করার জন্য ব্যবহৃত পুনরাবৃত্তিমূলক আচরণগুলি সহ।

নিচের প্রকল্পটিতে এই একই VEXcode ব্লকগুলিকে একাধিক সুইচ ব্লকে রূপান্তরিত দেখানো হয়েছে।

এই শেষ প্রকল্পটি একই সুইচ ব্লক কমান্ডগুলিকে একটি সুইচ ব্লকের মধ্যে পাইথন কমান্ডে রূপান্তরিত করে দেখায়।

range(3): -এ repeat_count-এর জন্য হল Python কমান্ড যা রোবটকে বলে যে পরবর্তী ইন্ডেন্টেড কোড লাইনগুলি তিনবার পুনরাবৃত্তি করা উচিত। মনে রাখবেন যে for লুপের পরে আপনার একটি কোলন (:) অন্তর্ভুক্ত করা উচিত।
পরবর্তী কোডের লাইনগুলি হল সেই আচরণগুলি যা পুনরাবৃত্তি হবে। মনে রাখবেন যে এই আচরণগুলি 4 টি স্পেসের ডিফল্টে ইন্ডেন্ট করা হয়েছে।
অতিরিক্তভাবে, মনে রাখবেন যে শর্তসাপেক্ষে কমান্ডটি অন্তর্ভুক্ত রয়েছে, wait (5, MSEC)। VEXcode VR-তে, for লুপের সাথে সর্বদা একটি wait কমান্ড যোগ করা হয়। wait কমান্ডের উদ্দেশ্য হল VEXcode VR যাতে প্রকল্পটি যথাযথভাবে পরিচালনা করতে পারে তা নিশ্চিত করা, কারণ VEXcode VR প্ল্যাটফর্মটি ওয়েব-ভিত্তিক। for লুপ ব্যবহার করার সময় wait কমান্ডটি কখনই মুছে ফেলা উচিত নয়, অন্যথায় আপনার প্রকল্পটি ইচ্ছাকৃতভাবে নাও চলতে পারে।
লাইন, wait (5, MSEC) front_eye.detect(BLUE) কমান্ডের নিচে ইন্ডেন্ট করা আছে, কারণ ফ্রন্ট আই সেন্সর নীল রঙের জন্য পরীক্ষা করবে, প্রতিটি চেকের মধ্যে 5 MSEC বিরতি দেবে।
এই পাঠের বাকি অংশটি চালিয়ে যেতে পরবর্তী বোতামটি নির্বাচন করুন।