本文主要是介绍汽车Can总线,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、汽车网络架构与常用总线
汽车Can总线简述
can是控制器局域网Contrller Area Network的缩写。博世公司开发,主要用于汽车的监测与控制,目的是为适应汽车“减少线束数量”,“通过多个网络进行大量数据的高速传输”的需求。
汽车网络架构简述
汽车网络是将汽车上所有的电子传感器、执行器和电子控制单元(ECU)连接组网的通信形式。根据通信速率,有以下类别的汽车网络:
常用汽车总线汇总
汽车网络典型应用
通常汽车CAN网络分布
如下:
可以细分为:
动力CAN网络
如图右下角,发动机,自动变速箱,底盘,转向,制动等实时性要求较高的部件,一般采用500kdps的CAN速率
车身CAN网络
与车身部分相关,网关也在其中,会将自适应灯,仪表板,空调,车门等部分接入CAN网络,其中有些部分的下属分支会采样LIN总线来控制下属模块。
组合仪表CAN网络
针对在汽车前端如驾驶室的组合仪表,需要接收到来自各个部件的CAN信息并显示在仪表上
诊断CAN网络
在对车身进行诊断时,也会单独接一路CAN总线出来
GLOF整车CAN网络拓扑
示例:奔驰车身网络拓扑图
PTCAN -- Power Can BCAN -- Body Can
曾经用的Can总线
- SAE J1850 (class2)
- SAE J1708
- K-Line
- BEAN
- Byte flight
- D2B
CAN通信特性
- 节点间采用多主通信方式(点对点, 点对多点,全局广播)
- 采用短帧结构,报文帧的有效字节数为8个,可达到汽车实时响应要求(有利于控制总线负载)
- 报文ID值越小,优先级越高。报文ID可分成不同的优先级,进一步满足汽车网络报文的实时性要求。
- 非破坏性总线仲裁处理机制
- 可靠的CRC校验方式,传输速率出错率低,满足汽车数据传输的可靠性要求
- 报文帧仲裁失败或传输期间被破坏有自动重发机制
- 节点在错误严重的情况下,具有自动脱离总线的功能,切断它与总线的联系,不会影响总线的正常工作。
- 通信距离最远达10km(速率在5kbps以下)
- 通信速率最高达1MB/s(此时距离最长40M)
- 节点数实际可达110个
- CAN节点设计成本较低,通信介质采用双绞线
二、CAN物
OSI模型与CAN的关系
CAN物理层是如何保证汽车通信要求的
1、Can收发器
定义:CAN收发器逻辑信号与物理信号之间的转化采用差分电平方式
1)将逻辑数字信号转换成物理信号
2)将物理信号转换成逻辑数字信号
2、CAN信号电平
CAN总线有ISO11898(高速CAN)和ISO11519(低速容错CAN)两个标准
3、CAN编码方式 -> NRZ(非归零)
CAN编码采用NRZ(非归零编码,相同带宽情况下,NRZ编码方式信息量更大
曼切斯特编码就是归零编码
4、CAN信号电平 -> 双绞线
问:为什么要采用双绞线的差分电平信号?
原因:双绞线传输差分信号受到共模信号干扰后,电平差值不变,信号解码正常。
这篇关于汽车Can总线的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!