一种基于python的自动化A2L生成工具制造技术

技术编号:35933194 阅读:21 留言:0更新日期:2022-12-14 10:19
本发明专利技术公开了一种基于python的自动化A2L生成工具,首先需要定义输出生成的文件,这里文件格式命名为TCU_Temp.A2L;当前把每个模块独立生成的A2L文件放在同一目录下,这里命名为A2L文件夹;ASAP2测量文件需要文件头以及固定的语法格式,每个独立A2L文件中涵盖文件头以及项目、模块语法定义,因此需要过滤其它多的项目、模块语法定义只保留其一。使用制作脚本形式嵌入到软件架构代码编译环境中,更灵活的用于嵌入式软件代码开发体系。提高汽车零部件行业软件开发人员工作效率,降低工作量,降低汽车零部件行业软件开发成本。低汽车零部件行业软件开发成本。低汽车零部件行业软件开发成本。

【技术实现步骤摘要】
一种基于python的自动化A2L生成工具


[0001]本专利技术涉及一种汽车零部件行业软件,尤其是涉及一种使用于汽车零部件行业软件开发过程中的自动化A2L生成工具。

技术介绍

[0002]随着汽车产业的不断发展,越来越多的汽车零部件也都能够通过汽车零部件行业软件进行软件控制其相关执行功能,而汽车行业零部件在软件开发过程中需使用A2L文件来通过INCA、CANape等工具借用XCP/CCP协议对试验数据进行实时监控以及标定。然而当前策略开发使用matlab生成策略代码以及A2L文件,只能每个模块单独生成,且生成的多个A2L需完全按照对应工具的要求进行地址及格式更新,而这也给软件开发人员带来工作量大、效率低等诸多不便。现有汽车零部件软件行业现状一般是通过Vector的ASAP2_tool

set

A2L工具来实现,该工具包含Creator、Merger、Updater和Modifier等多个子模块,而这些需要多个子模块的工具包使用都需要较为昂贵的软件使用购买费用,导致汽车零部件软件开发成本居高不下;由于购买工具链费用比较昂贵,因此开发这样一种自动化生成工具,帮助大家解决该问题。

技术实现思路

[0003]本专利技术为解决现有汽车零部件行业软件存在着工作量大效率低,A2L文件工具需要较为昂贵的软件使用购买费用,导致汽车零部件软件开发成本居高不下等现状而提供的一种提高汽车零部件行业软件开发人员工作效率,降低工作量,降低汽车零部件行业软件开发成本的基于python的自动化A2L生成工具。
[0004]本专利技术为解决上述技术问题所采用的具体技术方案为:一种基于python的自动化A2L生成工具,其特征在于包括执行开始后的如下步骤:A1.新建打开写入TCU_Temp.A2L文件头,执行定义输出生成的文件格式命名为TCU_Temp.A2L;A2.开启开始位置;A3.遍历A2L目录;A4.按顺序指向文件;A5.判断是否完成所有文件,如果判断为已经完成所有文件的,执行本次流程的结束步骤;A6.上述A5步骤中,若判断为未完成所有文件的,则执行下列第A7步骤;A7.对未完成的文件执行是否A2L文件的判断;A8.上述A7步骤中,若判断为A2L文件的,则执行遍历A2文件,此时关闭结束位置;若判断为不是A2L文件的,则返回至执行上述A4步骤;A9.对上述A8步骤遍历A2文件后,执行是否文件尾的判断;A10.上述A9步骤中,若判断为文件尾的,则返回至执行上述A4步骤;
A11.在上述A步骤中,若判断为不是文件尾的,则执行是否开始位置的判断;A12.在上述A11步骤中,若判断为不是开始位置的,则执行是否结束位置的判断;A13.在上述A12步骤中,若判断为是结束位置的,则执行写入TCU_Temp.A2L步骤后并返回至执行上述第A8步骤;A14.在上述A12步骤中,若判断为不是结束位置的,则执行写入TCU_Temp.A2L且开始结束位置后并返回至执行上述第A8步骤;A15.在上述A11步骤中,若判断为是开始位置的,则执行是否正文的判断;A16.在上述A15步骤中,若判断为是正文的,则执行写入TCU_Temp.A2L且关闭文件头标志步骤后并返回至执行上述第A8步骤;A17.在上述A15步骤中,若判断为不是正文的,则直接返回至执行上述第A8步骤。
[0005]提高汽车零部件行业软件开发人员工作效率,降低工作量,降低汽车零部件行业软件开发成本。
[0006]作为优选,A2L文件合并完成后,最后需对A2L文件中标定量以及观测量获取对应的地址信息,自然而然需解析软件编译生成的map地址表,其中包含全局的标定量以及观测量,最终命名生成文件名称为TCU.A2L。
[0007]作为优选,所述的包含全局的标定量以及观测量,最终命名生成文件名称为TCU.A2L的流程包括开始后的如下步骤:B1.解析MAP地址文件;B2.按变量名称、结构体首地址名称、数组首地址名称提取所有指定的标定区以及RAM区,Flash区对应的address存入Bufferl;B3.解析合并之后的A2L文件;B4.判断观测量/标定量是否在Bufferl,若判断不在Bufferl的,则返回执行上述第B2步骤;B5.上述B4步骤中,若判断在Bufferl的,则执行下列第B6步骤~第B7步骤是否全局变量的判断;B6.上述B4步骤中,若判断为是全局变量的,则执行获取对应address步骤;B7.上述B4步骤中,若判断为不是全局变量的,则执行是否数组的判断步骤;B8.在上述B7步骤中,若判断是数组的,则执行计算首地址+偏移地址的步骤;B9.在上述B7步骤中,若判断不是数组的,则执行结构类型步骤;B10.在上述B9步骤中,执行结构类型步骤后,执行计算首地址+偏移地址的步骤;B11.执行上述B10步骤后,执行获取对应address步骤;B12.执行上述第B9步骤或第B10步骤后,执行存入Buffer2步骤;B13.执行上述B12步骤后,执行写入文件最终生成A2L文件的步骤;B14.执行上述B13步骤后,流程步骤完成。
[0008]本专利技术的有益效果是:专利技术人员完成了多个项目的开发,涉及到汽车零部件行业多个项目,提高了软件开发以及标定工作效率,该专利技术源于汽车零部件但不限于汽车行业,因此提高汽车零部件行业软件开发人员工作效率,降低工作量,降低汽车零部件行业软件开发成本。本专利技术以脚本形式嵌入到软件架构代码编译环境中,更灵活的用于嵌入式软件代码开发体系。
附图说明:
下面结合附图和具体实施方式对本专利技术做进一步的详细说明。
[0010]图1是本专利技术的具体实现方法流程结构示意图。
[0011]图2是本专利技术自动化更新A2L文件中标定量以及观测量对应的地址信息,最终命名生成文件名称为TCU.A2L的流程结构示意图。
[0012]图3是本专利技术的单个工具脚本运行示意图。
[0013]图4是本专利技术的嵌入式架构软件代码编译环境下运行示意图。
具体实施方式
[0014]图1所示的实施例中,一种基于python的自动化A2L生成工具,包括执行开始S01后的如下步骤:A1.新建打开写入TCU_Temp.A2L文件头S1,执行定义输出生成的文件格式命名为TCU_Temp.A2L;A2.开启开始位置S2;A3.遍历A2L目录(软件for循环语句读取指定A2L目录下所有A2L文件)S3;A4.按顺序指向文件(软件for循环语句按顺序遍历)S4;A5.判断是否完成所有文件(软件for循环语句按顺序遍历目录下所有文件,直到目录下最后一个文件结束)S5,如果判断为已经完成所有文件的,执行本次流程的结束S6步骤。
[0015]A6.上述A5步骤中,若判断为未完成所有文件的,则执行下列第A7步骤;A7.对未完成的文件执行是否A2L文件S7的判断;A8.上述A7步骤中,若判断为A2L文件的,则执行遍历A2文件S9,此时关闭结束位置S8;若判断为不是A2L文件的,则返回至执行上述A4步骤;A9.对上述A8步骤遍历A2文件后,执行是否文件本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于python的自动化A2L生成工具,其特征在于包括执行开始后的如下步骤:A1.新建打开写入TCU_Temp.A2L文件头,执行定义输出生成的文件格式命名为TCU_Temp.A2L;A2.开启开始位置;A3.遍历A2L目录;A4.按顺序指向文件;A5.判断是否完成所有文件,如果判断为已经完成所有文件的,执行本次流程的结束步骤;A6.上述A5步骤中,若判断为未完成所有文件的,则执行下列第A7步骤;A7.对未完成的文件执行是否A2L文件的判断;A8.上述A7步骤中,若判断为A2L文件的,则执行遍历A2文件;若判断为不是A2L文件的,则返回至执行上述A4步骤;A9.对上述A8步骤遍历A2文件后,执行是否文件尾的判断;A10.上述A9步骤中,若判断为文件尾的,则返回至执行上述A4步骤;A11.在上述A步骤中,若判断为不是文件尾的,则执行是否开始位置的判断;A12.在上述A11步骤中,若判断为不是开始位置的,则执行是否结束位置的判断;A13.在上述A12步骤中,若判断为是结束位置的,则执行写入TCU_Temp.A2L步骤后并返回至执行上述第A8步骤;A14.在上述A12步骤中,若判断为不是结束位置的,则执行写入TCU_Temp.A2L且开始结束位置后并返回至执行上述第A8步骤;A15.在上述A11步骤中,若判断为是开始位置的,则执行是否正文的判断;A16.在上述A15步骤中,若判断为是正文的,则执行写入TCU_Temp.A2L步骤后并返回至执行上述第A8步骤;A17.在上述A15步骤中,若判断为不是正文的,则直接返回至执行上述第A8步骤。2.按照权利要求1所述的基于python的自动化A2L生...

【专利技术属性】
技术研发人员:周鑫星陆江燕任华林王峰周新良徐万宏靳佳佳田文瑞
申请(专利权)人:浙江万里扬新能源驱动有限公司
类型:发明
国别省市:

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

1