版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务2.1CAN总线结构原理-学生手册【任务导入】CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线。近年来,它具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强及振动大的工业环境。假设你是某家线控底盘解决方案供应商的测试工程师,需要到现场完成低速无人物流车的CAN总线诊断测试,在此之前你知道CAN总线的结构吗?CAN协议数据的格式有哪几类呢?SHAPE提示:此次任务我们需要了解CAN总线的基本组成提示:此次任务我们需要了解CAN总线的基本组成、CAN总线的传输原理、CAN协议数据的格式、主流主机厂的CAN通信协议、CAN报文的解析方法。
【学习目标】素质目标了解CAN总线的结构原理,引导学生形成科学的思维方式和积极的求知态度;通过案例讲授,培养学生的逻辑思维能力;结合CAN报文解析方法,增强学生的综合分析能力。知识目标能讲解CAN总线的基本组成及原理[K23];能讲解CAN总线的数据传输原理[K24];能掌握CAN协议数据的分析方法[K25]。能力目标能根据所学知识,看懂主流主机厂的CAN通信协议[A21];能根据CAN协议,完成CAN协议数据的分析[A22]。【知识准备】一、CAN总线的基本组成CAN总线由节点(CPU、CAN控制器和CAN收发器)、与节点连接的总线(CAN_H和CAN_L)及终端电阻组成。如REF_Ref162612333\h图2-2-1所示。图2-2-SEQ图2-2-\*ARABIC1CAN总线的组成1.CAN节点的组成CAN节点是指参与CAN通信的设备,包括中央处理器、CAN控制器和CAN收发器,如REF_Ref162612347\h图2-2-2所示。图2-2-SEQ图2-2-\*ARABIC2CAN节点的组成(1)CPUCPU(中央处理器)控制CAN控制器,提供需要发送的CAN数据,并读取接收过来的CAN数据。(2)CAN控制器CAN控制器由一块可编程芯片上的逻辑电路组成,实现通信模型中物理层和数据链路层的功能,并对外提供与电控单元的理接口。通过对CAN控制器编程,可设置其工作方式,控制其工作状态。一方面接收收发器的数据,进行解析后发送给CPU;另一方面接收CPU的指令数据,然后发送给CAN收发器。以它为基础建立应用层。目前,CAN控制器可分为CAN独立控制器和CAN集成电控单元两种。CAN独立制器使用灵活,可与多种类型的单片机、微型计算机的各类标准总线进行接口组合。CAN集成电控单元在许多特定情况下,使电路设计简化和紧凑,可靠性提高。(3)CAN收发器CAN收发器既可以接收CAN总线上的差分信号,将差分信号转换为TTL电平信号,发送给控制器;也可以将CAN控制器的TTL电平信号转换为差分信号进行总线数据传输,如REF_Ref162612360\h图2-2-3所示。图2-2-SEQ图2-2-\*ARABIC3差分信号与TTL电平信号相互转换2.CAN总线的组成CAN总线是指信号的物理传输介质,用以传输数据的双向串行总线。大都采用具有较强抗干扰能力的双绞线,如REF_Ref162612373\h图2-2-4所示。图2-2-SEQ图2-2-\*ARABIC4双绞线CAN数据总线分为CAN高位(CAN_H)线和CAN低位(CAN_L)线,可以双向传递数据,这种结构使系统能够同时读写总线。CAN总线是差分线,抗干扰能力强,外界有干扰时,几乎同时会耦合到差分线的两根线上,而接收端关心的只是两信号的差值,所以外界的共模噪声可以被完全抵消,如REF_Ref162612381\h图2-2-5所示,虽然两根线都受到干扰,但是两者差值不变。这样的结构既可以防止电磁干扰对传输信息的影响,也可以防止自身信号对外界的干扰,从而提高信号传输的稳定性和准确性。图2-2-SEQ图2-2-\*ARABIC5差分线的抗干扰原理车辆在使用过程中,电火花、电磁线圈开关、移动电话和发送站等发出的电磁波都会影响或破坏CAN的数据传送。为了防止数据在传送时受到干扰,两条数据传输线缠绕在一起,如REF_Ref162612386\h图2-2-6所示,这样也可以防止数据线所产生的辐射噪声。图2-2-SEQ图2-2-\*ARABIC6CAN数据传输线3.终端电阻终端电阻可以吸收总线上的反射波,增强信号强度,提高数据通信的抗干扰性及可靠行。两个终端电阻并联后的值应该等于传输线在通信频率上的特性阻抗,阻抗不匹配会引起信号反射。典型值为120欧姆。高速CAN信号传输时,信号波长相对传输线较短,信号在传输线终端会形成反射波,干扰原信号,所以需要在传输线末端加终端电阻,如REF_Ref162612415\h图2-2-7所示,使信号到达传输线末端后不反射。图2-2-SEQ图2-2-\*ARABIC7高速CAN终端电阻接法对于低速CAN信号则不用CAN总线两端必须连接终端电阻才可以正常工作,如REF_Ref162612436\h图2-2-8所示。终端电阻应该与通讯电缆的阻抗相同,其作用是匹配总线阻抗,提高数据通信的抗干扰性及可靠行。图2-2-SEQ图2-2-\*ARABIC8低速CAN终端电阻接法二、CAN总线的数据传输原理CAN总线使用串行数据传输方式,且总线协议支持多主控制器。当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。当一个节点发送数据时,该节点的CPU把将要发送的数据和标识符发送给本节点的CAN控制器,并使其进入准备状态。一旦该CAN控制器收到数据和标识符,就变为发送报文状态,该CAN控制器将要发送的数据组成规定的报文格式发出。此时,网络中其他的节点都处于接收状态,所有节点都要先对其进行接收,通过检测来判断该报文是否是发给自己的。1.发送过程CAN控制器将CPU传来的信号转换为逻辑电平(即逻辑0-显性电平或者逻辑1-隐性电平)。CAN发射器接收逻辑电平之后,再将其转换为差分电平输出到CAN总线上,如REF_Ref162612443\h图2-2-9所示。图2-2-SEQ图2-2-\*ARABIC9发送过程2.接收过程CAN接收器将CAN_H和CAN_L线上传来的差分电平转换为逻辑电平输出到CAN控制器,CAN控制器再把该逻辑电平转化为相应的信号发送到CPU上,如REF_Ref162612448\h图2-2-10所示。图2-2-SEQ图2-2-\*ARABIC10接收过程三、CAN协议数据1.数据帧的格式数据帧是唯一用于实际数据传输的帧,最多可以传输8个字节的有效载荷。一帧报文的结构包含七个段:帧起始(SOF)、仲裁段、控制段、数据段、循环冗余校验段段(CRC)、确认段(ACK)和帧结束。(1)帧起始帧起始由1个显性位组成。总线空闲时,发送节点发送帧起始,其他接收节点同步于该帧起始位,如REF_Ref162612466\h图2-2-11所示。图2-2-SEQ图2-2-\*ARABIC11帧起始总线上的电平有显性电平和隐性电平两种。总线上执行逻辑上的“线与”时,显性电平的逻辑值为“0”,隐性电平为“1”。“显性”具有“优先”的意味,只要有一个单元输出显性电平,总线上即为显性电平。并且,“隐性”具有“包容”的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平,显性电平比隐性电平更强,所以帧起始始终为0。(2)仲裁段仲裁段用于写明需要发送到目的CAN节点的地址、确定发送的帧类型(当前发送的是数据帧还是遥控帧),并确定发送的帧格式是标准帧还是扩展帧,如REF_Ref162612485\h图2-2-12所示。在标准帧中,仲裁段由11位标识符(ID)和远程发送请求位(RTR)组成。在扩展帧中,仲裁段由29位标识符、远程代替请求位(SRR)、扩展标识符位(IDE)和远程发送请求位组成。每个设备都有唯一的11位标志符。图2-2-SEQ图2-2-\*ARABIC12仲裁段(3)控制段控制段由6个位构成,表示数据段的字节数,如REF_Ref162612503\h图2-2-13所示。包括数据长度代码和两个将来作为扩展用的保留位,标准格式和扩展格式的构成有所不同。图2-2-SEQ图2-2-\*ARABIC13控制段数据长度代码指示了数据段中的字节数量。数据长度代码为4个位,在控制段里被发送,数据帧长度允许的字节数为0、1、2、3、4、5、6、7、8,其他数值为非法的。保留位(r0、r1)必须全部以显性电平发送。但接收方可以接收显性、隐性及其任意组合的电平。数据的字节数必须为0~8字节,但接收方对DLC=9~15的情况并不视为错误。(4)数据段数据段由数据帧中的发送数据组成,它可以为0~8字节,每字节包含了8位,首先发送最高有效位MSB,依次发送至最低有效位LSB,如REF_Ref162612521\h图2-2-14所示。图2-2-SEQ图2-2-\*ARABIC14数据段(5)循环冗余校验段CRC段是检查帧传输错误的帧。由15个位的CRC顺序*1和1个位的CRC界定符(用于分隔的位)构成,如REF_Ref162612531\h图2-2-15所示。图2-2-SEQ图2-2-\*ARABIC15循环冗余校验段(6)确认段ACK段用来确认是否正常接收。由ACK槽(ACKSlot)和ACK界定符2个位构成,如REF_Ref162612546\h图2-2-16所示。图2-2-SEQ图2-2-\*ARABIC16确认段(7)帧结束帧结束是由每一个数据帧和远程帧的标志序列界定的,这个标志序列由7个“隐性”位组成,如REF_Ref162612562\h图2-2-17所示。图2-2-SEQ图2-2-\*ARABIC17帧结束2.CAN报文的组成CAN协议的数据传输基于消息的概念,每个消息由一个唯一的标识符(ID)和其对应的数据组成。CAN协议支持两种消息类型:数据帧和远程帧。数据帧用于实际数据的传输,而远程帧则用于请求其他节点发送数据。接收到的报文,是一串十六进制的字符,而报文格式定义和位数是按照二进制定义的。在进行报文解析的时候,需要进行十六进制和二进制的转换。(1)帧ID接收到的十六进制的ID实际上是由29位扩展标识符转换而来,帧ID报文格式如REF_Ref162612570\h图2-2-18所示,上面一行为字段代号,下面一行表示字段的位数,例如SA为报文的源地址,有8位。图2-2-SEQ图2-2-\*ARABIC18帧ID报文格式(2)根据通信协议换算帧IDBMS与VCU之间的通信协议见REF_Ref162612626\h表2-2-1。表2-2-SEQ表2-2-\*ARABIC1BMS与VCU之间的通信协议发送方接收方ID周期位置数据名BMSVCUPGN=6354100msByte0Ubus(电池系统测总线电压值)低字节PRDPPFPSSAByte1Ubus(电池系统测总线电压值)高字节60024208243Byte2IBattery(-/+)(电池充/放电电流)低字节Byte3IBattery(-/+)(电池充/放电电流)高字节Byte4SOC(电池模块SOC)Byte5最高电池模块电压低字节Byte6最高电池模块电压高字节Byte7保留BMS与VCU之间的通信ID换算过程见REF_Ref162612632\h表2-2-2:表2-2-SEQ表2-2-\*ARABIC2通信ID换算过程PRDPPFPSSADEC60024208243BIN1100000011000110100001111001111000000110001101000011110011(29位)HEX1818DOF3因此换算得到BMS与VCU之间的通信ID为1818DOF3。目前大多数的通信协议中都直接给出了相应的帧ID,不需要换算。(3)数据组数据段一般由1~8个字节(Byte)组成,代表通信协议中相应的含义。每个字节有两个字符,前面字符代表高4位,后边字符代表低4位。有的数据需要相邻的2个字节组合才能表示,则需要分为高字节和低字节。四、CAN通信协议当前主流主机厂,每家都有自己的整车通讯协议,各个供应商,需要根据整车厂的定义,修改零部件的CAN协议。江淮3代电动汽车BMS通信协议见REF_Ref162612611\h表2-2-3。表2-2-SEQ表2-2-\*ARABIC3江淮3代电动汽车BMS通信协议报文名称:FmBMS_1;ID(hex):180460F4;发送节点:BMS;接收节点:charger;波特率:250kbs;发送类型:周期型;发送周期:100ms;字节长度:8。字节位信号名称物理含义范围物理范围分辨率偏移量0——SOH电池组健康状态0-1000-100%1%/bit01——CAN_BMS_SOC电池电量0-1000-100%1%/bit02HighCAN_BMS_C电池组电流值0-642550-300A0.1A/bit03Low4HighCAN_BMS_V电池组电压值0-642550-400V0.1V/bit05Low6HighCAN_MAX_EN_C最大允许放电电流0-642550-300A0.1A/bit07LowCAN通信协议一般包含帧ID,发送节点和接受节点,波特率,发送周期,帧类型和帧格式等,我们可以根据CAN通信协议提供的内容,进行CAN报文解析。五、CAN报文解析1.CAN报文解析过程根据江淮3代电动汽车BMS通信协议进行CAN报文解析。信号传输数据的值与信号实际的物理值转换公式如下:实际的物理值=传输数据的值*分辨率+偏移量(1)获取CAN报文通过CAN测试工具获取到的CAN报文如REF_Ref162612584\h图2-2-19所示。图2-2-SEQ图2-2-\*ARABIC19获取到的CAN报文(2)具体CAN报文解析过程见REF_Ref162612601\h表2-2-4。表2-2-SEQ表2-2-\*ARABIC4CAN报文解析过程字节数据解析内容Byte00x64根据江淮3代电动汽车BMS通信协议,Byte0表示电池组健康状态;0x64转换成十进制为100;根据信号传输数据的值与信号实际的物理值转换公式可得:100*1(%/bit)+0=100%因此可得,电池组健康状态为100%。Byte10x4d根据江淮3代电动汽车BMS通信协议,Byte1表示电池电量;0x4d转换成十进制为77;根据信号传输数据的值与信号实际的物理值转换公式可得:77*1(%/bit)+0=77%因此可得,电池电量为77%。Byte20x0b根据江淮3代电动汽车BMS通信协议,Byte2表示电池组电流值高字节,Byte3表示电池组电流值低字节;高字节在前,低字节在后,0x0b07转换成十进制为2823;根据信号传输数据的值与信号实际的物理值转换公式可得:2823*0.1(0.1A/bit)+0=282.3A因此可得,电池组电流值为282.3A。Byte30x07Byte40x0c根据江淮3代电
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江苏省昆山市高二生物下册期末考试考试卷含答案【培优B卷】
- 2026年吉林省集安市高二生物下册期末考试考试卷附参考答案【突破训练】
- 2026年吉林省榆树市高二生物下册期末考试检测卷重点附答案
- 2026年江西省瑞昌市高二生物下册期末考试试卷及参考答案【完整版】
- 2026年浙江省海宁市高二生物下册期末考试模拟卷含完整答案【考点梳理】
- 2025年江苏省如皋市高二生物下册期末考试模拟卷带答案(能力提升)
- 2025年吉林省双辽市高二生物下册期末考试模拟卷含答案【考试直接用】
- 2025年湖北省赤壁市高二生物下册期末考试试卷附参考答案【综合题】
- 2025年辽宁省调兵山市高二生物下册期末考试测试卷往年题考附答案
- 2025年山东省莱西市高二生物下册期末考试模拟卷含答案【满分必刷】
- 2026中国邮政集团有限公司湖南省分公司招聘备考题库及参考答案详解一套
- DB51-T 3359-2026 人工智能 数据标注通 用技术要求
- 2026年青岛版(新教材)小学数学一年级下册期末质量检测卷及答案(二套)
- 2026年全国保密教育线上培训考试试题及完整附答案
- 中国胃肠间质瘤诊疗指南(2025版)
- 北京市石景山区2026年5月初三综合练习(二模)语文试卷(含答案)
- 2026福建漳州水仙药业股份有限公司招聘14人考试备考题库及答案解析
- 2026河南开封工程职业学院招聘57人笔试备考试题及答案解析
- 安徽省蚌埠二中2024年高一自主招生考试数学试题(含答案)
- 2026年安徽省检察机关招聘书记员考试真题
- 2026年深圳市宝安区街道办人员招聘笔试模拟试题及答案解析
评论
0/150
提交评论