[620][adas]新增3.7.1版本消息定义;整理2.3.0~3.7.1所有的消息定义,增加注解用于确定启用版本和弃用版本
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
package com.zhjt.mogo.adas.data.bean;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
/**
|
||||
* MAP系统消息报告版本管理
|
||||
* 主要用于标记新增Code的版本,以及标记弃用的的Code
|
||||
*/
|
||||
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target(ElementType.FIELD)
|
||||
public @interface CodeInfo {
|
||||
String value();//Code新增版本
|
||||
|
||||
String deprecated() default "";//Code弃用版本
|
||||
}
|
||||
@@ -1,9 +1,13 @@
|
||||
package com.zhjt.mogo.adas.data.bean;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 监控事件报告中定义的事件以及解释
|
||||
* 根据MAP3.5.0事件定义编写
|
||||
* http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=113713916 最后修改于2023-07-27
|
||||
* 根据MAP3.7.1事件定义编写
|
||||
* http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=123445235 最后修改于2023-11-07
|
||||
*/
|
||||
public class MogoReport {
|
||||
public static final String RESULT_AUTOPILOT_SYSTEM_UNSTARTED = "RESULT_AUTOPILOT_SYSTEM_UNSTARTED";//自动驾驶系统启动失败
|
||||
@@ -137,6 +141,7 @@ public class MogoReport {
|
||||
* 系统初始化阶段错误
|
||||
*/
|
||||
interface EINIT {
|
||||
@CodeInfo("2.4.0")
|
||||
String LOST_FILE = "EINIT_LOST_FILE";//系统启动时缺失必要文件,或者容器配置错误
|
||||
}
|
||||
|
||||
@@ -144,9 +149,15 @@ public class MogoReport {
|
||||
* 硬件故障
|
||||
*/
|
||||
interface EHW {
|
||||
@CodeInfo("2.3.0")
|
||||
String LIDAR = "EHW_LIDAR";//未检测到雷达
|
||||
@CodeInfo("2.3.0")
|
||||
String GNSS = "EHW_GNSS";//未检测到gnss
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.3.0", deprecated = "3.4.0")
|
||||
String RTK = "EHW_RTK";//定位不准,gnss节点反馈的状态不是42
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.3.0", deprecated = "3.4.0")
|
||||
String CAN = "EHW_CAN";//无法与底盘通信,获取不到地盘状态,无法进入自动驾驶
|
||||
}
|
||||
|
||||
@@ -154,50 +165,144 @@ public class MogoReport {
|
||||
* 自动驾驶系统故障
|
||||
*/
|
||||
interface EMAP {
|
||||
/*******自动驾驶系统故障*******/
|
||||
@CodeInfo("2.3.0")
|
||||
String NODE = "EMAP_NODE";//节点异常退出
|
||||
@CodeInfo("2.3.0")
|
||||
String NODE_DEAD = "EMAP_NODE_DEAD";//节点异常退出过多,放弃重启
|
||||
@CodeInfo("2.5.0")
|
||||
String DATA_NOT_EXIST = "EMAP_DATA_NOT_EXIST";//无法加载到正确的sqlite文件
|
||||
@CodeInfo("2.4.0")
|
||||
String TRA_NOT_EXIST = "EMAP_TRA_NOT_EXIST";//无法找到轨迹文件
|
||||
@CodeInfo("2.4.0")
|
||||
String TRA_LOAD_FAILED = "EMAP_TRA_LOAD_FAILED";//加载轨迹文件失败
|
||||
@CodeInfo("3.3.0")
|
||||
String ENGINE_INIT_FAILED = "EMAP_ENGINE_INIT_FAILED";//引擎初始化失败,包括轨迹路径不存在;vehicle_config.txt加载失败
|
||||
@CodeInfo("3.5.0")
|
||||
String ATTITUDE_INIT_FAILED = "EMAP_ATTITUDE_INIT_FAILED";//当前位置距离轨迹距离大于15m
|
||||
@CodeInfo("2.4.0")
|
||||
String EXIT_AUTOPILOT_FOR_PLANNING = "EMAP_EXIT_AUTOPILOT_FOR_PLANNING";//因planning掉帧强退自动驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String EXIT_AUTOPILOT_FOR_LOCATION = "EMAP_EXIT_AUTOPILOT_FOR_LOCATION";//因location掉帧强退自动驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String EXIT_AUTOPILOT_FOR_CHASSIS = "EMAP_EXIT_AUTOPILOT_FOR_CHASSIS";//因底盘消息掉帧强退自动驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String EXIT_AUTOPILOT_FOR_DISTANCE = "EMAP_EXIT_AUTOPILOT_FOR_DISTANCE";//因planning起点距离当前过远强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_BRAKE = "EMAP_EXIT_AUTOPILOT_FOR_BRAKE";//制动踏板干预而强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_ACCEL = "EMAP_EXIT_AUTOPILOT_FOR_ACCEL";//加速踏板干预而强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_STEER = "EMAP_EXIT_AUTOPILOT_FOR_STEER";//方向盘干预而强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_GEAR_SWITCH = "EMAP_EXIT_AUTOPILOT_FOR_GEAR_SWITCH";//档位切换干预而强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_CHASSIS_NO_RESPONSE = "EMAP_EXIT_AUTOPILOT_FOR_CHASSIS_NO_RESPONSE";//底盘不响应请求而强退自动驾驶
|
||||
@CodeInfo("2.7.0")
|
||||
String EXIT_AUTOPILOT_FOR_CHASSIS_UNKNOWN = "EMAP_EXIT_AUTOPILOT_FOR_CHASSIS_UNKNOWN";//底盘退出原因未知而强退自动驾驶
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_CANADAPTER_TIMEOUT = "EMAP_ENTRY_AUTOPILOT_FOR_CANADAPTER_TIMEOUT";//can_adapter消息超时未进入自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_PLANNING_TIMEOUT = "EMAP_ENTRY_AUTOPILOT_FOR_PLANNING_TIMEOUT";//PLANNING消息超时未进自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_LOCATION_TIMEOUT = "EMAP_ENTRY_AUTOPILOT_FOR_LOCATION_TIMEOUT";//定位消息超时未进自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_BRAKE = "EMAP_ENTRY_AUTOPILOT_FOR_BRAKE";//制动踏板干预未进自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_ACCEL = "EMAP_ENTRY_AUTOPILOT_FOR_ACCEL";//加速踏板干预未进自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_STEER = "EMAP_ENTRY_AUTOPILOT_FOR_STEER";//方向盘干预未进自驾
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_GEAR_SWITCH = "EMAP_ENTRY_AUTOPILOT_FOR_GEAR_SWITCH";//档位切换干预未进自驾
|
||||
@CodeInfo("3.2.0")
|
||||
String ENTRY_AUTOPILOT_FOR_DISTANCE = "EMAP_ENTRY_AUTOPILOT_FOR_DISTANCE";//因planning起点距离太远不可进自驾
|
||||
@CodeInfo("3.2.0")
|
||||
String ENTRY_AUTOPILOT_FOR_VEHICLE_ERROR = "EMAP_ENTRY_AUTOPILOT_FOR_VEHICLE_ERROR";//车辆故障需要保修,故障原因见msg信息
|
||||
String ENTRY_AUTOPILOT_FOR_CHASSIS_FAULT = "EMAP_ENTRY_AUTOPILOT_FOR_CHASSIS_FAULT ";//底盘异常,需要下电重启
|
||||
String ENTRY_AUTOPILOT_FOR_UNKNOWN = "EMAP_ENTRY_AUTOPILOT_FOR_UNKNOWN ";//进自驾原因确实未知,必须联系软硬件技术进行排查
|
||||
@CodeInfo("3.2.0")
|
||||
String ENTRY_AUTOPILOT_FOR_CHASSIS_FAULT = "EMAP_ENTRY_AUTOPILOT_FOR_CHASSIS_FAULT";//底盘异常,需要下电重启
|
||||
@CodeInfo("3.2.0")
|
||||
String ENTRY_AUTOPILOT_FOR_UNKNOWN = "EMAP_ENTRY_AUTOPILOT_FOR_UNKNOWN";//进自驾原因确实未知,必须联系软硬件技术进行排查
|
||||
@CodeInfo("2.9.0")
|
||||
String ENTRY_AUTOPILOT_FOR_OTHER_CTL = "EMAP_ENTRY_AUTOPILOT_FOR_OTHER_CTL";//其他干预未进自驾,请检查仪表盘和开关项(如双闪,制动灯灯等 可在msg中补充原因信息)
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.4.0")
|
||||
String HADMAP_ENGINE_NO_ROUTING_INFO = "EMAP_HADMAP_ENGINE_NO_ROUTING_INFO";//hadmap_engine算路失败或未找到轨迹文件导致的轨迹文件信息未发布
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.4.0")
|
||||
String HADMAP_NO_TRAJECTORY = "EMAP_HADMAP_NO_TRAJECTORY";//hadmap未发布全局路径
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.4.0")
|
||||
String HADMAP_PLANNING_NO_TRAJECTORY = "EMAP_HADMAP_PLANNING_NO_TRAJECTORY";//local_planning未发布局部轨迹
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.4.0")
|
||||
String CONTROL_ABNORMAL_COMMAND = "EMAP_CONTROL_ABNORMAL_COMMAND";//controller发布的控制指令异常
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.4.0")
|
||||
String CAN_ADAPTER_NO_CHASSIS_INFO = "EMAP_CAN_ADAPTER_NO_CHASSIS_INFO";//can_adapter未成功转发地盘信息
|
||||
@CodeInfo("3.3.1")
|
||||
String TRAJECTORY_LOST_WHEN_AUTOPILOT = "EMAP_TRAJECTORY_LOST_WHEN_AUTOPILOT";//自驾状态,但是全局轨迹丢失超过1.5s
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_PERCEPTION_TIMEOUT = "EMAP_PLANNING_FOR_PERCEPTION_TIMEOUT";//鹰眼下发进入自驾指令,自车还未进入自驾,感知延迟超过1s
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_HADMAP_ENGINE_LANES_MSG_TIMEOUT = "EMAP_PLANNING_FOR_HADMAP_ENGINE_LANES_MSG_TIMEOUT";//鹰眼下发进入自驾指令,自车还未进入自驾,地图车道数据延迟超过1s
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_PREDICTION_TIMEOUT = "EMAP_PLANNING_FOR_PREDICTION_TIMEOUT";//鹰眼下发进入自驾指令,自车还未进入自驾,预测数据延迟超过1s
|
||||
@CodeInfo("3.6.0")
|
||||
String NODE_CPU_EXCEED = "EMAP_NODE_CPU_EXCEED";//节点cpu占用超过阈值
|
||||
@CodeInfo("3.6.0")
|
||||
String NODE_MEMORY_EXCEED = "EMAP_NODE_MEMORY_EXCEED";//节点内存占用超过阈值
|
||||
|
||||
/*******平行驾驶相关故障*******/
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_BRAKE = "EMAP_ENTRY_REMOTEPILOT_FOR_BRAKE";//制动踏板干预未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_STEER = "EMAP_ENTRY_REMOTEPILOT_FOR_STEER";//方向盘干预未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_ACCEL = "EMAP_ENTRY_REMOTEPILOT_FOR_ACCEL";//加速踏板干预未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_GEAR_SWITCH = "EMAP_ENTRY_REMOTEPILOT_FOR_GEAR_SWITCH";//档位切换干预未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_CANADAPTER_TIMEOUT = "EMAP_ENTRY_REMOTEPILOT_FOR_CANADAPTER_TIMEOUT";//底盘消息超时未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_CTRLCMD_TIMEOUT = "EMAP_ENTRY_REMOTEPILOT_FOR_CTRLCMD_TIMEOUT";//平行驾驶控制指令超时未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_CHASSIS_FAULT = "EMAP_ENTRY_REMOTEPILOT_FOR_CHASSIS_FAULT";//底盘异常未进平行驾驶,需要下电重启
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_CHASSIS_NO_RESPONSE = "EMAP_ENTRY_REMOTEPILOT_FOR_CHASSIS_NO_RESPONSE";//底盘不响应请求未进平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_OTHER_CTL = "EMAP_ENTRY_REMOTEPILOT_FOR_OTHER_CTL";//其他干预未进平行驾驶,其他干预的原因见msg信息
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_VEHICLE_ERROR = "EMAP_ENTRY_REMOTEPILOT_FOR_VEHICLE_ERROR";//车辆故障需要保修,故障原因见msg信息
|
||||
@CodeInfo("3.6.0")
|
||||
String ENTRY_REMOTEPILOT_FOR_UNKNOWN = "EMAP_ENTRY_REMOTEPILOT_FOR_UNKNOWN";//未进平行驾驶原因确实未知,必须联系软硬件技术进行排查
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_CTRLCMD_TIMEOUT = "EMAP_EXIT_REMOTEPILOT_FOR_CTRLCMD_TIMEOUT";//因平行驾驶控制指令掉帧强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_CANADAPTER_TIMEOUT = "EMAP_EXIT_REMOTEPILOT_FOR_CANADAPTER_TIMEOUT";//因底盘消息掉帧强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_BRAKE = "EMAP_EXIT_REMOTEPILOT_FOR_BRAKE";//制动踏板干预而强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_ACCEL = "EMAP_EXIT_REMOTEPILOT_FOR_ACCEL";//加速踏板干预而强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_STEER = "EMAP_EXIT_REMOTEPILOT_FOR_STEER";//方向盘干预而强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_GEAR_SWITCH = "EMAP_EXIT_REMOTEPILOT_FOR_GEAR_SWITCH";//档位切换干预而强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_CHASSIS_FAULT = "EMAP_EXIT_REMOTEPILOT_FOR_CHASSIS_FAULT";//底盘异常强退平行驾驶,需要下电重启
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_CHASSIS_NO_RESPONSE = "EMAP_EXIT_REMOTEPILOT_FOR_CHASSIS_NO_RESPONSE";//底盘不响应请求强退平行驾驶
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_OTHER_CTL = "EMAP_EXIT_REMOTEPILOT_FOR_OTHER_CTL";//其他干预退出平行驾驶,其他干预的原因见msg信息
|
||||
@CodeInfo("3.6.0")
|
||||
String EXIT_REMOTEPILOT_FOR_UNKNOWN = "EMAP_EXIT_REMOTEPILOT_FOR_UNKNOWN";//退出平行驾驶原因确实未知,必须联系软硬件技术进行排查
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* telematics相关故障
|
||||
*/
|
||||
interface ETELEMATICS {
|
||||
@CodeInfo("2.3.0")
|
||||
String AICLOUD_AUTH_ERROR = "ETELEMATICS_AICLOUD_AUTH_ERROR";//telematics连接云端失败
|
||||
}
|
||||
|
||||
@@ -205,12 +310,24 @@ public class MogoReport {
|
||||
* 车辆故障或其他状态引起的问题
|
||||
*/
|
||||
interface EVHC {
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.5.0", deprecated = "3.4.0")
|
||||
String GEAR_INFERENCE = "EVHC_GEAR_INFERENCE";//由于档位干预退出自动驾驶或无法进入自动驾驶
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.5.0", deprecated = "3.4.0")
|
||||
String BRAKE_INFERENCE = "EVHC_BRAKE_INFERENCE";//由于刹车干预退出自动驾驶或无法进入自动驾驶
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.5.0", deprecated = "3.4.0")
|
||||
String STEER_INFERENCE = "EVHC_STEER_INFERENCE";//由于方向盘干预退出自动驾驶或无法进入自动驾驶
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.5.0", deprecated = "3.4.0")
|
||||
String ACCEL_INFERENCE = "EVHC_ACCEL_INFERENCE";//由于油门干预退出自动驾驶或无法进入自动驾驶
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.3.0", deprecated = "3.4.0")
|
||||
String CSS = "EVHC_CSS";//底盘不允许进入自动驾驶
|
||||
@CodeInfo("2.3.0")
|
||||
String GEAR = "EVHC_GEAR";//档位不是D或N档
|
||||
@CodeInfo("3.4.0")
|
||||
String EPB = "EVHC_EPB";//驻车(手刹)不是锁止(拉起)状态
|
||||
}
|
||||
|
||||
@@ -218,32 +335,62 @@ public class MogoReport {
|
||||
* 系统状态检测异常
|
||||
*/
|
||||
interface ESYS {
|
||||
@CodeInfo("2.4.0")
|
||||
String AUTOPILOT_FAILED = "ESYS_AUTOPILOT_FAILED";//在尝试启动自动驾驶,但是超过指定时间后底盘未进入,会发送此事件
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "2.5.0")
|
||||
String IN_INIT = "ESYS_IN_INIT";//系统处于启动中,拒绝进入自动驾驶/远程驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String IN_EXIT = "ESYS_IN_EXIT";//系统处于退出中,拒绝进入自动驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String NOT_ALLOW_AUTOPILOT_FOR_REMOTE = "ESYS_NOT_ALLOW_AUTOPILOT_FOR_REMOTE";//系统处于远程驾驶中,拒绝进入自动驾驶
|
||||
@CodeInfo("2.4.0")
|
||||
String NOT_ALLOW_REBOOT = "ESYS_NOT_ALLOW_REBOOT";//重启拒绝
|
||||
@CodeInfo("2.4.0")
|
||||
String TOPIC_FREQ_DROPED = "ESYS_TOPIC_FREQ_DROPED";//存在topic严重掉频
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "3.3.1")
|
||||
String AUTOPILOT_TAKEN_OVER_BY_REMOTE = "ESYS_AUTOPILOT_TAKEN_OVER_BY_REMOTE";//自动驾驶被远程驾驶接管
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "2.5.0")
|
||||
String RTK_STATUS_FAULT = "ESYS_RTK_STATUS_FAULT";//RTK状态持续错误
|
||||
@CodeInfo("2.5.0")
|
||||
String ROUTING_REQ_TIMEOUT = "ESYS_ROUTING_REQ_TIMEOUT";//自动驾驶开始前,routing请求无响应
|
||||
@CodeInfo("2.6.0")
|
||||
String PLANNING_CHANGE_FAILIED = "ESYS_PLANNING_CHANGE_FAILIED";//planning版本切换启动失败
|
||||
@CodeInfo("2.6.0")
|
||||
String CHECK_TRAJECTORY_FAILURE = "ESYS_CHECK_TRAJECTORY_FAILURE";//轨迹文件检查超时或检查结果无可用轨迹
|
||||
@CodeInfo("3.7.0")
|
||||
String CHECK_TRAJECTORY_TIMEOUT = "ESYS_CHECK_TRAJECTORY_TIMEOUT";//轨迹文件检查超时
|
||||
@CodeInfo("3.7.0")
|
||||
String CHECK_TRAJECTORY_LOADING = "ESYS_CHECK_TRAJECTORY_LOADING";//当前轨迹下载中(检查中)
|
||||
@CodeInfo("3.5.0")
|
||||
String TRAJECTORY_AGENT_NOT_READY = "ESYS_TRAJECTORY_AGENT_NOT_READY";//轨迹下载客户端未就绪拒绝轨迹下载请求
|
||||
@CodeInfo("3.5.0")
|
||||
String MAP_ENGINE_NOT_READY = "ESYS_MAP_ENGINE_NOT_READY";//地图引擎未就绪拒绝自驾
|
||||
@CodeInfo("2.5.0")
|
||||
String FAULT = "ESYS_FAULT";//master启动10分钟,仍有agent未连接
|
||||
@CodeInfo("2.8.0")
|
||||
String REBOOT_WARNING = "ESYS_REBOOT_WARNING";//命令重启不完全提示(部分模块没有关闭成功)
|
||||
@CodeInfo("2.8.0")
|
||||
String CAN_MSG_LOST = "ESYS_CAN_MSG_LOST";//master接收底盘消息超时
|
||||
@CodeInfo("3.6.0")
|
||||
String AGENT_NET_TIMEOUT = "ESYS_AGENT_NET_TIMEOUT";//ssm agent 心跳连接master超时
|
||||
|
||||
/*******update_config_simple 配置(包含轨迹)下载相关异常*******/
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_SPEED_JUMP = "ESYS_CONFIG_UPDATING_SPEED_JUMP";//文件下载速度跳变,低于阈值
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_INPUT_PARAM_ABNORMAL = "ESYS_CONFIG_UPDATING_INPUT_PARAM_ABNORMAL";//配置下载传入参数异常
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_DNS_ERROR = "ESYS_CONFIG_UPDATING_DNS_ERROR";//DNS解析异常
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_URL_NOT_ARRIVED = "ESYS_CONFIG_UPDATING_URL_NOT_ARRIVED";//url不可达
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_MD5_CHECK_ERROR = "ESYS_CONFIG_UPDATING_MD5_CHECK_ERROR";//md5检查失败
|
||||
@CodeInfo("3.3.0")
|
||||
String CONFIG_UPDATING_REJECT_SAME_TRAJ_TASK = "ESYS_CONFIG_UPDATING_REJECT_SAME_TRAJ_TASK";//拒绝同名轨迹任务
|
||||
@CodeInfo("3.5.0")
|
||||
String CONFIG_UPDATING_HTTP_FAILED = "ESYS_CONFIG_UPDATING_HTTP_FAILED";//获取下载列表失败
|
||||
}
|
||||
|
||||
@@ -251,20 +398,36 @@ public class MogoReport {
|
||||
* 系统异常状态上报
|
||||
*/
|
||||
interface ESSM {
|
||||
@CodeInfo("2.10.0")
|
||||
String IN_INIT = "ESSM_IN_INIT";//SSM初始化,非任何模式,拒绝进入自动驾驶/平行驾驶
|
||||
@CodeInfo("2.10.0")
|
||||
String IN_EXIT = "ESSM_IN_EXIT";//SSM处于停止模式,拒绝进入自动驾驶/平行驾驶
|
||||
@CodeInfo("2.10.0")
|
||||
String AUTOPILOT_UNREADY = "ESSM_AUTOPILOT_UNREADY";//因自动驾驶状态未就绪拒绝自驾
|
||||
@CodeInfo("3.3.0")
|
||||
String AUTOPILOT_KEY_NODE_BORKEN = "ESSM_AUTOPILOT_KEY_NODE_BORKEN";//因自驾驾驶关键节点挂掉拒绝自动驾驶
|
||||
@CodeInfo("2.10.0")
|
||||
String REMOTEPILOT_UNREADY = "ESSM_REMOTEPILOT_UNREADY";//因平行驾驶状态未就绪拒绝平行驾驶
|
||||
@CodeInfo("2.10.0")
|
||||
String MAP_IMAGE_DIFF = "ESSM_MAP_IMAGE_DIFF";//Agent镜像存在版本不一致的问题
|
||||
@CodeInfo("3.6.0")
|
||||
String SYS_TIME_SKIPED = "ESSM_SYS_TIME_SKIPED";//系统时间发生跳变
|
||||
@CodeInfo("3.6.0")
|
||||
String ROSCORE_HAVE_REBOOT = "ESSM_ROSCORE_HAVE_REBOOT";//roscore发生重启,触发所有节点重启
|
||||
@CodeInfo("2.10.0")
|
||||
String COLD_START_TIMEOUT = "ESSM_COLD_START_TIMEOUT";//系统冷启动超时未完成
|
||||
@CodeInfo("3.3.0")
|
||||
String HAVE_AGENT_LOST_CONNECT = "ESSM_HAVE_AGENT_LOST_CONNECT";//存在agent失联
|
||||
String IGNORED_CMD_DUE_PAD_CONTROL = "ESSM_IGNORED_CMD_DUE_PAD_CONTROL ";//pad自驾中,拒绝云控的自驾命令
|
||||
String IGNORED_CMD_DUE_AICLOUD_CONTROL = "ESSM_IGNORED_CMD_DUE_AICLOUD_CONTROL ";//云控自驾中,拒绝pad的自驾命令
|
||||
@CodeInfo("3.3.1")
|
||||
String IGNORED_CMD_DUE_PAD_CONTROL = "ESSM_IGNORED_CMD_DUE_PAD_CONTROL";//pad自驾中,拒绝云控的自驾命令
|
||||
@CodeInfo("3.3.1")
|
||||
String IGNORED_CMD_DUE_AICLOUD_CONTROL = "ESSM_IGNORED_CMD_DUE_AICLOUD_CONTROL";//云控自驾中,拒绝pad的自驾命令
|
||||
}
|
||||
|
||||
interface EAGENT {
|
||||
@CodeInfo("2.4.0")
|
||||
String FATAL = "EAGENT_FATAL";//agent严重故障,无法恢复
|
||||
@CodeInfo("2.4.0")
|
||||
String MASTER_COMMAND_HANDLER_FAILED = "EAGENT_MASTER_COMMAND_HANDLER_FAILED";//agent未能成功执行master指令
|
||||
}
|
||||
|
||||
@@ -272,17 +435,24 @@ public class MogoReport {
|
||||
* 相机相关异常
|
||||
*/
|
||||
interface ECAM {
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT = "ECAM_INIT";//相机初始化失败
|
||||
@CodeInfo("2.5.0")
|
||||
String CALIB = "ECAM_CALIB";//标定信息读取失败
|
||||
@CodeInfo("2.7.0")
|
||||
String GRAB_FATAL = "ECAM_GRAB_FATAL";//相机数据采集异常
|
||||
@CodeInfo("3.5.0")
|
||||
String TS_ERROR = "ECAM_TS_ERROR";//图像时间戳异常
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 定位异常
|
||||
*/
|
||||
interface ELCT {
|
||||
@CodeInfo("2.5.0")
|
||||
String RTK_STATUS_FAULT = "ELCT_RTK_STATUS_FAULT";//RTK状态错误
|
||||
@CodeInfo("2.5.0")
|
||||
String RTK_STATUS_UNKNOWN = "ELCT_RTK_STATUS_UNKNOWN";//RTK状态不确定
|
||||
}
|
||||
|
||||
@@ -290,7 +460,9 @@ public class MogoReport {
|
||||
* 推流异常
|
||||
*/
|
||||
interface EPUSH {
|
||||
@CodeInfo("2.10.0")
|
||||
String VIDEO_INIT_ERROR = "EPUSH_VIDEO_INIT_ERROR";//初始化失败
|
||||
@CodeInfo("2.10.0")
|
||||
String VIDEO_START_SERVICE_ERROR = "EPUSH_VIDEO_START_SERVICE_ERROR";//启动服务失败
|
||||
}
|
||||
|
||||
@@ -298,9 +470,13 @@ public class MogoReport {
|
||||
* 录包异常
|
||||
*/
|
||||
interface ERECORD {
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_BAG_INIT = "ERECORD_TASK_BAG_INIT";//包初始化失败
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_SPACE = "ERECORD_TASK_SPACE";//空间不足
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_CONFIG_EMPTY = "ERECORD_TASK_CONFIG_EMPTY";//配置为空
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_QUEUE_EMPTY = "ERECORD_TASK_QUEUE_EMPTY";//数据队列为空
|
||||
}
|
||||
|
||||
@@ -308,7 +484,9 @@ public class MogoReport {
|
||||
* 平行驾驶相关异常
|
||||
*/
|
||||
interface EPARALLEL {
|
||||
@CodeInfo("2.11.0")
|
||||
String AICLOUD_CONNECTION_ERROR = "EPARALLEL_AICLOUD_CONNECTION_ERROR";//平行驾驶长连接异常 断网(此时不符合平行驾驶条件) 平行驾驶退出到自驾,同时减速停车
|
||||
@CodeInfo("3.3.0")
|
||||
String AICLOUD_NETWORK_WEAK = "EPARALLEL_AICLOUD_NETWORK_WEAK";//车端系统检测到弱网 弱网 平行驾驶退出到自驾,同时减速停车
|
||||
}
|
||||
|
||||
@@ -316,6 +494,7 @@ public class MogoReport {
|
||||
* 车辆处于困境,等待平行驾驶接管
|
||||
*/
|
||||
interface EVEHICLE {
|
||||
@CodeInfo("2.11.0")
|
||||
String IN_TROUBLE = "EVEHICLE_IN_TROUBLE";//planning 检测到车处于困境,把困境状态汇报给 SSM,ssm 发出该事件,等待驾舱端开始平行驾驶
|
||||
}
|
||||
|
||||
@@ -323,7 +502,9 @@ public class MogoReport {
|
||||
* EFM(FM故障)
|
||||
*/
|
||||
interface EFM {
|
||||
@CodeInfo("3.4.0")
|
||||
String ERROR3_STOP_PILOT = "EFM_ERROR3_STOP_PILOT";//触发降级停车策略
|
||||
@CodeInfo("3.4.0")
|
||||
String ERROR2_FUNC_FORBID = "EFM_ERROR2_FUNC_FORBID";//禁止车辆部分功能
|
||||
}
|
||||
}
|
||||
@@ -336,9 +517,13 @@ public class MogoReport {
|
||||
* 系统初始化阶段
|
||||
*/
|
||||
interface IINIT {
|
||||
@CodeInfo("2.4.0")
|
||||
String BOOST = "IINIT_BOOST";//linux系统已启动(此事件会延迟发出,timestamp填linux启动时的事件)
|
||||
@CodeInfo("2.3.0")
|
||||
String TIME_SYNC = "IINIT_TIME_SYNC";//时间已同步
|
||||
@CodeInfo("2.3.0")
|
||||
String SENSOR_NORMAL = "IINIT_SENSOR_NORMAL";//各传感器正常
|
||||
@CodeInfo("2.3.0")
|
||||
String MAP_STARTED = "IBOOT_MAP_STARTED";//当前xavier上所有节点已启动成功
|
||||
|
||||
}
|
||||
@@ -347,22 +532,52 @@ public class MogoReport {
|
||||
* 自动驾驶运行信息
|
||||
*/
|
||||
interface IMAP {
|
||||
@CodeInfo("2.4.0")
|
||||
String TRA_EXIST = "IMAP_TRA_EXIST";//已找到轨迹文件
|
||||
@CodeInfo("2.5.0")
|
||||
String DATA_EXIST = "IMAP_DATA_EXIST";//加载正确的sqlite
|
||||
@CodeInfo("2.4.0")
|
||||
String TRA_LOADED = "IMAP_TRA_LOADED";//轨迹文件加载成功
|
||||
@CodeInfo("2.4.0")
|
||||
String TRA_ROUTING = "IMAP_TRA_ROUTING";//算路成功
|
||||
@CodeInfo("2.6.0")
|
||||
String TRA_TYPE = "IMAP_TRA_TYPE";//加载轨迹类型通知
|
||||
@CodeInfo("2.7.0")
|
||||
String PARAM_SERVER = "IMAP_PARAM_SERVER";//当前系统使用的param server版本(rosmaster或redis)
|
||||
@CodeInfo("3.6.0")
|
||||
String ENGINE_INIT_FINISHED = "IMAP_ENGINE_INIT_FINISHED";//地图引擎初始化完成
|
||||
@CodeInfo("3.6.0")
|
||||
String RECEIVED_ROUTING_REQUEST = "IMAP_RECEIVED_ROUTING_REQUEST";//成功接收订单信息
|
||||
@CodeInfo("2.8.0")
|
||||
String ENTRY_AUTOPILOT = "IMAP_ENTRY_AUTOPILOT";//控制进入自动驾驶成功
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_PREDICTION_RECEIVED = "IMAP_PLANNING_FOR_PREDICTION_RECEIVED";//自车进入车自驾,收到预测消息时解除预测数据超时警报
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_HADMAP_ENGINE_LANES_MSG_RECEIVED = "IMAP_PLANNING_FOR_HADMAP_ENGINE_LANES_MSG_RECEIVED";//自车进入车自驾,收到地图车道消息时解除地图数据超时警报
|
||||
@CodeInfo("3.3.1")
|
||||
String PLANNING_FOR_PERCEPTION_RECEIVED = "IMAP_PLANNING_FOR_PERCEPTION_RECEIVED";//自车进入车自驾,收到感知消息时解除感知数据超时警报
|
||||
@CodeInfo("3.4.0")
|
||||
String START_AUTOPILOT = "IMAP_START_AUTOPILOT";//控制侧开始自驾
|
||||
@CodeInfo("3.4.0")
|
||||
String EXIT_AUTOPILOT = "IMAP_EXIT_AUTOPILOT";//控制侧正常退出自驾
|
||||
@CodeInfo("3.4.0")
|
||||
String START_REMOTEPILOT = "IMAP_START_REMOTEPILOT";//控制侧开始平行驾驶
|
||||
@CodeInfo("3.4.0")
|
||||
String ENTRY_REMOTEPILOT = "IMAP_ENTRY_REMOTEPILOT";//控制侧进入平行驾驶
|
||||
@CodeInfo("3.4.0")
|
||||
String EXIT_REMOTEPILOT = "IMAP_EXIT_REMOTEPILOT";//控制侧退出平行驾驶
|
||||
@CodeInfo("3.4.0")
|
||||
String CONTROLLER_START_FM_COMMAND = "IMAP_CONTROLLER_START_FM_COMMAND";//控制侧开始故障处理命令
|
||||
@CodeInfo("3.4.0")
|
||||
String CONTROLLER_FINISH_FM_COMMAND = "IMAP_CONTROLLER_FINISH_FM_COMMAND";//控制侧完成故障处理命令
|
||||
@CodeInfo("3.7.1")
|
||||
String CONTROLLER_ABORT_FM_COMMAND = "IMAP_CONTROLLER_ABORT_FM_COMMAND";//控制侧未完成停车但终止,原因写入msg
|
||||
@CodeInfo("3.7.1")
|
||||
String PLANNING_START_FM_COMMAND = "IMAP_PLANNING_START_FM_COMMAND";//规划开始执行故障停车处理命令
|
||||
@CodeInfo("3.7.1")
|
||||
String PLANNING_FINISH_FM_COMMAND = "IMAP_PLANNING_FINISH_FM_COMMAND";//规划完成故障停车处理命令
|
||||
@CodeInfo("3.7.1")
|
||||
String PLANNING_ABORT_FM_COMMAND = "IMAP_PLANNING_ABORT_FM_COMMAND";//规划未完成停车但终止,原因写入msg
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -370,8 +585,11 @@ public class MogoReport {
|
||||
*/
|
||||
interface ITELEMATICS {
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "2.5.0")
|
||||
String ROUTING_REQUEST_SENT = "ITELEMATICS_ROUTING_REQUEST_SENT";//已发送算路请求
|
||||
@CodeInfo("2.3.0")
|
||||
String AUTOPILOT_CMD_FORWARDED = "ITELEMATICS_AUTOPILOT_CMD_FORWARDED";//自动驾驶命令已转发
|
||||
@CodeInfo("2.3.0")
|
||||
String AICLOUD_AUTH_OK = "ITELEMATICS_AICLOUD_AUTH_OK";//aicloud连接认证成功
|
||||
|
||||
}
|
||||
@@ -381,51 +599,96 @@ public class MogoReport {
|
||||
*/
|
||||
interface ISYS {
|
||||
/*******常规信息*******/
|
||||
@CodeInfo("2.4.0")
|
||||
String STARTING = "ISYS_STARTING";//系统启动中
|
||||
@CodeInfo("2.4.0")
|
||||
String RUNNING = "ISYS_RUNNING";//所有Xavier启动完成
|
||||
@CodeInfo("2.4.0")
|
||||
String EXITING = "ISYS_EXITING";//系统退出中
|
||||
@CodeInfo("2.4.0")
|
||||
String AUTOPILOT_READY = "ISYS_AUTOPILOT_READY";//自动驾驶状态就绪
|
||||
@CodeInfo("2.4.0")
|
||||
String AUTOPILOT_STARTING = "ISYS_AUTOPILOT_STARTING";//自动驾驶启动中
|
||||
@CodeInfo("2.4.0")
|
||||
String AUTOPILOT_RUNING = "ISYS_AUTOPILOT_RUNING";//自动驾驶运行中
|
||||
@CodeInfo("2.4.0")
|
||||
String TOPIC_FREQ_NORMAL = "ISYS_TOPIC_FREQ_NORMAL";//topic频率正常或者恢复正常
|
||||
@Deprecated
|
||||
@CodeInfo(value = "2.4.0", deprecated = "2.5.0")
|
||||
String RTK_STATUS_NORMAL = "ISYS_RTK_STATUS_NORMAL";//rtk状态正常或恢复正常
|
||||
@CodeInfo("2.4.0")
|
||||
String CAN_NORMAL = "ISYS_CAN_NORMAL";//底盘状态正常或恢复正常
|
||||
@CodeInfo("2.5.0")
|
||||
String REOMTEPILOT_STARTING = "ISYS_REOMTEPILOT_STARTING";//平行驾驶启动中
|
||||
@CodeInfo("2.5.0")
|
||||
String REOMTEPILOT_RUNING = "ISYS_REOMTEPILOT_RUNING";//平行驾驶运行中
|
||||
@CodeInfo("2.6.0")
|
||||
String SYSTEM_IN_IDLE = "ISYS_SYSTEM_IN_IDLE";//系统进入空闲状态
|
||||
@CodeInfo("2.6.0")
|
||||
String SYSTEM_OUT_IDLE = "ISYS_SYSTEM_OUT_IDLE";//系统退出空闲状态
|
||||
@CodeInfo("3.3.0")
|
||||
String ALREADY_AUTOPILOT_STATE = "ISYS_ALREADY_AUTOPILOT_STATE";//已经在自驾状态驾驶,忽略自驾命令
|
||||
@CodeInfo("3.3.1")
|
||||
String AUTOPILOT_TAKEN_OVER_BY_REMOTE = "ISYS_AUTOPILOT_TAKEN_OVER_BY_REMOTE";//自动驾驶被远程驾驶接管
|
||||
@CodeInfo("3.6.0")
|
||||
String AUTOPILOT_TRA_LOADED = "ISYS_AUTOPILOT_TRA_LOADED";//自动驾驶路线加载成功
|
||||
@CodeInfo("3.6.0")
|
||||
String AUTOPILOT_SHELL_WASTETIME = "ISYS_AUTOPILOT_SHELL_WASTETIME";//记录autopilot.sh脚本耗时
|
||||
|
||||
/*******轨迹下载相关*******/
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT_TRAJECTORY_START = "ISYS_INIT_TRAJECTORY_START";//轨迹管理_轨迹开始下载
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT_TRAJECTORY_SUCCESS = "ISYS_INIT_TRAJECTORY_SUCCESS";//轨迹管理_轨迹下载成功
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT_TRAJECTORY_FAILURE = "ISYS_INIT_TRAJECTORY_FAILURE";//轨迹管理_轨迹下载失败,本地无对应轨迹
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT_TRAJECTORY_WARNING = "ISYS_INIT_TRAJECTORY_WARNING";//轨迹管理_轨迹下载失败,本地有对应轨迹,认为成功
|
||||
@CodeInfo("2.5.0")
|
||||
String INIT_TRAJECTORY_TIMEOUT = "ISYS_INIT_TRAJECTORY_TIMEOUT";//轨迹管理_轨迹下载超时
|
||||
|
||||
/*******配置更新相关*******/
|
||||
@CodeInfo("2.6.0")
|
||||
String CONFIG_UPDATE_HADMAP = "ISYS_CONFIG_UPDATE_HADMAP";//需要重启升级高精地图
|
||||
@CodeInfo("2.9.0")
|
||||
String CONFIG_UPDATE_AI_MODEL = "ISYS_CONFIG_UPDATE_AI_MODEL";//需要重启升级AI模型
|
||||
@CodeInfo("2.9.0")
|
||||
String CONFIG_UPDATE_SLAM_MAP = "ISYS_CONFIG_UPDATE_SLAM_MAP";//需要重启升级SLAM地图
|
||||
@CodeInfo("2.10.0")
|
||||
String CONFIG_UPDATING_HD_MAP = "ISYS_CONFIG_UPDATING_HD_MAP";//高精地图更新中
|
||||
@CodeInfo("2.10.0")
|
||||
String CONFIG_UPDATING_SLAM_MAP = "ISYS_CONFIG_UPDATING_SLAM_MAP";//slam 地图更新中
|
||||
@CodeInfo("2.10.0")
|
||||
String CONFIG_UPDATING_AI_MODEL = "ISYS_CONFIG_UPDATING_AI_MODEL";//AI模型更新中
|
||||
@CodeInfo("2.10.0")
|
||||
String CONFIG_UPDATING_GRID_MAP = "ISYS_CONFIG_UPDATING_GRID_MAP";//珊格地图更新中
|
||||
String TRAJECTORY_AGENT_READY = "ISYS_TRAJECTORY_AGENT_READY ";//配置下载客户端已就绪
|
||||
@CodeInfo("3.5.0")
|
||||
String TRAJECTORY_AGENT_READY = "ISYS_TRAJECTORY_AGENT_READY";//配置下载客户端已就绪
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统状态 常规信息
|
||||
*/
|
||||
interface ISSM {
|
||||
@CodeInfo("2.10.0")
|
||||
String INIT = "ISSM_INIT";//SSM系统上电初始化
|
||||
@CodeInfo("2.10.0")
|
||||
String RESTARTED = "ISSM_RESTARTED";//SSM系统发生重启
|
||||
@CodeInfo("3.4.0")
|
||||
String AUTO_PILOT_STATE_CHANGE = "ISSM_AUTO_PILOT_STATE_CHANGE";//自驾状态变化,msg填写 1 to 0
|
||||
@CodeInfo("3.4.0")
|
||||
String REMOTE_PILOT_STATE_CHANGE = "ISSM_REMOTE_PILOT_STATE_CHANGE";//平行驾驶状态变化, msg填写 1 to 6
|
||||
@CodeInfo("3.4.0")
|
||||
String AUTO_PILOT_FINISH = "ISSM_AUTO_PILOT_FINISH";//一次自驾请求处理结束
|
||||
@CodeInfo("3.4.0")
|
||||
String REMOTE_PILOT_FINISH = "ISSM_REMOTE_PILOT_FINISH";//一次平行驾驶处理结束
|
||||
@CodeInfo("3.7.0")
|
||||
String OTA_UPGRADE_START = "ISSM_OTA_UPGRADE_START";//OTA升级开始(升级内容见msg)
|
||||
@CodeInfo("3.7.0")
|
||||
String OTA_UPGRADE_FINISH = "ISSM_OTA_UPGRADE_FINISH";//OTA升级结束(升级内容见msg)
|
||||
@CodeInfo("3.7.0")
|
||||
String RECEIVE_SHUTDOWN_SIGNAL = "ISSM_RECEIVE_SHUTDOWN_SIGNAL";//SSM收到下电信号
|
||||
@CodeInfo("3.3.0")
|
||||
String HAVE_AGENT_CONNECTED = "ISSM_HAVE_AGENT_CONNECTED";//agent已连接成功
|
||||
|
||||
// String MODE_XX_START = "ISSM_MODE_XX_START";//SSM变更模式开始
|
||||
@@ -437,25 +700,43 @@ public class MogoReport {
|
||||
|
||||
//以上6组被注释掉的字段 中的MODE_XX分别替换成MODE_RUN、MODE_IDLE、MODE_STOP
|
||||
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_START = "ISSM_MODE_RUN_START";//SSM变更模式开始
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_FINISH = "ISSM_MODE_RUN_FINISH";//SSM变更模式完成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_ABORT = "ISSM_MODE_RUN_ABORT";//SSM变更模式中止
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_TIMEOUT = "ISSM_MODE_RUN_TIMEOUT";//SSM变更模式超时
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_READY = "ISSM_MODE_RUN_READY";//SSM模式就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_RUN_UNREADY = "ISSM_MODE_RUN_UNREADY";//SSM未就绪
|
||||
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_START = "ISSM_MODE_IDLE_START";//SSM变更模式开始
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_FINISH = "ISSM_MODE_IDLE_FINISH";//SSM变更模式完成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_ABORT = "ISSM_MODE_IDLE_ABORT";//SSM变更模式中止
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_TIMEOUT = "ISSM_MODE_IDLE_TIMEOUT";//SSM变更模式超时
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_READY = "ISSM_MODE_IDLE_READY";//SSM模式就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_IDLE_UNREADY = "ISSM_MODE_IDLE_UNREADY";//SSM未就绪
|
||||
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_START = "ISSM_MODE_STOP_START";//SSM变更模式开始
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_FINISH = "ISSM_MODE_STOP_FINISH";//SSM变更模式完成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_ABORT = "ISSM_MODE_STOP_ABORT";//SSM变更模式中止
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_TIMEOUT = "ISSM_MODE_STOP_TIMEOUT";//SSM变更模式超时
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_READY = "ISSM_MODE_STOP_READY";//SSM模式就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String MODE_STOP_UNREADY = "ISSM_MODE_STOP_UNREADY";//SSM未就绪
|
||||
|
||||
// String FUNC_YY_START = "ISSM_FUNC_YY_START";//产品状态检查开始
|
||||
@@ -466,38 +747,60 @@ public class MogoReport {
|
||||
// String FUNC_YY_READY = "ISSM_FUNC_YY_READY";//产品状态就绪
|
||||
|
||||
//以上6组被注释掉的字段 中的FUNC_YY分别替换成FUNC_COLD_START、FUNC_AUTO_PILOT、FUNC_REMOTE_PILOT
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_START = "ISSM_FUNC_COLD_START_START";//产品状态检查开始
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_FINISH = "ISSM_FUNC_COLD_START_FINISH";//产品状态达成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_TIMEOUT = "ISSM_FUNC_COLD_START_TIMEOUT";//产品状态检查超时
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_ABORT = "ISSM_FUNC_COLD_START_ABORT";//产品状态检查中止
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_UNREADY = "ISSM_FUNC_COLD_START_UNREADY";//产品状态未就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_COLD_START_READY = "ISSM_FUNC_COLD_START_READY";//产品状态就绪
|
||||
@CodeInfo("2.10.0")
|
||||
|
||||
String FUNC_AUTO_PILOT_START = "ISSM_FUNC_AUTO_PILOT_START";//产品状态检查开始
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_AUTO_PILOT_FINISH = "ISSM_FUNC_AUTO_PILOT_FINISH";//产品状态达成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_AUTO_PILOT_TIMEOUT = "ISSM_FUNC_AUTO_PILOT_TIMEOUT";//产品状态检查超时
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_AUTO_PILOT_ABORT = "ISSM_FUNC_AUTO_PILOT_ABORT";//产品状态检查中止
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_AUTO_PILOT_UNREADY = "ISSM_FUNC_AUTO_PILOT_UNREADY";//产品状态未就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_AUTO_PILOT_READY = "ISSM_FUNC_AUTO_PILOT_READY";//产品状态就绪
|
||||
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_START = "ISSM_FUNC_REMOTE_PILOT_START";//产品状态检查开始
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_FINISH = "ISSM_FUNC_REMOTE_PILOT_FINISH";//产品状态达成(第一次ready)
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_TIMEOUT = "ISSM_FUNC_REMOTE_PILOT_TIMEOUT";//产品状态检查超时
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_ABORT = "ISSM_FUNC_REMOTE_PILOT_ABORT";//产品状态检查中止
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_UNREADY = "ISSM_FUNC_REMOTE_PILOT_UNREADY";//产品状态未就绪
|
||||
@CodeInfo("2.10.0")
|
||||
String FUNC_REMOTE_PILOT_READY = "ISSM_FUNC_REMOTE_PILOT_READY";//产品状态就绪
|
||||
}
|
||||
|
||||
interface IAGENT {
|
||||
@CodeInfo("2.4.0")
|
||||
String EXECUTE_MASTER_COMMAND = "IAGENT_EXECUTE_MASTER_COMMAND";//执行系统指令成功
|
||||
}
|
||||
|
||||
interface ICAM {
|
||||
@CodeInfo("2.5.0")
|
||||
String READY = "ICAM_READY";//相机已就绪
|
||||
}
|
||||
|
||||
interface ILCT {
|
||||
@CodeInfo("2.5.0")
|
||||
String RTK_STATUS_NORMAL = "ILCT_RTK_STATUS_NORMAL";//rtk状态正常或恢复正常
|
||||
@CodeInfo("2.6.0")
|
||||
String RTK_OR_SLAM_CHANGE = "ILCT_RTK_OR_SLAM_CHANGE";//定位输出源发生RTK和SLAM变换
|
||||
}
|
||||
|
||||
@@ -505,7 +808,9 @@ public class MogoReport {
|
||||
* 推流状态
|
||||
*/
|
||||
interface IPUSH {
|
||||
@CodeInfo("2.10.0")
|
||||
String VIDEO_INIT_SUCCESS = "IPUSH_VIDEO_INIT_SUCCESS";//推流初始化成功
|
||||
@CodeInfo("2.10.0")
|
||||
String VIDEO_START_SERVICE_SUCCESS = "IPUSH_VIDEO_START_SERVICE_SUCCESS";//推流服务启动成功
|
||||
}
|
||||
|
||||
@@ -513,7 +818,9 @@ public class MogoReport {
|
||||
* 录包状态
|
||||
*/
|
||||
interface IRECORDER {
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_AUTO = "IRECORDER_TASK_AUTO";//自动录包任务创建
|
||||
@CodeInfo("2.10.0")
|
||||
String TASK_CMD = "IRECORDER_TASK_CMD";//指令录包任务创建
|
||||
}
|
||||
|
||||
@@ -521,6 +828,7 @@ public class MogoReport {
|
||||
* 平行驾驶相关
|
||||
*/
|
||||
interface IPARALLEL {
|
||||
@CodeInfo("2.11.0")
|
||||
String AICLOUD_CONNECTION_OK = "IPARALLEL_AICLOUD_CONNECTION_OK";//长连接连接恢复后, 5s 内如果长连状态一直 ok 的话,会触发该事件 建议鹰眼展示该事件
|
||||
}
|
||||
|
||||
@@ -528,6 +836,7 @@ public class MogoReport {
|
||||
* 车辆处于困境相关
|
||||
*/
|
||||
interface IVEHICLE {
|
||||
@CodeInfo("2.11.0")
|
||||
String NOT_IN_TROUBLE = "IVEHICLE_NOT_IN_TROUBLE";//车辆脱离困境,恢复正常,可继续开始自动驾驶了 触发频率:处于困境中,触发一次; 脱困后,触发一次 云端驾舱会接入该事件 建议鹰眼也接入,展示困境状态/脱困状态
|
||||
}
|
||||
|
||||
@@ -535,8 +844,11 @@ public class MogoReport {
|
||||
* IFSM(功能状态管理)
|
||||
*/
|
||||
interface IFSM {
|
||||
@CodeInfo("3.5.0")
|
||||
String AUTO_PILOT_STATE_CHANGED = "IFSM_AUTO_PILOT_STATE_CHANGED";//自动驾驶状态机变化 (msg 填写如 standby to active )
|
||||
@CodeInfo("3.5.0")
|
||||
String REMOTE_PILOT_STATE_CHANGED = "IFSM_REMOTE_PILOT_STATE_CHANGED";//平行驾驶状态机变化
|
||||
@CodeInfo("3.5.0")
|
||||
String TELECTRL_PILOT_STATE_CHANGED = "IFSM_TELECTRL_PILOT_STATE_CHANGED";//遥感驾驶状态机变化
|
||||
}
|
||||
|
||||
@@ -544,12 +856,74 @@ public class MogoReport {
|
||||
* IFM (故障管理)
|
||||
*/
|
||||
interface IFM {
|
||||
@CodeInfo("3.4.0")
|
||||
String HANDLE_FAULTS_START = "IFM_HANDLE_FAULTS_START";//FM开始处理故障
|
||||
@CodeInfo("3.4.0")
|
||||
String HANDLE_FAULTS_STOP = "IFM_HANDLE_FAULTS_STOP";//FM停止处理故障
|
||||
@CodeInfo("3.4.0")
|
||||
String ALL_FAULTS_RECOVER = "IFM_ALL_FAULTS_RECOVER";//FM当前已无故障 (只有有故障到全都消失时候上报)
|
||||
@CodeInfo("3.4.0")
|
||||
String ONLY_WARNING_FAULTS = "IFM_ONLY_WARNING_FAULTS";//FM仅存在警示故障
|
||||
@CodeInfo("3.4.0")
|
||||
String ERROR1_SLOW_SPEED = "IFM_ERROR1_SLOW_SPEED";//存在故障触发减速策略
|
||||
}
|
||||
|
||||
/**
|
||||
* IMF(蘑方消息回执)
|
||||
*/
|
||||
interface IMF {
|
||||
@CodeInfo("3.7.1")
|
||||
String SPEED_CHANGE_RECEIVE = "IMF_SPEED_CHANGE_RECEIVE";//蘑方加速度变化指令收到(msg字段的拼接方式为:传进来的加速度值$$其它想加的内容,没有可以不填)
|
||||
@CodeInfo("3.7.1")
|
||||
String SPEED_CHANGE_EXECUTE = "IMF_SPEED_CHANGE_EXECUTE";//蘑方加速度变化指令执行(msg字段的拼接方式为:传进来的加速度值$$其它想加的内容,没有可以不填)
|
||||
@CodeInfo("3.7.1")
|
||||
String SPEED_RESET_RECEIVE = "IMF_SPEED_RESET_RECEIVE";//蘑方复位指令收到(msg字段的拼接方式为:传进来的加速度值$$其它想加的内容,没有可以不填)
|
||||
@CodeInfo("3.7.1")
|
||||
String SPEED_RESET_EXECUTE = "IMF_SPEED_RESET_EXECUTE";// 蘑方复位指令执行(msg字段的拼接方式为:传进来的加速度值$$其它想加的内容,没有可以不填)
|
||||
@CodeInfo("3.7.1")
|
||||
String LAN_CHANG_RECEIVE = "IMF_LAN_CHANG_RECEIVE";//蘑方变道指令收到(msg字段的拼接方式为:-1/1$$其它想加的内容,没有可以不填) -1: 左变道;1: 右变道
|
||||
@CodeInfo("3.7.1")
|
||||
String LAN_CHANG_EXECUTE = "IMF_LAN_CHANG_EXECUTE";//蘑方变道指令执行(msg字段的拼接方式为:-1/1$$其它想加的内容,没有可以不填) -1: 左变道;1: 右变道
|
||||
@CodeInfo("3.7.1")
|
||||
String HORN_RECEIVE = "IMF_HORN_RECEIVE";//蘑方鸣笛指令收到(msg字段的拼接方式为:1.0/2.0$$其它想加的内容,没有可以不填) 1.0:开始鸣笛;2.0: 结束鸣笛
|
||||
@CodeInfo("3.7.1")
|
||||
String HORN_EXECUTE = "IMF_HORN_EXECUTE";//蘑方鸣笛指令执行(msg字段的拼接方式为:1.0/2.0$$其它想加的内容,没有可以不填) 1.0:开始鸣笛;2.0: 结束鸣笛
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static final Map<String, ReportCodeInfo> codeInfoMap = new HashMap<>();
|
||||
|
||||
/**
|
||||
* 获取指定Code的相关信息
|
||||
*
|
||||
* @param code 指定Code {@link Code}
|
||||
* @return 输入Code的相关信息 不存在返回null
|
||||
*/
|
||||
public static ReportCodeInfo getReportCodeState(String code) {
|
||||
if (codeInfoMap.isEmpty()) {
|
||||
getAllFieldAnnotation(Code.class);
|
||||
}
|
||||
return codeInfoMap.get(code);
|
||||
}
|
||||
|
||||
//获取所有的字段
|
||||
private static void getAllFieldAnnotation(Class<?> clazz) {
|
||||
Field[] fields = clazz.getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
boolean fieldHasAnno = field.isAnnotationPresent(CodeInfo.class);
|
||||
if (fieldHasAnno) {
|
||||
CodeInfo fieldAnno = field.getAnnotation(CodeInfo.class);
|
||||
if (fieldAnno != null) {
|
||||
String code = clazz.getSimpleName() + "_" + field.getName();
|
||||
ReportCodeInfo state = new ReportCodeInfo(code, fieldAnno.value(), fieldAnno.deprecated());
|
||||
codeInfoMap.put(code, state);
|
||||
}
|
||||
}
|
||||
}
|
||||
Class<?>[] innerClazz = clazz.getDeclaredClasses();
|
||||
for (Class<?> inner : innerClazz) {
|
||||
getAllFieldAnnotation(inner);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.zhjt.mogo.adas.data.bean;
|
||||
|
||||
public class ReportCodeInfo {
|
||||
public final String code;
|
||||
/**
|
||||
* 开始支持的版本(包含)
|
||||
*/
|
||||
public final String sinceVersion;
|
||||
/**
|
||||
* 弃用的版本(不包含)
|
||||
* null或"" 表示还未弃用
|
||||
*/
|
||||
public final String deprecatedVersion;
|
||||
|
||||
public ReportCodeInfo(String code, String sinceVersion, String deprecatedVersion) {
|
||||
this.code = code;
|
||||
this.sinceVersion = sinceVersion;
|
||||
this.deprecatedVersion = deprecatedVersion;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return code +
|
||||
" sinceVersion='" + sinceVersion + '\'' +
|
||||
", deprecatedVersion='" + deprecatedVersion + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user