本文以目前使用最普遍的高速CAN总线,简单介绍下CAN2.0协议及对线束的要求。
1、什么是CAN?
CAN(Controller Area Network)控制器局域网,是BOSCH为了解决车辆增加的信号传输首先提出,也是ISO国际标准化的串行通信协议。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
CAN的特点:文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
①多主控制:及广播式,在总线空闲时,所有单元都可以向总线发送报文,通过逐位仲裁来识别报文ID(标识符)的优先级,优先级高的获得发送权。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
②系统的柔软性:与总线相连的单元没有类似于“地址”的信息,因此在总线上增加单元时,连接在总线上的其他单元的软硬件及应用层都不需要改变。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
③远程数据请求:可通过发送“遥控帧”请求其他单元发送数据。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
④错误检测功能、错误通知功能、错误恢复功能:所有单元都可以检测错误,检测出的错误会立即通知其他所有的单元,正在发送消息的单元一旦检测出错误,会强制结束当前的发送,强制结束发送的单元会不断反复地重新发送直到成功发送为止。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
⑤故障封闭:CAN可以判断出错误的类型是总线上暂时的数据错误还是持续的数据错误(如单元内部故障、驱动器故障、断线等),由此功能,当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
⑥连接:总线上连接的单元数量受总线上的时间延迟及电气负载的限制。降低通信速度,可连接的单元数增加,提高通信速度,可连接的单元数减少。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
2、OSI基本参照模型
通信协议通常会将相关的通信任务按层归纳,这样能使总线系统的应用有更大的灵活性。文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
CAN的硬件和软件被分为多层:文章源自线束工程师之家-https://www.suncve.com/the-requirement-of-physical-layer-of-can-bus-for-wiring-harness/
①应用层:以应用的数据结构来显示信息。这些数据被传输到对象层。
②对象层:作用是管理报文。对象层决定什么时候发送那些报文,同时对接受到的报文进行接收校验。
③传输层:传输层向对象层传输报文,并将从对象层得到的需要发送的报文变成物理层能够发送的形式,此外,传输层还负责仲裁或错误识别及错误标记。
④物理层:最底层,由网络物理元件组成,如导线、电压。
3、报文格式
CAN支持两种不同的报文格式,分别在CAN2.0A和CAN2.0B中定义,CAN2.0A的标识符有11位,而CAN2.0B的标识符有29位,两者数据帧格式相同,由帧起始、仲裁域、控制域、数据域、CRC、ACK域,以及帧结束组成。
4、总线传输
①总线逻辑状态及编码
CAN总线有两种逻辑状态,即显性和隐性,显性代表二进制位“0”,隐形代表二进制位“1”,收到总线消息后,CAN收发器将信号电平转换成逻辑状态,即CAN_H电平与CAN_L电平相减,得到一个差值电平,各种干扰(如电火系统)在两根导线上的作用相同,相减后得到差值电平可过滤这种共模干扰。
高速CAN在传输隐性状态位时,CAN_H /CAN_L的电平都是2.5V,在传输显性位时,CAN_H上的电平时3.5V,CAN_L上的电平是1.5V。
低速CAN在传输隐性状态位时,CAN_H上的电平时0V,CAN_L上的电平时5V,在传输显性状态位时,CAN_H上的电平时3.6V,CAN_L上的电平是1.4V。
②终端反射消除
开放式的总线在传输电子信号时,会产生终端反射而干扰通信,为了消除终端反射,在总线两端分别加上一个120欧姆的终端电阻。
5、CAN对于线束的要求
①特性阻抗的概念
高速CAN总线的波特率500Kbit/S,在高频下,信号以电磁波的形式传播过电缆,而描述在高频情况下,导线对于电磁波的电阻系统及特性阻抗。
电缆的特性阻抗是电缆中传送的电场强度和磁场强度之比(V/m)/(A/m)=欧姆,特性阻抗的计算公式如下:
R=该导体材质(在直流情况下)单位长度的电阻率,欧姆,
G=绝缘层的导电系数,欧姆
J=虚数,+90度相位角
Л=3.1416
L=单位长度电缆的电感量
C=单位长度电缆的电容量
在高频下,公式中f的两项变得很大,这时R和G可以被忽略,公式简化为:
所以在f足够高的情况下,特性阻抗和频率没有关系,特性阻抗等于电感量/电容量的平方根,及感抗、容抗乘积的平方根。
②特性阻抗的测量方法
电缆的特性阻抗描述了电缆在高频下的工作特性,万用是用直流电流来测量电阻,所以不能用万用表来测量电缆的阻抗,可通过专业设备测量一段电缆在远端开路的情况下的阻抗Zoc,再测量在远端短路情况下的阻抗Zsc,再用两者乘积的开放即为导线的特性阻抗。
③阻抗匹配
如果源输出阻抗,电缆的特性阻抗以及负载输入阻抗之间不匹配,就存在反射,这些反射波碰撞到信号发生器(源)的时候,它们再次发射和正在发射的正常信号混合,很难区分哪些是原始信号,那些是再次反射波,所以对于高速CAN总线,要求线缆的特性阻抗为120欧姆。
④双绞线之间的电容
为了保证信号传输的完整性,CAN双绞线必须满足导线和导线之间的电容的要求,测试方法如下:
⑤传播延时
为了保证信号传输的实时性,信号在电缆上的传输时间必须满足要求,信号延时的测量方法依据EIA-364-103。
下面是某公司对于高速CAN总线对线缆的参数要求。
总结
除了上述的要求,高速CAN对于线束的要求还有,导线的绝缘层,双绞线的绞距,pin在插件中的位置,路由的要求(避开天线同轴电缆及容易受影响的信号线,同时避开大电流线)等,CAN线在设计的时候,更多是从信号传输理论的角度来考虑,区别于其他供电线及地线。同轴电缆的设计也遵信这样的设计思路,有机会就同轴电缆写一下自己的想法。
推荐阅读: