11.1.18. ecmSxMot_OverrideMoveTo


SYNOPSIS

t_cmdidx  ecmSxMot_OverrideMoveTo(
  t_i32  NetID,
  t_i32  Axis,
  t_f64  NewPos,
  t_bool  *IsIgnored,
  t_i32  *ErrCode
)

DESCRIPTION

  • 이 함수는 ecmSxMot_MoveToStart(_FF)() 이송 함수를 통하여 수행되는 절대좌표 모션에 대하여 목표 절대좌표값, 즉 목표 위치값을 변경(오버라이딩) 하는 함수 입니다.

PARAMETER

  • NetID : Network 번호

  • Axis : 대상 축 번호.

  • NewPos : 새로운 목표 절대좌표값을 지정합니다.

  • IsIgnored : 오버라이드 적용 성공/실패 여부를 반환합니다.

Value

Meaning

0

모션에러가 발생하였거나 이미 이송이 완료되어 위치 오버라이드가 적용되지 않음

1

위치 오버라이드가 적용됨

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

RETURN VALUE

  • 이 리턴값은 함수의 cmdidx가 반환됩니다.

EXAMPLE

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
C/C++

#include "ComiEcatSdk_Api.h"
#define AXIS0   0

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

/***************************************************************
* 프로그램 앞 부분은 생략 -> ecmSxMot_MoveStart 예제 참고
***************************************************************/

/**************************************************************
* DO_ OverrideMoveTo: 작업 명령 시에 호출되는 가상의 함수 입니다.
** 절대 좌표 값을 새롭게 지정 해주어 오버라이딩 하는 함수
***************************************************************/
void DO_OverrideMoveTo()
{
      t_bool  IsIgnored = false;   //성공 여부 확인
      ecmSxMot_OverrideMove(Device_Info.NetIdx,  AXIS0, 8000,  IsIgnored, &Error_Num);
      //이송 중인 축의 목표 절대 좌표를 8000으로 바꾼다.
}