14.1.7. ecmHomeSt_GetFlags¶
SYNOPSIS¶
t_success ecmHomeSt_GetFlags(
t_i32 NetID,
t_i32 Axis,
t_i32 *ErrCode
)
DESCRIPTION¶
이 함수는 단일 축에 대해서 원점복귀 상태에 관련된 상태 Flag 값들이 반환됩니다.
PARAMETER¶
NetID : Network 번호
Axis : 대상 축 번호
ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다.
RETURN VALUE¶
이 리턴값은 SDK에 정의된 TEcmHomeSt_Flags 구조체를 이용하여 받아올 수 있습니다. 구조체 안 매개 변수는 아래와 같습니다.
Parameter |
Value & Meaning |
---|---|
HomeBusy
|
0 : Homing 동작이 진행하지 않음을 나타냄
1 : Homing 동작이 진행중임을 나타냄
|
Moving
|
0 : 모터가 구동하지 않음을 나타냄
1 : 모터가 구동중임을 나타냄
|
HomeAttained
|
0 : Homing 동작이 실패했음을 나타냄
1 : Homing 동작이 성공적으로 완료되었음을 나타냄
|
HomingError
|
0 : 에러가 발생하지 않음을 나타냄
1 : Homing 동작 중 에러가 발생했음을 나타냄
|
EXAMPLE¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include "ComiEcatSdk_Api.h"
#define AXISX 0
#define AXISY 1
t_32 Error_Num = 0;//함수 별 에러 코드 저장 변수
void Set_HomeFlag()
{
TEcmHomeSt_Flags MotHomeFlg; //원점 복귀 관련 구조체
MotHomeFlg.word = ecmHomeSt_GetFlags(Device_Info.NetIdx , AXISX, &Error_Num);
if(MotHomeFlg.bit.HomeBusy)
//Homing 동작이 진행 중 일 때 처리
else
//Homing 동작이 진행 하지 않을 때 처리
if(MotHomeFlg.bit.Moving)
//모터가 구동 중 일 때 처리
else
//모터가 구동 중이 아닐 때 처리
if(MotHomeFlg.bit.HomeAttained)
//Homing 동작이 성공적으로 완료되었을 때 처리
else
//Homing 동작이 실패했을 때 처리
if(MotHomeFlg.bit.HomingError)
//Homing 동작 중 에러가 발생 했을 때 처리
else
//에러가 발생 하지 않았을 때 처리
|