Skip to content

명령어 리스트

IndyDCP를 통해 사용할 수 있는 명령어들은 아래 에 요약되어 있습니다.

  • Command ID: 전용통신 프레임에서 명령어 (Command)에 할당되는 4-byte 정수 값
  • 명령어 (Command): 해당 명령어의 이름
  • 명령어 내용: 해당 명령어에 대한 간략한 설명. 명령어는 로봇 설정, 로봇 제어, 로봇 데이터 요청으로 분류 될 수 있음
  • 요청/응답 데이터 크기: 해당 명령어의 요청에 따라 요구되는 데이터의 크기와 응답 시 얻게되는 데이터의 크기를 나타냄. 0006번과 같이 문자열 데이터인 경우에만 크기가 가변이며, 나머지 경우는 크기가 정해져 있음

참고

  • DOF는 로봇의 자유도 (Degree-of-Freedom)를 나타내며 Indy7은 6축 로봇이기 때문에 DOF=6 이며, IndyRP2는 7축 로봇이기 때문에 DOF=7 이다.
  • 예를들어 Indy7 이용시 명령어 0009번의 요청 데이터 크기는 6*8=48 이다.
  • Boolean은 1-byte, 정수는 4-byte, 실수는 8-byte 이다.

Command ID 명령어
(Command)
명령어 내용
(로봇 설정 / 로봇 제어 / 로봇 데이터 요청 등)
요청 Data 크기 응답 Data 크기
0000 Check Command 명령 없이 요청/응답만 주고받기 0 0
0001 Emergency Stop 로봇 비상정지 (명령 수신 즉시 중지) 0 0
0002 Reset Robot 로봇 리셋 0 0
0003 Set Servo On/Off 로봇 각 Joint의 Servo Motor On / Off DOF*1 0
0004 Set Brake On/Off 로봇 각 Joint의 Servo Brake On / Off DOF*1 0
0005 Stop 로봇 모션 중지 (움직이고 있는 경우 로봇 정지함) 0 0
0006 Execute
Move Command
Conty를 통해 티칭된 Move Command 실행 가변 0
0007 Move To Home 홈 포지션으로 이동 0 0
0008 Move To Zero 제로 포지션으로 이동 0 0
0009 Joint Move To 로봇을 특정 Joint 좌표로 이동 (절대값) DOF*8 0
0010 Joint Move By 로봇을 현재 Joint 좌표로부터 이동 (상대값) DOF*8 0
0011 Task Move To 로봇을 특정 Task 좌표로 이동 (절대값) 48 0
0012 Task Move By 로봇을 현재 Task 좌표로부터 이동 (상대값) 48 0
0014 Start
Current Program
현재 로드되어있는 프로그램 실행 0 0
0015 Pause
Current Program
현재 실행중인 프로그램 일시정지 0 0
0016 Resume Current Program 현재 일시정지된 프로그램 재개 0 0
0017 Stop Current Program 현재 프로그램 중지 0 0
0018 Start Registered
Default Program
현재 등록된 기본 콘티 프로그램 실행 0 0
0019 Register Default Program #Num 1~10번 기본 프로그램 등록 4 0
0020 Get Registered
Default Program #Num
현재 등록된 기본 프로그램 번호 요청 0 4
0030 Is Robot Running 로봇이 실행중인 상태 0 1
0031 Is Robot Ready 로봇이 제어 가능한 상태
(모든 Servo On 및 초기화 완료)
0 1
0032 Is Emergency Stopped 로봇 비상정지 상태 0 1
0033 Is Collided 로봇 충돌 상태 0 1
0034 Is Error State 로봇 에러 상태 0 1
0036 Is Move Finished 로봇의 모션이 끝난 상태 0 1
0035 Is Busy 로봇이 움직이고 있는 상태 (모션 중) 0 1
0037 Is Home 로봇이 홈 포지션인 상태 0 1
0038 Is Zero 로봇이 제로 포지션인 상태 0 1
0039 Is In Resetting 로봇이 리셋중인 상태 0 1
0060 Is Direct Teaching Mode 직접교시 모드 상태 0 1
0061 Is Teaching Mode 로봇 교시 모드 상태 (직접교시, Jogging 등) 0 1
0062 Is Program Running 로봇 프로그램이 실행 상태 (실행중,일시정지중 포함) 0 1
0063 Is Program Paused 로봇 프로그램이 일시정지 상태 0 1
0064 Is Conty Connected 콘티 연결 상태 0 1
0080 Change To Direct Teaching Mode 로봇 직접교시 모드 진입 0 0
0081 Finish Direct Teaching Mode 로봇 직접교시 모드 종료 0 0
0090 Add Joint Waypoint to the End of Set JointMove Waypoint Set 맨 뒤에 Waypoint 추가 DOF*8 0
0091 Remove Last Joint Waypoint from the Set JointMove Waypoint Set 맨 뒤의 Waypoint 삭제 0 0
0092 Clear Joint Waypoint Set JointMove Waypoint Set 초기화 0 0
0094 Execute Joint Waypoint Set JointMove Waypoint Set를 JointMove로서 실행 0 0
0095 Add Task Waypoint to the End of Set TaskMove Waypoint Set 맨 뒤에 Waypoint 추가 48 0
0096 Remove Last Task Waypoint from the Set TaskMove Waypoint Set 맨 뒤의 Waypoint 삭제 0 0
0097 Clear Task Waypoint Set TaskMove Waypoint Set 초기화 0 0
0099 Execute Task Waypoint Set TaskMove Waypoint Set를 TaskMove로서 실행 0 0
0100 Set Default TCP 기본 TCP값 설정
(보정값 리셋됨)
48 0
0101 Reset Default TCP 기본 TCP값 리셋
(보정값 리셋됨)
0 0
0102 Set TCP Comp. TCP 보정값 설정 48 0
0103 Reset TCP Comp. TCP 보정값 리셋 0 0
0104 Set Reference Frame - 48 0
0105 Reset Referene Frame Reference Frmae 값 리셋 0 0
0106 Set Collision Level 충돌 감지 레벨 설정 (1~5) 4 0
0107 Set Joint Boundary Level JointMove 기본 속도/가속도 한계 레벨 설정 (1~9) 4 0
0108 Set Task Boundary Level TaskMove 기본 속도/가속도 한계 레벨 설정 (1~9) 4 0
0109 Set Joint Blending Radius Level JointMove 기본 블렌딩 레벨 설정 4 0
0110 Set Task Blending Radius Level TaskMove 기본 블렌딩 레벨 설정 4 0
0111 Set Joint Waypoint Time JointMove 기본 웨이포인트 시간 설정
(시간 base Move에만 적용됨)
8 0
0112 Set Task Waypoint Time TaskMvoe 기본 웨이포인트 시간 설정
(시간 base Move에만 적용됨)
8 0
0113 Set TaskMove Base Mode TaskMove 제어의 기준 축 설정
(0: 레퍼런스 바디, 1: ToolTip 끝점)
4 0
0116 Set Joint Blending Radius JointMove 기본 블렌딩 값 설정 8 0
0117 Set Task Blending Radius TaskMove 기본 블렌딩 값 설정 8 0
0200 Get Default TCP 기본 TCP값 요청 0 48
0201 Get TCP Comp. TCP 보정값 요청 0 48
0202 Get Reference Frame Reference Frame 값 요청 0 48
0203 Get Collision Level 충돌 감지 레벨값 요청 0 4
0204 Get Joint Boundary Level JointMove 기본 속도/가속도 한계 레벨값 요청 0 4
0205 Get Task Boundary Level TaskMove 기본 속도/가속도 한계 레벨값 요청 0 4
0206 Get Joint Blending Radius Level JointMove 기본 블렌딩 레벨값 요청 0 4
0207 Get Task Blending Radius Level TaskMove 기본 블렌딩 레벨값 요청 0 4
0208 Get Joint Waypoint Time JointMove 기본 웨이포인트 시간 요청 0 8
0209 Get Task Waypoint Time TaskMvoe 기본 웨이포인트 시간 요청 0 8
0210 Get TaskMove Base Mode TaskMove 제어 기준 축 요청 0 4
0213 Get Joint Blending Radius JointMove 기본 블렌딩 값 요청 0 8
0214 Get Task Blending Radius TaskMove 기본 블렌딩 값 요청 0 8
0300 Get Running Time 로봇 초기화 이후 총 실행시간 요청 0 8
0302 Get Joint Servo State 로봇 각 Joint 축의 Servo, Brake 상태 요청 0 DOF*2
0301 Get Control Mode 현재 로봇의 제어 모드 요청 0 4
0320 Get Joint Position 현재 로봇의 Joint 각도 위치 요청 0 DOF*8
0321 Get Joint Velocity 현재 로봇의 Joint 각속도 요청 0 DOF*8
0322 Get Task Position 현재 로봇의 Task 위치 요청 0 48
0323 Get Task Velocity 현재 로봇의 Task 속도 요청 0 48
0324 Get Torque 현재 로봇의 토크 요청 0 DOF*8
0325 Get Inverse Kinematics 역기구학 계산 및 결과 요청 DOF*2*8 DOF*8
0380 Get Last Emergency Info 가장 최근의 로봇의 Emergency 상태 정보 요청 0 40
0400 Get Smart Digital Input SmartDI값 하나 읽기 4 1
0401 Get Smart Digital Inputs SmatDI값 전부 읽기 0 32
0402 Set Smart Digital Output SmartDO값 하나 쓰기 5 0
0403 Set Smart Digital Outputs SmartDO값 전부 쓰기 32 0
0404 Get Smart Analog Input SmartAI값 하나 읽기 4 4
0405 Set Smart Analog Output SmartAO값 하나 쓰기 8 0
0406 Get Smart Digital Output SmartDO값 하나 읽기 4 1
0407 Get Smart Digital Outputs SmatDO값 전부 읽기 0 32
0420 Get Robot CAN FTSensor (R) Robot의 CAN포트에 연결된 FTSensor Raw 데이터값 수신 0 24
0421 Get Robot CAN FTSensor (T) Robot의 CAN포트에 연결된 FTSensor의 처리된 데이터값 수신 0 48
0422 Get CB CAN FTSensor (R) CB의 CAN포트에 연결된 FTSensor Raw 데이터값 수신 0 24
0423 Get CB CAN FTSensor (T) CB의 CAN포트에 연결된 FTSensor의 처리된 데이터값 수신 0 48
0460 Read Direct Variable 단일 직접변수 값 읽기 8 가변
0461 Read Direct Variables 연속된 직접변수 값 읽기 (최대 20개) 12 가변
0462 Write Direct Variable 단일 직접변수 값 쓰기 8+가변 0
0463 Write Direct Variables 연속 직접변수 값 쓰기 (최대 20개) 12+가변 0
0800 ExtendedIndyDCP 확장된 IndyDCP 사용 8 8
0801 StreamingIndyDCP 스트리밍 방식의 IndyDCP 시작 명령 - -