干货分享 | TSMaster DBC编辑器操作指南:功能详解+实战示例

在汽车电子和CAN总线开发领域,DBC文件(Database Container)是定义CAN通信协议的核心文件,正确编辑和优化DBC文件,对于车辆网络通信的稳定性、数据解析的准确性至关重要。对于刚接触TSMaster的工程师来说,如何快速掌握DBC编辑技巧,并应用于实际项目开发,仍存在一定的学习门槛。本文将从基础功能解析到使用示例演示,系统介绍TSMaster DBC编辑器的核心操作。

本文关键词:TSMaster,DBC,数据库


本文中所用到的一些样式和符号,可以参考以下表格说明。

样式表格说明
符号表格说明

DBC编辑器可以用于CAN DBC数据库的创建、修改以及保存等,详细的功能如下:

  • 创建CAN DBC数据库
  • 打开CAN DBC文件,查看数据库中的节点、报文、信号、属性等信息
  • 编辑CAN数据库内容
  • 导出CAN数据库到DBC文件
  • 检查数据库内容是否符合一致性要求

DBC编辑器主要包含以下五个功能区:

  • 菜单栏(1)
  • 数据库总览区(2)
  • 属性配置区(3)
  • 节点总览和报文布局区(4)
  • 日志区(5)
DBC编辑器初始界面
图1:DBC编辑器初始界面

3.1 菜单栏

菜单栏包括新建、打开、保存、另存为、一致性检查、撤销和重做7个按钮,各图标说明如下。

菜单栏图标

3.2 数据库总览区

数据库总览区包括数据库节点搜索区和数据库节点区。

3.2.1 数据库节点搜索区

在搜索框内输入节点名称,可以高亮显示,如下图:

搜索节点高亮显示
图2:搜索节点高亮显示

窗体图标说明如下:

图标

3.2.2 数据库节点分类

数据库节点包括以下8类:

数据库总览区节点图
图3:数据库总览区节点图
区域名称描述
Networks显示 DBC 数据库信息,第一个子节点为数据库的名称。
ECUs显示 DBC 数据库所有 ECU 节点,ECU 节点下面可能有 Networks 节点和环境变量。
Environment Variables显示环境变量。右击该节点或者其下的子节点可以创建或者删除环境变量。
Network Nodes显示网络节点,每个节点下面有对应的 Tx Messages, Rx Messages, Mapped Tx signals 和 Mapped Rx signals。右击该节点或者其下的下一级子节点可以创建或者删除 CAN 节点。
Messages显示所有的报文,节点名称为 Message_name [Message ID],每个报文的子节点为当前报文中所包含的 signal_name。右击该节点或者其下的子节点,可以创建、删除或者移除报文/信号。
▶ 删除:当右击节点为【Messages】下的报文时,选择删除会删除数据库中的该报文以及报文下所有信号。当右击节点为【Messages】下报文的信号时,选择删除会删除该报文中的信号,且【Signals】下的该信号也会被删除。

▶ 移除:当右击节点为【Messages】下的报文时,选择移除会删除数据库中的该报文,报文下的信号则会转移到【Signals】节点下。当右击节点为【Messages】下报文的信号时,选择删除会删除该报文中的信号,信号会转移到【Signals】节点下。

▶ 新建:当右击节点为【Messages】,会新建报文。当右击节点为【Messages】下的报文,或者报文下的信号时,会新建信号,且信号绑定到该报文。
Signals显示所有的信号,如果信号绑定到了报文,则节点名称为 signal_name [Message_name],否则为信号名。当右击【Signals】节点或者该节点下的信号时,可以创建/删除信号。
Value Tables显示所有的数据包。当右击【Value Tables】节点或者该节点下的子节点时,可以创建/删除数值表。
Attributes显示所有的特性。当右击【Attributes】节点或者该节点下的子节点时,可以创建/删除特性。

3.2.3 数据库节点拖拽功能

数据库总览区的部分节点支持拖拽功能,支持拖拽功能的节点如下。

▲ 信号拖拽到报文,如下图所示,将信号New_Signal_0拖拽到New_Message_0时,会将信号New_Signal_0添加到New_Message_0下。

信号拖拽到报文
图4: 信号拖拽到报文(场景1)

如果信号已经绑定了报文,这种情况下拖拽信号到新的报文上,则会复制一个同名的信号。

信号拖拽到报文
图5: 信号拖拽到报文(场景2)

▲ 报文拖拽到节点,如下图所示,将信号New_Message_0拖拽到New_Network_0或者其下的【Tx Messages】时,会将信号New_Messages_0添加到【Tx Messages】下。

信号拖拽到报文
图6: 报文拖拽到节点

▲ 信号拖拽到节点,如下图所示,将信号New_Messages_0下的New_Signal_0信号拖拽到New_Network_0或者其下的【Mapped Rx Signals】时,会将信号New_Signal_0添加到【Mapped Rx Signals】下,New_Messages_0添加到【Rx Messages】下。

信号拖拽到报文
图7:信号拖拽到节点

▲环境变量拖拽到ECU,如下图所示,将环境变量New_Envar_0拖拽到ECUs下的New_Network_0或其下的【Environment Variables】时,会将环境变量New_Envar_0添加到【Environment Variables】下。

信号拖拽到报文
图8:环境变量拖拽到ECU

3.3 属性配置区

属性配置区包括数据库文件信息展示区和属性配置区两个部分。

3.3.1 数据库文件信息展示区

未导入DBC数据库时,该区域会提示导入或创建DBC数据库的信息。当创建或导入DBC数据库后,该区域会显示DBC文件的路径。当DBC数据库发生修改时,则在DBC文件路径后面额外增加一个“*”。如果修改的内容被完全撤回时,或者文件被另存为时,“*”将消失。

导入DBC数据库后显示文件路径
图9:导入DBC数据库后显示文件路径

3.3.2 数据库属性

可以配置数据库的名称,选择数据库类型,和配置属性的值。

属性描述
数据库类型可选择为CAN/CAN FD。
注释数据库的说明文本。
数据库属性页
图10:数据库属性页

3.3.3 节点属性

可以配置节点的名称,地址和配置属性的值。

属性描述
地址当前仅显示,地址需要在 NmStationAddress 属性中修改。
注释节点的说明文本。
节点属性页
图11:节点属性页

3.3.4 报文属性

配置报文的属性,具体属性字段及其说明如下。

属性描述
名称报文的名称,不允许出现重名的报文名称。
ID报文 ID,为 16 进制数,不允许出现重复的 ID。
DLC报文的字节数,J1939 协议的字节数为手动输入,其它为选择。
周期报文发送周期,通过 GenMsgCycleTime 属性更改,如果没有定义该属性,则无法修改。
类型CAN 协议可选 CAN Standard 和 CAN Extended。
CAN FD 协议可选 CAN FD Standard 和 CAN FD Extended。
J1939 协议可选 CAN Standard, CAN Extended 和 J1939。
注释报文注释。
发送节点选择发送报文的节点。
属性表配置属性的值。
附加信息当协议为 J1939 会显示 PGN, Priority, Source, Destination 等信息。
报文属性页(非J1939)
图12:报文属性页(非J1939)
报文属性页(J1939)
图13:报文属性页(J1939)

3.3.5 信号属性

配置信号的属性,具体属性字段及其说明如下。

属性/按钮描述
名称信号名称,【Signals】/同一个报文下面不允许出现同名的信号。
单位信号单位,为字符串。
放大因子信号缩放因子,用于计算物理值。
物理值=放大因子*信号原始值+偏移量
偏移量信号偏移,用于计算物理值。
长度信号长度,不大于报文的字节数*8。
起始位信号在报文中的起始位,不大于报文的字节数*8。
数值类型可选无符号,有符号,浮点型,双精度浮点型。
注释信号注释说明。
最小值信号最小值。
最大值信号最大值。
计算最大最小值按钮计算信号的最大最小值。
最大值=放大因子*(2^长度-1)-偏移量
最小值=偏移量
数值表选择用于对信号编码的数值表。
字节序Intel或者Motorola,切换时,起始位和长度会自动计算并改变。
复用类型选择信号的复用类型。
▶ 信号:不复用
▶ 复用器:此时信号作为复用器开关
▶ 复用信号:此时会显示信号的复用器开关对应的值或范围
复用值信号的复用器开关对应的值或范围。
属性表属性展示与编辑。
接收节点编辑接收该信号的 ECU 节点,选中后会在对应的 ECU 节点的【Mapped Rx signals】下添加当前信号的树节点。如果该信号的报文没有被添加过,还会在【Rx Messages】下添加对应的报文节点。
信号属性页(非信号复用)
图14: 信号属性页(非信号复用)
信号属性页(信号复用)
图15: 信号属性页(信号复用)

3.3.6 数值表属性

数值表用于对信号或者环境变量进行编码。数值表的属性及其说明如下。

属性描述
名称数值表名称,具有唯一性。同一个DBC数据库中不允许出现2个同名的数值表名称。
注释备注使用当前数值表的信号及其对应的报文名称,不可修改。
数值编码表信号编码,右击可增加和删除编码项,点击对应的单元格可修改内容。
数值表属性页
图16: 数值表属性页

3.3.7 特性属性

特性用于对信号,报文,节点,数据库以及环境变量等绑定额外的属性,其可编辑的属性字段和说明如下。

属性描述
名称特性名称。不允许出现重名的特性名称。
目标类型– 数据库:用于数据库,选择该项,会将该属性绑定到数据库。
– 节点:用于ECU节点,选择该项,会将该属性绑定到节点。
– 报文:用于报文,选择该项,会将该属性绑定到报文。
– 信号:用于信号,选择该项,会将该属性绑定到信号。
– 环境变量:用于环境变量,选择该项,会将该属性绑定到环境变量。
– ECU-环境变量:用于绑定了ECU节点的环境变量。
– 节点-发送报文:用于绑定发送节点的报文。
– 节点-接收信号:用于绑定接收节点的信号。
数值类型当选中整型、浮点型、16进制时,会激活最小值和最大值编辑框,选择枚举会激活枚举表编辑框。
最小值属性的最小值。
最大值属性的最大值。
默认值属性的默认值,选择枚举时为选择框,其他为输入框。
枚举表用于显示和编辑枚举项。
特性属性页(未激活最大最小值编辑框)
图17: 特性属性页(未激活最大最小值编辑框)
特性属性页(激活最大最小值编辑框)
图18: 特性属性页(激活最大最小值编辑框)
technical articles 20250707 21 DBC编辑器
图19: 特性属性页(激活枚举表)

3.3.8 环境变量属性

配置环境变量的属性,可配置属性字段和说明如下。

属性描述
名称环境变量名称,不允许出现重名的环境变量名称。
数值类型可选整型、浮点型、字符串等数据类型。
访问类型环境变量的读写权限:
▪ 不限
▪ 只读
▪ 只写
▪ 读写
单位环境变量单位。
数值表和信号共用。
注释环境变量的说明。
最小值环境变量最小值。
最大值环境变量最大值。
初始值环境变量初始值。
属性表属性展示与编辑。
环境变量属性页
图20: 环境变量属性页

3.4 节点总览和报文布局区

3.4.1 节点总览

点击不同节点,会在总览区域显示当前节点下的预览内容。

technical articles 20250707 23 DBC编辑器
图21:报文总览页面

3.4.2 报文布局

报文布局区可以展示报文中信号在报文中的位置排列和长度,当所选节点为报文时,布局才能被选择,此时布局按钮为激活状态,否则为未激活状态。

technical articles 20250707 24 DBC编辑器
图22: 报文布局页面

▲ 复用器: 选择报文的复用器名称,为未使用/无复用器。

▲ 复用值: 选择复用器下的复用值,为未使用/无复用值。

通过选择不同的复用器和复用值,布局中会显示对应的信号排列。

3.5 日志区

显示当前操作的状态和数据库信息完整度的信息,包括以下3种类型。

▲ 常规信息:用于提示当前操作状态的信息。

▲ 警告信息:提示当前操作或者数据库有异常但又构成严重错误的信息。

▲ 错误信息:提示当前操作或数据库有严重错误的信息。

technical articles 20250707 25 DBC编辑器
图23:日志区页面

对于一致性检查的日志信息,点对应的行时,会跳转到该行信息所对应的数据库节点。


4.1 创建DBC数据库

该部分示例演示创建CAN数据库,包括创建CAN节点、报文、信号以及环境变量,将信号绑定到报文,为报文添加发送节点,为环境变量添加访问节点等。

步骤1:创建CAN DBC数据库,点击菜单栏的【新建】按钮。

步骤2:选择数据库模板。在弹出的DBC模板选择框中,选择需要创建的DBC数据类型,支持CAN,CANFD,J1939,然后点击【确认】。

technical articles 20250707 26 DBC编辑器
图24:DBC模板选择页面

步骤3:选择/输入DBC文件路径。在未保存DBC数据库之前不会创建新的DBC文件,或覆盖原来的DBC文件。

步骤4:右击【Network Nodes】,创建节点New_Network_0。

technical articles 20250707 27 DBC编辑器
图25: 新建CAN网络节点

步骤5:右击【Messages】,创建报文New_Message_0。

technical articles 20250707 28 DBC编辑器
图26:新建CAN报文

步骤6:右击【Signals】,创建New_Signal_0。

technical articles 20250707 29 DBC编辑器
图27: 新建CAN信号

步骤7:右击【Environment Variables】,创建New_Envar_0

technical articles 20250707 30 DBC编辑器
图28: 新建环境变量信号

步骤8:在左边的树结构中,将New_Signal_0拖拽到New_Message_0,然后将New_Message_0拖拽到New_Network_0。通过将New_Envar_0拖拽到ECUs下的New_Network_0节点或New_Network_0的【Environment Variables】节点,为环境变量New_Envar_0添加访问节点。

technical articles 20250707 31 DBC编辑器
图29: 将信号绑定到报文、为报文添加发送节点和为环境变量添加访问节点

步骤9:点击【保存】按钮。

4.2 编辑DBC数据库

该部分示例演示导入CAN数据库并进行编辑,以及如何创建数值表和特性。

步骤1:导入DBC文件。点击菜单栏的【打开】按钮,导入4.1章节保存的DBC文件。

步骤2:修改CAN节点,报文、信号以及环境变量名称。

▲ 修改CAN节点名称。点击【ECUs】/【Network Nodes】下的New_Network_0,在右侧的属性编辑区中找到【名称】编辑框,输入ecu0并按下回车键。对于该界面其它的属性字段,也可以类似的方式修改。

technical articles 20250707 32 DBC编辑器
图30:修改CAN网络节点名称

▲ 修改CAN报文名称。点击【Messages】下的报文节点,在属性编辑区找到【名称】输入框,输入msg0并回车。对于该界面其它的属性字段,也可以类似的方式修改。

technical articles 20250707 33 DBC编辑器
图31:修改CAN报文名称

▲ 修改CAN信号名称。点击【Signals】下的信号节点/【Messages】下报文中的信号节点,在属性编辑区找到【名称】输入框,输入sig0并回车。对于该界面其它的属性字段,也可以类似的方式修改。

technical articles 20250707 34 DBC编辑器
图32: 修改CAN信号名称

▲ 修改环境变量名称。点击【Environment Variables】下的环境变量节点,在属性编辑区找到【名称】输入框,输入env0并回车。对于该界面其它的属性字段,也可以类似的方式修改。

technical articles 20250707 35 DBC编辑器
图33: 修改环境变量名称

步骤3:创建数值表。右击【Value Table】点击【新建】,在属性编辑界面的值-描述表格中点击新建,创建2对值-描述字段。

technical articles 20250707 36 DBC编辑器
图34: 创建数值表

步骤4:为信号/环境变量添加数值表。点击信号或者环境变量节点,在属性编辑区找到【数值表】下拉框,选择New_Vt_0。

technical articles 20250707 37 DBC编辑器
图35:为环境变量和信号添加数值表

步骤5:创建报文特性。右击【Attributes】点击【新建】,创建特性。在属性编辑区修改名称为msgAttr0,目标类型为报文,其它字段为默认。

technical articles 20250707 38 DBC编辑器
图36:创建报文特性

此时点击【Messages】下的msg0节点,在属性编辑区可以查看到msgAttr0的值,也可以在该区域对msgAttr0进行编辑。

technical articles 20250707 39 DBC编辑器
图37:报文特性查看和编辑界面

其它目标如信号、环境变量、以及绑定节点的信号、报文、环境变量等可以通过选择【目标类型】的下拉框进行绑定。特性也支持不同的数值类型,通过【数值类型】下拉框进行选择。

步骤6:编辑完成后,保存该DBC数据库到DBC文件。

您对TSMaster的哪个功能最感兴趣?或在实际应用中遇到过哪些问题?

欢迎在评论区分享你的经验或疑问,任何想法或建议也可以评论区留言互动,将有机会获得TOSUN神秘大礼包哦~

小贴士:
1、软件下载:
点击下方软件下载链接,直接下载安装,建议下载 beta 版本:

2、软件升级:
在电脑有互联网连接的前提下,可以在软件内检查升级至最新版本。

注:太阳集团6138技术支持邮箱:support@tosunai.cn,欢迎大家前来咨询!(须注明公司及联系方式)

发表回复

zh_CNChinese
×
×

产品入口: 产品添加到购物车

XML 地图