《车载网络技术》第2章CAN总线传输原理第2章CAN总线传输原理•一、CAN总线的发展•CAN,全称为“ControllerAreaNetwork”,即控制器局域网。•CAN最初出现在20世纪80年代末的汽车工业中,由德国BOSCH公司最先提出。1991年9月PHILIPSSemiconductors制定并发布了CAN技术规范(2.0版)。该技术包括A和B两部分。2.0A给出了CAN报文标准格式;2.0B给出了标准的和扩展的两种格式。•1993年11月国际标准化组织ISO颁布了道路交通运输工具-数据信息交换-高速通信局域网(CAN)国际标准ISO11898。•美国汽车工程学会(SAE)2000年提出的J1939,成为货车和客车中控制器局域网的通用标准。•二、CAN的标准帧和扩展帧第2章CAN总线传输原理•二、CAN的标准帧和扩展帧•两种格式都是由帧起始SOF(StartofFrame)、仲裁域(ArbitrationField)、控制域(ControlField)、数据域(DataField)、循环冗余检验域(CRCField)、应答域(AcknowledgmentField)和帧结束(EndofFrame)七部分组成。•两种格式的主要区别是,扩展格式将仲裁域由原11位增加了18位,变成了29位。•替代远程请求SRR(SubstituteRemoteRequest),为隐性位。•标识符扩展位IDE(IdentifierExtension),显性位表示数据帧为标准格式,隐性位表示数据帧为扩展格式。第2章CAN总线传输原理•三、CAN总线的特点•(1)CAN是到目前为止惟一具有国际标准且成本较低的现场总线。•(2)CAN为多主方式工作。网络上任一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从,有极高的总线利用率。•(3)在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多可在134μs内得到传输。•(4)CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下,也不会出现网络瘫痪的情况。第2章CAN总线传输原理•三、CAN总线的特点•(6)CAN的直接通信距离最远可达10km(速率5kb/s以下);通信速率最高可达1Mb/s(此时通信距离最长为40m)。•(7)CAN上的节点数主要取决于总线驱动电路,目前可达110个。在CAN2.0A标准帧报文中标识符有11位,而在CAN2.0B扩展帧报文中标识符有29位,使节点的个数几乎不受限制。•(8)报文采用短帧结构,传输时间短,受干扰概率低,使数据的出错率降低。•(9)CAN的每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。•(10)CAN的通信介质可选择双绞线、同轴电缆或光纤。选择十分灵活。•(11)CAN节点在错误严重的情况下,具有自动关闭输出的功能,以使总线上其他节点的操作不受影响。而且发送的信息遭到破坏后,可以自动重发。第2章CAN总线传输原理•三、CAN总线的特点•CAN总线上的数据可具有两种互补的逻辑值之一,显性(主控)和隐性。“显性”表示为逻辑“0”,“隐性”表示为逻辑“1”。在ISO的标准中两条总线上的电平如表3-1所示。如果总线上的两个控制器同时向总线上发送显性电平(主控电平)和隐性电平,则总线上始终是显性电平(线“与”操作)。第2章CAN总线传输原理•三、CAN总线的特点•CAN总线上任意两个节点之间的最大通信距离与位速率有关,表3-2列出了相关的数据。第2章CAN总线传输原理•四、CAN总线的组成•CAN数据总线由一个控制器、一个收发器、两个数据传输终端及两条数据传输线组成。•除数据传输线外,其他元件都置于控制单元内部。第2章CAN总线传输原理•四、CAN总线的组成•1CAN控制器•CAN控制器是用来接收控制单元中微电脑传来的数据,对这些数据进行处理并将其传往CAN收发器。同样,CAN控制器也接收由CAN收发器传来的数据,对这些数据进行处理并将其传往控制单元中的微电脑。•2CAN收发器•CAN收发器将CAN控制器传来的数据转化为电信号并将其送入数据传输线。它也为CAN控制器接收和转发数据。第2章CAN总线传输原理•四、CAN总线的组成•3数据传输终端•数据传输终端是一个电阻器,其作用是防止数据在线端被反射,并以回声的形式返回。数据在线端被反射会影响数据的传输。•4数据传输线•数据传输线是双向对数据进行传输的。两条传输线分别称为CAN高线(CAN-H)和CAN低线(CAN-L)。为了防止外界电磁波的干扰和向外辐射,CAN总线将两条线缠绕在一起(双绞线)。•这两条线的电位相反,如果一条是5V,另一条就是0V,始终保持电压总和为一常数。通过这种方法,CAN数据总线得到了保护,使其免受外界的电磁场干扰,同时CAN数据总线向外辐射也保持中性,即无辐射。第2章CAN总线传输原理•2.1CAN总线的传输原理•数据传输总线中的数据传递就像一个电话会议。•数据传输总线工作时的可靠性很高。•如果数据传输总线系统出现故障,故障就会存入相应的控制单元故障存储器内,可以用诊断仪读出这些故障。•数据传输总线正常的一个重要前提条件是:车在任何工况均不应有数据传输总线故障记录。•基本车载网络系统由多个控制单元组成,这些控制单元通过收发器(发射一接收放大器)并联在总线导线上,所有控制单元的地位均相同,没有哪个控制单元有特权。称为多主机结构。•数据传输总线采用一条导线或二条导线,第二条导线上传输信号与第一条导线上的传输信号成镜像关系,这样可有效抑制外部干扰。第2章CAN总线传输原理•2.1.1信息交换•用于交换的数据称为信息,每个控制单元均可发送和接收信息。二进制数据流也称为比特流。•在发送过程中,二进制值先被转换成连续的比特流,该比特流通过TX线(发送线)到达收发器(放大器),收发器将比特流转化成相应的电压值,最后这些电压值按时间顺序依次被传送到数据传输总线的导线上。•在接收过程中,这些电压值经收发器又转换成比特流,再经RX线(接收线)传至控制单元,控制单元将这些二进制连续值转换成信息。•每个控制单元均可接收发送出的信息。这种原理称为广播。2.1.1信息交换第2章CAN总线传输原理•2.1.2功能元件•1.控制单元•控制单元中的重要构件:CPU、CAN控制器和CAN收发器,另外带有输入/输出存储器和程序存储器。•1.控制单元•2.数据传输总线构件•3.收发器2.1.3CAN总线的数据传输过程1.发送过程(1)提供数据(2)发送数据2.接收过程(1)信息接收-接收数据(2)信息校验-检查数据(3)信息接受-接受数据2.1.3CAN总线的数据传输过程1.发送过程2.1.3CAN总线的数据传输过程1.发送过程•1)发动机控制单元的传感器接收到转速值。该值以固定的周期到达微控制器的输入存储器内。由于该转速值还用于其他控制单元,如组合仪表,所以该值应通过数据传输总线来传递。•2)该转速值就被复制到发动机控制单元的发送存储器内。•3)该信息从发送存储器进入数据传输总线构件的发送邮箱内。如果发送邮箱内有一个实时值,那么该值会由发送特征位(举起的小旗示意有传输任务)显示出来。将发送任务委托给数据传输总线构件,发动机控制单元就完成了此过程中的任务。•4)发动机转速值按协议被转换成数据传输总线的特殊格式。•5)数据传输总线构件通过RX线来检查总线是否有源(是否正在交换别的信息),必要时会等待,直至总线空闲下来为止。如果总线空闲下来,发动机信息就会被发送出去。2.1.3CAN总线的数据传输过程2.接收过程2.1.3CAN总线的数据传输过程2.接收过程•(1)信息接收•连接的所有装置都接收发动机控制单元发送的信息。该信息是通过RX线到达数据传输总线构件各自的接收区。•(2)信息校验•所有连接的装置都接收发动机控制单元发送的信息,可以通过监控层内的CRC校验(“循环冗余码校验”)和数来确定是否有传递错误。如果确定无传递错误,那么连接的所有装置会给发射器一个确认回答(ACK)。•(3)信息接受•己接收到的正确信息会到达相关数据传输总线构件的接受区。在那里来决定该信息是否用于完成各控制单元的功能。如果不是,该信息就被拒收。如果是,该信息就会进入相应的接收邮箱。•组合仪表调出该信息并将相应的值复制到它的输入存储器内。在组合仪表内,转速经微控制器处理后控制转速表显示相应的转速。2.1.3CAN总线的数据传输过程3.CAN总线的传输仲裁•1)每个控制单元在发送信息时通过发送标识符来识别。•2)所有的控制单元都是通过各自的RX线来跟踪总线上的一举一动并获知总线的状态。•3)每个发射器将TX线和RX线的状态逐位进行比较。•4)数据传输总线的调整规则:用标识符中位于前部的“0”的个数代表信息的重要程度,从而保证按重要程度的顺序来发送信息。2.2CAN数据总线的应用实例1.具体分类1)动力CAN数据总线(高速),速率为500Kbps,用于将驱动线束上的控制单元联成网。2)舒适CAN数据总线(低速),速率为100Kbps,用于将舒适系统中的控制单元联成网。3)信息CAN总线(低速),速率为100Kbps用于将收音机、电话和导航系统联成网。2.2.1大众奥迪车上的CAN数据总线简介2.2CAN数据总线的应用实例2.2.1大众奥迪车上的CAN数据总线简介2.所有系统的共性•各系统在数据高速公路上采用同样的“传输协议”。为了保证有很高的抗干扰性(如来自发动机舱),CAN数据总线都采用双线式系统。•将要发送的信号在发送控制单元的收发器内转换成不同的信号电平,并输送到两条CAN导线上,只有在接收控制单元的差动信号放大器内才能建立两个信号电平的差值,并将其作为唯一经过校正的信号继续传至控制单元的CAN接收区。•信息CAN数据总线与舒适CAN数据总线的特性是一致的。2.2CAN数据总线的应用实例2.2.1大众奥迪车上的CAN数据总线简介3.各系统的区别•1)动力CAN数据总线通过15号接线柱切断,或经过短时无载运行后切断。而舒适CAN数据总线由30号接线柱供电且必须保持随时可用状态。•2)为了尽可能降低对供电电网产生的负荷,在“15号接线柱关闭”后,若总线系统不再需要舒适数据总线,那么舒适数据总线就进入所谓“休眠模式”。•3)舒适/信息CAN数据总线在一条数据线短路,或一条CAN线断路时,可以用另一条线继续工作,这时会自动切换到“单线工作模式”。•4)动力CAN数据总线的电信号与舒适/信息CAN数据总线的电信号不同。2.2CAN数据总线的应用实例2.2.2大众/奥迪车CAN总线的链路1.双绞线的颜色CAN导线的基色为橙色。对于动力CAN数据总线来说,CAN-High线上还多加了黑色作为标志色;对于舒适CAN数据总线来说,CAN-High线上的标志色为绿色;对于信息CAN数据总线来说,CAN-High线上的标志色为紫色。CAN-Low线的标志色都是棕色。2.2CAN数据总线的应用实例2.2.2大众/奥迪车CAN总线的链路2.双绞线的铰接式连接对于设备配置相对比较低端的车型,舒适CAN数据总线和动力CAN数据总线连接的电控单元相对较少,CAN双绞线一般采用铰接式连接。3.双绞线的插座式连接对于设备配置相对比较高端的车型,舒适CAN数据总线和动力CAN数据总线连接的电控单元比较多,CAN双绞线一般采用插座式连接。2.2CAN数据总线的应用实例2.2.3动力CAN数据总线1.动力CAN数据总线的主要联网单元①发动机控制单元;②ABS控制单元;③ESP控制单元;④变速器控制单元:⑤安全气囊控制单元;⑥组合仪表。2.动力CAN数据总线上的信号电压变化在静止状态时,这两条导线上作用有静电平。对于动力CAN数据总线来说,这个静电平大约为2.5V。静电平也称为隐性状态。在显性状态时,CAN-High线上的电压值