CAN总线由博世公司于1987年开发,1993年成为规范,在近23年的时刻里获得了巨大的成功,逐步替代了其它附近的总线,2001年的节点选用量已超越1亿。可是,从前力推CAN总线的厂商,如宝马、博世、飞利浦等,现在都开端支撑新的总线。关于推进新总线研讨的原因,X-By-Wire的开展是一方面,但从底子上讲,顾客的安全需求才是最重要的原因。依据新闻报道:在CAN的发源地德国,2005年轿车抛锚事端中有35%是电子设备引起的。因而,电子控制体系及其通讯体系的牢靠性是一个灵敏的问题,即便没有选用X-By-Wire,依然运用惯例的液压气动组织,也需求一种更为牢靠的新总线来替代CAN。
车内通讯有两个最基本的要求:一是数据内容正确;二是通讯及时,序列共同。对这两点,CAN总线中均有所规划,但仍存在着不共同性、不行猜测性、信道犯错阻塞等缝隙。
1)不共同性
CAN总线中有一个闻名的Last-But-One-Bit过错。CAN总线2.0A在信息认证(Message Validation)中规矩:发送器验错的规模可掩盖到帧完毕,假如发现过错,今后就按优先权和状况的规矩重发;接纳器验错的规模掩盖到帧完毕的前一位。因而,假如因为空间搅扰、电源动摇等原因,关于帧的倒数第二位,一部分节点A以为无错,一部分节点B以为有错,即呈现了所谓的Byzantine过错。这时,依据EOF应该是7个隐性位,节点B以为这是一种方式过错,所以就会发动过错帧,告诉发送器重发,一起丢掉收到的帧。而以为没错的节点A因为只查到倒数第二位,因而就会接纳此帧。假如在发送器例行的下一次发送前B告诉的重发成功,A就会收到重复帧;假如重发不成功,B就丢了一帧。在转向和制动体系中,4个轮子对指令的不同了解,或许形成功用的下降或其他更严峻的结果。
2)不行猜测性
CAN总线将节点状况分为Error Active、Error Passive和Bus Off三种,这三种状况在必定条件下能够相互转化。不同状况中节点的发送有不同的推迟。最高优先权的信息发送推迟有几种或许:当节点状况为Error Active时,若总线闲暇,则当即发送;当节点状况为Error Active时,假如其它帧正在发送,则需等正在发送的报文完毕后,再过3位后发送;当节点状况为Error Passive时,它有一个犯错重发的要求,若没有其它帧要发送,等3位传送(Intermission)和8位挂起传送(Suspend Transmission)后重发;当节点状况为Error Passive时,若总线闲暇,犯错后等其他信息发送完后再发,等待时刻与其它帧的长度有关;当节点状况为Bus Off时,需等状况康复到Error Passive或Error Active再发。
当承认某节点的状况时,还有几个要素需求考虑:首要,节点由最高优先权的信息和其他信息共用,因而,其他信息在传送过程中呈现的过错也会影响到节点状况;其次,进入Error Passive或 Bus Off状况的条件是发送过错计数器与/或接纳过错计数器的值,因为CAN的原子播送特色,其它节点的发送过错或接纳过错会敞开一个过错帧,然后影响到该节点的接纳过错计数器的值,从而影响节点状况。
关于优先权较低的信息来说,发送时刻的离散程度更大。在反应控制体系中,采样调理周期的大规模颤动相当于信号推迟后的改动,它有或许使体系功用下降或不稳定。在与安全相关的开环体系中,颤动或许形成动作次序的紊乱。
3)信道犯错阻塞
节点有或许受搅扰或其它原因暂时或永久失效,犯错的主时机指令CAN收发器不断发送音讯,即所谓的Babbling Idiot过错。因为该信息的格局等均合法,因而CAN没有相应的机制来处理这种状况。依据CAN的优先权机制,比它优先权低的信息就被暂时或永久阻塞。
因为CAN总线存在上述几种底子的缺点,因而,在更为严厉的控制体系中,它将会形成巨大的危险,无法满意安全、环保、节能的要求。
CAN的事情触发协议特色约束了ECU的使用、开发与出产,不只用过的ECU难于重用,并且还不利于改善和开发新的ECU。
一个成功的CAN使用仅在必定的条件下是有用的,簇内一切信息的优先权装备、波特率、通讯负荷(一切信息的呈现频率和长度)都较为固定,任何一个参数的改动都会使通讯的时域散布改动。因而,当需求改动车型时,假如添加了新的功用,或是修正了闭环控制计划,ECU的一切基本功用就有必要从头验证,这使作业量大大添加,推迟了新车型的上市时刻。相同,关于供给零部件的厂商,同一ECU在不同轿车厂商的轿车上使用时,或许不得不对某些参数进行修正,这需求进行从头的验证和认证,添加了办理的复杂性,也添加了本钱。
在事情触发通讯体系中,一切的使用都因优先权规矩而深深地耦合在一起。这一特色使得由不同的作业组对单个使用一起进行规划、测验和认证的作业无法完成,这一点对希望成为质量与技能进步的轿车厂商来说是难以容忍的。
别的,对CAN的各种改善都难以完成向下的兼容性。自CAN总线面世以来,跟着对CAN限制性的知道不断加深,业界提出了各种改善计划,这些计划选用规范的芯片,在底层协议上添加新的规矩,使其具有分时通讯的功用。如TTCAN、FTT_CAN ( Flexibly Time-Triggered CAN)、ServerCAN、TCAN (Timely CAN)、FlexCAN/SafeCAN 等。其间,TTCAN正在成为业界规范ISO11898-4。可是,这些改善都要对原有的CAN协议进行修正,例如犯错时不当即重发,要将事情触发的使用程序改为时刻触发的使用程序等。这些改动都是新协议必备而老协议不具备的,因而,原有的带CAN通讯协议的ECU假如想要在新体系中使用,也就有必要进行修正。
CAN总线的另一个限制要素是传送波特率,十多年前确认的1M波特率因为使用的飞速添加而变成瓶颈。从低速CAN总线、高速CAN总线,致使将来不得不装备第二条高速CAN总线,尽管这或许能够缓解速率问题,但从大局看,总线数量的添加使布线、网关、体系复杂性都随之添加。从技能角度上看,从头规划CAN收发器,进步传送波特率是有必定或许的;但从技能经济角度上看,无法与现有产品相兼容就使这种部分改善失去了含义。