[发明专利]一种CAN总线故障模拟系统及故障模拟方法有效
申请号: | 201810505715.0 | 申请日: | 2018-05-23 |
公开(公告)号: | CN108737187B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 董剑;左德承;刘宏伟;罗丹彦;张森;张展;舒燕君;吴晋 | 申请(专利权)人: | 哈尔滨工业大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26;H04L12/40 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 岳泉清 |
地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 can 总线 故障 模拟 系统 方法 | ||
1.一种CAN总线故障模拟系统,其特征在于:所述CAN总线故障模拟系统包括:信息收发模块、故障注入模块和控制软件模块;
所述信息收发模块用于将来自两端的目标机的数据帧进行数字信号和模拟信号的转化;
所述故障注入模块用于根据控制软件模块发送的数据,对CAN总线的链路层或物理层进行故障注入;
所述控制软件模块用于提供人机交互界面,发送故障注入参数到故障注入模块;所述故障注入参数包括故障注入方式、故障的时间类型、注入位置;
链路层故障子模块用于在数据帧传输的链路层中拦截信息,按照用户指定的要求改变数据帧,将故障注入方式分为指定故障、延时故障、随机故障和概率故障;故障的时间类型分为瞬时故障、永久故障和间歇故障;注入位置分为数据场、仲裁场和控制场;用户能够随机组合不同的故障注入方式、触发时间参数和注入位置,形成不同类型的故障;
物理层故障子模块用于用户自定义故障注入和触发故障注入;用户自定义故障注入是用户通过宿主机端控制软件选择故障注入方式和故障注入时间的物理层故障,通过串口传入故障注入器引发故障;触发故障注入则是用户设定触发故障的对应数据和对应ID,当故障注入器检测到总线上传送的数据帧的数据或ID是设定的数值时,产生物理层故障;所述故障注入方式分为指定故障、延时故障和概率故障,故障的时间类型分为瞬时故障、永久故障和间歇故障;
其中链路层故障子模块包括帧解析单元,数据帧修改单元,帧重组单元和结果回收单元;
所述帧解析单元用于通过CAN总线控制器驱动程序对CAN总线报文进行帧解析,获得总线数据帧的不同场,并将不同数据帧的不同数据存放到相应的寄存器内等待故障注入模块的处理,帧解析操作在CAN控制器内完成;
所述数据帧修改单元用于对数据帧上分的7个场分别注入固定0,固定1和位翻转的故障;
所述帧重组单元用于将修改过的帧添加头形成报文存在相应的寄存器内;
所述结果回收单元用于定时采集数据帧解析单元和帧重组单元中的数据,查看故障注入是否成功;结果传给控制软件模块并显示给用户。
2.根据权利要求1所述一种CAN总线故障模拟系统,其特征在于:所述信息收发模块还包括总线初始化子模块、发送数据帧子模块和接收数据帧子模块;
所述总线初始化子模块用于对寄存器和时钟进行初始化;
所述发送数据帧子模块用于根据每条发送的数据帧的优先级,进行数据帧发送;
所述接收数据帧子模块用于根据预先得到的ID,接收数据帧,并返回应答信息。
3.根据权利要求1所述一种CAN总线故障模拟系统,其特征在于:所述控制软件模块包括用参数生成子模块、检测子模块、注入界面子模块和结果分析子模块;
所述参数生成子模块用于根据用户的设置生成被注入器识别的故障注入参数;在自检过程中,参数生成子模块为注入器内部的每一个寄存器生成一个初始值;在注入过程中,参数生成子模块生成的是在当前故障模式下的寄存器的值;所述故障注入参数包括故障注入方式、故障的时间类型、注入位置;
所述检测子模块用于检测注入器初始状态,向注入器内部的每一个寄存器中写入初始值,读取该值,比较写入值与读出值,一致则表明注入器及通讯链路完好可用;
所述注入界面子模块用于将参数生成子模块生成的参数进行设置,将当前故障模式所需要的参数发送给注入器,同时把参数传递给结果分析模块以备注入结束后的分析;
所述结果分析模块用于接收信息收发模块读取故障注入器内部的寄存器值,获取故障注入的结果。
4.一种基于权利要求1所述CAN总线故障模拟系统的CAN总线故障模拟方法,其特征在于:所述CAN总线故障模拟方法包括以下步骤:
步骤一:通过检测子模块对注入器进行检测,若注入器及通讯链路工作状态正常,则通过注入界面子模块进行故障注入参数设置,通过参数生成子模块生成故障注入参数;若注入器及通讯链路工作状态不正常,则调试注入器及通讯链路;
步骤二:将步骤一生成的故障注入参数发送至故障注入器,根据故障注入参数设置故障注入模块中的故障层次类型寄存器,当寄存器的值为0x00时,表示通过链路层故障子模块注入链路层层故障,当寄存器的值为0x01时,表示通过物理层故障子模块注入物理层故障;
步骤三:通过结果分析模块获取故障注入器的结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810505715.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种内网安全态势感知方法
- 下一篇:一种网卡故障切换系统