7. 모션 제어(Motion Control)

7.1. Basic Function

함수명

함수 의미

COMILX_MC_Reset

모션 제어 보드의 하드웨어와 소프트웨어적인 모든 상태를 리셋합니다.

COMILX_MC_SetBlockingMode

모션이 완료될때까지 루프를 돌 때 윈도우 또는 시스템 이벤트를 처리할 수 있도록할지를 결정하는 함수.

COMILX_MC_SetOutputMode

현재 설정된 Command 펄스의 출력 모드를 얻어옵니다.

COMILX_MC_GetOutputMode

현재 설정된 Command 펄스의 출력 모드를 반환합니다.

COMILX_MC_SetInputMode

Feedback 펄스의 입력 모드를 설정합니다.

COMILX_MC_GetInputMode

현재 설정된 Feedback 펄스의 입력 모드를 얻어옵니다.

COMILX_MC_SetSpeedRange

모션에 적용할 수 있는 최저/최고 속도를 제한합니다.

COMILX_MC_SetUnitDistance

논리적 단위 거리에 대한 펄스 수를 설정합니다.

COMILX_MC_GetUnitDistance

현재 설정된 논리적 단위 거리에 대한 펄스 수를 반환합니다.

COMILX_MC_SetUnitSpeed

논리적 단위 속도에 대한 실제 펄스 출력 속도(PPS)를 설정합니다.

7.1.1. Single Axis 모션 제어 함수

7.2. Basic Function

함수명

함수 의미

COMILX_MC_SetSpeedMode

Motion 의 속도 모드를 설정합니다.

COMILX_MC_SetSpeed

Motion 의 속도를 설정합니다.

COMILX_MC_SetAccel

Motion 의 가/감속도를 설정합니다.

COMILX_MC_SetScurve

속도모드를 S-curve 속도 패턴으로 설정한 경우에 S-curve Section 의 범위를 속도단위로 설정합니다.

COMILX_MC_StartVMove

작업속도까지 가속한 후에 작업속도를 유지하며 정지함수가 호출될 때까지 지정한 방향으로의 모션을 계속 수행합니다.

COMILX_MC_StartMove

현재의 위치에서 지정한 거리만큼 이동을 수행합니다. 이 함수는 모션을 시작시킨 후 바로 Return 합니다.

COMILX_MC_Move

현재의 위치에서 지정한 거리만큼 이동을 수행합니다. 이 함수는 모션이 완료될때 까지 Return 되지 않습니다.

COMILX_MC_StartMoveTo

지정한 절대좌표로의 이동을 수행합니다. 이 함수는 모션(Motion)을 시작 시킨 후에 바로 Return 합니다.

COMILX_MC_MoveTo

지정한 절대좌표로의 이동을 수행합니다. 이 함수는 모션이 완료될때까지 Return 되지 않습니다.

COMILX_MC_Stop

지정한 축에 대한 모션을 감속 후 정지합니다.

COMILX_MC_EmgStop

지정한 축에 대한 모션을 감속없이 즉시 정지합니다.

COMILX_MC_Done

하나의 축에 대하여 모션이 완료됐는지를 체크합니다.

7.2.1. Multi-Axis 동시제어 함수

7.3. Basic Function

함수명

함수 의미

COMILX_MC_StartVMoveAll

여러 개의 축에 대하여 Velocity Move 작업을 동시에 시작합니다.

COMILX_MC_StartMoveAll

여러 개의 축에 대하여 현재의 위치에서 지정한 거리만큼 이동을 동시에 시작합니다.

COMILX_MC_MoveAll

여러 개의 축에 대하여 현재의 위치에서 지정한 거리만큼 이동을 수행합니다.

COMILX_MC_StartMoveToAll

여러 개의 축에 대하여 지정한 절대좌표로의 이동을 동시에 시작합니다.

COMILX_MC_MoveToAll

여러 개의 축에 대하여 지정한 절대좌표로의 이동을 수행합니다.

COMILX_MC_StopAll

여러 개의 축에 대한 모션을 동시에 감속 후 정지합니다.

COMILX_MC_EmgStopAll

여러 개의 축에 대한 모션을 동시에 감속없이 즉시 정지합니다.

COMILX_MC_AllDone

여러 개의 축에 대하여 지정한 모든 축의 모션이 완료됐는지를 체크합니다.

7.3.1. Coordinated Motion 함수

7.4. Basic Function

함수명

함수 의미

COMILX_MC_MapAxes

Coordinated Motion 을 수행할 축들을 그룹화합니다.

COMILX_MC_SetSpeedModeMx

Coordinated Motion 의 속도 모드를 설정합니다.

COMILX_MC_SetSpeedMx

Coordinated Motion 의 속도 및 가속도를 설정합니다.

COMILX_MC_StartLine

현재 위치로부터의 상대 좌표로의 직선 보간 이동을 수행합니다.

COMILX_MC_Line

현재 위치로부터의 상대 좌표로의 직선 보간 이동을 수행합니다.

COMILX_MC_StartLineTo

절대 좌표로의 직선 보간 이동을 수행합니다.

COMILX_MC_LineTo

절대 좌표로의 직선 보간 이동을 수행합니다.

COMILX_MC_StartArc_a

상대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_Arc_a

상대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_StartArc_p

상대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_Arc_p

상대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_StartArcTo_a

절대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_ArcTo_a

절대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_StartArcTo_p

절대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_ArcTo_p

절대좌표를 파라미터로 하여 원호보간 이동을 수행합니다.

COMILX_MC_MxDone

Coordinated Motion 이 완료됐는지를 체크합니다.

7.4.1. 속도 및 위치 오버라이딩(Overriding) 함수

7.5. Basic Function

함수명

함수 의미

COMILX_MC_OverrideSpeedSet

Single Axis 모션이 진행되고 있는 중에 속도를 변경.

COMILX_MC_OverrideSpeedSetAll

여러 축에 대하여 동시에 속도를 변경.

COMILX_MC_OverrideMove

COMILX_MC_StartMove 함수를 통하여 수행되는 상대좌표 In-position 모션에 대하여 상대좌표값 즉 목표 거리값을 수정.

COMILX_MC_OverrideMoveTo

COMILX_MC_StartMoveTo 함수를 통하여 수행되는 절대좌표 In-position 모션에 대하여 목표 절대좌표값을 수정.

7.5.1. Manual Pulser 모드 모션 제어 함수

7.6. Basic Function

함수명

함수 의미

COMILX_MC_SetPulserInputMode

Pulser 입력신호 대한 환경을 설정합니다.

COMILX_MC_PulserHomeMove

Pulser Input 에 의한 원점 복귀 작업을 수행합니다.

COMILX_MC_StartPulserVMove

Stop 함수가 호출될 때까지 Pulser 신호 입력에 맞추어 계속적인 모션을 수행합니다.

COMILX_MC_StartPulserMove

Pulser 신호 입력에 맞추어 지정한 거리(상대좌표)만큼 이동을 수행합니다.

COMILX_MC_PulserMove

Pulser 신호 입력에 맞추어 지정한 거리(상대좌표)만큼 이동을 수행합니다.

COMILX_MC_StartPulserMoveTo

Pulser 신호 입력에 맞추어 지정한 위치(절대좌표)로 이동을 수행합니다.

COMILX_MC_PulserMoveTo

Pulser 신호 입력에 맞추어 지정한 위치(절대좌표)로 이동을 수행합니다.

7.6.1. 리스트 모션(Listed Motion) 함수

7.7. Basic Function

함수명

함수 의미

COMILX_MC_BeginList

List Motion 에서 수행할 작업들의 등록을 시작합니다.

COMILX_MC_EndList

List Motion 에서 수행할 작업들의 등록을 종료합니다.

COMILX_MC_StartListMotion

List Motion 으로 등록된 작업들에 대하여 실제로 모션을 시작합니다.

COMILX_MC_AbortListMotion

리스트 모션을 수행하고 있는 중에 리스트 모션을 중지합니다.

COMILX_MC_CheckListMotionDone

리스트 모션 수행이 완료됐는지를 알려줍니다.

7.7.1. 상태 감시 및 제어 함수

7.8. Basic Function

함수명

함수 의미

COMILX_MC_GetCurSpeed

현재 출력되고 있는 Command 속도를 반환합니다.

COMILX_MC_EnableActSpdChk

실제 모션의 속도를 체크하는 기능을 Enable 시킵니다.

COMILX_MC_DisableActSpdChk

실제 모션의 속도(Actual Speed)를 체크하는 기능을 Disable 시킵니다.

COMILX_MC_GetActualSpeed

EA/EB 단자로 입력되는 Feedback 펄스를 계측하여 실제 모션의 속도를 반환합니다.

COMILX_MC_GetPosition_A

현재의 실제 위치(Actual Position)를 논리 단위로 반환합니다.

COMILX_MC_SetPosition_A

현재의 실제 위치(Actual Position)값을 설정하며 단위는 논리단위입니다.

COMILX_MC_GetPosition_C

현재의 명령 위치(Command Position)를 논리 단위로 반환합니다.

COMILX_MC_SetPosition_C

명령 위치(Command Position)값을 설정하며 단위는 논리단위입니다.

COMILX_MC_GetCount_A

현재의 실제 위치(Actual Position) 카운트값을 반환합니다.

COMILX_MC_SetCount_A

현재의 실제 위치(Actual Position) 카운트값을 설정합니다.

COMILX_MC_GetCount_C

현재의 명령 위치(Command Position) 카운트값을 반환합니다.

COMILX_MC_SetCount_C

현재의 명령 위치(Command Position) 카운트값을 설정합니다.

COMILX_MC_GetCount_D

Deviation Counter 의 값을 읽어서 반환합니다.

COMILX_MC_SetCount_D

Deviation Counter 의 값을 새로이 설정합니다.

COMILX_MC_GetCount_G

General Counter 의 값을 읽어서 반환합니다.

COMILX_MC_SetCount_G

General Counter 의 값을 새로이 설정합니다.

COMILX_MC_GetCount_R

Remained Counter 의 값을 읽어서 반환합니다.

COMILX_MC_SetCount_R

Remained Counter 의 값을 새로이 설정합니다.

COMILX_MC_GetMotionStatus

현재 모션의 동작 상태를 반환합니다.

COMILX_MC_GetMioStatus

현재 모션과 관련된 여러가지 I/O 상태를 반환합니다.

7.8.1. I/O(입출력) 환경설정 함수

7.9. Basic Function

함수명

함수 의미

COMILX_MC_SetMioCfgALM

Alarm 신호에 대한 입력모드를 설정합니다.

COMILX_MC_GetMioCfgALM

현재 설정된 Alarm 신호에 대한 입력모드를 읽어옵니다.

COMILX_MC_SetMioCfgEL

현재 설정된 Alarm 신호에 대한 입력모드를 읽어옵니다.

COMILX_MC_GetMioCfgEL

EL 신호에 대한 모드 설정값을 읽어옵니다.

COMILX_MC_SetMioCfgINP

INP 기능 및 신호에 대한 환경을 설정합니다.

COMILX_MC_GetMioCfgINP

INP 기능 및 신호에 대한 환경 설정값을 읽어옵니다.

COMILX_MC_SetMioCfgERC

ERC 신호의 입력 로직(Logic) 및 ON time 을 설정합니다.

COMILX_MC_GetMioCfgERC

ERC 신호의 입력 로직(Logic) 및 ON time 에 대한 설정값을 읽어옵니다.

COMILX_MC_SetMioCfgSD

SD 신호에 대한 환경을 설정합니다.

COMILX_MC_GetMioCfgSD

SD 신호에 대한 환경 설정값을 읽어옵니다.

COMILX_MC_SetSoftLimit

소프트웨어적인 Limit 를 설정합니다.

COMILX_MC_EnableSoftLimit

소프트웨어적인 Limit 의 적용을 Enable 시킵니다.

COMILX_MC_DisableSoftLimit

소프트웨어적인 Limit 의 적용을 Disable 시킵니다.

COMILX_MC_SetErrorCompare

명령 펄스(Command Pulse)와 Feedback 펄스간의 에러를 체크하는 기능을 설정합니다.

COMILX_MC_SetGeneralCompare

General Comparator 의 비교 대상 비교값 등을 설정합니다.

7.9.1. 인터럽트 관련 함수

7.10. Basic Function

함수명

함수 의미

COMILX_MC_MaskInterrupt

어떠한 조건의 인터럽트를 받아들일 것인지를 설정합니다.

COMILX_MC_EnableInterrupt

인터럽트 이벤트 통지 기능을 Enable 시킵니다.

COMILX_MC_DisableInterrupt

인터럽트 이벤트 통지 기능을 Disable 시킵니다.

COMILX_MC_GetAxisIntState

각 축에 대하여 인터럽트가 발생하였는지를 알려주는 함수입니다.

COMILX_MC_GetIntStatus

각 축의 인터럽트가 발생한 원인을 알려주는 함수입니다.