Can总线负载率监控方法及系统的制作方法_2

文档序号:9420173阅读:来源:国知局

[0036]请同时参考图2及图3,下面将附图对本发明实施例的CAN总线负载率监控系统详细说明。
[0037]如图2及3所示,该实施例的CAN总线负载率监控系统可以包括:CAN主节点及CAN从节点;CAN主节点及CAN从节点;所述CAN主节点及CAN从节点通过CAN总线连接;所述CAN主节点包括:
[0038]设置单元,用于将CAN总线通信的接收设置为中断方式,并设置为接收所有数据;
[0039]计算单元,用于根据当前设置的波特率以及数据帧类型,计算第一预设时间内允许发送的数据帧的最大数量N。;
[0040]第一处理单元,用于响应接收中断时,确认接收到的CAN数据帧的数据长度length,并保存当前的计数值CNT,根据所述当前的计数值CNT与上次响应接收中断的计数值CNTcild,计算得到所述第一预设时间内实际发送的数据帧数量N ;所述计数值CNT的预设初始值小于所述第一预设时间,所述计数值CNT在CAN总线的主节点运行时实时累加;第二处理单元,用于比较所述数据帧的最大数量N。与所述实际发送的数据帧数量N,在所述实际发送的数据帧数量N大于所述数据帧的最大数量N。时,确定当前的总线负载率异常。
[0041]优选地,如图3所示,所述检测电路可以包括:报警单元,用于在第二预设时间内连续确定当前的总线负载率异常时,进行故障提示和/或报警操作,所述报警单元与所述第二处理单元信号连接。
[0042]具体地,所述第一处理单元包括:处理子单元(图未示出),用于如下公式计算所述第一预设时间内实际发送的数据帧数量N,N = Iength^A(CNT-CNTcild)*(100*10 3))。CAN总线负载率监控系统还可以包括第三处理单元,用于在所述实际发送的数据帧数量N小于或等于所述数据帧的最大数量N。时,确定当前的总线负载率正常;所述第三处理单元与所述第二处理单元信号连接。所述第一预设时间可为Ims ;所述计数值CNT的单位可为10us0
[0043]上述CAN总线负载率监控系统的工作原理简述如下:在主节点的设计中,将CAN总线通信的接收设置为中断方式,对CAN总线数据帧不进行过滤,所有的CAN总线数据均可接收。首先,根据当前设置的波特率以及数据帧的类型,即可计算出在当前波特率下,Ims时间可发送的数据帧的数量N。;在主节点中设置有一个小于Ims的计数值CNT,如计数值的单位为lOOus,计数值CNT在主节点运行时实时累加;CNT = CNT+1 ;每次响应接收中断时,首先确认接收到的CAN数据帧的数据长度length,并保存当前的计数值CNT,同时将当前的计数值与上次响应接收中断的计数值CNT-进行比较运算,即可得到当前的Ims发送的数据帧数量,即:N = lengths/ ((CNT-CNTold) * (100*10 3));当N>N。(Ims最大允许的发送的数据位)时,则表示当前的总线负载率过高,有总线拥塞和数据帧丢包的情况。当N < N。时,则表示当前的总线负载率正常,可正常通信。
[0044]本实施例的CAN总线负载率监控系统为解决因为CAN总线负载率过高,造成CAN总线拥塞以及丢包的情况,在CAN总线网络中设置一个为主节点,主节点可以对CAN总线上的所有数据进行实时有效监控,从而保证正常通信。
[0045]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种CAN总线负载率监控方法,其特征在于,包括: 步骤A:将CAN总线通信的接收设置为中断方式,并设置为接收所有数据; 步骤B:根据当前设置的波特率以及数据帧类型,计算第一预设时间内允许发送的数据帧的最大数量N。; 步骤C:响应接收中断时,确认接收到的CAN数据帧的数据长度length,并保存当前的计数值CNT,根据所述当前的计数值CNT与上次响应接收中断的计数值CNTcild,计算得到所述第一预设时间内实际发送的数据帧数量N ;所述计数值CNT的预设初始值小于所述第一预设时间,所述计数值CNT在CAN总线的主节点运行时实时累加; 步骤D:比较所述数据帧的最大数量N。与所述实际发送的数据帧数量N ; 步骤E:在所述实际发送的数据帧数量N大于所述数据帧的最大数量N。时,确定当前的总线负载率异常。2.如权利要求1所述的CAN总线负载率监控方法,其特征在于,在所述步骤E之后还包括: 步骤F:在第二预设时间内连续确定当前的总线负载率异常时,进行故障提示和/或报警操作。3.如权利要求1所述的CAN总线负载率监控方法,其特征在于,在所述步骤D之后还包括: 在所述实际发送的数据帧数量N小于或等于所述数据帧的最大数量N。时,确定当前的总线负载率正常。4.如权利要求1-3中任一项所述的CAN总线负载率监控方法,其特征在于,所述步骤C中所述第一预设时间内实际发送的数据帧数量N的计算公式如下:N = length*8/ ((CNT-CNTold) * (100*10 3))。5.如权利要求4所述的CAN总线负载率监控方法,其特征在于,所述第一预设时间为Ims ;所述计数值CNT的单位为10us06.一种CAN总线负载率监控系统,其特征在于,包括:CAN主节点及CAN从节点;所述CAN主节点及CAN从节点通过CAN总线连接;所述CAN主节点包括: 设置单元,用于将CAN总线通信的接收设置为中断方式; 计算单元,用于根据当前设置的波特率以及数据帧类型,计算第一预设时间内允许发送的数据帧的最大数量N。; 第一处理单元,用于响应接收中断时,确认接收到的CAN数据帧的数据长度length,并保存当前的计数值CNT,根据所述当前的计数值CNT与上次响应接收中断的计数值CNTcild,计算得到所述第一预设时间内实际发送的数据帧数量N ;所述计数值CNT的预设初始值小于所述第一预设时间,所述计数值CNT在CAN总线的主节点运行时实时累加; 第二处理单元,用于比较所述数据帧的最大数量N。与所述实际发送的数据帧数量N,在所述实际发送的数据帧数量N大于所述数据帧的最大数量N。时,确定当前的总线负载率异常。7.如权利要求6所述的CAN总线负载率监控系统,其特征在于,还包括:报警单元,用于在第二预设时间内连续确定当前的总线负载率异常时,进行故障提示和/或报警操作,所述报警单元与所述第二处理单元信号连接。8.如权利要求6所述的CAN总线负载率监控系统,其特征在于,所述第一处理单元包括:处理子单元,用于如下公式计算所述第一预设时间内实际发送的数据帧数量N,N =length*8/ ((CNT-CNTold) * (100*10 3))。9.如权利要求5-8中任一项所述的CAN总线负载率监控系统,其特征在于,还包括第三处理单元,用于在所述实际发送的数据帧数量N小于或等于所述数据帧的最大数量N。时,确定当前的总线负载率正常;所述第三处理单元与所述第二处理单元信号连接。10.如权利要求9所述的CAN总线负载率监控系统,其特征在于,所述第一预设时间为Ims ;所述计数值CNT的单位为10us0
【专利摘要】本发明涉及一种CAN总线负载率监控方法及系统。该方法包括:将CAN总线通信的接收设置为中断方式,并设置为接收所有数据;根据当前设置的波特率以及数据帧类型,计算第一预设时间内允许发送的数据帧的最大数量N0;响应接收中断时,确认接收到的CAN数据帧的数据长度length,并保存当前的计数值CNT,根据当前的计数值CNT与上次响应接收中断的计数值CNTold,计算得到第一预设时间内实际发送的数据帧数量N;比较数据帧的最大数量N0与实际发送的数据帧数量N;在实际发送的数据帧数量N大于数据帧的最大数量N0时,确定当前的总线负载率异常。本发明能对实现CAN总线负载率有效监控,有力保障CAN总线的正常通信。
【IPC分类】H04L12/24, H04L12/26
【公开号】CN105141447
【申请号】CN201510447975
【发明人】罗诗风, 张陆续, 何爱
【申请人】湖南三一智能控制设备有限公司
【公开日】2015年12月9日
【申请日】2015年7月28日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1