設定・ユーティリティ

基板全体の設定

/setDestIp

アーギュメント

なし

実行可能タイミング

常時

説明

モータの状態に変化があったときに通知するメッセージや、問い合わせへ返答するメッセージなどの送り先IPアドレス(destIp)を指定します。このメッセージを送信したIPアドレスをdestIpに設定します。

また、destIpが設定されるまでは、STEP400からOSCメッセージの送信は行いませんので、一番最初にこのコマンドを送信してください。

返答

/destIp (int)destIp[0] (int)destIp[1] (int)destIp[2] (int)destIp[3] (bool)isNewDestIp
アーギュメント 範囲 説明
destIp[0-3] 0-255 destIpの各桁
isNewDestIp 0-1 destIpが変更されたかどうかを示します。変更されていると1, すでに同じアドレスが設定されていた場合は0

初期値

10.0.0.10

/enableBusyReport (int)motorID (bool)enable

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
enable 0-1 1で有効, 0で無効

実行可能タイミング

常時

説明

指定したモータのBUSY状態に変化があったら自動で下記のメッセージを送信します。

/busy (int)motorID (bool)state
アーギュメント 範囲 説明
motorID 1-4 モータのID
state 0-1 BUSYになった場合は1, BUSYでなくなった場合は0

初期値

0 (無効)

/enableHizReport (int)motorID (bool)enable

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
enable 0-1 1で有効, 0で無効

実行可能タイミング

常時

説明

指定したモータのHiZ(ハイインピーダンス)状態に変化があったら自動で下記のメッセージを送信します。

/HiZ (int)motorID (bool)state
アーギュメント 範囲 説明
motorID 1-4 モータのID
state 0-1 HiZ状態になった場合は1, HiZ状態でなくなった場合は0

初期値

0 (無効)

/enableMotorStatusReport (int)motorID (bool)enable

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
enable 0-1 1で有効, 0で無効

実行可能タイミング

常時

説明

指定したモータの動作状態(motorStatus)に変化があったら自動で下記のメッセージを送信します。

/motorStatus (int)motorID (int)motorStatus
アーギュメント 範囲 説明
motorID 1-4 モータのID
motorStatus 0-3 Motor status(下表参照)
motorStatusの値
motorStatus Motor status
0 モータ停止
1 加速中
2 減速中
3 一定速運転中

初期値

0 (無効)

モータドライバの設定

/setMicrostepMode (int)motorID (int)STEP_SEL

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
STEP_SEL 0-7 Micro stepping mode

実行可能タイミング

HiZ状態

説明

マイクロステッピングのモードを切り替えます。

STEP_SEL Micro stepping mode
0 Full-step
1 Half-step
2 1/4 microstep
3 1/8 microstep
4 1/16 microstep
5 1/32 microstep
6 1/64 microstep
7 1/128 microstep

初期状態では1/128マイクロステップモードになっています。

定電流制御モード (current mode) では、Full-stepから1/16 microstepまでしか使えません。

初期値

7 (1/128 microstep)

/getMicrostepMode (int)motorID

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID

実行可能タイミング

常時

説明

マイクロステッピングのモードを取得します。STEP_SELについては/setMicrostepModeの項目を参照してください。

返答

/microstepMode (int)motorID (int)STEP_SEL

/setLowSpeedOptimizeThreshold (int)motorID (float)lowSpeedOptimizationThreshold

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
lowSpeedOptimizationThreshold 0.0 - 976.3 [step/s] Low speed optimization threshold

実行可能タイミング

モータ停止時

説明

低速回転時の相電流ひずみ補正を行う閾値を設定します。詳しくはデータシートの "8.3 Low speed optimization"を参照してください。

下記の/getLowSpeedOptimizeThresholdと同じ返答があります。

初期値

20.0 [step/s]

/getLowSpeedOptimizeThreshold (int)motorID

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID

実行可能タイミング

常時

説明

Low speed optimization threshold の現在の設定値を取得します。

返答

/lowSpeedOptimizeThreshold (int)motorID (float)lowSpeedOptimizeThreshold

/getStatus (int)motorID

アーギュメント

アーギュメント 範囲 説明
motorID 1-4, 255 モータのID

実行可能タイミング

常時

説明

モータドライバ(PowerSTEP01)のステータスレジスタを取得します。ステータスレジスタにはモータやアラーム、スイッチの状態などが含まれます。

返答

/status (int)motorID (int)status
アーギュメント 範囲 説明
motorID 1-4, 255 モータのID
status 0-65535 16bitのSTATUSレジスタ

レジスタに含まれる情報は、データシートの "11.1.28 STATUS" を参照してください。このうち、UVLO, UVLO_ADC, OCD, STEP_LOSS_A, STEP_LOSS_B, CMD_ERROR, SW_EVN, TH_STATUS の値はラッチされていて、ステータスレジスタを読み出すとリセットされます。STEP400ではファームウェアによって常時ステータスレジスタを繰り返し取得しているため、これらの値はすぐにリセットされてしまいます。これらの事象を個別に報告する設定が可能ですので、そちらを利用してください。

ステータスbit名 使用する設定コマンド
UVLO /enableUvloReport
UVLO_ADC この機能はSTEP400では使えませんので常時無効になっています。
OCD /enableOverCurrentReport
STEP_LOSS_A, STEP_LOSS_B /enableStallReport
CMD_ERROR /enableCommandErrorReport
SW_EVN /enableHomeSwReport
TH_STATUS /enableThermalStatusReport