コンテンツにスキップ
関数 > モーター制御関数 >

PmcmStopMotion

機能

モーター動作を停止します。

書式

INT PmcmStopMotion(
    WORD wID,
    WORD wAxis,
    WORD wStopMode
);

パラメータ

wID

ボードのID番号を指定します。

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

wAxis

動作を停止する軸を指定します。複数の軸を指定することができます。

設定値 内容
PMCM_AXIS_X X軸
PMCM_AXIS_Y Y軸
言語 C/C++ C++/CLI C# VB(.NET2002以降) VB6.0/VBA GCC
WORD unsigned short ushort Short Integer uint16_t

wStopMode

停止モードを指定します。

設定値 内容
PMCM_DEC_STOP 減速停止
PMCM_IMMEDIATE_STOP 即停止

減速停止を指定した場合でも、定速起動で動作中の場合は即停止します

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

戻り値

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

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

備考

CP動作時に実行した場合は、待ち状態となっている動作もクリアされます

使用例

IDが0のボードの、X軸とY軸のモーターを即停止します。

C/C++

int nResult;
WORD wAxis;
wAxis = PMCM_AXIS_X + PMCM_AXIS_Y;
nResult = PmcmStopMotion(0, wAxis, PMCM_IMMEDIATE_STOP);

C++/CLI

int result;
unsigned short axis;
axis = PMCM_AXIS_X + PMCM_AXIS_Y;
result = PmcmStopMotion(0, axis, PMCM_IMMEDIATE_STOP);

C#

int result;
ushort axis;
axis = Pmcm.PMCM_AXIS_X + Pmcm.PMCM_AXIS_Y;
result = Pmcm.StopMotion(0, axis, Pmcm.PMCM_IMMEDIATE_STOP);

VB(.NET2002以降)

Dim result As Integer
Dim axis As Short
axis = PMCM_AXIS_X + PMCM_AXIS_Y
result = PmcmStopMotion(0, axis, PMCM_IMMEDIATE_STOP)

VB6.0/VBA

Dim lngResult As Long
Dim intAxis As Integer
intAxis = PMCM_AXIS_X + PMCM_AXIS_Y
lngResult = PmcmStopMotion(0, intAxis, PMCM_IMMEDIATE_STOP)

GCC

int32_t result;
uint16_t axis;
axis = PMCM_AXIS_X + PMCM_AXIS_Y;
result = PmcmStopMotion(0, axis, PMCM_IMMEDIATE_STOP);