로봇 모션
로봇 동작 상태의 조회 및 응답
티치 펜던트가 로봇의 동작 상태를 조회
명령 코드: 0x2304
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 선택, 값 범위 [1, 4] |
| jobfilename | string | 예 | 작업 파일명 (확장자 제외) |
| suffix | string | 예 | 파일 확장자: .JBR 메인 프로그램 / .JBP 백그라운드 로컬 프로그램 / .JBPG 백그라운드 글로벌 프로그램 |
요청 예시:
json
{
"robot": 1,
"jobfilename": "AAA",
"suffix": ".JBR"
}컨트롤러가 로봇 동작 상태를 응답
명령 코드: 0x9103
응답 파라미터:
| 파라미터명 | 타입 | 설명 |
|---|---|---|
| robot | int | 로봇 번호, 값 범위 [1, 4] |
| status | int | 동작 상태: 0-정지, 1-일시정지, 2-실행 |
| continueRun | int | 브레이크포인트 실행 존재 여부: 0/1 |
| currentRun | bool | 현재 라인 실행 존재 여부: false/true |
| mainProgramRun | int | 메인 프로그램 실행 여부: 0/1 |
응답 예시:
json
{
"robot": 1,
"status": 0,
"continueRun": 0,
"currentRun": false,
"mainProgramRun": 0
}로봇 모션 제어
로봇 관절 모션 MOVJ
명령 코드: 0x4501
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 선택, 값 범위 [1, 4] |
| vel | int | 예 | 속도 비율, 값 범위 [1, 100] |
| coord | int | 예 | 좌표계: 0-관절 좌표, 1-직각 좌표, 2-사용자 좌표, 3-도구 좌표 |
| pos | double[7] | 예 | 목표 위치, 앞 7자리는 로봇 본체 목표 위치, 뒤 5자리는 외부축 목표 위치 |
요청 예시:
json
{
"robot": 1,
"vel": 5,
"coord": 0,
"pos": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}로봇 직선 모션 MOVL
명령 코드: 0x4502
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 선택, 값 범위 [1, 4] |
| vel | int | 예 | 속도 mm/s, 값 범위 [1, 1000] |
| coord | int | 예 | 좌표계: 0-관절 좌표, 1-직각 좌표, 2-사용자 좌표, 3-도구 좌표 |
| pos | double[7] | 예 | 목표 위치, 앞 7자리는 로봇 본체 목표 위치, 뒤 5자리는 외부축 목표 위치 |
요청 예시:
json
{
"robot": 1,
"vel": 5,
"coord": 0,
"pos": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}로봇 원호 모션 MOVC
명령 코드: 0x4503
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 선택, 값 범위 [1, 4] |
| vel | int | 예 | 속도 mm/s, 값 범위 [1, 1000] |
| coord | int | 예 | 좌표계: 0-관절 좌표, 1-직각 좌표, 2-사용자 좌표, 3-도구 좌표 |
| isFull | bool | 예 | false-MOVC, true-MOVCA |
| posOne | double[7] | 예 | 원호 시작점, 로봇 본체 포인트 |
| posTwo | double[7] | 예 | 원호의 중간 경유점, 로봇 본체 포인트 |
| posThree | double[7] | 예 | 원호의 목표점, 로봇 본체 포인트 |
요청 예시:
json
{
"robot": 1,
"vel": 5,
"coord": 0,
"isFull": false,
"posOne": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
"posTwo": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
"posThree": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}로봇 스플라인 곡선 모션 MOVS
명령 코드: 0x4504
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 선택, 값 범위 [1, 4] |
| vel | int | 예 | 속도 mm/s, 값 범위 [1, 1000] |
| coord | int | 예 | 좌표계: 0-관절 좌표, 1-직각 좌표, 2-사용자 좌표, 3-도구 좌표 |
| size | int | 예 | 스플라인 곡선의 포인트 수, 최소 4개 포인트 필요 |
| pos | double[][7] | 예 | 스플라인 곡선의 궤적 포인트, 2차원 배열 |
요청 예시:
json
{
"robot": 1,
"vel": 5,
"coord": 0,
"size": 4,
"pos": [
[1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
[1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
[1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
[1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
]
}목표 포인트로 이동
목표 포인트로 이동
명령 코드: 0x3003 GO_POSITION
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 번호 |
| positionName | string | 예 | 목표 포인트명: SetPosition_EntrancePoint/SetPosition_AuxiliaryPoint/SetPosition_JobPoint |
| RobotPos | object | 예 | 로봇 위치 객체 |
RobotPos 내부 파라미터:
| 파라미터명 | 타입 | 설명 |
|---|---|---|
| ctype | int | 타입: NONE_TYPE=0/P_TYPE/E_TYPE/RP_TYPE/AP_TYPE/GP_TYPE/GE_TYPE |
| data | double[21] | 위치 데이터 배열, 자세한 내용은 아래 설명 참조 |
| key | string | 변수 타입 |
| paraVarData | array | 변수 배열 |
data 배열 설명:
| 인덱스 위치 | 설명 |
|---|---|
| 제1, 2위치 | 좌표 타입: 0,0-관절 좌표; 1,1-직각 좌표; 2,1-도구 좌표; 3,1-사용자 좌표 |
| 제3위치 | 좌우수: 1-왼손, 2-오른손, 0-좌우수 없음 (기본값 0) |
| 제4, 5, 6, 7위치 | 예비, 기본값 0 |
| 제8-14위치 | 로봇 본체 좌표값 (7자리): 관절 좌표에서는 1-6축 각도값, 다른 좌표에서는 x,y,z,a,b,c |
| 제15-19위치 | 외부축 좌표값 (최대 5개 외부축, 부족분은 0으로 채움) |
요청 예시:
json
{
"robot": 1,
"positionName": "SetPosition_JobPoint",
"RobotPos": {
"ctype": 0,
"key": "",
"data": [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6.0, 0.0, 6.0, 3.141590, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"paraVarData": [
{"data": 1.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 1.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 6.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 6.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 3.141590, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
{"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""}
]
}
}설명: 프로그램에 해당 명령이 없음
작업 파일 포인트로 이동
명령 코드: 0x3005 GO_JOBFILEPOSITION
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 번호 |
| jobName | string | 예 | 작업 파일명 |
| suffixname | string | 예 | 작업 파일 확장자 (예: .JBR) |
| posName | string | 예 | 포인트명 |
요청 예시:
json
{
"robot": 1,
"jobName": "Q1",
"suffixname": ".JBR",
"posName": "P001"
}사용자 좌표 캘리브레이션 포인트로 이동
명령 코드: 0x3006 GO_USERCALIBRATIONPOS
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 번호 |
| userNum | int | 예 | 사용자 번호 |
| posType | int | 예 | 포인트 타입: 0-원점, 1-X값, 2-Y값 |
요청 예시:
json
{
"robot": 1,
"userNum": 1,
"posType": 0
}복귀점으로 이동
명령 코드: 0x3007 GO_RESET_POSITION
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 번호 |
요청 예시:
json
{
"robot": 1
}원점 복귀 명령
원점 복귀 명령
명령 코드: 0x3002 GO_HOME
요청 파라미터:
| 파라미터명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| robot | int | 예 | 로봇 번호 (1-4) |
| type | int | 예 | 원점 복귀 타입: 0-로봇 원점 복귀, 1-외부축 원점 복귀 |
요청 예시:
json
{
"robot": 1,
"type": 1
}