상태
충돌 감지 상태
충돌 감지 상태 조회
명령어: 0x3200
| 필드 | 타입 | 설명 |
|---|---|---|
| clear | int | 이론 토크와 실제 토크 차이를 클리어할지 여부, 범위 [0, 1] |
json
{
"clear": 0
}컨트롤러 응답
명령어: 0x3201
| 필드 | 타입 | 설명 |
|---|---|---|
| Difference_torq | double[] | 이론과 피드백 차이 값 목록, 길이는 7 |
| actual_torq | double[] | 토크 피드백 값 목록, 길이는 7 |
| detect_torq | double[] | 충돌 감지 임계값 목록, 길이는 7 |
| max_torq | double[] | 보간 피크 값 목록, 길이는 7 |
| target_torq | double[] | 토크 이론 값 목록, 길이는 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
| 필드 | 타입 | 설명 |
|---|---|---|
| completionRatio | double | 운전 퍼센트, 값 범위 [0, 1], 최댓값은 1 |
json
{
"completionRatio": 0.11
}현재 위치
로봇 좌표 위치 조회
명령어: 0x3210
| 필드 | 타입 | 설명 |
|---|---|---|
| coord | int | 현재 좌표 위치 조회, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표 |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"coord": 0,
"robot": 1
}컨트롤러 응답
명령어: 0x3212
| 필드 | 타입 | 설명 |
|---|---|---|
| configuration | int | 현재 위치 형상 값, 범위 [0, 8] |
| coord | int | 현재 위치 좌표 타입, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표 |
| pos | double[] | 획득한 라디안 단위 현재 위치 정보 |
| posDeg | double[] | 획득한 각도 단위 현재 위치 정보 |
| robot | int | 현재 로봇 번호, 범위 [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
| 필드 | 타입 | 설명 |
|---|---|---|
| coord | int | 현재 위치 좌표 타입, 범위 [0, 4]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표, 4 모터 좌표 |
| isDeg | int | 각도 단위 여부, 범위 [0, 1] |
| position | double[] | 획득한 라디안 단위 현재 위치 정보 |
| positionDeg | double[] | 획득한 각도 단위 현재 위치 정보 |
| posture | int | 현재 위치 형상 값, 범위 [0, 8] |
| robot | int | 현재 로봇 번호, 범위 [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
| 필드 | 타입 | 설명 |
|---|---|---|
| coord1 | int | 로봇 1의 위치 좌표 타입 획득, 범위 [0, 3]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표 |
| coord2 | int | 로봇 2의 위치 좌표 타입 획득, 범위 [0, 3]: 0 관절 좌표, 1 직각 좌표, 2 도구 좌표, 3 사용자 좌표 |
| robot1 | int | 듀얼 머신 협동의 첫 번째 로봇 번호, 범위 [1, 4], 기본값은 1 |
| robot2 | int | 듀얼 머신 협동의 두 번째 로봇 번호, 범위 [1, 4], 기본값은 2 |
json
{
"coord1": 1,
"coord2": 1,
"robot1": 1,
"robot2": 2
}컨트롤러 응답
명령어: 0x3215
| 필드 | 타입 | 설명 |
|---|---|---|
| coord1 | int | 로봇 1의 위치 좌표 타입, 범위 [0, 3] |
| coord2 | int | 로봇 2의 위치 좌표 타입, 범위 [0, 3] |
| pos1 | double[] | 로봇 1의 라디안 단위 좌표 |
| pos1Deg | double[] | 로봇 1의 각도 단위 좌표 |
| pos2 | double[] | 로봇 2의 라디안 단위 좌표 |
| pos2Deg | double[] | 로봇 2의 각도 단위 좌표 |
| robot1 | int | 듀얼 머신 협동의 첫 번째 로봇 번호, 기본값은 1 |
| robot2 | int | 듀얼 머신 협동의 두 번째 로봇 번호, 기본값은 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_num | int | 조회할 로봇 번호, 범위 [1, 4] |
json
{
"robot_num": 1
}컨트롤러 응답
명령어: 0x3221
| 필드 | 타입 | 설명 |
|---|---|---|
| torq_limit_enable | bool | 모터 과부하 보호 활성화 |
| torq_limit_min_ensure_time | double | 모터 과부하 보호 최소 확인 시간, 범위 [10, 9999], 단위 ms |
| torq_limit_robot | double[] | 모터 토크 과부하 값 목록, 단위 ‰, 길이는 현재 로봇의 축 수 |
| torq_limit_sync | double[] | 외부 축 모터 토크 과부하 값 목록, 단위 ‰, 길이는 현재 로봇에 바인딩된 외부 축 수 |
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
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3231
| 필드 | 타입 | 설명 |
|---|---|---|
| actualLineVel | double | 로봇 말단 현재 선속도, 단위 mm/s |
| axisActualVel | double[] | 로봇 각 축 현재 속도 목록, 단위 °/s, 길이는 7 |
| axisActualVelSync | double[] | 로봇 외부 축 각 축 현재 속도 목록, 단위 °/s, 길이는 5 |
| maxActualLineVel | double | 로봇 말단 최대 선속도, 단위 mm/s |
| maxAxisActualVel | double[] | 로봇 각 축 최대 속도 목록, 단위 °/s, 길이는 7 |
| maxAxisActualVelSync | double[] | 로봇 외부 축 각 축 최대 속도 목록, 단위 °/s, 길이는 5 |
| robot | int | 현재 로봇 번호, 범위 [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
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3251
| 필드 | 타입 | 설명 |
|---|---|---|
| IsExist | bool | 포크 서보 온도 존재 여부 |
json
{
"IsExist": false
}컨트롤러에서 티치 펜던트로 지연 시간 응답 전송
명령어: 0x3252
| 필드 | 타입 | 설명 |
|---|---|---|
| delaytime | double | 지연 시간, 단위 s |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"delaytime": 4,
"robot": 1
}모터 상태
모터 파라미터 조회, 서보 온도는 포크 서보 온도가 존재할 때만 사용 가능
로봇 모터 회전 속도 조회
명령어: 0x3260
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3261
| 필드 | 타입 | 설명 |
|---|---|---|
| maxVel | double[] | 로봇 최대 모터 회전 속도 목록, 단위 rpm, 길이는 7 |
| maxVelSync | double[] | 로봇 외부 축 최대 모터 회전 속도 목록, 단위 rpm, 길이는 5 |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
| vel | double[] | 로봇 현재 모터 회전 속도 목록, 단위 rpm, 길이는 7 |
| velSync | double[] | 로봇 외부 축 현재 모터 회전 속도 목록, 단위 rpm, 길이는 5 |
| slave_vel | double[][] | 로봇 주축 및 종동 축 모터 속도 목록, 단위 rpm, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-4번째 위치 종동 축) |
| slave_max_vel | double[][] | 로봇 주축 및 종동 축 최대 모터 속도 목록, 단위 rpm |
| slave_vel_sync | double[][] | 로봇 외부 축 주축 및 종동 축 모터 속도 목록, 단위 rpm, 5개 요소가 각각 4개 요소를 포함 |
| slave_max_vel_sync | double[][] | 로봇 외부 축 주축 및 종동 축 최대 모터 속도 목록, 단위 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
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3263
| 필드 | 타입 | 설명 |
|---|---|---|
| maxTheoTorq | double[] | 로봇 최대 모터 이론 토크 목록, 단위 ‰, 길이는 7 |
| maxTorq | double[] | 로봇 최대 모터 토크 목록, 단위 ‰, 길이는 7 |
| maxTorqSync | double[] | 로봇 외부 축 최대 모터 토크 목록, 단위 ‰, 길이는 5 |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
| theoTorq | double[] | 로봇 현재 모터 이론 토크 목록, 단위 ‰, 길이는 7 |
| torq | double[] | 로봇 현재 모터 토크 목록, 단위 ‰, 길이는 7 |
| torqSync | double[] | 로봇 외부 축 현재 모터 토크 목록, 단위 ‰, 길이는 5 |
| slave_torq | double[][] | 로봇 주축 및 종동 축 모터 토크 목록, 단위 ‰, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-4번째 위치 종동 축) |
| slave_max_torq | double[][] | 로봇 주축 및 종동 축 모터 최대 토크 목록, 단위 ‰ |
| slave_torq_sync | double[][] | 로봇 외부 축 주축 및 종동 축 모터 토크 목록, 단위 ‰, 5개 요소가 각각 4개 요소를 포함 |
| slave_max_torq_sync | double[][] | 로봇 외부 축 주축 및 종동 축 최대 모터 토크 목록, 단위 ‰ |
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
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3265
| 필드 | 타입 | 설명 |
|---|---|---|
| externalOverload | double[] | 로봇 외부 축 현재 모터 부하 목록, 단위 ‰, 길이는 5 |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
| robotOverload | double[] | 로봇 현재 모터 부하 목록, 단위 ‰, 길이는 7 |
| slave_motor_rbt_over_load | double[][] | 로봇 주축 및 종동 축 모터 부하 목록, 단위 ‰, 7개 요소가 각각 4개 요소를 포함 (1번째 위치 주축, 2-3번째 위치 종동 축) |
| slave_motor_sync_over_load | double[][] | 로봇 외부 축 주축 및 종동 축 모터 부하 목록, 단위 ‰, 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
| 필드 | 타입 | 설명 |
|---|---|---|
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
json
{
"robot": 1
}컨트롤러 응답
명령어: 0x3267
| 필드 | 타입 | 설명 |
|---|---|---|
| reality | double[] | 로봇 엔코더 위치 실제 값 목록, 길이는 7 |
| realitySync | double[] | 로봇 외부 축 엔코더 위치 실제 값 목록, 길이는 5 |
| robot | int | 현재 로봇 번호, 범위 [1, 4] |
| target | double[] | 로봇 엔코더 위치 목표 값 목록, 길이는 7 |
| targetSync | double[] | 로봇 외부 축 엔코더 위치 목표 값 목록, 길이는 5 |
| slave_reality | double[][] | 로봇 주축 및 종동 축 엔코더 위치 실제 값 목록, 7개 요소가 각각 4개 요소를 포함 |
| slave_target | double[][] | 로봇 주축 및 종동 축 엔코더 위치 목표 값 목록 |
| slave_reality_sync | double[][] | 로봇 외부 축 주축 및 종동 축 엔코더 위치 실제 값 목록, 5개 요소가 각각 4개 요소를 포함 |
| slave_target_sync | double[][] | 로봇 외부 축 주축 및 종동 축 엔코더 위치 목표 값 목록 |
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
| 필드 | 타입 | 설명 |
|---|---|---|
| axisNum | uint | 슬레이브 번호 |
| index | uint | 명령어 코드 |
| subindex | uint | 서브 명령어 코드 |
| size | uint | 비트 수 |
| value | - | 쓸 값 |
json
{
"axisNum": 1,
"index": 0x0006,
"subindex": 0,
"size": 16,
"value": 6
}모터 전류 조회
로봇 모터 전류 조회
명령어: 0x3268
- 데이터 전송이 필요하지 않음
컨트롤러 응답
명령어: 0x3269
| 필드 | 타입 | 설명 |
|---|---|---|
| current | double[] | 로봇 모터 전류 목록, 단위 ‰, 길이는 7 |
| max_current | double[] | 로봇 최대 모터 전류 목록, 단위 ‰, 길이는 7 |
| robot | int | 현재 로봇 번호, 범위 [1,4] |
| sync_current | double[] | 로봇 외부 축 모터 전류 목록, 단위 ‰, 길이는 5 |
| sync_max_current | double[] | 로봇 외부 축 최대 모터 전류 목록, 단위 ‰, 길이는 5 |
| slave_current | double[][] | 로봇 주축 및 종동 축 모터 최대 전류 목록, 7개 요소가 존재하며, 각 요소에 4개 요소가 존재 |
| slave_max_current | double[][] | 로봇 외부 축 주축 및 종동 축 모터 전류 목록, 7개 요소가 존재 |
| slave_sync_max_current | double[][] | 로봇 외부 축 주축 및 종동 축 모터 최대 전류 목록, 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
| 필드 | 타입 | 설명 |
|---|---|---|
| temperature | double[] | 로봇 모터 온도 목록, 단위 °/C, 길이는 7 |
| maxTemperature | double[] | 로봇 최대 모터 온도 목록, 단위 °/C |
| temperatureSync | double[] | 로봇 외부 축 모터 온도 목록, 단위 °/C |
| maxtemperatureSync | double[] | 로봇 외부 축 최대 모터 온도 목록, 단위 °/C |
| slave_temperature | double[][] | 로봇 주축 및 종동 축 서보 온도 목록, 7개 요소가 존재 |
| slave_temperature_max | double[][] | 로봇 주축 및 종동 축 서보 최대 온도 목록, 7개 요소가 존재 |
| slave_temperature_sync_out | double[][] | 로봇 외부 축 주축 및 종동 축 서보 온도 목록, 5개 요소가 존재 |
| slave_temperature_sync_out_max | double[][] | 로봇 외부 축 주축 및 종동 축 서보 최대 온도 목록, 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]]
}