cemSxSpeedRatio_Set


SYNOPSYS

t_i32 cemSxSpeedRatio_Set(
   LONG Axis,
   LONG SpeedMode,
   DOUBLE VelRatio,
   DOUBLE AccRatio,
   DOUBLE DecRatio
 )

DESCRIPTION

  • 단축 구동 시 해당 축에 대한 속도 모드 및 속도 비율을 설정 합니다.

PARAMETER

  • Axis : 축 번호 통합 축으로 관리되는 축 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, (최대 통합 축 개수 - 1) 이하의 값을 축 번호로 설정할 수 있습니다.

  • SpeedMode : cemSxSpeedRatio_Set 함수의 인자이며, 속도 모드를 설정합니다. 설정 가능한 속도 모드는 다음과 같습니다.

Value

Meaning

0 (cemSMODE_C)

CONSTANT 속도 모드 => 가감속을 수행하지 않습니다.

1 (cemSMODE_T)

TRAPEZOIDAL 속도 모드 => 사다리꼴 가감속을 수행합니다.

2 (cemSMODE_S)

S-CURVE 속도 모드 => S-CURVE 가감속을 수행합니다.

-1 (cemSMODE_KEEP)

이전 속도 모드를 그대로 유지합니다. 즉, 속도모드를 변경하지 않습니다.

  • VelRatio : 작업 속도 비율(Ratio) 을 설정 혹은 반환. 이 값의 단위는 % 입니다.

  • AccRatio : 가속도 비율(Ratio) 을 설정 혹은 반환합니다. 이 값의 단위는 % 입니다.

  • DecRatio : 감속도 비율(Ratio) 을 설정 혹은 반환합니다. 이 값의 단위는 % 입니다.

RETURN VALUE

  • DLL 호출 성공 여부를 반환합니다.

Value

Meaning

음수

수행 실패.

0 (ceERR_NONE)

수행 성공.

REFERENCE

Note

속도 비율(Ratio)의 정확한 의미를 알고 싶습니다. 속도 설정은 비율로 설정이 됩니다. 비율에 의한 속도 값은 모션 기준 속도 값에 배수 (Multiplication)가 되거나 제법(Division) 이 된 속도 값을 의미합니다. 기준이 되는 속도 값은 cemCfgSpeedPattern_Set 으로 설정됩니다.

㈜ 커미조아 ceSDK 에서는 기준 속도(Standard Speed) 개념을 이용하고 있습니다. 모션 속도는 기준 속도의 비율로 설정이 가능하며, 이것은 cemCfgSpeedPattern_Set 함수에 의해서 설정된 기준 속도를 의미합니다. ㈜ 커미조아의 ceSDK 는 기준 속도의 값을 비율(Ratio)로 설정할 수 있는 커다란 이점을 가지고 있습니다.

EXAMPLE

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

#include "ceSDK.h"
#include "ceSDKDef.h"
void OnSetSpeed ()
{
long nAxisNo = 1; // 모션 이송 속도를 설정할 대상 축을 선택합니다.

/* 단축 모션의 작업 속도 비율을 설정합니다. cemCfgSpeedPattern_Set()함수를 통해서
설정된 모션 이송 속도를 기준으로 속도 비율이 적용됩니다. */

cemCfgSpeedPattern_Set ( nAxisNo, cemSMODE_T, 1000, 10000, 10000 );
cemSxSpeedRatio_Set ( nAxisNo, // 대상 축 선택
                     cemSMODE_T, // 속도 모드 선택
                     50, // 작업 속도 비율. 1000 * 0.5 = 500 pps
                     80, // 가속도 비율. 10000 * 0.8 = 8000 pps²
                     80 // 감속도 비율. 10000 * 0.8 = 8000 pps²
                     );
}

See also

cemCfgSpeedPattern_Set, cemCfgSpeedPattern_Get, cemSxSpeedRatio_Get