车端平行驾驶通信模块中以下几种情况会报弱网:
1、2、3是常态化检测,跟是否接管无关。
4、5、6是针对平行驾驶接管状态下的控车指令下发进行的检测。【接管中同时也进行1、2、3的检测】
目的是避免漏检、提高安全系数。
同一个因素可能会触发几种情况的报警:
比方断网:先触发ping延迟超时、1420ms内没有ping回复,再报3秒内没有收到任何消息导致的断网。
如果同时处在平行驾驶接管中,还会触发控车指令降频,420ms内没有收到任何控车指令的弱网上报
1、车云连接不正常
a. tcp连接断开
b. 认证过程持续过长:一直收不到云端的认证请求回复,一直处于认证状态
2、车云连接心跳延迟超过200ms
车云连接心跳延迟 = 心跳回复的接收时间 - 心跳请求的发送时间
心跳请求:平行驾驶通信模块-> map镜像内核-> 103网卡->102节点->车端路由器->基站->网络->云端环境入口->云端环境路由->云端宿主机网卡->云端docker镜像内核->云端应用程序(云端使用的网络通信库->云端业务逻辑)
心跳回复:跟上面相反的路径
上面链路上的任何一个环节有问题都有可能会造成心跳延迟波动
3、现在的时间 - 最近一条心跳回复接收时间 > 1420ms (1秒心跳请求发送时间间隔 + 200ms最大延迟阈值 * 2【往返】+最大检测延迟(20ms))
针对的是一直收不到云端心跳回复的情况的弱网检测。
4、500ms内控车指令下发频率 < 15帧
平行驾驶接管状态才会进行的检测
控车指令:平行驾驶驾舱->云端应用程序 ->云端docker镜像内核->云端宿主机网卡->云端环境路由->云端环境出口->网络->基站->车端路由器->102节点->103网卡->map镜像内核->平行驾驶通信模块
控车指令回复:跟上面相反的路径
上面链路上的任何一个环节有问题都有可能会造成控车指令hz、间隔波动
5、两帧控车指令的接收时间间隔 > 400ms
平行驾驶接管状态才会进行的检测
6、平行驾驶接管状态,420ms内没有收到任何控车指令
420ms = 400ms控车指令间隔阈值 + 20ms检测延迟
平行驾驶接管状态下,现在的时间 - 最近一条控车指令回复接收时间 > 420ms
平行驾驶接管状态才会进行的检测
针对的是接管后云端不下发控车指令的场景(比方云端驾舱断连【洱海撞车事故场景】)