本发明涉及汽车诊断,尤其涉及一种通信方法、通信设备及存储介质。
背景技术:
1、在车辆远程诊断领域中,诊断设备与汽车ecu建立远程通信连接后,存在部分场景下由于网络波动延时较大或者超时,远车端或近车端的通信设备不能及时接收到汽车ecu或诊断设备发送的真实流控帧报文,导致诊断设备与汽车ecu通信失败。因此,为避免网络波动或超时导致通信失败,远车端或近车端的通信设备在接收到诊断设备或汽车ecu发送的首帧报文时,需要进行流控帧补偿。
2、在一些通信协议(如can通信协议)中,远车端或近车端的通信设备向诊断设备或汽车ecu补偿的流控帧报文须携带汽车ecu或诊断设备的身份标识。然而,远车端或近车端的通信设备向诊断设备或汽车ecu补偿流控帧时,存在无法准确地获知汽车ecu或诊断设备的身份标识的情况发生,造成流控帧补偿失败,若不进行流控帧补偿则有可能因为超时而通信失败,影响远程诊断业务的顺利进行。
技术实现思路
1、本发明实施例提供一种通信方法、通信设备及存储介质,通过对配置文件中多个汽车ecu或诊断设备的身份标识均生成对应的虚假应答报文,并发送至诊断设备或汽车ecu,减少因网络波动或超时导致通信失败的情况发生,确保远程诊断业务的顺利进行。
2、为解决上述技术问题,第一方面,本发明实施例提供一种通信方法,应用于第一通信设备,所述方法包括:
3、接收汽车ecu发送的首帧报文,解析所述首帧报文,以获取所述汽车ecu的第一身份标识;
4、基于所述汽车ecu的第一身份标识和配置文件,获取所述汽车ecu的第一身份标识对应的诊断设备的第二身份标识,其中,所述配置文件中,具有所述汽车ecu的第一身份标识与所述诊断设备的第二身份标识的对应关系;
5、若所述第一身份标识对应至少两个所述第二身份标识,根据所述第二身份标识生成至少两个虚假应答报文,其中,每一所述第二身份标识对应生成一个所述虚假应答报文;
6、向所述汽车ecu发送所述至少两个虚假应答报文。
7、在一些实施例中,所述虚假应答报文为第一流控帧报文。
8、在一些实施例中,所述方法还包括:
9、接收所述诊断设备发送的第一真实流控帧报文,解析所述第一真实流控帧报文,以获取所述诊断设备的真实身份标识和所述第一真实流控帧报文的流控参数,舍弃所述第一真实流控帧报文;
10、接收所述汽车ecu发送的多帧数据帧,若所述汽车ecu还存在未发送的数据帧,根据所述诊断设备的真实身份标识和所述第一真实流控帧报文的流控参数,生成第二流控帧报文,并向所述汽车ecu发送所述第二流控帧报文。
11、在一些实施例中,所述方法还包括:
12、接收配置文件,解析所述配置文件以获取汽车ecu的至少一个第一身份标识;
13、基于所述至少一个第一身份标识,设置第一过滤器;
14、在接收到汽车ecu发送的报文时,通过所述第一过滤器滤除与所述至少一个第一身份标识不匹配的报文,向所述诊断设备发送经所述第一过滤器过滤后的报文;
15、所述接收汽车ecu发送的首帧报文,包括:
16、接收汽车ecu发送的经所述第一过滤器过滤后的首帧报文。
17、在一些实施例中,所述方法还包括:
18、接收汽车ecu发送的第二真实流控帧报文,解析所述第二真实流控帧报文,以获取汽车ecu的真实身份标识;
19、基于所述真实身份标识,设置第二过滤器;
20、在接收到汽车ecu发送的报文时,通过所述第二过滤器滤除与所述真实身份标识不匹配的报文,向所述诊断设备发送经所述第二过滤器过滤后的报文;
21、所述接收汽车ecu发送的首帧报文,包括:
22、接收汽车ecu发送的经所述第二过滤器过滤后的首帧报文。
23、为解决上述技术问题,第二方面,本发明实施例提供一种通信方法,应用于第二通信设备,所述方法包括:
24、接收诊断设备发送的首帧报文,解析所述首帧报文,以获取所述诊断设备的第三身份标识;
25、基于所述诊断设备的第三身份标识和配置文件,获取所述诊断设备的第三身份标识对应的汽车ecu的第四身份标识,其中,所述配置文件中,具有所述诊断设备的第三身份标识与所述汽车ecu的第四身份标识的对应关系;
26、若所述第三身份标识对应至少两个所述第四身份标识,根据所述第四身份标识生成至少两个虚假应答报文,其中,每一所述第四身份标识对应生成一个所述虚假应答报文;
27、向所述诊断设备发送所述至少两个虚假应答报文。
28、在一些实施例中,所述虚假应答报文为第三流控帧报文。
29、在一些实施例中,所述方法还包括:
30、接收所述汽车ecu发送的第三真实流控帧报文,解析所述第三真实流控帧报文,以获取所述汽车ecu的真实身份标识和所述第三真实流控帧报文的流控参数,舍弃所述第三真实流控帧报文;
31、接收所述诊断设备发送的多帧数据帧,若所述诊断设备还存在未发送的数据帧,根据所述汽车ecu的真实身份标识和所述第三真实流控帧报文的流控参数,生成第四流控帧报文,并向所述诊断设备发送所述第四流控帧报文。
32、为解决上述技术问题,第三方面,本发明实施例提供一种通信设备,包括通信连接的处理器和存储器,所述存储器中存储有所述处理器可执行的计算机程序指令,所述计算机程序指令在被所述处理器调用时,以使所述处理器执行上述任一项通信方法,或上述任一项通信方法中任一种可能的实施方式中的步骤。
33、为解决上述技术问题,第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,处理器运行该计算机程序指令,以执行上述任一项通信方法,或上述任一项通信方法中任一种可能的实施方式中的步骤。
34、本发明实施例的有益效果:区别于现有技术的情况,本发明实施例提供的通信方法,应用于通信设备,所述方法包括:接收汽车ecu发送的首帧报文,解析首帧报文,以获取汽车ecu的第一身份标识;基于汽车ecu的第一身份标识和配置文件,获取汽车ecu的第一身份标识对应的诊断设备的第二身份标识,其中,配置文件中,具有汽车ecu的第一身份标识与诊断设备的第二身份标识的对应关系;若第一身份标识对应至少两个第二身份标识,根据第二身份标识生成至少两个虚假应答报文,其中,每一第二身份标识对应生成一个虚假应答报文;向汽车ecu发送至少两个虚假应答报文。该通信方法通过对配置文件中多个汽车ecu或诊断设备的身份标识均生成对应的虚假应答报文,并将生成的虚假应答报文发送至诊断设备或汽车ecu,减少因网络波动或超时导致通信失败的情况发生,确保远程诊断业务的顺利进行。
1.一种通信方法,应用于第一通信设备,其特征在于,所述方法包括:
2.根据权利要求1所述的通信方法,其特征在于,所述虚假应答报文为第一流控帧报文。
3.根据权利要求1所述的通信方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的通信方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的通信方法,其特征在于,所述方法还包括:
6.一种通信方法,应用于第二通信设备,其特征在于,所述方法包括:
7.根据权利要求6所述的通信方法,其特征在于,所述虚假应答报文为第三流控帧报文。
8.根据权利要求6所述的通信方法,其特征在于,所述方法还包括:
9.一种通信设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令适于处理器进行加载,以执行如权利要求1-8任一项所述的通信方法。