Skip to content

시스템

상태

초기화 상태 조회

시스템 시동 시 초기화가 필요하며, 그렇지 않으면 시스템을 사용할 수 없습니다.

명령어: 0x1000

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1001

필드유형설명
finishinitbool초기화 완료 여부, true 완료, false 미완료
json
{
  "finishinit": true
}

T5 시스템 여부 조회

명령어: 0x1002

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1003

필드유형설명
T5_systemboolT5 시스템 여부, true 예, false 아니오
json
{
  "T5_system": false
}

하드웨어 시스템 릴리스 버전 조회

명령어: 0x1004

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1005

필드유형설명
resultbool조회 성공 여부, true 성공, false 실패
versionstring버전 번호 (조회 성공 시 반환)
json
{
  "result": true,
  "version": "xx"
}

버전 업그레이드

시스템 시동 시 현재 버전 번호를 조회해야 하며, 불일치가 발생하면 버전 업그레이드가 필요합니다.

현재 시스템 버전 번호 조회

명령어: 0x1010

필드유형설명
versionstring버전 번호 내용
json
{
  "version": "v1.0-rc1-67-gf34dae7"
}

컨트롤러 응답

명령어: 0x1011

필드유형설명
configFileVersionMismatchbool구성 파일 일치 여부, false 불일치, true 일치
jobFileVersionstring작업 파일 버전
rtlVersionstring컨트롤러 버전
sysClockstring시스템 시계, 형식은 "2023.11.10 13:29:25"
versionstring버전 번호 내용, 조회 시 전송된 version이 빈 문자열이면 동일한 내용 반환
json
{
  "configFileVersionMismatch": false,
  "jobFileVersion": "5.2.0",
  "rtlVersion": "22.08.0",
  "sysClock": "2023.11.10 13:29:25",
  "version": "v1.0-rc1-67-gf34dae7"
}

로그

크래시 로그 파일 조회

명령어: 0x1020

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1021

필드유형설명
absolutepathstring경로
dumpLogfilenumint파일 수량
dumpLogfileliststring[]로그 파일 목록
json
{
  "absolutepath": "",
  "dumpLogfilenum": 3,
  "dumpLogfilelist": ["", "", "", ""]
}

로그 파일 목록 가져오기 요청

명령어: 0x1022

필드유형설명
numint최근 몇 개 파일을 가져올지 표시, 5, 30, 100 가능
json
{
  "num": 5
}

컨트롤러 응답

명령어: 0x1023

필드유형설명
absolutepathstring로그가 있는 디렉터리
logfilenumint로그 개수 (num과 반드시 같지는 않음)
logfileliststring[]로그 목록
json
{
  "absolutepath": "log/",
  "logfilenum": 3,
  "logfilelist": ["logInfo.0", "logInfo.1", "logInfo.2"]
}

출하 설정 복원

명령어: 0x1030

필드유형설명
clearFactoryIObool모든 IO 해제, true 해제, false 미해제
clearFactoryRobotbool모든 로봇 해제, true 해제, false 미해제
clearFactoryToolhandbool모든 도구 해제, true 해제, false 미해제
clearConfigFilebool모든 시스템 구성 파일 해제, true 해제, false 미해제
clearExtendedFilebool모든 확장 파일 해제, true 해제, false 미해제
json
{
  "clearFactoryIO": true,
  "clearFactoryRobot": true,
  "clearFactoryToolhand": true,
  "clearConfigFile": true,
  "clearExtendedFile": true
}

재시작, 종료

컨트롤러 재시작

명령어: 0x1031

  • 전송할 데이터 없음

종료

명령어: 0x1032

  • 전송할 데이터 없음

단전 유지 복원 상태 조회

명령어: 0x1033

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1034

필드유형설명
rebootKeepRecoveryFlagbool단전 유지 복원 플래그, true 복원 성공, false 단전 유지 복원 미실행
rebootKeepJobFileNamestring단전 유지 복원된 프로그램 이름, 프로그램 명명 시 첫 글자는 숫자 불가
json
{
  "rebootKeepRecoveryFlag": false,
  "rebootKeepJobFileName": "xxxx"
}

IP 설정

컨트롤러 IP 설정

명령어: 0x1040

필드유형설명
namestring네트워크 포트 이름
addressstring설정할 컨트롤러 IP
gatewaystring설정할 컨트롤러 게이트웨이
dnsstring설정할 컨트롤러 DNS
json
{
  "name": "p1p1",
  "address": "192.168.1.13",
  "gateway": "192.168.1.1",
  "dns": "114.114.114.114"
}

연결 IP 조회

명령어: 0x1041

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1042

필드유형설명
numint네트워크 포트 개수
networkarray네트워크 정보 목록
network[].namestring네트워크 포트 이름
network[].addressstring컨트롤러 IP
network[].gatewaystring컨트롤러 게이트웨이
network[].dnsstring컨트롤러 DNS
json
{
  "num": 2,
  "network": [
    {
      "name": "p1p1",
      "address": "192.168.1.13",
      "gateway": "192.168.1.1",
      "dns": "114.114.114.114"
    },
    {
      "name": "p2p1",
      "address": "192.168.1.14",
      "gateway": "192.168.1.1",
      "dns": "114.114.114.114"
    }
  ]
}

시간 설정

시간 조회 전송

명령어: 0x1050

필드유형설명
typeint시간 유형: 0 실시간 시간, 1 시스템 시작 시간부터 현재까지 s 수
formatint형식: 0 타임스탬프, 1 베이징 시간
json
{
  "type": 0,
  "format": 0
}

컨트롤러 응답

명령어: 0x1051

필드유형설명
tTypeint시간 유형: 0 실시간 시간, 1 시스템 시작 시간부터 현재까지 s 수
formatint형식: 0 타임스탬프, 1 베이징 시간
dateobject날짜 및 시간 정보
date.yearint
date.monint
date.dayint
date.hourint
date.minint
date.secint
date.msecint밀리초
timestampobject타임스탬프 (format이 0일 때 표시)
timestamp.sint타임스탬프 초 수
timestamp.nsint타임스탬프 나노초 수
json
{
  "tType": 0,
  "format": 0,
  "date": {
    "year": 2023,
    "mon": 1,
    "day": 1,
    "hour": 1,
    "min": 1,
    "sec": 1,
    "msec": 1
  },
  "timestamp": {
    "s": 1,
    "ns": 1
  }
}

언어 지원 조회

명령어: 0x1052

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1053

필드유형설명
languagestring[]컨트롤러가 지원 가능한 모든 언어, 현재 지원: Chinese 중국어, Korean 한국어, English 영어
language_usedstring컨트롤러가 현재 사용하는 언어
json
{
  "language": ["Chinese", "Korean", "English"],
  "language_used": "Chinese"
}

호스트 컴퓨터 현재 언어 조회

명령어: 0x1054

필드유형설명
teachbox_languagestring호스트 컴퓨터가 현재 사용하는 언어
json
{
  "teachbox_language": "Chinese"
}

시스템 유지보수

시스템 유지보수 조회

명령어: 0x1060

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1061

필드유형설명
controller_IDstring컨트롤러 ID
controller_total_timeint컨트롤러 통전 총 시간, 단위 시간
controller_spent_timeint컨트롤러 마지막 유지보수 이후 시간, 단위 시간
controller_cycle_timeint컨트롤러 유지보수 주기, 단위 시간
robot_total_timeint로봇 통전 총 시간, 단위 시간
robot_spent_timeint로봇 마지막 유지보수 이후 시간, 단위 시간
robot_cycle_timeint로봇 유지보수 주기, 단위 시간
json
{
  "controller_ID": "4DC9F0249098C82E",
  "controller_total_time": 0,
  "controller_spent_time": 0,
  "controller_cycle_time": 0,
  "robot_total_time": 0,
  "robot_spent_time": 0,
  "robot_cycle_time": 0
}

시스템 유지보수 알림

명령어: 0x1062

필드유형설명
existbool유지보수 파일 존재 여부 판단, true 존재, false 미존재
controlTimeStatusbool컨트롤러 유지보수 상태, true 유지보수, false 유지보수 불필요
robotTimeStatusbool로봇 유지보수 상태, true 유지보수, false 유지보수 불필요
json
{
  "exist": true,
  "controlTimeStatus": true,
  "robotTimeStatus": true
}

파일

컨트롤러 구성 파일 디렉터리 조회

명령어: 0x1070

필드유형설명
isExportbool내보내기/가져오기 구성, true 내보내기 구성, false 가져오기 구성
json
{
  "isExport": true
}

컨트롤러 응답

명령어: 0x1071

필드유형설명
fileliststring[]구성 파일 이름 목록
filenumint구성 파일 수량
json
{
  "filelist": ["xxx.json", "yyy.json"],
  "filenum": 2
}

시스템 백업

현재 버전 티치 펜던트 프로그램 존재 여부 조회

명령어: 0x1090

필드유형설명
config_md5stringconfig.db 파일 MD5 값
pinyin_md5stringPinyin.db 파일 MD5 값, null은 파일이 없거나 크기가 0임을 표시
pro_md5string티치 펜던트 프로그램 파일의 MD5 값
pro_namestring티치 펜던트 프로그램 파일의 이름, Qt-tp 또는 T30_ARM_Linux_Teach-pendant 선택
json
{
  "config_md5": "2803f92ecdecfd3c178b0998b9391a4d",
  "pinyin_md5": "null",
  "pro_md5": "ce407851346d030dad5207948f55ed6c",
  "pro_name": "Qt-tp"
}

컨트롤러 응답

명령어: 0x1091

필드유형설명
pathobject파일 경로 정보
path.configstringconfig.db 파일 업로드 경로
path.dirstring모든 파일의 경로
path.pinyinstringPinyin.db 파일 업로드 경로, 빈 문자열은 업로드 불필요 표시
path.prostringQt-tp 파일 업로드 경로
json
{
  "path": {
    "config": "qttpBackup/rtl-24.03.07-6.0.9-1.0.6",
    "dir": "qttpBackup/rtl-24.03.07-6.0.9-1.0.6",
    "pinyin": "",
    "pro": "qttpBackup/rtl-24.03.07-6.0.9-1.0.6"
  }
}

컨트롤러 버전과 일치하는 티치 펜던트 프로그램 존재 여부 조회

명령어: 0x1092

필드유형설명
pro_namestring티치 펜던트 프로그램 이름, Qt-tp 또는 T30_ARM_Linux_Teach-pendant 선택
json
{
  "pro_name": "Qt-tp"
}

컨트롤러 응답

명령어: 0x1093

필드유형설명
backuppathstring백업 경로

백업 프로그램 파일 요청

명령어: 0x1094

필드유형설명
backup_dirstring백업 파일의 원본 경로
pro_namestring프로그램 이름, Qt-tp 또는 T30_ARM_Linux_Teach-pendant
json
{
  "backup_dir": "qttpBackup/rtl-24.03.07-6.0.9-1.0.6",
  "pro_name": "Qt-tp"
}

컨트롤러 응답

명령어: 0x1095

필드유형설명
backuppathstring자동 백업 경로
json
{
  "backuppath": ""
}

자동 백업 요청

명령어: 0x1096

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x1097

필드유형설명
backUpNumint백업 시스템 수, 최대 10개
backUpNamestring[]백업 시스템 이름
json
{
  "backUpNum": 1,
  "backUpName": ["string", "string", "string……"]
}

시스템 복원 요청

명령어: 0x1098

필드유형설명
backUpOneNamestring복원할 시스템 이름
json
{
  "backUpOneName": "xxxx"
}

컨트롤러 응답

명령어: 0x1099

필드유형설명
successbool시스템 복원 성공 여부, true 성공, false 실패
backUpNamestring[]백업 시스템 이름, 최대 10개
json
{
  "success": true
}

제조사 매개변수 저장

명령어: 0x109A

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x109B

필드유형설명
successbool저장 성공 여부, true 성공, false 실패
json
{
  "success": true
}

라이선스 키

시스템 제한 설정

명령어: 0x10B0

필드유형설명
palletbool팔레타이징 기능 제한 설정
weldingbool용접 기능 제한 설정
laserCutbool레이저 절단 기능 제한 설정
polishbool그라인딩 기능 제한 설정
spraybool스프레이 기능 제한 설정
searchbool심 검출 기능 제한 설정
visionbool비전 기능 제한 설정
conveyorbool컨베이어 기능 제한 설정
clear_databool데이터 해제
json
{
  "pallet": true,
  "welding": true,
  "laserCut": true,
  "polish": true,
  "spray": true,
  "search": true,
  "vision": true,
  "conveyor": true,
  "clear_data": true
}

컨트롤러 기능 제한 조회

명령어: 0x10B1

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10B2

필드유형설명
maxRobotCountint로봇 최대 개수
craftsstring[]잠금 해제된 프로세스 목록
robotTypesstring[]잠금 해제된 로봇 유형

프로세스 유형 값:

  • C_Pallet: 팔레타이징 프로세스
  • C_Welding: 용접 프로세스
  • C_Lasercut: 레이저 절단 프로세스
  • C_Polish: 그라인딩 프로세스
  • C_Spray: 스프레이 프로세스
  • C_Search: 심 추적 프로세스
  • C_Vision: 비전 프로세스

로봇 유형 값:

  • R_NULL: 로봇 유형 미선택
  • R_GENERAL_6S: 6축 직렬 다관절
  • R_GENERAL_6S_1: 6축 협동
  • R_SIXAXIS_SPRAY_BBR: 6축 스프레이 로봇
  • R_GENERAL_6S_2: 6축 이형 2
  • R_GENERAL_5S: 5축 로봇
  • R_SCARA: 4축 SCARA 로봇
  • R_SCARA_1: 4축 SCARA 이형 1 로봇
  • R_FOURAXIS_PALLET: 4축 연쇄 팔레타이징 로봇
  • R_FOURAXIS_PALLET_1: 4축 팔레타이징 스크류 로봇
  • R_FOURAXIS: 4축 로봇
  • R_FOUR_CARTESIAN_COORDINATE: 4축 직각 로봇
  • R_FOUR_POLAR_COORDINATE_1: 4축 극좌표 이형 로봇
  • R_SCARA_THREEAXIS: 3축 SCARA 로봇
  • R_THREE_CARTESIAN_COORDINATE: 3축 직각 로봇
  • R_THREE_CARTESIAN_COORDINATE_1: 3축 이형 1 로봇
  • R_SCARA_TWOAXIS: 2축 SCARA 로봇
  • R_GENERAL_7S: 7축 범용 로봇
  • R_GENERAL_1S: 1축 로봇
  • R_GANTRY_WELD: 5축 갠트리 용접 로봇
  • R_DELTA: delta 로봇 (4축 병렬 로봇)
  • R_WINE_CHAMFER: 주석 유형
  • R_GANTRY_WELD_2: 5축 갠트리 용접 로봇 유형 2
  • R_FOUR_CARTESIAN_COORDINATE_1: 4축 직각 이형 1 로봇
  • R_GANTRY_WELD_6: 6축 갠트리 용접 로봇
  • FIVE_AXLE_MIXED: 5축 혼합 로봇
  • R_SCARA_FOURAXIS_2: 4축 SCARA 이형 2
  • R_SIX_AXLE_ABNORMITY_3: 6축 이형 3
  • R_SCARA_THREEAXIS_1: 3축 SCARA 이형 1
  • R_DELTA_2D_: delta 2D 병렬 로봇 모델
  • R_GANTRY_WELD_3: 5축 갠트리 용접 로봇 유형 3
  • R_GENERAL_3S_1: 3축 직렬 이형 1
  • R_GENERAL_5S_COLLABORATIVE_: 5축 협동 로봇
  • R_SCARA_3_: 4축 SCARA 이형 3 로봇
  • R_GENERAL_6S_CBBARA_: 6축 직렬-CBBARA
  • R_HEAVY_DUTY_FOUR_AXIS_: 고중량 기둥 회전 4축
json
{
  "crafts": [
    "C_Pallet",
    "C_Welding",
    "C_Lasercut",
    "C_Polish",
    "C_Spray",
    "C_Search",
    "C_Vision"
  ],
  "maxRobotCount": 4,
  "robotTypes": [
    "R_GENERAL_6S",
    "R_SCARA",
    "R_FOURAXIS_PALLET",
    "R_FOURAXIS",
    "R_GENERAL_1S",
    "R_GENERAL_5S",
    "R_GENERAL_6S_1",
    "R_SCARA_TWOAXIS",
    "R_SCARA_THREEAXIS",
    "R_THREE_CARTESIAN_COORDINATE",
    "R_THREE_CARTESIAN_COORDINATE_1",
    "R_GENERAL_7S",
    "R_SCARA_1",
    "R_FOURAXIS_PALLET_1",
    "R_SIXAXIS_SPRAY_BBR",
    "R_FOUR_CARTESIAN_COORDINATE",
    "R_FOUR_POLAR_COORDINATE_1",
    "R_GENERAL_6S_2",
    "R_GANTRY_WELD",
    "R_DELTA",
    "R_WINE_CHAMFER",
    "R_GANTRY_WELD_2",
    "R_FOUR_CARTESIAN_COORDINATE_1",
    "R_GANTRY_WELD_6",
    "FIVE_AXLE_MIXED",
    "R_SCARA_FOURAXIS_2",
    "R_SIX_AXLE_ABNORMITY_3",
    "R_SCARA_THREEAXIS_1",
    "R_DELTA_2D_",
    "R_GANTRY_WELD_3",
    "R_GENERAL_3S_1",
    "R_GENERAL_5S_COLLABORATIVE_",
    "R_SCARA_3_"
  ]
}

컨트롤러 ID 조회

명령어: 0x10B3

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10B4

필드유형설명
controllerIDstring컨트롤러 ID
json
{
  "controllerID": "4DC9F0249098C82E"
}

설명: 연결된 컨트롤러 ID를 가져온 후, 작업 파일 동기화 시 이 ID가 알려진 ID인지 판단해야 합니다. 알려진 경우 경로 "dir/controllerID" 존재 여부를 판단하고, 존재하면 작업하지 않음; 존재하지 않으면 작업 파일 경로를 생성하며, 형식은 "dir/controllerID/robotJob/R1". 여러 로봇은 R1-4로 표시합니다.

컨트롤러 남은 사용 일수 가져오기

명령어: 0x10B5

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10B6

필드유형설명
restdaysint남은 사용 일수, -1 무기한 사용, 0 사용 기한 도달, 나머지는 남은 일수
yearint만료 연
monint만료 월
dayint만료 일
json
{
  "restdays": 30,
  "year": 1,
  "mon": 1,
  "day": 1
}

컨트롤러에 남은 사용 일수 전송

명령어: 0x10B7

필드유형설명
restDaysint남은 사용 일수
json
{
  "restDays": 0
}

컨트롤러 시리얼 번호 업데이트

명령어: 0x10B8

필드유형설명
licensestring컨트롤러 시리얼 번호
json
{
  "license": "ACOCWKBZHSKBEJHI"
}

컨트롤러 응답

명령어: 0x10B9

필드유형설명
resultstring업데이트 결과, "success" 성공, "ivalid" 불법 키, "notInit" 미초기화
ivalidstring무효 키
errorstring크랙 의심, 잠금 해제 거부
json
{
  "result": "success",
  "ivalid": "무효 키!",
  "error": "크랙 의심, 잠금 해제 거부!"
}

키 업데이트 성공 후, 컨트롤러가 곧 재시작됩니다.

컨트롤러 권한 없음 사용 정보

명령어: 0x10BA

필드유형설명
reasonstring컨트롤러 권한 없음 사용 사유
json
{
  "reason": ""
}

컨트롤러 기본 정보 가져오기

명령어: 0x10C0

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10C1

필드유형설명
controllerIDstring컨트롤러 ID
controllerModelstring컨트롤러 모델
json
{
  "controllerID": "1234567890ABCDEF",
  "controllerModel": "C2201"
}

컨트롤러가 지원하는 로봇 유형 및 프로세스 가져오기

명령어: 0x10C2

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10C3

필드유형설명
maxRobotSumint최대 로봇 총수, 범위 [0,4]
robotTypeEnstring[]지원하는 로봇 유형 (영어)
robotTypeCnstring[]지원하는 로봇 유형 (중국어)
craftTypeEnstring[]지원하는 모든 프로세스 (영어)
craftTypeCnstring[]지원하는 모든 프로세스 (중국어)
json
{
  "maxRobotSum": 4,
  "robotTypeEn": ["RobotA", "RobotB"],
  "robotTypeCn": ["로봇A", "로봇B"],
  "craftTypeEn": ["pallet", "weld"],
  "craftTypeCn": ["팔레타이징", "용접"]
}

컨트롤러 라이선스 정보 가져오기

명령어: 0x10C4

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10C5

필드유형설명
isInitbool초기화 여부
expirationDateobject만료 날짜
expirationDate.yearint만료 연
expirationDate.monthint만료 월
expirationDate.dayint만료 일
maxRobotSumint최대 로봇 수, 범위 [0,4]
robotTypestring[]로봇 유형
craftTypestring[]프로세스 유형
json
{
  "isInit": true,
  "expirationDate": {
    "year": 2038,
    "month": 1,
    "day": 31
  },
  "maxRobotSum": 4,
  "robotType": ["RobotA", "RobotB"],
  "craftType": ["pallet", "weld"]
}

초기화 키 전송

명령어: 0x10C6

필드유형설명
permissionTypestring라이선스 유형
licensestring
json
{
  "permissionType": "01",
  "license": "DSFPSKDGSJDFSGDSGJDSDF"
}

컨트롤러 응답

명령어: 0x10C7

필드유형설명
resultstring키 결과, "success" 성공, "ivalid" 불법 키, "deviceAbnormal" 컨트롤러 비정상
datastring컨트롤러 데이터
json
{
  "result": "success",
  "data": "123ABC"
}

복호화 키 전송

명령어: 0x10C8

필드유형설명
licensestring
json
{
  "license": "DSFPSKDGSJDFSGDSGJDSDF"
}

컨트롤러 응답

명령어: 0x10C9

필드유형설명
resultstring결과, "success" 성공, "ivalid" 불법 키, "notInit" 미초기화
json
{
  "result": "success"
}

오프라인 권한 파일 내용 가져오기

명령어: 0x10CA

  • 전송할 데이터 없음

컨트롤러 응답

명령어: 0x10CB

필드유형설명
datastring권한 파일 내용
json
{
  "data": "xxxxxxxx"
}