1.结构
局域网(CAN)由多条CAN总线通过网关连接在一起,各条CAN总线下面还有LIN、MOST、Flex-Ray、Safe-by-Wire等子网或其他网络,这样就形成一个庞大的车载网络,并且可以不断扩充和延伸。
CAN总线结构示意
2.原理
传输速率为500kbit/s的高速CAN主要面向实时性要求较高的控制单元,如发动机、ABS等;传输速率为125kbit/s的低速CAN主要面向信号多但实时性要求不高的控制单元,如车灯、车门、车窗等,其优点是成本较低;网关把高速CAN和低速CAN连接在一起,实现互通和信息共享。
CAN总线连接示意
3.高速CAN总线
原则上CAN总线用一条数据线就足以满足功能要求了,但该总线系统还是配备了第二条数据线。在第二条数据线上,信号是按相反顺序传送的,这样可有效抑制外部干扰。我们把这两条数据线分别称为CAN高位数据线(CAN-H)和CAN低位数据线(CAN-L)。
在高速CAN总线系统中,各控制单元均与两条数据线并联,同时两条数据线被两个120Ω的终端电阻连成一个封闭的回路,其作用是阻止数据在传输终了被反射回来并产生反射波,因为反射波会破坏数据。在低速CAN总线系统中,各控制单元也均与两条数据线并联,但没有终端电阻。
高速CAN
4.CAN总线的数据传输
CAN总线中的每个控制单元均可发送和接收信息。信息中包含重要的物理量,如发动机转速,这时发动机转速是以二进制值(一系列0和1)来表示的。例如:发动机转速为1800r/min时可表示成00010101。在发送过程中,二进制数值先被转换成连续的比特流(信息量的度量单位)。该比特流通过TX线(发送线)到达收发器(放大器),收发器将比特流转化成相应的电压值,最后这些电压值按时间顺序依次被传送到CAN总线的导线上。在接收过程中,这些电压值经收发器又转换成比特流,再经RX线(接收线)传至控制单元,控制单元将这些二进制连续值转换成信息。例如:00010101这个值又被转换成1800r/min这个发动机转速。
CAN总线的数据传输
5.CAN总线功能元件
CAN总线系统的功能元件包括控制单元、CAN构件和收发器。控制单元接收来自传感器的信号,经过微处理器处理后再发送命令到执行元件上。控制单元由一个微处理器和输入/输出存储器以及程序存储器组成。控制单元接收到的传感器值(如发动机温度或转速)会被定期查询并按顺序存入输入存储器,这个过程在原理上就相当于一个带有旋转式输入选择开关的机械步进选择器。微处理器按事先规定好的程序来处理输入值,处理后的结果存入相应的输出存储器内,然后发送命令给各执行元件。为了能够处理CAN信息,各控制单元内还有一个CAN存储区,用于容纳接收到的和要发送的信息。CAN控制器用于数据交换,它分为两个区,一个是接收区,一个是发送区。CAN控制器通过接收邮箱或发送邮箱与控制单元相连,它一般集成在控制单元的微处理器芯片内。收发器通过TX线(发送线)或RX线(接收线)与CAN控制器相连。收发器就是一个发送接收放大器,它把CAN控制器连续的比特流转换成电压值,或反之。RX线通过一个放大器直接与CAN总线相连,总在监听总线信号。
5.CAN总线功能元件
CAN总线功能元件
6.收发器工作原理
收发器的TX线发送信息是通过一个开关式晶体管电路来实现的。CAN总线数据线上会出现两种状态:当晶体管处于截止状态时(相当于开关未闭合),总线电平为高电压,我们将其状态作为逻辑1(无源),称之为隐性电平;当晶体管处于导通状态时(相当于开关闭合),总线电平为低电压,我们将其状态作为逻辑0(有源),称之为显性电平。控制单元根据两条数据线上的电位差来判断总线电平。发送方通过使总线电平发生变化,将信息发送给接收方。
收发器工作原理(www.daowen.com)
7.收发器工作状态
将CAN总线的数据传输图简化后只留下收发器,如果某一收发器的开关闭合,电阻上就有电流流过,于是总线数据线上的电压就为0V,CAN总线被激活,进行通信;如果所有收发器的开关均未闭合,那么,就没有电流流过,电阻上就没有电压降,于是总线数据线上的电压就为高电压,CAN总线处于未激活状态,未进行通信。因此,如果总线处于状态1(无源),那么此状态可以由某一个控制单元使用状态0(有源)来改写。
收发器工作状态
8.CAN总线数据组成
CAN数据帧的组成
1)开始域。
标志着数据帧开始。带有大约5V或2.5V电压(由系统决定)的1位被送入CAN-H线,带有大约0V电压的1位被送入CAN-L线。
2)状态域。
判定数据中的优先权。如果两个控制单元都要同时发送各自的数据,那么,具有较高优先权的控制单元优先发送。
3)检查域。
指示数据域里的字节数目多少。
4)数据域。
真正给出所要传递的数据,发送到CAN总线中供所需控制单元使用。
5)安全域。
检测传递数据中的错误。
6)确认域。
在此,接收器发信号通知发送器,接收器已经正确收到数据。若检查到错误,接收器会立即通知发送器,发送器会再发送一次数据。
7)结束域。
标志数据报告结束。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。