接口/总线/驱动
CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。
CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。
CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识符可由11位或29位二进制数组成,因此可以定义2或2个以上不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
CAN总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线以及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。CAN总线协议已被国际标准化组织认证,技术比较成熟,控制的芯片已经商品化,性价比高,特别适用于分布式测控系统之间的数据通讯。CAN总线插卡可以任意插在PC AT XT兼容机上,方便地构成分布式监控系统。
只有2根线与外部相连,并且内部集成了错误探测和管理模块。
CAN总线特点:(1) 数据通信没有主从之分,任意一个节点可以向任何其他(一个或多个)节点发起数据通信,靠各个节点信息优先级先后顺序来决定通信次序,高优先级节点信息在134μs通信; (2) 多个节点同时发起通信时,优先级低的避让优先级高的,不会对通信线路造成拥塞; (3) 通信距离最远可达10KM(速率低于5Kbps)速率可达到1Mbps(通信距离小于40M);(4) CAN总线传输介质可以是双绞线,同轴电缆。CAN总线适用于大数据量短距离通信或者长距离小数据量,实时性要求比较高,多主多从或者各个节点平等的现场中使用。
此说明用于检查总线连接上的 CAN 高速和 CAN 低速信号电平是否正确。
● 电压检测 (示波器):电压检测的前提条件是,蓄电池已连接并且点火开关已接通。
● 电阻测量:在电阻测量时,在测量前必须把待测部件断电。为此应断开车辆蓄电池的接线。等待约3 分钟,直到系统中的所有电容器放完电。
CAN (控制器区域网络) 总线系统是一种线形总线系统并具有以下特征:
● 信号双向传播。
● 所有总线用户都接收同一个信息。每个总线用户决定,它是否利用该信息。
● 通过简单并联即可添加附加的总线用户。
● 此总线系统构成一个多主控单元系统。每个总线用户可以是主控单元也可以是副控制单元,根据其作为发射器还是接收器被连接而定。
● 传输媒介是双线连接。导线的名称为:CAN Low (低速) 和 CAN High (高速)
● 原则上每个总线用户可以通过总线同所有其它总用户通信。通过干预法,控制总线上的数据交换。
数据总线 K-CAN (车身 CAN)、PT-CAN (传动系 CAN) 和 F-CAN (底盘 CAN) 之间的主要区别是:
● K-CAN:数据传输率约 100 kBit/s。可以进行单线运行。
● PT-CAN:数据传输率约 500 kBit/s。不能进行单线运行。
● F-CAN:数据传输率约 500 kBits/s。不能单线运行
主控单元是主动式通信方,通信的主动权由它发出。主控制单元掌控总线,并控制通信。主控制单元能够在总线系统中向被动式总线用户 (副控制单元) 发送信息,并根据被动式用户的要求接收信息。
副控制单元是一个被动式通信用户。副控制单元被要求接收和发送数据。
在一个多主控单元系统中所有的通信用户在某个时间都能够担当主控单元或副控制单元的角色。
为了弄清 CAN 总线是否完好工作,必须观察总线上的通信情况。在这种情况下不需要分析单个位,而只需要观察 CAN 总线是否工作。示波器测量说明:‘CAN 总线很可能无故障工作’。
如果用示波器测量 CAN 低 (或 CAN 高) 导线和接地之间的电压,则获得一个处于下列电压极限范围内的类矩形波信号:
CAN Low (低速) 对地:U 最小 = 1 V,U 最大 = 5 V
CAN High (高速) 对地:U 最小 = 0 V,U 最大 = 4 V
这些值都是近似值,根据总线上的负载可能有几个 100 mV 的偏差
测量 K-CAN:CH1 CAN 低,CH2 CAN 高
如果用示波器测量 CAN 低 (或 CAN 高) 导线和接地之间的电压,则获得一个处于下列电压极限范围内的类矩形波信号:
CAN Low (低速) 对地:U 最小 = 1.5 V,U 最大 = 2.5 V
CAN High (高速) 对地:U 最小 = 2.5 V,U 最大 = 3.5 V
测量 PT-CAN:CH1 CAN 低,CH2 CAN 高
● CAN 总线必须断电。
● 不允许使用其它测量仪 (并联测量仪)。
● 测量在 CAN-Low 导线和 CAN-High 导线之间进行。
● 实际值允许与标准值有几欧姆的偏差。
因为电阻根据控制单元内部的开关逻辑而变化,所以在 K-CAN 总线上不能进行规定的电阻测量!
为了避免信号反射,在 2 个 CAN 总线用户上 (在 PT-CAN 网络中的距离最远) 分别连接一个 120 Ω 的终端电阻。这两个终端电阻并联,并构成一个 60 Ω 的等效电阻。关闭供电电压后可以在数据线之间测量这个等效电阻。此外,单个电阻可以各自分开测量。
通过 60 Ω 等效电阻进行测量的提示:把一个便于拆装的控制单元从总线上脱开。然后在插头上测量 CAN-Low导线和 CAN-High 导线之间的电阻。
提示!
并非所有车辆都在 CAN 总线上有终端电阻。可以根据相应的电路图检查,在连接的车辆上是否安装有终端电阻。
当 K-CAN 或 PT-CAN 数据总线失效时,在 CAN-Low 或 CAN-High 导线上可能存在短路或断路。或者某个控制单元已损坏。
为了查找故障原因,建议进行下列工作步骤:
● 将总线用户从 CAN 总线上依次拔下,直至找到故障原因 (= 控制单元 X)。
● 检查通往控制单元 X 的导线是否短路或断路。
● 如有可能,检测控制单元 X。
● 如果某个控制单元至 CAN 总线的分支线短路,仅执行该工作步骤就成功了。如果 CAN 总线中的一条导线自身短路,则必须检查电线束。
全部0条评论
快来发表一下你的评论吧 !