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

クラスコンストラクタ#
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();
パラメータ#
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
モーターコントローラ55が接続されているスマートポートは、 |
|
|
モーターの回転方向が反転しているかどうかを判定します。
|
|
|
モーターコントローラ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 );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
モーターが回転する方向: |
|
|
モーターに印加される電圧値。負の値は、指定された方向 |
|
|
電圧を表す単位:
|
戻り値
この関数は値を返しません。
注釈
この関数は待機処理を行わず、呼び出し後すぐにプログラムが続行されます。
モーターは、
stopが呼び出されるか、別のspinが使用されるまで回転し続けます。
stop#
現在設定されているブレーキモードを使用してモーターの回転を停止します。
利用可能な機能
void stop();
パラメータ
この関数は引数を取りません。
戻り値
この関数は値を返しません。
注釈
setStoppingで設定された現在の停止モードを使用してモーターを停止します。
setVelocity#
DCモーターの回転速度を指定します。パーセンテージが高いほどDCモーターは速く回転し、低いほど遅く回転します。
すべてのプロジェクトは、接続されている各DCモーターがデフォルトで50%の速度で回転する状態から始まります。
利用可能な機能
void setVelocity(
double velocity,
percentUnits units = percent );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
|
|
|
速度の単位: |
戻り値
この関数は値を返しません。
注釈
指定された電圧なしで
spinを再度呼び出すと、この値が使用されます。
setStopping#
モーターが停止したときの動作を設定します。
利用可能な機能
void setStopping(
brakeType mode );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
|
戻り値
この関数は値を返しません。
注釈
stopへの以降の呼び出しでは、この停止モードが使用されます。The Motor Controller 55 supports
coastandbrakeonly.holdis not supported.
setReversed#
モーターの回転方向を反転させるかどうかを設定します。
利用可能な機能
void setReversed(
bool value );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
モーターの回転方向を反転するかどうか:
|
戻り値
この関数は値を返しません。
注釈
setReversedを呼び出すことは、コンストラクタ のreverseパラメータを変更することと同じです。
current#
current 、DC モーターが使用している電流値を返します。電流とは、DC モーターを流れる電気の量です。アンペアで返される場合、電流値は 0.0 ~ 1.2 A の範囲で表示されます。
電流値が高いということは、DCモーターがより多くの電流を使用していることを意味します。これは、DCモーターが重い物を持ち上げているとき、物体に押し付けているとき、または動かなくなったときに動作しようとしているときに発生します。
これは、DCモーターが動作中に負荷がかかっていないかを確認するために使用できます。電流が高い状態が続くと、モーターが過熱したり、電力効率が低下したりする可能性があります。
Available Functions1 — DCモーターの電流値をアンペア単位で返します。
double current( currentUnits units = amp );
Parameters2 — DCモーターの電流を最大定格電流に対する割合として返します。
double current( percentUnits units );
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
電流を表す単位: |
|
|
電流をモーターの最大定格電流に対する割合で表します: |
指定された単位で、DCモーターが使用している電流の量を表す double を返します。
voltage#
モーターに供給された電圧を返します。
Available Functionsdouble voltage(
voltageUnits units = volt );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
電圧を表す単位:
|
戻り値
指定された単位でモーターの電圧を表す double を返します。
temperature#
temperature DC モーターの温度を返します。
モーター温度は、DCモーターの温度を示します。温度が高いほど、DCモーターは動作中に温度が上昇していることを意味します。モーターは、最高の性能を維持するために、55℃以下に保つ必要があります。
DCモーターが過熱すると、保護のために最大電流を下げます。70℃に達すると、モーターは冷却されるまで停止します。
これは、DCモーターが繰り返し動作中、長時間運転中、または物体に押し付けられているときに過熱していないかどうかを確認するために使用できます。
Available Functions1 — DCモーターの温度を最大動作温度に対する割合として返します。
double temperature( percentUnits units = percent );
2 — DCモーターの温度を物理温度単位で返します。
double temperature( temperatureUnits units );
パラメータ
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
The unit used to represent DC motor temperature as a percentage:
|
|
|
DCモーターの温度を表す単位(度):
|
戻り値
指定された単位でDCモーターの温度を表す double を返します。
注釈
モーターの動作温度範囲は約
20°C(68°F) から70°C(158°F) です。
getMotorType#
検出されたモーター/コントローラーの種類を返します。
利用可能な機能
int32_t getMotorType();
パラメータ
この関数は引数を取りません。
戻り値
検出されたモーター/コントローラーの種類を示す int32_t を返します。
0— 11W Motor1— 5.5W Motor2— Motor Controller 55
installed#
モーターコントローラー55がEXPブレインに接続されているかどうかを返します。
Available Functionsbool installed();
パラメータ
この関数は引数を取りません。
戻り値
モーターコントローラ55が接続されているかどうかを示すブール値 bool を返します。
true— The Motor Controller 55 is connected.false— The Motor Controller 55 is not connected.