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

অবস্থানগুলি আনলক করুন

ফুল ভলিউম ভার্চুয়াল স্কিলস ফিল্ডে একটি স্থানাঙ্ক ব্যবস্থা তৈরি করুন, যেখানে লাল বিন্দুর অবস্থান হবে মূলবিন্দু (0, 0) এবং হিরো বট সেন্টারের প্রাথমিক অবস্থান হবে (0, 36) স্থানাঙ্কে। কমলা রঙে হাইলাইট করা লাল ব্লকটি তুলে নিতে, সেটিকে স্কোর করে গোল Iএ পরিণত করতে, এবং রোবটটিকে সাপ্লাই জোনে আংশিকভাবে পার্ক করতে হিরো বটকে কোড করার জন্য [Drive for], [Turn for], [Spin ​​to position], এবং [Spin ​​for ব্লকগুলি ব্যবহার করুন। রোবটটির লাল ব্লকটি তুলে নিয়ে স্কোর করার স্থানের X ও Y স্থানাঙ্ক এবং হিরো বটটিকে পার্ক করার স্থানের X ও Y স্থানাঙ্ক নির্ণয় করার জন্য একটি অ্যালগরিদম তৈরি করুন।

  • VIQRC ভার্চুয়াল স্কিলস - ফুল ভলিউম প্লেগ্রাউন্ড নির্বাচন করুন।
  • ড্রাইভ দূরত্ব এবং ড্রাইভট্রেন হেডিং ব্যবহার করে একটি নির্দিষ্ট দূরত্ব অতিক্রম করার পর রোবটের অবস্থানের X এবং Y স্থানাঙ্ক গণনা ও লিপিবদ্ধ করার জন্য একটি অ্যালগরিদম তৈরি করুন 
  • হিরো বটকে এমনভাবে কোড করুন যাতে এটি কমলা রঙে চিহ্নিত লাল ব্লকটির কাছে গিয়ে সেটি তুলে আনে। 
    • রোবটটির অবস্থানের X এবং Y স্থানাঙ্ক নির্ণয় করতে অ্যালগরিদমটি ব্যবহার করুন।
  • রোবট যাতে ব্লকটি তুলে নিতে পারে, সেই স্থানের X এবং Y স্থানাঙ্ক প্রিন্ট কনসোলে প্রিন্ট করতে [প্রিন্ট] ব্লকটি ব্যবহার করুন।
  • হিরো বটকে গোল I-এর দিকে চালনা করতে এবং ব্লকটি গোলের মধ্যে ফেলতে কোড করুন। 
    • রোবটটির অবস্থানের X এবং Y স্থানাঙ্ক নির্ণয় করতে অ্যালগরিদমটি ব্যবহার করুন।
  • রোবটটি যাতে গোল I-তে ব্লকটি ফেলতে পারে, সেই স্থানের X এবং Y স্থানাঙ্ক প্রিন্ট কনসোলে প্রিন্ট করতে [print] ব্লকটি ব্যবহার করুন।
  • হিরো বটটিকে এমন একটি অবস্থানে নিয়ে যান যাতে এটি আংশিকভাবে সাপ্লাই জোনের মধ্যে থাকে।
    • রোবটটির অবস্থানের X এবং Y স্থানাঙ্ক নির্ণয় করতে অ্যালগরিদমটি ব্যবহার করুন।
  • সাপ্লাই জোনের মধ্যে রোবটটিকে আংশিকভাবে পার্ক করার স্থানের X এবং Y স্থানাঙ্ক প্রিন্ট কনসোলে প্রিন্ট করতে [প্রিন্ট] ব্লকটি ব্যবহার করুন।

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

  • VIQRC ভার্চুয়াল স্কিলস ফিল্ডে হিরো বটের X এবং Y স্থানাঙ্ক শনাক্ত করতে, হিরো বটের প্রাথমিক অবস্থানকে স্থানাঙ্ক ব্যবস্থার মূলবিন্দু (0,0) হিসাবে সেট করুন 
  • হিরো বটের X এবং Y স্থানাঙ্ক সংরক্ষণের জন্য দুটি ভেরিয়েবল ঘোষণা করুন। প্রজেক্টের শুরুতে X এবং Y স্থানাঙ্কের মান 0 সেট করতে Variables ক্যাটাগরি থেকে set ব্লকগুলো ব্যবহার করুন।  VEXcode সেট ভেরিয়েবল ব্লক যা 'পড়ে currentX-কে 0' এ সেট করে। VEXcode সেট ভেরিয়েবল ব্লক যা 'পড়ে currentY কে 36' এ সেট করে।
    • পাইথন কমান্ডের মিল:

      বর্তমানX = 0
      বর্তমানY = 36
  • ইনার্শিয়াল সেন্সর থেকে ড্রাইভট্রেন হেডিং মান পেতে সেন্সিং ক্যাটাগরির রিপোর্টার ব্লকগুলো ব্যবহার করুন। VEXcode ড্রাইভ হেডিং ব্লক যা 'ড্রাইভ হেডিংকে ডিগ্রি' এ পড়ে।
    • পাইথন কমান্ডের মিল:

      ড্রাইভট্রেন.হেডিং(ডিগ্রি)
  • একটি নির্দিষ্ট দূরত্ব গাড়ি চালানোর পর, চালিত দূরত্ব এবং ড্রাইভট্রেনের দিক ব্যবহার করে X এবং Y স্থানাঙ্ক গণনা করুন।
    • গাণিতিক ফাংশন (এগিয়ে চালনা):

      X2 = X1+ ড্রাইভ_দূরত্ব * sin (ড্রাইভ_হেডিং)

      Y2 = Y1+ ড্রাইভ_দূরত্ব * cos (ড্রাইভ_হেডিং)

      হিরো বটকে বৈশিষ্ট্যযুক্ত দুটি পাশাপাশি, উপর থেকে নিচের দিকে দেখানো ডায়াগ্রাম। প্রথম চিত্রটিতে রোবটটিকে একটি বৃত্তসহ দেখানো হয়েছে, যেখানে বৃত্তটির ৩৬০ ডিগ্রিকে চিহ্নিত করা হয়েছে। দ্বিতীয় চিত্রে রোবটটিকে (X1, Y1) স্থানাঙ্কে দেখানো হয়েছে এবং এটি (X2, Y2) বিন্দুর দিকে নির্দেশ করছে। দূরত্বকে 'ড্রাইভ দূরত্ব' হিসেবে চিহ্নিত করা হয় এবং কোণটিকে থিটা প্রতীক দ্বারা চিহ্নিত করা হয়।

  •  গাণিতিক ফাংশন প্রকাশ করতে অপারেটরস ক্যাটাগরির ফাংশন ব্লকটি ব্যবহার করুন। ব্লক সমীকরণ সহ দুটি VEXcode সেট ভেরিয়েবল ব্লকের একটি স্ট্যাক। প্রথম ব্লকটি পড়ে: 'set currentX to currentX + drive_distance * sin of drive heading in degrees'. দ্বিতীয় ব্লকটিতে লেখা আছে 'set currentY to currentY + drive_distance * cos of drive heading in degrees'.
    • মিলে যাওয়া পাইথন কমান্ড: 

      বর্তমানX = বর্তমানX + ড্রাইভ_দূরত্ব * math.sin(ড্রাইভট্রেন.হেডিং(ডিগ্রি) / 180.0 * math.pi)
      বর্তমানY = বর্তমানY + ড্রাইভ_দূরত্ব * math.cos(ড্রাইভট্রেন.হেডিং(ডিগ্রি) / 180.0 * math.pi)
  • VIQRC ভার্চুয়াল স্কিলস ফিল্ড ডাইমেনশনস সম্পর্কে আরও তথ্যের জন্য, অনুগ্রহ করে এখানে ক্লিক