ভিক্টর ৮৮৩ মোটর#

ভূমিকা#

motor_victor ক্লাসটি একটি 3-Wire পোর্টের সাথে সংযুক্ত Victor 883 মোটর কন্ট্রোলার নিয়ন্ত্রণ করতে ব্যবহৃত হয়। Victor 883 মোটর কন্ট্রোলারটি EXP Brain থেকে একটি PWM সিগন্যাল পাঠিয়ে সেইসব সামঞ্জস্যপূর্ণ VEXpro বা VEX EDR ডিসি মোটর নিয়ন্ত্রণ করে, যেগুলো সরাসরি স্মার্ট পোর্টের সাথে সংযুক্ত করা যায় না।

ভিক্টর ৮৮৩ মোটর কন্ট্রোলারটি VEXcode-এ কনফিগার করা যায় না এবং ব্যবহারের জন্য এটিকে কোডে ম্যানুয়ালি তৈরি করতে হয়।

ক্লাস কনস্ট্রাক্টর#

1 — নির্দিষ্ট 3-Wire পোর্টের সাথে সংযুক্ত Victor 883 মোটর কন্ট্রোলারের জন্য একটি motor_victor অবজেক্ট তৈরি করে।

motor_victor( triport::port& port );

2 — নির্দিষ্ট 3-Wire পোর্টে একটি motor_victor অবজেক্ট তৈরি করে এবং ঐচ্ছিকভাবে এর দিক পরিবর্তন করে।

motor_victor(
 triport::port& port,
 bool           reverse );

ক্লাস ডেস্ট্রাক্টর#

motor_victor অবজেক্টটি ধ্বংস করে এবং সংশ্লিষ্ট রিসোর্সগুলো মুক্ত করে।

~motor_victor();

প্যারামিটার#

প্যারামিটার

প্রকার

বর্ণনা

port

triport::port&

যে 3-Wire পোর্টের সাথে ভিক্টর 883 মোটরটি সংযুক্ত থাকে, তা Brain.ThreeWirePort.X অথবা ExpanderName.Xহিসাবে লেখা হয়, যেখানে X হলো পোর্ট লেটার (উদাহরণস্বরূপ, Brain.ThreeWirePort.A অথবা Expander1.A)।

reverse

bool

মোটরের ঘূর্ণনের দিক উল্টানো হবে কিনা তা নির্ধারণ করে:

  • false (ডিফল্ট) — মোটরের দিক উল্টায় না।
  • true — মোটরের দিক উল্টে দেয়।

উদাহরণ#

// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);

// Create the motor_victor instance with reversed direction
motor_victor victor2 = motor_victor(Brain.ThreeWirePort.B, true);

সদস্যদের কার্যাবলী#

motor_victor ক্লাসে নিম্নলিখিত মেম্বার ফাংশনগুলো অন্তর্ভুক্ত রয়েছে:

  • spin — মোটরটিকে একটি নির্দিষ্ট দিকে ঘোরায়।

  • stop — মোটর বন্ধ করে দেয়।

  • setVelocity — মোটরকে বলে দেয় কত দ্রুত ঘুরতে হবে।

  • setReversed — মোটরের দিক উল্টানো হবে কি না তা নির্ধারণ করে।

যেকোনো motor_victor মেম্বার ফাংশন কল করার আগে, motor_victor ইনস্ট্যান্স অবশ্যই তৈরি করতে হবে, যেমনটি নিচে দেখানো হয়েছে:

/* This constructor is required to use a
Victor 883 Motor. Replace the values
as needed. */

// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);

spin#

মোটরটিকে নির্দিষ্ট দিকে অনির্দিষ্টকালের জন্য ঘোরায়।

Available Functions

1 — বর্তমানে কনফিগার করা মোটর বেগ ব্যবহার করে মোটরটিকে ঘোরায়।

void spin(
 directionType dir );

2 — মোটরটিকে নির্দিষ্ট গতিতে ঘোরায়।

void spin(
 directionType dir,
 double        velocity,
 velocityUnits units );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

dir

directionType

মোটরটি যে দিকে ঘোরে: forward বা reverse।

velocity

double

percent ব্যবহার করার সময় ০% থেকে ১০০% পর্যন্ত ঘূর্ণনের বেগ।

units

velocityUnits

বেগের একক:

  • percent pct — শতাংশ
  • rpm — প্রতি মিনিটে ঘূর্ণন
  • dps — প্রতি সেকেন্ডে ডিগ্রি

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • stop কল না করা পর্যন্ত অথবা অন্য কোনো মুভমেন্ট ফাংশন এক্সিকিউট না করা পর্যন্ত মোটরটি ঘুরতে থাকবে।

Examples
// Spin forward, then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();

// Spin forward at 100 rpm
victor.spin(forward, 100, rpm);
wait(1, seconds);
victor.stop();

stop#

মোটরের ঘূর্ণন থামিয়ে দেয়।

Available Functions
void stop();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • stop বললে মোটরের যেকোনো চলমান গতি তাৎক্ষণিকভাবে থেমে যায়।

Examples
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();

setVelocity#

মোটরকে বলে দেয় কত দ্রুত ঘুরতে হবে। শতাংশ বেশি হলে মোটর দ্রুত ঘোরে এবং শতাংশ কম হলে মোটর ধীরে ঘোরে।

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

Available Functions
void setVelocity(
    double       velocity,
    percentUnits units );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

velocity

double

percent ব্যবহার করার সময় ০% থেকে ১০০% পর্যন্ত ঘূর্ণনের বেগ।

units

percentUnits

বেগের একক:percent pct — শতাংশ

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • পরবর্তী যেকোনো ভিক্টর 883 মোটর মুভমেন্ট ফাংশন (যেমন spin) যেখানে স্পষ্টভাবে বেগ উল্লেখ করা নেই, সেখানে এই মানটি ব্যবহার করা হবে।

Examples
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);

setReversed#

মোটরের দিক বিপরীত হবে কি না তা নির্ধারণ করে।

Available Functions
void setReversed( bool value );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

value

bool

মোটরের দিক উল্টানো হবে কিনা:

  • true — মোটরের দিক উল্টে দেয়।
  • false — মোটরের দিক তার ডিফল্ট অবস্থায় ফিরিয়ে দেয়।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes Examples
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse