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

ভূমিকা#

হিরো বট ফ্লপ-এ একটি ইনটেক মোটর, একটি আর্ম মোটর এবং একটি আইকিউ এআই ভিশন সেন্সর রয়েছে।

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

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

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

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

  • কর্ম

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

  • সেটিংস

  • মূল্যবোধ

এই পৃষ্ঠার উদাহরণগুলিতে প্লেগ্রাউন্ডের ডিফল্ট শুরুর অবস্থান ব্যবহার করা হয়েছে।

গতি#

ফ্লপ গেমের উপাদান সংগ্রহ ও নির্গমন করতে ইনটেক মোটর ব্যবহার করে। আর্ম মোটরটি আর্মটিকে উপরে তোলে ও নিচে নামায়।

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

কর্ম#

স্পিন মোটর#

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

[IntakeMotor v] [intake v] ঘোরাও

প্যারামিটার

বর্ণনা

মোটর

যে মোটরটি ঘোরাবে: ইনটেক মোটর অথবা আর্ম মোটর।

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

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

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

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

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

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

প্যারামিটার

বর্ণনা

মোটর

যে মোটরটি ঘোরাবে: ইনটেক মোটর অথবা আর্ম মোটর।

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

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

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

দূরত্ব

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

ইউনিট

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

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

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

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

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

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

যে মোটরটি ঘোরাবে: ইনটেক মোটর অথবা আর্ম মোটর।

অবস্থান

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

ইউনিট

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

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

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] (1) [ঘুরন v] অবস্থানে ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

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

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

[IntakeMotor v] থামাও

প্যারামিটার

বর্ণনা

মোটর

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও
(1) সেকেন্ড অপেক্ষা করো
[IntakeMotor v] থামাও

সেটিংস#

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

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

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

বেগ

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

ইউনিট

বেগের একক: %।

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v]-এর গতি [100] [% v] সেট করো
[IntakeMotor v] [outtake v] ঘোরাও

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

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

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

প্যারামিটার

বর্ণনা

মোটর

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

সময়

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v]-এর টাইমআউট [2] সেকেন্ড সেট করো
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

অবস্থান#

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

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

ইউনিট

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
যখন <([ডিগ্রি v]-এ [ArmMotor v]-এর অবস্থান) [math_less_than v] [360]>
[ArmMotor v] [উপরে v] ঘোরাও
(0.002) সেকেন্ড অপেক্ষা করো
अंत
[ArmMotor v] থামাও
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

ইনটেক মোটর অথবা আর্ম মোটরের অবস্থান নির্ধারণের জন্য মোটরটি ব্যবহৃত হয়।

অবস্থান

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

ইউনিট

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v]-এর অবস্থান [0] [ডিগ্রি v] সেট করো
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

মূল্যবোধ#

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

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

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] (1) [ঘুরন v] অবস্থানে ঘোরাও ◀ এবং অপেক্ষা করো না
<[ArmMotor v] সম্পন্ন?> না হওয়া পর্যন্ত অপেক্ষা করো
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও

মোটর ঘুরছে#

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

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

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

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

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

প্যারামিটার

বর্ণনা

মোটর

মোটরটি ঘুরছে কিনা তা জানানোর জন্য: ইনটেক মোটর অথবা আর্ম মোটর।

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও
<না <[IntakeMotor v] ঘুরছে?>> না হওয়া পর্যন্ত অপেক্ষা করো
[IntakeMotor v] থামাও

মোটর বেগ#

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

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

প্যারামিটার

বর্ণনা

মোটর

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

ইউনিট

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

উদাহরণ

শুরু হলে
[Score a Bean Bag in a Blue Goal.]
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[সামনে v] দিকে (35) [ইঞ্চি v] চালাও ▶
[ডান v] দিকে (90) ডিগ্রি ঘোরো ▶
[ArmMotor v] [উপরে v] দিকে (1) [ঘুরন v] ঘোরাও ▶
[সামনে v] দিকে (40) [ইঞ্চি v] চালাও ▶
[IntakeMotor v] [outtake v] ঘোরাও
[0.2] সেকেন্ড অপেক্ষা করো
([% v]-এ [IntakeMotor v]-এর গতি :: custom-motion) প্রিন্ট করো ▶

এআই ভিশন#

কর্ম#

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

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

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

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

প্যারামিটার

বর্ণনা

স্বাক্ষর

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

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

উদাহরণ

শুরু হলে :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Find and face the nearest red Bean Bag.]
ঘোরার গতি (30) [% v] সেট করো
[object_counter v] কে [1] সেট করো
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
([AIVision v] অবজেক্টের সংখ্যা) বার পুনরাবৃত্তি করো
[AIVision v] অবজেক্ট আইটেম (object_counter) সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
if <([AIVision v] অবজেক্ট [centerX v]) < (140)> then
[বাম v] দিকে ঘোরো
else if <([AIVision v] object [centerX v]) > (180)> then
[ডান v] দিকে ঘোরো
অন্যথায়
চালানো বন্ধ করো
अंत
বিরতি দাও
अंत
[object_counter v] কে [1] দ্বারা পরিবর্তন করো
अंत

সেটিংস#

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

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

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

প্যারামিটার

বর্ণনা

আইটেম

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

উদাহরণ

শুরু হলে :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] কে [1] সেট করো
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
([AIVision v] অবজেক্টের সংখ্যা) বার পুনরাবৃত্তি করো
[AIVision v] অবজেক্ট আইটেম (object_counter) সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
([Nearest Red Bean Bag is ] (object_counter) যোগ করো) প্রিন্ট করো ▶
বিরতি দাও
অন্যথায়
[object_counter v] কে [1] দ্বারা পরিবর্তন করো
अंत
अंत

মূল্যবোধ#

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

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

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

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

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

প্যারামিটার

বর্ণনা

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

উদাহরণ

শুরু হলে :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Turn until a Bean Bag is detected.]
ঘোরার গতি (30) [% v] সেট করো
[ডান v] দিকে ঘোরো
<[AIVision v] অবজেক্ট আছে?> না হওয়া পর্যন্ত পুনরাবৃত্তি করো
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
अंत
চালানো বন্ধ করো

বস্তুটি হল#

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

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

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

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

প্যারামিটার

বর্ণনা

বস্তু

আইটেমটি কোন বস্তুর সাথে তুলনা করা হবে: লাল শিমের ব্যাগ, নীল শিমের ব্যাগ, নাকি হলুদ শিমের ব্যাগ।

উদাহরণ

শুরু হলে :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] কে [1] সেট করো
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
([AIVision v] অবজেক্টের সংখ্যা) বার পুনরাবৃত্তি করো
[AIVision v] অবজেক্ট আইটেম (object_counter) সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
([Nearest Red Bean Bag is ] (object_counter) যোগ করো) প্রিন্ট করো ▶
বিরতি দাও
অন্যথায়
[object_counter v] কে [1] দ্বারা পরিবর্তন করো
अंत
अंत

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

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

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

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

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

প্যারামিটার

বর্ণনা

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

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

উদাহরণ

শুরু হলে :: hat events
[Stop when you see the Red Goal!]
ঘোরার গতি (30) [% v] সেট করো
[ডান v] দিকে ঘোরো
<[AIVision v] অবজেক্ট কি AprilTag [1]?> না হওয়া পর্যন্ত পুনরাবৃত্তি করো
[AIVision v] থেকে [AprilTags v] ডেটা নাও
अंत
চালানো বন্ধ করো
[Found the Red Goal!] প্রিন্ট করো ▶

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

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

অবজেক্ট কাউন্ট রিপোর্টার ব্লক।#
([AIVision v] অবজেক্টের সংখ্যা)

প্যারামিটার

বর্ণনা

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

উদাহরণ

শুরু হলে :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Print how many Bean Bags are detected.]
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
([AIVision v] অবজেক্টের সংখ্যা) প্রিন্ট করো ▶

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

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

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

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

প্যারামিটার

বর্ণনা

সম্পত্তি

শনাক্তকৃত বস্তুটির কোন বৈশিষ্ট্যটি ব্যবহার করতে হবে: width, height, centerX, centerY, originX, অথবা originY।

প্রস্থ#

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

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

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Approach the Bean Bag, then pick it up.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
if <([AIVision v] object [width v]) > (180)> then
[সামনে v] দিকে [50] [mm v] চালাও ▶
[IntakeMotor v] [intake v] দিকে [90] [ডিগ্রি v] ঘোরাও ▶
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत
अंत
উচ্চতা#

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

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

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Approach the Bean Bag, then pick it up.]
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
if <([AIVision v] object [height v]) > (100)> then
[সামনে v] দিকে [50] [mm v] চালাও ▶
[IntakeMotor v] [intake v] দিকে [90] [ডিগ্রি v] ঘোরাও ▶
বিরতি দাও
অন্যথায়
[সামনে v] দিকে চালাও
अंत
अंत
अंत
अंत
কেন্দ্রX#

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

AI Vision অবজেক্ট প্রপার্টি রিপোর্টার ব্লক, যার centerX নির্বাচিত রয়েছে।#
([AIVision v] অবজেক্ট [centerX v])

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Steer to keep the Bean Bag centered while approaching.]
ঘোরার গতি (30) [% v] সেট করো
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
if <([AIVision v] অবজেক্ট [centerX v]) < (140)> then
[বাম v] দিকে (5) ডিগ্রি ঘোরো ▶
অন্যথায়
[সামনে v] দিকে (150) [mm v] চালাও ▶
[IntakeMotor v] [intake v] ঘোরাও
বিরতি দাও
अंत
अंत
अंत
अंत
কেন্দ্রY#

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

AI Vision অবজেক্ট প্রপার্টি রিপোর্টার ব্লক, যার centerY নির্বাচিত রয়েছে।#
([AIVision v] অবজেক্ট [centerY v])

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Print the y-position of the Bean Bag.]
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
([AIVision v] অবজেক্ট [centerY v]) প্রিন্ট করো ▶
अंत
अंत
অরিজিনএক্স#

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

AI Vision অবজেক্ট প্রপার্টি রিপোর্টার ব্লক, যেখানে originX নির্বাচিত রয়েছে।#
([AIVision v] অবজেক্ট [originX v])

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Steer to keep the left edge centered.]
ঘোরার গতি (30) [% v] সেট করো
চালানোর গতি (30) [% v] সেট করো
চিরকাল
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
if <([AIVision v] অবজেক্ট [originX v]) < (100)> then
[বাম v] দিকে (5) ডিগ্রি ঘোরো ▶
অন্যথায়
[সামনে v] দিকে (150) [mm v] চালাও ▶
[IntakeMotor v] [intake v] ঘোরাও
বিরতি দাও
अंत
अंत
अंत
अंत
উৎপত্তি#

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

AI Vision অবজেক্ট প্রপার্টি রিপোর্টার ব্লক, যার originY নির্বাচিত রয়েছে।#
([AIVision v] অবজেক্ট [originY v])

উদাহরণ

শুরু হলে
[Drop the preloaded Bean Bag.]
[IntakeMotor v] [outtake v] দিকে (180) [ডিগ্রি v] ঘোরাও ▶
[বাম v] দিকে (90) ডিগ্রি ঘোরো ▶
[Print the y-position of the Bean Bag's top edge.]
[AIVision v] থেকে [AI Classifications v] ডেটা নাও
যদি <[AIVision v] অবজেক্ট আছে?> তাহলে
[AIVision v] অবজেক্ট আইটেম [1] সেট করো
যদি <[AIVision v] অবজেক্ট কি [RedBeanBag v]?> তাহলে
([AIVision v] অবজেক্ট [originY v]) প্রিন্ট করো ▶
अंत
अंत