场景:7号车点上旋转之后客户端告警“小车不执行指令”
“小车不执行指令”告警信息在输出信息中,日志中搜索7号车所有的输出信息,找到告警时间节点,如下,时间为2023-03-29T14:12:12.531,可以看到告警时规划库输出的指令类型为旋转(CT 3),第一次输出旋转指令时间点为2023-03-29T14:11:58.840,指令让车转到-90度(TH_F)但未完成,需要先检查小车执行情况;
第一次输出旋转时间点:
检查小车旋转任务执行情况,搜索7号车的输入信息(小车上报的状态信息),检查小车是否已经完成相应动作,日志中可以看到小车在2023-03-29T14:12:01.680时间点附近就已完成旋转动作,并开始上报任务完成状态(task sta 1)
从规划库日志中可以得到以下信息:
1,平台从2023-03-29T14:11:58.840时刻开始下发旋转,2023-03-29T14:12:01.680时刻收到旋转完成状态上报;
2,小车完成旋转动作后规划库继续输出旋转动作CT 3;
4, 一直到2023-03-29T14:12:12.531,规划库开始输出告警信息:小车不执行指令(Err -1121),从小车旋转到位再到规划库告警相隔10s,10s为算法检测周期
小车已经上报完成,规划库也应将任务状态置为完成,需要检查规划库对该任务判定情况。判断规划库内部是否完成任务,可以通过输出信息中的fli字段判断,fli字段标识了任务完成情况,当前任务完成时会处输出一帧fli 1,其他时间则持续输出fli 0
从上面日志中可以看到,小车旋转到位后,AGV已经上报完成,但规划库一直未输出fli 1,说明规划库认为任务一直未完成,怀疑是规划库存在逻辑问题,若现场为基线RCS,可升级到当前分支最新补丁观察,3.2.0/3.2.1分支较为特殊,可联系技术支持获取升级包和升级文档,升级至3.2.2观察
场景:9814车升级主控V3.4.1-r958382-230114后,小车报任务空闲。规划库报-1121小车不执行指令;回滚嵌入式主控包后,小车异常恢复。
搜索小车的输出信息,找到报错的时间点为2023-01-31T12:10:09.685,对比上下文,发现是规划库输出了旋转指令(CT 3),随后报小车不执行指令
搜索输入信息,观察小车状态是否发生变化,发现小车一直是0度,没有转到规划的90度,猜测是AGV-RCS环节出现问题,需要查看AGV日志进一步分析;
日志中过滤平台下发任务,搜索plat_move_req_v2或send task to sched,发现并未收到该点上的旋转任务,怀疑是rcs未将指令发到小车,或任务发下来之后小车未解析出来,日志也就不再打印;
此时注意到小车使用V1协议,且版本为3.4.1,由于目前3.x版本主控对接新平台时使用V1协议会存在协议兼容问题,若没有特殊需求(如定制需要使用V1协议),先在robox上将小车协议更改为V2协议测试观察。
若V2协议仍然无法收到指令,则在服务器端和小车后台同时抓包,抓到包后,将日志和抓包提供技术支持协助排查(抓包工具和文档见hiknow)
[NOTIC][PLT]Send up robotID 9814 status 3 x47393 y10091 thea -13, tid 0 sid 0, code_type AA
V1协议/V2协议辨别方式:
V1协议:
Send up robotID %d status %d x%d y%d thea %d, tid %d sid %d, code_type %s
V2协议:
Send up robotID %d, tid %u, s_tid %u, status 0x%x, x %d, y %d, thea %d, code_type %s
场景:8068车在执行背货任务通过弧线路段时,在弧线起点位置小车有运动库异常报警,显示屏显示任务下发异常和小车不执行命令告警
参考案例二和案例三,找到“小车未响应指令”告警对应的指令,发现是小车走弧线时未按照规划路径执行;在AGV日志中搜索收到的指令,找到异常的任务,如下,收到的是一个子任务id为36359的背货(task_type 4)弧线(move_type 2)行走任务,收到之后小车未执行指令,并返回运动库报错;
task_id[36359] sub_task_id[1] move_type[2] task_type[4]
继续往下分析,可以看到小车分解任务后产生告警m_type:2, s_type23(任务下发异常),并开始上报运动库异常状态(status 13)
从上面日志可以看出,小车已经收到平台指令,也已经开始分解动作,但任务校验未通过,所以未执行指令动作,返回运动库异常,不执行指令;查看告警子错误码m_type:2, s_type23 code -402,将code -402在《差动库问题排查手册_V1.2.0.pdf》手册中查找错误码可知,402对应含义如下,根据文档排查具体报错含义即可