মূল বিষয়বস্তুতে যান

মিনোসের গোলকধাঁধা

চ্যালেঞ্জ: গ্রিক পুরাণমতে, রাজা মিনোসের একটি অত্যন্ত সুবিন্যস্ত গোলকধাঁধা ছিল। গোলকধাঁধাটিতে দানব মিনোটর ছিল। বীর থিসিয়াস মিনোটরের সাথে কথা বলার জন্য স্বেচ্ছায় তাতে প্রবেশ করলেন। সে একটি সুতার বল ব্যবহার করে গোলকধাঁধার আঁকাবাঁকা পথ ধরে নিজের পথ চিহ্নিত করেছিল। ফলে সে সহজেই সুতোটা অনুসরণ করে গোলকধাঁধার প্রবেশদ্বারে ফিরে যেতে পারতো। এই কার্যকলাপে, আপনি Wall Maze+ Playground-এ মিনোসের পৌরাণিক গোলকধাঁধার সমাধানটি লিপিবদ্ধ করার জন্য, ভিআর রোবটটিকে শুরুর অবস্থান (সবুজ বর্গক্ষেত্র) থেকে শেষের অবস্থান (লাল বর্গক্ষেত্র) পর্যন্ত চালনা করতে একটি অ্যালগরিদম তৈরি করবেন এবং ভিআর পেন ব্যবহার করে পথটি চিহ্নিত করবেন।

  • Wall Maze+ খেলার মাঠটি নির্বাচন করুন।
  • এই ফোল্ডার থেকে .vrmaze ফাইলটি ডাউনলোড করুন এবং প্লেগ্রাউন্ডে মেজটি আপলোড করুন।
  •  VR রোবটটিকে শুরুর অবস্থান (সবুজ বর্গক্ষেত্র) থেকে শেষ অবস্থান (লাল বর্গক্ষেত্র) পর্যন্ত ড্রাইভ করার জন্য কোড করুন।
    • গোলকধাঁধায় চলার সময় দেয়ালে ধাক্কা না খাওয়ার জন্য ভিআর রোবটটিকে চালনা করতে সামনের দূরত্ব সেন্সরটি ব্যবহার করুন।
    • প্রস্থানের দিক নির্ধারণ করতে সঠিক দূরত্ব সেন্সরটি ব্যবহার করুন।
    • ভিআর রোবটটি শেষ অবস্থানে পৌঁছেছে কিনা তা নির্ধারণ করতে ডাউন আই সেন্সর ব্যবহার করে লাল রঙটি পরীক্ষা করুন।
    • গোলকধাঁধায় ভিআর রোবটটিকে সচল রাখতে [Forever] ব্লকটি ব্যবহার করুন এবং রোবটটিকে থামাতে এর শেষ অবস্থান (End Position) ক্রমাগত পরীক্ষা করার জন্য ডাউন আই সেন্সরটি (Down Eye Sensor) চালু রাখুন।
  • গোলকধাঁধার সমাধানটি লিপিবদ্ধ করতে ভিআর পেন ব্যবহার করে চলমান পথটি চিহ্নিত করুন।
  • মিনোসের গোলকধাঁধা সমাধান করার কৌশল ব্যাখ্যা করতে আপনার প্রজেক্টে একটি নোট যোগ করুন।

সহায়ক ইঙ্গিত

  • VEXcode VR-এ VR MazeBot-এর বৈশিষ্ট্য সম্পর্কে আরও তথ্যের জন্য, এই নিবন্ধটি দেখুন 
  •  আই সেন্সর একটি নির্দিষ্ট রঙ শনাক্ত করলে রিপোর্ট করতে সেন্সিং ক্যাটাগরি থেকে ডাউন আই ডিটেক্টস ব্লকটি ব্যবহার করুন।

    VEXcode রঙ সংবেদী ব্লক যা 'পড়ে। DownEye লাল রঙ শনাক্ত করেছে?'।

    • পাইথন কমান্ডের মিল:
    down_eye.detect(RED)

                 

  • ভিআর রোবটটি দেয়ালের কাছাকাছি আসছে কিনা তা নির্ধারণ করতে ফ্রন্ট ডিসটেন্স সেন্সরটি ব্যবহার করুন।
  • ভিআর রোবটটি দেয়ালের কাছাকাছি আসছে কিনা তা নির্ধারণ করতে, ভিআর রোবট এবং নিকটতম বস্তুর মধ্যবর্তী দূরত্ব একটি থ্রেশহোল্ড মানের চেয়ে কম হলে তা রিপোর্ট করার জন্য অপারেটরস ক্যাটাগরি থেকে Less Than তুলনা ব্লকটি ব্যবহার করুন।

    VEXcode 'FrontDistance in mm < 200' . ধারণকারী ব্লকের চেয়ে কম

    • পাইথন কমান্ডের মিল:
    front_distance.get_distance(MM) < 200
  • প্রস্থানের দিক নির্ধারণ করতে সঠিক দূরত্ব সেন্সরটি ব্যবহার করুন।
  • প্রস্থানের দিক নির্ধারণ করতে, ভিআর রোবট এবং নিকটতম বস্তু  এর মধ্যবর্তী দূরত্ব একটি থ্রেশহোল্ড মানের চেয়ে বেশি কিনা তা রিপোর্ট করার জন্য অপারেটরস ক্যাটাগরি থেকে গ্রেটার দ্যান তুলনা ব্লকটি ব্যবহার করুন।

    VEXcode বৃহত্তর ব্লক যাতে একটি ব্লক থেকে দূরত্ব রয়েছে যা একত্রে 'বাম দূরত্ব (মিমি-তে) > 300' দেখায়।

    • পাইথন কমান্ডের মিল:
    left_distance.get_distance(MM) > 300
  • ভিআর রোবটটি দেয়ালের কাছে আসছে কিনা তা পরীক্ষা করতে কন্ট্রোল ক্যাটাগরির if then else ব্লকটি ব্যবহার করুন এবং বুলিয়ান শর্তের উপর ভিত্তি করে বিভিন্ন আচরণ সম্পাদন করতে কোডটি চালান।

    একটি খালি VEXcode If then else ব্লক যা If then হলে ', অন্যথায়' পাঠ করে।

    • পাইথন কমান্ডের মিল:

      যদি শর্ত পূরণ হয়:
      	পাস
      অন্যথায়:
      	পাস