CAN总线从上个世纪80年代开端,逐步在轿车电子、轨道交通、医疗电子、工程机械等广泛的工业场合运用。这个“陈旧”的总线,最让人“不爽”的当地,便是一帧只能传输八字节数据,假如要一次传输更长字节,需求分帧,而挑选一种牢靠的分帧办法便是运用者必定要注意的。
CAN总线作为轿车电子而生的总线,提出了“优先级主动裁定”和“短帧快速传输”的操控概念,为了抵达“高实时性”的快速操控政策。运用一帧八字节的通讯单元具有了一系列的长处缺陷:
一、CAN通讯的优缺陷:
长处
(1)8个字节正好是8个字节、4个16位、2个32位、1个64位的变量的寄存“容器”。那么用户只需在ID中寄存“寄存器地址”,然后经过1帧来“读取”或许“修正”,对应的“数值”,这样比较便利;
(2)短帧进步总线同享速度。任何一个CAN节点发送报文,在发送一帧后,需求重新和其他节点竞赛总线,这样只需用户规划恰当的发送距离,就能够确保一切的点“同享”总线,进步总线利用率,也确保每个节点的发送周期大致确保共同。
缺陷
(1)长数据传输时数据负载偏低。在多帧发送时,由于每帧发送都要发送CANID,所以实践的CAN数据所占的份额就很低了,以CAN扩展帧为例,其29位ID和64位的数据,导致数据承载只能抵达60%。所以在长数据传输时,CAN乃至比不上相同波特率下的RS485/Modbus;
(2)长数据传输分帧丢帧,会导致整包传输失利。当需求一次传输超越8字节数据时,需求分多帧传输,假如其间一帧“丢掉”,则会导致整个发送包的无效。这就要求接纳节点对每一个分帧进行承认,以确保每一个分帧的抵达,而这么做就会大大下降功率;
(3)长数据传输时同步性差。比方要一起输出动作超越8字节的操控指令时,由于每个帧抵达有先后,先到的先动作,后到的后动作,就会引起输出的不同步性。
可见CAN总线在当时的干流运用中,主要矛盾会集在其8字节短帧的长数据传输上。因而国际广阔科技工作者拟定出一系列的改善和变革办法来处理这些缺陷。
二、牢靠CAN长数据通讯:
晋级为CANFD协议进步数据负载率
几年前,梅赛德斯奔跑的工程师们对CAN总线的拟定单位CiA(CAN in Automatic)协会提出,奔跑现已将CAN用尽了。由于奔跑的工程师们经过不断优化通讯机制,现已将奔跑的CAN总线利用率进步到90%以上,现已无带宽可用,只能经过网关不断添加新的CAN网络来扩展数据通道。这样导致整车的总线区域越来越多。
车载以太网尽管能够处理数据量的问题,但其布线改动过大,成本上升过多,只适合于网关之间的通讯。所以CiA协议就联合各大车厂,拟定出新一代的CANFD协议,以快速晋级现有的CAN2.0B。其主要的内容便是将一帧的数据段由8字节提高到64字节,一起能够提高数据段的波特率,以缩短通讯时刻。如图1所示。
图 1 CANFD报文提高数据负载率
这样,不需求每8字节就要发一次CANID,即便不提高波特率,也提高了8倍的数据负载率。假如提高了8倍波特率,则能够抵达64倍的数据负载率,相当于扩大了64倍带宽。其提高作用十分显着。
选用牢靠的分帧协议
老练的运用层协议都有牢靠的分帧协议,比方CANopen,DeviceNET,J1939协议等,总的政策都是“握手”“传输”“承认”“完毕”这四个进程循环。这儿只介绍CANopen协议中的SDO多帧传输。
发送方(客户端)发送的报文CAN-ID为600h+Node-ID,接纳方(服务器)成功接纳后,回应CAN-ID为580h+Node-ID的报文。下载协议download protoco如图2所示。
图2 一般SDO下载协议
上传协议upload protoco如图3所示。
图 3一般SDO上传协议
选用同步传输协议
同步传输,处理的便是完成整个网络的同步传输,如图4所示,就像阅兵分列式上的方阵,一切战士迈着规整的脚步跋涉。这儿以CANopen的同步报文为例解说。
图4同步协议与阅兵分列式
每个节点都以同步报文作为PDO(进程数据的)触发参数,为了确保时刻准确性,该同步报文的COB-ID 具有比较高的优先级以及最短的传输时刻。 CANopen选用80h作为同步报文的CAN-ID,如图5所示。
图5 同步报文
一般同步报文由NMT(网络办理)主机宣布,CAN报文的数据为0字节。但假如一个网络内有2个同步机制,就需求设置不同的同步节拍,比方某些节点按1个同步帧发送1次PDO,其他的节点收到2个同步帧才发送1此PDO,
在同步协议中,有2个约束条件:
同步窗口时刻:索引1007h约束了同步帧发送后,从节点发送PDO的时效,即在这个时刻内发送的PDO才有用,超越时刻的PDO将被丢掉,当同步窗口完毕后,开端一起履行动作。
通讯循环周期:索引1006h规则了同步帧的循环周期,便是同步包发送的周期。
CAN总线在许多爱好者的推进下,不断改善和变革本身,让这个陈旧的总线焕宣布生气勃勃。广州致远电子有限公司,作为CAN总线在国内的重要推行者,CANScope总线归纳分析仪已免费标配CANPRO软件,能够解析干流的CANOpen,DeviceNet,J1939协议。