রোবট-নির্দিষ্ট ব্লক#

ভূমিকা#

হিরো বট ফ্লেক্স-এ একটি ক্ল-মোটর, একটি আর্ম-মোটর, একটি এআই ভিশন সেন্সর, একটি ডিসটেন্স সেন্সর এবং একটি গেম পজিশনিং সিস্টেম (জিপিএস) সেন্সর অন্তর্ভুক্ত রয়েছে।

সকল স্ট্যান্ডার্ড VEXcode VR ব্লক V5 26-27 ওভাররাইড প্লেগ্রাউন্ডে ব্যবহারের জন্য উপলব্ধ।

নিচে রোবটের জন্য উপলব্ধ সকল ব্লকের একটি তালিকা দেওয়া হলো:

ড্রাইভট্রেন – রোবটটিকে চালনা ও ঘোরানোর কাজ করে।

গতি – রোবটের মোটরগুলোকে চালনা ও অনুসরণ করা।

এআই ভিশন – এআই ভিশন সেন্সর ব্যবহার করে বস্তুসমূহ ধারণ ও বিশ্লেষণ করুন।

  • কর্ম

    • অবজেক্ট ডেটা পান – একটি নির্দিষ্ট সিগনেচারের জন্য ডেটা ক্যাপচার করে, যেমন একটি সনাক্তকৃত এআই ক্লাসিফিকেশন।

  • সেটিংস

  • মূল্যবোধ

    • অবজেক্ট বিদ্যমান – কোনো শ্রেণিবিন্যাস সনাক্ত করা হয়েছে কিনা তা ফেরত দেয়।

    • object is – কোনো শ্রেণিবিন্যাস সনাক্ত করা হলে ফেরত দেয়।

    • অবজেক্টটি এপ্রিলট্যাগ – সনাক্ত করা অবজেক্টটি একটি নির্দিষ্ট ID-র সাথে মেলে এমন একটি এপ্রিলট্যাগ কিনা তা ফেরত দেয়।

    • অবজেক্ট সংখ্যা – কতগুলি অবজেক্ট সনাক্ত করা হয়েছে তা ফেরত দেয়।

    • অবজেক্ট প্রপার্টি – নিম্নলিখিত বিবরণ ফেরত দেয়:

      • প্রস্থ এবং উচ্চতা – বস্তুটির আকার।

      • centerX & centerY – সেন্সরের দৃষ্টিসীমার মধ্যে কেন্দ্রের অবস্থানের স্থানাঙ্ক।

      • originX & originY – সেন্সরের ভিউতে উপরের-বাম কোণার অবস্থানের স্থানাঙ্ক।

সংবেদন – রোবটের বিভিন্ন সেন্সর ব্যবহার করুন।

  • দূরত্ব

  • জিপিএস

    • GPS অবস্থান – GPS সেন্সর থেকে X অথবা Y অবস্থান ফেরত দেয়।

    • GPS heading – রোবটটি বর্তমানে যে দিকে মুখ করে আছে সেই দিকটি ফেরত দেয়।

এই পৃষ্ঠার উদাহরণগুলিতে প্লেগ্রাউন্ডের প্রি-ম্যাচ চেকলিস্ট থেকে স্টার্টিং লোকেশন C ব্যবহার করা হয়েছে।

ড্রাইভট্রেন#

ড্রাইভট্রেন ভিআর রোবটের চালনা ও মোড় নেওয়া নিয়ন্ত্রণ করে। ড্রাইভট্রেনটি সামনে বা পেছনে যেতে, বামে বা ডানে ঘুরতে, নির্দিষ্ট দিকে ঘুরতে এবং নিজের ঘূর্ণন অনুসরণ করতে পারে।

কর্ম#

ড্রাইভ#

ড্রাইভ স্ট্যাক ব্লকটি রোবটটিকে অবিরাম সামনে বা পেছনে চালনা করে। রোবটটি ততক্ষণ চলতে থাকবে যতক্ষণ না এটিকে মোড় নেওয়া বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।

[সামনে v] দিকে চালাও

প্যারামিটার

বর্ণনা

দিকনির্দেশনা

রোবটটি যেদিকে যাবে: সামনে অথবা পেছনে।

উদাহরণ

শুরু হলে :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে চালাও
(0.5) সেকেন্ড অপেক্ষা করো
চালানো বন্ধ করো
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

ড্রাইভ ফর#

স্ট্যাক ব্লকের ড্রাইভটি রোবটকে একটি নির্দিষ্ট দূরত্ব পর্যন্ত সামনে বা পেছনে চালিত করে। রোবটটির চলাচল শেষ না হওয়া পর্যন্ত প্রকল্পটি অপেক্ষা করবে এবং তারপরেই স্ট্যাকের পরবর্তী ব্লকটি চলবে।

[সামনে v] দিকে (200) [mm v] চালাও ▶

প্যারামিটার

বর্ণনা

দিকনির্দেশনা

রোবটটি যেদিকে যাবে: সামনে অথবা পেছনে।

দূরত্ব

রোবটটি যে দূরত্ব অতিক্রম করে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে।

ইউনিট

দূরত্বের একক: মিমি (মিলিমিটার) বা ইঞ্চি

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

পালা#

টার্ন স্ট্যাক ব্লকটি রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়। রোবটটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে চালানো বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।

[ডান v] দিকে ঘোরো

প্যারামিটার

বর্ণনা

দিকনির্দেশনা

রোবটটি যেদিকে ঘোরে: বামে অথবা ডানে।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
[বাম v] দিকে ঘোরো
(0.78) সেকেন্ড অপেক্ষা করো
চালানো বন্ধ করো
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

জন্য ঘুরুন#

স্ট্যাক ব্লকের ‘টার্ন ফর’ অংশটি রোবটকে একটি নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়। এই ঘূর্ণনটি রোবটের বর্তমান অবস্থানের সাপেক্ষে হয়। রোবটের ঘূর্ণন শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই স্ট্যাকের পরবর্তী ব্লকটি চালু হবে।

[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶

প্যারামিটার

বর্ণনা

দিকনির্দেশনা

রোবটটি যেদিকে ঘোরে: বামে অথবা ডানে।

কোণ

রোবটটি যত ডিগ্রি ঘোরে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে।

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

শিরোনামে যান#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। টার্ন টু হেডিং স্ট্যাক ব্লকটি রোবটকে -৩৫৯ থেকে ৩৫৯ ডিগ্রির মধ্যে একটি নির্দিষ্ট হেডিং-এর দিকে ঘোরায়। রোবটটি লক্ষ্য হেডিং-এ পৌঁছানোর জন্য সবচেয়ে ছোট পথটি বেছে নেবে।

প্রারম্ভিক কোণ ০ ডিগ্রি।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই স্তূপের পরবর্তী ব্লকটি চলবে।

(90) ডিগ্রি দিকনির্দেশে ঘোরো ▶

প্যারামিটার

বর্ণনা

শিরোনাম

রোবটটির অভিমুখ হবে -৩৫৯ থেকে ৩৫৯ ডিগ্রির মধ্যে।

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
(-110) ডিগ্রি দিকনির্দেশে ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

ঘূর্ণনে পরিণত করুন#

টার্ন টু রোটেশন স্ট্যাক ব্লকটি রোবটকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।

ঘূর্ণন হল রোবটের ঘুরে যাওয়া, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রকল্পের শুরুতে, ঘূর্ণনের মান 0 ডিগ্রিতে সেট করা হয়। set drive rotation ব্লক ব্যবহার করেও ঘূর্ণন সেট করা যেতে পারে।

ঘূর্ণনের মান পরম। এর মানে হলো, মোড় নেওয়ার দিকটি রোবটের বর্তমান ঘূর্ণনের উপর নির্ভর করে। ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে।

উদাহরণস্বরূপ, যদি রোবটটি ০ ডিগ্রি থেকে শুরু করে এবং আপনি এটিকে ৭২০ ডিগ্রি ঘোরান, তবে এটি দুইবার ডানদিকে ঘুরবে। এরপর যদি আপনি এটিকে ৩৬০ ডিগ্রি ঘোরান, তবে এটি একবার বামদিকে ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই স্তূপের পরবর্তী ব্লকটি চলবে।

(90) ডিগ্রি ঘূর্ণনে ঘোরো ▶

প্যারামিটার

বর্ণনা

ঘূর্ণন

রোবটটি যে ঘূর্ণন মানে (ডিগ্রিতে) ঘুরবে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে।

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
(-110) ডিগ্রি ঘূর্ণনে ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

গাড়ি চালানো বন্ধ করুন#

স্টপ ড্রাইভিং স্ট্যাক ব্লকটি রোবটের চলাচল থামিয়ে দেয়।

চালানো বন্ধ করো

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে চালাও
(0.5) সেকেন্ড অপেক্ষা করো
চালানো বন্ধ করো
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

সেটিংস#

ড্রাইভ বেগ সেট করুন#

সেট ড্রাইভ ভেলোসিটি স্ট্যাক ব্লকটি রোবটকে বলে দেয় সে কত দ্রুত চলবে। উচ্চতর শতাংশ রোবটকে দ্রুত এবং নিম্নতর শতাংশ রোবটকে ধীরে চালাতে সাহায্য করে।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে চলার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।

চালানোর গতি (50) [% v] সেট করো

প্যারামিটার

বর্ণনা

বেগ

০% থেকে ১০০% পর্যন্ত চালনার গতি।

ইউনিট

বেগের একক: %

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
চালানোর গতি (100) [% v] সেট করো
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মোড় নেওয়ার গতি নির্ধারণ করুন#

সেট টার্ন ভেলোসিটি স্ট্যাক ব্লকটি রোবটকে বলে দেয় সে কত দ্রুত ঘুরবে। উচ্চতর শতাংশ রোবটকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ রোবটকে ধীরে ঘোরায়।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত ঘোরাতে পারে, কিন্তু তা কম নির্ভুল হতে পারে। নিম্ন বেগ রোবটকে ধীরে ঘোরাতে পারে, কিন্তু তা আরও নির্ভুল হতে পারে।

ঘোরার গতি (50) [% v] সেট করো

প্যারামিটার

বর্ণনা

বেগ

০% থেকে ১০০% পর্যন্ত মোড় নেওয়ার বেগ।

ইউনিট

বেগের একক: %

উদাহরণ

শুরু হলে :: hat events
[Turn to face the Neutral Goal faster.]
ঘোরার গতি (100) [% v] সেট করো
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶

ড্রাইভ হেডিং সেট করুন#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। সেট ড্রাইভ হেডিং স্ট্যাক ব্লকটি রোবটের বর্তমান হেডিং পরিবর্তন করে একটি নতুন হেডিং মানে সেট করে।

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে মুখ করে থাকে, তবে হেডিং ০ ডিগ্রিতে সেট করলে সেই ডানমুখী অবস্থানটিই নতুন ০ ডিগ্রি হয়ে যায়। এরপর রোবটটি সেই নতুন হেডিং-এর উপর ভিত্তি করে অন্যান্য অবস্থানে ঘুরতে পারে।

চালানোর দিকনির্দেশ (0) ডিগ্রি সেট করো

প্যারামিটার

বর্ণনা

শিরোনাম

রোবটের জন্য নির্ধারণ করার হেডিং মান, ডিগ্রিতে।

উদাহরণ

শুরু হলে :: hat events
[Make facing the Neutral Goal the new heading.]
চালানোর দিকনির্দেশ (110) ডিগ্রি সেট করো
(0) ডিগ্রি দিকনির্দেশে ঘোরো ▶

ড্রাইভ ঘূর্ণন সেট করুন#

রোবটটি কতটা ঘুরেছে, তাকেই রোটেশন বলা হয়, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। সেট ড্রাইভ রোটেশন স্ট্যাক ব্লকটি রোবটের বর্তমান রোটেশনকে একটি নতুন মানে পরিবর্তন করে।

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে দুটি পূর্ণ পাক ঘুরে থাকে, তবে এর ঘূর্ণন মান হবে ৭২০ ডিগ্রি। ঘূর্ণন মান ০ ডিগ্রিতে সেট করলে তা ৭২০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর রোবটটি সেই নতুন মানের উপর ভিত্তি করে ঘুরতে পারবে।

চালানোর ঘূর্ণন (0) ডিগ্রি সেট করো

প্যারামিটার

বর্ণনা

ঘূর্ণন

রোবটের জন্য ঘূর্ণনের মান, ডিগ্রিতে, নির্ধারণ করতে হবে। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে।

উদাহরণ

শুরু হলে :: hat events
[Make facing the Neutral Goal the new rotation.]
চালানোর ঘূর্ণন (110) ডিগ্রি সেট করো
(0) ডিগ্রি ঘূর্ণনে ঘোরো ▶

ড্রাইভ টাইমআউট সেট করুন#

সেট ড্রাইভ টাইমআউট স্ট্যাক ব্লকটি নির্ধারণ করে যে রোবটটি একটি মুভমেন্ট শেষ করার জন্য কত সেকেন্ড চেষ্টা করবে। যদি রোবটটি সেই সময়ের মধ্যে কাজটি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং স্ট্যাকের পরবর্তী ব্লকে চলে যাবে। এর ফলে রোবটটি কোনো একটি মুভমেন্টে আটকে যায় না।

চালানোর টাইমআউট (1) সেকেন্ড সেট করো

প্যারামিটার

বর্ণনা

সময়

রোবটটি একটি নড়াচড়া শেষ করার জন্য যত সেকেন্ড চেষ্টা করতে পারে। এটি একটি পূর্ণ সংখ্যা বা দশমিক সংখ্যা হতে পারে।

উদাহরণ

শুরু হলে :: hat events
[Turn to face the Neutral Goal.]
চালানোর টাইমআউট (0.8) সেকেন্ড সেট করো
[বাম v] দিকে (180) ডিগ্রি ঘোরো ▶

মূল্যবোধ#

ড্রাইভ শেষ হয়েছে#

ড্রাইভ শেষ হয়েছে বুলিয়ান ব্লকটি জানায় যে রোবটটির চলাচল শেষ হয়েছে কিনা। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • সত্য — রোবটটির নড়াচড়া শেষ হয়েছে।

  • মিথ্যা — রোবটটি এখনও চলছে।

এই ব্লকটি সেইসব ড্রাইভট্রেইন ব্লকের সাথে একত্রে কাজ করে যেগুলিতে এবং অপেক্ষা করবেন না প্যারামিটারটি রয়েছে।

<চালানো সম্পন্ন?>

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Score a Pin in a Neutral Goal.]
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ◀ এবং অপেক্ষা করো না
<চালানো সম্পন্ন?> না হওয়া পর্যন্ত অপেক্ষা করো
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

ড্রাইভটি সরছে#

drive is moving বুলিয়ান ব্লকটি জানায় যে রোবটটি চলছে কি না। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • সত্য — রোবটটি চলছে।

  • মিথ্যা — রোবটটি নড়ছে না।

এই ব্লকটি সেইসব ড্রাইভট্রেইন ব্লকের সাথে একত্রে কাজ করে যেগুলিতে এবং অপেক্ষা করবেন না প্যারামিটারটি রয়েছে।

<চালানো চলছে?>

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Raise the Arm once stopped near the Goal.]
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ◀ এবং অপেক্ষা করো না
যখন <চালানো চলছে?>
(0.005) সেকেন্ড অপেক্ষা করো
अंत
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶

ড্রাইভের শিরোনাম#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। ড্রাইভ হেডিং রিপোর্টার ব্লকটি ০ থেকে ৩৫৯.৯৯ ডিগ্রি পর্যন্ত হেডিং রিপোর্ট করে।

রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

(ডিগ্রিতে চালানোর দিকনির্দেশ)

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Turn to the Goal, then show heading.]
[ডান v] দিকে (450) ডিগ্রি ঘোরো ▶
স্ক্রিনে (ডিগ্রিতে চালানোর দিকনির্দেশ) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও

ড্রাইভ ঘূর্ণন#

রোবটটি কতটা ঘুরেছে, তাকেই রোটেশন বলা হয়, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। ড্রাইভ রোটেশন রিপোর্টার ব্লকটি রোবটের বর্তমান রোটেশন রিপোর্ট করে।

ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে। উদাহরণস্বরূপ, ডানদিকে দুটি পূর্ণ পাক দিলে ৭২০ ডিগ্রি ঘূর্ণন দেখানো হবে।

(ডিগ্রিতে চালানোর ঘূর্ণন)

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Spin to find a Pin, then show rotation.]
[ডান v] দিকে (450) ডিগ্রি ঘোরো ▶
স্ক্রিনে (ডিগ্রিতে চালানোর ঘূর্ণন) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও

ড্রাইভ বেগ#

ড্রাইভ ভেলোসিটি রিপোর্টার ব্লকটি জানায় রোবটটি কত দ্রুত চলছে।

([% v]-এ চালানোর গতি)

প্যারামিটার

বর্ণনা

ইউনিট

বেগের একক: %

উদাহরণ

শুরু হলে :: hat events
[Show speed while driving to the Goal.]
[সামনে v] দিকে (150) [mm v] চালাও ▶
স্ক্রিনে ([% v]-এ চালানোর গতি) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও

গতি#

ফ্লেক্স হাতটি উপরে তুলতে ও নিচে নামাতে আর্মমোটর এবং নখরটি খুলতে ও বন্ধ করতে ক্লমোটর ব্যবহার করে।

প্রতিটি মোটরের নিজস্ব দিক পরিবর্তনের বিকল্প রয়েছে। দিকগুলোর নাম বর্ণনা করে যে, ফ্লেক্স-এর উপর মোটরটি কীভাবে চলে।

কর্ম#

স্পিন মোটর#

স্পিন মোটর স্ট্যাক ব্লকটি একটি মোটরকে দুটি দিকের যেকোনো একটিতে অনির্দিষ্টকালের জন্য ঘোরায়। মোটরটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে অন্য কোনো কাজ দেওয়া হয়, যেমন—ভিন্ন দিকে ঘোরানো বা থামানো।

[ArmMotor v] [উপরে v] ঘোরাও

প্যারামিটার

বর্ণনা

মোটর

ঘোরানোর জন্য মোটর: আর্ম মোটর অথবা ক্ল মোটর।

দিকনির্দেশনা

মোটরের ঘোরার দিক:

  • আর্ম মোটর — উপরে বা নিচে
  • ক্ল মোটর — খোলা বা বন্ধ

উদাহরণ

শুরু হলে
[Raise the Arm before driving toward a Pin.]
[ArmMotor v] [উপরে v] ঘোরাও
(1) সেকেন্ড অপেক্ষা করো
[ArmMotor v] থামাও

স্পিন মোটরের জন্য#

স্ট্যাক ব্লকের জন্য স্পিন মোটর একটি মোটরকে একটি নির্দিষ্ট দূরত্বে ঘোরায়। এই ঘূর্ণনটি মোটরের বর্তমান অবস্থানের সাপেক্ষে হয়। স্ট্যাকের পরবর্তী ব্লকটি চলার আগে, প্রজেক্টটি মোটরটির ঘূর্ণন শেষ হওয়া পর্যন্ত অপেক্ষা করবে।

[ArmMotor v] [উপরে v] দিকে (90) [ডিগ্রি v] ঘোরাও ▶

প্যারামিটার

বর্ণনা

মোটর

ঘোরানোর জন্য মোটর: আর্ম মোটর অথবা ক্ল মোটর।

দিকনির্দেশনা

মোটরের ঘোরার দিক:

  • আর্ম মোটর — উপরে বা নিচে
  • ক্ল মোটর — খোলা বা বন্ধ

দূরত্ব

মোটরের ঘূর্ণন দূরত্ব। ডিগ্রির ক্ষেত্রে পূর্ণসংখ্যা ব্যবহার করা হয়। ঘূর্ণনের ক্ষেত্রে পূর্ণসংখ্যা বা দশমিক সংখ্যা ব্যবহার করা যেতে পারে।

ইউনিট

দূরত্বের একক: ডিগ্রি বা টার্ন।

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে
[Raise the Arm to carry the Pin to the Goal.]
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶

মোটর ঘুরিয়ে অবস্থানে আনুন#

স্পিন মোটর টু পজিশন স্ট্যাক ব্লকটি একটি মোটরকে একটি নির্দিষ্ট অবস্থানে ঘোরায়।

একটি মোটরের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা ডিগ্রি বা টার্ন-এ পরিমাপ করা হয়। এক টার্ন ৩৬০ ডিগ্রির সমান। একটি প্রোজেক্টের শুরুতে, ArmMotor-এর অবস্থান ০ ডিগ্রিতে সেট করা থাকে। ClawMotor হলো এর ব্যতিক্রম — এটি ৪৬৭ ডিগ্রিতে (সম্পূর্ণ বন্ধ অবস্থায়) শুরু হয়। set motor position ব্লক ব্যবহার করেও মোটরের অবস্থান সেট করা যায়।

অবস্থানের মানগুলো পরম। এর মানে হলো, ঘূর্ণনের দিক মোটরের বর্তমান অবস্থানের উপর নির্ভর করে।

উদাহরণস্বরূপ, যদি মোটরটি ০ ডিগ্রি থেকে যাত্রা শুরু করে ৭২০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি সামনের দিকে দুইবার ঘুরবে। এরপর যদি এটি ৩৬০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি পেছনের দিকে একবার ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

[ArmMotor v] (90) [ডিগ্রি v] অবস্থানে ঘোরাও ▶

প্যারামিটার

বর্ণনা

মোটর

ঘোরানোর জন্য মোটর: আর্ম মোটর অথবা ক্ল মোটর।

অবস্থান

মোটরটি যে অবস্থানে ঘুরবে। ডিগ্রির ক্ষেত্রে পূর্ণসংখ্যা ব্যবহার করা হয়। ঘূর্ণনের ক্ষেত্রে পূর্ণসংখ্যা বা দশমিক সংখ্যা ব্যবহার করা যেতে পারে।

ইউনিট

অবস্থানের একক: ডিগ্রি বা পাক।

এবং অপেক্ষা করবেন না

এবং অপেক্ষা করবেন না বলার জন্য ব্লকটি প্রসারিত করতে তীরচিহ্ন ( ▶ ) নির্বাচন করুন, যাতে স্ট্যাকের পরবর্তী ব্লকটি অবিলম্বে রান হয়।

উদাহরণ

শুরু হলে
[Raise the Arm, then release the Pin.]
[ArmMotor v] (800) [ডিগ্রি v] অবস্থানে ঘোরাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মোটর বন্ধ করুন#

স্টপ মোটর স্ট্যাক ব্লকটি নির্বাচিত মোটরটিকে বন্ধ করে দেয়।

[ArmMotor v] থামাও

প্যারামিটার

বর্ণনা

মোটর

যে মোটরটি বন্ধ করতে হবে: আর্মমোটর অথবা ক্লমোটর।

উদাহরণ

শুরু হলে
[Raise the Arm partway to hold the Pin.]
[ArmMotor v] [উপরে v] ঘোরাও
(1) সেকেন্ড অপেক্ষা করো
[ArmMotor v] থামাও

সেটিংস#

মোটরের বেগ সেট করুন#

সেট মোটর ভেলোসিটি স্ট্যাক ব্লকটি একটি মোটরকে বলে দেয় যে এটি কত দ্রুত ঘুরবে। উচ্চতর শতাংশ মোটরকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ মোটরকে ধীরে ঘোরায়।

প্রতিটি প্রজেক্ট ডিফল্টরূপে প্রতিটি মোটর ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগে মোটর দ্রুত ঘোরে, কিন্তু এর নির্ভুলতা কম হতে পারে। নিম্ন বেগে মোটর ধীরে ঘোরে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।

[ArmMotor v]-এর গতি [50] [% v] সেট করো

প্যারামিটার

বর্ণনা

মোটর

গতি নির্ধারণের জন্য মোটর: আর্ম মোটর অথবা ক্ল মোটর।

বেগ

যে গতিতে মোটরটি ঘুরবে। শতাংশ ০% থেকে ১০০% পর্যন্ত পূর্ণ সংখ্যা ব্যবহার করে।

ইউনিট

বেগের একক: %।

উদাহরণ

শুরু হলে
[Raise the Arm fast to release the Pin.]
[ArmMotor v]-এর গতি [100] [% v] সেট করো
[ArmMotor v] [উপরে v] দিকে (800) [ডিগ্রি v] ঘোরাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মোটর টাইমআউট সেট করুন#

সেট মোটর টাইমআউট স্ট্যাক ব্লকটি নির্ধারণ করে যে একটি মোটর তার গতি শেষ করার জন্য কতটুকু সময় চেষ্টা করবে। যদি মোটরটি সেই সময়ের মধ্যে তার গতি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং স্ট্যাকের পরবর্তী ব্লকে চলে যাবে। এর ফলে মোটরটি কোনো একটি গতিতে আটকে যায় না।

[ArmMotor v]-এর টাইমআউট [1] সেকেন্ড সেট করো

প্যারামিটার

বর্ণনা

মোটর

যে মোটরটির টাইমআউট সেট করতে হবে: আর্ম মোটর অথবা ক্ল মোটর।

সময়

একটি নড়াচড়া শেষ করতে মোটরটি যত সেকেন্ড চেষ্টা করতে পারে, সেই সংখ্যা। এটি একটি পূর্ণ সংখ্যা বা দশমিক সংখ্যা হতে পারে।

উদাহরণ

শুরু হলে
[Score a Pin in a Neutral Goal.]
[বাম v] দিকে (110) ডিগ্রি ঘোরো ▶
[ArmMotor v]-এর টাইমআউট [1] সেকেন্ড সেট করো
[ArmMotor v] [উপরে v] দিকে (1800) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

অবস্থান#

মোটর অবস্থান#

একটি মোটরের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা ডিগ্রি বা ঘূর্ণন সংখ্যায় পরিমাপ করা হয়। এক ঘূর্ণন ৩৬০ ডিগ্রির সমান। মোটর পজিশন রিপোর্টার ব্লকটি মোটরের বর্তমান অবস্থান নির্দেশ করে।

প্রজেক্টের শুরুতে, আর্মমোটরের অবস্থান ০ ডিগ্রিতে সেট করা থাকে। ক্লমোটর এক্ষেত্রে ব্যতিক্রম — এটি ৪৬৭ ডিগ্রিতে (সম্পূর্ণ বন্ধ অবস্থায়) শুরু হয়। যদি মোটরটি সামনের দিকে এক পূর্ণ পাক ঘোরে, তবে এর অবস্থান বেড়ে যায়। আর যদি মোটরটি বিপরীত দিকে ঘোরে, তবে এর অবস্থান কমে যায়।

([ডিগ্রি v]-এ [ArmMotor v]-এর অবস্থান)

প্যারামিটার

বর্ণনা

মোটর

মোটরটি আর্ম মোটর অথবা ক্ল মোটর-এর অবস্থান জানাবে।

ইউনিট

মোটরের অবস্থান জানানোর একক: ডিগ্রি বা ঘূর্ণন।

উদাহরণ

শুরু হলে
[Raise the Arm, then release the Pin.]
যখন <([ডিগ্রি v]-এ [ArmMotor v]-এর অবস্থান) < (800)>
[ArmMotor v] [উপরে v] ঘোরাও
(0.002) সেকেন্ড অপেক্ষা করো
अंत
[ArmMotor v] থামাও
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মোটরের অবস্থান সেট করুন#

একটি মোটরের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা ডিগ্রি বা ঘূর্ণনে পরিমাপ করা হয়। এক ঘূর্ণন ৩৬০ ডিগ্রির সমান। ‘সেট মোটর পজিশন’ স্ট্যাক ব্লকটি মোটরের বর্তমান অবস্থানকে একটি নতুন মানে পরিবর্তন করে।

উদাহরণস্বরূপ, যদি একটি মোটর ১৮০ ডিগ্রি ঘুরে থাকে, তবে এর অবস্থান ০ ডিগ্রিতে সেট করলে সেই অবস্থানটি ১৮০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর মোটরটি সেই নতুন মানের উপর ভিত্তি করে বিভিন্ন অবস্থানে ঘুরতে পারবে।

[ArmMotor v]-এর অবস্থান (0) [ডিগ্রি v] সেট করো

প্যারামিটার

বর্ণনা

মোটর

আর্ম মোটর বা ক্ল মোটর-এর অবস্থান নির্ধারণের জন্য মোটর।

অবস্থান

মোটরের জন্য যে অবস্থান মান নির্ধারণ করতে হবে। ডিগ্রির ক্ষেত্রে পূর্ণসংখ্যা ব্যবহার করুন। ঘূর্ণনের ক্ষেত্রে পূর্ণসংখ্যা বা দশমিক সংখ্যা ব্যবহার করা যেতে পারে।

ইউনিট

অবস্থানের একক: ডিগ্রি বা পাক।

উদাহরণ

শুরু হলে
[Reset encoder, raise Arm, place Pin.]
[ArmMotor v]-এর অবস্থান (0) [ডিগ্রি v] সেট করো
[ArmMotor v] (800) [ডিগ্রি v] অবস্থানে ঘোরাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মূল্যবোধ#

মোটরটি তৈরি করা হয়েছে#

motor is done বুলিয়ান ব্লকটি জানায় যে মোটরটির চলাচল শেষ হয়েছে কি না। মোটরের চলাচলের উপর ভিত্তি করে অন্যান্য কার্যকলাপের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • সত্য — মোটরটির চলাচল শেষ হয়েছে।

  • মিথ্যা — মোটরটি এখনও ঘুরছে।

এই ব্লকটি নিম্নলিখিত মোশন ব্লকগুলির সাথে একত্রে কাজ করে যেগুলিতে এবং অপেক্ষা করো না প্যারামিটার রয়েছে: মোটর ঘোরান এবং মোটরকে অবস্থানে ঘোরান।

<[ArmMotor v] সম্পন্ন?>

প্যারামিটার

বর্ণনা

মোটর

মোটরটি তার নড়াচড়া শেষ করেছে কিনা তা জানানোর জন্য: আর্মমোটর অথবা ক্লমোটর।

উদাহরণ

শুরু হলে
[Raise the Arm while driving to the Goal.]
[ArmMotor v] (800) [ডিগ্রি v] অবস্থানে ঘোরাও ◀ এবং অপেক্ষা করো না
(0.1) সেকেন্ড অপেক্ষা করো
যখন <না <[ArmMotor v] সম্পন্ন?>>
[সামনে v] দিকে চালাও
(0.005) সেকেন্ড অপেক্ষা করো
अंत
চালানো বন্ধ করো

মোটর ঘুরছে#

motor is spinning বুলিয়ান ব্লকটি জানায় যে মোটরটি ঘুরছে কি না। মোটরের নড়াচড়ার উপর ভিত্তি করে অন্যান্য কার্যকলাপের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • সত্য — মোটরটি ঘুরছে।

  • মিথ্যা — মোটরটি ঘুরছে না।

এই ব্লকটি নিম্নলিখিত মোশন ব্লকগুলির সাথে একত্রে কাজ করে যেগুলিতে এবং অপেক্ষা করো না প্যারামিটার রয়েছে: মোটর ঘোরান এবং মোটরকে অবস্থানে ঘোরান।

<[ArmMotor v] ঘুরছে?>

প্যারামিটার

বর্ণনা

মোটর

মোটরটি ঘুরছে কিনা তা জানানোর জন্য: আর্মমোটর নাকি ক্লমোটর।

উদাহরণ

শুরু হলে
[Raise the Arm while driving to the Goal, then release the Pin.]
[ArmMotor v] (800) [ডিগ্রি v] অবস্থানে ঘোরাও ◀ এবং অপেক্ষা করো না
(0.1) সেকেন্ড অপেক্ষা করো
যখন <[ArmMotor v] ঘুরছে?>
[সামনে v] দিকে (20) [mm v] চালাও ▶
अंत
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

মোটর বেগ#

মোটর বেগ রিপোর্টার ব্লকটি মোটরের ঘূর্ণন গতিকে -১০০% থেকে ১০০% পর্যন্ত শতাংশে প্রকাশ করে।

([% v]-এ [ArmMotor v]-এর গতি :: custom-motion)

প্যারামিটার

বর্ণনা

মোটর

মোটরটি আর্মমোটর অথবা ক্লমোটর-এর বেগ রিপোর্ট করবে।

ইউনিট

মোটরের বেগ প্রকাশের একক: %।

উদাহরণ

শুরু হলে
[Show Arm Motor velocity while raising.]
[ArmMotor v]-এর গতি [100] [% v] সেট করো
[ArmMotor v] (800) [ডিগ্রি v] অবস্থানে ঘোরাও ◀ এবং অপেক্ষা করো না
(0.2) সেকেন্ড অপেক্ষা করো
স্ক্রিনে ([% v]-এ [ArmMotor v]-এর গতি :: custom-motion) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও

এআই ভিশন#

কর্ম#

অবজেক্ট ডেটা পান#

গেট অবজেক্ট ডেটা ব্লকটি এআই ভিশন সেন্সর ফ্রেম থেকে ডেটা ফিল্টার করে একটি একক সিগনেচারে নিয়ে আসে — যা হলো সেন্সর দ্বারা শনাক্তযোগ্য কোনো কিছুর একটি সংরক্ষিত বিবরণ, যেমন মাঠের কোনো গেম এলিমেন্ট।

ডেটা সেটটি অবজেক্টগুলিকে প্রস্থ অনুসারে বৃহত্তম থেকে ক্ষুদ্রতম ক্রমে সংরক্ষণ করে, যা সূচক 0 থেকে শুরু হয়। প্রতিটি অবজেক্টের বৈশিষ্ট্যগুলি AI Vision object property ব্লক ব্যবহার করে অ্যাক্সেস করা যেতে পারে। যদি কোনও মিলযুক্ত অবজেক্ট সনাক্ত করা না যায় তবে একটি খালি ডেটা সেট ফেরত দেওয়া হয়।

গেট অবজেক্ট ডেটা স্ট্যাক ব্লক।#
[AIVision v] থেকে [AI Classifications v] ডেটা নাও

প্যারামিটার

বর্ণনা

স্বাক্ষর

প্রদত্ত সিগনেচারের ডেটা অন্তর্ভুক্ত করার জন্য ডেটাসেট ফিল্টার করে। উপলব্ধ সিগনেচারগুলো হলো:

  • এআই ক্লাসিফিকেশন - রেডব্লুপিন, ব্লুইয়েলোপিন, রেডইয়েলোপিন, ইয়েলোপিন এবং কাপ গেমের উপাদানগুলো শনাক্ত করে।
  • এপ্রিলট্যাগ - মাঠে পাওয়া এপ্রিলট্যাগ আইডিগুলো শনাক্ত করে।

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Turn to face the Pin.]
ঘোরার গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] অবজেক্ট [centerX v]) < (140)> then
[বাম v] দিকে ঘোরো
else if <([AIVision v] object [centerX v]) > (180)> then
[ডান v] দিকে ঘোরো
অন্যথায়
চালানো বন্ধ করো
বিরতি দাও
अंत
अंत
अंत

সেটিংস#

বস্তু আইটেম সেট করুন#

সেট অবজেক্ট আইটেম ব্লকটি নির্ধারণ করে যে ডেটাসেটের কোন আইটেমটি ব্যবহার করা হবে।

সেট এআই ভিশন অবজেক্ট আইটেম স্ট্যাক ব্লক।#
[AIVision v] অবজেক্ট আইটেম [1] সেট করো

প্যারামিটার

বর্ণনা

আইটেম

ডেটাসেটে ব্যবহার করার জন্য আইটেমের সংখ্যা।

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
[Check if any AI Classifications were detected in the last snapshot.]
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[If any AI Classification is detected, check if any of them are a specific game element.]
যদি <[AIVision v] অবজেক্ট কি [RedBluePin v]?> তাহলে
[RedBluePin detected.] প্রিন্ট করো ▶
অন্যথায়
[No RedBluePin detected.] প্রিন্ট করো ▶
अंत
अंत

মূল্যবোধ#

বস্তু বিদ্যমান#

object exists ব্লকটি একটি বুলিয়ান মান রিটার্ন করে, যা নির্দেশ করে যে ডেটাসেটটিতে কোনো অবজেক্ট শনাক্ত করা হয়েছে কি না।

  • সত্য – ডেটাসেটটিতে একটি শনাক্তকৃত বস্তু অন্তর্ভুক্ত রয়েছে।

  • মিথ্যা – ডেটাসেটটিতে কোনো শনাক্তকৃত বস্তু অন্তর্ভুক্ত নেই।

এআই ভিশন অবজেক্ট বিদ্যমান থাকার বুলিয়ান ব্লক।#
<[AIVision v] অবজেক্ট আছে?>

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
[Check if any AI Classifications were detected in the last snapshot.]
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
([AIVision v] অবজেক্টের সংখ্যা) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও
अंत

বস্তুটি হল#

object is ব্লকটি একটি বুলিয়ান মান রিটার্ন করে, যা নির্দেশ করে যে শনাক্তকৃত বস্তুটি একটি নির্দিষ্ট শ্রেণিবিন্যাসের সাথে মেলে কি না।

  • সত্য – ডেটাসেটের আইটেমটি হলো নির্দিষ্ট অবজেক্টটি।

  • মিথ্যা – ডেটাসেটের আইটেমটি নির্দিষ্ট অবজেক্টটি নয়।

এআই ভিশন অবজেক্টটি একটি বুলিয়ান ব্লক।#
<[AIVision v] অবজেক্ট কি [RedBluePin v]?>

প্যারামিটার

বর্ণনা

বস্তু

কোন বস্তুর সাথে জিনিসটি তুলনা করতে হবে:

  • লাল-নীল পিন
  • নীল-হলুদ পিন
  • লাল-হলুদ পিন
  • হলুদ পিন
  • কাপ

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
যদি <[AIVision v] অবজেক্ট কি [RedBluePin v]?> তাহলে
[RedBluePin detected.] প্রিন্ট করো ▶
অন্যথায়
[No RedBluePin detected.] প্রিন্ট করো ▶
अंत
अंत

বস্তুটি হল এপ্রিলট্যাগ#

object is AprilTag ব্লকটি একটি বুলিয়ান মান রিটার্ন করে, যা নির্দেশ করে যে শনাক্তকৃত অবজেক্টটি একটি নির্দিষ্ট আইডির সাথে মেলে এমন কোনো AprilTag কি না।

  • সত্য – শনাক্তকৃত বস্তুটি প্রদত্ত আইডি সহ একটি এপ্রিলট্যাগ।

  • মিথ্যা – শনাক্তকৃত বস্তুটি প্রদত্ত আইডি সহ একটি এপ্রিলট্যাগ নয়।

অবজেক্টটি হলো AprilTag বুলিয়ান ব্লক।#
<[AIVision v] অবজেক্ট কি AprilTag [0]?>

প্যারামিটার

বর্ণনা

এপ্রিলট্যাগ আইডি

শনাক্তকৃত এপ্রিলট্যাগের সাথে তুলনা করার জন্য আইডি নম্বর।

উদাহরণ

শুরু হলে
[Report if AprilTag 3 is detected.]
[AIVision v] থেকে [AprilTags v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
যদি <[AIVision v] অবজেক্ট কি AprilTag [3]?> তাহলে
[That is 3!] প্রিন্ট করো ▶
অন্যথায়
[That isn't 3!] প্রিন্ট করো ▶
अंत
अंत

বস্তুর সংখ্যা#

অবজেক্ট কাউন্ট ব্লকটি ডেটাসেটে শনাক্ত করা অবজেক্টের সংখ্যা একটি পূর্ণসংখ্যা হিসেবে ফেরত দেয়।

সেট এআই ভিশন অবজেক্ট আইটেম স্ট্যাক ব্লক।#
([AIVision] অবজেক্টের সংখ্যা)

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
([AIVision v] অবজেক্টের সংখ্যা) প্রিন্ট করো ◀ এবং কার্সার পরের সারিতে নিয়ে যাও
अंत

অবজেক্ট প্রপার্টি#

get object data ব্লকটি ব্যবহার করার পরে সংরক্ষিত প্রতিটি অবজেক্টের সাথে ছয়টি বৈশিষ্ট্য অন্তর্ভুক্ত থাকে (নীচে দেখানো হয়েছে)।

এআই ভিশন অবজেক্ট প্রপার্টি রিপোর্টার ব্লক।#
([AIVision v] অবজেক্ট [প্রস্থ v])

সমস্ত প্রপার্টি ভ্যালুগুলো, গেট অবজেক্ট ডেটা ব্লকটি ব্যবহার করার মুহূর্তে এআই ভিশন সেন্সরের ভিউতে শনাক্ত করা বস্তুটির অবস্থান এবং আকার বর্ণনা করে। এই ভ্যালুগুলো সেন্সরটির ৩২০ বাই ২৪০ পিক্সেল রেজোলিউশনের উপর ভিত্তি করে পিক্সেলে পরিমাপ করা হয়।

প্যারামিটার

বর্ণনা

সম্পত্তি

Which property of the detected object to use:

প্রস্থ#

width প্রপার্টিটি শনাক্তকৃত অবজেক্টের প্রস্থকে পিক্সেলে প্রকাশ করে, যা ১ থেকে ৩২০ পর্যন্ত একটি পূর্ণ সংখ্যা।

এআই ভিশন অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটারটি width-এ সেট করা আছে।#
([AIVision v] অবজেক্ট [প্রস্থ v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Approach the next Cup and Pin.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] object [width v]) > (140)> then
চালানো বন্ধ করো
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत
উচ্চতা#

height প্রপার্টিটি শনাক্তকৃত অবজেক্টের উচ্চতা ১ থেকে ২৪০ পর্যন্ত একটি পূর্ণ সংখ্যা হিসেবে পিক্সেলে প্রকাশ করে।

এআই ভিশন অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটারটি উচ্চতায় সেট করা আছে।#
([AIVision v] অবজেক্ট [উচ্চতা v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Approach the next Cup and Pin.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] object [height v]) > (200)> then
চালানো বন্ধ করো
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत
কেন্দ্রX#

centerX প্রপার্টিটি শনাক্তকৃত অবজেক্টের কেন্দ্রের x-স্থানাঙ্ককে পিক্সেলে ০ থেকে ৩২০ পর্যন্ত একটি পূর্ণ সংখ্যা হিসেবে প্রকাশ করে।

AI Vision অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটার centerX-এ সেট করা আছে।#
([AIVision v] অবজেক্ট [centerX v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Turn and approach the next Cup and Pin.]
ঘোরার গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] অবজেক্ট [centerX v]) < (140)> then
[বাম v] দিকে (5) ডিগ্রি ঘোরো ▶
অন্যথায়
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
বিরতি দাও
अंत
अंत
अंत
কেন্দ্রY#

centerY প্রপার্টিটি শনাক্তকৃত অবজেক্টের কেন্দ্রের y-স্থানাঙ্ককে পিক্সেলে ০ থেকে ২৪০ পর্যন্ত একটি পূর্ণ সংখ্যা হিসেবে প্রকাশ করে।

AI Vision অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটার centerY-তে সেট করা আছে।#
([AIVision v] অবজেক্ট [centerY v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Approach the next Cup and Pin.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] object [centerY v]) > (230)> then
চালানো বন্ধ করো
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत
অরিজিনএক্স#

originX প্রপার্টিটি শনাক্তকৃত অবজেক্টের বাউন্ডিং বক্সের উপরের-বাম কোণার x-স্থানাঙ্ককে পিক্সেলে ০ থেকে ৩২০ পর্যন্ত একটি পূর্ণ সংখ্যা হিসেবে প্রকাশ করে।

AI Vision অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটার originX-এ সেট করা আছে।#
([AIVision v] অবজেক্ট [originX v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Turn and approach the next Cup and Pin.]
ঘোরার গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] অবজেক্ট [originX v]) < (100)> then
[বাম v] দিকে (5) ডিগ্রি ঘোরো ▶
অন্যথায়
[সামনে v] দিকে (25) [ইঞ্চি v] চালাও ▶
বিরতি দাও
अंत
अंत
अंत
উৎপত্তি#

originY প্রপার্টিটি শনাক্তকৃত অবজেক্টের বাউন্ডিং বক্সের উপরের-বাম কোণার y-স্থানাঙ্ককে পিক্সেলে ০ থেকে ২৪০ পর্যন্ত একটি পূর্ণ সংখ্যা হিসেবে প্রকাশ করে।

AI Vision অবজেক্ট প্রপার্টি স্ট্যাক ব্লক, যার প্যারামিটার originY-তে সেট করা আছে।#
([AIVision v] অবজেক্ট [originY v])

উদাহরণ

শুরু হলে
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (70) ডিগ্রি ঘোরো ▶
[Approach the next Cup and Pin.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
if <([AIVision v] object [originY v]) > (140)> then
চালানো বন্ধ করো
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत

সংবেদন#

দূরত্ব#

দূরত্ব একটি বস্তু খুঁজে পেয়েছে#

Distance found an object বুলিয়ান ব্লকটি জানায় যে, ডিস্টেন্স সেন্সরটি বর্তমানে ২০০০ মিমি-এর মধ্যে কোনো বস্তু শনাক্ত করতে পারছে কি না।

  • সত্য — দূরত্ব সেন্সরটি একটি বস্তু শনাক্ত করেছে।

  • মিথ্যা — দূরত্ব সেন্সরটি কোনো বস্তু শনাক্ত করতে পারেনি।

<[FrontDistance v] কোনো অবজেক্ট খুঁজে পেয়েছে?>

প্যারামিটার

বর্ণনা

দূরত্ব সেন্সর

ব্যবহারের জন্য দূরত্ব সেন্সর। Flex-এর জন্য উপলব্ধ দূরত্ব সেন্সরগুলো থেকে বেছে নিন।

উদাহরণ

শুরু হলে :: hat events
[Turn until something is detected, then release the Pin.]
[ডান v] দিকে ঘোরো
<[FrontDistance v] কোনো অবজেক্ট খুঁজে পেয়েছে?> না হওয়া পর্যন্ত অপেক্ষা করো
চালানো বন্ধ করো
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

বস্তুর দূরত্ব#

অবজেক্ট ডিসটেন্স রিপোর্টার ব্লকটি ডিসটেন্স সেন্সর এবং নিকটতম শনাক্তকৃত বস্তুর মধ্যবর্তী দূরত্ব রিপোর্ট করে।

([mm v]-এ [FrontDistance v]-এর দূরত্ব)

প্যারামিটার

বর্ণনা

দূরত্ব সেন্সর

ব্যবহারের জন্য দূরত্ব সেন্সর। Flex-এর জন্য উপলব্ধ দূরত্ব সেন্সরগুলো থেকে বেছে নিন।

ইউনিট

দূরত্বের একক: মিমি বা ইঞ্চি।

উদাহরণ

শুরু হলে :: hat events
[Drive until 200 mm from the Goal, then release the Pin.]
[সামনে v] দিকে চালাও
<([mm v]-এ [FrontDistance v]-এর দূরত্ব) < (200)> না হওয়া পর্যন্ত অপেক্ষা করো
চালানো বন্ধ করো
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

জিপিএস#

জিপিএস অবস্থান#

জিপিএস পজিশন ব্লকটি জিপিএস (গেম পজিশনিং সিস্টেম™) সেন্সরের সাহায্যে কোনো মাঠের কেন্দ্র থেকে রোবটের মোড় নেওয়ার নির্দেশক বিন্দুর অবস্থানগত অফসেট প্রদান করে।

([mm v]-এ [GPS v]-এর [X v] অবস্থান)

প্যারামিটার

বর্ণনা

অক্ষ

কোন অক্ষের তথ্য প্রদান করতে হবে:

  • X
  • Y

ইউনিট

অবস্থান বোঝানোর একক: মিমি বা ইঞ্চি

উদাহরণ

শুরু হলে :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে চালাও
wait until <([GPS v] position [X v] in [mm v]) > (-1370)>
চালানো বন্ধ করো
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶

জিপিএস দিকনির্দেশনা#

জিপিএস হেডিং ব্লকটি VEX GPS ফিল্ড কোড থেকে প্রাপ্ত GPS (গেম পজিশনিং সিস্টেম™) সেন্সরের রিডিংয়ের উপর ভিত্তি করে রোবটটির বর্তমান দিকনির্দেশক দিকটি (হেডিং) প্রদর্শন করে, যার পরিসর ০.০০ থেকে ৩৫৯.৯৯ ডিগ্রি পর্যন্ত।

(ডিগ্রিতে [GPS v]-এর দিকনির্দেশ)

প্যারামিটার

বর্ণনা

এই ব্লকটির কোনো প্যারামিটার নেই।

উদাহরণ

শুরু হলে :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] [উপরে v] দিকে (300) [ডিগ্রি v] ঘোরাও ▶
[সামনে v] দিকে (10) [ইঞ্চি v] চালাও ▶
[ClawMotor v] [open v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[Turn left to face the Neutral Goal.]
ঘোরার গতি (30) [% v] সেট করো
[বাম v] দিকে ঘোরো
<(ডিগ্রিতে [GPS v]-এর দিকনির্দেশ) < (18)> না হওয়া পর্যন্ত অপেক্ষা করো
চালানো বন্ধ করো