11.1.26. ecmSxSt_GetFlags


SYNOPSIS

t_word  ecmSxSt_GetFlags(
  t_i32  NetID,
  t_i32  Axis,
  t_i32  *ErrCode
)

DESCRIPTION

  • 이 함수는 단일 축에 대해서 모션 상태에 관련된 상태 Flag 값들이 반환됩니다.

PARAMETER

  • NetID : Network 번호

  • Axis : 대상 축 번호.

  • ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다.

RETURN VALUE

  • 이 리턴값은 SDK에 정의된 TEcmSxSt_Flags 구조체를 이용하여 받아올 수 잇습니다. 구조체 안 매개 변수는 아래와 같습니다.

Parameter

Value & Meaning

RdyToSwOn

0 : Ready To Switch off
1 : Ready To Switch On
SwOn

0 : Switch Off
1 : Switch On
OperEnabled

0 : Servo-off
1 : Servo-on

ServoFault

Servo driver의 Fault 발생 상태

VoltEnabled

Voltage Enabled

QuickStop

Quick Stop 발생 상태

SwOnDisabled

Switch On Disabled

ServoWarn

Servo driver의 Warning 발생 상태

CtlrFault

Controller의 Fault 발생 상태

HomeError

Homing중에 에러 발생 체크 상황

OMS1

Operation Mode Specific 1

IntLimit

Internal Limit Active 확인

OMS2

Operation Mode Specific 2

HomeBusy

Homing operation이 진행 체크 상황

HomeAttained

0 : Homing 동작이 실패
1 : Homing 동작이 성공적으로 완료되었음을 나타냄

EXAMPLE

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
  //본 예제는 ecmSxSt_GetFlags 함수를 이용하여 Servo On/Off 상태를 얻어 오는 예제 입니다.

  #include "ComiEcatSdk_Api.h"
  #define AXIS0   0      0

  t_32 Error_Num =  0;//함수 별  에러 코드 저장 변수

  void Set_HomeFlag()
  {
       TEcmSxSt_Flags MotFlag;;        //모션 상태 관련 구조체

       MotFlag.word = ecmSxSt_GetFlags(Device_Info.NetIdx,  Axis0, &Error_Num);

  if(MotFlag.bit.OperEnabled)// Servo On/Off  상태 체크
               //Servo On 시 처리
       else
               //Servo Off 시 처리

  }