Excel转DBC

科技   2024-09-21 08:12   福建  

很多老铁后台留言【Excel转DBC】,虽然DBCStudio有这个功能,并且不断的进行改进,但【思想】依然不太推荐大家使用这样的方式来——偷懒!原因如下:

1、 市面上能找到的各种所谓能将Excel转DBC的工具所支持的Excel都是特定的,也就是说用户需要按软件支持的Excel格式进行调整,不可能将手中现有的Excel表格直接导入生成DBC文件。

2、 Excel是一种开放输入方式,用户可以随意输入各类数据,这样很容易在整理表格数据的时候无意识的输入错误的数据,导致最后转DBC时候出现问题。虽然DBCStudio已经通过非常多的规则进行诊断,但是不肯能覆盖所有错误的可能性

3、 既然DBCStudio的编辑功能已经非常好用,为什么还要在原有表格基础上进行整理呢?

下面是视频演示部分,也有文字说明部分


获取Excel模板



很多老铁都在问,导入模板在哪里?Excel模板是通过DBCStudio导出,之前的版本是直接保存一个Excel文件作为模板。现在则可以通过向导进行设置,并通过导出功能得到Excel模板。

点击【新建结构】,弹出【DBC创建向导】

在这步骤设置DBC文件名称和数据库名称,配置CAN的版本,支持CAN与CANFD。

在这一步就要配置DBC文件的Attridute了,如果不熟悉的这部分的功能的老铁可以直接选用【推荐】选项目,这里会配置信号的起始数值、发送方式、发送周期等。如果对DBC中的Attridute有兴趣,可以翻阅下稍早的文章:

【DbcStudio更新】:支持dbc文件中【属性】标签

点击【完成】后就能得到一个空白的DBC文件.

接下来点击【导出Excel】在向导中选择需要导出的模板

随便设置个保存路径,点击【下一步】

这一步步骤跟前面创建DBC时候配置Attribute类似,不熟悉的老铁直接点推荐即可!

编辑Excel文件



就这么得到一个空白的表格作为输入模板。虽然,大家看到的Excel模板是空的,但是它已经包含了很多信息。

例如,点击【报文发送类型】就会有数据有效性验证,弹出之前向导中预设值的选项。同理【信号发送类型】、【数据类型】、【排列格式(Intel/Motorola)】等均已经有预设值。

在输入具体协议内容前,建议先配置好ECU节点,只需要把ECU名称添加在首行的末尾。但是格式一定要转置90度。最简单的,就是用格式化,把Vector_XX的格式复制过来。

输入信息没什么好介绍的,在F列前是用来描述Message信息,之后的是Signal信息。要注意,一行不能同时拥有Message与Signal的描述信息

物理最大与最小值、Raw最大最小输入需要注意下,物理值可以人工输入。而Raw的最大最小值则可以用Excel公式解决。如:

=DEC2HEX((R3-P3)/O3)

感觉这个步骤是可以进行优化的,后续版本我会把这个功能加上,让导出模板的时候就自带公式。这样输入物理值就能自动计算最大物理值。

最后一步就是要设置ECU节点信息,在发送信息Message的ECU上标注s,在Signal上用r标注,表示该条信息被哪些ECU接收。

Excel转DBC文件



接下来就是要在DBCStudio打开编辑好的Excel表格文件

别高兴太早!前面介绍了表格输入很难保证输入数据完全正确,这时候程序会进行校验。按诊断结果进行修改,再次导入后,没有任何错误信息才能算成功。

好不容易,最后完成了Excel导入DBC文件。是不是还不如直接在DBCStudio中创建DBC文件呢。

授权获取



DBC编辑工具从有想法到现在已经4年多,期间经过3次软件重构。为此付出了无数个深夜,如果觉得好用又贴心,就给【思想】一点支持!

更多资讯可以公众号后台回复【DBC】,可以获取更多【试用、授权】相关信息!

购买方式:淘宝搜索店铺《古德曼汽车工业1号店》



古德曼汽车工业
分享交流传统/新能源汽车领域的经验与知识,分享自制作小工具提高你我工作效率
 最新文章