モーターコントローラー55#

導入#

motor55 クラスは、V5 Brainに接続されたVEXモーターコントローラー55を制御するために使用されます。モーターコントローラー55は、2線式DCモーターを動作させるために設計された従来型のモーターコントローラーです。

VEXモーターコントローラー55。

クラスコンストラクタ#

1 — 指定されたスマートポート上に motor55 オブジェクトを作成します。

motor55(
  int32_t index );

2 — 指定されたスマートポート上に motor55 オブジェクトを作成し、正の回転方向を変更します。

motor55(
  int32_t index,
  bool    reverse );

3 — 指定されたスマートポート上に motor55 オブジェクトを作成し、最大駆動電圧を設​​定し、正の回転方向を変更します。

motor55(
  int32_t index,
  double  maxv,
  bool    reverse );

クラスデストラクタ#

motor55 オブジェクトを破棄し、関連するリソースを解放します。

~motor55();

パラメータ#

パラメータ

タイプ

説明

index

int32_t

モーターコントローラ55が接続されているスマートポートは、 PORTxと表記され、 x はポート番号です(例: PORT1)。

reverse

bool

モーターの回転方向が反転しているかどうかを判定します。

  • true — モーターの正回転方向が反転しています。
  • false — モーターの正回転方向は通常のままです。

maxv

double

モーターコントローラ55がモーターに印加できる最大電圧。

例#

// Create the motor55 instance in Smart Port 1
motor55 Motor1 = motor55(PORT1);

メンバーの機能#

motor55 クラスには、以下のメンバ関数が含まれています。

  • spin — モーターを指定された方向に回転させます。

  • stop — モーターを停止します。

  • setVelocity — DCモーターに回転速度を指示します。

  • setStopping — 停止動作(惰性走行またはブレーキ)を設定します。

  • setReversed — モーターの回転方向を反転するかどうかを設定します。

  • current — モーターの電流を返します。

  • voltage — モーターの電気電圧を返します。

  • temperature — モーターの温度を返します。

  • getMotorType — 検出されたモーター/コントローラーの種類を返します。

  • installed — 指定されたスマートポートでモーターコントローラ 55 が検出されているかどうかを返します。

motor55 を呼び出す前に、以下に示すようにインスタンスを作成する必要があります。

/* This constructor is required when using VS Code.
Motor Controller 55 configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create the motor55 instance in Smart Port 1
motor55 MC55_1 = motor55(PORT1);

spin#

モーターを指定された方向に無限に回転させます。

利用可能な機能

1 — 現在設定されている速度を使用して回転します。

void spin(
  directionType dir );

2 — 指定された電圧で回転します。

void spin(
  directionType dir,
  double        voltage,
  voltageUnits  units );

パラメータ

パラメータ

タイプ

説明

dir

directionType

モーターが回転する方向: forward または reverse。

voltage

double

モーターに印加される電圧値。負の値は、指定された方向 dirとは逆方向に回転します。

units

voltageUnits

電圧を表す単位:

  • volt — ボルト
  • voltageUnits::mV — ミリボルト

戻り値

この関数は値を返しません。

注釈

  • この関数は待機処理を行わず、呼び出し後すぐにプログラムが続行されます。

  • モーターは、stop が呼び出されるか、別の spin が使用されるまで回転し続けます。

stop#

現在設定されているブレーキモードを使用してモーターの回転を停止します。

利用可能な機能

void stop();

パラメータ

この関数は引数を取りません。

戻り値

この関数は値を返しません。

注釈

  • setStopping で設定された現在の停止モードを使用してモーターを停止します。

setVelocity#

DCモーターの回転速度を指定します。パーセンテージが高いほどDCモーターは速く回転し、低いほど遅く回転します。

すべてのプロジェクトは、接続されている各DCモーターがデフォルトで50%の速度で回転する状態から始まります。

利用可能な機能

void setVelocity(
    double       velocity,
    percentUnits units = percent );

パラメータ

パラメータ

タイプ

説明

velocity

double

percentを使用する場合、0% から 100% までの回転速度。

units

percentUnits

The velocity unit:

  • percent / pct (default) — percent

戻り値

この関数は値を返しません。

注釈

  • 指定された電圧なしで spin を再度呼び出すと、この値が使用されます。

setStopping#

モーターが停止したときの動作を設定します。

利用可能な機能

void setStopping(
    brakeType mode );

パラメータ

パラメータ

タイプ

説明

mode

brakeType

stop が呼び出されたときに適用される停止モード:

  • coast — モーターが惰性で停止する
  • brake — モーターがブレーキを使用して急速に停止する

戻り値

この関数は値を返しません。

注釈

  • stop への以降の呼び出しでは、この停止モードが使用されます。

  • The Motor Controller 55 supports coast and brake only. hold is not supported.

setReversed#

モーターの回転方向を反転させるかどうかを設定します。

利用可能な機能

void setReversed(
    bool value );

パラメータ

パラメータ

タイプ

説明

value

bool

モーターの回転方向を反転するかどうか:

  • true — モーターの回転方向を反転します。
  • false — モーターの回転方向をデフォルトに戻します。

戻り値

この関数は値を返しません。

注釈

  • setReversed を呼び出すことは、コンストラクタ の reverse パラメータを変更することと同じです。

current#

current 、DC モーターが使用している電流値を返します。電流とは、DC モーターを流れる電気の量です。アンペアで返される場合、電流値は 0.0 ~ 1.2 A の範囲で表示されます。

電流値が高いということは、DCモーターがより多くの電流を使用していることを意味します。これは、DCモーターが重い物を持ち上げているとき、物体に押し付けているとき、または動かなくなったときに動作しようとしているときに発生します。

これは、DCモーターが動作中に負荷がかかっていないかを確認するために使用できます。電流が高い状態が続くと、モーターが過熱したり、電力効率が低下したりする可能性があります。

Available Functions

1 — DCモーターの電流値をアンペア単位で返します。

double current(
  currentUnits units = amp );

2 — DCモーターの電流を最大定格電流に対する割合として返します。

double current(
  percentUnits units );

Parameters

パラメータ

タイプ

説明

units

currentUnits

電流を表す単位:amp (デフォルト)—アンペア

units

percentUnits

電流をモーターの最大定格電流に対する割合で表します:percent / pct パーセント

Return Values

指定された単位で、DCモーターが使用している電流の量を表す double を返します。

voltage#

モーターに供給された電圧を返します。

Available Functions
double voltage(
  voltageUnits units = volt );

パラメータ

パラメータ

タイプ

説明

units

voltageUnits

電圧を表す単位:

  • volt (デフォルト)
  • voltageUnits::mV — ミリボルト

戻り値

指定された単位でモーターの電圧を表す double を返します。

temperature#

temperature DC モーターの温度を返します。

モーター温度は、DCモーターの温度を示します。温度が高いほど、DCモーターは動作中に温度が上昇していることを意味します。モーターは、最高の性能を維持するために、55℃以下に保つ必要があります。

DCモーターが過熱すると、保護のために最大電流を下げます。70℃に達すると、モーターは冷却されるまで停止します。

これは、DCモーターが繰り返し動作中、長時間運転中、または物体に押し付けられているときに過熱していないかどうかを確認するために使用できます。

Available Functions

1 — DCモーターの温度を最大動作温度に対する割合として返します。

double temperature(
  percentUnits units = percent );

2 — DCモーターの温度を物理温度単位で返します。

double temperature(
  temperatureUnits units );

パラメータ

パラメータ

タイプ

説明

units

percentUnits

The unit used to represent DC motor temperature as a percentage:

  • percent / pct (default) — percent

units

temperatureUnits

DCモーターの温度を表す単位(度):

  • celsius — 摂氏
  • fahrenheit — 華氏

戻り値

指定された単位でDCモーターの温度を表す double を返します。

注釈

  • モーターの動作温度範囲は約 20°C (68°F) から 70°C (158°F ) です。

getMotorType#

検出されたモーター/コントローラーの種類を返します。

利用可能な機能

int32_t getMotorType();

パラメータ

この関数は引数を取りません。

戻り値

検出されたモーター/コントローラーの種類を示す int32_t を返します。

  • 0 — 11W Motor
  • 1 — 5.5W Motor
  • 2 — Motor Controller 55

installed#

モーターコントローラー55がV5ブレインに接続されているかどうかを返します。

Available Functions
bool installed();

パラメータ

この関数は引数を取りません。

戻り値

モーターコントローラ55が接続されているかどうかを示すブール値 bool を返します。

  • true — The Motor Controller 55 is connected.
  • false — The Motor Controller 55 is not connected.