vincentlu
7 天以前 583b31d46bb8abbee7410d29ca229120ee589cba
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
package com.zy.acs.common.enums.error;
 
public enum AgvErrorType {
 
    ERROR_0x0001("0001", "硬件错误"),
    ERROR_0x0002("0002", "硬件错误"),
 
    ERROR_0x2000("2000", "地面扫码相机出错"),
    ERROR_0x2001("2001", "待机状态下丢码"),
    ERROR_0x2002("2002", "校准中丢码"),
    ERROR_0x2003("2003", "路径中丢码"),
    ERROR_0x2004("2004", "直行中丢码"),
    ERROR_0x2005("2005", "直行中错码"),
    ERROR_0x2006("2006", "直行丢失终点码"),
    ERROR_0x2007("2007", "直行中间码丢失"),
    ERROR_0x2008("2008", "检测不到货位码"),
    ERROR_0x200B("200B", "货位码不匹配"),
    ERROR_0x2010("2010", "直行位置偏差过大"),
    ERROR_0x2011("2011", "位姿融合失败轻度"),
    ERROR_0x2012("2012", "位姿融合失败重度"),
    ERROR_0x2013("2013", "实际地址码与给定不符,重登录"),
    ERROR_0x2014("2014", "检测不到地面码"),
 
    ERROR_0x3001("3001", "直行前进中前避障雷达触发"),
    ERROR_0x3002("3002", "直行前进中前避障雷达触发停止"),
    ERROR_0x3003("3003", "直行后退中后避障雷达触发"),
    ERROR_0x3004("3004", "直行后退中后避障雷达触发停止"),
    ERROR_0x3005("3005", "避障雷达模块报警"),
    ERROR_0x3006("3006", "避障雷达失联"),
    ERROR_0x3010("3010", "急停触发和解除"),
    ERROR_0x3011("3011", "碰撞条触发与解除"),
 
    ERROR_0x4001("4001", "传感器信号异常"),
    ERROR_0x4002("4002", "相机掉线"),
    ERROR_0x4003("4003", "高度传感器掉线"),
    ERROR_0x4004("4004", "货叉控制器通信异常"),
    ERROR_0x4005("4005", "电机温度异常"),
    ERROR_0x4006("4006", "环境温度异常"),
 
    ERROR_0x5001("5001", "陀螺仪模块通讯异常"),
    ERROR_0x5003("5003", "陀螺仪数据异常"),
    ERROR_0x5004("5004", "陀螺仪归零异常"),
    ERROR_0x5007("5007", "陀螺仪角度偏差过大,紧急停止"),
 
    ERROR_0x6001("6001", "电机掉线"),
    ERROR_0x6002("6002", "电机温度过高"),
    ERROR_0x6003("6003", "电机操作异常"),
    ERROR_0x6004("6004", "电机报警"),
    ERROR_0x6005("6005", "未知"),
 
    ERROR_0x7001("7001", "电池通讯失败"),
    ERROR_0x7002("7002", "电量异常"),
    ERROR_0x7003("7003", "过压报警"),
    ERROR_0x7004("7004", "欠压报警"),
    ERROR_0x7005("7005", "电池温度过高"),
    ERROR_0x7006("7006", "温度过低"),
    ERROR_0x7007("7007", "剩余电量低"),
    ERROR_0x7009("7009", "未知"),
 
    ERROR_0x8001("8001", "网络模块报警"),
    ERROR_0x8002("8002", "上位机通信失败"),
    ERROR_0x8003("8003", "无效的指令"),
    ERROR_0x8004("8004", "非法的路径"),
    ERROR_0x8005("8005", "未知"),
    ERROR_0x8006("8006", "未知"),
 
    ERROR_0x9001("9001", "充电对接传感器异常"),
    ERROR_0x9002("9002", "充电对接超时"),
    ERROR_0x9003("9003", "对接后长时间未充电"),
 
    ERROR_0xA000("A000", "小车脱轨"),
    ERROR_0xA001("A001", "读码角度偏差过大"),
    ERROR_0xA002("A002", "里程计数据溢出"),
    ERROR_0xA003("A003", "IMU数据异常"),
    ERROR_0xA004("A004", "激光近距离急停"),
    ERROR_0xA005("A005", "驱动器报警"),
    ERROR_0xA008("A008", "轴0驱动器报警"),
    ERROR_0xA009("A009", "轴1驱动器报警"),
    ERROR_0xA00A("A00A", "急停信号触发"),
    ERROR_0xA00B("A00B", "货叉传感器检测异常"),
    ERROR_0xA00C("A00C", "支撑未到位"),
    ERROR_0xA00D("A00D", "松绳检测"),
 
    ERROR_0xA028("A028", "左取货货架无货"),
    ERROR_0xA029("A029", "左取货车内有货"),
    ERROR_0xA02A("A02A", "左放货货架有货"),
    ERROR_0xA02B("A02B", "左放货车内无货"),
 
    ERROR_0xA02C("A02C", "右取货货架无货"),
    ERROR_0xA02D("A02D", "右取货车内有货"),
    ERROR_0xA02E("A02E", "右放货货架有货"),
    ERROR_0xA02F("A02F", "右放货车内无货"),
 
    ERROR_0xA030("A030", "轮廓检测前异常"),
    ERROR_0xA031("A031", "轮廓检测后异常"),
    ERROR_0xA032("A032", "轮廓检测左异常"),
    ERROR_0xA033("A033", "轮廓检测右异常"),
    ERROR_0xA034("A034", "轮廓检测上异常"),
 
    ERROR_0xA03C("A03C", "从站1未就绪"),
    ERROR_0xA03D("A03D", "从站2未就绪"),
    ERROR_0xA03E("A03E", "从站3未就绪"),
    ERROR_0xA03F("A03F", "从站4未就绪"),
    ERROR_0xA040("A040", "从站5未就绪"),
    ERROR_0xA041("A041", "从站6未就绪");
    ;
 
    public String sign;
    public String desc;
 
    AgvErrorType(String sign, String desc) {
        this.sign = sign;
        this.desc = desc;
    }
 
    public static AgvErrorType query(String sign) {
        if (null == sign) {
            return null;
        }
        for (AgvErrorType type : AgvErrorType.values()) {
            if (sign.equalsIgnoreCase(type.sign)) {
                return type;
            }
        }
        return null;
    }
 
    public String getMsg() {
        return "0x" + this.sign + " - " + this.desc;
    }
 
}