SmcWGetMoveSpeed


機能

動作中のパルス出力速度を取得します。

書式

Ret = SmcWGetMoveSpeed( Id , AxisNo , MoveSpeed )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
SmcWInit 関数で取得したデバイスIDを指定します。

AxisNo [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
軸番号を指定します。

MoveSpeed [ VB.NET: Double ] [ C, C++: double * ] [ C#: out double ] [ Python: ctypes.POINTER(ctypes.c_double) ]
現在動作中の速度を格納する変数のアドレスを指定します。

戻り値

Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]

0

正常終了

0以外

異常終了

参照:エラーコード詳細

説明

本関数では小数点以下の速度を取得することはできません。
小数点以下は切り捨てられます。
また、取得速度と実際のモータの速度で誤差が生じる場合があります。
これはデバイスドライバ内の計算誤差によるものですのでご了承ください。

補間動作時、本関数にて速度取得が可能な軸は、補間制御軸のみです。 これは使用LSIの仕様です。

この関数は軸が動作中の場合も実行可能です。

使用例

軸番号1のパルス出力速度を取得します。

VB.NET
Dim Ret As Integer
Dim MoveSpeed As Double
Ret = SmcWGetMoveSpeed( Id , 1, MoveSpeed )

C, C++
long Ret;
double MoveSpeed ;
Ret = SmcWGetMoveSpeed( Id , 1, &MoveSpeed );

C#
int Ret;
double MoveSpeed ;
Ret = Smc.WGetMoveSpeed( Id , 1, out MoveSpeed );

Python
Ret = ctypes.c_long()
MoveSpeed = ctypes.c_double()
Ret.value = csmc.SmcWGetMoveSpeed( Id , 1, ctypes.byref(MoveSpeed) )