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

লক্ষ্য স্থির করুন

একটি নির্দিষ্ট স্থানে অবস্থিত হিরো বটের জন্য আদর্শ উৎক্ষেপণ খুঁজে করার জন্য একটি অ্যালগরিদম তৈরি করুন, যাতে ট্রাইবলটি সফলভাবে গোলে প্রবেশ করানো নিশ্চিত হয়। হাইলাইট করা তিনটি ট্রাইবলের প্রত্যেকটি তুলে নিতে, (600, 600) স্থানাঙ্কে অবস্থিত অবস্থানে যেতে, আদর্শ দিকে ঘুরতে এবং রেড অ্যালায়েন্স গোলের দিকে ট্রাইবলটি নিক্ষেপ করতে হিরো বটকে কোড করার জন্য [Drive for] এবং [Turn to heading] ব্লক, GPS সেন্সর, আর্ম মোটর এবং ইনটেক মোটর ব্যবহার করুন। দ্রুততম সময়ে জয়ী!

  • VRC ভার্চুয়াল স্কিলস - ওভার আন্ডার প্লেগ্রাউন্ড নির্বাচন করুন।
  • রোবটের জন্য একটি শুরুর স্থান, একটি শুরুর দিক এবং রোবট প্রিলোড “না” নির্বাচন করতে প্রি-ম্যাচ চেকলিস্টটি ব্যবহার করুন।
  • রোবটটিকে একটি নির্দিষ্ট অবস্থানে চালনা করার জন্য একটি অ্যালগরিদম তৈরি করুন।
  • একটি নির্দিষ্ট স্থানে অবস্থিত ট্রাইবলটি তুলে নেওয়ার জন্য রোবটটিকে সঠিক অবস্থানে চালনা করতে একটি অ্যালগরিদম তৈরি করুন।
  • ট্রাইবলটিকে গোলে প্রবেশ করানোর জন্য একটি আদর্শ উৎক্ষেপণ দিক খুঁজে বের করতে একটি অ্যালগরিদম তৈরি করুন।
  • মাঠ থেকে একটি ট্রাইবল তোলার জন্য রোবটটিকে এমনভাবে কোড করতে হবে, যাতে এটি আর্ম মোটর ঘুরিয়ে আর্মটিকে পুরোপুরি নিচে নামাতে পারে।
  • হিরো বটকে (0,1500) স্থানাঙ্কে অবস্থিত হাইলাইট করা ট্রাইবলটি তুলে নিয়ে রেড অ্যালায়েন্সের গোলে গোল করার জন্য কোড করুন। 
    • (0, 1500) স্থানাঙ্কে অবস্থিত হাইলাইট করা ট্রাইবলটি তোলার জন্য রোবটটিকে একটি অবস্থানে নিয়ে যেতে অ্যালগরিদমটি ব্যবহার করুন।
    • ট্রাইবলটি তুলে নেওয়ার জন্য রোবটটিকে ইনটেক মোটর ঘোরানোর কোড দিন।
    • অ্যালগরিদম ব্যবহার করে রোবটটিকে (600, 600) স্থানাঙ্কে নিয়ে যান।
    • হিরো বটকে ট্রাইবলটি গোলে প্রবেশ করানোর জন্য একটি আদর্শ উৎক্ষেপণ দিক খুঁজে বের করতে অ্যালগরিদমটি ব্যবহার করুন। রোবটটিকে উৎক্ষেপণের দিকে ঘোরান।
    • ট্রাইবলটিকে রেড অ্যালায়েন্স গোলের দিকে উৎক্ষেপণ করার জন্য রোবটটিকে ইনটেক মোটরটি ঘোরানোর কোড দিন।
  • হিরো বটকে এমনভাবে কোড করুন যাতে এটি (1600, 1600) স্থানাঙ্কে অবস্থিত হাইলাইট করা ট্রাইবলটি তুলে নেয় এবং রেড অ্যালায়েন্স গোলে গোল করে।
  • হিরো বটকে (-125, 1075) স্থানাঙ্কে অবস্থিত হাইলাইট করা ট্রাইবলটি তুলে নিয়ে রেড অ্যালায়েন্সের গোলে গোল করার জন্য কোড দিন। 
  • টাইমারের মান প্রিন্ট কনসোলে প্রিন্ট করতে [print] ব্লকটি ব্যবহার করুন।

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

  • উৎক্ষেপণের জন্য একটি আদর্শ দিক খুঁজে পেতে ট্রাইবলটির একটি প্রত্যাশিত গতিপথ পরিকল্পনা করুন।
    • ট্রাইবলটির জন্য এমন একটি গতিপথ পরিকল্পনা করুন যাতে এটি পোস্ট, গোলের ফ্রেমের প্রান্ত বা গোলের ভেতরের ট্রাইবলগুলোর সাথে ধাক্কা না খায়।
    • লক্ষ্যবিন্দুতে পরিকল্পিত গতিপথের উপর একটি অবস্থানকে লক্ষ্যবিন্দু হিসেবে নির্বাচন করুন এবং লক্ষ্যবিন্দুটির X ও Y স্থানাঙ্ক চিহ্নিত করুন।
    • রোবটের স্থানাঙ্ক (x1,y1), লক্ষ্যবিন্দুর স্থানাঙ্ক (x2,y2) এবং atan ফাংশন ব্যবহার করে উৎক্ষেপণের দিক নির্ণয় করুন।
      • এই দুটি বিন্দুকে সংযোগকারী রেখার কোণ θ নির্ণয় করুন। 

        দুটি গাণিতিক রাশির চিত্র। প্রথম রাশিটি হলো 'θ সমান atan((y2 - y1) / (x2 - x1))'। দ্বিতীয় রাশিটি হলো: '- পাই/২, থিটার চেয়ে ছোট, যা আবার পাই/' এর চেয়ে ছোট।

        উপর থেকে নিচের গাণিতিক ডায়াগ্রামটি দেখাচ্ছে যে রোবটটি (X1, Y1) স্থানাঙ্কে রয়েছে এবং একটি রেখা (X2, Y2) স্থানাঙ্কের দিকে নির্দেশ করছে। দূরত্বকে d চলক দ্বারা এবং কোণকে θ চলক দ্বারা চিহ্নিত করা হয়। বিন্দু দুটির মধ্যবর্তী আনুভূমিক দূরত্বকে 'x2 - x1'এবং উল্লম্ব দূরত্বকে '= y2 - y1' দ্বারা প্রকাশ করা হয়।

    • কোণ থিটা (θ)-কে রোবটের হেডিং-এ রূপান্তর করুন।

      গাণিতিক এক্সপ্রেশনের জন্য সিউডোকোড উদাহরণ (শুরুর দিক: উত্তর):

      যদি X1, X2-এর সমান হয়:
      	যদি Y2 > Y1 হয়:
      		হেডিং = 0
      	অন্যথায়:
      		হেডিং = 180
      অন্যথায়:
      	যদি X2 > X1 হয়:
      		হেডিং = 90 - atan((Y2 - Y1) / (X2 - X1))
      	অন্যথায়:
      		হেডিং = 270 - atan((Y2 - Y1) / (X2 - X1))

      উপর থেকে নিচের দিকে আঁকা ডায়াগ্রামটিতে রোবটটিকে একটি বৃত্তের মধ্যে দেখানো হয়েছে, যেটিতে'থেকে ৩৬০ ডিগ্রি পর্যন্ত লেবেল দিয়ে বৃত্তটিকে চিহ্নিত করা হয়েছে।

    • অপারেটরস ক্যাটাগরি থেকে ফাংশন ব্লক ব্যবহার করুন এবং atan ফাংশন নির্বাচন করে থিটা (θ) কোণটি গণনা করুন।

      একটি খালি VEXcode ফাংশন ব্লক যা 'atan of blank' পড়ে।

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

        math.atan( ) / math.pi * 180

ভিআরসি ওভার আন্ডার প্লেগ্রাউন্ডে জিপিএস সেন্সর ব্যবহার সম্পর্কে আরও তথ্যের জন্য, অনুগ্রহ করে এখানে ক্লিক