CN111291443A - 整车控制器软件的i/o模块模型自动生成方法、装置、设备及存储介质 - Google Patents
整车控制器软件的i/o模块模型自动生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111291443A CN111291443A CN201811493612.3A CN201811493612A CN111291443A CN 111291443 A CN111291443 A CN 111291443A CN 201811493612 A CN201811493612 A CN 201811493612A CN 111291443 A CN111291443 A CN 111291443A
- Authority
- CN
- China
- Prior art keywords
- signal
- module
- processing module
- information
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 203
- 238000004590 computer program Methods 0.000 claims description 21
- 238000001914 filtration Methods 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000003708 edge detection Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 abstract description 10
- 238000012423 maintenance Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 15
- 238000011161 development Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000006872 improvement Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000011217 control strategy Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种整车控制器软件的I/O模块模型自动生成方法、装置、设备及存储介质,所述方法包括:获取DBC文件中的CAN消息信息及CAN信号信息;根据CAN消息信息的类别,生成对应的CAN消息处理模块;根据每类CAN消息信息所对应的CAN信号信息的分类结果,在对应的CAN消息处理模块内生成对应的CAN信号分类处理模块;根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一信号分类处理模块内的各CAN信号的处理逻辑单元;对每一CAN信号分类处理模块进行内部参数配置;对CAN消息处理模块、CAN信号分类处理模块及处理逻辑单元进行连线,并在显示界面上显示。本发明能有效降低I/O模块模型的人工维护的人力成本,并且能够保证信号变更处理的一致性及可靠性。
Description
技术领域
本发明涉及控制器软件技术领域,尤其涉及一种整车控制器软件的I/O模块模型自动生成方法、装置、设备及存储介质。
背景技术
目前,车辆各主要零部件控制器,尤其是整车控制器,主要通过控制器局域网络(Controller Area Network,CAN)进行控制信号交互。在目前整车控制器常用的软件架构中,底层软件负责信号的采集及发送,链接层软件负责信号的打包、解包及信号校验,应用层软件负责信号预处理、检测信号故障及实施故障处理。其中,在整车控制器的应用层软件开发领域,基于模型的开发方式已经成为汽车行业内普遍采用的开发方式,其中,MATLAB/Simulink软件因其在算法开发、数据可视化、数据分析、仿真模型搭建等领域的强大功能,成为主流的控制策略模型开发环境。
虽然MATLAB/Simulink在控制策略模型的搭建上具备直观、清晰、灵活的优势,但在整车控制器软件的输入、输出模块(即I/O模块)的搭建过程中,却存在以下技术问题:
整车控制器软件I/O模块的信号定义复杂、数据类型多变,当I/O模块出现信号变更时(例如出现信号类型变更而导致I/O模块需要修改),需要人工来手动修改I/O模块的模型,人工维护的人力成本高,且难以保证I/O模块模型的信号变更处理的一致性及可靠性。
发明内容
本发明实施例提供一种整车控制器软件的I/O模块模型自动生成方法、装置、设备及存储介质,能有效降低I/O模块模型的人工维护的人力成本,并且能够保证I/O模块模型的信号变更处理的一致性及可靠性。
本发明一实施例提供一种整车控制器软件的I/O模块模型自动生成方法,其包括:
获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
对每一所述CAN信号分类处理模块进行内部参数配置;
对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
与现有技术相比,本发明实施例公开的所述整车控制器软件的I/O模块模型自动生成方法,通过获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;对每一所述CAN信号分类处理模块进行内部参数配置;对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。由此可见,当信号变更而导致I/O模块需要进行维护更新时,本发明实施例只需要首先获取DBC文件,然后通过对DBC文件中存储有的CAN消息及CAN信号进行分类,实现对不同的CAN信号对象实施分类处理,从而实现各CAN信号处理模块的自动生成,进而实现整车控制器软件的I/O模块模型的自动生成,这样在进行I/O模块模型的维护时,可以无需人工维护而降低人力成本,并且能够保证I/O模块模型的信号变更处理的一致性及可靠性。
作为上述方案的改进,在所述对每一所述CAN信号分类处理模块进行内部参数配置之后,所述对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线并在显示界面上显示之前,还包括:
对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行自动排布。
作为上述方案的改进,所述获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息,具体为:
利用正则表达式提取DBC文件中的以预定编制规则编制的CAN消息信息及CAN信号信息;
识别出每一CAN消息信息的类别及每一CAN消息信息所对应的CAN信号信息,并对每一CAN消息所对应的CAN信号信息按照信号类型进行分类,从而得到CAN数据结构体;其中,所述CAN数据结构体包含有分类后的CAN消息信息及每类CAN消息信息所对应的分类后的各CAN信号信息。
作为上述方案的改进,在所述步骤所述获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息之后,还包括:
通过对分类后的所述CAN信号信息进行预处理,生成对应的CAN信号分类处理模块的接口定义文件;其中,所述接口定义文件包括所述CAN信号分类处理模块的模块接口信息;
根据分类后的所述CAN信号信息,在所述接口定义文件基础上生成对应的CAN信号分类处理模块的初始化文件;其中,所述初始化文件包含有所述CAN信号分类处理模块的初始化参数;
则,所述对每一所述CAN信号分类处理模块进行内部参数配置,具体为:
根据所述初始化文件,对每一所述CAN信号分类处理模块进行内部参数配置。
作为上述方案的改进,所述模块接口信息包括所述CAN信号信息的信号类型、观测量及标定量;
所述初始化参数包括所述CAN信号信息在控制器软件中的初始值、替代值及信号范围。
作为上述方案的改进,所述内部参数包括CAN信号限幅的上下限数值、滤波参数、故障阀值中的至少一种。
作为上述方案的改进,所述信号处理逻辑包括滤波、计时、上下沿检测及位处理中的至少一种。
本发明另一实施例对应提供了一种整车控制器软件的I/O模块模型自动生成装置,包括:
信息获取模块,用于获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
第一生成模块,用于根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
第二生成模块,用于根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
第三生成模块,用于根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
参数配置模块,用于对每一所述CAN信号分类处理模块进行内部参数配置;
连线显示模块,用于对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
与现有技术相比,本发明实施例公开的控所述制器软件的I/O模块模型自动生成终端设备,通过获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;对每一所述CAN信号分类处理模块进行内部参数配置;对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。由此可见,当信号变更而导致I/O模块需要进行维护更新时,本发明实施例只需要首先获取DBC文件,然后通过对DBC文件中存储有的CAN消息及CAN信号进行分类,实现对不同的CAN信号对象实施分类处理,从而实现各CAN信号处理模块的自动生成,进而实现整车控制器软件的I/O模块模型的自动生成,这样在进行I/O模块模型的维护时,可以无需人工维护而降低人力成本,并且能够保证I/O模块模型的信号变更处理的一致性及可靠性。
本发明另一实施例提供了一种整车控制器软件的I/O模块模型自动生成设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的整车控制器软件的I/O模块模型自动生成方法。
本发明另一实施例提供了一种存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述发明实施例所述的整车控制器软件的I/O模块模型自动生成方法。
附图说明
图1是本发明一实施例提供的一种整车控制器软件的I/O模块模型自动生成方法的流程示意图;
图2是DBC文件的打开示意图;
图3是CAN消息信息及CAN信号信息按预定编制规则存储在DBC文件中的示意图;
图4是从DBC文件中获取到CAN消息信息及CAN信号信息的示意图;
图5是经过信息分类后生成的数据结构体的简化示意图;
图6是生成CAN信号分类处理模块的接口定义文件的简化示意图;
图7是生成CAN信号分类处理模块的初始化文件的简化示意图;
图8是生成CAN消息处理模块的简化示意图;
图9是生成CAN信号分类处理模块的简化示意图
图10是在CAN信号分类处理模块内生成处理逻辑单元的简化示意图;
图11是对CAN信号分类处理模块进行内部参数配置的简化示意图;
图12是对各模块及单元进行排布与连线的简化示意图;
图13是本发明另一实施例提供的一种整车控制器软件的I/O模块模型自动生成装置的结构示意图;
图14是本发明另一实施例提供的一种整车控制器软件的I/O模块模型自动生成设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明一实施例提供的一种整车控制器软件的I/O模块模型自动生成方法的流程示意图,包括步骤S10至步骤S15:
S10,获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
整车的控制器会收集整车各部位发送过来的CAN消息信息(即CAN报文,CAN报文内携带有各CAN信号的信息),并以文本的形式保存在DBC文件中,参阅图2至图3。其中,每条CAN消息信息会带有自身的CAN消息信息(例如CAN消息地址、CAN消息的收发类型等)及CAN信号信息(例如CAN信号的名称、起始位、信号长度、最大值、最小值、收发节点等)。例如,每条CAN消息信息除了带有自身的CAN消息地址外,还可以对应带有signal1、signal2、signal3、signal4、signal5五种不同的CAN信号的信息。
优选的,所述步骤S10具体包括步骤S100至步骤S101:
S100,利用正则表达式提取DBC文件中的以预定编制规则编制的CAN消息信息及CAN信号信息;
其中,参阅图2至图3,所述CAN消息信息及所述CAN信号信息各自按照预定的编制规则进行编制的并保存在所述DBC文件里面。具体地,所述CAN消息信息按照CAN消息的命名规范进行编制;而所述CAN信号信息按照CAN信号的命名规范进行编制,利用下划线“_”区分信号名称中各字段的含义,通过名称中的标识符,来区分CAN信号中的有效信号、校验信号及无效信号等,例如,校验信号可以用“_VD”进行标识。可以理解的是,对DBC文件各信息编制的标准化,是实现I/O模块模型自动化生成的前提条件。
需要说明的是,在对所述CAN信号信息进行编制时,还可以定义CAN信号的信号长度、信号单位、发送节点等关键信息的编制规范,此为后续CAN信号分类及CAN信号分类处理模块生成的辅助条件。同时,还可以设计DBC文件的信息内容的校验规则,例如,最大、最小值核算,有效值范围核算等,以确保后续模块的正常生成。
在本步骤中,运行MATLAB软件中的脚本,执行依照本发明编写的程序命令,参阅图4,利用正则表达式自动提取通信矩阵DBC文件中的CAN消息信息及CAN信号信息,以供后继模块生成使用。
S101,识别出每一CAN消息信息的类别及每一CAN消息信息所对应的CAN信号信息,并对每一CAN消息所对应的CAN信号信息按照信号类型进行分类,从而得到CAN数据结构体SignalsInfo;其中,所述CAN数据结构体SignalsInfo包含有分类后的CAN消息信息及每类CAN消息信息所对应的分类后的各CAN信号信息。
当从所述DBC文件中得到所述CAN消息及所述CAN信号信息时,需要对所述CAN消息的类别进行识别以及识别出每一CAN消息信息所对应的CAN信号信息(即识别出所述CAN信号信息与对应的所述CAN消息信息的包含关系),然后对每一CAN消息所对应的CAN信号信息按照信号类型进行分类。当识别出每一CAN消息信息的类别及每一CAN消息信息所对应的各个CAN信号信息的类别后,生成所述数据结构体SignalsInfo,参阅图5,从而得到信息的分类结果。
需要说明的是,在对所述CAN信号信息进行分类处理时,无效的CAN信号信息则无需参与分类处理的工作,即:所述CAN数据结构体SignalsInfo不包含有无效的CAN信号信息。
S11,根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
具体地,参阅图8,每一所述CAN消息信息会按照其自身的类别(例如按照CAN消息地址分类或按照CAN收发类型分类),来生成对应的CAN消息处理模块,这些CAN消息处理模块即为整车控制器软件的I/O模块的框架,它们与整车控制器的应用软件的其他模块相连接,以获取其他模块发送过来的CAN报文。
S12,根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
优选地,每一CAN消息信息所对应的CAN信号信息,按照CAN信号的信号长度及物理意义,将CAN信号信息分为Float、UInt及Bool三种数据类型进行处理,目的是保持相同数据类型的信号在处理方式上的一致性,同时有助于精简模块。例如,参阅图9,假设一CAN消息对应有signal1、signal2、signal3、signal4、signal5五种不同的CAN信号的信息,其中,signal1与signal2均为Float类型,signal3与signal4均为UInt类型,signal5为Bool类型,则这五种信号信息分为三种,且对应生成三种CAN信号分类处理模块。
当然,CAN信号信息还可以按照其他信号类型进行分类,例如CAN信号的收发节点等。
S13,根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
举例而言,一CAN消息对应有signal1、signal2、signal3、signal4、signal5五种不同的CAN信号的信息,而这五种信号信息分为Float、UInt及Bool三种类型,且对应有Float、UInt及Bool三种信号分类处理模块,则根据每类CAN信号的预设的信号处理逻辑,在Float、UInt及Bool三种信号分类处理模块内各自生成signal1、signal2、signal3、signal4、signal5这五种CAN信号的处理逻辑单元。例如,参阅图10,Float信号分类处理模块内就生成signal1、signal2这两种CAN信号各自的处理逻辑单元。
其中,处理逻辑单元内包含有对CAN信号实施滤波、故障检测或故障处理等具体的处理逻辑。具体地,所述信号处理逻辑包括滤波、计时、上下沿检测及位处理中的至少一种。需要说明的是,同类CAN信号的信号处理逻辑一般相同(当然也可以设置为不相同),不同类CAN信号的信号处理逻辑一般不同(当然也可以设置为相同)。
S14,对每一所述CAN信号分类处理模块进行内部参数配置;
其中,参阅图11,对每一所述CAN信号分类处理模块进行内部参数配置的目的是:完善每一所述CAN信号分类处理模块本身的初始值及模块的界面显示属性等各项内容,以及完善每一所述CAN信号分类处理模块内的处理逻辑单元的初始值及单元的界面显示属性等各项内容,从而创建出完整的所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元,。优选地,所述内部参数配置包括CAN信号限幅的上下限数值、滤波参数、故障阀值中的至少一种。
S15,对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
具体地,参阅图12,当配置好各模块及单元的内部参数后,对所述CAN消息处理模块相互之间进行连线,对每一所述CAN消息处理模块内的各CAN信号分类处理模块相互之间进行连线,对每一所述CAN信号分类处理模块内的各处理逻辑单元相互之间进行连线,从而得到整车控制器软件的I/O模块模型,并最终在显示界面上进行显示。
与现有技术相比,在本发明实施例中,当信号变更而导致I/O模块需要进行维护更新时,本发明实施例只需要首先获取DBC文件,然后通过对DBC文件中存储有的CAN消息及CAN信号进行分类,实现对不同的CAN信号对象实施分类处理,从而实现各CAN信号处理模块的自动生成,进而实现整车控制器软件的I/O模块模型的自动生成,这样在进行I/O模块模型的维护时,可以无需人工维护而降低人力成本,并且能够保证I/O模块模型的信号变更处理的一致性及可靠性。
在本发明实施例中,优选地,在所述对每一所述CAN信号分类处理模块进行内部参数配置之后,所述对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线并在显示界面上显示之前,还包括步骤S14’:
S14’,对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行自动排布。
具体地,参阅图12,当创建好所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元,对这些模块与单元进行自动排布,排布结果应避免在显示时这些模块与单元的图形会相互交错,即:CAN消息处理模块相互之间没有交错、CAN消息处理模块内部的CAN信号分类处理模块相互之间没有交错,CAN信号分类处理模块内部的处理逻辑单元相互之间没有交错。优选地,排布的方式有“左对齐”、“右对齐”、“居中”等方式,通过自底向上计算各个模块及单元的位置参数,来实现整个I/O模块模型的自动排布。
在本实施例中,通过对I/O模块模型内的各模块的自动排布,能够增强I/O模块模型生成后的可读性。
在上述实施例中,可选地,在所述步骤所述获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息之后,还包括步骤S102至步骤S103:
S102,通过对分类后的所述CAN信号信息进行预处理,生成对应的CAN信号分类处理模块的接口定义文件ioSpec.xls;
其中,参阅图6,所述接口定义文件ioSpec.xls包括所述CAN信号分类处理模块的模块接口信息,模块的各参数尚未设置。优选地,所述模块接口信息包括所述CAN信号信息的信号类型、观测量及标定量。
S103,根据分类后的所述CAN信号信息,在所述接口定义文件基础上生成对应的CAN信号分类处理模块的初始化文件module_init.m;
具体地,参阅图7,当对所述CAN信号信息进行分类而得到所述数据结构体后,从所述数据结构体中获取所述CAN信号信息的各种信息参数,并对所述接口定义文件进行模块的各参数完善,从而生成对应的CAN信号分类处理模块的初始化文件module_init.m。其中,所述初始化文件module_init.m包含有所述CAN信号分类处理模块的初始化参数;所述初始化参数包括所述CAN信号信息在控制器软件中的初始值(例如标定量与观测量的具体数值)、替代值、信号范围等。
则,所述步骤S14具体为:
根据所述初始化文件,对每一所述CAN信号分类处理模块进行内部参数配置。
综上所述,采用本发明实施例所述的方法,可以实现控制器软件I/O模块从数据来源(即DBC文件的编制),到信号分类处理模块的自动生成,可以满足对于I/O模块模型批量处理的需求;同时,通过对I/O模块模型的各模块的生成过程的标准化处理(对应的是步骤S100至步骤S103的实现过程),进一步提高了I/O模块模型在信号变更时的一致性、可靠性;此外,通过实现I/O模块模型的自动排布,使得模型界面更整洁,提高了模型的可读性,极大地简化了工程人员维护I/O模块模型的操作步骤,节省了维护I/O模块模型的时间成本,为后继控制策略的算法开发、测试、标定提供了保障,避免了因人工修改I/O模块模型产生的数据问题,大大缩短了整车控制器软件的开发周期。
参见图13,是本发明一实施例提供的一种整车控制器软件的I/O模块模型自动生成装置的结构示意图,包括:
信息获取模块10,用于获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
第一生成模块11,用于根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
第二生成模块12,用于根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
第三生成模块13,用于根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
参数配置模块14,用于对每一所述CAN信号分类处理模块进行内部参数配置;
连线显示模块15,用于对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
优选地,所述装置还包括:排布模块,用于对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行自动排布。
优选地,所述信息获取模块包括:
信息提取单元,用于利用正则表达式提取DBC文件中的以预定编制规则编制的CAN消息信息及CAN信号信息;
信息分类单元,用于识别出每一CAN消息信息的类别及每一CAN消息信息所对应的CAN信号信息,并对每一CAN消息所对应的CAN信号信息按照信号类型进行分类,从而得到CAN数据结构体;其中,所述CAN数据结构体包含有分类后的CAN消息信息及每类CAN消息信息所对应的分类后的各CAN信号信息。
优选地,所述装置还包括:
接口定义文件生成模块,用于通过对分类后的所述CAN信号信息进行预处理,生成对应的CAN信号分类处理模块的接口定义文件;其中,所述接口定义文件包括所述CAN信号分类处理模块的模块接口信息;
初始化文件生成模块,用于根据分类后的所述CAN信号信息,在所述接口定义文件基础上生成对应的CAN信号分类处理模块的初始化文件;其中,所述初始化文件包含有所述CAN信号分类处理模块的初始化参数;
则,所述参数配置模块具体用于:根据所述初始化文件,对每一所述CAN信号分类处理模块进行内部参数配置。
综上所述,采用本发明实施例所述的装置,可以实现控制器软件I/O模块从数据来源,即DBC文件的编制,到信号分类处理模块的自动生成,可以满足对于I/O模块模型批量处理的需求;同时,通过对I/O模块模型的各模块的生成过程的标准化处理,提高了I/O模块模型在信号变更时的一致性、可靠性;此外,通过实现I/O模块模型的自动排布,使得模型界面更整洁,提高了模型的可读性,极大地简化了工程人员维护I/O模块模型的操作步骤,节省了维护I/O模块模型的时间成本,为后继控制策略的算法开发、测试、标定提供了保障,避免了因人工修改I/O模块模型产生的数据问题,大大缩短了整车控制器软件的开发周期。
参见图14,是本发明一实施例提供的整车控制器软件的I/O模块模型自动生成设备的示意图。该实施例的整车控制器软件的I/O模块模型自动生成终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如整车控制器软件的I/O模块模型自动生成程序。所述处理器执行所述计算机程序时实现上述各个整车控制器软件的I/O模块模型自动生成方法实施例中的步骤。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述整车控制器软件的I/O模块模型自动生成装置/终端设备中的执行过程。
所述整车控制器软件的I/O模块模型自动生成设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述整车控制器软件的I/O模块模型自动生成设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是整车控制器软件的I/O模块模型自动生成设备的示例,并不构成对整车控制器软件的I/O模块模型自动生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述整车控制器软件的I/O模块模型自动生成设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述整车控制器软件的I/O模块模型自动生成设备的控制中心,利用各种接口和线路连接整个整车控制器软件的I/O模块模型自动生成设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述整车控制器软件的I/O模块模型自动生成设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述整车控制器软件的I/O模块模型自动生成设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种整车控制器软件的I/O模块模型自动生成方法,其特征在于,包括:
获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
对每一所述CAN信号分类处理模块进行内部参数配置;
对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
2.如权利要求1所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,在所述对每一所述CAN信号分类处理模块进行内部参数配置之后,所述对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线并在显示界面上显示之前,还包括:
对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行自动排布。
3.如权利要求1所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,所述获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息,具体为:
利用正则表达式提取DBC文件中的以预定编制规则编制的CAN消息信息及CAN信号信息;
识别出每一CAN消息信息的类别及每一CAN消息信息所对应的CAN信号信息,并对每一CAN消息所对应的CAN信号信息按照信号类型进行分类,从而得到CAN数据结构体;其中,所述CAN数据结构体包含有分类后的CAN消息信息及每类CAN消息信息所对应的分类后的各CAN信号信息。
4.如权利要求1至3任一项所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,在所述步骤所述获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息之后,还包括:
通过对分类后的所述CAN信号信息进行预处理,生成对应的CAN信号分类处理模块的接口定义文件;其中,所述接口定义文件包括所述CAN信号分类处理模块的模块接口信息;
根据分类后的所述CAN信号信息,在所述接口定义文件基础上生成对应的CAN信号分类处理模块的初始化文件;其中,所述初始化文件包含有所述CAN信号分类处理模块的初始化参数;
则,所述对每一所述CAN信号分类处理模块进行内部参数配置,具体为:
根据所述初始化文件,对每一所述CAN信号分类处理模块进行内部参数配置。
5.如权利要求4所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,所述模块接口信息包括所述CAN信号信息的信号类型、观测量及标定量;
所述初始化参数包括所述CAN信号信息在控制器软件中的初始值、替代值及信号范围。
6.如权利要求1所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,所述信号处理逻辑包括滤波、计时、上下沿检测及位处理中的至少一种。
7.如权利要求1所述的整车控制器软件的I/O模块模型自动生成方法,其特征在于,所述内部参数包括CAN信号限幅的上下限数值、滤波参数、故障阀值中的至少一种。
8.一种整车控制器软件的I/O模块模型自动生成装置,其特征在于,包括:
信息获取模块,用于获取DBC文件中的每类CAN消息信息及每一CAN消息信息所对应的各类CAN信号信息;
第一生成模块,用于根据所述CAN消息信息的类别,生成对应的CAN消息处理模块,以得到I/O模块模型的框架;
第二生成模块,用于根据每一CAN消息信息所对应的CAN信号信息的分类结果,在对应的所述CAN消息处理模块内生成对应的CAN信号分类处理模块;
第三生成模块,用于根据每类CAN信号的预设的信号处理逻辑并调用Simulink模块库,来生成每一所述信号分类处理模块内的各CAN信号的处理逻辑单元;
参数配置模块,用于对每一所述CAN信号分类处理模块进行内部参数配置;
连线显示模块,用于对所述CAN消息处理模块、所述CAN信号分类处理模块及所述处理逻辑单元进行连线,并在显示界面上显示。
9.一种整车控制器软件的I/O模块模型自动生成设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的整车控制器软件的I/O模块模型自动生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任意一项所述的整车控制器软件的I/O模块模型自动生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811493612.3A CN111291443B (zh) | 2018-12-07 | 2018-12-07 | 整车控制器软件的i/o模块模型自动生成方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811493612.3A CN111291443B (zh) | 2018-12-07 | 2018-12-07 | 整车控制器软件的i/o模块模型自动生成方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291443A true CN111291443A (zh) | 2020-06-16 |
CN111291443B CN111291443B (zh) | 2021-04-06 |
Family
ID=71029309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811493612.3A Active CN111291443B (zh) | 2018-12-07 | 2018-12-07 | 整车控制器软件的i/o模块模型自动生成方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111291443B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190783A (zh) * | 2021-04-27 | 2021-07-30 | 北京车和家信息技术有限公司 | 用于整车控制器的数据处理方法、装置、介质和设备 |
CN114035539A (zh) * | 2021-10-25 | 2022-02-11 | 东风商用车有限公司 | 实例化车型通讯矩阵生成方法、装置、设备及存储介质 |
CN115314339A (zh) * | 2022-08-04 | 2022-11-08 | 潍柴动力股份有限公司 | Can通道标定量的查重方法、查重装置、处理器与车辆 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101506786A (zh) * | 2005-12-06 | 2009-08-12 | 伯克利程序控制公司 | 用于程序控制向/从电缆导线输入/输出信号的*** |
CN101763064A (zh) * | 2009-12-08 | 2010-06-30 | 沈阳飞机工业(集团)有限公司 | 面向工艺对象的飞机复杂构件数控加工工艺设计***及方法 |
CN102087657A (zh) * | 2010-09-14 | 2011-06-08 | 中广核(北京)仿真技术有限公司 | 一种用于核电站仿真平台的io对点方法和io对点装置 |
CN103473140A (zh) * | 2013-10-09 | 2013-12-25 | 浪潮(北京)电子信息产业有限公司 | 一种生命科学应用的集群分配方法、软件安装方法及装置 |
CN103488615A (zh) * | 2012-06-12 | 2014-01-01 | 北汽福田汽车股份有限公司 | 一种软硬件接口定义的源文件自动生成方法和装置 |
CN103777934A (zh) * | 2012-10-23 | 2014-05-07 | 广州汽车集团股份有限公司 | 一种基于matlab生成控制器can交互层的方法及*** |
CN104765616A (zh) * | 2015-04-29 | 2015-07-08 | 北京经纬恒润科技有限公司 | 一种自动生成io模型的方法及*** |
CN104850027A (zh) * | 2014-08-13 | 2015-08-19 | 北汽福田汽车股份有限公司 | 一种can数据接口建模自动生成方法及*** |
US20170097621A1 (en) * | 2014-09-10 | 2017-04-06 | Crestron Electronics, Inc. | Configuring a control sysem |
CN106950864A (zh) * | 2017-04-11 | 2017-07-14 | 重庆长安汽车股份有限公司 | 一种整车控制器的can通信程序生成方法及装置 |
CN108345288A (zh) * | 2017-01-23 | 2018-07-31 | 长城汽车股份有限公司 | Can信号接口软件的自动生成方法、***及车辆 |
CN108845967A (zh) * | 2018-07-03 | 2018-11-20 | 广东好帮手环球科技有限公司 | 一种i2c总线分析装置 |
US20180341609A1 (en) * | 2013-10-31 | 2018-11-29 | Yokogawa Electric Corporation | I/o module |
-
2018
- 2018-12-07 CN CN201811493612.3A patent/CN111291443B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101506786A (zh) * | 2005-12-06 | 2009-08-12 | 伯克利程序控制公司 | 用于程序控制向/从电缆导线输入/输出信号的*** |
CN101763064A (zh) * | 2009-12-08 | 2010-06-30 | 沈阳飞机工业(集团)有限公司 | 面向工艺对象的飞机复杂构件数控加工工艺设计***及方法 |
CN102087657A (zh) * | 2010-09-14 | 2011-06-08 | 中广核(北京)仿真技术有限公司 | 一种用于核电站仿真平台的io对点方法和io对点装置 |
CN103488615A (zh) * | 2012-06-12 | 2014-01-01 | 北汽福田汽车股份有限公司 | 一种软硬件接口定义的源文件自动生成方法和装置 |
CN103777934A (zh) * | 2012-10-23 | 2014-05-07 | 广州汽车集团股份有限公司 | 一种基于matlab生成控制器can交互层的方法及*** |
CN103473140A (zh) * | 2013-10-09 | 2013-12-25 | 浪潮(北京)电子信息产业有限公司 | 一种生命科学应用的集群分配方法、软件安装方法及装置 |
US20180341609A1 (en) * | 2013-10-31 | 2018-11-29 | Yokogawa Electric Corporation | I/o module |
CN104850027A (zh) * | 2014-08-13 | 2015-08-19 | 北汽福田汽车股份有限公司 | 一种can数据接口建模自动生成方法及*** |
US20170097621A1 (en) * | 2014-09-10 | 2017-04-06 | Crestron Electronics, Inc. | Configuring a control sysem |
CN104765616A (zh) * | 2015-04-29 | 2015-07-08 | 北京经纬恒润科技有限公司 | 一种自动生成io模型的方法及*** |
CN108345288A (zh) * | 2017-01-23 | 2018-07-31 | 长城汽车股份有限公司 | Can信号接口软件的自动生成方法、***及车辆 |
CN106950864A (zh) * | 2017-04-11 | 2017-07-14 | 重庆长安汽车股份有限公司 | 一种整车控制器的can通信程序生成方法及装置 |
CN108845967A (zh) * | 2018-07-03 | 2018-11-20 | 广东好帮手环球科技有限公司 | 一种i2c总线分析装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190783A (zh) * | 2021-04-27 | 2021-07-30 | 北京车和家信息技术有限公司 | 用于整车控制器的数据处理方法、装置、介质和设备 |
CN114035539A (zh) * | 2021-10-25 | 2022-02-11 | 东风商用车有限公司 | 实例化车型通讯矩阵生成方法、装置、设备及存储介质 |
CN114035539B (zh) * | 2021-10-25 | 2023-12-05 | 东风商用车有限公司 | 实例化车型通讯矩阵生成方法、装置、设备及存储介质 |
CN115314339A (zh) * | 2022-08-04 | 2022-11-08 | 潍柴动力股份有限公司 | Can通道标定量的查重方法、查重装置、处理器与车辆 |
CN115314339B (zh) * | 2022-08-04 | 2023-06-23 | 潍柴动力股份有限公司 | Can通道标定量的查重方法、查重装置、处理器与车辆 |
Also Published As
Publication number | Publication date |
---|---|
CN111291443B (zh) | 2021-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582525B (zh) | 测试代码验证方法、验证装置、设备和存储介质 | |
CN111291443B (zh) | 整车控制器软件的i/o模块模型自动生成方法、装置及设备 | |
CN110554958B (zh) | 图数据库测试方法、***、设备和存储介质 | |
CN110377462B (zh) | 接口测试方法、装置及终端设备 | |
CN116894413B (zh) | 一种基于硬件的逻辑映射方法、装置、设备及存储介质 | |
CN110290166B (zh) | 跨集群数据交互方法、***、装置及可读存储介质 | |
CN112015489A (zh) | 一种车载软件的管理方法、装置、存储介质及*** | |
CN112996020A (zh) | 一种基于蓝牙的自动化测试方法、装置及蓝牙测试终端 | |
CN110472298B (zh) | 电力市场模型的构建方法、装置、设备及存储介质 | |
CN114780326A (zh) | 一种跨平台标定测试方法、装置及设备 | |
CN109683470A (zh) | 一种软硬件自适应匹配方法、装置及驱动装置 | |
CN113272785B (zh) | 一种挂载文件***的方法、终端设备及存储介质 | |
CN110569154B (zh) | 一种芯片接口功能测试方法、***、终端及存储介质 | |
CN111949510B (zh) | 测试处理方法、装置、电子设备及可读存储介质 | |
CN110991088A (zh) | 一种线缆模型构建方法、***、终端设备及存储介质 | |
CN108322542B (zh) | 数据更新方法、***、装置以及计算机可读存储介质 | |
CN116090252A (zh) | 基于Matlab自动化生成输入接口模型的方法、装置、设备及介质 | |
CN112204527A (zh) | 用于处理多工程***环境中的工程数据的方法和*** | |
CN114610648A (zh) | 一种测试方法、装置及设备 | |
CN114036218A (zh) | 一种数据模型切换方法、装置、服务器和存储介质 | |
CN111027196A (zh) | 一种电力设备的仿真分析任务处理方法、装置及存储介质 | |
CN112114931A (zh) | 深度学习程序配置方法、装置、电子设备及存储介质 | |
RU2678512C1 (ru) | Способ обработки данных, относящихся к автотранспортным средствам, с целью последующего графического построения электрических схем электрических систем | |
CN115576807B (zh) | 虚拟ecu实现方法、装置、电子设备及存储介质 | |
CN115729218B (zh) | 一种多种换挡方式的模型测试方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211230 Address after: 511434 No. 36, Longying Road, Shilou Town, Panyu District, Guangzhou City, Guangdong Province Patentee after: GAC AION New Energy Vehicle Co.,Ltd. Address before: 510030 23 building, Cheng Yue mansion 448-458, Dongfeng Middle Road, Yuexiu District, Guangzhou, Guangdong. Patentee before: GUANGZHOU AUTOMOBILE GROUP Co.,Ltd. |
|
TR01 | Transfer of patent right |