툴 핸드
툴 핸드 파라미터
상위 시스템에서 툴 핸드 파라미터 설정
명령어: 0x3500
파라미터 목록:
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| A | double | A축 회전 | 라디안 [-3.1416,3.1416], 각도 [-180,180] |
| B | double | B축 회전 | 라디안 [-3.1416,3.1416], 각도 [-180,180] |
| C | double | C축 회전 | 라디안 [-3.1416,3.1416], 각도 [-180,180] |
| X | double | X축 방향 오프셋, 단위 mm | [-2000,2000] |
| Y | double | Y축 방향 오프셋, 단위 mm | [-2000,2000] |
| Z | double | Z축 방향 오프셋, 단위 mm | [-2000,2000] |
| note | string | 툴 핸드 주석 | - |
| payloadInertia | double | 부하 관성, 단위 0.001kgm² | [-999999,999999] |
| payloadMass | double | 부하 질량, 단위 kg | [0,999999] |
| payloadMassCenterX | double | 부하 질량 중심 X, 단위 m | [-999999,999999] |
| payloadMassCenterY | double | 부하 질량 중심 Y, 단위 m | [-999999,999999] |
| payloadMassCenterZ | double | 부하 질량 중심 Z, 단위 m | [-999999,999999] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"parameter": {
"A": 0.0,
"B": 0.0,
"C": 0.0,
"X": -68.0,
"Y": 3.0,
"Z": 162.0,
"note": "",
"payloadInertia": 0.0,
"payloadMass": 3.0,
"payloadMassCenterX": 0.0,
"payloadMassCenterY": 0.0,
"payloadMassCenterZ": 0.170
},
"robot": 1,
"tool": 1
}상위 시스템에서 툴 핸드 파라미터 조회
명령어: 0x3501
파라미터 목록:
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"robot": 1,
"tool": 1
}컨트롤러가 상위 시스템에 툴 핸드 파라미터 응답
명령어: 0x3502
파라미터 목록 (라디안 단위):
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| A | double | A축 회전 | [-3.1416,3.1416] |
| B | double | B축 회전 | [-3.1416,3.1416] |
| C | double | C축 회전 | [-3.1416,3.1416] |
| X | double | X축 방향 오프셋, 단위 mm | [-2000,2000] |
| Y | double | Y축 방향 오프셋, 단위 mm | [-2000,2000] |
| Z | double | Z축 방향 오프셋, 단위 mm | [-2000,2000] |
| note | string | 툴 핸드 주석 | - |
| payloadInertia | double | 부하 관성, 단위 0.001kgm² | [-999999,999999] |
| payloadMass | double | 부하 질량, 단위 kg | [0,999999] |
| payloadMassCenterX | double | 부하 질량 중심 X, 단위 m | [-999999,999999] |
| payloadMassCenterY | double | 부하 질량 중심 Y, 단위 m | [-999999,999999] |
| payloadMassCenterZ | double | 부하 질량 중심 Z, 단위 m | [-999999,999999] |
파라미터 목록 (각도 단위):
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| A | double | A축 회전 | [-180,180] |
| B | double | B축 회전 | [-180,180] |
| C | double | C축 회전 | [-180,180] |
| X | double | X축 방향 오프셋, 단위 mm | [-2000,2000] |
| Y | double | Y축 방향 오프셋, 단위 mm | [-2000,2000] |
| Z | double | Z축 방향 오프셋, 단위 mm | [-2000,2000] |
| note | string | 툴 핸드 주석 | - |
| payloadInertia | double | 부하 관성, 단위 0.001kgm² | [-999999,999999] |
| payloadMass | double | 부하 질량, 단위 kg | [0,999999] |
| payloadMassCenterX | double | 부하 질량 중심 X, 단위 m | [-999999,999999] |
| payloadMassCenterY | double | 부하 질량 중심 Y, 단위 m | [-999999,999999] |
| payloadMassCenterZ | double | 부하 질량 중심 Z, 단위 m | [-999999,999999] |
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
응답 예시:
json
{
"parameter": {
"A": 0.0,
"B": 0.0,
"C": 0.0,
"X": -68.0,
"Y": 3.0,
"Z": 162.0,
"note": "",
"payloadInertia": 0.0,
"payloadMass": 3.0,
"payloadMassCenterX": 0.0,
"payloadMassCenterY": 0.0,
"payloadMassCenterZ": 0.17
},
"parameterDeg": {
"A": 0.0,
"B": 0.0,
"C": 0.0,
"X": -68.0,
"Y": 3.0,
"Z": 162.0,
"note": "",
"payloadInertia": 0.0,
"payloadMass": 3.0,
"payloadMassCenterX": 0.0,
"payloadMassCenterY": 0.0,
"payloadMassCenterZ": 0.17
},
"robot": 1,
"tool": 1
}툴 번호
상위 시스템에서 툴 번호 전환 요청
명령어: 0x3510
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 전환할 툴 핸드 번호, 0은 툴 핸드 없음을 의미 | [0,999] |
요청 예시:
json
{
"robot": 1,
"tool": 0
}상위 시스템에서 툴 핸드 번호 조회
명령어: 0x3511
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| robot | int | 현재 로봇 번호 | [1,4] |
요청 예시:
json
{
"robot": 1
}컨트롤러가 상위 시스템에 툴 핸드 번호 응답
명령어: 0x3512
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| curToolNum | int | 현재 선택된 툴 핸드 번호 | [0,999] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 선택된 툴 핸드 번호와 일치, 선택된 툴 핸드 번호가 0일 때 값은 1 | [1,999] |
응답 예시:
json
{
"curToolNum": 0,
"robot": 1,
"tool": 1
}툴 캘리브레이션
6점법 및 7점법 캘리브레이션. N번 포인트 캘리브레이션, 캘리브레이션 포인트 위치 정보 획득, 포인트 캘리브레이션 상태를 포함합니다.
캘리브레이션 계산 전에 모든 포인트를 캘리브레이션해야 하며, 먼저 0x3521로 각 포인트를 캘리브레이션한 다음, 모든 포인트 캘리브레이션이 완료되면 0x3520으로 캘리브레이션 결과를 계산합니다.
N번 포인트 위치 정보 조회 시 N번 포인트가 이미 캘리브레이션되어 있어야 합니다.
상위 시스템 캘리브레이션 계산 요청
명령어: 0x3520
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
요청 예시:
json
{
"robot": 1,
"tool": 1,
"calibrationType": 7
}상위 시스템 N번 포인트 캘리브레이션 요청
명령어: 0x3521
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| point | int | 캘리브레이션 포인트 번호 | 6점법 [0,5], 7점법 [0,6] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"calibrationType": 7,
"point": 4,
"robot": 1,
"tool": 1
}컨트롤러가 상위 시스템에 N번 포인트 캘리브레이션 정보 응답
명령어: 0x3522
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| point | int | 캘리브레이션 포인트 번호 | 6점법 [0,5], 7점법 [0,6] |
| position | array<double> | 캘리브레이션 포인트 직각 좌표 정보 목록 | - |
| robot | int | 현재 로봇 번호 | [1,4] |
응답 예시:
json
{
"calibrationType": 7,
"point": 1,
"position": [19998.0, 0.000000000001, 19998.0, 3.14159265359, 0.0, 0.0, 0.0],
"robot": 1
}컨트롤러가 상위 시스템에 캘리브레이션 계산 완료 결과 응답
명령어: 0x3523
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| result | bool | 캘리브레이션 계산 결과 | - |
| robot | int | 현재 로봇 번호 | [1,4] |
응답 예시:
json
{
"result": true,
"robot": 1
}상위 시스템에서 N번 포인트 위치 정보 조회
명령어: 0x3524
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| point | int | 캘리브레이션 포인트 번호 | 6점법 [0,5], 7점법 [0,6] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"calibrationType": 7,
"point": 4,
"robot": 1,
"tool": 1
}컨트롤러가 상위 시스템에 N번 포인트 위치 정보 응답
명령어: 0x3525
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| point | int | 캘리브레이션 포인트 번호 | 6점법 [0,5], 7점법 [0,6] |
| position | array<double> | 캘리브레이션 포인트 직각 좌표 정보 목록 | - |
| robot | int | 현재 로봇 번호 | [1,4] |
응답 예시:
json
{
"calibrationType": 7,
"point": 1,
"position": [19998.0, 0.000000000001, 19998.0, 3.14159265359, 0.0, 0.0, 0.0],
"robot": 1
}상위 시스템에서 전체 포인트 캘리브레이션 상태 조회
명령어: 0x3526
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"calibrationType": 7,
"robot": 1,
"tool": 1
}컨트롤러가 상위 시스템에 전체 포인트 캘리브레이션 상태 응답
명령어: 0x3527
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| robot | int | 현재 로봇 번호 | [1,4] |
| status | array<int> | 포인트 캘리브레이션 상태 목록, 1은 캘리브레이션 완료, 0은 미완료 | 6점법 길이 6, 7점법 길이 7 |
응답 예시:
json
{
"calibrationType": 7,
"robot": 1,
"status": [1, 1, 1, 0, 0, 1, 1]
}상위 시스템에서 N번 포인트 캘리브레이션 상태 클리어 요청
명령어: 0x3528
| 파라미터 이름 | 타입 | 설명 | 범위 |
|---|---|---|---|
| calibrationType | int | 캘리브레이션 포인트 방법, 6은 6점법, 7은 7점법 | [6,7] |
| point | int | 캘리브레이션 포인트 번호 | 6점법 [0,5], 7점법 [0,6] |
| robot | int | 현재 로봇 번호 | [1,4] |
| tool | int | 현재 툴 핸드 번호 | [1,999] |
요청 예시:
json
{
"calibrationType": 7,
"point": 0,
"robot": 1,
"tool": 1
}