機能
モータの停止位置(総出力パルス数)を設定します。
書式
Ret = SmcWSetStopPosition( Id , AxisNo , Coordinate, StopPosition )
引数
Id [ C, C++: short ] [ Python: ctypes.c_short ]
SmcWInit 関数で取得したデバイスIDを指定します。
AxisNo [ C, C++: short ] [ Python: ctypes.c_short ]
軸番号を指定します。
Coordinate [ C, C++: short ] [ Python: ctypes.c_short ]
位置の座標タイプを設定します。
0 |
絶対座標 |
1 |
相対座標 |
StopPosition [ C, C++: int ] [ Python: ctypes.c_int ]
停止位置を設定します。
設定可能範囲 :
絶対座標
: -134,217,728 ~ +134,217,727
相対座標 : -134,217,728 ~
+134,217,727 ( 0を除く )
戻り値
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
0 |
正常終了 |
0以外 |
異常終了 |
参照:エラーコード詳細
説明
Coordinateに絶対座標を指定し、StopPositionにSmcWGetOutPulseで取得した値を指定した場合、移動距離は0となるため戻り値はエラーコードが返ります。
Coordinateに絶対座標を指定した場合、「0」の位置を基準点とします。
座標はSmcWGetOutPulseで取得した値です。また、SmcWSetOutPulseでプリセット可能です。
例えば、現在位置を基準点とする場合、SmcWSetOutPulseで「0」をプリセットしてください。
使用例
軸番号1のモータの停止位置(総出力パルス数)を設定します。
相対座標で1000パルスを設定します。
C, C++
long Ret;
short Coordinate ;
int StopPosition ;
Coordinate = 1;
StopPosition = 1000;
Ret = SmcWSetStopPosition( Id , 1, Coordinate , StopPosition ) ;
Python
Ret = ctypes.c_long()
Coordinate = ctypes.c_short()
StopPosition = ctypes.c_int()
Coordinate.value = 1
StopPosition.value = 1000
Ret.value = csmc.SmcWSetStopPosition( Id , 1, Coordinate , StopPosition )
関連項目