ഡ്രൈവ്‌ട്രെയിൻ#

ആമുഖം#

ഒരു റോബോട്ട് എങ്ങനെ ഓടിക്കണമെന്നും തിരിയണമെന്നും നിയന്ത്രിക്കുന്നത് drivetrain ക്ലാസ് ആണ്. റോബോട്ടിനെ ചലിപ്പിക്കാൻ ഒരുമിച്ച് പ്രവർത്തിക്കുന്ന മോട്ടോറുകളും ചക്രങ്ങളും ചേർന്നതാണ് ഒരു ഡ്രൈവ്‌ട്രെയിൻ.

ഒരു drivetrain ഹെഡിംഗ് അധിഷ്ഠിത അല്ലെങ്കിൽ റൊട്ടേഷൻ അധിഷ്ഠിത ടേണുകൾക്കായി ഇനേർഷ്യൽ സെൻസർ, ഗൈറോ സെൻസർ, അല്ലെങ്കിൽ ജിപിഎസ് സെൻസർ, ഉപയോഗിക്കുന്നില്ല. ഇതിന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യാനോ റിവേഴ്‌സ് ചെയ്യാനോ ഇടത്തോട്ടോ വലത്തോട്ടോ തിരിയാനോ കഴിയും, പക്ഷേ ഇതിന് ഒരു പ്രത്യേക ഹെഡിംഗ് അധിഷ്ഠിത അല്ലെങ്കിൽ റൊട്ടേഷനിലേക്ക് തിരിയാൻ കഴിയില്ല. ഹെഡിംഗ് അധിഷ്ഠിത, റൊട്ടേഷൻ അധിഷ്ഠിത ടേണുകൾക്കായി, smartdrive ക്ലാസ് ഉപയോഗിക്കുക.

ഉരുത്തിരിഞ്ഞ ക്ലാസുകൾ#

drivetrain ക്ലാസ്, താഴെ പറയുന്ന ഡിറൈവ്ഡ് ക്ലാസുകൾക്ക് ഒരു അടിസ്ഥാന ക്ലാസായി പ്രവർത്തിക്കുന്നു:

  • smartdrive - ഹെഡിംഗ് അധിഷ്ഠിതവും റൊട്ടേഷൻ അധിഷ്ഠിതവുമായ ടേണുകൾ പ്രാപ്തമാക്കുന്നതിന് ഈ ക്ലാസ് ഇനേർഷ്യൽ സെൻസർ, ജിപിഎസ് സെൻസർ അല്ലെങ്കിൽ ഗൈറോ സെൻസർ പിന്തുണ ചേർക്കുന്നു.

ക്ലാസ് കൺസ്ട്രക്‌ടറുകൾ#

1 - ഇടതു (&l) , വലതു (&r) വശങ്ങൾക്കായി നിലവിലുള്ള 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 - ഇടതുവശത്തേക്കും (&l) വലത്തേയ്ക്കും (&r) വശങ്ങളിലേക്കും നിലവിലുള്ള 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();

പാരാമീറ്ററുകൾ#

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

&l / &r

motor_group / motor

ഇടതും വലതും മോട്ടോറുകൾ അല്ലെങ്കിൽ മോട്ടോർ ഗ്രൂപ്പുകൾ. രണ്ട് പാരാമീറ്ററുകളും ഒരേ തരം ഉപയോഗിക്കണം: രണ്ട് motor_group ഒബ്‌ജക്റ്റുകൾ അല്ലെങ്കിൽ രണ്ട് motor ഒബ്‌ജക്റ്റുകൾ.

wheelTravel

double

ഡ്രൈവ്ട്രെയിൻ ചക്രങ്ങളുടെ ചുറ്റളവ്. സ്ഥിരസ്ഥിതി 320 ആണ്.

trackWidth

double

ഇടത്, വലത് ചക്രങ്ങൾ തമ്മിലുള്ള ദൂരം. സ്ഥിരസ്ഥിതി 320 ആണ്.

wheelBase

double

മുൻ ചക്രങ്ങളും പിൻ ചക്രങ്ങളും തമ്മിലുള്ള ദൂരം. സ്ഥിരസ്ഥിതി 130 ആണ്.

unit

distanceUnits

wheelTravel, trackWidth, wheelBaseഎന്നിവയ്ക്കുള്ള യൂണിറ്റ്: mm (മില്ലീമീറ്റർ, സ്ഥിരസ്ഥിതി) അല്ലെങ്കിൽ inches.

externalGearRatio

double

ഗിയറുകൾ ഉപയോഗിക്കുമ്പോൾ ഡ്രൈവ് ദൂരം ക്രമീകരിക്കാൻ ഉപയോഗിക്കുന്ന ഗിയർ അനുപാതം. സ്ഥിരസ്ഥിതി 1.0 ആണ്.

ഉദാഹരണം#

// 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 object
    rightMotor, // right motor object
    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 object
    rightMotor, // right motor object
    259.34,     // wheelTravel
    320,        // trackWidth
    40,         // wheelBase
    mm,         // unit
    1.0 );      // externalGearRatio

പ്രവർത്തനങ്ങൾ#

ഡ്രൈവ് ചെയ്യുക#

drive റോബോട്ടിനെ എന്നെന്നേക്കുമായി മുന്നോട്ട് അല്ലെങ്കിൽ പിന്നിലേക്ക് നീക്കുന്നു. തിരിയുകയോ നിർത്തുകയോ പോലുള്ള മറ്റൊരു പ്രവർത്തനം നൽകുന്നതുവരെ റോബോട്ട് നീങ്ങുന്നത് തുടരും. RPM അല്ലെങ്കിൽ DPS-ന്, ഡ്രൈവ്‌ട്രെയിനിന്റെ ഗിയർ അനുപാതം അനുസരിച്ചാണ് പരിധി മാറ്റുന്നത്.

Available Functions

1 - നിലവിൽ ക്രമീകരിച്ചിരിക്കുന്ന ഡ്രൈവ് പ്രവേഗം ഉപയോഗിക്കുന്ന ഡ്രൈവുകൾ.

void drive(
    directionType dir );

2 - നിർദ്ദിഷ്ട വേഗതയിൽ ഡ്രൈവ് ചെയ്യുന്നു.

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

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

dir

directionType

റോബോട്ട് നീങ്ങുന്ന ദിശ: forward അല്ലെങ്കിൽ reverse.

velocity

double

velocityUnits::pct, rpmഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 600 rpm വരെ, അല്ലെങ്കിൽ dpsഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 3600 ഡിഗ്രി വരെ. വേഗത നൽകിയിട്ടില്ലെങ്കിൽ, റോബോട്ട് നിലവിലെ ഡ്രൈവ് വേഗതയിൽ ഡ്രൈവ് ചെയ്യുന്നു.

units

velocityUnits

പ്രവേഗ യൂണിറ്റ്: velocityUnits::pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes
  • drive കാത്തിരിക്കുന്നില്ല; കോൾ കഴിഞ്ഞയുടനെ പ്രോജക്റ്റ് അടുത്ത കോഡ് വരി എക്സിക്യൂട്ട് ചെയ്യുന്നത് തുടരും.

  • stop എന്ന് വിളിക്കുന്നത് വരെയോ അല്ലെങ്കിൽ മറ്റൊരു ഡ്രൈവ്‌ട്രെയിൻ മൂവ്‌മെന്റ് ഫംഗ്‌ഷൻ ( driveFor അല്ലെങ്കിൽ turn പോലുള്ളവ) നടപ്പിലാക്കുന്നത് വരെയോ ഡ്രൈവ്‌ട്രെയിൻ നീങ്ങിക്കൊണ്ടിരിക്കും.

  • isDone ഉം isMoving ഉം പോലുള്ള ഫംഗ്ഷനുകൾ driveന് ബാധകമല്ല, കാരണം ഇത് ടാർഗെറ്റ് അധിഷ്ഠിത ചലനം ഉപയോഗിക്കുന്നില്ല ( distance പാരാമീറ്റർ ഇല്ല).

Examples
// Drive forward and back
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.drive(reverse, 25, rpm);
wait(2, seconds);
myDrivetrain.stop();

ഡ്രൈവ്ഫോർ#

driveFor റോബോട്ടിനെ ഒരു പ്രത്യേക ദൂരത്തേക്ക് മുന്നോട്ട് അല്ലെങ്കിൽ പിന്നിലേക്ക് നീക്കുന്നു. റോബോട്ട് നീങ്ങുന്നത് പൂർത്തിയാകുന്നതുവരെ പ്രോജക്റ്റ് കാത്തിരിക്കും, തുടർന്ന് കോഡിന്റെ അടുത്ത വരി സ്ഥിരസ്ഥിതിയായി പ്രവർത്തിക്കും. RPM അല്ലെങ്കിൽ DPS-ന്, ഡ്രൈവ്‌ട്രെയിനിന്റെ ഗിയർ അനുപാതം അനുസരിച്ചാണ് പരിധി മാറ്റുന്നത്.

Available Functions

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 );

4 - നിർദ്ദിഷ്ട വേഗതയിൽ നിർദ്ദിഷ്ട ദിശയിൽ ഒരു ദൂരം സഞ്ചരിക്കുന്നു.

bool driveFor(
    directionType dir,
    double        distance,
    distanceUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

dir

directionType

റോബോട്ട് നീങ്ങുന്ന ദിശ: forward അല്ലെങ്കിൽ reverse.

distance

double

റോബോട്ട് ഓടിക്കുന്ന ദൂരം.

units

distanceUnits

ദൂരത്തിന്റെ യൂണിറ്റ്: mm (മില്ലിമീറ്റർ), inches, അല്ലെങ്കിൽ cm (സെന്റിമീറ്റർ).

velocity

double

velocityUnits::pct, rpmഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 600 rpm വരെ, അല്ലെങ്കിൽ dpsഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 3600 ഡിഗ്രി വരെ. വേഗത നൽകിയിട്ടില്ലെങ്കിൽ, റോബോട്ട് നിലവിലെ ഡ്രൈവ് വേഗതയിൽ ഡ്രൈവ് ചെയ്യുന്നു.

units_v

velocityUnits

പ്രവേഗ യൂണിറ്റ്: velocityUnits::pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

waitForCompletion

bool

true (default) എന്നത് റോബോട്ട് നീങ്ങുന്നത് വരെ പ്രോജക്റ്റിനെ കാത്തിരിക്കാൻ പ്രേരിപ്പിക്കുന്നു, തുടർന്ന് അടുത്ത കോഡ് വരി പ്രവർത്തിക്കുന്നു. false എന്നത് അടുത്ത കോഡ് വരി ഉടനടി പ്രവർത്തിപ്പിക്കുന്നു.

Return Values

റോബോട്ട് ലക്ഷ്യ ദൂരത്തിൽ എത്തിയോ എന്ന് ഒരു ബൂളിയൻ മൂല്യമായി നൽകുന്നു.

  • true - റോബോട്ട് ലക്ഷ്യ ദൂരത്തിൽ എത്തി.

  • false - റോബോട്ട് ചലനം പൂർത്തിയാക്കിയില്ല, അല്ലെങ്കിൽ waitForCompletion false ആയി സജ്ജീകരിച്ചതിനാൽ ചലനം പൂർത്തിയാകുന്നതിന് മുമ്പ് പ്രവർത്തനം തിരിച്ചെത്തി.

Notes
  • driveFor പുരോഗമിക്കുമ്പോൾ മറ്റൊരു ഡ്രൈവ്‌ട്രെയിൻ മൂവ്‌മെന്റ് ഫംഗ്‌ഷൻ (drive അല്ലെങ്കിൽ turnFor പോലുള്ളവ) നടപ്പിലാക്കുന്നത് നിലവിലെ ചലനത്തെ തടസ്സപ്പെടുത്തും.

  • driveFor ടാർഗെറ്റ് അടിസ്ഥാനമാക്കിയുള്ളതിനാൽ (ഒരു distance പാരാമീറ്റർ ഉപയോഗിക്കുന്നു), isDone, isMoving, പോലുള്ള ഫംഗ്ഷനുകൾ driveFor എന്നിവയുമായി പ്രവർത്തിക്കുന്നു.

Examples
// Drive 200 mm, then back 200 mm
myDrivetrain.driveFor(forward, 200, mm);
myDrivetrain.driveFor(reverse, 200, mm);

തിരിയുക#

turn റോബോട്ടിനെ എന്നെന്നേക്കുമായി ഇടത്തോട്ടോ വലത്തോട്ടോ തിരിക്കുന്നു. ഡ്രൈവ് ചെയ്യുകയോ നിർത്തുകയോ പോലുള്ള മറ്റൊരു പ്രവർത്തനം നൽകുന്നതുവരെ റോബോട്ട് തിരിയുന്നത് തുടരും. RPM അല്ലെങ്കിൽ DPS-ന്, ഡ്രൈവ്‌ട്രെയിനിന്റെ ഗിയർ അനുപാതം അനുസരിച്ചാണ് പരിധി മാറ്റുന്നത്.

Available Functions

1 - നിലവിൽ ക്രമീകരിച്ചിരിക്കുന്ന ടേൺ പ്രവേഗം ഉപയോഗിച്ച് തിരിവുകൾ നടത്തുന്നു.

void turn(
    turnType dir );

2 - നിർദ്ദിഷ്ട വേഗതയിൽ തിരിയുന്നു.

void turn(
    turnType     dir,
    double       velocity,
    velocityUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

dir

turnType

റോബോട്ട് തിരിയുന്ന ദിശ: left അല്ലെങ്കിൽ right.

velocity

double

The velocity to turn with from 0% to 100% when using velocityUnits::pct, from 0 to 600 rpm when using rpm, or from 0 to 3600 degrees per second when using dps. If no velocity is provided, the robot turns at the current turn velocity.

units

velocityUnits

പ്രവേഗ യൂണിറ്റ്: velocityUnits::pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

Return Values This function does not return a value. Notes
  • turn കാത്തിരിക്കുന്നില്ല; കോൾ കഴിഞ്ഞയുടനെ പ്രോജക്റ്റ് അടുത്ത കോഡ് വരി എക്സിക്യൂട്ട് ചെയ്യുന്നത് തുടരും.

  • stop എന്ന് വിളിക്കുന്നത് വരെയോ അല്ലെങ്കിൽ മറ്റൊരു ഡ്രൈവ്‌ട്രെയിൻ മൂവ്‌മെന്റ് ഫംഗ്‌ഷൻ ( turnFor അല്ലെങ്കിൽ drive പോലുള്ളവ) നടപ്പിലാക്കുന്നത് വരെയോ ഡ്രൈവ്‌ട്രെയിൻ കറങ്ങിക്കൊണ്ടിരിക്കും.

  • isDone ഉം isMoving ഉം പോലുള്ള ഫംഗ്ഷനുകൾ turnന് ബാധകമല്ല, കാരണം ഇത് ടാർഗെറ്റ് അധിഷ്ഠിത ചലനം ഉപയോഗിക്കുന്നില്ല (ഒരു angle പാരാമീറ്റർ ഇല്ല).

Examples
// Turn right, then left, then stop
myDrivetrain.turn(right);
wait(2, seconds);
myDrivetrain.turn(left);
wait(2, seconds);
myDrivetrain.stop();

ടേൺഫോർ#

turnFor റോബോട്ടിനെ ഒരു നിശ്ചിത എണ്ണം ഡിഗ്രികൾ ഇടത്തോട്ടോ വലത്തോട്ടോ തിരിക്കുന്നു. റോബോട്ടിന്റെ നിലവിലെ സ്ഥാനവുമായി താരതമ്യപ്പെടുത്തിയാണ് ടേൺ. ഡിഫോൾട്ടായി അടുത്ത കോഡ് വരി പ്രവർത്തിക്കുന്നതിന് മുമ്പ് റോബോട്ട് തിരിയുന്നത് വരെ പ്രോജക്റ്റ് കാത്തിരിക്കും. RPM അല്ലെങ്കിൽ DPS-ന്, ഡ്രൈവ്‌ട്രെയിനിന്റെ ഗിയർ അനുപാതം അനുസരിച്ചാണ് പരിധി മാറ്റുന്നത്.

Available Functions

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 );

4 - നിർദ്ദിഷ്ട പ്രവേഗത്തിൽ ഒരു കോണിൽ നിർദ്ദിഷ്ട ദിശയിലേക്ക് തിരിയുന്നു.

bool turnFor(
    turnType      dir,
    double        angle,
    rotationUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

dir

turnType

റോബോട്ട് തിരിയുന്ന ദിശ: left അല്ലെങ്കിൽ right.

angle

double

റോബോട്ട് തിരിയുന്ന കോൺ.

units

rotationUnits

ടേൺ യൂണിറ്റ്: deg (ഡിഗ്രി), rev (റവല്യൂഷനുകൾ), അല്ലെങ്കിൽ raw (റോ യൂണിറ്റുകൾ). ഒരു റവല്യൂഷൻ 360 ഡിഗ്രിക്ക് തുല്യമാണ്.

velocity

double

The velocity to turn with from 0% to 100% when using velocityUnits::pct, from 0 to 600 rpm when using rpm, or from 0 to 3600 degrees per second when using dps. If no velocity is provided, the robot turns at the current turn velocity.

units_v

velocityUnits

പ്രവേഗ യൂണിറ്റ്: velocityUnits::pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

waitForCompletion

bool

true (default) എന്നത് റോബോട്ട് തിരിയുന്നത് വരെ പ്രോജക്റ്റിനെ കാത്തിരിക്കാൻ പ്രേരിപ്പിക്കുന്നു, തുടർന്ന് അടുത്ത കോഡ് വരി പ്രവർത്തിക്കുന്നു. false എന്നത് അടുത്ത കോഡ് വരി ഉടനടി പ്രവർത്തിപ്പിക്കുന്നു.

Return Values

റോബോട്ട് ലക്ഷ്യ കോണിൽ എത്തിയോ എന്ന് ഒരു ബൂളിയൻ മൂല്യമായി നൽകുന്നു.

  • true - റോബോട്ട് ലക്ഷ്യ കോണിൽ എത്തി.

  • false - റോബോട്ട് ടേൺ പൂർത്തിയാക്കിയില്ല, അല്ലെങ്കിൽ waitForCompletion false ആയി സജ്ജീകരിച്ചതിനാൽ ടേൺ പൂർത്തിയാകുന്നതിന് മുമ്പ് ഫംഗ്ഷൻ മടങ്ങി.

Notes
  • turn പുരോഗമിക്കുമ്പോൾ മറ്റൊരു ഡ്രൈവ്ട്രെയിൻ മൂവ്മെന്റ് ഫംഗ്ഷൻ (drive അല്ലെങ്കിൽ turnFor പോലുള്ളവ) നടപ്പിലാക്കുന്നത് നിലവിലെ ചലനത്തെ തടസ്സപ്പെടുത്തും.

  • turnFor ടാർഗെറ്റ് അധിഷ്ഠിതമായതിനാൽ (ഒരു angle പാരാമീറ്റർ ഉപയോഗിക്കുന്നു), isDone ഉം isMoving ഉം പോലുള്ള ഫംഗ്ഷനുകൾ turnFor നൊപ്പം പ്രവർത്തിക്കുന്നു.

Examples
// Turn right then left
myDrivetrain.turnFor(right, 90, degrees);
wait(1, seconds);
myDrivetrain.turnFor(left, 90, degrees);

നിർത്തുക#

stop റോബോട്ടിന്റെ ചലനം നിർത്തുന്നു. ഒരു സ്റ്റോപ്പിംഗ് മോഡ് നൽകിയിട്ടുണ്ടെങ്കിൽ, ഈ ഫംഗ്ഷൻ കോളിനായി റോബോട്ട് എങ്ങനെ നിർത്തുന്നു എന്നത് ഇത് നിയന്ത്രിക്കുന്നു.

Available Functions

1 - നിലവിൽ കോൺഫിഗർ ചെയ്‌തിരിക്കുന്ന സ്റ്റോപ്പിംഗ് മോഡ് ഉപയോഗിച്ച് ഡ്രൈവ്‌ട്രെയിൻ നിർത്തുന്നു.

void stop();

2 - നിർദ്ദിഷ്ട ബ്രേക്ക് മോഡ് ഉപയോഗിച്ച് ഡ്രൈവ്ട്രെയിൻ നിർത്തുന്നു.

void stop(
    brakeType mode );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

mode

brakeType

റോബോട്ട് എങ്ങനെ നിർത്തും:

  • brake - ഉടനടി നിർത്തുന്നു.
  • coast - നിർത്തുന്നതുവരെ വേഗത കുറയ്ക്കുന്നു.
  • hold - ഉടനടി നിർത്തി ചക്രങ്ങളുടെ സ്ഥാനം നിലനിർത്തുന്നു.

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Examples
// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

മ്യൂട്ടേറ്ററുകൾ#

സെറ്റ്ഡ്രൈവ്വെലോസിറ്റി#

setDriveVelocity റോബോട്ടിനോട് എത്ര വേഗത്തിൽ ഡ്രൈവ് ചെയ്യണമെന്ന് പറയുന്നു. ഉയർന്ന ശതമാനം റോബോട്ടിനെ വേഗത്തിലാക്കാനും കുറഞ്ഞ ശതമാനം റോബോട്ടിനെ മന്ദഗതിയിലാക്കാനും സഹായിക്കുന്നു. RPM-ന്, ഡ്രൈവ്‌ട്രെയിനിന്റെ ഗിയർ അനുപാതം അനുസരിച്ചാണ് പരിധി മാറ്റുന്നത്.

എല്ലാ പ്രോജക്റ്റുകളും ആരംഭിക്കുന്നത് റോബോട്ട് സ്വതവേ 50% വേഗതയിൽ ഓടിച്ചാണ്.

കുറിപ്പ്: ഉയർന്ന വേഗത റോബോട്ട് വേഗത്തിൽ ഓടിക്കാൻ സഹായിക്കുന്നു, പക്ഷേ കൃത്യത കുറവായിരിക്കാം. കുറഞ്ഞ വേഗത റോബോട്ട് വേഗത കുറയ്ക്കുന്നു, പക്ഷേ കൂടുതൽ കൃത്യതയുള്ളതാകാം.

Available Functions
void  setDriveVelocity(
  double velocity,
  velocityUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

velocity

double

velocityUnits::pct, rpm, അല്ലെങ്കിൽ dps.

units

velocityUnits

പ്രവേഗ യൂണിറ്റ്: velocityUnits::pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes
  • ഫംഗ്ഷൻ കോളിൽ ഒരു പ്രത്യേക പ്രവേഗം നൽകിയിട്ടില്ലെങ്കിൽ, തുടർന്നുള്ള എല്ലാ ഡ്രൈവ്ട്രെയിൻ ചലന ഫംഗ്ഷനുകൾക്കും (drive ഉം driveFor ഉം പോലുള്ളവ) ഡ്രൈവ് പ്രവേഗം ബാധകമാണ്.

Examples
// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

സെറ്റ്ടേൺ വെലോസിറ്റി#

setTurnVelocity റോബോട്ടിനോട് എത്ര വേഗത്തിൽ തിരിയണമെന്ന് പറയുന്നു. ഉയർന്ന ശതമാനം റോബോട്ടിനെ വേഗത്തിലാക്കാനും കുറഞ്ഞ ശതമാനം റോബോട്ടിനെ മന്ദഗതിയിലാക്കാനും സഹായിക്കുന്നു.

എല്ലാ പ്രോജക്റ്റുകളും ആരംഭിക്കുന്നത് റോബോട്ട് സ്ഥിരസ്ഥിതിയായി 50% വേഗതയിൽ കറങ്ങുമ്പോഴാണ്.

കുറിപ്പ്: ഉയർന്ന വേഗത റോബോട്ടിനെ വേഗത്തിൽ തിരിയാൻ പ്രേരിപ്പിക്കുന്നു, പക്ഷേ കൃത്യത കുറവായിരിക്കാം. കുറഞ്ഞ വേഗത റോബോട്ടിനെ മന്ദഗതിയിലാക്കുന്നു, പക്ഷേ കൂടുതൽ കൃത്യതയുള്ളതാകാം.

Available Functions
void  setTurnVelocity(
  double velocity,
  velocityUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

velocity

double

velocityUnits::pctഉപയോഗിക്കുമ്പോൾ 0% മുതൽ 100% വരെ തിരിയാനുള്ള വേഗത, rpmഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 600 rpm വരെ, അല്ലെങ്കിൽ dps ഉപയോഗിക്കുമ്പോൾ 0 മുതൽ 3600 ഡിഗ്രി വരെ സെക്കൻഡിൽ.

units

velocityUnits

പ്രവേഗ യൂണിറ്റ്: percent അല്ലെങ്കിൽ pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes
  • ഫംഗ്ഷൻ കോളിൽ ഒരു പ്രത്യേക പ്രവേഗം നൽകിയിട്ടില്ലെങ്കിൽ, തുടർന്നുള്ള എല്ലാ ഡ്രൈവ്‌ട്രെയിൻ ടേണിംഗ് ഫംഗ്‌ഷനുകൾക്കും (turn ഉം turnFor ഉം പോലുള്ളവ) ടേൺ പ്രവേഗം ബാധകമാണ്.

Examples
// 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 റോബോട്ട് എങ്ങനെ നീങ്ങുന്നത് നിർത്തുമെന്ന് സജ്ജമാക്കുന്നു: ബ്രേക്കിംഗ്, കോസ്റ്റിംഗ് അല്ലെങ്കിൽ ഹോൾഡിംഗ് വഴി.

Available Functions
void setStopping(
  brakeType mode );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

mode

brakeType

റോബോട്ട് എങ്ങനെ നിർത്തും:

  • brake - ഉടനടി നിർത്തുന്നു.
  • coast - നിർത്തുന്നതുവരെ വേഗത കുറയ്ക്കുന്നു.
  • hold - ഉടനടി നിർത്തി ചക്രങ്ങളുടെ സ്ഥാനം നിലനിർത്തുന്നു.

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes
  • ഫംഗ്ഷൻ കോളിൽ ഒരു പ്രത്യേക സ്റ്റോപ്പിംഗ് മോഡ് നൽകിയിട്ടില്ലെങ്കിൽ, തുടർന്നുള്ള എല്ലാ stop കോളുകൾക്കും സ്റ്റോപ്പിംഗ് മോഡ് ബാധകമാണ്.

സെറ്റ്ടൈമൗട്ട്#

setTimeout എന്നത് റോബോട്ട് ഒരു ചലനം പൂർത്തിയാക്കാൻ എത്ര സെക്കൻഡ് ശ്രമിക്കുമെന്ന് സജ്ജമാക്കുന്നു. ആ സമയത്ത് റോബോട്ടിന് പൂർത്തിയാക്കാൻ കഴിയുന്നില്ലെങ്കിൽ, അത് ശ്രമം നിർത്തി അടുത്ത കോഡ് വരിയിലേക്ക് നീങ്ങും. ഇത് റോബോട്ടിനെ ഒരു ചലനത്തിൽ കുടുങ്ങിപ്പോകുന്നത് തടയുന്നു.

Available Functions
void  setTimeout(
  int32_t time,
  timeUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

time

int32_t

ഒരു ചലനം പൂർത്തിയാക്കാൻ റോബോട്ടിന് എത്ര സമയം ശ്രമിക്കാൻ കഴിയും. ഇത് ഒരു പോസിറ്റീവ് പൂർണ്ണ സംഖ്യയായിരിക്കണം.

units

timeUnits

സമയത്തിന്റെ യൂണിറ്റ്: sec (സെക്കൻഡ്) അല്ലെങ്കിൽ msec (മില്ലിസെക്കൻഡ്).

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes
  • ടാർഗെറ്റ് അടിസ്ഥാനമാക്കിയുള്ള ഡ്രൈവ്‌ട്രെയിൻ ചലന പ്രവർത്തനങ്ങൾക്ക് (driveFor ഉം turnFor ഉം പോലുള്ളവ) മാത്രമേ ടൈംഔട്ട് ബാധകമാകൂ.

Examples
// Start turning if driving takes too long
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);

ഗെറ്ററുകൾ#

കഴിഞ്ഞു#

isDone എന്നത് റോബോട്ട് നീങ്ങുന്നത് അവസാനിച്ചോ എന്ന് ഒരു ബൂളിയൻ മൂല്യമായി നൽകുന്നു. റോബോട്ടിന്റെ ചലനത്തെ അടിസ്ഥാനമാക്കി മറ്റ് പെരുമാറ്റങ്ങളുടെ സമയം നിയന്ത്രിക്കാൻ ഇത് ഉപയോഗിക്കാം.

Available Functions
bool isDone( void );

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും സ്വീകരിക്കുന്നില്ല.

Return Values
  • true - റോബോട്ട് നീങ്ങുന്നത് പൂർത്തിയായി.

  • false - റോബോട്ട് ഇപ്പോഴും നീങ്ങിക്കൊണ്ടിരിക്കുന്നു.

Notes
  • isDone എന്നത് ടാർഗെറ്റ് അടിസ്ഥാനമാക്കിയുള്ള ഡ്രൈവ്‌ട്രെയിൻ ചലനങ്ങളുമായി (driveFor ഉം turnFor ഉം പോലുള്ള ഒരു ലക്ഷ്യത്തിലേക്ക് നീങ്ങുന്ന പ്രവർത്തനങ്ങൾ) പൊരുത്തപ്പെടുന്നു.

  • drive ഉം turn ഉം പോലുള്ള ഫംഗ്ഷനുകളുമായി isDone പൊരുത്തപ്പെടുന്നില്ല, കാരണം അവ ലക്ഷ്യാധിഷ്ഠിത ചലനം ഉപയോഗിക്കുന്നില്ല.

നീങ്ങുന്നു#

isMoving എന്നത് റോബോട്ട് നീങ്ങുന്നുണ്ടോ എന്ന് ഒരു ബൂളിയൻ മൂല്യമായി നൽകുന്നു. റോബോട്ടിന്റെ ചലനത്തെ അടിസ്ഥാനമാക്കി മറ്റ് പെരുമാറ്റങ്ങളുടെ സമയം നിയന്ത്രിക്കാൻ ഇത് ഉപയോഗിക്കാം.

Available Functions
virtual bool isMoving( void );

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും സ്വീകരിക്കുന്നില്ല.

Return Values
  • true - റോബോട്ട് നീങ്ങുന്നു.

  • false - റോബോട്ട് നീങ്ങുന്നില്ല.

Notes
  • isMoving എന്നത് ടാർഗെറ്റ് അടിസ്ഥാനമാക്കിയുള്ള ഡ്രൈവ്‌ട്രെയിൻ ചലനങ്ങളുമായി (driveFor ഉം turnFor ഉം പോലുള്ള ഒരു ലക്ഷ്യത്തിലേക്ക് നീങ്ങുന്ന പ്രവർത്തനങ്ങൾ) പൊരുത്തപ്പെടുന്നു.

  • drive ഉം turn ഉം പോലുള്ള ഫംഗ്ഷനുകളുമായി isMoving പൊരുത്തപ്പെടുന്നില്ല, കാരണം അവ ലക്ഷ്യാധിഷ്ഠിത ചലനം ഉപയോഗിക്കുന്നില്ല.

വേഗത#

velocity റോബോട്ട് എത്ര വേഗത്തിൽ ഓടിക്കുന്നു എന്ന് തിരികെ നൽകുന്നു.

പോസിറ്റീവ് മൂല്യം എന്നാൽ റോബോട്ട് മുന്നോട്ട് നീങ്ങുന്നു എന്നാണ്. നെഗറ്റീവ് മൂല്യം എന്നാൽ റോബോട്ട് വിപരീത ദിശയിൽ നീങ്ങുന്നു എന്നാണ്.

Available Functions
double velocity(
  velocityUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

velocityUnits

പ്രവേഗ യൂണിറ്റ്: percent അല്ലെങ്കിൽ pct (ശതമാനം), rpm (മിനിറ്റിൽ ഭ്രമണങ്ങൾ), അല്ലെങ്കിൽ dps (സെക്കൻഡിൽ ഡിഗ്രി).

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ഡ്രൈവ്‌ട്രെയിൻ പ്രവേഗം double ആയി നൽകുന്നു.

Examples
// 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 Functions

1 - ഡ്രൈവ്‌ട്രെയിനിന്റെ വൈദ്യുത പ്രവാഹം ആമ്പിയറുകളിൽ തിരികെ നൽകുന്നു.

double current(
    currentUnits units = currentUnits::amp );

2 - ഡ്രൈവ്‌ട്രെയിനിന്റെ വൈദ്യുത പ്രവാഹം പരമാവധി ശതമാനമായി നൽകുന്നു.

double current(
    percentUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

currentUnits

കറന്റ് തിരികെ നൽകേണ്ട യൂണിറ്റ്: amp (amps, ഡിഫോൾട്ട്).

units

percentUnits

കറന്റ് തിരികെ നൽകേണ്ട യൂണിറ്റ്: percent അല്ലെങ്കിൽ pct.

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ഡ്രൈവ്‌ട്രെയിൻ കറന്റ് double ആയി നൽകുന്നു.

ശക്തി#

power എന്നത് ഡ്രൈവ്‌ട്രെയിൻ എത്ര പവർ ഉപയോഗിക്കുന്നു എന്ന് വാട്ടുകളിൽ അളക്കുന്നു. പവർ ഡ്രൈവ്‌ട്രെയിൻ എത്ര വേഗത്തിൽ ഊർജ്ജം ഉപയോഗിക്കുന്നുവെന്ന് കാണിക്കുന്നു.

ഉയർന്ന പവർ മൂല്യം എന്നാൽ ഡ്രൈവ്‌ട്രെയിൻ വേഗത്തിൽ ഊർജ്ജം ഉപയോഗിക്കുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്. റോബോട്ട് ഒരു വസ്തുവിനെതിരെ തള്ളുമ്പോഴോ അത് കുടുങ്ങിക്കിടക്കുമ്പോൾ നീങ്ങാൻ ശ്രമിക്കുമ്പോഴോ ഇത് സംഭവിക്കാം.

ഇത് ചലനങ്ങൾ താരതമ്യം ചെയ്യാനോ ഡ്രൈവ്‌ട്രെയിൻ ബുദ്ധിമുട്ടുന്നുണ്ടോ എന്ന് പരിശോധിക്കാനോ ഉപയോഗിക്കാം. പവർ ഉയർന്ന നിലയിൽ തുടരുകയാണെങ്കിൽ, ഡ്രൈവ്‌ട്രെയിൻ ചൂടാകുകയോ ഊർജ്ജം കാര്യക്ഷമമായി ഉപയോഗിക്കാതിരിക്കുകയോ ചെയ്‌തേക്കാം.

Available Functions
double power(
  powerUnits units = powerUnits::watt );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

powerUnits

പവർ യൂണിറ്റ്: watt (വാട്ട്സ്, സ്ഥിരസ്ഥിതി).

Return Values

ഡ്രൈവ്‌ട്രെയിൻ പവർ വാട്ടുകളിൽ double ആയി തിരികെ നൽകുന്നു.

ടോർക്ക്#

ചക്രങ്ങൾ കറങ്ങുമ്പോൾ ഡ്രൈവ്‌ട്രെയിനിന് എത്രത്തോളം ശക്തമായി തള്ളാനോ വലിക്കാനോ കഴിയുമെന്ന് ടോർക്ക് കാണിക്കുന്നു.

torque എന്നത് ഡ്രൈവ്‌ട്രെയിൻ എത്ര ടോർക്ക് ഉപയോഗിക്കുന്നു എന്ന് നൽകുന്നു, ഇത് ന്യൂട്ടൺ-മീറ്ററിൽ (Nm) അല്ലെങ്കിൽ ഇഞ്ച്-പൗണ്ടിൽ (InLb) അളക്കുന്നു.

ഉയർന്ന ടോർക്ക് മൂല്യം എന്നാൽ ഡ്രൈവ്‌ട്രെയിൻ കൂടുതൽ ശക്തമായി തള്ളുകയോ വലിക്കുകയോ ചെയ്യുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്. റോബോട്ട് ഒരു വസ്തുവിനെതിരെ തള്ളുമ്പോഴോ അത് കുടുങ്ങിക്കിടക്കുമ്പോൾ ചലിക്കാൻ ശ്രമിക്കുമ്പോഴോ ഇത് സംഭവിക്കാം.

ഡ്രൈവ്ട്രെയിൻ ബുദ്ധിമുട്ടുന്നുണ്ടോ എന്ന് പരിശോധിക്കുന്നതിനോ വ്യത്യസ്ത ചലനങ്ങൾക്ക് എത്രമാത്രം പുഷ് ആവശ്യമാണെന്ന് താരതമ്യം ചെയ്യുന്നതിനോ ഇത് ഉപയോഗിക്കാം.

Available Functions
double torque(
  torqueUnits units = torqueUnits::nm );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

torqueUnits

ടോർക്ക് തിരികെ നൽകേണ്ട യൂണിറ്റ്: Nm (ന്യൂട്ടൺ മീറ്റർ, സ്ഥിരസ്ഥിതി) അല്ലെങ്കിൽ InLb (ഇഞ്ച് പൗണ്ട്).

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ഡ്രൈവ്‌ട്രെയിൻ ടോർക്ക് double ആയി നൽകുന്നു.

കാര്യക്ഷമത#

0% മുതൽ 100% വരെയുള്ള ശതമാനത്തിൽ, ഡ്രൈവ്‌ട്രെയിൻ എത്രത്തോളം കാര്യക്ഷമമായി പവർ ഉപയോഗിക്കുന്നുവെന്ന് efficiency നൽകുന്നു.

ഡ്രൈവ്‌ട്രെയിനിന്റെ പവറിന്റെ എത്രത്തോളം ചലനത്തിനായി ഉപയോഗിക്കപ്പെടുന്നു എന്ന് കാര്യക്ഷമത കാണിക്കുന്നു. ഉയർന്ന കാര്യക്ഷമത മൂല്യം എന്നാൽ ഡ്രൈവ്‌ട്രെയിനിന്റെ പവറിന്റെ കൂടുതൽ ഭാഗം ചലിക്കാൻ ഉപയോഗിക്കുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്. ഡ്രൈവ്‌ട്രെയിനിന്റെ കഠിനാധ്വാനം ചെയ്യുമ്പോൾ, പക്ഷേ അധികം ചലിക്കാതെ, റോബോട്ട് കുടുങ്ങിക്കിടക്കുമ്പോഴോ ഒരു വസ്തുവിന് നേരെ തള്ളുമ്പോഴോ പോലെ, കുറഞ്ഞ കാര്യക്ഷമത മൂല്യം സംഭവിക്കാം.

ചലനങ്ങൾ താരതമ്യം ചെയ്യുന്നതിനോ ഡ്രൈവ്ട്രെയിൻ ചലനത്തിനായി ഉപയോഗിക്കുന്നതിന് പകരം പവർ പാഴാക്കുന്നുണ്ടോ എന്ന് പരിശോധിക്കുന്നതിനോ ഇത് ഉപയോഗിക്കാം.

Available Functions
double efficiency(
  percentUnits units = percentUnits::pct );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

percentUnits

കാര്യക്ഷമത തിരികെ നൽകേണ്ട യൂണിറ്റ്: percent അല്ലെങ്കിൽ pct (സ്ഥിരസ്ഥിതി).

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ഡ്രൈവ്‌ട്രെയിൻ കാര്യക്ഷമത double ആയി തിരികെ നൽകുന്നു.

താപനില#

temperature ഡ്രൈവ്‌ട്രെയിനിന്റെ ശരാശരി താപനില 0% മുതൽ 100% വരെയുള്ള ശതമാനമായി നൽകുന്നു.

ഡ്രൈവ്‌ട്രെയിൻ മോട്ടോറുകൾ എത്രത്തോളം ചൂടാണെന്ന് താപനില കാണിക്കുന്നു. ഉയർന്ന താപനില എന്നതിനർത്ഥം മോട്ടോറുകൾ പ്രവർത്തിക്കുമ്പോൾ ചൂടാകുന്നു എന്നാണ്. പൂർണ്ണ പ്രകടനത്തോടെ പ്രവർത്തിക്കാൻ മോട്ടോറുകൾ 55°C-ൽ താഴെയായിരിക്കണം.

മോട്ടോറുകൾ വളരെ ചൂടായാൽ, സ്വയം പരിരക്ഷിക്കുന്നതിനായി അവ പരമാവധി കറന്റ് കുറയ്ക്കും. 70°C-ൽ, തണുക്കുന്നത് വരെ മോട്ടോറുകൾ പ്രവർത്തിക്കുന്നത് നിർത്തും.

ആവർത്തിച്ചുള്ള ചലനങ്ങൾ, ദീർഘദൂര ഓട്ടങ്ങൾ, അല്ലെങ്കിൽ ഒരു വസ്തുവിനെതിരെ തള്ളുമ്പോൾ ഡ്രൈവ്ട്രെയിൻ അമിതമായി ചൂടാകുന്നുണ്ടോ എന്ന് പരിശോധിക്കാൻ ഇത് ഉപയോഗിക്കാം.

Available Functions
double temperature(
  percentUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

percentUnits

താപനില തിരികെ നൽകേണ്ട യൂണിറ്റ്: percent അല്ലെങ്കിൽ pct.

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ശരാശരി ഡ്രൈവ്‌ട്രെയിൻ താപനില double ആയി നൽകുന്നു.

Notes
  • 50% എന്ന റിട്ടേൺ മൂല്യം സൂചിപ്പിക്കുന്നത് ശരാശരി മോട്ടോർ താപനില ഏകദേശം 45°C (113°F ) ആണെന്നാണ്.

  • ഡ്രൈവ്‌ട്രെയിനിന്റെ സാധാരണ പ്രവർത്തന താപനില പരിധി ഏകദേശം 20°C (68°F) മുതൽ 70°C (158°F ) വരെയാണ്.

വോൾട്ടേജ്#

voltage ഡ്രൈവ്ട്രെയിനിലേക്ക് വിതരണം ചെയ്യുന്ന വൈദ്യുത വോൾട്ടേജ് തിരികെ നൽകുന്നു.

ഡ്രൈവ്‌ട്രെയിൻ മോട്ടോറുകളിലേക്ക് വിതരണം ചെയ്യുന്ന വൈദ്യുത മർദ്ദമാണ് വോൾട്ടേജ്. ഡ്രൈവ്‌ട്രെയിൻ വൈദ്യുതോർജ്ജം എങ്ങനെ ഉപയോഗിക്കുന്നുവെന്ന് മനസ്സിലാക്കാൻ കറന്റ്, പവർ മൂല്യങ്ങൾ ഉപയോഗിച്ച് ഇത് ഉപയോഗിക്കാം.

Available Functions
double  voltage(
  voltageUnits units = voltageUnits::volt );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

voltageUnits

വോൾട്ടേജ് തിരികെ നൽകേണ്ട യൂണിറ്റ്: volt (വോൾട്ട്, ഡിഫോൾട്ട്) അല്ലെങ്കിൽ voltageUnits::mV (മില്ലിവോൾട്ട്).

Return Values

തിരഞ്ഞെടുത്ത യൂണിറ്റിൽ ഡ്രൈവ്‌ട്രെയിൻ വോൾട്ടേജ് double ആയി നൽകുന്നു.