// Device Number, Function Number, Alarm Number, Error level, Show info level, Alarm describe, Alarm describe(detail)
// Error Level -1 - Warning (No stop)
// Error Level 0 - Warning
// Error Level 1 - Alarm
// Error Level 2 - Driver Alarm
// Show info level 1(low)~5(high)

/*
*  Robot system software - device 0x01
*/

// System error - function 0x01,,,,,,
DEF(0x01, 0x01, 0x10,1,4, "시스템 오류", "시스템 초기화 실패입니다." );
DEF(0x01, 0x01, 0x11,1,4, "모션 라이브러리 오류", "모션 라이브러리 로드 오류입니다" );
DEF(0x01, 0x01, 0x12,1,4, "모션 라이브러리 오류", "모션 라이브러리 초기화에 실패했습니다." );
DEF(0x01, 0x01, 0x13,1,4, "모션 라이브러리 오류", "모션 라이브러리 메모리 초기화에 실패했습니다." );
DEF(0x01, 0x01, 0x14,1,4, "모션 라이브러리 오류", "모션 라이브러리 시작에 실패했습니다." );
DEF(0x01, 0x01, 0x20,2,4, "E-CAT 오류", "EtherCAT 라이브러리 로드 실패입니다." );
DEF(0x01, 0x01, 0x21,2,4, "E-CAT 오류", "EtherCAT 연결을 끊었습니다." );
DEF(0x01, 0x01, 0x22,2,4, "E-CAT 오류", "EtherCAT 초기화하지 못했습니다." );
DEF(0x01, 0x01, 0x23,2,4, "E-CAT 오류", "EtherCAT 라인 교차 알람입니다." );
DEF(0x01, 0x01, 0x24,2,4, "E-CAT 오류", "EtherCAT 슬레이브가 없는 알람입니다" );
DEF(0x01, 0x01, 0x25,2,4, "E-CAT 오류", "EtherCAT 슬레이브를 확인할 수 없습니다." );
DEF(0x01, 0x01, 0x26,2,4, "E-CAT 오류", "EtherCAT 슬레이브 응답이 없습니다." );
DEF(0x01, 0x01, 0x27,2,4, "E-CAT 오류", "EtherCAT 사이클 알람입니다." );
DEF(0x01, 0x01, 0x28,2,4, "E-CAT 오류", "EtherCAT 사이클 지터입니다." );
DEF(0x01, 0x01, 0x29,2,4, "E-CAT 오류", "EtherCAT 사이클 카운터 오류입니다." );
DEF(0x01, 0x01, 0x2A,2,4, "E-CAT 오류", "EtherCAT 주기 감시 오류입니다." );
DEF(0x01, 0x01, 0x2B,2,4, "E-CAT 오류", "EtherCAT INIT 변경 오류입니다." );
DEF(0x01, 0x01, 0x2C,2,4, "E-CAT 오류", "EtherCAT PREOP 변경 오류입니다." );
DEF(0x01, 0x01, 0x2D,2,4, "E-CAT 오류", "EtherCAT SAFEOP 변경 오류입니다." );
DEF(0x01, 0x01, 0x2E,2,4, "E-CAT 오류", "EtherCAT OP 변경 오류입니다." );
DEF(0x01, 0x01, 0x2F,2,4, "E-CAT 오류", "EtherCAT 마스터 응답하지 않습니다." );
DEF(0x01, 0x01, 0x30,2,4, "E-CAT 오류", "EtherCAT 마스터 초기화 오류입니다." );
DEF(0x01, 0x01, 0x31,2,4, "E-CAT 오류", "EtherCAT 부스바 스캔 오류입니다." );
DEF(0x01, 0x01, 0x32,-1,4, "E-CAT 오류", "EtherCAT 프레임 응답 오류입니다." );
DEF(0x01, 0x01, 0x33,-1,4, "E-CAT 오류", "EtherCAT 프레임이 손실되었습니다." );
DEF(0x01, 0x01, 0x34,2,4, "E-CAT 오류", "EtherCAT 초기화 명령의 마스터 카운터 오류입니다." );
DEF(0x01, 0x01, 0x35,2,4, "E-CAT 오류", "EtherCAT 초기화 명령의 마스터 응답 오류입니다." );
DEF(0x01, 0x01, 0x36,2,4, "E-CAT 오류", "EtherCAT 초기화 명령의 슬레이브 카운터 오류입니다." );
DEF(0x01, 0x01, 0x37,2,4, "E-CAT 오류", "EtherCAT 초기화 명령의 슬레이브 응답 오류입니다." );
DEF(0x01, 0x01, 0x38,2,4, "E-CAT 오류", "EtherCAT 이더캣 메일박스 타임아웃입니다 " );
DEF(0x01, 0x01, 0x39,2,4, "E-CAT 오류", "EtherCAT 메일박스 SDO를 취소합니다." );
DEF(0x01, 0x01, 0x3A,2,4, "E-CAT 오류", "EtherCAT 메일박스 COE 카운터 수신 오류입니다" );
DEF(0x01, 0x01, 0x3B,2,4, "E-CAT 오류", "EtherCAT 메일박스 COE 카운터 전송 오류입니다." );
DEF(0x01, 0x01, 0x3C,2,4, "E-CAT 오류", "EtherCAT 메일박스 잘못된 데이터를 받았습니다." );
DEF(0x01, 0x01, 0x3D,2,4, "E-CAT 오류", "EtherCAT 마스터 알람입니다." );
DEF(0x01, 0x01, 0x3E,2,4, "시스템 오류", "메모리 할당 오류입니다." );
DEF(0x01, 0x01, 0x40,1,4, "A1 매개 변수 세트 실패", "축 1 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x41,1,4, "A2 매개 변수 세트 실패", "축 2 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x42,1,4, "A3 매개 변수 세트 실패", "축 3 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x43,1,4, "A4 매개 변수 세트 실패", "축 4 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x44,1,4, "A5 매개 변수 세트 실패", "축 5 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x45,1,4, "A6 매개 변수 세트 실패", "축 6 파라미터 설정이 실패합니다." );
DEF(0x01, 0x01, 0x50,1,4, "Cnv 1 인코더 오류", "컨베이어 1 인코더 초기화 실패입니다." );
DEF(0x01, 0x01, 0x51,1,4, "Cnv 2 인코더 오류", "컨베이어 2 인코더 초기화 실패입니다." );
DEF(0x01, 0x01, 0x52,1,4, "Cnv 3 인코더 오류", "컨베이어 3 인코더 초기화 실패입니다." );
DEF(0x01, 0x01, 0x53,1,4, "Cnv 4 인코더 오류", "컨베이어 4 인코더 초기화 실패입니다." );
DEF(0x01, 0x01, 0x54,1,4, "추가 매개 변수 초기화 실패", "추가 매개 변수 초기화에 실패했습니다.");
DEF(0x01, 0x01, 0x55,1,4, "HRSS 로드 실패", "HRSS 로딩에 실패했습니다.");
DEF(0x01, 0x01, 0x56,0,2, "TeamViewer 열기 오류", "TeamViewer 열기 오류입니다.");
DEF(0x01, 0x01, 0x57,0,2, "HRSS 종료 오류", "HRSS 종료 이상입니다." );
DEF(0x01, 0x01, 0x58,0,3, "FBWF 사용된 메모리 128MB", "FBWF 메모리가 128MB를 사용했습니다." );
DEF(0x01, 0x01, 0x59,0,3, "FBWF 사용된 메모리 512MB", "FBWF FBWF 메모리가 512MB를 사용했습니다." );
DEF(0x01, 0x01, 0x5A,0,3, "FBWF 파일 열기 실패", "FBWF의 파일을 열지 못했습니다." );
DEF(0x01, 0x01, 0x60,2,3, "E-CAT 장치 오류", "EtherCAT 입력 장치 양이 일치하지 않습니다." );
DEF(0x01, 0x01, 0x61,2,3, "E-CAT 장치 오류", "EtherCAT 입력 장치 순서가 일치하지 않습니다." );
DEF(0x01, 0x01, 0x62,2,3, "E-CAT 장치 오류", "EtherCAT 장치 입력 크기가 일치하지 않습니다." );
DEF(0x01, 0x01, 0x63,2,3, "E-CAT 장치 오류", "EtherCAT 출력 장치 양이 일치하지 않습니다." );
DEF(0x01, 0x01, 0x64,2,3, "E-CAT 장치 오류", "EtherCAT 출력 장치 순서가 일치하지 않습니다." );
DEF(0x01, 0x01, 0x65,2,3, "E-CAT 장치 오류", "EtherCAT 장치 출력 크기가 일치하지 않습니다." );

DEF(0x01, 0x01, 0x70, 2, 3, "E-CAT A1 연결 끊김", "EtherCAT 축1 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x71, 2, 3, "E-CAT A2 연결 끊김", "EtherCAT 축2 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x72, 2, 3, "E-CAT A3 연결 끊김", "EtherCAT 축3 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x73, 2, 3, "E-CAT A4 연결 끊김", "EtherCAT 축4 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x74, 2, 3, "E-CAT A5 연결 끊김", "EtherCAT 축5 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x75, 2, 3, "E-CAT A6 연결 끊김", "EtherCAT 축6 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x76, 2, 3, "E-CAT E1 연결 끊김", "EtherCAT 외부 축1 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x77, 2, 3, "E-CAT E2 연결 끊김", "EtherCAT 외부 축2 드라이버 연결이 끊어졌습니다." );
DEF(0x01, 0x01, 0x78, 2, 3, "E-CAT E3 연결 끊김", "EtherCAT 외부 축3 드라이버 연결이 끊어졌습니다." );

DEF(0x01, 0x01, 0x80,0,3, "외부 축 무한 회전 설정 실패", "외부 축 무한 회전 설정 실패입니다.");
DEF(0x01, 0x01, 0x81,0,3, "외부 축은 동기화 모드여야 함", "외부 축은 동기화 모드여야 합니다.");
DEF(0x01, 0x01, 0x82,0,3, "외부 축은 비동기 모드여야 함", "외부 축은 비동기 모드여야 합니다.");
DEF(0x01, 0x01, 0x83,0,3, "외부 축 모션 유형 오류", "외부 축 모션 유형 오류입니다.");
DEF(0x01, 0x01, 0x84,0,3, "외부 축 추적 ID 오류", "외부 축 추적 ID 오류입니다.");
DEF(0x01, 0x01, 0x85,0,3, "외부 축 이동베이스 오류", "외부 축 이동베이스 오류입니다.");
// Program error - function 0x02
DEF(0x01, 0x02, 0x10,0,3, "잘못된 프로그램 코드", "프로그램 코드가 잘못되었습니다." );
DEF(0x01, 0x02, 0x11,0,3, "손상된 파일을 수정합니다. 내용을 확인하십시오.", "손상된 파일을 복구 해보십시오. 실행하기 전에 프로그램 내용이 올바른지 확인하십시오." );
DEF(0x01, 0x02, 0x12,0,3, "프로그램 복사 오류", "프로그램 복사 오류입니다.");
DEF(0x01, 0x02, 0x13,0,3, "정의되지 않은 레이블 이름", "레이블 이름이 정의되지 않았습니다." );

// Motion error - function 0x03
DEF(0x01, 0x03, 0x10,0,3, "A1 팔로잉 오류", "축 1 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x11,0,3, "A2 팔로잉 오류", "축 2 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x12,0,3, "A3 팔로잉 오류", "축 3 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x13,0,3, "A4 팔로잉 오류", "축 4 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x14,0,3, "A5 팔로잉 오류", "축 5 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x15,0,3, "A6 팔로잉 오류", "축 6 팔로잉 오류가 너무 큽니다." );
DEF(0x01, 0x03, 0x16,0,2, "A1 위치가 한계를 초과함", "축 1 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x17,0,2, "A1 위치가 한계를 초과함", "축 1 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x18,0,2, "A2 위치가 한계를 초과함", "축 2 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x19,0,2, "A2 위치가 한계를 초과함", "축 2 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1A,0,2, "A3 위치가 한계를 초과함", "축 3 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1B,0,2, "A3 위치가 한계를 초과함", "축 3 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1C,0,2, "A4 위치가 한계를 초과함", "축 4 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1D,0,2, "A4 위치가 한계를 초과함", "축 4 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1E,0,2, "A5 위치가 한계를 초과함", "축 5 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x1F,0,2, "A5 위치가 한계를 초과함", "축 5 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x20,0,2, "A6 위치가 한계를 초과함", "축 6 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x21,0,2, "A6 위치가 한계를 초과함", "축 6 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x30,0,2, "XY 좌표가 한계를 초과함", "XY가 소프트웨어의 한계를 초과합니다." );
DEF(0x01, 0x03, 0x31,0,2, "조인트 과속", "조인트 과속입니다." );
DEF(0x01, 0x03, 0x32,0,2, "손목 특이점", "손목 특이점입니다." );
DEF(0x01, 0x03, 0x33,0,2, "어깨 특이점", "어깨 특이점입니다." );
DEF(0x01, 0x03, 0x34,0,2, "팔꿈치 특이점", "팔꿈치 특이점입니다." );
DEF(0x01, 0x03, 0x40,0,2, "서클 명령 오류", "서클 명령을 3개의 기준점이 같은 선에 있습니다." );
DEF(0x01, 0x03, 0x41,0,2, "서클 명령 오류", "서클 명령에서 중심점을 찾을 수 없습니다." );
DEF(0x01, 0x03, 0x42,0,2, "서클 명령 오류", "서클 명령을 사용하여 전치 행렬을 계산할 수 없습니다." );
DEF(0x01, 0x03, 0x50,0,2, "동기화된 출력 대기열 오버플로", "동기화된 출력 대기열 오버플로입니다." );
DEF(0x01, 0x03, 0x51,0,2, "동기화된 출력이 한계를 초과함", "동기화된 출력이 한계를 초과합니다." );
DEF(0x01, 0x03, 0x52,0,2, "컴플라이언스  티칭 동작 오류", "컴플라이언스 티칭 중 모션 명령을 찾았습니다." );

DEF(0x01, 0x03, 0x53,1,2, "A1 충돌 감지", "축 1에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x54,1,2, "A2 충돌 감지", "축 2에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x55,1,2, "A3 충돌 감지", "축 3에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x56,1,2, "A4 충돌 감지", "축 4에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x57,1,2, "A5 충돌 감지", "축 5에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x58,1,2, "A6 충돌 감지", "축 6에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x59,1,2, "E1 충돌 감지", "축 E1에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x5A,1,2, "E2 충돌 감지", "축 E2에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x5B,1,2, "E3 충돌 감지", "축 E3에서 충돌이 감지되었습니다." );
DEF(0x01, 0x03, 0x60,1,2, "페이로드 데이터 처리 파일 오류", "페이로드 데이터 처리 파일 오류입니다" );
DEF(0x01, 0x03, 0x61,1,2, "페이로드 식별 파일 오류", "페이로드 식별 파일 오류입니다." );
DEF(0x01, 0x03, 0x62,1,2, "매개 변수 변환 파일 오류", "매개 변수 변환 파일 오류입니다" );

DEF(0x01, 0x03, 0x70,0,2, "A1이 낮은 소프트 한계 미만", "축 1 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x71,0,2, "A1이 높은 소프트 한계 초과", "축 1 위치가 높은 소프트 한계값을 초과합니다." );
DEF(0x01, 0x03, 0x72,0,2, "A2가 낮은 소프트 한계 미만", "축 2 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x73,0,2, "A2가 높은 소프트 한계 초과", "축 2 위치가 높은 소프트 한계값을 초과합니다." );
DEF(0x01, 0x03, 0x74,0,2, "A3이 낮은 소프트 한계 미만", "축 3 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x75,0,2, "A3이 높은 소프트 한계 초과", "축 3 위치가 높은 소프트 한계값을 초과합니다." );
DEF(0x01, 0x03, 0x76,0,2, "A4가 낮은 소프트 한계 미만", "축 4 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x77,0,2, "A4가 높은 소프트 한계 초과", "축 4 위치가 높은 소프트 한계값을 초과합니다." );
DEF(0x01, 0x03, 0x78,0,2, "A5가 낮은 소프트 한계 미만", "축 5 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x79,0,2, "A5가 높은 소프트 한계 초과", "축 5 위치가 높은 소프트 한계값을 초과합니다." );
DEF(0x01, 0x03, 0x7A,0,2, "A6이 낮은 소프트 한계 미만", "축 6 위치가 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x7B,0,2, "A6이 높은 소프트 한계 초과", "축 6 위치가 높은 소프트 한계값을 초과합니다." );

DEF(0x01, 0x03, 0x7C,0,2, "TCP가 X의 낮은 소프트 한계 미만", "공구 중심 위치가 X 하한 소프트 한계값 아래에 있습니다." );
DEF(0x01, 0x03, 0x7D,0,2, "TCP가 X의 높은 소프트 한계 초과", "공구 중앙 위치가 X 높은 소프트 제한 값을 초과합니다." );
DEF(0x01, 0x03, 0x7E,0,2, "TCP가 Y의 낮은 소프트 한계 미만", "공구 중심 위치가 Y 하한 소프트 한계값 아래에 있습니다." );
DEF(0x01, 0x03, 0x7F,0,2, "TCP가 Y의 높은 소프트 한계 초과", "공구 중앙 위치가 Y 높은 소프트 제한 값을 초과합니다." );
DEF(0x01, 0x03, 0x80,0,2, "TCP가 Z의 낮은 소프트 한계 미만", "공구 중심 위치가 Z 하한 소프트 한계값 아래에 있습니다." );
DEF(0x01, 0x03, 0x81,0,2, "TCP가 Z의 높은 소프트 한계 초과", "공구 중앙 위치가 Z 높은 소프트 제한 값을 초과합니다." );
DEF(0x01, 0x03, 0x82,0,2, "TCP가 반경의 낮은 소프트 제한 미만", "공구 중앙 위치가 반지름의 낮은 소프트 제한 값 아래에 있습니다." );
DEF(0x01, 0x03, 0x83,0,2, "TCP가 반경의 높은 소프트 한계 초과", "공구 중심 위치가 반지름의 높은 소프트 제한 값을 초과합니다." );
DEF(0x01, 0x03, 0x84,0,2, "TL SET 명령 오류", "TL SET 명령 오류입니다");
DEF(0x01, 0x03, 0x85,0,2, "TL START 명령 오류", "TL START 명령 오류입니다");

// Operation error - function 0x04
DEF(0x01, 0x04, 0x10,1,3, "읽기 드라이버 1 인코더 오류", "읽기 드라이버 1 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x11,1,3, "읽기 드라이버 2 인코더 오류", "읽기 드라이버 2 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x12,1,3, "읽기 드라이버 3 인코더 오류", "읽기 드라이버 3 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x13,1,3, "읽기 드라이버 4 인코더 오류", "읽기 드라이버 4 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x14,1,3, "읽기 드라이버 5 인코더 오류", "읽기 드라이버 5 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x15,1,3, "읽기 드라이버 6 인코더 오류", "읽기 드라이버 6 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x16,1,3, "드라이버 1에 데이터 쓰기 오류", "드라이버 1에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x17,1,3, "드라이버 2에 데이터 쓰기 오류", "드라이버 2에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x18,1,3, "드라이버 3에 데이터 쓰기 오류", "드라이버 3에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x19,1,3, "드라이버 4에 데이터 쓰기 오류", "드라이버 4에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x1A,1,3, "드라이버 5에 데이터 쓰기 오류", "드라이버 5에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x1B,1,3, "드라이버 6에 데이터 쓰기 오류", "드라이버 6에 데이터 쓰기가 비정상입니다." );
DEF(0x01, 0x04, 0x1C,1,3, "클리어 드라이버 1 인코더 오류", "클리어 드라이버 1 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x1D,1,3, "클리어 드라이버 2 인코더 오류", "클리어 드라이버 2 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x1E,1,3, "클리어 드라이버 3 인코더 오류", "클리어 드라이버 3 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x1F,1,3, "클리어 드라이버 4 인코더 오류", "클리어 드라이버 4 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x20,1,3, "클리어 드라이버 5 인코더 오류", "클리어 드라이버 5 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x21,1,3, "클리어 드라이버 6 인코더 오류", "클리어 드라이버 6 인코더가 비정상입니다." );
DEF(0x01, 0x04, 0x30,0,1, "시작 위치 편각 오류", "시작 위치 편각 이상입니다." );
DEF(0x01, 0x04, 0x31,0,1, "A1 편각 오류", "A1편각은 이상입니다." );
DEF(0x01, 0x04, 0x32,0,1, "A2 편각 오류", "A2편각은 이상입니다." );
DEF(0x01, 0x04, 0x33,0,1, "A3 편각 오류", "A3편각은 이상입니다." );
DEF(0x01, 0x04, 0x34,0,1, "A4 편각 오류", "A4편각은 이상입니다." );
DEF(0x01, 0x04, 0x35,0,1, "A5 편각 오류", "A5편각은 이상입니다." );
DEF(0x01, 0x04, 0x36,0,1, "A6 편각 오류", "A6편각은 이상입니다." );
DEF(0x01, 0x04, 0x37,0,1, "E1 편각 오류", "E1편각은 이상입니다." );
DEF(0x01, 0x04, 0x38,0,1, "E2 편각 오류", "E2편각은 이상입니다." );
DEF(0x01, 0x04, 0x39,0,1, "E3 편각 오류", "E3편각은 이상입니다." );
DEF(0x01, 0x04, 0x40,0,1, "RSR(&NUM) 파일 없음", "RSR(&NUM) 파일이 없습니다." );
DEF(0x01, 0x04, 0x41,0,1, "PNS(&NUM) 파일 없음", "PNS(&NUM) 파일이 없습니다." );
DEF(0x01, 0x04, 0x50,0,1, "ISR 지연 오버플로", "ISR 지연 스택 오버플로입니다." );
DEF(0x01, 0x04, 0x51,0,2, "모션 명령 대기열 오버플로", "모션 명령 대기열이 오버플로되었습니다." );
DEF(0x01, 0x04, 0x52,0,2, "조그 대기열 오버플로", "조그 대기열 오버플로입니다." );
DEF(0x01, 0x04, 0x53,0,2, "보간 버퍼 오버플로", "보간 버퍼 오버플로입니다." );
DEF(0x01, 0x04, 0x60,-1,2, "시간 설정 수정", "시간 설정을 수정합니다." );
DEF(0x01, 0x04, 0x61,-1,2, "NTP 설정 수정", "NTP 설정을 수정합니다." );
DEF(0x01, 0x04, 0x70,0,2, "연속 회전이 비활성화됨", "연속 회전이 비활성화되었습니다." );
DEF(0x01, 0x04, 0x71,-1,2, "토크 데이터 기록 한계 초과", "토크 데이터 기록 한계가 초과되었습니다." );
DEF(0x01, 0x04, 0x72,0,2, "SET LATCH PARAM 명령 오류", "SET LATCH PARAM 명령 오류입니다." );
DEF(0x01, 0x04, 0x73,0,2, "LATCH START 명령 오류", "LATCH START 명령 오류입니다." );
DEF(0x01, 0x04, 0x74,0,2, "GET LATCH RESULT 명령 오류", "GET LATCH RESULT 명령 오류입니다." );
DEF(0x01, 0x04, 0x75,0,2, "LATCH END 명령 오류", "LATCH END 명령 오류입니다." );

// IO and communication error - function 0x05
DEF(0x01, 0x05, 0x10,1,3, "TP 연결 오류", "티치 펜던트 연결 오류입니다." );
DEF(0x01, 0x05, 0x20,1,3, "RIO 연결 오류", "로봇 IO 연결 오류입니다." );
DEF(0x01, 0x05, 0x21,1,3, "RIO 연결 끊김", "로봇 IO 연결을 끊어졌습니다." );
DEF(0x01, 0x05, 0x30,0,3, "네트워크 연결 끊김", "네트워크 연결을 끊어졌습니다." );
DEF(0x01, 0x05, 0x31,0,3, "네트워크 연결 실패", "네트워크 연결에 실패했습니다." );
DEF(0x01, 0x05, 0x32,0,3, "서버 열기 실패", "서버를 열지 못했습니다." );
DEF(0x01, 0x05, 0x33,0,3, "서버 닫힘", "서버에서 연결을 닫았습니다." );
DEF(0x01, 0x05, 0x34,0,3, "네트워크 포트 설정 오류", "네트워크 포트 설정 오류입니다" );
DEF(0x01, 0x05, 0x35,0,3, "네트워크 클라이언트 연결 끊기 타임아웃", "네트워크 클라이언트 연결 끊기 타임아웃입니다" );
DEF(0x01, 0x05, 0x36,0,3, "필드버스 연결 실패", "필드버스 채널 1을 열지 못했습니다." );
DEF(0x01, 0x05, 0x37,0,3, "필드버스 연결 실패", "필드버스 채널 2을 열지 못했습니다." );
DEF(0x01, 0x05, 0x38,0,3, "필드버스 연결 실패", "필드버스 채널1 통신 오류입니다." );
DEF(0x01, 0x05, 0x39,0,3, "필드버스 연결 실패", "필드버스 채널2 통신 오류입니다." );
DEF(0x01, 0x05, 0x40,0,3, "필드버스 연결 실패", "필드버스 채널1 연결 타임아웃입니다." );
DEF(0x01, 0x05, 0x41,0,3, "필드버스 연결 실패", "필드버스 채널2 연결 타임아웃입니다." );
DEF(0x01, 0x05, 0x42,1,3, "직렬 IO 연결 끊김", "직렬 IO 연결이 끊었습니다." );
DEF(0x01, 0x05, 0x50,0,3, "용접기 통신 오류", "용접기 통신 오류입니다." );
DEF(0x01, 0x05, 0x51,1,3, "펄스 번호가 한계를 벗어남", "펄스 번호가 한계를 벗어났습니다." );      
DEF(0x01, 0x05, 0x52,0,3, "직렬 포트 열기 오류", "직렬 포트 열기 오류입니다." );
DEF(0x01, 0x05, 0x60,0,2, "Modbus RTU client open 명령 오류", "Modbus RTU client open 명령 오류입니다." );
DEF(0x01, 0x05, 0x61,0,2, "Modbus TCP client open 명령 오류", "Modbus TCP client open 명령 오류입니다." );
DEF(0x01, 0x05, 0x62,0,2, "Modbus read discrete input 명령 오류", "Modbus client read discrete input 명령 오류입니다." );
DEF(0x01, 0x05, 0x63,0,2, "Modbus read coil 명령 오류", "Modbus client read coil 명령 오류입니다." );
DEF(0x01, 0x05, 0x64,0,2, "Modbus write coil 명령 오류", "Modbus client write coil 명령 오류입니다." );
DEF(0x01, 0x05, 0x65,0,2, "Modbus read input register 명령 오류", "Modbus client read input register 명령 오류입니다." );
DEF(0x01, 0x05, 0x66,0,2, "Modbus read holding register 명령 오류", "Modbus client read holding register 명령 오류입니다." );s
DEF(0x01, 0x05, 0x67,0,2, "Modbus write holding register 명령 오류", "Modbus client write holding register 명령 오류입니다." );
                                                                               
// Operator error - function 0x06
DEF(0x01, 0x06, 0x10,0,2, "Motion delay 명령 오류", "모션 지연 명령 이상입니다." );
DEF(0x01, 0x06, 0x11,0,2, "Acc set 명령 오류", "가속 설정 명령 이상입니다." );
DEF(0x01, 0x06, 0x12,0,2, "PTP motion 명령 오류", "PTP 모션 명령 이상입니다." );
DEF(0x01, 0x06, 0x13,0,2, "Cir motion 명령 오류", "서클 모션 명령 이상입니다." );
DEF(0x01, 0x06, 0x14,0,2, "Lin motion 명령 오류", "라인 모션 명령 이상입니다." );
DEF(0x01, 0x06, 0x15,0,2, "Feedspeed 설정 명령 오류", "공급 속도 설정 명령 이상입니다." );
DEF(0x01, 0x06, 0x16,0,2, "경로 오류", "경로 이상입니다." );
DEF(0x01, 0x06, 0x17,0,2, "컨베이어 추적 가속 설정 오류", "컨베이어 추적 가속 설정 오류입니다." );
DEF(0x01, 0x06, 0x18,0,2, "컨베이어 픽 가속 설정 오류", "컨베이어 픽 가속 설정 오류입니다." );
DEF(0x01, 0x06, 0x19,0,2, "평활 모션 활성화 오류", "평활 모션 활성화 오류입니다." );
DEF(0x01, 0x06, 0x1A,0,2, "평활 모션 비활성화 오류", "평활 모션 비활성화 오류입니다." );
DEF(0x01, 0x06, 0x20,0,2, "카운터 인덱스 오류", "카운터 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x21,0,2, "타이머 인덱스 오류", "타이머 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x22,0,2, "카운터 정지 번호 오류", "카운터 정지 번호 이상입니다." );
DEF(0x01, 0x06, 0x23,0,2, "DI 인덱스 오류", "DI 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x24,0,2, "DO 인덱스 오류", "DO 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x25,0,2, "RI 인덱스 오류", "RI 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x26,0,2, "RO 인덱스 오류", "RO 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x27,0,2, "VI 인덱스 오류", "VI 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x28,0,2, "VO 인덱스 오류", "VO 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x29,0,2, "SI 인덱스 오류", "SI 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x2A,0,2, "SO 인덱스 오류", "SO 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x2B,0,2, "SRR 인덱스 오류", "SRR 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x2C,0,2, "SRW 인덱스 오류", "SRW 인덱스 이상입니다." );
DEF(0x01, 0x06, 0x30,0,2, "DI 설정할 수 없음", "DI 설정할 수 없습니다" );
DEF(0x01, 0x06, 0x31,0,2, "RI 설정할 수 없음", "RI 설정할 수 없습니다" );
DEF(0x01, 0x06, 0x32,0,2, "SI 설정할 수 없음", "SI 설정할 수 없습니다" );
DEF(0x01, 0x06, 0x33,0,2, "SO 설정할 수 없음", "SO 설정할 수 없습니다" );
DEF(0x01, 0x06, 0x34,0,2, "SRR 설정할 수 없음", "SRR 설정할 수 없습니다" );
DEF(0x01, 0x06, 0x35,0,2, "SRW 값 오류", "SRW 값이 이상입니다." );
DEF(0x01, 0x06, 0x36,0,2, "필드버스 연결 끊김", "FieldBus 슬롯1의 연결이 끊어졌습니다." );
DEF(0x01, 0x06, 0x37,0,2, "필드버스 연결 끊김", "FieldBus 슬롯2의 연결이 끊어졌습니다." );
DEF(0x01, 0x06, 0x40,0,2, "MI 인덱스 오류", "MI 인덱스 오류" );
DEF(0x01, 0x06, 0x41,0,2, "MO 인덱스 오류", "MO 인덱스 오류" );
DEF(0x01, 0x06, 0x42,0,2, "MI 설정할 수 없음", "MI 설정할 수 없음" );
DEF(0x01, 0x06, 0x60,0,2, "모션을 중지할 입력이 없음", "모션을 중지할 입력이 없습니다." );
DEF(0x01, 0x06, 0x70,0,2, "위빙 모션 오류", "위빙 진동수가 범위를 벗어났습니다." );
DEF(0x01, 0x06, 0x71,0,2, "위빙 모션 오류", "위빙 체류 시간이 범위를 벗어났습니다." );
DEF(0x01, 0x06, 0x72,0,2, "위빙 모션 오류", "위빙 모드 오류입니다" );
DEF(0x01, 0x06, 0x73,1,3, "위빙 모션 오류", "위빙 가속이 너무 빠릅니다." );
DEF(0x01, 0x06, 0x74,1,3, "위빙 모션 오류", "위빙 가속이 너무 느립니다." );
DEF(0x01, 0x06, 0x75,1,3, "위빙 모션 오류", "위빙 평면 오류입니다" );

// Extra Axis - function 0x07
DEF(0x01, 0x07, 0x10,0,3, "E1 축이 팔로잉 오류", "E1 축 팔로잉 오류가 한계를 초과했습니다." );
DEF(0x01, 0x07, 0x11,0,3, "E2 축이 팔로잉 오류", "E2 축 팔로잉 오류가 한계를 초과했습니다." );
DEF(0x01, 0x07, 0x12,0,3, "E3 축이 팔로잉 오류", "E3 축 팔로잉 오류가 한계를 초과했습니다." );
DEF(0x01, 0x07, 0x13,0,2, "E1 축 위치가 한계를 초과함", "E1 축 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x14,0,2, "E1 축 위치가 한계를 초과함", "E1 축 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x15,0,2, "E2 축 위치가 한계를 초과함", "E2 축 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x16,0,2, "E2 축 위치가 한계를 초과함", "E2 축 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x17,0,2, "E3 축 위치가 한계를 초과함", "E3 축 위치가 양의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x18,0,2, "E3 축 위치가 한계를 초과함", "E3 축 위치가 음의 한계를 초과합니다." );
DEF(0x01, 0x07, 0x19,0,2, "E1 축 클리어 인코더 오류", "E1 축 클리어 인코더 오류입니다." );
DEF(0x01, 0x07, 0x1A,0,2, "E2 축 클리어 인코더 오류", "E2 축 클리어 인코더 오류입니다." );
DEF(0x01, 0x07, 0x1B,0,2, "E3 축 클리어 인코더 오류", "E3 축 클리어 인코더 오류입니다." );

// Conveyor tracking error - function 0x08
DEF(0x01, 0x08, 0x10,0,2, "카메라 연결 실패", "카메라에 연결하지 못했습니다." );
DEF(0x01, 0x08, 0x11,0,2, "카메라 연결 이상", "카메라 연결에 이상이 있습니다." );
DEF(0x01, 0x08, 0x12,0,2, "카메라 연결 끊기 실패", "카메라 연결이 끊어지지 않습니다." );
DEF(0x01, 0x08, 0x13,0,2, "Pick 명령 오류", "Pick 명령 오류입니다." );
DEF(0x01, 0x08, 0x14,0,2, "Place 명령 오류", "Place 명령 오류입니다." );
DEF(0x01, 0x08, 0x15,0,2, "컨베이어 인코더 클리어 오류", "컨베이어 인코더 클리어 오류입니다." );
DEF(0x01, 0x08, 0x16,0,2, "래치 소스 설정 오류", "래치 소스 설정 오류입니다." );
DEF(0x01, 0x08, 0x17,0,2, "Start cnv 명령 오류", "켄베이어 시작 명령 오류입니다." );
DEF(0x01, 0x08, 0x18,0,2, "인코더 수 읽기 오류", "인코더 수 읽기 오류입니다." );
DEF(0x01, 0x08, 0x19,0,2, "클리어 플레이스 데이터 오류", "클리어 플레이스 데이터 오류입니다." );
DEF(0x01, 0x08, 0x1A,0,2, "CNV OBJECT 설정할 수 없음", "CNV OBJECT 설정할 수 없습니다" );
DEF(0x01, 0x08, 0x1B,0,2, "CNV FULL 설정할 수 없음", "CNV FULL 설정할 수 없습니다" );
DEF(0x01, 0x08, 0x1C,0,2, "CNV EMPTY 설정할 수 없음", "CNV EMPTY 설정할 수 없습니다" );
DEF(0x01, 0x08, 0x1D,0,2, "추적 데이터 가져오기 오류", "추적 데이터를 가져오는 동안 오류가 발생했습니다." );
DEF(0x01, 0x08, 0x1E,0,2, "인코더 래치 오류", "인코더 래치 값이 일치하지 않습니다." );

// User define alarm - function 0x09

// Dio setting alarm - function 0x0A

// Pay money function error - function 0x0B
DEF(0x01, 0x0B, 0x10,0,2, "HRSK 라이선스가 없음", "HRSK 라이센스가 없습니다." );
DEF(0x01, 0x0B, 0x11,0,2, "필드버스 라이선스가 없음", "필드버스 라이선스가 없습니다." );
DEF(0x01, 0x0B, 0x12,0,2, "외부축 라이선스가 없음 ", "외부축 라이선스가 없습니다." );
DEF(0x01, 0x0B, 0x13,0,2, "외부 TCP 라이선스가 없음", "외부 TCP 라이선스가 없습니다." );
DEF(0x01, 0x0B, 0x14,0,2, "Continuous Turn 라이선스가 없음", "Continuous Turn 라이선스가 없습니다." );

// Weld function error 0x0C
DEF(0x01, 0x0C, 0x10,1,3, "아크 온 오류", "아크 온 오류입니다." );
DEF(0x01, 0x0C, 0x11,1,3, "용접 공구가 준비되지 않음", "용접 공구가 준비되지 않습니다." );
DEF(0x01, 0x0C, 0x12,1,3, "용접 와이어 스틱", "와이어 스틱입니다." );
DEF(0x01, 0x0C, 0x13,1,3, "가스 없음", "가스가 없습니다." );
DEF(0x01, 0x0C, 0x14,1,3, "용접 물이 없음", "용접 물이 없습니다." );
DEF(0x01, 0x0C, 0x15,1,3, "공작물 터치", "공작물이 접촉했습니다." );
DEF(0x01, 0x0C, 0x16,1,3, "안전 제한 활성화되지 않음", "안전 제한 활성화되지 않습니다." );
DEF(0x01, 0x0C, 0x17,1,3, "충격 방지 알람", "충격 방지 알람입니다." );

DEF(0x01, 0x0C, 0x20,1,3, "아크 탐지", "아크 탐지합니다." );
DEF(0x01, 0x0C, 0x21,1,3, "터치 감지됨", "터치가 감지되었습니다." );
DEF(0x01, 0x0C, 0x22,1,3, "가스 이상", "가스 이상입니다." );
DEF(0x01, 0x0C, 0x23,1,3, "용접 와이어 오류", "와이어 오류입니다." );
DEF(0x01, 0x0C, 0x24,1,3, "용접 물이 오류", "용접 물이 오류입니다." );
DEF(0x01, 0x0C, 0x25,1,3, "인버터 오류", "인버터 오류입니다." );
DEF(0x01, 0x0C, 0x26,1,3, "와이어 스틱", "와이어 스틱입니다." );
DEF(0x01, 0x0C, 0x27,1,3, "DeviceNet 고장", "DeviceNet 고장입니다." );
DEF(0x01, 0x0C, 0x28,1,3, "확인 문자가 없는 프로세스 선택", "프로세스 선택에는 승인 문자가 없습니다." );
DEF(0x01, 0x0C, 0x29,1,3, "한계 오류", "한계 오류입니다." );
DEF(0x01, 0x0C, 0x2A,1,3, "용접이 완료되지 않음", "용접이 완료되지 않았습니다." );
DEF(0x01, 0x0C, 0x2B,1,3, "Busy rep", "Busy rep" );
DEF(0x01, 0x0C, 0x2C,1,3, "가스 퍼지 켜기", "가스를 퍼지합니다." );
DEF(0x01, 0x0C, 0x2D,1,3, "활성 피드 헤드", "활성 피드 헤드입니다." );
DEF(0x01, 0x0C, 0x2E,1,3, "토글 비트", "비트를 토글합니다." );
DEF(0x01, 0x0C, 0x2F,1,3, "속성 응답", "속성 응답입니다." );

DEF(0x01, 0x0C, 0x30,1,3, "용접 명령 타임아웃", "용접 명령 타임아웃입니다." );
DEF(0x01, 0x0C, 0x31,1,3, "횃불 충돌", "횃불이 충돌했습니다." );
DEF(0x01, 0x0C, 0x32,1,3, "용접 다운 경사 오류", "용접 다운 경사 오류입니다." );

// Data Base error - function 0x0D
DEF(0x01, 0x0D, 0x10,1,3, "데이터 베이스 버전 오류", "데이터 베이스 버전 오류입니다." );

// SIO Default index error - function 0x0E
DEF(0x01, 0x0E, 0x10,0,3, "SIO 기본 인덱스 오류", "SIO 기본 인덱스 오류입니다." );

/*
*  HIWIN Robot controller - device 0x02
*/

// Safety input - function 0x01
DEF(0x02, 0x01, 0x10,1,5, "비상입력", "비상입력입니다." );
DEF(0x02, 0x01, 0x11,0,1, "활성화 스위치가 다운됨", "활성화 스위치가 다운되었습니다." );

// Hardware error - function 0x02
DEF(0x02, 0x02, 0x10,1,3, "드라이브 브레이크 트립", "드라이브 브레이크 트립" );
DEF(0x02, 0x02, 0x11,1,3, "모터 브레이크 신호 없음", "모터 브레이크 신호가 없습니다." );

/*
*  Axis amplifier - device 0x03
*/

// Axis 1 - function 0x01
DEF(0x03, 0x01, 0x21,2,3, "A1 오류", "축 1이 과전류입니다." );
DEF(0x03, 0x01, 0x25,1,3, "A1 오류", "축 1 STO입니다." );
DEF(0x03, 0x01, 0x26,2,3, "A1 오류", "축 1 안전 토크 오프 오류입니다." );
DEF(0x03, 0x01, 0x27,2,3, "A1 오류", "축 1 단일 STO입니다." );
DEF(0x03, 0x01, 0x30,2,3, "A1 오류", "축 1 전류 컨트롤 오류입니다." );
DEF(0x03, 0x01, 0x31,2,3, "A1 오류", "축 1 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x01, 0x32,2,3, "A1 오류", "축 1 HFLT 불일치 오류입니다." );
DEF(0x03, 0x01, 0x33,2,3, "A1 오류", "축 1 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x01, 0x34,2,3, "A1 오류", "축 1 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x01, 0x35,2,3, "A1 오류", "축 1 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x01, 0x36,2,3, "A1 오류", "축 1 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x01, 0x37,2,3, "A1 오류", "축 1 팬 고장 오류입니다." );
DEF(0x03, 0x01, 0x38,2,3, "A1 오류", "축 1 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x01, 0x41,1,3, "A1 오류", "축 1이 오버로드됩니다." );
DEF(0x03, 0x01, 0x43,1,3, "A1 오류", "축 1 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x01, 0x45,1,3, "A1 오류", "축 1 과속입니다." );
DEF(0x03, 0x01, 0x51,1,3, "A1 오류", "축 1 앰프 열 이상입니다." );
DEF(0x03, 0x01, 0x52,1,3, "A1 오류", "축 1 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x01, 0x53,1,3, "A1 오류", "축 1 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x01, 0x58,1,3, "A1 오류", "축 1 모터가 과열되었습니다." );
DEF(0x03, 0x01, 0x61,1,3, "A1 오류", "축 1 과전압입니다." );
DEF(0x03, 0x01, 0x62,1,3, "A1 오류", "축 1 저전압입니다." );
DEF(0x03, 0x01, 0x71,1,3, "A1 오류", "축 1은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x01, 0x72,1,3, "A1 오류", "축 1 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x01, 0x81,2,3, "A1 오류", "축 1 인코더를 분리합니다." );
DEF(0x03, 0x01, 0x84,2,3, "A1 오류", "축 1 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x01, 0x85,2,3, "A1 오류", "축 1 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x01, 0x87,2,3, "A1 오류", "축 1 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x01, 0xA1,2,3, "A1 오류", "축 1 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x01, 0xA3,2,3, "A1 오류", "축 1 인코더 과속입니다." );
DEF(0x03, 0x01, 0xA5,2,3, "A1 오류", "축 1 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x01, 0xA6,2,3, "A1 오류", "축 1 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x01, 0xA9,2,3, "A1 오류", "축 1 인코더가 과열되었습니다." );
DEF(0x03, 0x01, 0xAB,2,3, "A1 오류", "축 1 인코더 오류입니다." );
DEF(0x03, 0x01, 0xC1,0,3, "A1 오류", "축 1 속도가 한계를 초과합니다." );
DEF(0x03, 0x01, 0xD1,2,3, "A1 오류", "축 1 위치 오류가 너무 큽니다." );
DEF(0x03, 0x01, 0xE1,2,3, "A1 오류", "축 1 EEPROM 이상입니다." );
DEF(0x03, 0x01, 0xE2,2,3, "A1 오류", "축 1 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x01, 0xEF,2,3, "A1 오류", "축 1이 일치하지 않습니다." );
DEF(0x03, 0x01, 0xF3,1,3, "A1 오류", "축 1 앰프 오류입니다." );
DEF(0x03, 0x01, 0xF4,1,3, "A1 오류", "축 1의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x01, 0xF5,2,3, "A1 오류", "축 1 모터가 분리됩니다." );
DEF(0x03, 0x01, 0xF6,2,3, "A1 오류", "축 1 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x01, 0xF7,2,3, "A1 오류", "축 1 홀 센서 오류입니다." );
DEF(0x03, 0x01, 0xF8,2,3, "A1 오류", "축 1 홀 위상 오류입니다." );
DEF(0x03, 0x01, 0xF9,-1,1, "A1 오류", "축 1 과부하 경고입니다." );
DEF(0x03, 0x01, 0xFA,-1,1, "A1 오류", "축 1 앰프 과열 경고입니다." );
DEF(0x03, 0x01, 0xFB,-1,1, "A1 오류", "축 1이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x01, 0xFC,-1,1, "A1 오류", "축 1이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x01, 0xFD,-1,1, "A1 오류", "축 1 메인 회로가 충전 중입니다." );
DEF(0x03, 0x01, 0xFE,-1,1, "A1 오류", "축 1 배터리가 부족합니다." );
DEF(0x03, 0x01, 0xFF,2,4, "A1 오류", "축 1 배터리가 비어 있습니다." );

// Axis 2 - function 0x02
DEF(0x03, 0x02, 0x21,2,3, "A2 오류", "축 2이 과전류입니다." );
DEF(0x03, 0x02, 0x25,1,3, "A2 오류", "축 2 STO입니다." );
DEF(0x03, 0x02, 0x26,2,3, "A2 오류", "축 2 안전 토크 오프 오류입니다." );
DEF(0x03, 0x02, 0x27,2,3, "A2 오류", "축 2 단일 STO입니다." );
DEF(0x03, 0x02, 0x30,2,3, "A2 오류", "축 2 전류 컨트롤 오류입니다." );
DEF(0x03, 0x02, 0x31,2,3, "A2 오류", "축 2 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x02, 0x32,2,3, "A2 오류", "축 2 HFLT 불일치 오류입니다." );
DEF(0x03, 0x02, 0x33,2,3, "A2 오류", "축 2 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x02, 0x34,2,3, "A2 오류", "축 2 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x02, 0x35,2,3, "A2 오류", "축 2 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x02, 0x36,2,3, "A2 오류", "축 2 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x02, 0x37,2,3, "A2 오류", "축 2 팬 고장 오류입니다." );
DEF(0x03, 0x02, 0x38,2,3, "A2 오류", "축 2 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x02, 0x41,1,3, "A2 오류", "축 2이 오버로드됩니다." );
DEF(0x03, 0x02, 0x43,1,3, "A2 오류", "축 2 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x02, 0x45,1,3, "A2 오류", "축 2 과속입니다." );
DEF(0x03, 0x02, 0x51,1,3, "A2 오류", "축 2 앰프 열 이상입니다." );
DEF(0x03, 0x02, 0x52,1,3, "A2 오류", "축 2 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x02, 0x53,1,3, "A2 오류", "축 2 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x02, 0x58,1,3, "A2 오류", "축 2 모터가 과열되었습니다." );
DEF(0x03, 0x02, 0x61,1,3, "A2 오류", "축 2 과전압입니다." );
DEF(0x03, 0x02, 0x62,1,3, "A2 오류", "축 2 저전압입니다." );
DEF(0x03, 0x02, 0x71,1,3, "A2 오류", "축 2은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x02, 0x72,1,3, "A2 오류", "축 2 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x02, 0x81,2,3, "A2 오류", "축 2 인코더를 분리합니다." );
DEF(0x03, 0x02, 0x84,2,3, "A2 오류", "축 2 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x02, 0x85,2,3, "A2 오류", "축 2 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x02, 0x87,2,3, "A2 오류", "축 2 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x02, 0xA1,2,3, "A2 오류", "축 2 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x02, 0xA3,2,3, "A2 오류", "축 2 인코더 과속입니다." );
DEF(0x03, 0x02, 0xA5,2,3, "A2 오류", "축 2 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x02, 0xA6,2,3, "A2 오류", "축 2 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x02, 0xA9,2,3, "A2 오류", "축 2 인코더가 과열되었습니다." );
DEF(0x03, 0x02, 0xAB,2,3, "A2 오류", "축 2 인코더 오류입니다." );
DEF(0x03, 0x02, 0xC1,0,3, "A2 오류", "축 2 속도가 한계를 초과합니다." );
DEF(0x03, 0x02, 0xD1,2,3, "A2 오류", "축 2 위치 오류가 너무 큽니다." );
DEF(0x03, 0x02, 0xE1,2,3, "A2 오류", "축 2 EEPROM 이상입니다." );
DEF(0x03, 0x02, 0xE2,2,3, "A2 오류", "축 2 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x02, 0xEF,2,3, "A2 오류", "축 2이 일치하지 않습니다." );
DEF(0x03, 0x02, 0xF3,1,3, "A2 오류", "축 2 앰프 오류입니다." );
DEF(0x03, 0x02, 0xF4,1,3, "A2 오류", "축 2의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x02, 0xF5,2,3, "A2 오류", "축 2 모터가 분리됩니다." );
DEF(0x03, 0x02, 0xF6,2,3, "A2 오류", "축 2 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x02, 0xF7,2,3, "A2 오류", "축 2 홀 센서 오류입니다." );
DEF(0x03, 0x02, 0xF8,2,3, "A2 오류", "축 2 홀 위상 오류입니다." );
DEF(0x03, 0x02, 0xF9,-1,1, "A2 오류", "축 2 과부하 경고입니다." );
DEF(0x03, 0x02, 0xFA,-1,1, "A2 오류", "축 2 앰프 과열 경고입니다." );
DEF(0x03, 0x02, 0xFB,-1,1, "A2 오류", "축 2이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x02, 0xFC,-1,1, "A2 오류", "축 2이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x02, 0xFD,-1,1, "A2 오류", "축 2 메인 회로가 충전 중입니다." );
DEF(0x03, 0x02, 0xFE,-1,1, "A2 오류", "축 2 배터리가 부족합니다." );
DEF(0x03, 0x02, 0xFF,2,4, "A2 오류", "축 2 배터리가 비어 있습니다." );

// Axis 3 - function 0x03
DEF(0x03, 0x03, 0x21,2,3, "A3 오류", "축 3이 과전류입니다." );
DEF(0x03, 0x03, 0x25,1,3, "A3 오류", "축 3 STO입니다." );
DEF(0x03, 0x03, 0x26,2,3, "A3 오류", "축 3 안전 토크 오프 오류입니다." );
DEF(0x03, 0x03, 0x27,2,3, "A3 오류", "축 3 단일 STO입니다." );
DEF(0x03, 0x03, 0x30,2,3, "A3 오류", "축 3 전류 컨트롤 오류입니다." );
DEF(0x03, 0x03, 0x31,2,3, "A3 오류", "축 3 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x03, 0x32,2,3, "A3 오류", "축 3 HFLT 불일치 오류입니다." );
DEF(0x03, 0x03, 0x33,2,3, "A3 오류", "축 3 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x03, 0x34,2,3, "A3 오류", "축 3 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x03, 0x35,2,3, "A3 오류", "축 3 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x03, 0x36,2,3, "A3 오류", "축 3 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x03, 0x37,2,3, "A3 오류", "축 3 팬 고장 오류입니다." );
DEF(0x03, 0x03, 0x38,2,3, "A3 오류", "축 3 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x03, 0x41,1,3, "A3 오류", "축 3이 오버로드됩니다." );
DEF(0x03, 0x03, 0x43,1,3, "A3 오류", "축 3 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x03, 0x45,1,3, "A3 오류", "축 3 과속입니다." );
DEF(0x03, 0x03, 0x51,1,3, "A3 오류", "축 3 앰프 열 이상입니다." );
DEF(0x03, 0x03, 0x52,1,3, "A3 오류", "축 3 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x03, 0x53,1,3, "A3 오류", "축 3 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x03, 0x58,1,3, "A3 오류", "축 3 모터가 과열되었습니다." );
DEF(0x03, 0x03, 0x61,1,3, "A3 오류", "축 3 과전압입니다." );
DEF(0x03, 0x03, 0x62,1,3, "A3 오류", "축 3 저전압입니다." );
DEF(0x03, 0x03, 0x71,1,3, "A3 오류", "축 3은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x03, 0x72,1,3, "A3 오류", "축 3 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x03, 0x81,2,3, "A3 오류", "축 3 인코더를 분리합니다." );
DEF(0x03, 0x03, 0x84,2,3, "A3 오류", "축 3 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x03, 0x85,2,3, "A3 오류", "축 3 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x03, 0x87,2,3, "A3 오류", "축 3 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x03, 0xA1,2,3, "A3 오류", "축 3 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x03, 0xA3,2,3, "A3 오류", "축 3 인코더 과속입니다." );
DEF(0x03, 0x03, 0xA5,2,3, "A3 오류", "축 3 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x03, 0xA6,2,3, "A3 오류", "축 3 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x03, 0xA9,2,3, "A3 오류", "축 3 인코더가 과열되었습니다." );
DEF(0x03, 0x03, 0xAB,2,3, "A3 오류", "축 3 인코더 오류입니다." );
DEF(0x03, 0x03, 0xC1,0,3, "A3 오류", "축 3 속도가 한계를 초과합니다." );
DEF(0x03, 0x03, 0xD1,2,3, "A3 오류", "축 3 위치 오류가 너무 큽니다." );
DEF(0x03, 0x03, 0xE1,2,3, "A3 오류", "축 3 EEPROM 이상입니다." );
DEF(0x03, 0x03, 0xE2,2,3, "A3 오류", "축 3 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x03, 0xEF,2,3, "A3 오류", "축 3이 일치하지 않습니다." );
DEF(0x03, 0x03, 0xF3,1,3, "A3 오류", "축 3 앰프 오류입니다." );
DEF(0x03, 0x03, 0xF4,1,3, "A3 오류", "축 3의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x03, 0xF5,2,3, "A3 오류", "축 3 모터가 분리됩니다." );
DEF(0x03, 0x03, 0xF6,2,3, "A3 오류", "축 3 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x03, 0xF7,2,3, "A3 오류", "축 3 홀 센서 오류입니다." );
DEF(0x03, 0x03, 0xF8,2,3, "A3 오류", "축 3 홀 위상 오류입니다." );
DEF(0x03, 0x03, 0xF9,-1,1, "A3 오류", "축 3 과부하 경고입니다." );
DEF(0x03, 0x03, 0xFA,-1,1, "A3 오류", "축 3 앰프 과열 경고입니다." );
DEF(0x03, 0x03, 0xFB,-1,1, "A3 오류", "축 3이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x03, 0xFC,-1,1, "A3 오류", "축 3이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x03, 0xFD,-1,1, "A3 오류", "축 3 메인 회로가 충전 중입니다." );
DEF(0x03, 0x03, 0xFE,-1,1, "A3 오류", "축 3 배터리가 부족합니다." );
DEF(0x03, 0x03, 0xFF,2,4, "A3 오류", "축 3 배터리가 비어 있습니다." );

// Axis 4 - function 0x04
DEF(0x03, 0x04, 0x21,2,3, "A4 오류", "축 4이 과전류입니다." );
DEF(0x03, 0x04, 0x25,1,3, "A4 오류", "축 4 STO입니다." );
DEF(0x03, 0x04, 0x26,2,3, "A4 오류", "축 4 안전 토크 오프 오류입니다." );
DEF(0x03, 0x04, 0x27,2,3, "A4 오류", "축 4 단일 STO입니다." );
DEF(0x03, 0x04, 0x30,2,3, "A4 오류", "축 4 전류 컨트롤 오류입니다." );
DEF(0x03, 0x04, 0x31,2,3, "A4 오류", "축 4 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x04, 0x32,2,3, "A4 오류", "축 4 HFLT 불일치 오류입니다." );
DEF(0x03, 0x04, 0x33,2,3, "A4 오류", "축 4 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x04, 0x34,2,3, "A4 오류", "축 4 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x04, 0x35,2,3, "A4 오류", "축 4 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x04, 0x36,2,3, "A4 오류", "축 4 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x04, 0x37,2,3, "A4 오류", "축 4 팬 고장 오류입니다." );
DEF(0x03, 0x04, 0x38,2,3, "A4 오류", "축 4 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x04, 0x41,1,3, "A4 오류", "축 4이 오버로드됩니다." );
DEF(0x03, 0x04, 0x43,1,3, "A4 오류", "축 4 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x04, 0x45,1,3, "A4 오류", "축 4 과속입니다." );
DEF(0x03, 0x04, 0x51,1,3, "A4 오류", "축 4 앰프 열 이상입니다." );
DEF(0x03, 0x04, 0x52,1,3, "A4 오류", "축 4 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x04, 0x53,1,3, "A4 오류", "축 4 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x04, 0x58,1,3, "A4 오류", "축 4 모터가 과열되었습니다." );
DEF(0x03, 0x04, 0x61,1,3, "A4 오류", "축 4 과전압입니다." );
DEF(0x03, 0x04, 0x62,1,3, "A4 오류", "축 4 저전압입니다." );
DEF(0x03, 0x04, 0x71,1,3, "A4 오류", "축 4은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x04, 0x72,1,3, "A4 오류", "축 4 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x04, 0x81,2,3, "A4 오류", "축 4 인코더를 분리합니다." );
DEF(0x03, 0x04, 0x84,2,3, "A4 오류", "축 4 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x04, 0x85,2,3, "A4 오류", "축 4 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x04, 0x87,2,3, "A4 오류", "축 4 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x04, 0xA1,2,3, "A4 오류", "축 4 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x04, 0xA3,2,3, "A4 오류", "축 4 인코더 과속입니다." );
DEF(0x03, 0x04, 0xA5,2,3, "A4 오류", "축 4 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x04, 0xA6,2,3, "A4 오류", "축 4 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x04, 0xA9,2,3, "A4 오류", "축 4 인코더가 과열되었습니다." );
DEF(0x03, 0x04, 0xAB,2,3, "A4 오류", "축 4 인코더 오류입니다." );
DEF(0x03, 0x04, 0xC1,0,3, "A4 오류", "축 4 속도가 한계를 초과합니다." );
DEF(0x03, 0x04, 0xD1,2,3, "A4 오류", "축 4 위치 오류가 너무 큽니다." );
DEF(0x03, 0x04, 0xE1,2,3, "A4 오류", "축 4 EEPROM 이상입니다." );
DEF(0x03, 0x04, 0xE2,2,3, "A4 오류", "축 4 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x04, 0xEF,2,3, "A4 오류", "축 4이 일치하지 않습니다." );
DEF(0x03, 0x04, 0xF3,1,3, "A4 오류", "축 4 앰프 오류입니다." );
DEF(0x03, 0x04, 0xF4,1,3, "A4 오류", "축 4의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x04, 0xF5,2,3, "A4 오류", "축 4 모터가 분리됩니다." );
DEF(0x03, 0x04, 0xF6,2,3, "A4 오류", "축 4 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x04, 0xF7,2,3, "A4 오류", "축 4 홀 센서 오류입니다." );
DEF(0x03, 0x04, 0xF8,2,3, "A4 오류", "축 4 홀 위상 오류입니다." );
DEF(0x03, 0x04, 0xF9,-1,1, "A4 오류", "축 4 과부하 경고입니다." );
DEF(0x03, 0x04, 0xFA,-1,1, "A4 오류", "축 4 앰프 과열 경고입니다." );
DEF(0x03, 0x04, 0xFB,-1,1, "A4 오류", "축 4이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x04, 0xFC,-1,1, "A4 오류", "축 4이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x04, 0xFD,-1,1, "A4 오류", "축 4 메인 회로가 충전 중입니다." );
DEF(0x03, 0x04, 0xFE,-1,1, "A4 오류", "축 4 배터리가 부족합니다." );
DEF(0x03, 0x04, 0xFF,2,4, "A4 오류", "축 4 배터리가 비어 있습니다." );

// Axis 5 - function 0x05
DEF(0x03, 0x05, 0x21,2,3, "A5 오류", "축 5이 과전류입니다." );
DEF(0x03, 0x05, 0x25,1,3, "A5 오류", "축 5 STO입니다." );
DEF(0x03, 0x05, 0x26,2,3, "A5 오류", "축 5 안전 토크 오프 오류입니다." );
DEF(0x03, 0x05, 0x27,2,3, "A5 오류", "축 5 단일 STO입니다." );
DEF(0x03, 0x05, 0x30,2,3, "A5 오류", "축 5 전류 컨트롤 오류입니다." );
DEF(0x03, 0x05, 0x31,2,3, "A5 오류", "축 5 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x05, 0x32,2,3, "A5 오류", "축 5 HFLT 불일치 오류입니다." );
DEF(0x03, 0x05, 0x33,2,3, "A5 오류", "축 5 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x05, 0x34,2,3, "A5 오류", "축 5 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x05, 0x35,2,3, "A5 오류", "축 5 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x05, 0x36,2,3, "A5 오류", "축 5 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x05, 0x37,2,3, "A5 오류", "축 5 팬 고장 오류입니다." );
DEF(0x03, 0x05, 0x38,2,3, "A5 오류", "축 5 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x05, 0x41,1,3, "A5 오류", "축 5이 오버로드됩니다." );
DEF(0x03, 0x05, 0x43,1,3, "A5 오류", "축 5 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x05, 0x45,1,3, "A5 오류", "축 5 과속입니다." );
DEF(0x03, 0x05, 0x51,1,3, "A5 오류", "축 5 앰프 열 이상입니다." );
DEF(0x03, 0x05, 0x52,1,3, "A5 오류", "축 5 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x05, 0x53,1,3, "A5 오류", "축 5 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x05, 0x58,1,3, "A5 오류", "축 5 모터가 과열되었습니다." );
DEF(0x03, 0x05, 0x61,1,3, "A5 오류", "축 5 과전압입니다." );
DEF(0x03, 0x05, 0x62,1,3, "A5 오류", "축 5 저전압입니다." );
DEF(0x03, 0x05, 0x71,1,3, "A5 오류", "축 5은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x05, 0x72,1,3, "A5 오류", "축 5 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x05, 0x81,2,3, "A5 오류", "축 5 인코더를 분리합니다." );
DEF(0x03, 0x05, 0x84,2,3, "A5 오류", "축 5 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x05, 0x85,2,3, "A5 오류", "축 5 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x05, 0x87,2,3, "A5 오류", "축 5 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x05, 0xA1,2,3, "A5 오류", "축 5 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x05, 0xA3,2,3, "A5 오류", "축 5 인코더 과속입니다." );
DEF(0x03, 0x05, 0xA5,2,3, "A5 오류", "축 5 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x05, 0xA6,2,3, "A5 오류", "축 5 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x05, 0xA9,2,3, "A5 오류", "축 5 인코더가 과열되었습니다." );
DEF(0x03, 0x05, 0xAB,2,3, "A5 오류", "축 5 인코더 오류입니다." );
DEF(0x03, 0x05, 0xC1,0,3, "A5 오류", "축 5 속도가 한계를 초과합니다." );
DEF(0x03, 0x05, 0xD1,2,3, "A5 오류", "축 5 위치 오류가 너무 큽니다." );
DEF(0x03, 0x05, 0xE1,2,3, "A5 오류", "축 5 EEPROM 이상입니다." );
DEF(0x03, 0x05, 0xE2,2,3, "A5 오류", "축 5 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x05, 0xEF,2,3, "A5 오류", "축 5이 일치하지 않습니다." );
DEF(0x03, 0x05, 0xF3,1,3, "A5 오류", "축 5 앰프 오류입니다." );
DEF(0x03, 0x05, 0xF4,1,3, "A5 오류", "축 5의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x05, 0xF5,2,3, "A5 오류", "축 5 모터가 분리됩니다." );
DEF(0x03, 0x05, 0xF6,2,3, "A5 오류", "축 5 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x05, 0xF7,2,3, "A5 오류", "축 5 홀 센서 오류입니다." );
DEF(0x03, 0x05, 0xF8,2,3, "A5 오류", "축 5 홀 위상 오류입니다." );
DEF(0x03, 0x05, 0xF9,-1,1, "A5 오류", "축 5 과부하 경고입니다." );
DEF(0x03, 0x05, 0xFA,-1,1, "A5 오류", "축 5 앰프 과열 경고입니다." );
DEF(0x03, 0x05, 0xFB,-1,1, "A5 오류", "축 5이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x05, 0xFC,-1,1, "A5 오류", "축 5이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x05, 0xFD,-1,1, "A5 오류", "축 5 메인 회로가 충전 중입니다." );
DEF(0x03, 0x05, 0xFE,-1,1, "A5 오류", "축 5 배터리가 부족합니다." );
DEF(0x03, 0x05, 0xFF,2,4, "A5 오류", "축 5 배터리가 비어 있습니다." );

// Axis 6 - function 0x06
DEF(0x03, 0x06, 0x21,2,3, "A6 오류", "축 6이 과전류입니다." );
DEF(0x03, 0x06, 0x25,1,3, "A6 오류", "축 6 STO입니다." );
DEF(0x03, 0x06, 0x26,2,3, "A6 오류", "축 6 안전 토크 오프 오류입니다." );
DEF(0x03, 0x06, 0x27,2,3, "A6 오류", "축 6 단일 STO입니다." );
DEF(0x03, 0x06, 0x30,2,3, "A6 오류", "축 6 전류 컨트롤 오류입니다." );
DEF(0x03, 0x06, 0x31,2,3, "A6 오류", "축 6 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0x06, 0x32,2,3, "A6 오류", "축 6 HFLT 불일치 오류입니다." );
DEF(0x03, 0x06, 0x33,2,3, "A6 오류", "축 6 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0x06, 0x34,2,3, "A6 오류", "축 6 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0x06, 0x35,2,3, "A6 오류", "축 6 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0x06, 0x36,2,3, "A6 오류", "축 6 CiA-402 호밍 오류입니다." );
DEF(0x03, 0x06, 0x37,2,3, "A6 오류", "축 6 팬 고장 오류입니다." );
DEF(0x03, 0x06, 0x38,2,3, "A6 오류", "축 6 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0x06, 0x41,1,3, "A6 오류", "축 6이 오버로드됩니다." );
DEF(0x03, 0x06, 0x43,1,3, "A6 오류", "축 6 재생 저항이 오버로드됩니다." );
DEF(0x03, 0x06, 0x45,1,3, "A6 오류", "축 6 과속입니다." );
DEF(0x03, 0x06, 0x51,1,3, "A6 오류", "축 6 앰프 열 이상입니다." );
DEF(0x03, 0x06, 0x52,1,3, "A6 오류", "축 6 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0x06, 0x53,1,3, "A6 오류", "축 6 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0x06, 0x58,1,3, "A6 오류", "축 6 모터가 과열되었습니다." );
DEF(0x03, 0x06, 0x61,1,3, "A6 오류", "축 6 과전압입니다." );
DEF(0x03, 0x06, 0x62,1,3, "A6 오류", "축 6 저전압입니다." );
DEF(0x03, 0x06, 0x71,1,3, "A6 오류", "축 6은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0x06, 0x72,1,3, "A6 오류", "축 6 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0x06, 0x81,2,3, "A6 오류", "축 6 인코더를 분리합니다." );
DEF(0x03, 0x06, 0x84,2,3, "A6 오류", "축 6 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0x06, 0x85,2,3, "A6 오류", "축 6 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0x06, 0x87,2,3, "A6 오류", "축 6 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0x06, 0xA1,2,3, "A6 오류", "축 6 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0x06, 0xA3,2,3, "A6 오류", "축 6 인코더 과속입니다." );
DEF(0x03, 0x06, 0xA5,2,3, "A6 오류", "축 6 인코더 단일 회전 오류입니다." );
DEF(0x03, 0x06, 0xA6,2,3, "A6 오류", "축 6 인코더 멀티턴 오류입니다." );
DEF(0x03, 0x06, 0xA9,2,3, "A6 오류", "축 6 인코더가 과열되었습니다." );
DEF(0x03, 0x06, 0xAB,2,3, "A6 오류", "축 6 인코더 오류입니다." );
DEF(0x03, 0x06, 0xC1,0,3, "A6 오류", "축 6 속도가 한계를 초과합니다." );
DEF(0x03, 0x06, 0xD1,2,3, "A6 오류", "축 6 위치 오류가 너무 큽니다." );
DEF(0x03, 0x06, 0xE1,2,3, "A6 오류", "축 6 EEPROM 이상입니다." );
DEF(0x03, 0x06, 0xE2,2,3, "A6 오류", "축 6 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0x06, 0xEF,2,3, "A6 오류", "축 6이 일치하지 않습니다." );
DEF(0x03, 0x06, 0xF3,1,3, "A6 오류", "축 6 앰프 오류입니다." );
DEF(0x03, 0x06, 0xF4,1,3, "A6 오류", "축 6의 소프트 열 도달 한계입니다." );
DEF(0x03, 0x06, 0xF5,2,3, "A6 오류", "축 6 모터가 분리됩니다." );
DEF(0x03, 0x06, 0xF6,2,3, "A6 오류", "축 6 앰프 위상 초기 오류입니다." );
DEF(0x03, 0x06, 0xF7,2,3, "A6 오류", "축 6 홀 센서 오류입니다." );
DEF(0x03, 0x06, 0xF8,2,3, "A6 오류", "축 6 홀 위상 오류입니다." );
DEF(0x03, 0x06, 0xF9,-1,1, "A6 오류", "축 6 과부하 경고입니다." );
DEF(0x03, 0x06, 0xFA,-1,1, "A6 오류", "축 6 앰프 과열 경고입니다." );
DEF(0x03, 0x06, 0xFB,-1,1, "A6 오류", "축 6이 재생성된 과부하 경고입니다." );
DEF(0x03, 0x06, 0xFC,-1,1, "A6 오류", "축 6이 전원을 감지하지 못했습니다." );
DEF(0x03, 0x06, 0xFD,-1,1, "A6 오류", "축 6 메인 회로가 충전 중입니다." );
DEF(0x03, 0x06, 0xFE,-1,1, "A6 오류", "축 6 배터리가 부족합니다." );
DEF(0x03, 0x06, 0xFF,2,4, "A6 오류", "축 6 배터리가 비어 있습니다." );

DEF(0x03, 0xE0, 0x01,0,3, "외부 축 번호 오류", "의부 축 번호 오류입니다." );
// Axis E1 - function 0xE1
DEF(0x03, 0xE1, 0x01,0,3, "E1 사용 안 함", "E1이 비활성화되었습니다." );
DEF(0x03, 0xE1, 0x21,2,3, "E1 오류", "축 E1 과전류입니다." );
DEF(0x03, 0xE1, 0x25,1,3, "E1 오류", "축 E1 STO입니다." );
DEF(0x03, 0xE1, 0x26,2,3, "E1 오류", "축 E1 안전 토크 꺼짐 오류입니다." );
DEF(0x03, 0xE1, 0x27,2,3, "E1 오류", "축 E1 단일 STO입니다." );
DEF(0x03, 0xE1, 0x30,2,3, "E1 오류", "축 E1 전류 컨트롤 오류입니다." );
DEF(0x03, 0xE1, 0x31,2,3, "E1 오류", "축 E1 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0xE1, 0x32,2,3, "E1 오류", "축 E1 HFLT 불일치 오류입니다." );
DEF(0x03, 0xE1, 0x33,2,3, "E1 오류", "축 E1 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0xE1, 0x34,2,3, "E1 오류", "축 E1 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0xE1, 0x35,2,3, "E1 오류", "축 E1 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0xE1, 0x36,2,3, "E1 오류", "축 E1 CiA-402 호밍 오류입니다." );
DEF(0x03, 0xE1, 0x37,2,3, "E1 오류", "축 E1 팬 고장 오류입니다." );
DEF(0x03, 0xE1, 0x38,2,3, "E1 오류", "축 E1 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0xE1, 0x41,1,3, "E1 오류", "축 E1이 오버로드됩니다." );
DEF(0x03, 0xE1, 0x43,1,3, "E1 오류", "축 E1 재생 저항이 오버로드됩니다." );
DEF(0x03, 0xE1, 0x45,1,3, "E1 오류", "축 E1 과속입니다." );
DEF(0x03, 0xE1, 0x51,1,3, "E1 오류", "축 E1 앰프 열 이상입니다." );
DEF(0x03, 0xE1, 0x52,1,3, "E1 오류", "축 E1 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0xE1, 0x53,1,3, "E1 오류", "축 E1 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0xE1, 0x58,1,3, "E1 오류", "축 E1 모터가 과열되었습니다." );
DEF(0x03, 0xE1, 0x61,1,3, "E1 오류", "축 E1 과전압입니다." );
DEF(0x03, 0xE1, 0x62,1,3, "E1 오류", "축 E1 저전압입니다." );
DEF(0x03, 0xE1, 0x71,1,3, "E1 오류", "축 E1은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0xE1, 0x72,1,3, "E1 오류", "축 E1 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0xE1, 0x81,2,3, "E1 오류", "축 E1 인코더를 분리합니다." );
DEF(0x03, 0xE1, 0x84,2,3, "E1 오류", "축 E1 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0xE1, 0x85,2,3, "E1 오류", "축 E1 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0xE1, 0x87,2,3, "E1 오류", "축 E1 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0xE1, 0xA1,2,3, "E1 오류", "축 E1 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0xE1, 0xA3,2,3, "E1 오류", "축 E1 인코더 과속입니다." );
DEF(0x03, 0xE1, 0xA5,2,3, "E1 오류", "축 E1 인코더 단일 회전 오류입니다." );
DEF(0x03, 0xE1, 0xA6,2,3, "E1 오류", "축 E1 인코더 멀티턴 오류입니다." );
DEF(0x03, 0xE1, 0xA9,2,3, "E1 오류", "축 E1 인코더가 과열되었습니다." );
DEF(0x03, 0xE1, 0xAB,2,3, "E1 오류", "축 E1 인코더 오류입니다." );
DEF(0x03, 0xE1, 0xC1,0,3, "E1 오류", "축 E1 속도가 한계를 초과합니다." );
DEF(0x03, 0xE1, 0xD1,2,3, "E1 오류", "축 E1 위치 오류가 너무 큽니다." );
DEF(0x03, 0xE1, 0xD2, 1, 4, "E1 오류", "축 E1이 양의 한계에 도달합니다." );
DEF(0x03, 0xE1, 0xD3, 1, 4, "E1 오류", "축 E1이 음의 한계에 도달합니다." );
DEF(0x03, 0xE1, 0xE1,2,3, "E1 오류", "축 E1 EEPROM 이상입니다." );
DEF(0x03, 0xE1, 0xE2,2,3, "E1 오류", "축 E1 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0xE1, 0xEF,2,3, "E1 오류", "축 E1이 일치하지 않습니다." );
DEF(0x03, 0xE1, 0xF1,1,3, "E1 오류", "축 E1 위치 확인 오류입니다." );
DEF(0x03, 0xE1, 0xF2,1,3, "E1 오류", "축 E1 서보 지연이 너무 큽니다." );
DEF(0x03, 0xE1, 0xF3,1,3, "E1 오류", "축 E1 앰프 오류입니다." );
DEF(0x03, 0xE1, 0xF4,1,3, "E1 오류", "축 E1의 소프트 열 도달 한계입니다." );
DEF(0x03, 0xE1, 0xF5,2,3, "E1 오류", "축 E1 모터가 분리됩니다." );
DEF(0x03, 0xE1, 0xF6,2,3, "E1 오류", "축 E1 앰프 위상 초기 오류입니다." );
DEF(0x03, 0xE1, 0xF7,2,3, "E1 오류", "축 E1 홀 센서 오류입니다." );
DEF(0x03, 0xE1, 0xF8,2,3, "E1 오류", "축 E1 홀 위상 오류입니다." );
DEF(0x03, 0xE1, 0xF9,-1,1, "E1 오류", "축 E1 과부하 경고입니다." );
DEF(0x03, 0xE1, 0xFA,-1,1, "E1 오류", "축 E1 앰프 과열 경고입니다." );
DEF(0x03, 0xE1, 0xFB,-1,1, "E1 오류", "축 E1이 재생성된 과부하 경고입니다." );
DEF(0x03, 0xE1, 0xFC,-1,1, "E1 오류", "축 E1이 전원을 감지하지 못했습니다." );
DEF(0x03, 0xE1, 0xFD,-1,1, "E1 오류", "축 E1 메인 회로가 충전 중입니다." );
DEF(0x03, 0xE1, 0xFE,-1,1, "E1 오류", "축 E1 배터리가 부족합니다." );
DEF(0x03, 0xE1, 0xFF,2,4, "E1 오류", "축 E1 배터리가 비어 있습니다." );

// Axis E2 - function 0xE2
DEF(0x03, 0xE2, 0x01,0,3, "E2 is disable", "E2이 비활성화되었습니다." );
DEF(0x03, 0xE2, 0x21,2,3, "E2 오류", "축 E2 과전류입니다." );
DEF(0x03, 0xE2, 0x25,1,3, "E2 오류", "축 E2 STO입니다." );
DEF(0x03, 0xE2, 0x26,2,3, "E2 오류", "축 E2 안전 토크 꺼짐 오류입니다." );
DEF(0x03, 0xE2, 0x27,2,3, "E2 오류", "축 E2 단일 STO입니다." );
DEF(0x03, 0xE2, 0x30,2,3, "E2 오류", "축 E2 전류 컨트롤 오류입니다." );
DEF(0x03, 0xE2, 0x31,2,3, "E2 오류", "축 E2 하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0xE2, 0x32,2,3, "E2 오류", "축 E2 HFLT 불일치 오류입니다." );
DEF(0x03, 0xE2, 0x33,2,3, "E2 오류", "축 E2 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0xE2, 0x34,2,3, "E2 오류", "축 E2 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0xE2, 0x35,2,3, "E2 오류", "축 E2 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0xE2, 0x36,2,3, "E2 오류", "축 E2 CiA-402 호밍 오류입니다." );
DEF(0x03, 0xE2, 0x37,2,3, "E2 오류", "축 E2 팬 고장 오류입니다." );
DEF(0x03, 0xE2, 0x38,2,3, "E2 오류", "축 E2 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0xE2, 0x41,1,3, "E2 오류", "축 E2이 오버로드됩니다." );
DEF(0x03, 0xE2, 0x43,1,3, "E2 오류", "축 E2 재생 저항이 오버로드됩니다." );
DEF(0x03, 0xE2, 0x45,1,3, "E2 오류", "축 E2 과속입니다." );
DEF(0x03, 0xE2, 0x51,1,3, "E2 오류", "축 E2 앰프 열 이상입니다." );
DEF(0x03, 0xE2, 0x52,1,3, "E2 오류", "축 E2 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0xE2, 0x53,1,3, "E2 오류", "축 E2 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0xE2, 0x58,1,3, "E2 오류", "축 E2 모터가 과열되었습니다." );
DEF(0x03, 0xE2, 0x61,1,3, "E2 오류", "축 E2 과전압입니다." );
DEF(0x03, 0xE2, 0x62,1,3, "E2 오류", "축 E2 저전압입니다." );
DEF(0x03, 0xE2, 0x71,1,3, "E2 오류", "축 E2은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0xE2, 0x72,1,3, "E2 오류", "축 E2 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0xE2, 0x81,2,3, "E2 오류", "축 E2 인코더를 분리합니다." );
DEF(0x03, 0xE2, 0x84,2,3, "E2 오류", "축 E2 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0xE2, 0x85,2,3, "E2 오류", "축 E2 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0xE2, 0x87,2,3, "E2 오류", "축 E2 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0xE2, 0xA1,2,3, "E2 오류", "축 E2 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0xE2, 0xA3,2,3, "E2 오류", "축 E2 인코더 과속입니다." );
DEF(0x03, 0xE2, 0xA5,2,3, "E2 오류", "축 E2 인코더 단일 회전 오류입니다." );
DEF(0x03, 0xE2, 0xA6,2,3, "E2 오류", "축 E2 인코더 멀티턴 오류입니다." );
DEF(0x03, 0xE2, 0xA9,2,3, "E2 오류", "축 E2 인코더가 과열되었습니다." );
DEF(0x03, 0xE2, 0xAB,2,3, "E2 오류", "축 E2 인코더 오류입니다." );
DEF(0x03, 0xE2, 0xC1,0,3, "E2 오류", "축 E2 속도가 한계를 초과합니다." );
DEF(0x03, 0xE2, 0xD1,2,3, "E2 오류", "축 E2 위치 오류가 너무 큽니다." );
DEF(0x03, 0xE2, 0xD2, 1, 4, "E2 오류", "축 E2이 양의 한계에 도달합니다." );
DEF(0x03, 0xE2, 0xD3, 1, 4, "E2 오류", "축 E2이 음의 한계에 도달합니다." );
DEF(0x03, 0xE2, 0xE1,2,3, "E2 오류", "축 E2 EEPROM 이상입니다." );
DEF(0x03, 0xE2, 0xE2,2,3, "E2 오류", "축 E2 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0xE2, 0xEF,2,3, "E2 오류", "축 E2이 일치하지 않습니다." );
DEF(0x03, 0xE2, 0xF1,1,3, "E2 오류", "축 E2 위치 확인 오류입니다." );
DEF(0x03, 0xE2, 0xF2,1,3, "E2 오류", "축 E2 서보 지연이 너무 큽니다." );
DEF(0x03, 0xE2, 0xF3,1,3, "E2 오류", "축 E2 앰프 오류입니다." );
DEF(0x03, 0xE2, 0xF4,1,3, "E2 오류", "축 E2의 소프트 열 도달 한계입니다." );
DEF(0x03, 0xE2, 0xF5,2,3, "E2 오류", "축 E2 모터가 분리됩니다." );
DEF(0x03, 0xE2, 0xF6,2,3, "E2 오류", "축 E2 앰프 위상 초기 오류입니다." );
DEF(0x03, 0xE2, 0xF7,2,3, "E2 오류", "축 E2 홀 센서 오류입니다." );
DEF(0x03, 0xE2, 0xF8,2,3, "E2 오류", "축 E2 홀 위상 오류입니다." );
DEF(0x03, 0xE2, 0xF9,-1,1, "E2 오류", "축 E2 과부하 경고입니다." );
DEF(0x03, 0xE2, 0xFA,-1,1, "E2 오류", "축 E2 앰프 과열 경고입니다." );
DEF(0x03, 0xE2, 0xFB,-1,1, "E2 오류", "축 E2이 재생성된 과부하 경고입니다." );
DEF(0x03, 0xE2, 0xFC,-1,1, "E2 오류", "축 E2이 전원을 감지하지 못했습니다." );
DEF(0x03, 0xE2, 0xFD,-1,1, "E2 오류", "축 E2 메인 회로가 충전 중입니다." );
DEF(0x03, 0xE2, 0xFE,-1,1, "E2 오류", "축 E2 배터리가 부족합니다." );
DEF(0x03, 0xE2, 0xFF,2,4, "E2 오류", "축 E2 배터리가 비어 있습니다." );

// Axis E3 - function 0xE3
DEF(0x03, 0xE3, 0x01,0,3, "E3 is disable", "E3이 비활성화되었습니다." );
DEF(0x03, 0xE3, 0x21,2,3, "E3 오류", "축 E3 과전류입니다." );
DEF(0x03, 0xE3, 0x25,1,3, "E3 오류", "축 E3 STO입니다." );
DEF(0x03, 0xE3, 0x26,2,3, "E3 오류", "축 E3 안전 토크 꺼짐 오류입니다." );
DEF(0x03, 0xE3, 0x27,2,3, "E3 오류", "축 E3 단일 STO입니다." );
DEF(0x03, 0xE3, 0x30,2,3, "E3 오류", "축 E3 전류 컨트롤 오류입니다." );
DEF(0x03, 0xE3, 0x31,2,3, "E3 오류", "축 E3하이브리드 편차가 너무 큽니다." );
DEF(0x03, 0xE3, 0x32,2,3, "E3 오류", "축 E3 HFLT 불일치 오류입니다." );
DEF(0x03, 0xE3, 0x33,2,3, "E3 오류", "축 E3 자동 위상 중심이 완료되지 않았습니다." );
DEF(0x03, 0xE3, 0x34,2,3, "E3 오류", "축 E3 DC 버스 전압이 비정상입니다." );
DEF(0x03, 0xE3, 0x35,2,3, "E3 오류", "축 E3 EtherCAT 인터페이스가 감지되지 않았습니다." );
DEF(0x03, 0xE3, 0x36,2,3, "E3 오류", "축 E3 CiA-402 호밍 오류입니다." );
DEF(0x03, 0xE3, 0x37,2,3, "E3 오류", "축 E3 팬 고장 오류입니다." );
DEF(0x03, 0xE3, 0x38,2,3, "E3 오류", "축 E3 절대 직렬 인코더 오류입니다." );
DEF(0x03, 0xE3, 0x41,1,3, "E3 오류", "축 E3이 오버로드됩니다." );
DEF(0x03, 0xE3, 0x43,1,3, "E3 오류", "축 E3 재생 저항이 오버로드됩니다." );
DEF(0x03, 0xE3, 0x45,1,3, "E3 오류", "축 E3 과속입니다." );
DEF(0x03, 0xE3, 0x51,1,3, "E3 오류", "축 E3 앰프 열 이상입니다." );
DEF(0x03, 0xE3, 0x52,1,3, "E3 오류", "축 E3 안티 서지 저항이 과열되었습니다." );
DEF(0x03, 0xE3, 0x53,1,3, "E3 오류", "축 E3 다이내믹 브레이크 저항이 과열되었습니다." );
DEF(0x03, 0xE3, 0x58,1,3, "E3 오류", "축 E3 모터가 과열되었습니다." );
DEF(0x03, 0xE3, 0x61,1,3, "E3 오류", "축 E3 과전압입니다." );
DEF(0x03, 0xE3, 0x62,1,3, "E3 오류", "축 E3 저전압입니다." );
DEF(0x03, 0xE3, 0x71,1,3, "E3 오류", "축 E3은 전원 전압 부족을 제어합니다." );
DEF(0x03, 0xE3, 0x72,1,3, "E3 오류", "축 E3 컨트롤 회로 전압이 부족합니다." );
DEF(0x03, 0xE3, 0x81,2,3, "E3 오류", "축 E3 인코더를 분리합니다." );
DEF(0x03, 0xE3, 0x84,2,3, "E3 오류", "축 E3 인코더 통신에 이상이 있습니다." );
DEF(0x03, 0xE3, 0x85,2,3, "E3 오류", "축 E3 인코더 초기 오류입니다(5V 이상)." );
DEF(0x03, 0xE3, 0x87,2,3, "E3 오류", "축 E3 인코더 CS에 이상이 있습니다." );
DEF(0x03, 0xE3, 0xA1,2,3, "E3 오류", "축 E3 엔코더 다중 회전 데이터 오류입니다(배터리 이상)." );
DEF(0x03, 0xE3, 0xA3,2,3, "E3 오류", "축 E3 인코더 과속입니다." );
DEF(0x03, 0xE3, 0xA5,2,3, "E3 오류", "축 E3 인코더 단일 회전 오류입니다." );
DEF(0x03, 0xE3, 0xA6,2,3, "E3 오류", "축 E3 인코더 멀티턴 오류입니다." );
DEF(0x03, 0xE3, 0xA9,2,3, "E3 오류", "축 E3 인코더가 과열되었습니다." );
DEF(0x03, 0xE3, 0xAB,2,3, "E3 오류", "축 E3 인코더 오류입니다." );
DEF(0x03, 0xE3, 0xC1,0,3, "E3 오류", "축 E3 속도가 한계를 초과합니다." );
DEF(0x03, 0xE3, 0xD1,2,3, "E3 오류", "축 E3 위치 오류가 너무 큽니다." );
DEF(0x03, 0xE3, 0xD2, 1, 4, "E3 오류", "축 E3이 양의 한계에 도달합니다." );
DEF(0x03, 0xE3, 0xD3, 1, 4, "E3 오류", "축 E3이 양의 한계에 도달합니다." );
DEF(0x03, 0xE3, 0xE1,2,3, "E3 오류", "축 E3 EEPROM 이상입니다." );
DEF(0x03, 0xE3, 0xE2,2,3, "E3 오류", "축 E3 EEPROM 점검에 이상이 있습니다." );
DEF(0x03, 0xE3, 0xEF,2,3, "E3 오류", "축 E3이 일치하지 않습니다." );
DEF(0x03, 0xE3, 0xF1,1,3, "E3 오류", "축 E3 위치 확인 오류입니다." );
DEF(0x03, 0xE3, 0xF2,1,3, "E3 오류", "축 E3 서보 지연이 너무 큽니다." );
DEF(0x03, 0xE3, 0xF3,1,3, "E3 오류", "축 E3 앰프 오류입니다." );
DEF(0x03, 0xE3, 0xF4,1,3, "E3 오류", "축 E3의 소프트 열 도달 한계입니다." );
DEF(0x03, 0xE3, 0xF5,2,3, "E3 오류", "축 E3 모터가 분리됩니다." );
DEF(0x03, 0xE3, 0xF6,2,3, "E3 오류", "축 E3 앰프 위상 초기 오류입니다." );
DEF(0x03, 0xE3, 0xF7,2,3, "E3 오류", "축 E3 홀 센서 오류입니다." );
DEF(0x03, 0xE3, 0xF8,2,3, "E3 오류", "축 E3 홀 위상 오류입니다." );
DEF(0x03, 0xE3, 0xF9,-1,1, "E3 오류", "축 E3 과부하 경고입니다." );
DEF(0x03, 0xE3, 0xFA,-1,1, "E3 오류", "축 E3 앰프 과열 경고입니다." );
DEF(0x03, 0xE3, 0xFB,-1,1, "E3 오류", "축 E3이 재생성된 과부하 경고입니다." );
DEF(0x03, 0xE3, 0xFC,-1,1, "E3 오류", "축 E3이 전원을 감지하지 못했습니다." );
DEF(0x03, 0xE3, 0xFD,-1,1, "E3 오류", "축 E3 메인 회로가 충전 중입니다." );
DEF(0x03, 0xE3, 0xFE,-1,1, "E3 오류", "축 E3 배터리가 부족합니다." );
DEF(0x03, 0xE3, 0xFF,2,4, "E3 오류", "축 E3 배터리가 비어 있습니다." );

/*
*  Electric Gripper - device 0x04
*/

// EG1 - function 0x01
DEF(0x04, 0x01, 0x11,0,3, "EG 데이터 오류", "전동 그리퍼 데이터 반환 오류입니다." );
DEF(0x04, 0x01, 0x12,0,3, "EG 컴포트는 한계를 초과한다", "전동 그리퍼 컴포트 번호가 한계를 초과합니다." );
DEF(0x04, 0x01, 0x13,0,3, "EG 하드웨어 연결 끊김", "전동 그리퍼 하드웨어가 분리되었습니다." );
DEF(0x04, 0x01, 0x14,0,3, "EG 컴포트 닫기", "전동 그리퍼 컴포트 닫기" );
DEF(0x04, 0x01, 0x15,0,3, "EG 가져오기를 사용할 수 없음", "전동 그리퍼 컴포트를 사용할 수 없습니다." );
DEF(0x04, 0x01, 0x16,0,3, "EG 연결 재시도 실패", "전동 그리퍼 연결 재시도가 실패했습니다." );
DEF(0x04, 0x01, 0x17,0,3, "EG 컴포트 연결 반복", "전동 그리퍼 컴포트가 반복적으로 연결됩니다." );

DEF(0x04, 0x01, 0x20,0,3, "EG 유형 오류", "전동 그리퍼 유형설정 오류입니다." );
DEF(0x04, 0x01, 0x21,0,3, "EG ID 오류", "전동 그리퍼 ID 오류입니다." );
DEF(0x04, 0x01, 0x22,0,3, "EG 명령 반복", "전동 그리퍼 명령이 반복되었습니다." );
DEF(0x04, 0x01, 0x23,0,3, "EG 위치 설정 오류.", "전동 그리퍼 위치가 스트로크를 초과합니다." );
DEF(0x04, 0x01, 0x24,0,3, "EG 위치 설정 오류.", "전동 그리퍼 위치 설정이 0보다 작습니다." );
DEF(0x04, 0x01, 0x25,0,3, "EG 속도 설정 오류", "전동 그리퍼 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x01, 0x26,0,3, "EG 속도 설정 오류", "전동 그리퍼 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x01, 0x27,0,3, "EG 위치 방향 설정 오류", "전동 그리퍼 위치 방향 설정 오류입니다." );
DEF(0x04, 0x01, 0x28,0,3, "EG 변위 설정 오류", "전동 그리퍼 변위 설정이 오버 스트로크입니다." );
DEF(0x04, 0x01, 0x29,0,3, "EG 변위 설정 오류", "전동 그리퍼 변위 설정이 스트로크보다 작습니다." );
DEF(0x04, 0x01, 0x2A,0,3, "EG 속도 설정 오류", "전동 그리퍼 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x01, 0x2B,0,3, "EG 속도 설정 오류", "전동 그리퍼 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x01, 0x2C,0,3, "EG 힘 설정 오류", "전동 그리퍼 힘 설정이 기본 범위를 초과합니다." );
DEF(0x04, 0x01, 0x2D,0,3, "EG 힘 설정 오류", "전동 그리퍼 힘 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x01, 0x2E,0,3, "EG 그립 오류", "전동 그리퍼 그립에 실패했습니다." );
DEF(0x04, 0x01, 0x2F,0,3, "EG 상대 스트로크 설정 오류", "전동 그리퍼 상대 스트로크가 이동 가능한 범위를 초과합니다." );
DEF(0x04, 0x01, 0x80,0,3, "EG 상대 스트로크 설정 오류", "전동 그리퍼 상대 스트로크가 이동 가능한 범위보다 작습니다." );
DEF(0x04, 0x01, 0x81,0,3, "EG 속도 설정 오류", "전동 그리퍼 속도 설정이 그립 속도보다 작습니다." );

DEF(0x04, 0x01, 0x30,0,3, "EG 재설정 오류", "전동 그리퍼 재설정 오류입니다." );
DEF(0x04, 0x01, 0x31,0,3, "EG 위치 오류", "전동 그리퍼 위치 오류입니다." );
DEF(0x04, 0x01, 0x32,0,3, "EG 오버 스트로크", "전동 그리퍼 오버 스트로크입니다." );
DEF(0x04, 0x01, 0x33,0,3, "EG 홈 오류", "전동 그리퍼에 홈으로 돌아가기 위한 오류가 있습니다." );

DEF(0x04, 0x01, 0x41,0,3, "EG 연결 타임아웃", "전동 그리퍼 연결 시간이 초과되었습니다." );
DEF(0x04, 0x01, 0x42,0,3, "EG 펌웨어 버전 가져오기 타임아웃", "전동 그리퍼 펌웨어 버전을 가져올 때 시간이 초과되었습니다." );
DEF(0x04, 0x01, 0x43,0,3, "EG 모션 중지 타임아웃", "전동 그리퍼 모션 중지 시간이 초과되었습니다." );
DEF(0x04, 0x01, 0x44,0,3, "EG 리셋모션 타임아웃", "전동 그리퍼 모션 재설정이 시간 초과되었습니다." );
DEF(0x04, 0x01, 0x45,0,3, "EG 이동 실행 타임아웃", "전동 그리퍼 이동 실행 시간이 초과되었습니다." );
DEF(0x04, 0x01, 0x46,0,3, "EG 그립 실행 타임아웃", "전동 그리퍼 그립 실행 시간 초과되었습니다." );
DEF(0x04, 0x01, 0x47,0,3, "EG 익스퍼트 실행 타임아웃", "전동 그리퍼 익스퍼트 실행 시간이 초과되었습니다." );
DEF(0x04, 0x01, 0x48,0,3, "EG 작업 상태 타임아웃", "전동 그리퍼 작업 상태가 시간 초과되었습니다." );

// EG2 - function 0x02
DEF(0x04, 0x02, 0x11,0,3, "EG2 데이터 오류", "전동 그리퍼 2 데이터 반환 오류입니다." );
DEF(0x04, 0x02, 0x12,0,3, "EG2 컴포트는 한계를 초과한다", "전동 그리퍼 2 컴포트 번호가 한계를 초과합니다." );
DEF(0x04, 0x02, 0x13,0,3, "EG2 하드웨어 연결 끊김", "전동 그리퍼 2 하드웨어가 분리되었습니다." );
DEF(0x04, 0x02, 0x14,0,3, "EG2 컴포트 닫기", "전동 그리퍼 2 컴포트 닫기" );
DEF(0x04, 0x02, 0x15,0,3, "EG2 가져오기를 사용할 수 없음", "전동 그리퍼 2 컴포트를 사용할 수 없습니다." );
DEF(0x04, 0x02, 0x16,0,3, "EG2 연결 재시도 실패", "전동 그리퍼 2 연결 재시도가 실패했습니다." );
DEF(0x04, 0x02, 0x17,0,3, "EG2 컴포트 연결 반복", "전동 그리퍼 2 컴포트가 반복적으로 연결됩니다." );

DEF(0x04, 0x02, 0x20,0,3, "EG2 유형 오류", "전동 그리퍼 2 유형설정 오류입니다." );
DEF(0x04, 0x02, 0x21,0,3, "EG2 ID 오류", "전동 그리퍼 2 ID 오류입니다." );
DEF(0x04, 0x02, 0x22,0,3, "EG2 명령 반복", "전동 그리퍼 2 명령이 반복되었습니다." );
DEF(0x04, 0x02, 0x23,0,3, "EG2 위치 설정 오류.", "전동 그리퍼 2 위치가 스트로크를 초과합니다." );
DEF(0x04, 0x02, 0x24,0,3, "EG2 위치 설정 오류.", "전동 그리퍼 2 위치 설정이 0보다 작습니다." );
DEF(0x04, 0x02, 0x25,0,3, "EG2 속도 설정 오류", "전동 그리퍼 2 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x02, 0x26,0,3, "EG2 속도 설정 오류", "전동 그리퍼 2 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x02, 0x27,0,3, "EG2 위치 방향 설정 오류", "전동 그리퍼 2 위치 방향 설정 오류입니다." );
DEF(0x04, 0x02, 0x28,0,3, "EG2 변위 설정 오류", "전동 그리퍼 2 변위 설정이 오버 스트로크입니다." );
DEF(0x04, 0x02, 0x29,0,3, "EG2 변위 설정 오류", "전동 그리퍼 2 변위 설정이 스트로크보다 작습니다." );
DEF(0x04, 0x02, 0x2A,0,3, "EG2 속도 설정 오류", "전동 그리퍼 2 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x02, 0x2B,0,3, "EG2 속도 설정 오류", "전동 그리퍼 2 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x02, 0x2C,0,3, "EG2 힘 설정 오류", "전동 그리퍼 2 힘 설정이 기본 범위를 초과합니다." );
DEF(0x04, 0x02, 0x2D,0,3, "EG2 힘 설정 오류", "전동 그리퍼 2 힘 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x02, 0x2E,0,3, "EG2 그립 오류", "전동 그리퍼 2 그립에 실패했습니다." );
DEF(0x04, 0x02, 0x2F,0,3, "EG2 상대 스트로크 설정 오류", "전동 그리퍼 2 상대 스트로크가 이동 가능한 범위를 초과합니다." );
DEF(0x04, 0x02, 0x80,0,3, "EG2 상대 스트로크 설정 오류", "전동 그리퍼 2 상대 스트로크가 이동 가능한 범위보다 작습니다." );
DEF(0x04, 0x02, 0x81,0,3, "EG2 속도 설정 오류", "전동 그리퍼 2 속도 설정이 그립 속도보다 작습니다." );

DEF(0x04, 0x02, 0x30,0,3, "EG2 재설정 오류", "전동 그리퍼 2 재설정 오류입니다." );
DEF(0x04, 0x02, 0x31,0,3, "EG2 위치 오류", "전동 그리퍼 2 위치 오류입니다." );
DEF(0x04, 0x02, 0x32,0,3, "EG2 오버 스트로크", "전동 그리퍼 2 오버 스트로크입니다." );
DEF(0x04, 0x02, 0x33,0,3, "EG2 홈 오류", "전동 그리퍼2에 홈으로 돌아가기 위한 오류가 있습니다." );

DEF(0x04, 0x02, 0x41,0,3, "EG2 연결 타임아웃", "전동 그리퍼 2 연결 시간이 초과되었습니다." );
DEF(0x04, 0x02, 0x42,0,3, "EG2 펌웨어 버전 가져오기 타임아웃", "전동 그리퍼2 펌웨어 버전을 가져올 때 시간이 초과되었습니다." );
DEF(0x04, 0x02, 0x43,0,3, "EG2 모션 중지 타임아웃", "전동 그리퍼2 모션 중지 시간이 초과되었습니다." );
DEF(0x04, 0x02, 0x44,0,3, "EG2 리셋모션 타임아웃", "전동 그리퍼2 모션 재설정이 시간 초과되었습니다." );
DEF(0x04, 0x02, 0x45,0,3, "EG2 이동 실행 타임아웃", "전동 그리퍼2 이동 실행 시간이 초과되었습니다." );
DEF(0x04, 0x02, 0x46,0,3, "EG2 그립 실행 타임아웃", "전동 그리퍼2 그립 실행 시간 초과되었습니다." );
DEF(0x04, 0x02, 0x47,0,3, "EG2 익스퍼트 실행 타임아웃", "전동 그리퍼2 익스퍼트 실행 시간이 초과되었습니다." );
DEF(0x04, 0x02, 0x48,0,3, "EG2 작업 상태 타임아웃", "전동 그리퍼2 작업 상태가 시간 초과되었습니다." );

// EG3 - function 0x03
DEF(0x04, 0x03, 0x11,0,3, "EG3 데이터 오류", "전동 그리퍼 3 데이터 반환 오류입니다." );
DEF(0x04, 0x03, 0x12,0,3, "EG3 컴포트는 한계를 초과한다", "전동 그리퍼 3 컴포트 번호가 한계를 초과합니다." );
DEF(0x04, 0x03, 0x13,0,3, "EG3 하드웨어 연결 끊김", "전동 그리퍼 3 하드웨어가 분리되었습니다." );
DEF(0x04, 0x03, 0x14,0,3, "EG3 컴포트 닫기", "전동 그리퍼 3 컴포트 닫기" );
DEF(0x04, 0x03, 0x15,0,3, "EG3 가져오기를 사용할 수 없음", "전동 그리퍼 3 컴포트를 사용할 수 없습니다." );
DEF(0x04, 0x03, 0x16,0,3, "EG3 연결 재시도 실패", "전동 그리퍼 3 연결 재시도가 실패했습니다." );
DEF(0x04, 0x03, 0x17,0,3, "EG3 컴포트 연결 반복", "전동 그리퍼 3 컴포트가 반복적으로 연결됩니다." );

DEF(0x04, 0x03, 0x20,0,3, "EG3 유형 오류", "전동 그리퍼 3 유형설정 오류입니다." );
DEF(0x04, 0x03, 0x21,0,3, "EG3 ID 오류", "전동 그리퍼 3 ID 오류입니다." );
DEF(0x04, 0x03, 0x22,0,3, "EG3 명령 반복", "전동 그리퍼 3 명령이 반복되었습니다." );
DEF(0x04, 0x03, 0x23,0,3, "EG3 위치 설정 오류.", "전동 그리퍼 3 위치가 스트로크를 초과합니다." );
DEF(0x04, 0x03, 0x24,0,3, "EG3 위치 설정 오류.", "전동 그리퍼 3 위치 설정이 0보다 작습니다." );
DEF(0x04, 0x03, 0x25,0,3, "EG3 속도 설정 오류", "전동 그리퍼 3 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x03, 0x26,0,3, "EG3 속도 설정 오류", "전동 그리퍼 3 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x03, 0x27,0,3, "EG3 위치 방향 설정 오류", "전동 그리퍼 3 위치 방향 설정 오류입니다." );
DEF(0x04, 0x03, 0x28,0,3, "EG3 변위 설정 오류", "전동 그리퍼 3 변위 설정이 오버 스트로크입니다." );
DEF(0x04, 0x03, 0x29,0,3, "EG3 변위 설정 오류", "전동 그리퍼 3 변위 설정이 스트로크보다 작습니다." );
DEF(0x04, 0x03, 0x2A,0,3, "EG3 속도 설정 오류", "전동 그리퍼 3 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x03, 0x2B,0,3, "EG3 속도 설정 오류", "전동 그리퍼 3 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x03, 0x2C,0,3, "EG3 힘 설정 오류", "전동 그리퍼 3 힘 설정이 기본 범위를 초과합니다." );
DEF(0x04, 0x03, 0x2D,0,3, "EG3 힘 설정 오류", "전동 그리퍼 3 힘 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x03, 0x2E,0,3, "EG3 그립 오류", "전동 그리퍼 3 그립에 실패했습니다." );
DEF(0x04, 0x03, 0x2F,0,3, "EG3 상대 스트로크 설정 오류", "전동 그리퍼 3 상대 스트로크가 이동 가능한 범위를 초과합니다." );
DEF(0x04, 0x03, 0x80,0,3, "EG3 상대 스트로크 설정 오류", "전동 그리퍼 3 상대 스트로크가 이동 가능한 범위보다 작습니다." );
DEF(0x04, 0x03, 0x81,0,3, "EG3 속도 설정 오류", "전동 그리퍼 3 속도 설정이 그립 속도보다 작습니다." );

DEF(0x04, 0x03, 0x30,0,3, "EG3 재설정 오류", "전동 그리퍼 3 재설정 오류입니다." );
DEF(0x04, 0x03, 0x31,0,3, "EG3 위치 오류", "전동 그리퍼 3 위치 오류입니다." );
DEF(0x04, 0x03, 0x32,0,3, "EG3 오버 스트로크", "전동 그리퍼 3 오버 스트로크입니다." );
DEF(0x04, 0x03, 0x33,0,3, "EG3 홈 오류", "전동 그리퍼3에 홈으로 돌아가기 위한 오류가 있습니다." );

DEF(0x04, 0x03, 0x41,0,3, "EG3 연결 타임아웃", "전동 그리퍼 3 연결 시간이 초과되었습니다." );
DEF(0x04, 0x03, 0x42,0,3, "EG3 펌웨어 버전 가져오기 타임아웃", "전동 그리퍼3 펌웨어 버전을 가져올 때 시간이 초과되었습니다." );
DEF(0x04, 0x03, 0x43,0,3, "EG3 모션 중지 타임아웃", "전동 그리퍼3 모션 중지 시간이 초과되었습니다." );
DEF(0x04, 0x03, 0x44,0,3, "EG3 리셋모션 타임아웃", "전동 그리퍼3 모션 재설정이 시간 초과되었습니다." );
DEF(0x04, 0x03, 0x45,0,3, "EG3 이동 실행 타임아웃", "전동 그리퍼3 이동 실행 시간이 초과되었습니다." );
DEF(0x04, 0x03, 0x46,0,3, "EG3 그립 실행 타임아웃", "전동 그리퍼3 그립 실행 시간 초과되었습니다." );
DEF(0x04, 0x03, 0x47,0,3, "EG3 익스퍼트 실행 타임아웃", "전동 그리퍼3 익스퍼트 실행 시간이 초과되었습니다." );
DEF(0x04, 0x03, 0x48,0,3, "EG3 작업 상태 타임아웃", "전동 그리퍼3 작업 상태가 시간 초과되었습니다." );

// EG4 - function 0x04
DEF(0x04, 0x04, 0x11,0,3, "EG4 데이터 오류", "전동 그리퍼 4 데이터 반환 오류입니다." );
DEF(0x04, 0x04, 0x12,0,3, "EG4 컴포트는 한계를 초과한다", "전동 그리퍼 4 컴포트 번호가 한계를 초과합니다." );
DEF(0x04, 0x04, 0x13,0,3, "EG4 하드웨어 연결 끊김", "전동 그리퍼 4 하드웨어가 분리되었습니다." );
DEF(0x04, 0x04, 0x14,0,3, "EG4 컴포트 닫기", "전동 그리퍼 4 컴포트 닫기" );
DEF(0x04, 0x04, 0x15,0,3, "EG4 가져오기를 사용할 수 없음", "전동 그리퍼 4 컴포트를 사용할 수 없습니다." );
DEF(0x04, 0x04, 0x16,0,3, "EG4 연결 재시도 실패", "전동 그리퍼 4 연결 재시도가 실패했습니다." );
DEF(0x04, 0x04, 0x17,0,3, "EG4 컴포트 연결 반복", "전동 그리퍼 4 컴포트가 반복적으로 연결됩니다." );

DEF(0x04, 0x04, 0x20,0,3, "EG4 유형 오류", "전동 그리퍼 4 유형설정 오류입니다." );
DEF(0x04, 0x04, 0x21,0,3, "EG4 ID 오류", "전동 그리퍼 4 ID 오류입니다." );
DEF(0x04, 0x04, 0x22,0,3, "EG4 명령 반복", "전동 그리퍼 4 명령이 반복되었습니다." );
DEF(0x04, 0x04, 0x23,0,3, "EG4 위치 설정 오류.", "전동 그리퍼 4 위치가 스트로크를 초과합니다." );
DEF(0x04, 0x04, 0x24,0,3, "EG4 위치 설정 오류.", "전동 그리퍼 4 위치 설정이 0보다 작습니다." );
DEF(0x04, 0x04, 0x25,0,3, "EG4 속도 설정 오류", "전동 그리퍼 4 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x04, 0x26,0,3, "EG4 속도 설정 오류", "전동 그리퍼 4 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x04, 0x27,0,3, "EG4 위치 방향 설정 오류", "전동 그리퍼 4 위치 방향 설정 오류입니다." );
DEF(0x04, 0x04, 0x28,0,3, "EG4 변위 설정 오류", "전동 그리퍼 4 변위 설정이 오버 스트로크입니다." );
DEF(0x04, 0x04, 0x29,0,3, "EG4 변위 설정 오류", "전동 그리퍼 4 변위 설정이 스트로크보다 작습니다." );
DEF(0x04, 0x04, 0x2A,0,3, "EG4 속도 설정 오류", "전동 그리퍼 4 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x04, 0x2B,0,3, "EG4 속도 설정 오류", "전동 그리퍼 4 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x04, 0x2C,0,3, "EG4 힘 설정 오류", "전동 그리퍼 4 힘 설정이 기본 범위를 초과합니다." );
DEF(0x04, 0x04, 0x2D,0,3, "EG4 힘 설정 오류", "전동 그리퍼 4 힘 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x04, 0x2E,0,3, "EG4 그립 오류", "전동 그리퍼 4 그립에 실패했습니다." );
DEF(0x04, 0x04, 0x2F,0,3, "EG4 상대 스트로크 설정 오류", "전동 그리퍼 4 상대 스트로크가 이동 가능한 범위를 초과합니다." );
DEF(0x04, 0x04, 0x80,0,3, "EG4 상대 스트로크 설정 오류", "전동 그리퍼 4 상대 스트로크가 이동 가능한 범위보다 작습니다." );
DEF(0x04, 0x04, 0x81,0,3, "EG4 속도 설정 오류", "전동 그리퍼 4 속도 설정이 그립 속도보다 작습니다." );

DEF(0x04, 0x04, 0x30,0,3, "EG4 재설정 오류", "전동 그리퍼 4 재설정 오류입니다." );
DEF(0x04, 0x04, 0x31,0,3, "EG4 위치 오류", "전동 그리퍼 4 위치 오류입니다." );
DEF(0x04, 0x04, 0x32,0,3, "EG4 오버 스트로크", "전동 그리퍼 4 오버 스트로크입니다." );
DEF(0x04, 0x04, 0x33,0,3, "EG4 홈 오류", "전동 그리퍼4에 홈으로 돌아가기 위한 오류가 있습니다." );

DEF(0x04, 0x04, 0x41,0,3, "EG4 연결 타임아웃", "전동 그리퍼 4 연결 시간이 초과되었습니다." );
DEF(0x04, 0x04, 0x42,0,3, "EG4 펌웨어 버전 가져오기 타임아웃", "전동 그리퍼4 펌웨어 버전을 가져올 때 시간이 초과되었습니다." );
DEF(0x04, 0x04, 0x43,0,3, "EG4 모션 중지 타임아웃", "전동 그리퍼4 모션 중지 시간이 초과되었습니다." );
DEF(0x04, 0x04, 0x44,0,3, "EG4 리셋모션 타임아웃", "전동 그리퍼4 모션 재설정이 시간 초과되었습니다." );
DEF(0x04, 0x04, 0x45,0,3, "EG4 이동 실행 타임아웃", "전동 그리퍼4 이동 실행 시간이 초과되었습니다." );
DEF(0x04, 0x04, 0x46,0,3, "EG4 그립 실행 타임아웃", "전동 그리퍼4 그립 실행 시간 초과되었습니다." );
DEF(0x04, 0x04, 0x47,0,3, "EG4 익스퍼트 실행 타임아웃", "전동 그리퍼4 익스퍼트 실행 시간이 초과되었습니다." );
DEF(0x04, 0x04, 0x48,0,3, "EG4 작업 상태 타임아웃", "전동 그리퍼4 작업 상태가 시간 초과되었습니다." );

// EG5 - function 0x05
DEF(0x04, 0x05, 0x11,0,3, "EG5 데이터 오류", "전동 그리퍼 5 데이터 반환 오류입니다." );
DEF(0x04, 0x05, 0x12,0,3, "EG5 컴포트는 한계를 초과한다", "전동 그리퍼 5 컴포트 번호가 한계를 초과합니다." );
DEF(0x04, 0x05, 0x13,0,3, "EG5 하드웨어 연결 끊김", "전동 그리퍼 5 하드웨어가 분리되었습니다." );
DEF(0x04, 0x05, 0x14,0,3, "EG5 컴포트 닫기", "전동 그리퍼 5 컴포트 닫기" );
DEF(0x04, 0x05, 0x15,0,3, "EG5 가져오기를 사용할 수 없음", "전동 그리퍼 5 컴포트를 사용할 수 없습니다." );
DEF(0x04, 0x05, 0x16,0,3, "EG5 연결 재시도 실패", "전동 그리퍼 5 연결 재시도가 실패했습니다." );
DEF(0x04, 0x05, 0x17,0,3, "EG5 컴포트 연결 반복", "전동 그리퍼 5 컴포트가 반복적으로 연결됩니다." );

DEF(0x04, 0x05, 0x20,0,3, "EG5 유형 오류", "전동 그리퍼 5 유형설정 오류입니다." );
DEF(0x04, 0x05, 0x21,0,3, "EG5 ID 오류", "전동 그리퍼 5 ID 오류입니다." );
DEF(0x04, 0x05, 0x22,0,3, "EG5 명령 반복", "전동 그리퍼 5 명령이 반복되었습니다." );
DEF(0x04, 0x05, 0x23,0,3, "EG5 위치 설정 오류.", "전동 그리퍼 5 위치가 스트로크를 초과합니다." );
DEF(0x04, 0x05, 0x24,0,3, "EG5 위치 설정 오류.", "전동 그리퍼 5 위치 설정이 0보다 작습니다." );
DEF(0x04, 0x05, 0x25,0,3, "EG5 속도 설정 오류", "전동 그리퍼 5 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x05, 0x26,0,3, "EG5 속도 설정 오류", "전동 그리퍼 5 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x05, 0x27,0,3, "EG5 위치 방향 설정 오류", "전동 그리퍼 5 위치 방향 설정 오류입니다." );
DEF(0x04, 0x05, 0x28,0,3, "EG5 변위 설정 오류", "전동 그리퍼 5 변위 설정이 오버 스트로크입니다." );
DEF(0x04, 0x05, 0x29,0,3, "EG5 변위 설정 오류", "전동 그리퍼 5 변위 설정이 스트로크보다 작습니다." );
DEF(0x04, 0x05, 0x2A,0,3, "EG5 속도 설정 오류", "전동 그리퍼 5 속도가 기본 범위를 초과합니다." );
DEF(0x04, 0x05, 0x2B,0,3, "EG5 속도 설정 오류", "전동 그리퍼 5 속도 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x05, 0x2C,0,3, "EG5 힘 설정 오류", "전동 그리퍼 5 힘 설정이 기본 범위를 초과합니다." );
DEF(0x04, 0x05, 0x2D,0,3, "EG5 힘 설정 오류", "전동 그리퍼 5 힘 설정이 기본 범위보다 작습니다." );
DEF(0x04, 0x05, 0x2E,0,3, "EG5 그립 오류", "전동 그리퍼 5 그립에 실패했습니다." );
DEF(0x04, 0x05, 0x2F,0,3, "EG5 상대 스트로크 설정 오류", "전동 그리퍼 5 상대 스트로크가 이동 가능한 범위를 초과합니다." );
DEF(0x04, 0x05, 0x80,0,3, "EG5 상대 스트로크 설정 오류", "전동 그리퍼 5 상대 스트로크가 이동 가능한 범위보다 작습니다." );
DEF(0x04, 0x05, 0x81,0,3, "EG5 속도 설정 오류", "전동 그리퍼 5 속도 설정이 그립 속도보다 작습니다." );

DEF(0x04, 0x05, 0x30,0,3, "EG5 재설정 오류", "전동 그리퍼 5 재설정 오류입니다." );
DEF(0x04, 0x05, 0x31,0,3, "EG5 위치 오류", "전동 그리퍼 5 위치 오류입니다." );
DEF(0x04, 0x05, 0x32,0,3, "EG5 오버 스트로크", "전동 그리퍼 5 오버 스트로크입니다." );
DEF(0x04, 0x05, 0x33,0,3, "EG5 홈 오류", "전동 그리퍼5에 홈으로 돌아가기 위한 오류가 있습니다." );

DEF(0x04, 0x05, 0x41,0,3, "EG5 연결 타임아웃", "전동 그리퍼 5 연결 시간이 초과되었습니다." );
DEF(0x04, 0x05, 0x42,0,3, "EG5 펌웨어 버전 가져오기 타임아웃", "전동 그리퍼5 펌웨어 버전을 가져올 때 시간이 초과되었습니다." );
DEF(0x04, 0x05, 0x43,0,3, "EG5 모션 중지 타임아웃", "전동 그리퍼5 모션 중지 시간이 초과되었습니다." );
DEF(0x04, 0x05, 0x44,0,3, "EG5 리셋모션 타임아웃", "전동 그리퍼5 모션 재설정이 시간 초과되었습니다." );
DEF(0x04, 0x05, 0x45,0,3, "EG5 이동 실행 타임아웃", "전동 그리퍼5 이동 실행 시간이 초과되었습니다." );
DEF(0x04, 0x05, 0x46,0,3, "EG5 그립 실행 타임아웃", "전동 그리퍼5 그립 실행 시간 초과되었습니다." );
DEF(0x04, 0x05, 0x47,0,3, "EG5 익스퍼트 실행 타임아웃", "전동 그리퍼5 익스퍼트 실행 시간이 초과되었습니다." );
DEF(0x04, 0x05, 0x48,0,3, "EG5 작업 상태 타임아웃", "전동 그리퍼5 작업 상태가 시간 초과되었습니다." );

// SDK error - function 0x05
DEF(0x05, 0x01, 0x10,0,3, "SDK 서버 비정상 연결 끊기", "SDK 서버의 연결이 비정상적으로 끊어졌습니다." );

// if defined new alarm code, must be before "unknown error code".
DEF(0x99, 0x99, 0x99,0,3, "알 수 없는 커널 오류", "알 수 없는 커널 오류입니다.");
DEF(0xFF, 0xFF, 0xFF,0,3, "알 수 없는 에러 코드", "알 수 없는 에러 코드입니다.");
