Skip to content

상태

충돌 감지 상태

충돌 감지 상태 조회

명령어: 0x3200

필드타입설명
clearint이론 토크와 실제 토크 차이를 클리어할지 여부, 범위 [0, 1]
json
{
  "clear": 0
}

컨트롤러 응답

명령어: 0x3201

필드타입설명
Difference_torqdouble[]이론과 피드백 차이 값 목록, 길이는 7
actual_torqdouble[]토크 피드백 값 목록, 길이는 7
detect_torqdouble[]충돌 감지 임계값 목록, 길이는 7
max_torqdouble[]보간 피크 값 목록, 길이는 7
target_torqdouble[]토크 이론 값 목록, 길이는 7
json
{
  "Difference_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "actual_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "detect_torq": [50.0, 50.0, 50.0, 50.0, 50.0, 50.0, 0.0],
  "max_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "target_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
}

명령어 운전 퍼센트

운전 명령어 완료 퍼센트 조회

명령어: 0x3202

  • 데이터 전송이 필요하지 않음

컨트롤러 응답

명령어: 0x3203

필드타입설명
completionRatiodouble운전 퍼센트, 값 범위 [0, 1], 최댓값은 1
json
{
  "completionRatio": 0.11
}

현재 위치

로봇 좌표 위치 조회

명령어: 0x3210

필드타입설명
coordint현재 좌표 위치 조회, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "coord": 0,
  "robot": 1
}

컨트롤러 응답

명령어: 0x3212

필드타입설명
configurationint현재 위치 형상 값, 범위 [0, 8]
coordint현재 위치 좌표 타입, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표
posdouble[]획득한 라디안 단위 현재 위치 정보
posDegdouble[]획득한 각도 단위 현재 위치 정보
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "configuration": 8,
  "coord": 0,
  "pos": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "posDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "robot": 1
}

컨트롤러 응답

명령어: 0x3213

필드타입설명
coordint현재 위치 좌표 타입, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표
isDegint각도 단위 여부, 범위 [0, 1]
positiondouble[]획득한 라디안 단위 현재 위치 정보
positionDegdouble[]획득한 각도 단위 현재 위치 정보
postureint현재 위치 형상 값, 범위 [0, 8]
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "coord": 0,
  "isDeg": 0,
  "position": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "positionDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
  "posture": 8,
  "robot": 1
}

설명: 컨트롤러가 상위 시스템에 로봇 좌표 위치 응답 (0x3211)

듀얼 머신 협동 시 로봇 좌표 위치 조회

명령어: 0x3214

필드타입설명
coord1int로봇 1의 위치 좌표 타입 획득, 범위 [0, 3]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표
coord2int로봇 2의 위치 좌표 타입 획득, 범위 [0, 3]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표
robot1int듀얼 머신 협동의 첫 번째 로봇 번호, 범위 [1, 4], 기본값은 1
robot2int듀얼 머신 협동의 두 번째 로봇 번호, 범위 [1, 4], 기본값은 2
json
{
  "coord1": 1,
  "coord2": 1,
  "robot1": 1,
  "robot2": 2
}

컨트롤러 응답

명령어: 0x3215

필드타입설명
coord1int로봇 1의 위치 좌표 타입, 범위 [0, 3]
coord2int로봇 2의 위치 좌표 타입, 범위 [0, 3]
pos1double[]로봇 1의 라디안 단위 좌표
pos1Degdouble[]로봇 1의 각도 단위 좌표
pos2double[]로봇 2의 라디안 단위 좌표
pos2Degdouble[]로봇 2의 각도 단위 좌표
robot1int듀얼 머신 협동의 첫 번째 로봇 번호, 기본값은 1
robot2int듀얼 머신 협동의 두 번째 로봇 번호, 기본값은 2
json
{
  "coord1": 0,
  "coord2": 0,
  "pos1": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
  "pos1Deg": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
  "pos2": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "pos2Deg": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "robot1": 1,
  "robot2": 2
}

모터 부하 값

로봇 모터 토크 과부하 값 조회

명령어: 0x3220

필드타입설명
robot_numint조회할 로봇 번호, 범위 [1, 4]
json
{
  "robot_num": 1
}

컨트롤러 응답

명령어: 0x3221

필드타입설명
torq_limit_enablebool모터 과부하 보호 활성화
torq_limit_min_ensure_timedouble모터 과부하 보호 최소 확인 시간, 범위 [10, 9999], 단위 ms
torq_limit_robotdouble[]모터 토크 과부하 값 목록, 단위 ‰, 길이는 현재 로봇의 축 수
torq_limit_syncdouble[]외부 축 모터 토크 과부하 값 목록, 단위 ‰, 길이는 현재 로봇에 바인딩된 외부 축 수
json
{
  "torq_limit_enable": false,
  "torq_limit_min_ensure_time": 10,
  "torq_limit_robot": [800.0, 1400.0, 1000.0, 1200.0, 800.0, 700.0],
  "torq_limit_sync": [-0.0, -0.0, 0.0, 0.0, -0.0]
}

축 속도

로봇 축 속도 조회

명령어: 0x3230

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3231

필드타입설명
actualLineVeldouble로봇 말단 현재 선속도, 단위 mm/s
axisActualVeldouble[]로봇 각 축 현재 속도 목록, 단위 °/s, 길이는 7
axisActualVelSyncdouble[]로봇 외부 축 각 축 현재 속도 목록, 단위 °/s, 길이는 5
maxActualLineVeldouble로봇 말단 최대 선속도, 단위 mm/s
maxAxisActualVeldouble[]로봇 각 축 최대 속도 목록, 단위 °/s, 길이는 7
maxAxisActualVelSyncdouble[]로봇 외부 축 각 축 최대 속도 목록, 단위 °/s, 길이는 5
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "actualLineVel": 0.0,
  "axisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "axisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
  "maxActualLineVel": 0.0,
  "maxAxisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "maxAxisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
  "robot": 1
}

포크 서보 온도

포크 서보 전용 기능

포크 서보 온도 존재 여부 조회

명령어: 0x3250

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3251

필드타입설명
IsExistbool포크 서보 온도 존재 여부
json
{
  "IsExist": false
}

컨트롤러에서 티치 펜던트로 지연 시간 응답 전송

명령어: 0x3252

필드타입설명
delaytimedouble지연 시간, 단위 s
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "delaytime": 4,
  "robot": 1
}

모터 상태

모터 파라미터 조회, 서보 온도는 포크 서보 온도가 존재할 때만 사용 가능

로봇 모터 회전 속도 조회

명령어: 0x3260

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3261

필드타입설명
maxVeldouble[]로봇 최대 모터 회전 속도 목록, 단위 rpm, 길이는 7
maxVelSyncdouble[]로봇 외부 축 최대 모터 회전 속도 목록, 단위 rpm, 길이는 5
robotint현재 로봇 번호, 범위 [1, 4]
veldouble[]로봇 현재 모터 회전 속도 목록, 단위 rpm, 길이는 7
velSyncdouble[]로봇 외부 축 현재 모터 회전 속도 목록, 단위 rpm, 길이는 5
slave_veldouble[][]로봇 주축 및 종동 축 모터 속도 목록, 단위 rpm, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-4번째 위치 종동 축)
slave_max_veldouble[][]로봇 주축 및 종동 축 최대 모터 속도 목록, 단위 rpm
slave_vel_syncdouble[][]로봇 외부 축 주축 및 종동 축 모터 속도 목록, 단위 rpm, 5개 요소가 각각 4개 요소를 포함
slave_max_vel_syncdouble[][]로봇 외부 축 주축 및 종동 축 최대 모터 속도 목록, 단위 rpm
json
{
  "maxVel": [0, 0, 0, 0, 0, 0, 0],
  "maxVelSync": [0, 0, 0, 0, 0],
  "robot": 1,
  "vel": [0, 0, 0, 0, 0, 0, 0],
  "velSync": [0, 0, 0, 0, 0],
  "slave_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

로봇 모터 토크 조회

명령어: 0x3262

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3263

필드타입설명
maxTheoTorqdouble[]로봇 최대 모터 이론 토크 목록, 단위 ‰, 길이는 7
maxTorqdouble[]로봇 최대 모터 토크 목록, 단위 ‰, 길이는 7
maxTorqSyncdouble[]로봇 외부 축 최대 모터 토크 목록, 단위 ‰, 길이는 5
robotint현재 로봇 번호, 범위 [1, 4]
theoTorqdouble[]로봇 현재 모터 이론 토크 목록, 단위 ‰, 길이는 7
torqdouble[]로봇 현재 모터 토크 목록, 단위 ‰, 길이는 7
torqSyncdouble[]로봇 외부 축 현재 모터 토크 목록, 단위 ‰, 길이는 5
slave_torqdouble[][]로봇 주축 및 종동 축 모터 토크 목록, 단위 ‰, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-4번째 위치 종동 축)
slave_max_torqdouble[][]로봇 주축 및 종동 축 모터 최대 토크 목록, 단위 ‰
slave_torq_syncdouble[][]로봇 외부 축 주축 및 종동 축 모터 토크 목록, 단위 ‰, 5개 요소가 각각 4개 요소를 포함
slave_max_torq_syncdouble[][]로봇 외부 축 주축 및 종동 축 최대 모터 토크 목록, 단위 ‰
json
{
  "maxTheoTorq": [0, 0, 0, 0, 0, 0, 0],
  "maxTorq": [0, 0, 0, 0, 0, 0, 0],
  "maxTorqSync": [0, 0, 0, 0, 0],
  "robot": 1,
  "theoTorq": [0, 0, 0, 0, 0, 0, 0],
  "torq": [0, 0, 0, 0, 0, 0, 0],
  "torqSync": [0, 0, 0, 0, 0],
  "slave_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_max_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

로봇 모터 부하율 조회

명령어: 0x3264

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3265

필드타입설명
externalOverloaddouble[]로봇 외부 축 현재 모터 부하 목록, 단위 ‰, 길이는 5
robotint현재 로봇 번호, 범위 [1, 4]
robotOverloaddouble[]로봇 현재 모터 부하 목록, 단위 ‰, 길이는 7
slave_motor_rbt_over_loaddouble[][]로봇 주축 및 종동 축 모터 부하 목록, 단위 ‰, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-3번째 위치 종동 축)
slave_motor_sync_over_loaddouble[][]로봇 외부 축 주축 및 종동 축 모터 부하 목록, 단위 ‰, 5개 요소가 각각 4개 요소를 포함
json
{
  "externalOverload": [0.0, 0.0, 0.0, 0.0, 0.0],
  "robot": 1,
  "robotOverload": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "slave_motor_rbt_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_motor_sync_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

로봇 엔코더 위치 조회

명령어: 0x3266

필드타입설명
robotint현재 로봇 번호, 범위 [1, 4]
json
{
  "robot": 1
}

컨트롤러 응답

명령어: 0x3267

필드타입설명
realitydouble[]로봇 엔코더 위치 실제 값 목록, 길이는 7
realitySyncdouble[]로봇 외부 축 엔코더 위치 실제 값 목록, 길이는 5
robotint현재 로봇 번호, 범위 [1, 4]
targetdouble[]로봇 엔코더 위치 목표 값 목록, 길이는 7
targetSyncdouble[]로봇 외부 축 엔코더 위치 목표 값 목록, 길이는 5
slave_realitydouble[][]로봇 주축 및 종동 축 엔코더 위치 실제 값 목록, 7개 요소가 각각 4개 요소를 포함
slave_targetdouble[][]로봇 주축 및 종동 축 엔코더 위치 목표 값 목록
slave_reality_syncdouble[][]로봇 외부 축 주축 및 종동 축 엔코더 위치 실제 값 목록, 5개 요소가 각각 4개 요소를 포함
slave_target_syncdouble[][]로봇 외부 축 주축 및 종동 축 엔코더 위치 목표 값 목록
json
{
  "reality": [0, 0, 0, 0, 0, 0, 0],
  "realitySync": [0, 0, 0, 0, 0],
  "robot": 1,
  "target": [0, 0, 0, 0, 0, 0, 0],
  "targetSync": [0, 0, 0, 0, 0],
  "slave_reality": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_target": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_reality_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
  "slave_target_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}

PDO 조작

설명: 5개 요소가 존재하며, 이는 로봇의 5개 외부 축입니다; 각 요소는 4개 요소를 가지며, 1번째 위치: 주축, 2-4번째 위치: 종동 축

상위 시스템에서 PDO 쓰기 전송

명령어: 0x2056

필드타입설명
axisNumuint슬레이브 번호
indexuint명령어 코드
subindexuint서브 명령어 코드
sizeuint비트 수
value-쓸 값
json
{
  "axisNum": 1,
  "index": 0x0006,
  "subindex": 0,
  "size": 16,
  "value": 6
}

모터 전류 조회

로봇 모터 전류 조회

명령어: 0x3268

  • 데이터 전송이 필요하지 않음

컨트롤러 응답

명령어: 0x3269

필드타입설명
currentdouble[]로봇 모터 전류 목록, 단위 ‰, 길이는 7
max_currentdouble[]로봇 최대 모터 전류 목록, 단위 ‰, 길이는 7
robotint현재 로봇 번호, 범위 [1,4]
sync_currentdouble[]로봇 외부 축 모터 전류 목록, 단위 ‰, 길이는 5
sync_max_currentdouble[]로봇 외부 축 최대 모터 전류 목록, 단위 ‰, 길이는 5
slave_currentdouble[][]로봇 주축 및 종동 축 모터 최대 전류 목록, 7개 요소가 존재하며, 각 요소에 4개 요소가 존재
slave_max_currentdouble[][]로봇 외부 축 주축 및 종동 축 모터 전류 목록, 7개 요소가 존재
slave_sync_max_currentdouble[][]로봇 외부 축 주축 및 종동 축 모터 최대 전류 목록, 5개 요소가 존재
json
{
  "current": [0,0,0,0,0,0,0],
  "max_current": [0,0,0,0,0,0,0],
  "robot": 1,
  "sync_current": [0,0,0,0,0],
  "sync_max_current": [0,0,0,0,0],
  "slave_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_sync_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}

모터 온도 조회

로봇 모터 온도 조회

명령어: 0x326A

  • 데이터 전송이 필요하지 않음

컨트롤러 응답

명령어: 0x326B

필드타입설명
temperaturedouble[]로봇 모터 온도 목록, 단위 °/C, 길이는 7
maxTemperaturedouble[]로봇 최대 모터 온도 목록, 단위 °/C
temperatureSyncdouble[]로봇 외부 축 모터 온도 목록, 단위 °/C
maxtemperatureSyncdouble[]로봇 외부 축 최대 모터 온도 목록, 단위 °/C
slave_temperaturedouble[][]로봇 주축 및 종동 축 서보 온도 목록, 7개 요소가 존재
slave_temperature_maxdouble[][]로봇 주축 및 종동 축 서보 최대 온도 목록, 7개 요소가 존재
slave_temperature_sync_outdouble[][]로봇 외부 축 주축 및 종동 축 서보 온도 목록, 5개 요소가 존재
slave_temperature_sync_out_maxdouble[][]로봇 외부 축 주축 및 종동 축 서보 최대 온도 목록, 5개 요소가 존재
json
{
  "temperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
  "maxTemperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
  "temperatureSync": [0.0,0.0,0.0,0.0,0.0],
  "maxtemperatureSync": [0.0,0.0,0.0,0.0,0.0],
  "slave_temperature": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_sync_out": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
  "slave_temperature_sync_out_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}