関数 > モーター制御関数 >

YduPmcsGetSensorConfig

機能

センサの設定値を取得します。

書式

INT YduPmcsGetSensorConfig(
    WORD wUnitID,
    WORD wAxis,
    WORD wMode,
    PWORD pwConfig
);

パラメータ

wUnitID

ユニットのID番号を指定します。

言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
WORD unsigned short ushort Short Integer

wAxis

設定値を取得する軸を指定します。複数の軸を指定することはできません。

設定値 内容
PMC_AXIS_X0 X0軸
PMC_AXIS_Y0 Y0軸
PMC_AXIS_Z0 Z0軸
PMC_AXIS_U0 U0軸
PMC_AXIS_X1 X1軸
PMC_AXIS_Y1 Y1軸
PMC_AXIS_Z1 Z1軸
PMC_AXIS_U1 U1軸
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
WORD unsigned short ushort Short Integer

wMode

取得する項目を指定します。

設定値 内容
PMC_LOGIC センサ極性
PMC_STA_STP STA/STP信号の有効・無効
PMC_SD_CFG SD信号の有効・無効
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
WORD unsigned short ushort Short Integer

pwConfig

設定値を格納するバッファへのポインタを指定します。
取得する項目(wMode)によって値が異なります。

  • wMode : PMC_LOGIC

    各センサの入力論理

    bit 15 14 13 12 11 10 9 8
    信号 - - - - - - - STP1
    (※1)
    STP3
    (※2)
    bit 7 6 5 4 3 2 1 0
    信号 STP0
    (※1)
    STP2
    (※2)
    STA1
    (※1)
    STA3
    (※2)
    STA0
    (※1)
    STA2
    (※2)
    ORG +SD -SD +EL -EL
    各ビットの値 内容
    0 オフで検知
    1 オンで検知

    ※1 X0・Y0・Z0・U0指定時
    ※2 X1・Y1・Z1・U1指定時

  • wMode : PMC_STA_STP

    STA/STP信号の有効または無効

    bit 7 6 5 4 3 2 1 0
    信号 - - - - STP1
    (※1)
    STP3
    (※2)
    STP0
    (※1)
    STP2
    (※2)
    STA1
    (※1)
    STA3
    (※2)
    STA0
    (※1)
    STA2
    (※2)
    各ビットの値 内容
    0 無効
    1 有効

    ※1 X0・Y0・Z0・U0指定時
    ※2 X1・Y1・Z1・U1指定時

  • wMode : PMC_SD_CFG

    SD信号の有効または無効

    内容
    0 無効
    1 有効
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
PWORD unsigned short* out ushort Short Integer

戻り値

関数が正常に終了した場合は0(YDU_RESULT_SUCCESS)が返ります。
正常に終了しなかった場合は0以外が返りますので、その場合はエラーコードを参照してください。

言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0
INT int int Integer Long

備考

センサ極性のSTAx・STPxの極性設定はサブボード毎に共通です。
4軸の場合は全ての軸が共通の設定です。
8軸の場合はX0・Y0・Z0・U0が共通の設定、X1・Y1・Z1・U1が共通の設定です。

使用例

ユニットIDが0のユニットから、X0軸のセンサ極性設定を取得します。

C/C++

int nResult;
WORD wConfig;
nResult = YduPmcsGetSensorConfig(0, PMC_AXIS_X0, PMC_LOGIC, &wConfig);

C++/CLI

int result;
unsigned short config;
result = YduPmcsGetSensorConfig(0, PMC_AXIS_X0, PMC_LOGIC, &config);

C#

int result;
ushort config;
result = YduPmcs.GetSensorConfig(0, YduPmcs.PMC_AXIS_X0, YduPmcs.PMC_LOGIC, out config);

VB(.NET2002以降)

Dim result As Integer
Dim config As Short
result = YduPmcsGetSensorConfig(0, PMC_AXIS_X0, PMC_LOGIC, config)

VB6.0

Dim lngResult As Long
Dim intConfig As Integer
lngResult = YduPmcsGetSensorConfig(0, PMC_AXIS_X0, PMC_LOGIC, intConfig)