YduPmcsGetStatus¶
機能¶
各ステータスを取得します。
書式¶
INT YduPmcsGetStatus(
WORD unitId,
WORD axis,
WORD mode,
WORD* status
);
パラメータ¶
unitId¶
ユニットのID番号を指定します。
言語 | C# | VB(.NET2002以降) | VB6.0/VBA | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | ushort | Short | Integer | unsigned short | WORD |
axis¶
ステータスを読み込む軸を指定します。
複数の軸を指定することはできません。
定義 | 値 | 軸 |
---|---|---|
PMC_AXIS_X0 | 0x01 | X0軸 |
PMC_AXIS_Y0 | 0x02 | Y0軸 |
PMC_AXIS_Z0 | 0x04 | Z0軸 |
PMC_AXIS_U0 | 0x08 | U0軸 |
PMC_AXIS_X1 | 0x10 | X1軸 |
PMC_AXIS_Y1 | 0x20 | Y1軸 |
PMC_AXIS_Z1 | 0x40 | Z1軸 |
PMC_AXIS_U1 | 0x80 | U1軸 |
言語 | C# | VB(.NET2002以降) | VB6.0/VBA | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | ushort | Short | Integer | unsigned short | WORD |
mode¶
取得する項目を指定します。
値 | 取得する項目 |
---|---|
PMC_BUSY | 動作状態 |
PMC_SENSOR_STATE | センサ入力状態 |
言語 | C# | VB(.NET2002以降) | VB6.0/VBA | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | ushort | Short | Integer | unsigned short | WORD |
status¶
ステータスを格納するバッファへのポインタを指定します。
取得する項目(mode)によって値が異なります。
-
wMode : PMC_BUSY
値 内容 0 モーター停止中 1 モーター動作中
-
wMode : PMC_SENSOR_STATE
bit 7 6 5 4 3 2 1 0 信号 - STP STA ORG +SD -SD +EL -EL 各ビットの値 内容 0 入力無し 1 入力有り
言語 | C# | VB(.NET2002以降) | VB6.0/VBA | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | out ushort | Short | Integer | unsigned short* | WORD* |
戻り値¶
関数が正常に終了した場合は0(YDU_RESULT_SUCCESS)が返ります。
正常に終了しなかった場合は0以外が返りますので、その場合はエラーコードを参照してください。
言語 | C# | VB(.NET2002以降) | VB6.0/VBA | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
使用例¶
ユニットIDが0のユニットから、X0軸の動作状態を取得します。
C#¶
var result = YduPmcs.GetStatus(0, YduPmcs.PMC_AXIS_X0, YduPmcs.PMC_BUSY, out var status);
VB(.NET2002以降)¶
Dim status As Short
Dim result As Integer = YduPmcsGetStatus(0, PMC_AXIS_X0, PMC_BUSY, status)
VB6.0/VBA¶
Dim result As Long
Dim status As Integer
result = YduPmcsGetStatus(0, PMC_AXIS_X0, PMC_BUSY, status)
C++/CLI¶
unsigned short status;
int result = YduPmcsGetStatus(0, PMC_AXIS_X0, PMC_BUSY, &status);
C/C++¶
WORD status;
INT result = YduPmcsGetStatus(0, PMC_AXIS_X0, PMC_BUSY, &status);