基于双CAN通讯实现通讯链路冗余方法及系统技术方案

技术编号:39190248 阅读:13 留言:0更新日期:2023-10-27 08:37
本发明专利技术涉及人工智能技术,揭露了一种基于双CAN通讯实现通讯链路冗余方法,包括:在控制器中设置两个CAN接口以及备用链路接口,选取一个为主CAN,另一个为副CAN,获取ID参数,计算主波特率以及副波特率;对CAN接口进行配置,得到控制链路,确定备用链路类型,确定通讯协议,将备用链路与备用链路接口以及控制链路进行连接,得到双CAN链路;选择一个主心跳编码,设置主计时器并发送主心跳编码,当未收到主心跳编码时,换成副CAN;在副CAN中设置备计时器,当备通讯链路进行通讯时,发送备心跳编码,当控制器超没有收到备心跳编码时,切换成备用链路。本发明专利技术还提出一种基于双CAN通讯实现通讯链路冗余系统。本发明专利技术可以提高通讯链路的效率性。性。性。

【技术实现步骤摘要】
基于双CAN通讯实现通讯链路冗余方法及系统


[0001]本专利技术涉及人工智能
,尤其涉及一种基于双CAN通讯实现通讯链路冗余方法及系统。

技术介绍

[0002]随着自动驾驶技术的不断发展和普及,基于CAN总线的车辆网络通讯系统成为了关键的组成部分,为了解决单一的通讯链路可能面临故障或攻击造成的通讯安全性和可靠性带来了挑战。因此,实现通讯路冗余成为一项重要的
技术介绍
,以确保在某一条通讯链路受损时能够无缝切换到备用链路。
[0003]传统通讯链路采用单一路径拓扑,即只有一条主要的通讯路径。如果该路径发生阻塞或遭到干扰,可能会导致通讯中断,无法实现连续的数据传输,还可以可能被攻击者利用,从而威胁到通讯的机密性和完整性。实际生活中存在有线限制、移动性挑战、频谱拥挤、高成本等缺点和劣势,使通讯效率大大下降。

技术实现思路

[0004]本专利技术提供一种基于双CAN通讯实现通讯链路冗余方法及系统,其主要目的在于解决实现通讯链路时通讯效率较低的问题。
[0005]为实现上述目的,本专利技术提供的一种基于双CAN通讯实现通讯链路冗余方法,包括:
[0006]在预设的控制器中设置两个CAN接口以及备用链路接口,任意选取两个CAN总线的其中一个为主CAN,另一个为副CAN,获取所述主CAN与副CAN的ID参数,利用波特公式计算所述主CAN与副CAN的主波特率以及副波特率,其中,利用如下波特公式计算所述主CAN的主波特率:
[0007][0008]其中,ZBaudRate为所述主波特率,T
Q
为一个时间量化周期;SyncSeg为同步段时间量化周期数;PropSeg为传播时间分割段时间量化周期数;PhaseSeg 1为相位缓冲段1时间量化周期数;PhaseSeg 2为相位缓冲段2时间量化周期数;
[0009]利用所述ID参数与所述主波特率以及副波特率对所述主CAN与副CAN进行配置,得到控制链路,根据预设的通讯需求确定备用链路类型,通过所述备用链路类型确定对应的的通讯协议,通过所述通讯协议将预设的备用链路与所述备用链路接口以及控制链路进行连接,得到双CAN链路;
[0010]在所述主CAN中选择一个未被使用的CAN编码作主心跳编码,在所述主CAN中设置主计时器并按照预设的时间段向所述控制器中发送所述主心跳编码,当所述控制器超过预设的时间段还没有收到主心跳编码时,通过所述控制器将所述主CAN切换成副CAN,形成副通讯链路;
[0011]在所述副CAN中设置备计时器,当利用备通讯链路进行通讯时,备计时器开始工作并向所述控制器发送备心跳编码,当所述控制器超过预设的时间段还没有收到备心跳编码时,通过所述控制器将所述副CAN切换成备用链路,形成备用通讯链路。
[0012]可选地,所述在预设的控制器中设置两个CAN接口以及备用链路接口,包括:
[0013]根据所述控制器的器件文档确定所述控制器是否支持多接口;
[0014]若支持则在所述控制器的所有接口中预选出两个CAN接口以及备用链路接口;
[0015]若不支持则将所述控制器升级成多接口控制器并在所述多接口控制器的所有接口中预选出两个CAN接口以及备用链路接口。
[0016]可选地,所述获取所述主CAN与副CAN的ID参数,包括:
[0017]根据所述控制器要求确定所述ID参数的ID类型;
[0018]若所述控制器要求为需要较小范围的ID来标识不同消息,此时ID类型为标准标识符,利用如下标准公式计算ID类型为标准标识符的ID参数:
[0019]BZID=(SRR<<10)|(IDE<<9)|(SID<<0)
[0020]其中,BZID为所述标准标识符对应的ID参数,SRR为占位符,IDE为标识符扩展位,SID为11位的标准标识符;
[0021]若所述控制器要求为需要更大范围的ID来标识不同消息,此时ID类型为扩展标识符,利用如下扩展公式计算ID类型为标准标识符的ID参数:
[0022]KZID=(SRR<<28)|(IDE<<27)|(EID<<0)
[0023]其中,KZID为所述扩展标识符对应的ID参数,SRR为占位符,IDE为标识符扩展位,EID为18位的扩展标识符。
[0024]可选地,所述利用所述ID参数与所述主波特率以及副波特率对所述主CAN与副CAN进行配置,得到控制链路,包括:
[0025]确定所述控制器的API,利用所述API提供的函数方法对所述主CAN与副CAN进行初始化,得到初始化主CAN与初始化副CAN;
[0026]根据所述主波特率以及副波特率分别对所述初始化主CAN与初始化副CAN进行波特率配置;
[0027]将进行波特配置后的初始化主CAN与初始化副CAN对应的ID参数写入所述存储器的寄存器中,得到控制链路。
[0028]可选地,所述根据预设的通讯需求确定备用链路类型,包括:
[0029]将所述通讯需求逐个列入表格中,得到需求表;
[0030]根据所述需求表每行中的通讯需求确定可以使用的链路类型;
[0031]将所述链路类型的交集确定为备用链路类型。
[0032]可选地,所述通过所述通讯协议将预设的备用链路与所述备用链路接口以及控制链路进行连接,得到双CAN链路,包括:
[0033]根据所述备用链路类型确定连接所需的适配器类型,得到备用适配器;
[0034]根据所述通讯协议对所述备用适配器采用物理连接方式将所述备用链路接口备用链路进行连接,得到连接链路;
[0035]将所述连接链路与所述控制链路进行连接,得到双CAN链路。
[0036]可选地,所述在所述主CAN中选择一个未被使用的CAN编码作主心跳编码,包括:
[0037]通过监视主CAN通信,分析所述主CAN中已经使用的编码,得到过期编码;
[0038]根据所述过期编码确定对应的未被使用的编码,得到执行编码;
[0039]在所述执行编码中任意选取一个作为主心跳编码。
[0040]可选地,所述通过监视主CAN通信,分析所述主CAN中已经使用的编码,得到过期编码,包括:
[0041]将预设的CAN监视软件连接到主CAN总线并利用所述CAN监视软件捕获数据,得到CAN消息;
[0042]根据所述通讯需求确定主CAN中的编码类型;
[0043]利用所述编码类型对所述CAN消息进行解码,得到解码数据;
[0044]将已知的参考文档与所述解码数据进行对比,确定已经使用的过期编码。
[0045]可选地,所述在所述主CAN中设置主计时器并按照预设的时间段向所述控制器中发送所述主心跳编码,包括:
[0046]在所述控制器的配置中,设置主计时器的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于双CAN通讯实现通讯链路冗余方法,其特征在于,所述方法包括:在预设的控制器中设置两个CAN接口以及备用链路接口,任意选取两个CAN总线的其中一个为主CAN,另一个为副CAN,获取所述主CAN与副CAN的ID参数,利用波特公式计算所述主CAN与副CAN的主波特率以及副波特率,其中,利用如下波特公式计算所述主CAN的主波特率:其中,ZBaudRate为所述主波特率,T
Q
为一个时间量化周期;SyncSeg为同步段时间量化周期数;PropSeg为传播时间分割段时间量化周期数;PhaseSeg 1为相位缓冲段1时间量化周期数;PhaseSeg 2为相位缓冲段2时间量化周期数;利用所述ID参数与所述主波特率以及副波特率对所述主CAN与副CAN进行配置,得到控制链路,根据预设的通讯需求确定备用链路类型,通过所述备用链路类型确定对应的的通讯协议,通过所述通讯协议将预设的备用链路与所述备用链路接口以及控制链路进行连接,得到双CAN链路;在所述主CAN中选择一个未被使用的CAN编码作主心跳编码,在所述主CAN中设置主计时器并按照预设的时间段向所述控制器中发送所述主心跳编码,当所述控制器超过预设的时间段还没有收到主心跳编码时,通过所述控制器将所述主CAN切换成副CAN,形成副通讯链路;在所述副CAN中设置备计时器,当利用备通讯链路进行通讯时,备计时器开始工作并向所述控制器发送备心跳编码,当所述控制器超过预设的时间段还没有收到备心跳编码时,通过所述控制器将所述副CAN切换成备用链路,形成备用通讯链路。2.如权利要求1所述的基于双CAN通讯实现通讯链路冗余方法,其特征在于,所述在预设的控制器中设置两个CAN接口以及备用链路接口,包括:根据所述控制器的器件文档确定所述控制器是否支持多接口;若支持则在所述控制器的所有接口中预选出两个CAN接口以及备用链路接口;若不支持则将所述控制器升级成多接口控制器并在所述多接口控制器的所有接口中预选出两个CAN接口以及备用链路接口。3.如权利要求1所述的基于双CAN通讯实现通讯链路冗余方法,其特征在于,所述获取所述主CAN与副CAN的ID参数,包括:根据所述控制器要求确定所述ID参数的ID类型;若所述控制器要求为需要较小范围的ID来标识不同消息,此时ID类型为标准标识符,利用如下标准公式计算ID类型为标准标识符的ID参数:BZID=(SRR<<10)|(IDE<<9)|(SID<<0)其中,BZID为所述标准标识符对应的ID参数,SRR为占位符,IDE为标识符扩展位,SID为11位的标准标识符;若所述控制器要求为需要更大范围的ID来标识不同消息,此时ID类型为扩展标识符,利用如下扩展公式计算ID类型为标准标识符的ID参数:KZID=(SRR<<28)|(IDE<<27)|(EID<<0)
其中,KZID为所述扩展标识符对应的ID参数,SRR为占位符,IDE为标识符扩展位,EID为18位的扩展标识符。4.如权利要求1所述的基于双CAN通讯实现通讯链路冗余方法,其特征在于,所述利用所述ID参数与所述主波特率以及副波特率对所述主CAN与副CAN进行配置,得到控制链路,包括:确定所述控制器的API,利用所述API提供的函数方法对所述主CAN与副CAN进行初始化,得到初始化主CAN与初始化副CAN;根...

【专利技术属性】
技术研发人员:邓鹏傅学东杨泽霖张俊君罗蓉琅吴文阳吴贞通
申请(专利权)人:泰豪科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1