Skip to main content

পাঠ ৩: তড়িৎচুম্বকের সাহায্যে সেন্সর ব্যবহার করা

আগের পাঠে, আপনি VR রোবট ব্যবহার করে Disk Mover Playground এ ডিস্কগুলি তুলে নেওয়ার এবং সরানোর জন্য energize কমান্ড এবং Drivetrain কমান্ড ব্যবহার করেছিলেন। এই পাঠটি রিপোর্ট করা সেন্সর প্রতিক্রিয়া এবং এবং লুপ ব্যবহার করে একই চ্যালেঞ্জ সমাধান করবে।

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

শেখার ফলাফল

  • down_eye.near_object কমান্ডটি রিপোর্ট করে যে ডাউন আই সেন্সরটি কোনও বস্তুর এত কাছে আছে যে রঙ সনাক্ত করতে পারে।
  • turn_to_heading কমান্ডটি Gyro সেন্সর ব্যবহার করে একটি ড্রাইভট্রেনকে একটি নির্দিষ্ট শিরোনামে পরিণত করে কিনা তা চিহ্নিত করুন।
  • জাইরো সেন্সরের বর্তমান শিরোনামের উপর ভিত্তি করে turn_to_heading কমান্ডটি কোন দিকে ঘুরতে হবে তা নির্ধারণ করবে তা চিহ্নিত করুন।
  • ব্যাখ্যা করো কেন turn অথবা turn_for কমান্ডের পরিবর্তে turn_to_heading কমান্ড ব্যবহার করা হবে।
  • একটি প্রকল্পের প্রবাহ বর্ণনা করো যেখানেwhileলুপ ব্যবহার করা হয় যার মধ্যেনয়শর্ত থাকে যা ইলেক্ট্রোম্যাগনেট ব্যবহার করে একটি ডিস্ক তুলে নেয় এবং সরায়।

ডিস্ক মুভার সমস্যা সমাধানের জন্য কেন সেন্সর ব্যবহার করবেন?

পাঠ ২-এ, ভিআর রোবট drive_for কমান্ড ব্যবহার করে একটি নির্দিষ্ট দূরত্ব ড্রাইভ করেছে যাতে একটি নীল ডিস্ক তুলে লক্ষ্যস্থলে ফিরিয়ে আনা যায়। ডিস্ক মুভার প্লেগ্রাউন্ড-এ গ্রিড স্কোয়ারের মাত্রা ব্যবহার করে VR রোবট এবং প্রথম নীল ডিস্কের মধ্যে দূরত্ব অনুমান এবং পরীক্ষা করা হয়েছিল। যদিও এটি চ্যালেঞ্জটি সমাধান করেছে, বিভিন্ন দূরত্বে একাধিক ডিস্ক তোলার প্রক্রিয়াটি নকল করার ক্ষেত্রে ত্রুটির অনেক জায়গা রয়েছে, যা এই ইউনিটের শেষে ডিস্ক মুভার চ্যালেঞ্জ সমাধানের জন্য প্রয়োজনীয়। রিপোর্ট করা সেন্সর ফিডব্যাক ব্যবহার করা এই চ্যালেঞ্জ সমাধানের জন্য আরও কার্যকর উপায়, একই সাথে কম কমান্ড ব্যবহার করে প্রকল্পটি অপ্টিমাইজ করাও সম্ভব।

যদি ভিআর রোবটটি একটি ডিস্কের সাথে সংঘর্ষে লিপ্ত হয় এবং পথ থেকে সরে যায়? যদি ডিস্কগুলো লক্ষ্য থেকে একটু ভিন্ন স্থানে থাকে? সেন্সর থেকে প্রাপ্ত প্রতিক্রিয়া ডিস্ক মুভার প্লেগ্রাউন্ডএ ডিস্কগুলির সঠিক অবস্থান না জেনেও সঠিকভাবে তুলে নিতে এবং সরাতে ব্যবহার করা যেতে পারে।

প্রকল্পে কোন সেন্সর ব্যবহার করা হবে তা নির্ধারণে চ্যালেঞ্জ সমাধানের পদক্ষেপগুলি ব্যবহার করা যেতে পারে।

  • প্রথম: ভিআর রোবটটি প্রথম ডিস্কে ড্রাইভ করবে।

    শুরুতে ডিস্ক মুভার খেলার মাঠের উপর থেকে নিচের দৃশ্য, নীচের বাম কোণে নীল গোলের মাঝখানে ভিআর রোবটটি। রোবটের সামনের দিক থেকে সামনের প্রথম নীল ডিস্কের দিকে একটি বিন্দুযুক্ত তীর নির্দেশ করে, যা রোবটের উদ্দেশ্যমূলক গতিবিধি চিত্রিত করে।
    • ডিস্কগুলি খেলার মাঠের মাটিতে রয়েছে। ডিস্কটি কোথায় অবস্থিত তা নির্ধারণ করতে, ডাউন আই সেন্সরটি down_eye.near_objectকমান্ডের সাহায্যে ব্যবহার করা যেতে পারে। VR রোবটের ইলেক্ট্রোম্যাগনেটের সাথে সম্পর্কিত ডাউন আই সেন্সরের অবস্থানটি লক্ষ্য করুন। 

      ভিআর রোবটের নিচের দিকে রোবটের সামনের কেন্দ্রে, ইলেক্ট্রোম্যাগনেটের ঠিক পিছনে অবস্থিত ডাউন আই সেন্সরটি দেখানো হয়েছে।
  • দ্বিতীয়: VR রোবট প্রথম ডিস্কটি তুলতে ইলেক্ট্রোম্যাগনেট ব্যবহার করবে।

    প্রথম নীল ডিস্কের অবস্থানে খেলার মাঠে ভিআর রোবটের একটি পার্শ্ব দৃশ্য, যেখানে ডিস্কটি ইলেক্ট্রোম্যাগনেটের সাথে সংযুক্ত।
  • তৃতীয়: ভিআর রোবট লক্ষ্যে ফিরে যাবে।

    প্রথম নীল ডিস্কে ভিআর রোবট সহ ডিস্ক মুভার খেলার মাঠের উপর থেকে নিচের দৃশ্য, এবং রোবটের পিছন থেকে নীল গোলের দিকে নির্দেশিত একটি বিন্দুযুক্ত তীর, যা রোবটের উদ্দেশ্যমূলক গতিবিধি চিত্রিত করে।
    • লক্ষ্যে ফিরে যাওয়ার সময়, VR রোবটটি কখন ড্রাইভিং বন্ধ করতে হবে তা নির্ধারণ করতে দূরত্ব সেন্সর ব্যবহার করতে পারে। খেলার মাঠের দেয়াল থেকে ভিআর রোবটের সামনের অংশ কত দূরে তা নির্ধারণ করতে দূরত্ব সেন্সর ব্যবহার করা যেতে পারে। get_distanceকমান্ড ব্যবহার করে, দূরত্ব সেন্সরটি প্রাচীর থেকে একটি নির্দিষ্ট দূরত্বে থাকা অবস্থায় গাড়ি চালাতে এবং থামাতে পারে, VR রোবটটিকে লক্ষ্য স্থানে স্থাপন করে।

      ইলেক্ট্রোম্যাগনেটের ঠিক উপরে, রোবটের সামনের কেন্দ্রে হাইলাইট করা ফ্রন্ট ডিসট্যান্স সেন্সর সহ ভিআর রোবটের সামনের দৃশ্য।
  • অবশেষে: ভিআর রোবটটি ডিস্কটিকে গোলকটিতে ফেলে দেওয়ার জন্য ইলেক্ট্রোম্যাগনেট ব্যবহার করবে।

    নীল গোলকটিতে ভিআর রোবটের একটি পার্শ্ব দৃশ্য, খেলার মাঠের পিছনের দেয়ালের দিকে মুখ করে, নীল ডিস্কটি গোলকটিতে ফেলে দিয়েছে।

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