在整车开发过程中,整车厂一般会先设计出整车网络架构,并依据此架构及ECU之间的功能交互设计总线数据库(Database),作为重要的技术文档,可以根据需要全部或部分的公开给各个ECU供应商。当然,有时ECU供应商需要根据客户文档,自行设计一个数据库,添加自己ECU的相联的数据信息。
总线系统中,ECU之间的通信、信息交互以及相互之间的关系,都是通过总线数据库来管理的。总线数据库定义了总线系统中各个ECU所要发送和接收的报文,以及每个报文所有比特值得具体意义。
CAN总线数据库格式是DBC文件,已成为行业内的标准文档格式。
1. CANdb++Editor
CANdb++Editor编辑器由菜单栏、工具栏、导航区和浏览器4个部分组成。如图1所示。
图1 CANdb++ 编辑器界面
2. Networks
在Networks(网络)项下,列出了当前所仿真的总线网络。不同整车厂对整车上各个CAN名称定义有所不同,如Powertrain CAN、Body CAN、Comfort CAN等。数据库中的网络由一个或多个ECU组成,ECU之间通过网络节点相互通信。通常ECU与网络节点是一一对应的。当ECU做网关时,一个ECU可以包含多个网络节点。
需要注意的是,在CAN数据库并不能直接创建ECU,但会在创建网络节点的同时,创建一个名称相同的ECU。
3. Network Nodes
Network Nodes(网络节点)是ECU的通信接口,各个ECU通过网络节点实现总线上的信息发送和接收,每个Network Nodes包含对应的名称和地址。如图2所示。
图2 网络节点
4.Messages
Messages(报文)是总线上节点相互通信的数据。数据库中每个报文应包含下列属性。
Name(报文名称)
CAN ID(CAN标识符)
DLC(Data Length Code,数据长度)
Type(传输类型)
Cycle Time(周期)
Signals(信号)
Transmitters(发送节点)
Receivers(接收节点)
Layout(布局)
Attributes(通用属性)
Comment(说明)
5.Signals
Signal(信号)是总线通信的最小单元,数据库中一个信号由下列属性组成。如图3所示。
图3 信号及其属性
Name(信号名称)
Length[bit](信号长度)
Byte Order(字节顺序)
Value Type(数据类型)
Unit(物理单位)
Init. Value(初始值)
Factor(因子)
Maximum(最大值)
Minimum(最小值)
Value Table(数值表)
Messages(报文)
Receivers(接收节点)
Attributes(通用属性)
Value Descriptions Comment(说明)
本部分介绍了总线数据库的网络、报文、信号及其相关属性,通过这些介绍,你是否掌握了这些内容了?