SmcWGetLatchCountPulse


機能

LTC信号入力によりラッチされたエンコーダカウンタ値の取得を行います。

 

書式

Ret = SmcWGetLatchCountPulse( Id , AxisNo , CountPulse )

 

引数

Id [ C, C++: short ] [ Python: ctypes.c_short ]

SmcWInit 関数で取得したデバイスIDを指定します。

 

AxisNo [ C, C++: short ] [ Python: ctypes.c_short ]

軸番号を指定します。

 

CountPulse [ C, C++: int * ] [ Python: ctypes.POINTER(ctypes.c_int) ]

エンコーダのカウント値を格納する変数のアドレスを指定します。
カウント値は絶対座標で表されます。

 

戻り値

Ret [ C, C++: long ] [ Python: ctypes.c_long ]

0

正常終了

0以外

異常終了

参照:エラーコード詳細

 

説明

デバイス動作中での実行が可能です。
SmcWSetCtrlTypeInでIN4をLTCに設定しておく必要があります。
SmcWSetCounterModeでラッチするカウンタを選択しておく必要があります。

 

使用例

軸番号1のラッチされたエンコーダのカウント値を取得します。

 

C, C++

long Ret;

int CountPulse ;

Ret = SmcWGetLatchCountPulse( Id , 1, &CountPulse );

 

Python

Ret = ctypes.c_long()

CountPulse = ctypes.c_int()

Ret.value = csmc.SmcWGetLatchCountPulse( Id , 1, ctypes.byref(CountPulse) )

 

関連項目

SmcWSetCtrlTypeIn SmcWSetCounterMode