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 |
각 축의 인터럽트가 발생한 원인을 알려주는 함수입니다. |