CAN總線,也叫做控制器局域網總線(Controller Area Network),是一種用于實時應用的串行通訊協議總線,它可以使用雙絞線來傳輸信號,是世界上應用最廣泛的現場總線之一。CAN協議用于汽車中各種不同元件之間的通信,用來取代昂貴而笨重的配電線束。CAN協議的使用廣泛這一特點使其很快延伸到自動化控制以及工業領域中。 CAN協議的特性包括完整性的串行數據通訊、提供實時支持、傳輸速率高達1Mb/s、同時具有11位的尋址以及檢錯能力。 CAN總線發展史 控制器局域網CAN屬于現場總線的范疇,是一種有效支持分布式控制系統的串行通信網絡。德國博世公司在20世紀80年代專門為汽車行業開發的一種串行通信總線,由于其高性能、高可靠性以及能夠檢測出產生的任何錯誤,因而而越來越受到人們的歡迎,被廣泛應用于諸多領域。 隨著CAN總線在各個行業和領域的廣泛應用,使得對其的通信格式也提出了更嚴格的要求。1991年CAN總線技術規范(Version2.0)制定并發布。該技術規范共包括A和B兩個部分。其中2.0A給出了CAN報文標準格式,而2.0B給出了標準的和擴展的兩種格式。 美國的汽車工程學會SAE在2000年提出了J1939協議,此后該協議成為了貨車和客車中控制器局域網的通用標準。傳統的CAN是基于事件觸發的,信息傳輸時間的不確定性和優先級反轉是它固有的缺陷。當總線上傳輸消息頻率不高時,這些缺陷相對影響較小;但隨著發送頻率的不斷增加,性能會急劇下降。 為了滿足汽車控制對實時性和傳輸消息密度不斷增長的需要,改善CAN總線的實時性能非常必要。于是,傳統CAN與時間觸發機制相結合產生了TTCAN(Time-Triggered CAN),ISO11898-4己包含了TTCAN。 TTCAN總線和傳統CAN總線系統的區別是:總線上不同的消息定義了不同的時間槽(Timer Slot)。 |