ড্রাইভট্রেন#
ভূমিকা#
drivetrain একটি রোবটের চালনা ও মোড় নেওয়ার পদ্ধতি নিয়ন্ত্রণ করে। একটি ড্রাইভট্রেন মোটর এবং চাকা দিয়ে গঠিত, যা রোবটটিকে চালনা করার জন্য একত্রে কাজ করে।
একটি drivetrain হেডিং-ভিত্তিক বা ঘূর্ণন-ভিত্তিক মোড় নেওয়ার জন্য জাইরো সেন্সর বা ইনার্শিয়াল সেন্সর ব্যবহার করে না। এটি সামনে বা পিছনে যেতে পারে এবং বাম বা ডানে ঘুরতে পারে, কিন্তু এটি একটি নির্দিষ্ট হেডিং বা ঘূর্ণনে ঘুরতে পারে না। হেডিং-ভিত্তিক এবং ঘূর্ণন-ভিত্তিক মোড় নেওয়ার জন্য, smartdrive ক্লাস ব্যবহার করুন।
এই পৃষ্ঠায় উদাহরণস্বরূপ ড্রাইভট্রেনের নাম হিসেবে myDrivetrain ব্যবহার করা হয়েছে। প্রয়োজন অনুযায়ী এটিকে আপনার নিজের কনফিগার করা নাম দিয়ে প্রতিস্থাপন করুন।
উদ্ভূত শ্রেণী#
drivetrain ক্লাসটি নিম্নলিখিত ডিরাইভড ক্লাসের জন্য বেস ক্লাস হিসেবে কাজ করে:
smartdrive- জাইরো সেন্সর বা ইনার্শিয়াল সেন্সর সমর্থন সহ একটি ড্রাইভট্রেন তৈরি করে।
ক্লাস কনস্ট্রাক্টর#
1 - বাম এবং ডান দিকের জন্য বিদ্যমান
motor_groupঅবজেক্ট ব্যবহার করে একটি ড্রাইভট্রেন তৈরি করে।drivetrain( motor_group &l, motor_group &r, double wheelTravel = 320, double trackWidth = 320, double wheelBase = 130, distanceUnits unit = mm, double externalGearRatio = 1.0 );
2 - বাম এবং ডান দিকের জন্য বিদ্যমান
motorঅবজেক্ট ব্যবহার করে একটি ড্রাইভট্রেন তৈরি করে।drivetrain( motor &l, motor &r, double wheelTravel = 320, double trackWidth = 320, double wheelBase = 130, distanceUnits unit = mm, double externalGearRatio = 1.0 );
ক্লাস ডেস্ট্রাক্টর#
drivetrain অবজেক্টটি ধ্বংস করে এবং সংশ্লিষ্ট রিসোর্সসমূহ মুক্ত করে।
virtual ~drivetrain();
প্যারামিটার#
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
বাম এবং ডান মোটর বা মোটর গ্রুপ। উভয় প্যারামিটার অবশ্যই একই ধরনের হতে হবে: হয় দুটি |
|
|
ড্রাইভট্রেন চাকাগুলোর পরিধি। এর ডিফল্ট মান হলো |
|
|
বাম এবং ডান চাকার মধ্যবর্তী দূরত্ব। এর ডিফল্ট মান হলো |
|
|
সামনের ও পেছনের চাকার মধ্যবর্তী দূরত্ব। এর ডিফল্ট মান হলো |
|
|
|
|
|
গিয়ার ব্যবহার করা হলে, ড্রাইভের দূরত্ব সমন্বয় করার জন্য এই গিয়ার অনুপাতটি ব্যবহৃত হয়। এর ডিফল্ট মান হলো |
উদাহরণ#
// Create the left and right motor objects.
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);
// Create the drivetrain object.
drivetrain myDrivetrain = drivetrain(
leftMotor, // left motor
rightMotor, // right motor
259.34, // wheelTravel
320, // trackWidth
40, // wheelBase
mm, // unit
1.0 ); // externalGearRatio
সদস্যদের কার্যাবলী#
drivetrain ক্লাসে নিম্নলিখিত সদস্য ফাংশনগুলো অন্তর্ভুক্ত রয়েছে:
ক্রিয়াকলাপ - রোবটটিকে চালনা ও ঘোরানো।
drive- রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে চালনা করে।driveFor- রোবটটিকে একটি নির্দিষ্ট দূরত্বে সামনে বা পিছনে নিয়ে যায়।turn- রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়।turnFor- রোবটটিকে একটি নির্দিষ্ট সংখ্যক ডিগ্রি বা ঘূর্ণনের জন্য বাম বা ডানে ঘোরায়।stop- রোবটের চলাচল থামিয়ে দেয়।
সেটিংস - ড্রাইভট্রেন সেটিংস সমন্বয় করুন।
setDriveVelocity- রোবটকে বলে দেয় কত দ্রুত চালাতে হবে।setTurnVelocity- রোবটকে বলে দেয় কত দ্রুত ঘুরতে হবে।setStopping- রোবটটি কীভাবে চলা বন্ধ করবে তা নির্দেশ করে: ব্রেক করে, গতি না কমিয়ে, অথবা স্থির থেকে।setTimeout- রোবট একটি নড়াচড়া শেষ করার জন্য কতক্ষণ চেষ্টা করবে তা নির্ধারণ করে।
মানসমূহ - গতিবিধির অবস্থা যাচাই করুন।
isDone- রোবটের চলাচল শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।isMoving- রোবটটি চলছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।velocity- রোবটটি কত দ্রুত চলছে তা ফেরত দেয়।current- ড্রাইভট্রেন কী পরিমাণ বৈদ্যুতিক কারেন্ট ব্যবহার করছে তা ফেরত দেয়।power- ড্রাইভট্রেনটি কত দ্রুত শক্তি ব্যবহার করছে তা ফেরত দেয়।torque- ড্রাইভট্রেন কী পরিমাণ টর্ক ব্যবহার করছে তা ফেরত দেয়।efficiency- ড্রাইভট্রেনটি কতটা দক্ষতার সাথে শক্তি ব্যবহার করছে তা ফেরত দেয়।temperature- ড্রাইভট্রেনটি কতটা উষ্ণ তা ফেরত দেয়।voltage- ড্রাইভট্রেনের বৈদ্যুতিক ভোল্টেজ ফেরত দেয়।
drivetrain মেম্বার ফাংশন কল করার আগে, একটি drivetrain অবজেক্ট তৈরি করতে হবে।
/* This constructor is required when using VS Code.
Drivetrain configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the left and right motor objects.
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);
// Create the drivetrain object.
drivetrain myDrivetrain = drivetrain(
leftMotor, // left motor
rightMotor, // right motor
259.34, // wheelTravel
320, // trackWidth
40, // wheelBase
mm, // unit
1.0 ); // externalGearRatio
কর্ম#
ড্রাইভ#
ড্রাইভ drive রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে চালায়। রোবটটি ততক্ষণ চলতে থাকবে যতক্ষণ না এটিকে মোড় নেওয়া বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।
1 - বর্তমান ড্রাইভ বেগ ব্যবহার করে ড্রাইভ করে।
void drive( directionType dir );
Parameters2 - নির্দিষ্ট গতিতে গাড়ি চালায়।
void drive( directionType dir, double velocity, velocityUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেদিকে চলে: |
|
|
|
|
|
বেগের একক: |
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesড্রাইভ
driveঅপেক্ষারত নয়। প্রজেক্টটি সাথে সাথেই কোডের পরবর্তী লাইনটি চালাবে।stopকল না করা পর্যন্ত অথবা অন্য কোনো ড্রাইভট্রেন মুভমেন্ট ফাংশন না চলা পর্যন্ত রোবটটি চলতে থাকবে।isDoneএবংisMoving,driveএর সাথে ব্যবহৃত হয় না কারণdriveকোনো টার্গেট ডিসটেন্স নেই।
// Drive forward and back.
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.drive(reverse, 25, rpm);
wait(2, seconds);
myDrivetrain.stop();
ড্রাইভফর#
driveFor রোবটটিকে একটি নির্দিষ্ট দূরত্ব পর্যন্ত সামনে বা পিছনে নিয়ে যায়। রোবটটির চলা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।
1 - বর্তমান চালনা বেগ ব্যবহার করে নির্দিষ্ট দিকে একটি দূরত্ব অতিক্রম করে।
bool driveFor( directionType dir, double distance, distanceUnits units, bool waitForCompletion = true );
2 - বর্তমান চালনা বেগ ব্যবহার করে দূরত্বের মানের উপর ভিত্তি করে একটি নির্দিষ্ট দিকে চালনা করে।
bool driveFor( double distance, distanceUnits units, bool waitForCompletion = true );
3 - নির্দিষ্ট বেগে দূরত্বের মানের উপর ভিত্তি করে একটি দিকে চালিত হয়।
bool driveFor( double distance, distanceUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters4 - নির্দিষ্ট দিকে নির্দিষ্ট বেগে একটি দূরত্ব অতিক্রম করে।
bool driveFor( directionType dir, double distance, distanceUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেদিকে চলে: |
|
|
রোবটটি যে দূরত্ব অতিক্রম করে। |
|
|
দূরত্বের একক: |
|
|
|
|
|
বেগের একক: |
|
|
|
রোবটটি নির্ধারিত দূরত্বে পৌঁছেছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।
true- রোবটটি নির্ধারিত দূরত্বে পৌঁছেছে।false- রোবটটি তার চলাচল শেষ করেনি, অথবা চলাচল সম্পূর্ণ হওয়ার আগেই ফাংশনটি রিটার্ন করেছে কারণwaitForCompletionfalse-এ সেট করা হয়েছিল।
driveForচালু থাকা অবস্থায় অন্য কোনো ড্রাইভট্রেইন মুভমেন্ট ফাংশন চালালে বর্তমান মুভমেন্টটি বাধাগ্রস্ত হবে।driveForএকটি লক্ষ্য দূরত্ব ব্যবহার করে, তাইisDoneএবংisMovingএটির সাথে ব্যবহার করা যেতে পারে।
// Drive 200 mm, then back 200 mm.
myDrivetrain.driveFor(forward, 200, mm);
myDrivetrain.driveFor(reverse, 200, mm);
পালা#
turn রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়। রোবটটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে চালানো বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।
1 - বর্তমান বাঁকের বেগ ব্যবহার করে মোড় নেয়।
void turn( turnType dir );
Parameters2 - নির্দিষ্ট বেগে মোড় নেয়।
void turn( turnType dir, double velocity, velocityUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেদিকে ঘোরে: |
|
|
|
|
|
বেগের একক: |
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesturnহলো অপেক্ষাবিহীন। প্রজেক্টটি সাথে সাথেই কোডের পরবর্তী লাইনটি চালাবে।stopকল না করা পর্যন্ত অথবা অন্য কোনো ড্রাইভট্রেন মুভমেন্ট ফাংশন না চলা পর্যন্ত রোবটটি ঘুরতে থাকবে।isDoneএবংisMovingturnএর সাথে ব্যবহৃত হয় না কারণturnএর কোনো টার্গেট অ্যাঙ্গেল নেই।
// Turn right, then left, then stop.
myDrivetrain.turn(right);
wait(2, seconds);
myDrivetrain.turn(left);
wait(2, seconds);
myDrivetrain.stop();
টার্নফর#
turnFor রোবটটিকে একটি নির্দিষ্ট সংখ্যক ডিগ্রি, ঘূর্ণন বা একক অনুযায়ী বামে বা ডানে ঘোরায়। এই ঘূর্ণনটি রোবটের বর্তমান অবস্থানের সাপেক্ষে হয়। রোবটের ঘূর্ণন শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি চলবে।
1 - বর্তমান বাঁকের বেগ ব্যবহার করে নির্দিষ্ট কোণে বাঁক নেয়।
bool turnFor( double angle, rotationUnits units, bool waitForCompletion = true );
2 - বর্তমান বাঁকের বেগ ব্যবহার করে একটি নির্দিষ্ট কোণে নির্দিষ্ট দিকে মোড় নেয়।
bool turnFor( turnType dir, double angle, rotationUnits units, bool waitForCompletion = true );
3 - নির্দিষ্ট বেগে নির্দিষ্ট কোণে মোড় নেয়।
bool turnFor( double angle, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters4 - নির্দিষ্ট বেগে নির্দিষ্ট দিকে একটি কোণে মোড় নেয়।
bool turnFor( turnType dir, double angle, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেদিকে ঘোরে: |
|
|
রোবটটি যে পরিমাণে ঘোরে। |
|
|
ঘূর্ণনের একক: |
|
|
|
|
|
বেগের একক: |
|
|
|
রোবটটি লক্ষ্যমাত্রার কোণে পৌঁছেছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।
true- রোবটটি লক্ষ্য কোণে পৌঁছেছে।false- রোবটটি তার পালা শেষ করেনি, অথবা পালা সম্পূর্ণ হওয়ার আগেই ফাংশনটি রিটার্ন করেছে কারণwaitForCompletionfalse-এ সেট করা হয়েছিল।
turnForচালু থাকা অবস্থায় অন্য কোনো ড্রাইভট্রেইন মুভমেন্ট ফাংশন চালালে বর্তমান মুভমেন্টটি বাধাগ্রস্ত হবে।turnForএকটি লক্ষ্য কোণ ব্যবহার করে, তাইisDoneএবংisMovingএটির সাথে ব্যবহার করা যেতে পারে।
// Turn right, then left.
myDrivetrain.turnFor(right, 90, degrees);
wait(1, seconds);
myDrivetrain.turnFor(left, 90, degrees);
থামুন#
stop রোবটের চলাচল থামিয়ে দেয়। যদি কোনো স্টপিং মোড দেওয়া থাকে, তবে এই ফাংশন কলের জন্য রোবটটি কীভাবে থামবে তা এটি নিয়ন্ত্রণ করে।
1 - বর্তমান স্টপিং মোড ব্যবহার করে ড্রাইভট্রেন বন্ধ করে।
void stop();
Parameters2 - নির্দিষ্ট স্টপিং মোড ব্যবহার করে ড্রাইভট্রেন বন্ধ করে।
void stop( brakeType mode );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেভাবে থামবে:
|
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Examples// Drive forward, then coast to a stop.
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);
মিউটেটর#
সেটড্রাইভভেলোসিটি#
setDriveVelocity রোবটকে বলে দেয় সে কত দ্রুত চলবে। শতাংশ রোবটকে দ্রুত এবং কম শতাংশ রোবটকে ধীরে চালায়।
প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে চলার মাধ্যমে শুরু হয়।
দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।
Available Functionsvoid setDriveVelocity(
double velocity,
velocityUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
|
|
|
বেগের একক: |
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesফাংশন কলে কোনো নির্দিষ্ট বেগ প্রদান করা না থাকলে, ড্রাইভের বেগটি পরবর্তী ড্রাইভট্রেন মুভমেন্ট ফাংশনগুলোতে ব্যবহৃত হয়।
// Drive forward, then coast to a stop.
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);
সেটটার্নভেলোসিটি#
setTurnVelocity setTurnVelocity রোবটকে বলে দেয় সে কত দ্রুত ঘুরবে। বেশি শতাংশ রোবটকে দ্রুত ঘোরায় এবং কম শতাংশ রোবটকে ধীরে ঘোরায়।
প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।
দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত ঘোরাতে পারে, কিন্তু তা কম নির্ভুল হতে পারে। নিম্ন বেগ রোবটকে ধীরে ঘোরাতে পারে, কিন্তু তা আরও নির্ভুল হতে পারে।
Available Functionsvoid setTurnVelocity(
double velocity,
velocityUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
|
|
|
বেগের একক: |
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesফাংশন কলে কোনো নির্দিষ্ট বেগ প্রদান করা না থাকলে, বাঁকের বেগটি পরবর্তী ড্রাইভট্রেন বাঁক নেওয়ার ফাংশনগুলোতে ব্যবহৃত হয়।
// Try default, slow, then fast.
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(20, percent);
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(100, percent);
myDrivetrain.turnFor(right, 360, degrees);
সেটস্টপিং#
setStopping সেট করে রোবটটি কীভাবে থামবে: ব্রেক করে, গতি না বাড়িয়ে, বা স্থির হয়ে।
void setStopping(
brakeType mode );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
রোবটটি যেভাবে থামবে:
|
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesফাংশন কলে কোনো নির্দিষ্ট স্টপিং মোড প্রদান করা না থাকলে, পরবর্তী
stopকলগুলির জন্য স্টপিং মোডটি ব্যবহৃত হয়।এই ফাংশনটি ব্যবহার না করা হলে, রোবটটি থামার সময়
brakeব্রেক ব্যবহার করবে।
setTimeout#
setTimeout setTimeout নির্ধারণ করে যে রোবট একটি মুভমেন্ট শেষ করার জন্য কতক্ষণ চেষ্টা করবে। যদি রোবট সেই সময়ের মধ্যে কাজটি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং কোডের পরবর্তী লাইনে চলে যাবে। এর ফলে রোবট কোনো একটি মুভমেন্টে আটকে যায় না।
void setTimeout(
int32_t time,
timeUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
একটি নড়াচড়া শেষ করার জন্য রোবটটি যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি ধনাত্মক পূর্ণ সংখ্যা হওয়া উচিত। |
|
|
সময়ের একক: |
এই ফাংশনটি কোনো মান ফেরত দেয় না।
Notesটাইমআউট শুধুমাত্র সেইসব ড্রাইভট্রেন ফাংশনের ক্ষেত্রে প্রযোজ্য যেগুলো কোনো লক্ষ্যের দিকে যায়, যেমন
driveForএবংturnFor।
// Turn right after driving forward.
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);
গেটার্স#
সম্পন্ন হয়েছে#
isDone একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে রোবটটির চলাচল শেষ হয়েছে কিনা। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।
bool isDone( void );
এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।
Return Valuestrue- রোবটটির চলাচল শেষ হয়েছে।false- রোবটটি এখনও চলছে।
সরছে#
isMoving একটি বুলিয়ান মান হিসাবে রোবটটি চলছে কিনা তা ফেরত দেয়। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।
virtual bool isMoving( void );
এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।
Return Valuestrue- রোবটটি চলছে।false- রোবটটি নড়ছে না।
বেগ#
বেগ velocity নির্দেশ করে রোবটটি কত দ্রুত চলছে।
এটি বেগ শতাংশ হিসাবে, rpmবা dpsহিসাবে দেখাতে পারে। একটি ধনাত্মক মান মানে রোবটটি সামনের দিকে চলছে। একটি ঋণাত্মক মান মানে রোবটটি পিছনের দিকে চলছে।
double velocity(
velocityUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
বেগ ফেরত দেওয়ার একক: |
ড্রাইভট্রেনের বেগ নির্বাচিত এককে double এর সমন্বয়ে ফেরত দেয়।
// Show velocity before and during motion.
Brain.Screen.print("Resting: %f", myDrivetrain.velocity(percent));
myDrivetrain.drive(forward, 100, velocityUnits::pct);
wait(1, seconds);
Brain.Screen.newLine();
Brain.Screen.print("Moving: %f", myDrivetrain.velocity(percent));
myDrivetrain.stop();
বর্তমান#
ড্রাইভট্রেনটি কী পরিমাণ বৈদ্যুতিক কারেন্ট ব্যবহার করছে তা কারেন্ট current দ্বারা জানা যায়। কারেন্ট হলো ড্রাইভট্রেনের মধ্য দিয়ে প্রবাহিত বিদ্যুতের পরিমাণ। এককের উপর নির্ভর করে এটি অ্যাম্পিয়ার (অ্যাম্প) বা শতাংশ হিসাবে দেখানো যেতে পারে।
কারেন্টের মান বেশি হওয়ার অর্থ হলো ড্রাইভট্রেইনটি বেশি বিদ্যুৎ ব্যবহার করছে। রোবট যখন কোনো বস্তুকে ধাক্কা দেয় অথবা আটকে যাওয়ার পর নড়াচড়া করার চেষ্টা করে, তখন এমনটা হতে পারে।
চলাচলের সময় ড্রাইভট্রেনটি কোনো সমস্যায় পড়ছে কিনা, তা পরীক্ষা করতে এটি ব্যবহার করা যেতে পারে। যদি কারেন্ট বেশি থাকে, তাহলে ড্রাইভট্রেনটি গরম হয়ে যেতে পারে অথবা কম দক্ষতার সাথে শক্তি ব্যবহার করতে পারে।
Available Functions1 - ড্রাইভট্রেনের বৈদ্যুতিক প্রবাহ অ্যাম্পিয়ারে ফেরত দেয়।
double current( currentUnits units = currentUnits::amp );
Parameters2 - ড্রাইভট্রেনের বৈদ্যুতিক প্রবাহকে শতাংশ হিসাবে ফেরত দেয়।
double current( percentUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
ফেরত আসা কারেন্টের একক: |
|
|
ফেরত দেওয়ার একক: |
ড্রাইভট্রেন কারেন্টকে নির্বাচিত এককে double হিসেবে ফেরত দেয়।
ক্ষমতা#
পাওয়ার power দেখায়। পাওয়ার দেখায় ড্রাইভট্রেনটি কত দ্রুত শক্তি ব্যবহার করছে।
পাওয়ারের মান বেশি হওয়ার অর্থ হলো ড্রাইভট্রেইনটি দ্রুত শক্তি ব্যবহার করছে। এমনটা হতে পারে যখন রোবট কোনো বস্তুকে ধাক্কা দেয় অথবা আটকে যাওয়ার পর নড়াচড়া করার চেষ্টা করে।
এটি নড়াচড়া তুলনা করতে বা ড্রাইভট্রেনটি সমস্যায় পড়ছে কিনা তা পরীক্ষা করতে ব্যবহার করা যেতে পারে। যদি পাওয়ার বেশি থাকে, তাহলে ড্রাইভট্রেনটি গরম হয়ে যেতে পারে অথবা কম দক্ষতার সাথে শক্তি ব্যবহার করতে পারে।
Available Functionsdouble power(
powerUnits units = powerUnits::watt );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
ক্ষমতার একক: |
ড্রাইভট্রেইন শক্তিকে ওয়াটে double হিসেবে ফেরত দেয়।
টর্ক#
টর্ক দেখায় যে চাকা ঘোরার সময় ড্রাইভট্রেন কতটা জোরে ধাক্কা দিতে বা টানতে পারে।
torque ড্রাইভট্রেন কী পরিমাণ টর্ক ব্যবহার করছে তা দেখায়, যা নিউটন-মিটার (Nm) বা ইঞ্চি-পাউন্ড (InLb) এককে পরিমাপ করা হয়।
টর্কের মান বেশি হওয়ার অর্থ হলো ড্রাইভট্রেনটি আরও জোরে ধাক্কা দিচ্ছে বা টানছে। এমনটা হতে পারে যখন রোবট কোনো বস্তুকে ধাক্কা দেয় অথবা আটকে যাওয়ার পর নড়াচড়া করার চেষ্টা করে।
ড্রাইভট্রেনটি ঠিকমতো কাজ করছে কিনা তা পরীক্ষা করতে অথবা বিভিন্ন নড়াচড়ার জন্য কতটা ধাক্কা প্রয়োজন তা তুলনা করতে এটি ব্যবহার করা যেতে পারে।
Available Functionsdouble torque(
torqueUnits units = torqueUnits::nm );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
টর্ক প্রদানের একক: |
ড্রাইভট্রেইন টর্ককে নির্বাচিত এককে double হিসেবে ফেরত দেয়।
দক্ষতা#
ড্রাইভট্রেইনটি efficiency শতাংশ হিসাবে দেখায়।
দক্ষতা দেখায় যে ড্রাইভট্রেনের শক্তির কতটা চলাচলের জন্য ব্যবহৃত হচ্ছে। দক্ষতার মান যত বেশি হবে, ড্রাইভট্রেনের শক্তির বেশি অংশ চলাচলের জন্য ব্যবহৃত হচ্ছে তা তত বেশি হবে। দক্ষতার মান কম হতে পারে যখন ড্রাইভট্রেন কঠোর পরিশ্রম করেও খুব বেশি নড়াচড়া করে না, যেমন যখন রোবটটি আটকে যায় বা কোনো বস্তুকে ধাক্কা দেয়।
এটি নড়াচড়া তুলনা করতে অথবা ড্রাইভট্রেনটি চলাচলের জন্য শক্তি ব্যবহার না করে অপচয় করছে কিনা তা পরীক্ষা করতে ব্যবহার করা যেতে পারে।
Available Functionsdouble efficiency(
percentUnits units = percentUnits::pct );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
দক্ষতা ফেরত দেওয়ার একক: |
নির্বাচিত ইউনিটে ড্রাইভট্রেন দক্ষতা double হিসাবে ফেরত দেয়।
তাপমাত্রা#
temperature ড্রাইভট্রেনের গড় তাপমাত্রা ০% থেকে ১০০% পর্যন্ত শতাংশ হিসাবে ফেরত দেয়।
তাপমাত্রা থেকে বোঝা যায় ড্রাইভট্রেইন মোটরগুলো কতটা গরম। তাপমাত্রা বেশি হওয়ার অর্থ হলো, কাজ করার সময় মোটরগুলো গরম হচ্ছে। পূর্ণ কর্মক্ষমতায় কাজ চালিয়ে যাওয়ার জন্য মোটরগুলোর তাপমাত্রা ৫৫° সেলসিয়াসের নিচে থাকা উচিত।
মোটরগুলো অতিরিক্ত গরম হয়ে গেলে, নিজেদের সুরক্ষার জন্য সেগুলোর সর্বোচ্চ কারেন্ট কমিয়ে দেবে। ৭০° সেলসিয়াস তাপমাত্রায়, মোটরগুলো ঠান্ডা না হওয়া পর্যন্ত চলা বন্ধ করে দেবে।
বারবার নড়াচড়া, দীর্ঘক্ষণ চলা, বা কোনো বস্তুকে ধাক্কা দেওয়ার সময় ড্রাইভট্রেনটি অতিরিক্ত গরম হয়ে যাচ্ছে কিনা, তা পরীক্ষা করতে এটি ব্যবহার করা যেতে পারে।
Available Functionsdouble temperature(
percentUnits units );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
তাপমাত্রা ফেরত দেওয়ার একক: |
নির্বাচিত এককে গড় ড্রাইভট্রেইন তাপমাত্রা double এর সমন্বয়ে ফেরত দেয়।
50%এর একটি ফেরত আসা মানের মানে হল গড় মোটর তাপমাত্রা প্রায়45°C(113°F)।ড্রাইভট্রেনের সাধারণ কার্যকরী তাপমাত্রার পরিসীমা হল প্রায়
20°C(68°F) থেকে70°C(158°F)।
ভোল্টেজ#
voltage ড্রাইভট্রেনের বৈদ্যুতিক ভোল্টেজ ফেরত দেয়।
ভোল্টেজ হলো ড্রাইভট্রেন মোটরগুলিতে সরবরাহ করা বৈদ্যুতিক চাপ। ড্রাইভট্রেন কীভাবে বৈদ্যুতিক শক্তি ব্যবহার করছে তা বোঝার জন্য এটিকে কারেন্ট এবং পাওয়ারের মানের সাথে ব্যবহার করা যেতে পারে।
Available Functionsdouble voltage(
voltageUnits units = voltageUnits::volt );
প্যারামিটার |
প্রকার |
বর্ণনা |
|---|---|---|
|
|
ভোল্টেজ ফেরত দেওয়ার একক: |
ড্রাইভট্রেন ভোল্টেজকে নির্বাচিত এককে double হিসেবে ফেরত দেয়।