ड्राइवट्रेन#

परिचय#

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

पैरामीटर#

पैरामीटर

प्रकार

विवरण

&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
    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 रोबोट को निरंतर आगे या पीछे ले जाता है। रोबोट तब तक चलता रहेगा जब तक उसे कोई और क्रिया, जैसे मुड़ना या रुकना, करने का निर्देश नहीं दिया जाता।

Available Functions

1 - वर्तमान ड्राइव वेग का उपयोग करके ड्राइव करता है।

void drive(
    directionType dir );

2 - निर्दिष्ट वेग से चलता है।

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

Parameters

पैरामीटर

प्रकार

विवरण

dir

directionType

रोबोट की गति की दिशा: forward या reverse.

velocity

double

वेग 0% से 100% तक होता है जब velocityUnits::pctउपयोग किया जाता है, 0 से 120 rpm तक जब rpmका उपयोग किया जाता है, या 0 से 720 डिग्री प्रति सेकंड तक जब dpsका उपयोग किया जाता है। यदि कोई वेग प्रदान नहीं किया जाता है, तो रोबोट वर्तमान ड्राइव वेग पर चलता है।

units

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

Return Values

इस कार्य पर कीमत के लिहाज से कुछ भी रिटर्न नहीं मिलता है।

Notes
  • drive प्रतीक्षा नहीं कर रही है। प्रोजेक्ट कोड की अगली पंक्ति को तुरंत चलाएगा।

  • रोबोट तब तक चलता रहेगा जब तक stop को कॉल नहीं किया जाता है या कोई अन्य ड्राइवट्रेन मूवमेंट फ़ंक्शन नहीं चलता है।

  • isDone और isMoving का उपयोग drive के साथ नहीं किया जाता है क्योंकि drive लक्ष्य दूरी नहीं है।

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

ड्राइव के लिए#

driveFor कमांड रोबोट को एक निश्चित दूरी तक आगे या पीछे ले जाता है। प्रोजेक्ट रोबोट के चलने के पूरा होने तक प्रतीक्षा करेगा, उसके बाद ही कोड की अगली पंक्ति चलेगी।

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

वेग 0% से 100% तक होता है जब velocityUnits::pctउपयोग किया जाता है, 0 से 120 rpm तक जब rpmका उपयोग किया जाता है, या 0 से 720 डिग्री प्रति सेकंड तक जब dpsका उपयोग किया जाता है। यदि कोई वेग प्रदान नहीं किया जाता है, तो रोबोट वर्तमान ड्राइव वेग पर चलता है।

units_v

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

waitForCompletion

bool

true (डिफ़ॉल्ट) अगली कोड पंक्ति चलने से पहले रोबोट के चलने के पूरा होने तक प्रोजेक्ट को प्रतीक्षा कराता है। false अगली कोड पंक्ति तुरंत चलाता है।

Return Values

यह एक बूलियन मान के रूप में बताता है कि रोबोट लक्ष्य दूरी तक पहुंचा या नहीं।

  • true - रोबोट लक्ष्य दूरी तक पहुंच गया।

  • false - रोबोट ने गति पूरी नहीं की, या फ़ंक्शन गति पूरी होने से पहले ही लौट आया क्योंकि waitForCompletion false पर सेट किया गया था।

Notes
  • जब driveFor चल रहा हो, तब किसी अन्य ड्राइवट्रेन मूवमेंट फ़ंक्शन को चलाने से वर्तमान मूवमेंट बाधित हो जाएगा।

  • driveFor एक लक्ष्य दूरी का उपयोग करता है, इसलिए isDone और isMoving का उपयोग इसके साथ किया जा सकता है।

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

मोड़#

turn रोबोट को हमेशा के लिए बाएँ या दाएँ घुमाता है। रोबोट तब तक घूमता रहेगा जब तक उसे कोई और क्रिया, जैसे चलाना या रोकना, करने को न कहा जाए।

Available Functions

1 - वर्तमान मोड़ वेग का उपयोग करके मुड़ता है।

void turn(
    turnType dir );

2 - निर्दिष्ट वेग पर मुड़ता है।

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

Parameters

पैरामीटर

प्रकार

विवरण

dir

turnType

रोबोट के मुड़ने की दिशा: left या right।

velocity

double

velocityUnits::pctउपयोग करते समय, 0% से 100% तक, rpmका उपयोग करते समय, या dpsउपयोग करते समय, रोबोट के घूमने की गति 0% से 120 rpm तक होती है। यदि कोई गति प्रदान नहीं की जाती है, तो रोबोट वर्तमान घूमने की गति से घूमता है।

units

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

Return Values

इस कार्य पर कीमत के लिहाज से कुछ भी रिटर्न नहीं मिलता है।

Notes
  • turn प्रतीक्षा रहित है। प्रोजेक्ट कोड की अगली पंक्ति को तुरंत चलाएगा।

  • रोबोट तब तक घूमता रहेगा जब तक stop को कॉल नहीं किया जाता है या कोई अन्य ड्राइवट्रेन मूवमेंट फ़ंक्शन नहीं चलता है।

  • isDone और isMoving का उपयोग turn के साथ नहीं किया जाता है क्योंकि turn कोई लक्ष्य कोण नहीं है।

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

मोड़ के लिए#

turnFor टर्न रोबोट को एक निश्चित संख्या में डिग्री, चक्कर या रॉ यूनिट के लिए बाएँ या दाएँ घुमाता है। यह घुमाव रोबोट की वर्तमान स्थिति के सापेक्ष होता है। प्रोजेक्ट रोबोट के पूरा घूमने तक प्रतीक्षा करेगा, उसके बाद ही कोड की अगली पंक्ति चलेगी।

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

velocityUnits::pctउपयोग करते समय, 0% से 100% तक, rpmका उपयोग करते समय, या dpsउपयोग करते समय, रोबोट के घूमने की गति 0% से 120 rpm तक होती है। यदि कोई गति प्रदान नहीं की जाती है, तो रोबोट वर्तमान घूमने की गति से घूमता है।

units_v

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

waitForCompletion

bool

true (डिफ़ॉल्ट) अगली कोड पंक्ति चलने से पहले रोबोट के मुड़ने के पूरा होने तक प्रोजेक्ट को प्रतीक्षा कराता है। false अगली कोड पंक्ति तुरंत चलाता है।

Return Values

यह एक बूलियन मान के रूप में बताता है कि रोबोट लक्ष्य कोण तक पहुंचा या नहीं।

  • true - रोबोट लक्ष्य कोण तक पहुँच गया।

  • false - रोबोट ने बारी पूरी नहीं की, या फ़ंक्शन बारी पूरी होने से पहले ही लौट आया क्योंकि waitForCompletion false पर सेट किया गया था।

Notes
  • जब turnFor फ़ंक्शन चल रहा हो, तब किसी अन्य ड्राइवट्रेन मूवमेंट फ़ंक्शन को चलाने से वर्तमान मूवमेंट बाधित हो जाएगा।

  • turnFor एक लक्ष्य कोण का उपयोग करता है, इसलिए isDone और isMoving का उपयोग इसके साथ किया जा सकता है।

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 रोबोट को बताता है कि उसे कितनी गति से चलना है। उच्च प्रतिशत होने पर रोबोट तेजी से चलता है और निम्न प्रतिशत होने पर रोबोट धीरे चलता है।

प्रत्येक परियोजना की शुरुआत में रोबोट डिफ़ॉल्ट रूप से 50% वेग से चलता है।

ध्यान दें: अधिक वेग से रोबोट की गति बढ़ जाती है, लेकिन सटीकता कम हो सकती है। कम वेग से रोबोट की गति धीमी हो जाती है, लेकिन सटीकता अधिक हो सकती है।

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

Parameters

पैरामीटर

प्रकार

विवरण

velocity

double

velocityUnits::pctका उपयोग करते समय 0% से 100% तक, rpmका उपयोग करते समय 0 से 120 rpm तक, या dps का उपयोग करते समय 0 से 720 डिग्री प्रति सेकंड तक ड्राइव करने के लिए वेग।

units

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

Return Values

इस कार्य पर कीमत के लिहाज से कुछ भी रिटर्न नहीं मिलता है।

Notes
  • ड्राइव वेलोसिटी का उपयोग बाद के ड्राइवट्रेन मूवमेंट फंक्शन्स द्वारा किया जाता है, जब तक कि फंक्शन कॉल में कोई विशिष्ट वेलोसिटी प्रदान न की गई हो।

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 से 120 rpm तक, या dps का उपयोग करते समय 0 से 720 डिग्री प्रति सेकंड तक घूमने की गति।

units

velocityUnits

वेग इकाई: velocityUnits::pct (प्रतिशत), rpm (प्रति मिनट घूर्णन), या dps (प्रति सेकंड डिग्री)।

Return Values

इस कार्य पर कीमत के लिहाज से कुछ भी रिटर्न नहीं मिलता है।

Notes
  • टर्न वेलोसिटी का उपयोग बाद में ड्राइवट्रेन टर्निंग फंक्शन्स द्वारा किया जाता है, जब तक कि फंक्शन कॉल में कोई विशिष्ट वेलोसिटी प्रदान न की गई हो।

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 कॉल द्वारा किया जाता है जब तक कि फ़ंक्शन कॉल में एक विशिष्ट स्टॉपिंग मोड प्रदान नहीं किया जाता है।

  • यदि इस फ़ंक्शन का उपयोग नहीं किया जाता है, तो रोबोट रुकते समय brake उपयोग करेगा।

सेटटाइमआउट#

setTimeout निर्धारित करता है कि रोबोट किसी गतिविधि को पूरा करने के लिए कितनी देर तक प्रयास करेगा। यदि रोबोट उस समय में गतिविधि पूरी नहीं कर पाता है, तो वह प्रयास करना बंद कर देगा और कोड की अगली पंक्ति पर चला जाएगा। इससे रोबोट को किसी गतिविधि में अटकने से बचाया जा सकता है।

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

Parameters

पैरामीटर

प्रकार

विवरण

time

int32_t

रोबोट को किसी गतिविधि को पूरा करने के लिए मिलने वाला समय। यह एक धनात्मक पूर्णांक होना चाहिए।

units

timeUnits

समय की इकाई: sec या msec।

Return Values

इस कार्य पर कीमत के लिहाज से कुछ भी रिटर्न नहीं मिलता है।

Notes
  • टाइमआउट केवल ड्राइवट्रेन कार्यों पर लागू होता है जो किसी लक्ष्य की ओर बढ़ते हैं, जैसे driveFor और turnFor।

Examples
// Turn right after driving forward.
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।

  • isDone का उपयोग drive या turn के साथ नहीं किया जाता है, क्योंकि वे फ़ंक्शन किसी लक्ष्य पर नहीं जाते हैं।

चल रहा है#

isMoving बूलियन मान के रूप में यह बताता है कि रोबोट चल रहा है या नहीं। इसका उपयोग रोबोट की गति के आधार पर अन्य व्यवहारों के समय को नियंत्रित करने के लिए किया जा सकता है।

Available Functions
virtual bool isMoving( void );

Parameters

यह फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता है।

Return Values
  • true - रोबोट चल रहा है।

  • false - रोबोट हिल नहीं रहा है।

Notes
  • isMoving लक्ष्य-आधारित ड्राइवट्रेन आंदोलन कार्यों के साथ काम करता है, जैसे driveFor और turnFor।

  • isMoving का उपयोग drive या turn के साथ नहीं किया जाता है, क्योंकि वे फ़ंक्शन किसी लक्ष्य की ओर नहीं बढ़ते हैं।

वेग#

velocity यह बताता है कि रोबोट कितनी तेजी से चल रहा है।

यह वेग को प्रतिशत के रूप में, rpmमें, या dpsमें दर्शा सकता है। धनात्मक मान का अर्थ है कि रोबोट आगे की ओर चल रहा है। ऋणात्मक मान का अर्थ है कि रोबोट पीछे की ओर चल रहा है।

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.

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 के रूप में लौटाता है।

क्षमता#

efficiency यह दर्शाता है कि ड्राइवट्रेन कितनी कुशलता से बिजली का उपयोग कर रहा है, प्रतिशत के रूप में 0% से 100% तक।

दक्षता दर्शाती है कि ड्राइवट्रेन की कितनी शक्ति गति के लिए उपयोग हो रही है। उच्च दक्षता मान का अर्थ है कि ड्राइवट्रेन की अधिक शक्ति गति में उपयोग हो रही है। कम दक्षता मान तब हो सकता है जब ड्राइवट्रेन कड़ी मेहनत कर रहा हो लेकिन गति कम हो रही हो, जैसे कि जब रोबोट कहीं फंस गया हो या किसी वस्तु से टकरा रहा हो।

इसका उपयोग गतिविधियों की तुलना करने या यह जांचने के लिए किया जा सकता है कि क्या ड्राइवट्रेन गति के लिए उपयोग करने के बजाय शक्ति को बर्बाद कर रहा है।

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. voltageUnits::mV का अर्थ है मिलीवोल्ट।

Return Values

चयनित इकाई में ड्राइवट्रेन वोल्टेज को double के रूप में लौटाता है।