整车CAN通讯协议的基本拓扑结构详解

发布时间:2023-05-04  

电动汽车,以电池和电机系统取代了内燃机汽车的发动机系统,使得汽车上主要的结构和电气件发生了很大变化。在传统汽车上已经比较成熟的CAN总线技术,电动汽车仍然需要作出必要调整才能够使用。


1 电动汽车的CAN协议

常用车辆CAN总线通讯协议,大多直接采用SAE-J1939的形式制定。电动汽车首先遇到了电池系统、电机系统等新加入电器需要重新设定PGN码等问题。CAN协议始终处在诸侯割据的状态。在过去的几年中,国家及相关机构也一直在对电动汽车的CAN通讯协议进行研究,希望形成统一的协议体系。统一的CAN协议,首先是零部件供应商的福音。当前主流主机厂,每家都有自己的整车通讯协议,各个供应商,需要根据整车厂的定义,修改零部件的CAN协议。


制定电动汽车的CAN协议,基本的思路是在SAE-J1939的基础上,根据自身电动汽车的需求,做出必要的调整。


1.1 原则

常用的CAN总线协议标准SAE-J1939中,标准给OSI(开放系统互联参考模型)定义成七层:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。其中物理层和数据链路层是最基础的两层,在标准ISO 11898中进行定义,并且不可变更。而SAE-J1939定义了应用层的相关会话规则,所谓通讯协议。因此我国的CAN 通信协议的制定主要包括物理层和应用层协议两个方面,其中最主要的工作还是集中在应用层上。


1.2 物理层

物理层对一系列硬件参数进行了规定,包含总线供电电压、接入系统设备数目、允许的连接器类型、线缆长度以及波特率等。我们的物理层特性基本完全继承J1939物理层规范,相应的,参数基本与J1939保持一致。比如CAN2.0B,接入系统的设备数目,最多30个;终端电阻阻值120欧姆,波特率250kbits,线束建议采用双绞线、同轴电缆等等。


1.3 应用层

应用层主要规定的内容包括:标识符的分配,报文的发送和接收规则,系统内节点的优先级分配等等。


鉴于电动汽车与传统汽车相比存在的很多不同特点,针对一款新车型建立CAN通讯协议,需要明确的事项包括:确定拓扑网络结构,具体分配节点地址源码,定义报文发送周期等等。


1.3.1 整车CAN通讯协议的基本拓扑结构

电动汽车上的电气设备数量比较多,使得通讯系统也变得复杂。下面是两种整车通讯的结构形式,前者列举的是混合动力汽车单一总线结构的拓扑图,后者是一种纯电动汽车CAN通讯网络的情形,电池、电机、故障诊断挂在同一条CAN网络上,其余电气集中在另外一条网络上。两条网络不能直接交换数据,只能以整车控制器VCU为中转站,进行沟通。

6ce053b2-dd08-11ed-bfe3-dac502259ad0.jpg

6cf2211e-dd08-11ed-bfe3-dac502259ad0.jpg

从这两个实例也可以看出,CAN总线的拓扑结构,常常是根据不同车辆的实际需要设计的,目前还没有统一的要求。


多个设备集中在同一条信息通道上,对总线波特率的要求也会相应比较高,同时,系统冗余比较小的话,系统出错率会上升。


1.3.2 需要增加定义的参数

电动汽车CAN总线系统,应用层部分参数需要重新定义。定义过程需要综合考虑系统内节点的重要程度,对刷新频率的需求等因素,制定应用层协议中需要明确几个参数,节点源地址、节点优先级,参数组编码。


1)节点地址(Source address,SA)。CAN系统中,每个节点会获得一个唯一的地址码,用以标示节点身份。一个节点如果包含几种功能,则不同功能可以获得不同地址码。网络中重要性最大的节点,地址代码数字越小,相应的优先级越高。在CAN报文的帧定义中,专门设置了地址代码位,下图是CAN2.0B29位扩展帧的形式。

6d00d830-dd08-11ed-bfe3-dac502259ad0.png

2) 优先级(Priority,P),优先级P,占用3个2进制位,有8中不同级别。最高0级和最低7级,报文优先级可以设置,可以修改。报文优先级的主要影响因素是节点信息的发送频率,越是重要性高的节点,信息刷新频率也越高,占用总线的权限就越高,几个因素有联动关系。

3)参数组定义,同一个设备内不同的功能构成参数组,为了提高总线的使用效率,刷新频率接近的参数尽量放在一个参数组内发送,可以减少节点信息发送次数,提高总线利用率。比如同一个设备的电流监测值和电压监测值就可以放在一个参数组中。


1.3.3 新节点定义

新加入系统的节点都需要重新分配地址,每个节点内的参数再进行参数配置。在J1939基础上新增的节点包括:整车控制器,自动换挡变速器,DCDC,电动助力转向,电动助力制动,电机控制器,电空调控制器,动力电池管理系统。


2 CAN报文解析

CAN报文解析,是技术人员处理电动汽车故障的常用方法,基本过程:将设备准备齐全 → 获得通讯协议和报文原文 → 翻译 → 针对故障现象,得出初步处理建议。


下面内容来自钟文浩的论文《电动汽车CAN报文的解析及应用》,详细介绍了解析CAN报文的全部过程。


2.1  获得CAN报文的过程

准备软硬件环境,硬件周立功CAN卡,软件使用ZLGCANTest,安装在电脑上;通过CAN卡连接整车CAN或者调试端口,通过软件交互界面获取CAN报文。


2.2 CAN2.0B报文基本格式

接收到的报文,是一串十六进制的字符,而报文格式定义和位数是按照二进制定义的。29位扩展标识符,报文帧格式如下图所示。表格中,上面一行为字段代号,下面一行表示字段的位数。SA为报文的源地址,有8位。

6d00d830-dd08-11ed-bfe3-dac502259ad0.png

2.3 报文基本组成

如下面抓图所示,我们初始能够获得的是帧ID的一串字符,就是前面的29位扩展标识符,通过帧ID找到目标所在行,进而找到数据段。数据段包含的信息,是我们需要的部分。

6d1a8280-dd08-11ed-bfe3-dac502259ad0.jpg

2.4 数据段的组成

数据段由8个字节组成,对应通信协议中约定的含义。每个字节有2个字符,前边字符代表高4位,后边字符代表低4位。


例如,一串报文1818D0F3 ce 0d 00 7d 00 6d 1100(ID是1818D0F3)。第1个字节ce中的c为高4位,e为低4位。如果通讯协议规定,第1、2字节表示总电压,而且注明Byte1为低字节,Byte2为高字节,那么解析时就应该为:0dce。


2.5 具体CAN报文解析过程

收到的报文为:1818D0F3 ce 0d 00 7d 00 6d 11 00。

第一、二字节,协议中规定了,1818D0F3ID帧内,第一、二字节表示电压,并且,高字节表示高字节表示电压数值的高位,低字节表示电压数值的低位,比例因子0.1V。

数据中0dce代表总电压,转为十进制为3534,乘以0.1 V的单位,则得到总电压值为353.4 V。


第三、四字节,协议中规定报文的第三、四字节表示总电流,又总电流的单位为0.1 A,偏移量为32000。数据中7d00转为十进制为32000,乘以0.1再减去3200的偏移量0,则说明此时电池组没有被充电或放电,电流为0。


第六、七字节,协议中规定报文的第六、七字节表示最高单体电池电压及位置。单体电池电压单位为0.01 V,最高4位代表箱号。数据中116d,其中1代表箱号,即最高电池电压在第1箱。16d代表最高电池电压,转为十进制为365,乘以0.01 A的单位,则得到最高电池电压为3.65 V。


十六进制转换成十进制数的方法,从最低位开始,16的0次方加第一位+16的1次方加第二位数……比如前文中的116d,最高4位代表箱体编号,16^0+1=1,因此箱体号为1;后面的12位代表单体电压,计算方式(16^0+13)+(16^1+6)+(16^2+1)=365,算式中的13是报文中的d。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    CAN总线通信协议是什么;CAN总线 CAN 是Controller Area Network的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在汽车产业中,出于对安全性、舒适性、方便......
    汽车网络架构是什么意思;基于CAN-FD的新一代汽车网络架构 传统的车载CAN总线最高支持500 kbit/s的传输速率,每帧只能承载8 bytes的数据,由于传输速率和数据长度的限制,在自......
    级或扩展。欲了解该产品的详细信息,请参阅   什么CAN FD? CAN FD通信协议是基于原始CAN总线标准(又称为“经典CAN”)而设计的,有助于确保多种车载......
    。 CCP 是 CAN 2.0B(11 位或 29 位 CAN id)的应用层。根据 OSI 模型,该协议是顶层(第 7层),这意味着该协议不描述位和字节是如何创建的,而是使用 CAN 2.0B 协议......
    就可以着手硬件电路设计了,这里面包括了CAN模块、LIN模块以及IO模块,设计这个主要是为了兼容更多的车,因为底层的CAN协议、LIN协议是可以自定义的,那么根据原厂协议定义出来,无论我的是什么灯,想要......
    汽车CAN总线渗透测试;01 CAN总线 1.1 CAN总线是什么? CAN是控制器局域网络(Controller Area Network, CAN)的简称,是ISO国际标准化的串行通信协议,由以......
    错误或意外的信号注入到设备,进而揭示其缺陷和漏洞的自动化测试方法。 通过将 ESCRYPT CycurFUZZ 嵌入到是德科技车载网络安全解决方案中,汽车制造商可以经由控制器局域网(CAN)接口......
    揭示其缺陷和漏洞的自动化测试方法。 通过将 ESCRYPT CycurFUZZ 嵌入到是德科技车载网络安全解决方案中,汽车制造商可以经由控制器局域网(CAN)接口对目标快速执行模糊测试。这款 CycurFUZZ 工具......
    将 ESCRYPT CycurFUZZ 嵌入到是德科技车载网络安全解决方案中,汽车制造商可以经由控制器局域网(CAN)接口对目标快速执行模糊测试。这款 CycurFUZZ 工具......
    运行。因此,这些去中心化的网络结构正日益演变为集中式网络架构。 汽车以太网正在成为未来车载网络的首选。那么,它是什么,它将如何影响当前的网络架构?为什么选择汽车以太网? 汽车......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>