用于测试汽车仪表的CAN虚拟报文组建方法及系统技术方案

技术编号:27751435 阅读:21 留言:0更新日期:2021-03-19 13:47
本发明专利技术的用于测试汽车仪表的CAN虚拟报文组建方法及系统涉及一种用于测试的CAN报文模拟方法和系统,目的是为了克服现有方法组建CAN虚拟报文需要显示多个控件,导致测试的过程的机械劳动致人疲劳的问题,其中方法具体如下:步骤一、读取预先存储的CAN报文格式表,识别并解析CAN报文格式表中CAN报文的格式;步骤二、构建包括待测试信号的CAN虚拟报文结构体;步骤三、根据待测试信号所位于CAN报文的数据编号、待测试信号的信号名和待测试信号所对应的物理量设定值生成JSON格式的测试指令;步骤四、将物理量设定值作为空缺的物理值填充入CAN虚拟报文结构体中,完成CAN虚拟报文的构建。

【技术实现步骤摘要】
用于测试汽车仪表的CAN虚拟报文组建方法及系统
本专利技术涉及一种用于测试的CAN报文模拟方法和系统,具体涉及用于用于测试汽车仪表的CAN报文模拟方法和系统。
技术介绍
CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是国际上应用最广泛的现场总线之一,大量运用于工控和汽车领域。在汽车仪表测试的过程中,只要根据该协议和信号值,就能组建CAN报文,从而模拟车上的各种CAN信号,对仪表进行测试。要想组建一条CAN报文,首先需要知道该报文的数据编号(MessageID),数据长度(MessageLength)。并且,由于每条报文中包含若干信号,还需要知道每个信号在整个报文中占哪些bit位(BitNumber)的不同,在整个报文中占的bit位的长度(SignalLength)和信号名(SignalName)。获得上述信息后,可以创建一个可调节的控件如进度条或文本框等,其中进度条或文本框所对应的值为相应信号的值,即代表物理量的值,而测试者通过不断调整控件的值,程序根据数值信息组建CAN报文发送给仪表,完成一次测试。但这种方法存在一些问题,如图1所示,如果需要发送多个不同的信号,需要有多个个控件,并且记住他们的位置,并在测试的过程中需要手动不断操作,大部分时间属于重复的机械劳动,极易令测试人员产生疲劳。而采用测试脚本进行测试,则需要编写测试脚本,这需要测试人员有一定的脚本编程能力,限制了测试脚本的普及;且编写每个脚本都需要打开报文表,手动输入起始位(startbit)和信号长度(SignalLength),也相对繁琐。
技术实现思路
本专利技术的目的是为了克服现有方法组建CAN虚拟报文需要显示多个控件,导致测试的过程的机械劳动致人疲劳的问题,提供了一种用于测试汽车仪表的CAN虚拟报文组建方法及系统。本专利技术的用于测试汽车仪表的CAN虚拟报文组建方法,方法具体如下:步骤一、读取预先存储的CAN报文格式表,识别并解析CAN报文格式表中CAN报文的格式;CAN报文包括数据编号和至少一个信号;信号包括信号名;步骤二、根据步骤一得到的CAN报文的格式,构建包括待测试信号的CAN虚拟报文结构体;且该CAN虚拟报文结构体中待测试信号所对应的物理值空缺;步骤三、根据待测试信号所位于CAN报文的数据编号、待测试信号的信号名和待测试信号所对应的物理量设定值生成JSON格式的测试指令;步骤四、通过测试指令寻找对应的CAN报文,并将物理量设定值作为空缺的物理值填充入CAN虚拟报文结构体中,完成CAN虚拟报文的构建。进一步地,还包括,步骤五、将CAN虚拟报文发送至汽车仪表,如果待测试信号所对应的物理值和汽车仪表中相应信号的显示值的偏差在设定误差范围内,则判断汽车仪表中相应信号的显示正常。进一步地,步骤二还包括:根据CAN报文的格式填充预设的列表模板,形成CAN虚拟报文列表。本专利技术的用于测试汽车仪表的CAN虚拟报文组建系统,系统包括:CAN报文表解析模块,用于读取预先存储的CAN报文格式表,识别并解析CAN报文格式表中CAN报文的格式;CAN报文包括数据编号和至少一个信号;信号包括信号名;CAN虚拟报文组建模块,与CAN报文表解析模块连接,用于根据CAN报文表解析模块得到的CAN报文的格式,构建包括待测试信号的CAN虚拟报文结构体;且该CAN虚拟报文结构体中待测试信号所对应的物理值空缺;测试指令生成模块,与CAN虚拟报文组建模块连接,用于根据待测试信号所位于CAN报文的数据编号、待测试信号的信号名和待测试信号所对应的物理量设定值生成JSON格式的测试指令;CAN虚拟报文填充模块,同时与CAN虚拟报文组建模块和测试指令生成模块连接,用于通过测试指令寻找对应的CAN报文,并将物理量设定值作为空缺的物理值填充入CAN虚拟报文结构体中,完成CAN虚拟报文的构建。进一步地,还包括:报文发送测试模块,与CAN虚拟报文填充模块连接,用于将CAN虚拟报文发送至汽车仪表,如果待测试信号所对应的物理值和汽车仪表中相应信号的显示值的偏差在设定误差范围内,则判断汽车仪表中相应信号的显示正常。进一步地,CAN虚拟报文组建模块还包括:列表生成模块,用于根据CAN报文的格式填充预设的列表模板,形成CAN虚拟报文列表。本专利技术的有益效果是:测试指令生成后,便可代替手工触发信号。而且一旦JSON测试脚本写好,在第二轮、第三轮测试时也只需执行脚本。节省了大量人工,测试效率大幅提高。经过实际检验,该本专利技术的方法和系统具有自动化,能提高工作效率和生产力,尤其适合测试信号灯、故障码这些种类大、数据多的功能。附图说明图1为采用现有方法创建的可调节的控件的界面示意图;图2为CAN虚拟报文列表的界面示意图;图3为采用本专利技术的用于测试汽车仪表的CAN虚拟报文组建方法或系统组建的CAN虚拟报文中待测试信号的结构示意图;图4为本专利技术的用于测试汽车仪表的CAN虚拟报文组建方法的流程图;图5为本专利技术的用于测试汽车仪表的CAN虚拟报文组建系统的结构示意图。具体实施方式本专利技术的用于测试汽车仪表的CAN虚拟报文组建方法中,采用JavaScript对象简谱格式来进行测试用例的生成。JavaScript对象简谱(JavaScriptObjectNotation,JSON)是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成,因此本方法用JSON格式编写测试用例,使测试者无需具备编写脚本的能力,大大降低了设计测试用例难度,并在系统软件(用于测试汽车仪表的CAN虚拟报文组建系统)的配合下进行CAN信号的自动发送。该系统工作流程如下:1、首先获得汽车部件厂家提供的CAN报文格式表,如下表:用C#读取该CAN报文格式表,识别解析里面的内容,包括数据编号(MessageID),数据长度(MessageLength),每个信号的信号名(SignalName),起始位(Startbit),信号长度(SignalLength).填充结构体如下:StructMessage{CharmessageName[50];IntmessageLength;StructSignal*sinnals[];}StructSignal{CharsignalName[50];IntstartBit;IntsignalLength;Intphysical;}其中,Physical是无法从报文结构表中获取的,这个需要后续进行填充。用上述内容填充C#的数据表格(DataGridView)控件,如图2所示,为两个填充后的DataGridView控件所构成的CAN虚拟报文列表,上面的用来显示所有CAN虚拟报文组本文档来自技高网
...

【技术保护点】
1.用于测试汽车仪表的CAN虚拟报文组建方法,其特征在于,所述方法具体如下:/n步骤一、读取预先存储的CAN报文格式表,识别并解析CAN报文格式表中CAN报文的格式;/n所述CAN报文包括数据编号和至少一个信号;所述信号包括信号名;/n步骤二、根据步骤一得到的CAN报文的格式,构建包括待测试信号的CAN虚拟报文结构体;且该CAN虚拟报文结构体中待测试信号所对应的物理值空缺;/n步骤三、根据待测试信号所位于CAN报文的数据编号、待测试信号的信号名和待测试信号所对应的物理量设定值生成JSON格式的测试指令;/n步骤四、通过测试指令寻找对应的CAN报文,并将物理量设定值作为空缺的物理值填充入CAN虚拟报文结构体中,完成CAN虚拟报文的构建。/n

【技术特征摘要】
1.用于测试汽车仪表的CAN虚拟报文组建方法,其特征在于,所述方法具体如下:
步骤一、读取预先存储的CAN报文格式表,识别并解析CAN报文格式表中CAN报文的格式;
所述CAN报文包括数据编号和至少一个信号;所述信号包括信号名;
步骤二、根据步骤一得到的CAN报文的格式,构建包括待测试信号的CAN虚拟报文结构体;且该CAN虚拟报文结构体中待测试信号所对应的物理值空缺;
步骤三、根据待测试信号所位于CAN报文的数据编号、待测试信号的信号名和待测试信号所对应的物理量设定值生成JSON格式的测试指令;
步骤四、通过测试指令寻找对应的CAN报文,并将物理量设定值作为空缺的物理值填充入CAN虚拟报文结构体中,完成CAN虚拟报文的构建。


2.根据权利要求1所述的用于测试汽车仪表的CAN虚拟报文组建方法,其特征在于,还包括,
步骤五、将CAN虚拟报文发送至汽车仪表,如果待测试信号所对应的物理值和汽车仪表中相应信号的显示值的偏差在设定误差范围内,则判断汽车仪表中相应信号的显示正常。


3.根据权利要求1所述的用于测试汽车仪表的CAN虚拟报文组建方法,其特征在于,所述步骤二还包括:
根据CAN报文的格式填充预设的列表模板,形成CAN虚拟报文列表。


4.用于测试汽车仪表的CAN虚拟报文组建系统,其特征在于,所述系统包括:
CAN报文表解析模块(1),用于读取预先存储的CAN报文格式表,识别并解析CAN报文格...

【专利技术属性】
技术研发人员:车强杨春赵旭琦侯玉洁
申请(专利权)人:航天科技控股集团股份有限公司
类型:发明
国别省市:黑龙江;23

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

1