cmmSxOptSetSyncMode


SYNOPSYS

VT_I4 cmmSxOptSetSyncMode(
    [in] VT_I4 Axis, [in] VT_I4 Mode, [in] VT_I4 RefAxis [in] VT_I4 Condition
    )

DESCRIPTION

  • 지정한 축에 대하여 이송명령을 전달되었을 때 이송동작의 시작이 다른축(Other Axis)의 동작 상황에 동기되어 시작되도록 할 때 사용하는 함수입니다. 예를 들어 X 축의 이송시작이 Y 축의 가속이 완료되는 시점 또는 감속이 시작되는 시점에 수행되도록 하고자할 때 이 함수를 사용하면 해당 동작을 구현할 수 있습니다.

PARAMETER

  • Axis: 축번호. 축번호는 상수값으로 [cmX1] 부터 0 번째 축을 기준 축으로 임의의 축을 설정할 수 있습니다.

  • Mode : cmmSxOptSetSyncMode 함수의 인자이며, 동기모드를 지정합니다. 이 값의 의미는 다음과 같습니다.

Value

Meaning

0

동기모드를 사용하지 않습니다. 따라서 이송명령이 하달되면 바로 이송을 시작합니다. ※ 이 모드에서는 RefAxis 와 Condition 매개 변수가 무시됩니다.

1

“Start by Internal Synch. Signal” 모드: 내부동기 신호에 의하여 이송이 시작됩니다. 따라서 이송명령이 하달되면 바로 이송을 시작하지 않고 내부동기 신호가 발생할 때 실제 이송이 시작됩니다.

2

“Start by Other Axis/Axes Stop” 모드: RefAxis 매개 변수에 의하여 지정된 축의 이송이 완료될 때 이송을 시작합니다. 따라서 RefAxis 에 의하여 지정된 축이 이송이 완료되지 않은상태에서 이송명령이 하달되면 RefAxis 축이 정지하는 순간에 실제 이송이 시작됩니다.

  • RefAxis : cmmSxOptSetSyncMode 함수의 인자이며, 내부 동기신호를 발생할 때 참조할 축 번호 또는 마스크를 지정합니다.

    이 값을 지정하는 방식은 Mode 매개 변수의 값에 따라서 아래와 같이 달라집니다.

    ▪ Mode 매개 변수가 “1”인 경우: 이 모드에서는 이 값에 축 번호를 지정합니다. 단, 주의할 것은 Axis 매개 변수가 0 ~ 3 사이의 축인 경우에는 이 값도 0 ~ 3 이어야 합니다. 그리고 Axis 매개 변수가 4 ~ 7 사이의 축인 경우에는 이 값도 4 ~ 7 이어야 합니다.

    ▪ Mode 매개 변수가 “2”인 경우: 이 모드에서는 이 값에 축 마스크를 지정합니다. 이 모드에서는 참조 축을 여러 개 설정할 수 있으며, 각 비트별로 값이 1 인 경우 해당 축이 참조됩니다. 예를 들어 Axis0 과 Axis2 의 두축이 모두 정지(停止)하는 시점에 출발하고자 한다면 RefAxis 값은 0x5 (bit0 과 bit2 를 1 로 만듬)로 설정합니다. 단, 주의할 것은 Axis 매개 변수가 0 ~ 3 사이의 축인 경우에는 이 값도 BIT0 ~ BIT3 만 사용할 수 있으며, Axis 매개 변수가 4 ~ 7 사이의 축인 경우에는 이 값도 BIT4 ~ BIT7 만 사용할 수 있습니다.

  • Condition : cmmSxOptSetSyncMod 함수의 인자이며, 이 값은 Mode 매개 변수가 “1”로 지정되었을 때에만 의미를 가집니다. 단, 이때 각 조건의 주체가 되는 축은 RefAxis 매개 변수에 의해서 지정된 축입니다.

Value

Meaning

0

참조축이 가속을 시작할 때 이송을 시작합니다.

1

참조축이 가속을 끝내고 정속모드로 들어서는 순간에 이송을 시작합니다.

2

참조축이 감속을 시작할 때 이송을 시작합니다.

3

참조축이 감속을 끝낼 때 이송을 시작합니다.

4

-SL 신호가 검출되었을 때 이송을 시작합니다.

5

+SL 신호가 검출되었을 때 이송을 시작합니다.

6

Gen-CMP 조건이 만족되었을 때 이송을 시작합니다.

7

TRG-CMP 조건이 만족되었을 때 이송을 시작합니다.

RETURN VALUE

Value

Meaning

음수

수행 실패

cmERR_NONE

수행 성공