stepseries.commands -- デバイスコマンド

デバイスへ送信されるメッセージです。

このモジュールは、データで「埋める」ためのテンプレートとして機能するデータクラス・オブジェクトを提供します。これにより、どのように送信するかではなく、何を送信するかに集中することができます。

いくつかのコマンドは、追加の response_cls 属性を持っています。この属性はライブラリ内部で使用されるものですが、もしすると何かの役に立つかもしれません。これはレスポンスのタイプを保持し、デバイスからの実際のレスポンスは保持しません。

デバイスの内部状態の自動報告を制御するすべてのコマンドには、追加の callback 属性があります。この属性は、デバイスから送られてくるレスポンスを処理するためのコールバックを自動的に登録するためのショートカットです。

class stepseries.commands.Activate(motorID: int, state: bool)[ソース]

電磁ブレーキを有効化・無効化します。

このコマンドを実行するためには、 stepseries.commands.EnableElectromagnetBrake が有効になっている必要があります。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

state: bool

0

モータ励磁, 電磁ブレーキ開放

1

モータ励磁解除, 電磁ブレーキ保持

class stepseries.commands.EnableBusyReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

BUSY状態に変化があったら自動でメッセージを送信する設定を行います。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Busy`の別名です。

class stepseries.commands.EnableDirReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

モータ回転方向に変化があったら自動でメッセージを送信する設定を行います。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Dir`の別名です。

class stepseries.commands.EnableElectromagnetBrake(motorID: int, enable: bool)[ソース]

電磁ブレーキモードの有効・無効を切り替えます。

実際にブレーキを動作させる stepseries.commands.Activate と混同しないように注意してください。

電磁ブレーキモードが有効になると、電磁ブレーキを開放しないままモータを回すコマンドを送るとデバイスから ERROR_BRAKE_ENGAGED が送られます。

実行可能タイミング

常時

enable: bool

True で有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.EnableHiZReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

HiZ状態に変化があったら自動でメッセージを送信する設定を行います。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HiZ`の別名です。

class stepseries.commands.EnableHomeSwReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

HOMEスイッチの状態に変化があったら自動でメッセージを送信する設定を行います。

stepseries.commands.EnableSwEventReport もご参照ください。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomeSw`の別名です。

class stepseries.commands.EnableLimitSwReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

LIMITスイッチの状態に変化があったら自動でメッセージを送信する設定を行います。

STEP400のみ

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.LimitSw`の別名です。

class stepseries.commands.EnableLowSpeedOptimize(motorID: int, enable: bool)[ソース]

低速回転時の相電流ひずみ補正の有効無効を切り替えます。

低い電圧で非常にゆっくり回転させると、相電流の歪みにより、モータはスムーズな回転を維持するのがむずかしくなります。その影響を減らすための補正です。この補正が電圧モードでのみ有効で、有効時は Min Speed が強制的に0になります。

詳しくはデータシートを参照してください。

実行可能タイミング

モータ停止時

enable: bool

True で補正有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.LowSpeedOptimizeThreshold`の別名です。

class stepseries.commands.EnableMotorStatusReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

モータの回転状態に変化があったら自動でメッセージを送信する設定を行います。

有効になっている場合、モータに停止中、加速中、一定速運転中、減速中という状態の変化に発生したら、報告のメッセージを送信します。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.MotorStatus`の別名です。

class stepseries.commands.EnableOverCurrentReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

指定した電流閾値を越えて電流が流れた場合に報告のメッセージを送信する設定を行います。

この閾値は stepseries.commands.SetOverCurrentThreshold で指定します。

モータドライバが過電流状態になった場合は、通知の有無にかかわらず自動でHiZ状態になります。

この設定は初期状態で有効になっています。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

True

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.OverCurrent`の別名です。

class stepseries.commands.EnableServoMode(motorID: int, enable: bool)[ソース]

サーボモード(位置追従モード)の有効無効を切り替えます。

このモードで動作している間は、 stepseries.commands.SetOverCurrentThreshold や:py:class:stepseries.commands.GoTo など、他のモータ回転コマンドを送ることはできません。

実行可能タイミング

常時

enable: bool

True で有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.EnableStallReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

モータのストールを検出した際に自動でメッセージを送信する設定を行います。

検出の閾値は stepseries.commands.SetStallThreshold で設定できます。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Stall`の別名です。

class stepseries.commands.EnableSwEventReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

HOMEスイッチの状態に変化があったら自動でメッセージを送信する設定を行います。

指定したモータのHOMEスイッチ端子の状態がHIGHレベルからLOWレベルに遷移した際(Falling Edge)に自動でメッセージを送信する設定を行います。 stepseries.commands.EnableHomeSwReport はマイコンのファームウェア上から約1ms毎にモータドライバICのSTATUSレジスタをポーリングすることによって状態を監視していますが、 enableSwEventReport はドライバIC内でハードウェアによってイベントが検出されるため、1ms以下のごくわずかな時間だけセンサが反応した場合でももとり逃しません。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.SwEvent`の別名です。

class stepseries.commands.EnableThermalStatusReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

指定したモータドライバの温度状態(thermalStatus)に変化があったら自動でメッセージを送信するかどうかを指定します。

これはモータドライバがある温度を超えると送信されるものです。。STEP400とSTEP800では Thermal statusの種類や発生条件が異なります。

Bridge shutdown, Device shutdown 状態では、通知の有無にかかわらずモータはHiZ状態になります。ドライバの温度上昇を防ぐために、ドライバチップへの放熱器の取り付けを強くお勧めします。

この設定は初期状態で有効になっています。

実行可能タイミング

常時

STEP400:

TH_STATUS

説明

発生条件

解除条件

0

通常

1

警告

135°C

125°C

2

Bridge shutdown

155°C

145°C

3

Device shutdown

170°C

130°C

STEP800:

TH_STATUS

説明

発生条件

解除条件

0

通常

1

警告

130°C

130°C

2

Bridge shutdown

160°C

130°C

enable: bool

True で報告が有効

初期値

True

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ThermalStatus`の別名です。

class stepseries.commands.EnableUvloReport(motorID: int, enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

UVLO (Undervoltage Lockout) が発生した際に自動で通知メッセージを送信する設定を行います。

UVLOはモータドライバへ供給されている電圧がUVLO発生条件電圧を下回ったら通知の有無にかかわらず発生します。この状態ではモータを動かすことはできません。供給電圧がUVLO解除条件電圧を上回ったら解除されます。

この設定は初期状態で有効になっています。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

True

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Uvlo`の別名です。

class stepseries.commands.Free(motorID: int)[ソース]

モータ軸と電磁ブレーキ両方を解放します。

警告

このコマンドが送られると、モータの保持力は無くなります。

このコマンドを実行するためには、 stepseries.commands.EnableElectromagnetBrake が有効になっている必要があります。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.GetAdcVal(motorID: int)[ソース]

モータドライバの ADC_OUT レジスタの値を取り出します。

ADC_OUT はモータドライバのADCピンの電圧を5bitでAD変換した値です。STEP400では、個のピンは10kΩの抵抗でプルアップされていて、LIMITSWコネクタに接続されています。STEP800では、このピンはGNDに接続されていて、常時0Vになります。

注釈

このコマンドはデバッグ目的のために設けられています。通常このコマンドを使用する必要はありません。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.AdcVal`の別名です。

class stepseries.commands.GetBemfParam(motorID: int)[ソース]

BEMF補償設定レジスタの値を読み出します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.BemfParam`の別名です。

class stepseries.commands.GetBrakeTransitionDuration(motorID: int)[ソース]

電磁ブレーキの遷移時間を取得します。

ブレーキの動作には物理的にある時間が必要なため、その間モータを励磁しておくのがこの遷移時間です。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.BrakeTransitionDuration`の別名です。

class stepseries.commands.GetBusy(motorID: int)[ソース]

モータのBUSY状態を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Busy`の別名です。

class stepseries.commands.GetConfigName[ソース]

起動時にmicroSDカードから読み込まれたコンフィギュレーションファイルの名称を取得します。

実行可能タイミング

常時

response_cls

:py:class:`~stepseries.responses.ConfigName`の別名です。

class stepseries.commands.GetConfigRegister(motorID: int)[ソース]

モータドライバの CONFIG レジスタの値を取得します。

CONFIGレジスタにはモータやアラーム、スイッチの状態などが含まれます。

注釈

このコマンドはデバッグ目的のために設けられています。通常このコマンドを使用する必要はありません。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ConfigRegister`の別名です。

class stepseries.commands.GetDecayModeParam(motorID: int)[ソース]

電流制御アルゴリズムのパラメータを設定するレジスタ値を取得します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.DecayModeParam`の別名です。

class stepseries.commands.GetDir(motorID: int)[ソース]

モータの回転方向を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Dir`の別名です。

class stepseries.commands.GetElPos(motorID: int)[ソース]

モータの電気的位置 (electrical postion)を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ElPos`の別名です。

class stepseries.commands.GetFullstepSpeed(motorID: int)[ソース]

マイクロステッピングモードが自動でフルステップモードに切り替わる閾値を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.FullstepSpeed`の別名です。

class stepseries.commands.GetGoUntilTimeout(motorID: int)[ソース]

stepseries.commands.GoUntil 実行時のタイムアウト時間を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.GoUntilTimeout`の別名です。

class stepseries.commands.GetHiZ(motorID: int)[ソース]

モータのHiZ状態を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HiZ`の別名です。

class stepseries.commands.GetHomeSw(motorID: int)[ソース]

HOMEスイッチの状態を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomeSw`の別名です。

class stepseries.commands.GetHomeSwMode(motorID: int)[ソース]

HOMEスイッチの動作モードを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomeSwMode`の別名です。

class stepseries.commands.GetHomingDirection(motorID: int)[ソース]

モータの原点復帰方向を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomingDirection`の別名です。

class stepseries.commands.GetHomingSpeed(motorID: int)[ソース]

モータの原点復帰速さを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomingSpeed`の別名です。

class stepseries.commands.GetHomingStatus(motorID: int)[ソース]

モータの原点復帰ステータスを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.HomingStatus`の別名です。

class stepseries.commands.GetKval(motorID: int)[ソース]

指定モータはKVALパラメータ群を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Kval`の別名です。

class stepseries.commands.GetLimitSw(motorID: int)[ソース]

LIMITスイッチの状態を取得します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.LimitSw`の別名です。

class stepseries.commands.GetLimitSwMode(motorID: int)[ソース]

LIMITスイッチの動作モードを取得します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.LimitSwMode`の別名です。

class stepseries.commands.GetLowSpeedOptimizeThreshold(motorID: int)[ソース]

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

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.LowSpeedOptimizeThreshold`の別名です。

class stepseries.commands.GetMark(motorID: int)[ソース]

MARKの位置を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Mark`の別名です。

class stepseries.commands.GetMicrostepMode(motorID: int)[ソース]

モータのマイクロステッピングモードを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.MicrostepMode`の別名です。

class stepseries.commands.GetMinSpeed(motorID: int)[ソース]

スピードプロファイルの最低速さを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.MinSpeed`の別名です。

class stepseries.commands.GetMotorStatus(motorID: int)[ソース]

モータの動作ステータスを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.MotorStatus`の別名です。

class stepseries.commands.GetOverCurrentThreshold(motorID: int)[ソース]

過電流アラームの閾値を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.OverCurrentThreshold`の別名です。

class stepseries.commands.GetPosition(motorID: int)[ソース]

モータの現在位置を取得します。

stepseries.commands.SetPositionReportInterval で、指定間隔で自動送信させることもできます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Position`の別名です。

class stepseries.commands.GetPositionList[ソース]

全モータの現在位置を取得します。

他の方法として、 stepseries.commands.SetPositionListReportInterval を使用して、一定間隔で現在位置を自動で送信させることもできます。

実行可能タイミング

常時

response_cls

:py:class:`~stepseries.responses.PositionList`の別名です。

class stepseries.commands.GetProhibitMotionOnHomeSw(motorID: int)[ソース]

Homeセンサが反応している状態で、原点復帰方向へのモーションコマンドが禁止されているかどうかを返します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ProhibitMotionOnHomeSw`の別名です。

class stepseries.commands.GetProhibitMotionOnLimitSw(motorID: int)[ソース]

Limitセンサが反応している状態で、原点復帰方向の逆方向へのモーションコマンドが禁止されているかどうかを返します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.ProhibitMotionOnLimitSw`の別名です。

class stepseries.commands.GetReleaseSwTimeout(motorID: int)[ソース]

stepseries.commands.ReleaseSw のタイムアウト時間を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ReleaseSwTimeout`の別名です。

class stepseries.commands.GetServoParam(motorID: int)[ソース]

サーボモードのPIDパラメータを取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ServoParam`の別名です。

class stepseries.commands.GetSpeed(motorID: int)[ソース]

モータの現在速度を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Speed`の別名です。

class stepseries.commands.GetSpeedProfile(motorID: int)[ソース]

全モータのスピードプロファイル設定を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.SpeedProfile`の別名です。

class stepseries.commands.GetStallThreshold(motorID: int)[ソース]

ストール検出の閾値を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.StallThreshold`の別名です。

class stepseries.commands.GetStatus(motorID: int)[ソース]

モータドライバのSTATUSレジスタの値を返します。

ステータスレジスタにはモータやアラーム、スイッチの状態などが含まれます。

注釈

このコマンドはデバッグ目的のために設けられています。通常このコマンドを使用する必要はありません。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Status`の別名です。

class stepseries.commands.GetThermalStatus(motorID: int)[ソース]

ThermalStatusの現在の状態を取得します。

STEP400とSTEP800では Thermal statusの種類や発生条件が異なります。

実行可能タイミング

常時

STEP400:

TH_STATUS

説明

発生条件

解除条件

0

通常

1

警告

135°C

125°C

2

Bridge shutdown

155°C

145°C

3

Device shutdown

170°C

130°C

STEP800:

TH_STATUS

説明

発生条件

解除条件

0

通常

1

警告

130°C

130°C

2

Bridge shutdown

160°C

130°C

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.ThermalStatus`の別名です。

class stepseries.commands.GetTval(motorID: int)[ソース]

4つのTVALパラメータを取得します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.Tval`の別名です。

class stepseries.commands.GetTval_mA(motorID: int)[ソース]

4つのTVALパラメータを取得します。

stepseries.commands.GetTval とは異なり、レジスタの値ではなく単位[mA]の設定値で返します。

STEP400のみ

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

response_cls

:py:class:`~stepseries.responses.Tval_mA`の別名です。

class stepseries.commands.GetUvlo(motorID: int)[ソース]

UVLOの状態を取得します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Uvlo`の別名です。

class stepseries.commands.GetVersion[ソース]

基板に書き込まれているファームウェアのバージョンを取得します。

実行可能タイミング

常時

response_cls

:py:class:`~stepseries.responses.Version`の別名です。

class stepseries.commands.GoHome(motorID: int)[ソース]

HOME位置までスピードプロファイルに従って移動します。

実行可能タイミング

BUSY状態でないとき

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.GoMark(motorID: int)[ソース]

MARK位置までスピードプロファイルに従って移動します。

実行可能タイミング

BUSY状態でないとき

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.GoTo(motorID: int, position: int)[ソース]

事前に設定したスピードプロファイルにしたがって、指定位置まで最短経路で移動します。

※例えば円における0度と360度のように、ドライバ内部では -2,097,152 と 2,097,151 は1周して隣り合った位置になっています。すなわち、モータの現在地が-2097000のときに2097000を指定した場合は、モータは-2097152, さらに2097151を経由し、最終的に2097000に到着します。

stepseries.commands.GoToDir でモータ回転方向を指定することもできます。

指定位置まで移動し終わるまではBUSY状態になります。

実行可能タイミング

BUSY状態でないとき

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

position: int

有効な範囲

-2097152 - 2097151

class stepseries.commands.GoToDir(motorID: int, DIR: bool, position: int)[ソース]

事前に設定したスピードプロファイルにしたがって、指定位置まで指定方向で移動します。指定位置まで移動し終わるまではBUSY状態になります。

※例えば円における0度と360度のように、ドライバ内部では -2,097,152 と 2,097,151 は1周して隣り合った位置になっています。

stepseries.commands.GoTo によって自動的に先ほどの「円」に沿って回転方向を決定させることもできます。

指定位置まで移動し終わるまではBUSY状態になります。

実行可能タイミング

BUSY状態でないとき

DIR: bool

True: 正転, False: 逆転

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

position: int

有効な範囲

-2097152 - 2097151

class stepseries.commands.GoUntil(motorID: int, ACT: bool, speed: float)[ソース]

HOMEスイッチが反応するか、タイムアウトするまでモータを回転させます。

モータは speed パラメータの値に応じた速さと方向で回転します。

初期状態ではモータは softStop しますが、 stepseries.commands.SetSwMode が0に設定されていると hardStop になります。

タイムアウトの時間は stepseries.commands.SetGoUntilTimeout を使って設定します。

このコマンドは stepseries.commands.SetHomingSpeedstepseries.commands.SetHomingDirection の影響は受けません。

このコマンドは、モータが停止するまでBUSY状態を保ちます。

実行可能タイミング

常時

ACT: bool

HOMEスイッチが反応した際の動作を指定します。

0

その位置をHOMEに設定します。

1

その位置を MARK レジスタにコピーします。

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

speed: float

回転速度

回転方向は、値の正負によって指定します。

有効な範囲

-15625.0 - 15625.0 [steps/s]

初期値

100 [steps/s]

class stepseries.commands.HardHiZ(motorID: int)[ソース]

モータを即時停止します。

スピードプロファイルに従って減速したのち、モータを停止して励磁を解除します。励磁が解除されるとHiZ状態になります。モータが停止するまではBUSY状態になります。サーボモードだった場合は解除されます。電磁ブレーキモードが有効になっている場合は、電磁ブレーキを保持状態にしてからHiZ状態に移行します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.HardStop(motorID: int)[ソース]

モータを即時停止します。

モータを即時停止し、励磁したままにします。モータが停止するまではBUSY状態になります。もともとHiZ状態だった場合は、停止したままモータが励磁します。

サーボモードだった場合は解除されます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.Homing(motorID: int)[ソース]

原点復帰動作を開始します。

原点復帰方向に移動し、HOMEセンサが反応すると停止します。その後方向を反転してゆっくり移動し、HOMEセンサが反応しなくなった時点で停止し、現在位置を0 (HOME)にします。

これは stepseries.commands.GoUntil コマンドを実行し、HOMEセンサが反応すると停止して stepseries.commands.ReleaseSw コマンドを実行することに相当します。

原点復帰方向と原点復帰スピードはそれぞれ stepseries.commands.SetHomingDirectionstepseries.commands.SetHomingSpeed で設定できるほか、 Config Tool からも設定できます。

もし stepseries.commands.SetGoUntilTimeout までにHOMEスイッチが反応しなかった場合や、 stepseries.commands.SetReleaseSwTimeout までにHOMEスイッチが解除されなかった場合は、タイムアウトとして動作を停止します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.Move(motorID: int, step: int)[ソース]

指定ステップ数移動します。

指定ステップ数を移動し終わるまではBUSY状態になります。

実行可能タイミング

モータ停止時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.OSCCommand[ソース]

OSCコマンドオブジェクトによって実装されることを目的とした抽象クラスです。

もし独自のコマンドを実装する場合は、このクラスを継承する必要があります。

build() OscMessage[ソース]

ビルダを使用可能なOSCメッセージに変換します。

stringify() str[ソース]

ビルダをOSCメッセージ文字列へ変換します。

class stepseries.commands.OSCGetCommand[ソース]

デバイス上で get 機能のみを実行するコマンドです。

class stepseries.commands.OSCSetCommand[ソース]

デバイス上で set 機能のみを実行するコマンドです。

class stepseries.commands.ReleaseSw(motorID: int, ACT: bool, DIR: bool)[ソース]

HOMEスイッチが解放されるまで最小スピードで移動します。

スイッチが解放されると hardStop し、 ACT に応じた処理を行います。

このコマンドのタイムアウトは stepseries.commands.SetReleaseSwTimeout で設定できます。

このコマンドは stepseries.commands.SetHomingSpeedstepseries.commands.SetHomingDirection の影響は受けません。

このコマンドは、モータが停止するまでBUSY状態を保ちます。

実行可能タイミング

常時

ACT: bool

スイッチが解放された際の処理

0

その位置をHOMEに設定します。

1

その位置を MARK レジスタにコピーします。

DIR: bool

True: 正転方向, False: 逆転方向

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.ReportError(enable: bool, callback: Optional[Callable[[...], None]] = None)[ソース]

コマンドエラーの自動送信の有効・無効を切り替えます。

実行可能タイミング

常時

enable: bool

True で報告が有効

初期値

False

class stepseries.commands.ResetDevice[ソース]

デバイス全体をリセットします。

基板上のRESETボタンを物理的に押下した場合と同じ動作です。

実行可能タイミング

常時

response_cls

:py:class:`~stepseries.responses.Booted`の別名です。

class stepseries.commands.ResetMotorDriver(motorID: int)[ソース]

指定したモータドライバ (PowerSTEP01/L6470) をリセットし、初期設定値を再度書き込みます。

注釈

このコマンドはデバッグ目的のために設けられています。通常このコマンドを使用する必要はありません。

実行可能タイミング

常時

非推奨

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.ResetPos(motorID: int)[ソース]

モータの現在位置を0にリセットします。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.Run(motorID: int, speed: float)[ソース]

モータを一定速度で回転させます。

stepseries.commands.SetSpeedProfile で設定したスピードプロファイルに従って加速・減速します。

speed に到達するまではBUSY状態になります。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

speed: float

モータの回転速さ

マイナスの値を指定するとモータの回転が逆転します。またスピードはスピードプロファイルの最大・最小速さによって上下がリミットされます。

有効な範囲

-15625.0 - 15625.0 [steps/s]

class stepseries.commands.SetAcc(motorID: int, acc: float)[ソース]

スピードプロファイルの、加速度を設定します。

実行可能タイミング

モータ停止時

acc: float

加速度

有効な範囲

14.55 - 59590 [steps/s/s]

初期値

2000 [steps/s/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetBemfParam(motorID: int, INT_SPEED: int, ST_SLP: int, FN_SLP_ACC: int, FN_SLP_DEC: int)[ソース]

BEMF補償レジスタを設定します。

BEMFはドライバが電圧モードになっているときだけ有効です。すなわち、STEP800ではBEMF補償は常時有効になっています。

実行可能タイミング

常時

FN_SLP_ACC: int

FN_SLP_ACCレジスタの値

有効な範囲

0-255

初期値

41

FN_SLP_DEC: int

FN_SLP_DECレジスタの値

有効な範囲

0-255

初期値

41

INT_SPEED: int

INT_SPEEDレジスタの値

有効な範囲

0-16383

初期値

1032

ST_SLP: int

ST_SLPレジスタの値

有効な範囲

0-255

初期値

25

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetBrakeTransitionDuration(motorID: int, duration: int)[ソース]

電磁ブレーキの保持・開放時に、モータを励磁したままにしておく遷移時間を指定します。

これは物理的にブレーキ機構が動作する時間がかかるため、ブレーキの動作が完了するまでモータ軸を保持しておくために必要な時間です。

実行可能タイミング

常時

duration: int

有効な範囲

0-10000 [ms]

初期値

100 [ms]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetCurrentMode(motorID: int)[ソース]

指定したモータを電流モードに切り替えます。

STEP400のみ

注釈

STEP800では常に電圧モードで動作しますので、電流モードには切り替えられません。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

class stepseries.commands.SetDec(motorID: int, dec: float)[ソース]

スピードプロファイルの減速度を設定します。

実行可能タイミング

モータ停止時

dec: float

減速度

有効な範囲

14.55 - 59590 [steps/s/s]

初期値

2000 [steps/s/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetDecayModeParam(motorID: int, T_FAST: int, TON_MIN: int, TOFF_MIN: int)[ソース]

電流制御アルゴリズムのパラメータのレジスタを設定します。

STEP400のみ

Decayモードは電流モードにのみ適用されます。すなわちSTEP800では常に無効です。

実行可能タイミング

HiZ

TOFF_MIN: int

TOFF_MINレジスタの値

有効な範囲

0-255

初期値

41

TON_MIN: int

TON_MINレジスタの値

有効な範囲

0-255

初期値

41

T_FAST: int

T_FASTレジスタの値

有効な範囲

0-255

初期値

25

motorID: int

STEP400

1-4, 255

class stepseries.commands.SetDestIP[ソース]

デバイスが返答を送信する相手のIPアドレスを指定します。

モータの状態に変化があったときに通知するメッセージや、問い合わせへ返答するメッセージなどはこのIPアドレスに送信されるようになります。通常は制御に使うコンピュータのIPアドレスを指定することになります。このメッセージを受信すると、デバイス側は stepseries.responses.DestIP の返答を送信します。

また、このメッセージが受信されるまでは、本デバイスからOSCメッセージの送信は行いませんので、一番最初にこのコマンドを送信してください。唯一の例外は responses.Booted メッセージです。Config Tool を用いて、デバイス側がこのメッセージを待つかどうかを変更できます。

Note: ライブラリは stepseries.responses.DestIP を受信するまでは return します。この挙動は将来のアップデートで変更される可能性があります。

実行可能タイミング

常時

response_cls

:py:class:`~stepseries.responses.DestIP`の別名です。

class stepseries.commands.SetElPos(motorID: int, newFullstep: int, newMicrostep: int)[ソース]

モータの電気的位置(electrical postion)を設定します。

マイクロステップは0-127の128段階で表現されていますので、設定時は現在のマイクロステップと齟齬のない値を設定する必要があります。

実行可能タイミング

モータ停止時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

newFullstep: int

有効な範囲

0 - 3

newMicrostep: int

有効な範囲

0 - 127

class stepseries.commands.SetFullstepSpeed(motorID: int, fullstepSpeed: float)[ソース]

マイクロステッピングモードが自動でフルステップモードに切り替わる閾値を設定します。

実行可能タイミング

常時

fullstepSpeed: float

切り替わる閾値

有効な範囲

7.63 - 15625 [steps/s]

初期値

15625 [steps/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetGoUntilTimeout(motorID: int, timeOut: int)[ソース]

stepseries.commands.GoUntil 実行時のタイムアウトを設定します。

この時間内にHOMEセンサに反応がなかった場合にはtimeoutとして動作を中止します。0を指定するとタイムアウトが無効になります。

Config Tool. からも設定できます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

timeOut: int

HOMEスイッチは反応するまでの待ち時間

有効な範囲

0 - 4294967295 [ms]

初期値

10000 [ms]

class stepseries.commands.SetHomeSwMode(motorID: int, SW_MODE: bool)[ソース]

HOMEスイッチ端子に入力があった際に即時停止するかどうか(Switch mode)を指定します。

実行可能タイミング

HiZ

SW_MODE: bool

Trueの場合、停止しない

False

モータを即時停止する

True

停止しない

初期値

True

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetHomingDirection(motorID: int, direction: bool)[ソース]

原点復帰の方向を設定します。

Config Tool. からも設定できます。

実行可能タイミング

常時

direction: bool

True: 正転方向, False: 逆転方向

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetHomingSpeed(motorID: int, speed: float)[ソース]

原点復帰の速さを指定します。

Config Tool. からも設定できます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

speed: float

回転の速さ

有効な範囲

0.0 - 15625.0 [steps/s]

初期値

100.0 [steps/s]

class stepseries.commands.SetKval(motorID: int, holdKVAL: int, runKVAL: int, accKVAL: int, decKVAL: int)[ソース]

KVALパラメータ4種をまとめて設定します。

KVALは電圧モードでののみ有効です。すなわち、STEP800では常時有効となります。

実行可能タイミング

常時

accKVAL: int

モータ加速時のKVAL

有効な範囲

0-255

初期値

16

decKVAL: int

モータ減速時のKVAL

有効な範囲

0-255

初期値

16

holdKVAL: int

モータ停止時のKVAL

有効な範囲

0-255

初期値

16

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

runKVAL: int

モータが一定速運転時のKVAL

有効な範囲

0-255

初期値

16

class stepseries.commands.SetLimitSwMode(motorID: int, SW_MODE: bool)[ソース]

LIMITスイッチ端子に入力があった際に即時停止するかどうか(Switch mode)を指定します。

STEP400のみ

実行可能タイミング

常時

SW_MODE: bool

Trueの場合、停止しない

False

モータを即時停止する

True

停止しない

初期値

True

motorID: int

STEP400

1-4, 255

class stepseries.commands.SetLowSpeedOptimizeThreshold(motorID: int, lowSpeedOptimizationThreshold: float)[ソース]

低速回転時の相電流ひずみ補正を行う閾値を設定します。

低い電圧で非常に遅く回転した際に、相電流の歪みにより滑らかな回転を維持するのが難しくなる傾向があり、それを補正するためのパラメータです。

注釈

stepseries.commands.EnableLowSpeedOptimize でこの補正が有効になっていることを確認してください。

実行可能タイミング

モータ停止時

lowSpeedOptimizationThreshold: float

有効な範囲

0.0 - 976.3 [steps/s]

初期値

0 [steps/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetMark(motorID: int, MARK: int)[ソース]

MARKを任意の位置に設定します。

このレジスタは位置座標をひとつ保存できます。書き込むと、前回保存した値を上書きします。

実行可能タイミング

常時

MARK: int

設定する位置座標

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetMaxSpeed(motorID: int, maxSpeed: float)[ソース]

スピードプロファイルの、最大回転速さを設定します。

実行可能タイミング

常時

maxSpeed: float

最大回転速さ

有効な範囲

15.25 - 15610 [steps/s]

初期値

620 [steps/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetMicrostepMode(motorID: int, STEP_SEL: int)[ソース]

マイクロステッピングモードを設定します。

電圧モードでは、初期値である1/128まで設定できます。電流モードでは、1/16までしか設定できません。

実行可能タイミング

常時

STEP_SEL: int

マイクロステッピングモード

STEP_SEL

モード

0

1/1 microstep (フルステップ)

1

1/2 microstep

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 microstep

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetMinSpeed(motorID: int, minSpeed: float)[ソース]

スピードプロファイルの最小速さを設定します。

この値は stepseries.commands.ReleaseSw 時のモータ回転速さにも使用されます。

stepseries.commands.EnableLowSpeedOptimize が有効になっている場合は、この値は強制的に0になります。

実行可能タイミング

モータ停止時

minSpeed: float

最小速さ

有効な範囲

0 - 976.3 [steps/s]

初期値

0 [steps/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetOverCurrentThreshold(motorID: int, OCD_TH: int)[ソース]

過電流検出の閾値を設定します。STEP400とSTEP800では設定値の範囲と対応する電流が異なっています。

STEP400とSTEP800では Thermal statusの種類や発生条件が異なります。

実行可能タイミング

常時

OCD_TH: int

過電流検出の閾値

STEP400:

OCD_TH

閾値

0

312.5 mA

1

625 mA

...

...

30

9.6875 A

31

10 A

初期値

15 (5A)

STEP800:

OCD_TH

閾値

0

375 mA

1

750 mA

...

...

30

5.625 A

31

6 A

初期値

7 (3A)

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetPosition(motorID: int, newPosition: int)[ソース]

モータの位置座標を指定した値で上書きします。

実行可能タイミング

モータ停止時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

newPosition: int

上書きする位置

有効な範囲

-2097152 - 2097151

class stepseries.commands.SetPositionListReportInterval(interval: int, callback: Optional[Callable[[...], None]] = None)[ソース]

すべてのモータの現在位置を指定間隔で自動送信します。

有効化された場合、 stepseries.commands.SetPositionReportInterval は無効になり自動停止します。

実行可能タイミング

常時

interval: int

自動送信の間隔

0を指定すると無効化され、送信を停止します。

有効な範囲

0-2147483647 [ms]

初期値

0 [ms]

response_cls

:py:class:`~stepseries.responses.PositionList`の別名です。

class stepseries.commands.SetPositionReportInterval(motorID: int, interval: int, callback: Optional[Callable[[...], None]] = None)[ソース]

指定したモータの現在位置を指定間隔で自動送信します。

いずれかのモータで有効化された場合、 stepseries.commands.SetPositionListReportInterval は無効になり自動停止します。

実行可能タイミング

常時

interval: int

自動送信の間隔

0を指定すると無効化され、送信を停止します。

有効な範囲

0-2147483647 [ms]

初期値

0 [ms]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

response_cls

:py:class:`~stepseries.responses.Position`の別名です。

class stepseries.commands.SetProhibitMotionOnHomeSw(motorID: int, enable: bool)[ソース]

Homeセンサが反応している状態で、原点復帰方向へのモーションコマンドを禁止します。

原点復帰方向は Config Toolstepseries.commands.SetHomingDirection で設定できます。

実行可能タイミング

常時

enable: bool

Trueで禁止

初期値

False

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetProhibitMotionOnLimitSw(motorID: int, enable: bool)[ソース]

Limitセンサが反応している状態で、原点復帰方向の逆方向へのモーションコマンドを禁止します。

原点復帰方向は Config Toolstepseries.commands.SetHomingDirection で設定できます。

STEP400のみ

実行可能タイミング

常時

enable: bool

Trueで禁止

初期値

False

motorID: int

STEP400

1-4, 255

class stepseries.commands.SetReleaseSwTimeout(motorID: int, timeOut: int)[ソース]

stepseries.commands.ReleaseSw のタイムアウト時間を設定します。

もしHOMEスイッチがこの時間内に解放されたなかった場合は、モータの動作を停止します。0を指定すると無効になります。

Config Tool. からも設定できます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

timeOut: int

HOMEスイッチは反応するまでの待ち時間

有効な範囲

0 - 4294967295 [ms]

初期値

10000 [ms]

class stepseries.commands.SetServoParam(motorID: int, kP: float, kI: float, kD: float)[ソース]

PID制御のパラメータを設定します。

実行可能タイミング

常時

kD: float

微分ゲイン

有効な範囲

0-

初期値

0.0

kI: float

積分ゲイン

有効な範囲

0-

初期値

0.0

kP: float

比例ゲイン

有効な範囲

0-

初期値

0.06

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetSpeedProfile(motorID: int, acc: float, dec: float, maxSpeed: float)[ソース]

複数のスピードプロファイルを一度に設定します。

このコマンドで、加速度、減速度、最大速さを設定できます。

実行可能タイミング

モータ停止時

acc: float

加速度

有効な範囲

14.55 - 59590 [steps/s/s]

初期値

2000 [steps/s/s]

dec: float

減速度

有効な範囲

14.55 - 59590 [steps/s/s]

初期値

2000 [steps/s/s]

maxSpeed: float

最大回転速さ

有効な範囲

15.25 - 15610 [steps/s]

初期値

620 [steps/s]

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetStallThreshold(motorID: int, STALL_TH: int)[ソース]

ストール検出の閾値を設定します。

STEP400とSTEP800では Thermal statusの種類や発生条件が異なります。

実行可能タイミング

常時

STALL_TH: int

ストール検出の閾値

STEP400:

STALL_TH

閾値

0

312.5 mA

1

625 mA

...

...

30

9.6875 A

31

10 A

初期値

31 (10A)

STEP800:

STALL_TH

閾値

0

31.25 mA

1

62.5 mA

...

...

126

3.969 A

127

4 A

初期値

127 (4A)

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SetTargetPosition(motorID: int, position: int)[ソース]

サーボモード時の目標位置を設定します。

あらかじめ stepseries.commands.EnableServoMode が有効になっている必要があります。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

position: int

有効な範囲

-2097152 - 2097151

class stepseries.commands.SetTargetPositionList(position1: int, position2: int, position3: int, position4: int, position5: Optional[int] = None, position6: Optional[int] = None, position7: Optional[int] = None, position8: Optional[int] = None)[ソース]

全モータの目標位置を一度に設定します。

注釈

STEP400では、position 5-8 は設定する必要はありません。

position1: int

有効な範囲

-2097152 - 2097151

position2: int

有効な範囲

-2097152 - 2097151

position3: int

有効な範囲

-2097152 - 2097151

position4: int

有効な範囲

-2097152 - 2097151

position5: int = None

STEP800 のみ

有効な範囲

-2097152 - 2097151

position6: int = None

STEP800 のみ

有効な範囲

-2097152 - 2097151

position7: int = None

STEP800 のみ

有効な範囲

-2097152 - 2097151

position8: int = None

STEP800 のみ

有効な範囲

-2097152 - 2097151

class stepseries.commands.SetTval(motorID: int, holdTVAL: int, runTVAL: int, accTVAL: int, setDecTVAL: int)[ソース]

TVALパラメータ4つをまとめて設定します。

STEP400のみ

TVALは電流モードでのみ有効です。すなわちSTEP800では使用しません。

実行可能タイミング

常時

accTVAL: int

モータ加速時のTVAL

有効な範囲

0-127

初期値

16

holdTVAL: int

モータ停止時のTVAL

有効な範囲

0-127

初期値

16

motorID: int

STEP400

1-4, 255

runTVAL: int

モータが一定速運転時のTVAL

有効な範囲

0-127

初期値

16

setDecTVAL: int

モータ減速時のTVAL

有効な範囲

0-127

初期値

16

class stepseries.commands.SetVoltageMode(motorID: int)[ソース]

指定したモータを電圧モードに変更します。

STEP400のみ

注釈

STEP800では常に電圧モードで動作しますので、電流モードには切り替えられません。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

class stepseries.commands.SoftHiZ(motorID: int)[ソース]

スピードプロファイルに従ってモータを停止します。

スピードプロファイルに従って減速したのち、モータを停止して励磁を解除します。励磁が解除されるとHiZ状態になります。モータが停止するまではBUSY状態になります。サーボモードだった場合は解除されます。電磁ブレーキモードが有効になっている場合は、電磁ブレーキを保持状態にしてからHiZ状態に移行します。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

class stepseries.commands.SoftStop(motorID: int)[ソース]

スピードプロファイルに従ってモータを停止します。

減速停止後、モータは保持された状態になります。モータが停止するまではBUSYj応対になります。

サーボモードだった場合は解除されます。

実行可能タイミング

常時

motorID: int

STEP400

1-4, 255

STEP800

1-8, 255

stepseries.exceptions -- デバイスエラー

このライブラリが発生させるカスタムの例外情報 (exceptions) です。

exception stepseries.exceptions.ClientClosedError[ソース]

クライアントとの接続がオープンしていない。

exception stepseries.exceptions.ClientNotFoundError[ソース]

指定されたクライアントが見つからない。

exception stepseries.exceptions.InvalidCommandError[ソース]

コマンドが実行できない。

exception stepseries.exceptions.ParseError[ソース]

デバイスからのメッセージを解読できない。

exception stepseries.exceptions.StepSeriesException[ソース]

Base exception for the library.

stepseries.responses -- デバイスレスポンス

デバイスからの受信メッセージです。

class stepseries.responses.AdcVal(*args, **kwargs)[ソース]

モータドライバの16bitの CONFIG レジスタの値。

ADC_OUT: int

範囲

説明

0-31

ADC_OUTレジスタの5bit読み出し値。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.BemfParam(*args, **kwargs)[ソース]

BEMFパラメータのレジスタ値。

FN_SLP_ACC: int

範囲

説明

0-255 (0xFF)

T_FASTレジスタの値。

FN_SLP_DEC: int

範囲

説明

0-255 (0xFF)

FN_SLP_DECレジスタの値。

INT_SPEED: int

範囲

説明

0-16383 (0x3FFF)

INT_SPEEDレジスタの値。

ST_SLP: int

範囲

説明

0-255 (0xFF)

ST_SLPレジスタの値。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.Booted(*args, **kwargs)[ソース]

デバイスが(再)起動した際に送信されます。

このメッセージは stepseries.commands.SetDestIP が受信されたかどうかに関わらず送信されます。このメッセージを監視することによって、何らかの理由で本デバイスがリセットされたことを検出できます。

ファームウェアが起動して、Ethernetがリンク状態になった1秒後に送信されます。

サブネット内のすべてのノード (255.255.255.255) へブロードキャストされます。 Config Tool の設定を用いて、このメッセージを送信しないようにも設定できます

deviceID: int

範囲

説明

0-255

DIPスイッチによって設定されたデバイスIDの値。

class stepseries.responses.BrakeTransitionDuration(*args, **kwargs)[ソース]

ブレーキモードにおける電磁ブレーキの保持・開放時に、モータを励磁したままにしておく遷移時間を指定します。

duration: int

0.0-10000.0 ms

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.Busy(*args, **kwargs)[ソース]

モータのBUSY状態。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

state: int

範囲

説明

0-1

1: BUSY, 0: BUSYではない

class stepseries.responses.ConfigName(*args, **kwargs)[ソース]

設定ファイルのメタデータ。

configFileOpenSucceeded: int

デバイスが設定ファイルを開くことができたか。

configFileParseSucceeded: int

設定ファイルの内容の読み出しに成功したかどうか。

configName: str

設定の名称。

sdInitializeSucceeded: int

microSDカードを読み出しできたか。

class stepseries.responses.ConfigRegister(*args, **kwargs)[ソース]

モータドライバの16bitの CONFIG レジスタの値。

CONFIG: int

0-65535 (0xFFFF)

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.DecayModeParam(*args, **kwargs)[ソース]

電流制御の制御パラメータのレジスタ値。

TOFF_MIN: int

範囲

説明

0-255 (0xFF)

TOFF_MINレジスタの値。

TON_MIN: int

範囲

説明

0-255 (0xFF)

TON_MINレジスタの値。

T_FAST: int

範囲

説明

0-255 (0xFF)

T_FASTレジスタの値。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.DestIP(*args, **kwargs)[ソース]

stepseries.commands.SetDestIP が受信されたことを示す確認メッセージ。

destIp0: int

destIpの1桁目。

destIp1: int

destIpの2桁目。

destIp2: int

destIpの3桁目。

destIp3: int

destIpの4桁目。

isNewDestIp: int

それまでのdestIp設定値が変化したかどうかを示します。

class stepseries.responses.Dir(*args, **kwargs)[ソース]

モータの回転方向。

direction: int

範囲

説明

0-1

1: 正転, 0: 逆転

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.ElPos(*args, **kwargs)[ソース]

モータの電気的位置。

fullstep: int

範囲

説明

0-3

フルステップでの位置

microstep: int

範囲

説明

0-127

マイクロステップでの位置

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

exception stepseries.responses.ErrorCommand(*args, **kwargs)[ソース]

コマンド実行時にエラーを検出すると送信されます。

stepseries.commands.ReportError で有効・無効を切り替えられます。

errorText: str

エラーテキスト

説明

CommandIgnored

コマンドが実行可能なタイミングでない。コマンドの実行可能タイミングを確認してください。

MotorIdNotMatch

モータIDが適切でない値になっている。

BrakeEngaging

電磁ブレーキが効いた状態のままモーションコマンドを送信した。

HomeSwActivating

Homeセンサが反応している状態で、原点復帰方向へのモーションコマンドを禁止します。

LimitSwActivating

Limitセンサが反応している状態で、原点復帰方向の逆方向へのモーションコマンドを禁止します。

GoUntilTimeout

/goUntil コマンド実行中にタイムアウトした。

ReleaseSwTimeout

/releaseSw コマンド実行中にタイムアウトした。

InServoMode

サーボモードでは実行できないコマンドを送信した。

motorID: int = None

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

exception stepseries.responses.ErrorOSC(*args, **kwargs)[ソース]

受け取ったOSCメッセージに何らかのエラーがあった場合に送信されます。

errorText: str

エラーテキスト

説明

messageNotMatch

該当するコマンドがない。

oscSyntaxError

OSCのフォーマットが規格に沿っていなかった。

WrongDataType

SCメッセージの引数の型が異なっている。

motorID: int = None

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.FullstepSpeed(*args, **kwargs)[ソース]

マイクロステップからフルステップへ自動で切り替わる閾値。

fullstepSpeed: float

7.63-15625.0 steps/s

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.GoUntilTimeout(*args, **kwargs)[ソース]

stepseries.commands.GoUntil コマンドのタイムアウト時間。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

timeout: int

0.0-65535.0 ms

class stepseries.responses.HiZ(*args, **kwargs)[ソース]

モータがハイ・インピーダンス (HiZ) 状態かどうか

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

state: int

範囲

説明

0-1

1:HiZ, 0: HiZではない

class stepseries.responses.HomeSw(*args, **kwargs)[ソース]

HOMESWが押されているかどうかの状態。

direction: int

範囲

説明

0-1

1: 正転, 0: 逆転

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

swState: int

範囲

説明

0-1

1: オープン, 0: クローズ(反応している)

class stepseries.responses.HomeSwMode(*args, **kwargs)[ソース]

スイッチモードは stepseries.commands.SetHomeSwMode. で説明されています。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

swMode: int

範囲

説明

0-1

1: モータが即時停止する, 0: 通知のみ(停止しない)

class stepseries.responses.HomingDirection(*args, **kwargs)[ソース]

原点復帰の方向を設定します。

homingDirection: int

範囲

説明

0-1

1: 正転, 0: 逆転

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.HomingSpeed(*args, **kwargs)[ソース]

原点復帰時のモータ回転速さ。

homingSpeed: float

0.0-15625.0 steps/s

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.HomingStatus(*args, **kwargs)[ソース]

Documentation: https://ponoor.com/en/docs/step-series/osc-command-reference/automatically-sent-messages-from-step-400/#homingstatus

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.Kval(*args, **kwargs)[ソース]

KVAL4種の値。

accKVAL: int

範囲

説明

0-255

停止時のKVAL

decKVAL: int

範囲

説明

0-255

停止時のKVAL

holdKVAL: int

範囲

説明

0-255

停止時のKVAL

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

runKVAL: int

範囲

説明

0-255

停止時のKVAL

class stepseries.responses.LimitSw(*args, **kwargs)[ソース]

LIMITSWが押されているかどうかの状態。

direction: int

範囲

説明

0-1

1: 正転, 0: 逆転

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

swState: int

範囲

説明

0-1

1: オープン, 0: クローズ(反応している)

class stepseries.responses.LimitSwMode(*args, **kwargs)[ソース]

スイッチモードは stepseries.commands.SetHomeSwMode. で説明されています。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

swMode: int

範囲

説明

0-1

1: モータが即時停止する, 0: 通知のみ(停止しない)

class stepseries.responses.LowSpeedOptimizeThreshold(*args, **kwargs)[ソース]

Low speed optimization threshold の現在の設定値。

lowSpeedOptimizeThreshold: float

0.0 - 976.3 steps/s

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

optimizationEnabled: int

範囲

説明

0-1

1: 有効, 0: 無効

class stepseries.responses.Mark(*args, **kwargs)[ソース]

現在のMARK位置。

MARK: int

-2,097,152-2,097,151 steps

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.MicrostepMode(*args, **kwargs)[ソース]

モータのマイクロステップモード。

STEP_SEL: int

範囲

説明

0

Full-step

1

Half-step

2

1/4 step

3

1/8 step

4

1/16 step

5

1/32 step

6

1/64 step

7

1/128 step

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.MinSpeed(*args, **kwargs)[ソース]

スピードプロファイルのモータの最小回転速さ

minSpeed: float

0.0-976.3 steps/s

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.MotorStatus(*args, **kwargs)[ソース]

モータの動作状況。

MOT_STATUS: int

範囲

説明

0

モータ停止時

1

加速中

2

減速中

3

一定速運転中

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.OSCResponse(*args, **kwargs)[ソース]

OSCレスポンスオブジェクトによって実装されることを想定した抽象クラス。

class stepseries.responses.OverCurrent(*args, **kwargs)[ソース]

Documentation: https://ponoor.com/en/docs/step-series/osc-command-reference/automatically-sent-messages-from-step-400/#overcurrent

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.OverCurrentThreshold(*args, **kwargs)[ソース]

過電流検出の閾値[mA]

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

overCurrentThreshold: float

機種

範囲

STEP400

312.5-10000.0

STEP800

375.0-6000.0

class stepseries.responses.Position(*args, **kwargs)[ソース]

モータの ABS_POS レジスタの値=モータの現在位置・

ABS_POS: int

-2,097,152-2,097,151 steps

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.PositionList(*args, **kwargs)[ソース]

全モータの現在位置をまとめたもの。

STEP400ではモータ数は4軸ですので、 position5-8 はありません。

position1: int

-2,097,152-2,097,151 steps

position2: int

-2,097,152-2,097,151 steps

position3: int

-2,097,152-2,097,151 steps

position4: int

-2,097,152-2,097,151 steps

position5: int = None

-2,097,152-2,097,151 steps

position6: int = None

-2,097,152-2,097,151 steps

position7: int = None

-2,097,152-2,097,151 steps

position8: int = None

-2,097,152-2,097,151 steps

class stepseries.responses.ProhibitMotionOnHomeSw(*args, **kwargs)[ソース]

HOMESWが押されている状態で原点復帰方向への動作を許可するかどうか。

enable: int

範囲

説明

0-1

1: 許可されている, 0: 禁止されている

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.ProhibitMotionOnLimitSw(*args, **kwargs)[ソース]

HOMESWが押されている状態で原点復帰方向への動作を許可するかどうか。

enable: int

範囲

説明

0-1

1: 許可されている, 0: 禁止されている

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.ReleaseSwTimeout(*args, **kwargs)[ソース]

stepseries.commands.ReleaseSw のタイムアウト時間。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

timeout: int

0.0-10000.0 ms

class stepseries.responses.ServoParam(*args, **kwargs)[ソース]

PID制御ゲイン

kD: float

範囲

説明

0.0-

微分ゲイン

kI: float

範囲

説明

0.0-

積分ゲイン

kP: float

範囲

説明

0.0-

比例ゲイン

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.Speed(*args, **kwargs)[ソース]

現在のモータの速度

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

speed: float

-15625.0-15625.0 steps/s

class stepseries.responses.SpeedProfile(*args, **kwargs)[ソース]

スピードプロファイルの加速度、減速度、最大速さ。

acc: float

14.55-59590.0 steps/s/s

dec: float

14.55-59590.0 stesp/s/s

maxSpeed: float

15.25-15610.0 steps/s

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.Stall(*args, **kwargs)[ソース]

Documentation: https://ponoor.com/en/docs/step-series/osc-command-reference/automatically-sent-messages-from-step-400/#stall

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.StallThreshold(*args, **kwargs)[ソース]

ストール検出の閾値 [mA]

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

stallThreshold: float

機種

範囲

STEP400

312.5-10000.0

STEP800

31.25-4000.0

class stepseries.responses.Status(*args, **kwargs)[ソース]

モータドライバのSTATUSレジスタの値。

STATUSの各ビットに含まれる情報についてはデータシートを参照してください。このうち、一部の値はラッチされていて、ステータスレジスタを読み出すとリセットされます。本デバイスではファームウェアによって常時ステータスレジスタを繰り返し取得しているため、これらの値はすぐにリセットされてしまいます。これらの事象を個別に報告する設定が可能ですので、そちらを利用してください。

STEP400 Bits

STEP800 Bits

対応する設定コマンド

UVLO

UVLO

stepseries.commands.EnableUvloReport

UVLO_ADC

N/A

実装されていません。

OCD

OCD

stepseries.commands.EnableOverCurrentReport

STALL_A, STALL_B

STEP_LOSS_A, STEP_LOSS_B

stepseries.commands.EnableStallReport

CMD_ERROR

WRONG_CMD, NOTPREF_CMD

stepseries.commands.EnableCommandErrorReport

TH_STATUS

TH_WRN, TH_SD

stepseries.commands.EnableThermalStatusReport

SW_EVN

SW_EVN

stepseries.commands.EnableHomeSwReport

MOT_STATUS

MOT_STATUS

stepseries.commands.EnableMotorStatusReport

SW_F

SW_F

stepseries.commands.EnableHomeSwReport

BUSY

BUSY

stepseries.commands.EnableBusyReport

HIZ

HIZ

stepseries.commands.EnableHiZReport

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

status: int

範囲

説明

0-65535

T_FASTレジスタの値。

class stepseries.responses.SwEvent(*args, **kwargs)[ソース]

指定したモータのHOMESWがHIGHからLOWに変化した際に送信されます。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

class stepseries.responses.ThermalStatus(*args, **kwargs)[ソース]

モータドライバの温度状態 (Thermal Status)。

STEP400とSTEP800ではステータスや閾値が異なります。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

thermalStatus: int

STEP400:

範囲

説明

発生条件

解除条件

0

通常

N/A

N/A

1

警告

135°C

125°C

2

Bridge Shutdown

155°C

145°C

3

Device Shutdown

170°C

130°C

STEP800:

範囲

説明

発生条件

解除条件

0

通常

N/A

N/A

1

警告

130°C

130°C

2

Bridge Shutdown

160°C

130°C

class stepseries.responses.Tval(*args, **kwargs)[ソース]

4種のTVALレジスタ値をまとめたもの。

accTVAL: int

範囲

説明

0-127

加速時のTVAL

decTVAL: int

範囲

説明

0-127

減速時のTVAL

holdTVAL: int

範囲

説明

0-127

停止時のTVAL

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

runTVAL: int

範囲

説明

0-127

一定速運転時のTVAL

class stepseries.responses.Tval_mA(*args, **kwargs)[ソース]

4種のTVALをレジスタ値ではなくmAでまとめたもの。

accTVAL_mA: float

範囲

説明

78.125 - 5000.0

加速時のTVAL

decTVAL_mA: float

範囲

説明

78.125 - 5000.0

減速時のTVAL

holdTVAL_mA: float

範囲

説明

78.125 - 5000.0

停止時のTVAL

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

runTVAL_mA: float

範囲

説明

78.125 - 5000.0

一定速運転時のTVAL

class stepseries.responses.Uvlo(*args, **kwargs)[ソース]

電圧低下による強制停止(UVLO)の現在の状態。

motorID: int

機種

モータ番号の範囲

STEP400

1-4

STEP800

1-8

state: int

範囲

説明

0-1

1: UVLO状態, 0:UVLO状態ではない

class stepseries.responses.Version(*args, **kwargs)[ソース]

基板に書き込まれているファームウェアのバージョン。

compile_date: str

ファームウェアのコンパイル日時

firmware_name: str

ファームウェアの名称

firmware_version: str

ファームウェアのバージョン

stepseries.step400 -- STEP400 デバイス

Ethernet接続可能な4軸ステッピングモータドライバ。

class stepseries.step400.STEP400(id: int, address: str = '10.0.0.100', port: int = 50000, server_address: str = '0.0.0.0', server_port: int = 50100)[ソース]

STEP400モータドライバとデータを送受信します。

注釈

デフォルトメッセージハンドラを作成することを推奨します。例:

>>> from stepseries.step400 import STEP400
>>>
>>> def default_handler(message) -> None:
...     print(message)
...
>>> driver = STEP400(0, '10.1.21.56')  # Your IP and dip ID here
>>> driver.on(None, default_handler)
パラメータ
  • id (int) -- デバイスのDIPスイッチで設定されたID

  • address (str) -- デバイスのIPアドレス。初期値は 10.0.0.100 です。

  • port (int) -- デバイスが受信するローカルポート番号。初期値は 50000 です。

  • server_address (str) -- サーバ(制御PC)のIPアドレス。常時 0.0.0.0 に設定します。

  • server_port (int) -- サーバが受信するポート番号。初期値は 50100 です。

  • add_id_to_args (bool) -- addressserver_portid を加算するかどうか。初期値は True です。

stepseries.step800 -- STEP800 デバイス

Ethernet接続可能な8軸ステッピングモータドライバ。

class stepseries.step800.STEP800(id: int, address: str = '10.0.0.100', port: int = 50000, server_address: str = '0.0.0.0', server_port: int = 50100)[ソース]

STEP800モータドライバとデータを送受信します。

注釈

デフォルトメッセージハンドラを作成することを推奨します。例:

>>> from stepseries.step800 import STEP800
>>>
>>> def default_handler(message) -> None:
...     print(message)
...
>>> driver = STEP800(0, '10.1.21.56')  # Your IP and dip ID here
>>> driver.on(None, default_handler)
パラメータ
  • id (int) -- デバイスのDIPスイッチで設定されたID

  • address (str) -- デバイスのIPアドレス。初期値は 10.0.0.100 です。

  • port (int) -- デバイスが受信するローカルポート番号。初期値は 50000 です。

  • server_address (str) -- サーバ(制御PC)のIPアドレス。常時 0.0.0.0 に設定します。

  • server_port (int) -- サーバが受信するポート番号。初期値は 50100 です。

  • add_id_to_args (bool) -- addressserver_portid を加算するかどうか。初期値は True です。

get(command: OSCGetCommand, with_callback: bool = True, wait: bool = True) Union[OSCResponse, List[OSCResponse]][ソース]

デバイスに 'get' コマンドを送り、レスポンスを返します。

注釈

レスポンスは該当する各コールバックにも送信されます。

もし ParseError を受信した場合は、そのエラーが発生します。生のレスポンスは、エラーの response 属性で取得できます。

パラメータ
  • command (OSCGetCommand) -- 完成したコマンドのテンプレート (stepseries.commands) 。

  • with_callback (bool) -- レスポンスをコールバックにも送るかどうか(初期値は True )。

  • wait (bool) -- True の場合はデバイスからのレスポンスを待ち、そうでない場合はレスポンスを待たずに戻ります。初期値は True です。

例外
set(command: OSCSetCommand) None[ソース]

'set' コマンドをデバイスに送信します。

パラメータ

command (OSCCommand) -- 完成したコマンドのテンプレート (stepseries.commands) 。

例外

TypeError -- commandOSCSetCommand ではない。