Aktarma organları#

giriiş#

drivetrain bir robotun nasıl hareket ettiğini ve döndüğünü kontrol eder. Tahrik sistemi, robotu hareket ettirmek için birlikte çalışan motorlardan ve tekerleklerden oluşur.

drivetrain , yön veya dönüşe dayalı dönüşler için Atalet Sensörü veya Jiroskop Sensörü kullanmaz. İleri veya geri gidebilir ve sola veya sağa dönebilir, ancak belirli bir yöne veya dönüşe dönemez. Yön ve dönüşe dayalı dönüşler için smartdrive sınıfını kullanın.

Türetilmiş Sınıflar#

drivetrain sınıfı, aşağıdaki türetilmiş sınıflar için temel sınıf görevi görür:

  • smartdrive - Bu sınıf, yön tabanlı ve dönüş tabanlı dönüşleri etkinleştirmek için Atalet Sensörü veya Jiroskop Sensörü desteği ekler.

Sınıf Oluşturucuları#

1 - Mevcut motor_group nesnelerini kullanarak sol (&l) ve sağ (&r) taraflar için bir tahrik sistemi oluşturur.

drivetrain(
    motor_group      &l,
    motor_group      &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

2 - Sol (&l) ve sağ (&r) taraflar için mevcut motor nesnelerini kullanarak bir tahrik sistemi oluşturur.

drivetrain(
    motor            &l,
    motor            &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

Sınıf Yıkıcısı#

drivetrain nesnesini yok eder ve ilgili kaynakları serbest bırakır.

virtual ~drivetrain();

Parametreler#

Parametre

Tip

Tanım

&l / &r

motor_group / motor

Sol ve sağ motorlar veya motor grupları. Her iki parametre de aynı türü kullanmalıdır: ya iki adet motor_group nesnesi ya da iki adet motor nesnesi.

wheelTravel

double

Tahrik sistemi tekerleklerinin çevresi. Varsayılan değer 320.

trackWidth

double

Sol ve sağ tekerlekler arasındaki mesafe. Varsayılan değer 320.

wheelBase

double

Ön ve arka tekerlekler arasındaki mesafe. Varsayılan değer 130.

unit

distanceUnits

wheelTravel, trackWidthve wheelBaseiçin birim: mm (milimetre, varsayılan) veya inches.

externalGearRatio

double

Vites kullanılıyorsa, sürüş mesafelerini ayarlamak için kullanılan vites oranı. Varsayılan değer 1.0.

Örnek#

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

Üye Fonksiyonları#

Aktarma organlarını kodlamanın birçok yolu vardır. Aşağıda drivetrain üyesi fonksiyonlarının tümünün listesi bulunmaktadır:

İşlemler - Robotu hareket ettirin ve döndürün.

  • drive - Robotu sonsuza dek ileri veya geri hareket ettirir.

  • driveFor - Robotu belirli bir mesafe boyunca ileri veya geri hareket ettirir.

  • turn - Robotu sonsuza dek sola veya sağa döndürür.

  • turnFor - Robotu belirli sayıda derece sola veya sağa döndürür.

  • stop - Robotun hareketini durdurur.

Değiştiriciler - Aktarma organı ayarlarını düzenleyin.

  • setDriveVelocity - Robota ne kadar hızlı süreceğini söyler.

  • setTurnVelocity - Robota ne kadar hızlı döneceğini söyler.

  • setStopping - Robotun hareket etmeyi nasıl durduracağını belirtir: fren yaparak, süzülerek veya tutunarak.

  • setTimeout - Robotun bir hareketi tamamlamak için kaç saniye deneyeceğini ayarlar.

Getter’lar - Hareket durumunu kontrol edin.

  • isDone - Robotun hareketinin tamamlanıp tamamlanmadığını Boolean değer olarak döndürür.

  • isMoving - Robotun hareket edip etmediğini Boolean değer olarak döndürür.

  • velocity - Robotun ne kadar hızlı sürdüğünü döndürür.

  • current - Aktarma organlarının ne kadar elektrik akımı kullandığını döndürür.

  • power - Aktarma organlarının enerjiyi ne kadar hızlı kullandığını döndürür.

  • torque - Aktarma organlarının ne kadar tork kullandığını döndürür.

  • efficiency - Aktarma organlarının gücü ne kadar verimli kullandığını gösterir.

  • temperature - Aktarma organlarının ne kadar sıcak olduğunu döndürür.

  • voltage - Tahrik sistemine sağlanan elektrik voltajını döndürür.

Before calling any drivetrain member functions, a drivetrain object must be created, as shown below:

/* 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

Eylemler#

sürmek#

drive robotu sonsuza dek ileri veya geri hareket ettirir. Robot, dönme veya durma gibi başka bir işlem verilene kadar hareket etmeye devam edecektir. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Available Functions

1 - Mevcut yapılandırılmış sürüş hızı kullanılarak sürüş yapılır.

void drive(
    directionType dir );

2 - Belirtilen hızda hareket eder.

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

Parameters

Parametre

Tip

Tanım

dir

directionType

Robotun hareket yönü: forward veya reverse.

velocity

double

Hız, velocityUnits::pctkullanıldığında %0 ile %100 arasında, rpmkullanıldığında 0 ile 600 rpm arasında veya dpskullanıldığında 0 ile 3600 derece/saniye arasında değişir. Hız belirtilmezse, robot mevcut sürüş hızında hareket eder.

units

velocityUnits

Hız birimi: velocityUnits::pct (yüzde), rpm (dakikadaki dönüş sayısı) veya dps (saniyede derece).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • drive bekleme yapmaz; proje, çağrıdan hemen sonra bir sonraki kod satırını yürütmeye devam edecektir.

  • stop çağrılana veya başka bir aktarma organı hareket fonksiyonu (örneğin driveFor veya turn) yürütülene kadar aktarma organı hareket etmeye devam edecektir.

  • Functions such as isDone and isMoving are not applicable to drive, since it does not use target-based movement (doesn’t have a distance parameter).

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

driveFor#

driveFor komutu, robotu belirli bir mesafe boyunca ileri veya geri hareket ettirir. Varsayılan olarak, proje bir sonraki kod satırı çalışmadan önce robotun hareketini tamamlamasını bekler. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Available Functions

1 - Mevcut yapılandırılmış sürüş hızı kullanılarak belirtilen yönde bir mesafe boyunca sürüş yapar.

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

2 - Mevcut yapılandırılmış sürüş hızı kullanılarak mesafeye bağlı bir yönde hareket eder.

bool driveFor(
    double        distance,
    distanceUnits units,
    bool          waitForCompletion = true );

3 - Belirtilen hızda mesafeye bağlı olarak bir yönde hareket eder.

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

4 - Belirtilen yönde, belirtilen hızda ve belirtilen mesafe boyunca hareket eder.

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

Parameters

Parametre

Tip

Tanım

dir

directionType

Robotun hareket yönü: forward veya reverse.

distance

double

Robotun kat ettiği mesafe.

units

distanceUnits

Mesafe birimi: mm (milimetre), inchesveya cm (santimetre).

velocity

double

Hız, velocityUnits::pctkullanıldığında %0 ile %100 arasında, rpmkullanıldığında 0 ile 600 rpm arasında veya dpskullanıldığında 0 ile 3600 derece/saniye arasında değişir. Hız belirtilmezse, robot mevcut sürüş hızında hareket eder.

units_v

velocityUnits

Hız birimi: velocityUnits::pct (yüzde), rpm (dakikadaki dönüş sayısı) veya dps (saniyede derece).

waitForCompletion

bool

true (varsayılan) robot hareket etmeyi bitirene kadar projenin bir sonraki kod satırının çalışmasını beklemesini sağlar. false bir sonraki kod satırının hemen çalışmasını sağlar.

Return Values

Robotun hedef mesafeye ulaşıp ulaşmadığını Boolean değer olarak döndürür.

  • true - Robot hedef mesafeye ulaştı.

  • false - Robot hareketi tamamlamadı veya fonksiyon, hareket tamamlanmadan önce geri döndü çünkü waitForCompletion değeri false olarak ayarlanmıştı.

Notes
  • driveFor işlemi devam ederken başka bir aktarma organı hareket fonksiyonunun (örneğin drive veya turnFor) yürütülmesi mevcut hareketi kesintiye uğratacaktır.

  • driveFor hedef tabanlı olduğundan ( distance parametresini kullanır), isDone ve isMoving gibi fonksiyonlar driveFor ile çalışır.

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

dönüş#

turn robotu sonsuza dek sola veya sağa döndürür. Robot, sürüş veya durma gibi başka bir işlem verilene kadar dönmeye devam edecektir. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Available Functions

1 - Mevcut yapılandırılmış dönüş hızı kullanılarak dönüş yapar.

void turn(
    turnType dir );

2 - Belirtilen hızda döner.

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

Parameters

Parametre

Tip

Tanım

dir

turnType

Robotun dönüş yönü: left veya right.

velocity

double

velocityUnits::pctkullanıldığında dönüş hızı %0 ile %100 arasında, rpmkullanıldığında 0 ile 600 rpm arasında veya dpskullanıldığında 0 ile 3600 derece/saniye arasında değişir. Hız belirtilmezse, robot mevcut dönüş hızıyla döner.

units

velocityUnits

Hız birimi: velocityUnits::pct (yüzde), rpm (dakikadaki dönüş sayısı) veya dps (saniyede derece).

Return Values This function does not return a value. Notes
  • turn bekleme yapmaz; proje çağrıdan hemen sonra bir sonraki kod satırını yürütmeye devam edecektir.

  • stop çağrılana veya başka bir aktarma organı hareket fonksiyonu (örneğin turnFor veya drive) yürütülene kadar aktarma organı dönmeye devam edecektir.

  • isDone ve isMoving gibi fonksiyonlar, hedef tabanlı hareket kullanmadığı için (bir angle parametresi olmadığı için) turniçin geçerli değildir.

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

dönüş için#

turnFor için, robot belirli bir derece kadar sola veya sağa döner. Dönüş, robotun mevcut konumuna göre belirlenir. Varsayılan olarak, bir sonraki kod satırı çalışmadan önce robotun dönüşü tamamlanmasını bekleyecektir. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Available Functions

1 - Mevcut yapılandırılmış dönüş hızı kullanılarak belirtilen açı için dönüş yapar.

bool turnFor(
    double        angle,
    rotationUnits units,
    bool          waitForCompletion = true );

2 - Mevcut yapılandırılmış dönüş hızı kullanılarak belirtilen yönde bir açı boyunca döner.

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

3 - Belirtilen hızda, belirtilen açı için dönüş sayısı.

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

4 - Belirtilen yönde, belirtilen hızda ve belirtilen açıda döner.

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

Parameters

Parametre

Tip

Tanım

dir

turnType

Robotun dönüş yönü: left veya right.

angle

double

Robotun döndüğü açı.

units

rotationUnits

Dönüş birimi: deg , rev veya raw Bir devir 360 dereceye eşittir.

velocity

double

velocityUnits::pctkullanıldığında dönüş hızı %0 ile %100 arasında, rpmkullanıldığında 0 ile 600 rpm arasında veya dpskullanıldığında 0 ile 3600 derece/saniye arasında değişir. Hız belirtilmezse, robot mevcut dönüş hızıyla döner.

units_v

velocityUnits

Hız birimi: velocityUnits::pct (yüzde), rpm (dakikadaki dönüş sayısı) veya dps (saniyede derece).

waitForCompletion

bool

true (varsayılan) robotun dönüşü tamamlanana kadar bir sonraki kod satırının çalışmasını bekler. false bir sonraki kod satırının hemen çalışmasını sağlar.

Return Values

Robotun hedef açıya ulaşıp ulaşmadığını Boolean değer olarak döndürür.

  • true - Robot hedef açıya ulaştı.

  • false - Robot dönüşü tamamlamadı veya fonksiyon dönüş tamamlanmadan önce geri döndü çünkü waitForCompletion değeri false olarak ayarlanmıştı.

Notes
  • turnFor işlemi devam ederken başka bir aktarma organı hareket fonksiyonunun (örneğin turn veya drive) yürütülmesi mevcut hareketi kesintiye uğratacaktır.

  • turnFor hedef tabanlı olduğundan ( angle parametresini kullanır), isDone ve isMoving gibi fonksiyonlar turnFor ile çalışır.

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

durmak#

stop robotun hareketini durdurur. Bir durdurma modu belirtilmişse, bu fonksiyon çağrısı için robotun nasıl duracağını kontrol eder.

Available Functions

1 - Şu ​​anda yapılandırılmış durdurma modu kullanılarak aktarma organlarını durdurur.

void stop();

2 - Belirtilen fren modunu kullanarak aktarma organlarını durdurur.

void stop(
    brakeType mode );

Parameters

Parametre

Tip

Tanım

mode

brakeType

Robotun nasıl duracağı:

  • brake - Hemen durur.
  • coast - Yavaşlayarak durur.
  • hold - Hemen durur ve tekerleklerin konumunu korur.

Return Values

Bu fonksiyon bir değer döndürmez.

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

Mutatörler#

Sürüş Hızını Ayarla#

setDriveVelocity komutu robota ne kadar hızlı gideceğini söyler. Daha yüksek bir yüzde robotun daha hızlı, daha düşük bir yüzde ise daha yavaş gitmesini sağlar. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Her proje, robotun varsayılan olarak %50 hızda hareket etmesiyle başlar.

Not: Daha yüksek hız, robotun daha hızlı hareket etmesini sağlar, ancak hassasiyeti azalabilir. Daha düşük hız ise robotun daha yavaş hareket etmesini sağlar, ancak hassasiyeti artabilir.

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

Parameters

Parametre

Tip

Tanım

velocity

double

velocityUnits::pctkullanılırken %0’dan %100’e, rpmkullanılırken 0’dan 600 rpm’ye veya dps kullanılırken saniyede 0’dan 3600 dereceye kadar sürüş hızı.

units

velocityUnits

Hız birimi: velocityUnits::pct (yüzde), rpm (dakikadaki dönüş sayısı) veya dps (saniyede derece).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Tahrik hızı, fonksiyon çağrısında belirli bir hız belirtilmediği sürece, sonraki tüm tahrik sistemi hareket fonksiyonlarına (örneğin drive ve driveFor) uygulanır.

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

Dönüş Hızını Ayarla#

setTurnVelocity , robota ne kadar hızlı döneceğini söyler. Daha yüksek bir yüzde robotun daha hızlı dönmesini, daha düşük bir yüzde ise robotun daha yavaş dönmesini sağlar. RPM veya DPS için limit, tahrik sisteminin dişli oranına göre değişir.

Her proje, robotun varsayılan olarak %50 hızda dönmesiyle başlar.

Not: Daha yüksek hız, robotun daha hızlı dönmesini sağlar, ancak hassasiyeti azalabilir. Daha düşük hız ise robotun daha yavaş dönmesini sağlar, ancak hassasiyeti artabilir.

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

Parameters

Parametre

Tip

Tanım

velocity

double

velocityUnits::pctkullanıldığında %0’dan %100’e, rpmkullanıldığında 0’dan 600 rpm’ye veya dps kullanıldığında saniyede 0’dan 3600 dereceye kadar dönüş hızı.

units

velocityUnits

Hız birimi: % percent ) veya % pct ), rpm ) veya dps).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Dönüş hızı, fonksiyon çağrısında belirli bir hız belirtilmediği sürece, sonraki tüm aktarma organı dönüş fonksiyonlarına (örneğin turn ve turnFor) uygulanır.

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

Durdurma ayarı#

setStopping , robotun hareket etmeyi nasıl durduracağını belirler: fren yaparak, süzülerek veya durarak.

Available Functions
void setStopping(
  brakeType mode );

Parameters

Parametre

Tip

Tanım

mode

brakeType

Robotun nasıl duracağı:

  • brake - Hemen durur.
  • coast - Yavaşlayarak durur.
  • hold - Hemen durur ve tekerleklerin konumunu korur.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Durdurma modu, fonksiyon çağrısında özel bir durdurma modu belirtilmediği sürece, sonraki tüm stop çağrıları için geçerlidir.

setTimeout#

setTimeout , robotun bir hareketi tamamlamak için kaç saniye deneyeceğini belirler. Robot bu süre içinde hareketi tamamlayamazsa, denemeyi bırakır ve bir sonraki kod satırına geçer. Bu, robotun bir harekette takılıp kalmasını önler.

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

Parameters

Parametre

Tip

Tanım

time

int32_t

Robotun bir hareketi tamamlamak için deneyebileceği süre. Bu süre pozitif bir tam sayı olmalıdır.

units

timeUnits

Zaman birimi: sec (saniye) veya msec (milisaniye).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Zaman aşımı yalnızca hedef tabanlı aktarma organı hareket fonksiyonları için geçerlidir (örneğin driveFor ve turnFor).

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

Getters#

Tamamlandı#

isDone , robotun hareketinin tamamlanıp tamamlanmadığını Boolean bir değer olarak döndürür. Bu, robotun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.

Available Functions
bool isDone( void );

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values
  • true - Robot hareket etmeyi bitirdi.

  • false - Robot hala hareket halinde.

Notes
  • isDone , hedef tabanlı tahrik sistemi hareketleriyle uyumludur (driveFor ve turnFor gibi bir hedefe doğru hareket eden fonksiyonlar).

  • isDone , hedef tabanlı hareket kullanmadıkları için drive ve turn gibi işlevlerle uyumlu değildir.

Hareket halinde#

isMoving , robotun hareket edip etmediğini Boolean bir değer olarak döndürür. Bu, robotun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.

Available Functions
virtual bool isMoving( void );

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values
  • true - Robot hareket ediyor.

  • false - Robot hareket etmiyor.

Notes
  • isMoving hedef tabanlı tahrik sistemi hareketleriyle uyumludur (driveFor ve turnFor gibi bir hedefe hareket eden fonksiyonlar).

  • isMoving , hedef tabanlı hareket kullanmadıkları için drive ve turn gibi işlevlerle uyumlu değildir.

hız#

velocity , robotun ne kadar hızlı gittiğini gösterir.

Pozitif bir değer, robotun ileri yönde hareket ettiğini gösterir. Negatif bir değer ise robotun geri yönde hareket ettiğini gösterir.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parametre

Tip

Tanım

units

velocityUnits

Hız birimi: % percent ) veya % pct ), rpm ) veya dps).

Return Values

Seçilen birimde aktarma organı hızını double olarak döndürür.

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

akım#

current aktarma organlarının ne kadar elektrik akımı kullandığını gösterir. Akım, aktarma organlarından geçen elektrik miktarıdır. Üniteye bağlı olarak amper (amper) veya yüzde olarak gösterilebilir.

Daha yüksek akım değeri, tahrik sisteminin daha fazla elektrik akımı kullandığı anlamına gelir. Bu durum, robot bir nesneye karşı itme hareketi yaparken veya sıkışmışken hareket etmeye çalışırken ortaya çıkabilir.

Bu, hareket sırasında aktarma organlarının zorlanıp zorlanmadığını kontrol etmek için kullanılabilir. Akım yüksek kalırsa, aktarma organları ısınabilir veya gücü daha az verimli kullanabilir.

Available Functions

1 - Aktarma organlarının elektrik akımını amper cinsinden döndürür.

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

2 - Aktarma organlarının elektrik akımını maksimum değerin yüzdesi olarak döndürür.

double current(
    percentUnits units );

Parameters

Parametre

Tip

Tanım

units

currentUnits

Akımın geri dönüş birimi: amp (amper, varsayılan).

units

percentUnits

Akımı geri döndürecek birim: % percent veya % pct.

Return Values

Seçilen ünitede aktarma organı akımını double olarak döndürür.

güç#

power , aktarma organlarının ne kadar güç kullandığını watt cinsinden gösterir. Güç, aktarma organlarının enerjiyi ne kadar hızlı kullandığını gösterir.

Daha yüksek güç değeri, tahrik sisteminin enerjiyi daha hızlı kullandığı anlamına gelir. Bu durum, robot bir nesneye karşı itme hareketi yaparken veya sıkışmışken hareket etmeye çalışırken ortaya çıkabilir.

Bu, hareketleri karşılaştırmak veya aktarma organlarının zorlanıp zorlanmadığını kontrol etmek için kullanılabilir. Güç yüksek kalırsa, aktarma organları daha fazla ısınabilir veya enerjiyi daha az verimli kullanabilir.

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

Parameters

Parametre

Tip

Tanım

units

powerUnits

Güç birimi: watt (watt, varsayılan).

Return Values

Aktarma organlarının gücünü watt cinsinden double olarak döndürür.

tork#

Tork, tekerlekler dönerken aktarma organlarının ne kadar güçlü itme veya çekme yapabildiğini gösterir.

torque , aktarma organlarının kullandığı tork miktarını Newton-metre (Nm) veya inç-pound (InLb) cinsinden gösterir.

Daha yüksek tork değeri, tahrik sisteminin daha fazla itme veya çekme uyguladığı anlamına gelir. Bu durum, robot bir nesneye karşı itme uygularken veya sıkışmışken hareket etmeye çalışırken ortaya çıkabilir.

Bu, aktarma organlarının zorlanıp zorlanmadığını kontrol etmek veya farklı hareketlerin ne kadar itme gücü gerektirdiğini karşılaştırmak için kullanılabilir.

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

Parameters

Parametre

Tip

Tanım

units

torqueUnits

Tork değerinin belirtileceği birim: Nm (Newton metre, varsayılan) veya InLb (inç pound).

Return Values

Aktarma organı torkunu seçilen birimde double olarak döndürür.

yeterlik#

efficiency aktarma organlarının gücü ne kadar verimli kullandığını %0 ile %100 arasında bir yüzde olarak gösterir.

Verimlilik, tahrik sisteminin gücünün ne kadarının hareket için kullanıldığını gösterir. Daha yüksek bir verimlilik değeri, tahrik sisteminin gücünün daha fazlasının hareket için kullanıldığı anlamına gelir. Daha düşük bir verimlilik değeri, robot sıkıştığında veya bir nesneye karşı itme yaptığında olduğu gibi, tahrik sistemi çok çalıştığı ancak fazla hareket etmediği durumlarda ortaya çıkabilir.

Bu özellik, hareketleri karşılaştırmak veya aktarma organlarının hareket için kullanmak yerine gücü boşa harcayıp harcamadığını kontrol etmek için kullanılabilir.

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

Parameters

Parametre

Tip

Tanım

units

percentUnits

Verimlilik değerini döndürme birimi: percent veya % pct (varsayılan).

Return Values

Seçilen birimde aktarma organı verimliliğini double olarak döndürür.

sıcaklık#

temperature , aktarma organlarının ortalama sıcaklığını %0 ile %100 arasında bir yüzde olarak döndürür.

Sıcaklık, tahrik sistemi motorlarının ne kadar ısındığını gösterir. Daha yüksek sıcaklık, motorların çalışırken daha fazla ısındığı anlamına gelir. Motorların tam performansla çalışmaya devam etmesi için 55°C’nin altında kalmaları gerekir.

Motorlar çok ısınırsa, kendilerini korumak için maksimum akımlarını düşürürler. 70°C’ye ulaştıklarında, soğuyana kadar çalışmayı durdururlar.

Bu özellik, aktarma organlarının tekrarlanan hareketler, uzun sürüşler veya bir cisme karşı itme sırasında aşırı ısınıp ısınmadığını kontrol etmek için kullanılabilir.

Available Functions
double temperature(
  percentUnits units );

Parameters

Parametre

Tip

Tanım

units

percentUnits

Döndürülecek sıcaklık birimi: % percent veya % pct.

Return Values

Seçilen birimde ortalama aktarma organı sıcaklığını double olarak döndürür.

Notes
  • Döndürülen 50% değeri, ortalama motor sıcaklığının yaklaşık 45°C (113°F ) olduğunu gösterir.

  • Aktarma organlarının tipik çalışma sıcaklığı aralığı yaklaşık 20°C (68°F) ile 70°C (158°F ) arasındadır.

Gerilim#

voltage aktarma organlarına sağlanan elektrik voltajını döndürür.

Gerilim, tahrik sistemi motorlarına sağlanan elektriksel basınçtır. Bu, akım ve güç değerleriyle birlikte kullanılarak tahrik sisteminin elektrik enerjisini nasıl kullandığını anlamak için kullanılabilir.

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

Parameters

Parametre

Tip

Tanım

units

voltageUnits

Dönüş voltajı birimi: volt (volt, varsayılan) veya voltageUnits::mV (milivolt).

Return Values

Seçilen birimde aktarma organı voltajını double olarak döndürür.