控制器局域網(wǎng)(CAN)總線起源于Robert Bosch GmbH,協(xié)議規(guī)范于1986年在汽車工程師協(xié)會(SAE)會議上正式發(fā)布。由英特爾和飛利浦生產(chǎn)的第一批CAN控制器芯片于1987年上市。1991年,梅賽德斯 - 奔馳發(fā)布了第一款基于CAN的多路復(fù)用布線系統(tǒng)的量產(chǎn)車。它是標(biāo)準(zhǔn)的汽車網(wǎng)絡(luò),允許汽車大大減小線束的尺寸和重量。
CAN連接的替代品已被提出,但CAN還活著并且還在增長。事實上,它的用途正在遠(yuǎn)遠(yuǎn)超出汽車領(lǐng)域,進(jìn)入工廠自動化和物聯(lián)網(wǎng)(IoT)等各種領(lǐng)域。CAN收發(fā)器是可以增強設(shè)計的眾多模擬構(gòu)建模塊之一。你甚至可以稱他們?yōu)槟M英雄。
CAN總線類型
CAN 2.0A設(shè)備協(xié)議使用11位標(biāo)識符,使用29位標(biāo)識符的設(shè)備協(xié)議通常稱為CAN 2.0B。羅伯特·波什(Robert Bosh)仍然是領(lǐng)先的規(guī)格。根據(jù)維基百科,國際標(biāo)準(zhǔn)化組織于11898年發(fā)布了CAN標(biāo)準(zhǔn)ISO 1993,后來將其重組為兩部分。ISO 11898-1涵蓋數(shù)據(jù)鏈路層,而ISO 11898-2涵蓋高速CAN的物理層。ISO 11898-3 稍后發(fā)布,涵蓋了低速、容錯 CAN 的物理層。
SAE J1939標(biāo)準(zhǔn)是卡車和公共汽車廣泛使用的CAN協(xié)議標(biāo)準(zhǔn)。CAN總線是車載診斷(OBD)-II車輛診斷標(biāo)準(zhǔn)中使用的五種協(xié)議之一,該標(biāo)準(zhǔn)自1996年以來一直是在美國銷售的所有汽車和輕型卡車的強制性要求,自2001年以來在歐洲銷售。
CAN的替代品
CAN的替代方案包括本地互連網(wǎng)絡(luò)(LIN)總線和Flexray。LIN總線甚至比CAN便宜。LIN不是CAN總線的完全替代品,但在低成本至關(guān)重要且速度/帶寬不重要的情況下,LIN是一個很好的選擇。在汽車應(yīng)用中,它通常用于對車輛性能或安全性不重要的子系統(tǒng)。Flexray自2000年以來一直在開發(fā)中,用于2006年生產(chǎn)的寶馬,現(xiàn)在用于大多數(shù)德國汽車和SUV。它支持更快的 10Mbps 數(shù)據(jù)速率和確定性的時間響應(yīng),并且設(shè)計為冗余。但是,它比CAN昂貴且復(fù)雜得多,并且只有24米的范圍。還有用于信息娛樂系統(tǒng)的MOST網(wǎng)絡(luò)。非??焖俚?a target="_blank">以太網(wǎng)連接正在被提議用于汽車中的信息娛樂和顯示應(yīng)用,甚至更多。
將CAN擴(kuò)展到工業(yè)世界
豪華車有多達(dá)150個汽車ECU來控制和調(diào)節(jié)各種功能,現(xiàn)在每輛新車至少有70個ECU。這些ECU必須相互通信,同時控制動力傳動系,車身和底盤的幾乎所有方面。CAN將每個功能連接到各種ECU(從門鎖到制動器、油門踏板和尾燈)。它的受歡迎程度源于非常高的可靠性和簡單性——低成本和低功耗。
CAN總線使用簡單的25Kbps至1Mbps雙絞線連接。現(xiàn)在可以使用芯片來實現(xiàn)2Mbps數(shù)據(jù)??偩€將以1000Kbps的速度達(dá)到50m,在40Mbps時達(dá)到1m。 CAN的車輛普及源于開發(fā)人員發(fā)現(xiàn)的優(yōu)雅方式,以保證在具有安全意識的汽車環(huán)境中進(jìn)行可預(yù)測的無差錯通信。這些特性也可以在工廠車間得到很好的利用。
CAN在一對電線上以差分方式傳輸。這種差分特性意味著CAN能夠抑制共模噪聲。該結(jié)構(gòu)還減少了排放,因為差分通信的電場往往會相互抵消。
使用需要大電流來啟動、停止和運行的電機(jī)的工業(yè)系統(tǒng)就是一個很好的例子,說明CAN的亮點。電機(jī)的電磁輻射會導(dǎo)致RS-485或類似通信中的大量錯誤,而CAN能夠通過。除了物理可靠性之外,CAN還包括其他功能以確保魯棒性,包括循環(huán)冗余校驗(CRC)和支持錯誤檢測的確認(rèn)。
作為總線拓?fù)溥\行需要設(shè)備了解何時可以傳輸。CAN使用載波檢測多址和碰撞檢測(CSMA/CD),也用于以太網(wǎng)。當(dāng)設(shè)備想要傳輸其消息時,它必須感知總線是否空閑且未被使用。碰撞檢測允許它檢測總線上的另一個設(shè)備何時嘗試同時傳輸。CAN使用優(yōu)先級機(jī)制進(jìn)行總線管理。
隨著CAN總線變得非常流行,競爭供應(yīng)商進(jìn)行了不同的實現(xiàn)。每個實現(xiàn)都有不同的網(wǎng)絡(luò)層,即使物理層是通用的。CANopen旨在實現(xiàn)兼容性,以便設(shè)計人員可以選擇支持CAN的設(shè)備,并知道它們會相互作用。它在用于自動化應(yīng)用的嵌入式系統(tǒng)中最受歡迎。在OSI模型方面,CANopen實現(xiàn)了上述層,包括網(wǎng)絡(luò)層。
圖1.CAN總線的OSI層方案。
將CAN與RS-485進(jìn)行比較
與RS-485等通信協(xié)議相比,CAN不僅為通信提供了物理介質(zhì),還提供了處理數(shù)據(jù)包(消息)所需的所有其他機(jī)制,避免數(shù)據(jù)沖突,檢測傳輸數(shù)據(jù)中的故障,自動重復(fù)受干擾的消息,并確保網(wǎng)絡(luò)中所有節(jié)點的數(shù)據(jù)一致性。此外,CAN指定數(shù)據(jù)幀的結(jié)構(gòu),包括消息標(biāo)識符、數(shù)據(jù)和控制字節(jié)。RS-485連接僅尋址第1層(物理層),CAN還在OSI模型中添加第2層(數(shù)據(jù)鏈路層)。因此,CAN是一種實時兼容的解決方案。根據(jù)消息的ID優(yōu)先級,可以預(yù)測每個CAN消息的最大延遲時間,而與總線負(fù)載或其他節(jié)點的性能無關(guān)。使用RS-485必須保證使用應(yīng)用軟件避免碰撞。
CAN具有先進(jìn)的錯誤管理功能。如果節(jié)點未正確接收消息(CRC 或格式錯誤),則收件人將通過錯誤幀銷毀該消息,并標(biāo)記為對所有節(jié)點無效。此操作在CAN控制器中啟動自動重復(fù)。
CAN實施
這些措施共同采取(簡短消息、差分傳輸、錯誤檢測和故障排除、缺陷節(jié)點的撤出)使CAN成為一個非常強大、安全、可靠的網(wǎng)絡(luò)。這就是為什么CAN被用于車輛、船舶、電梯、醫(yī)療設(shè)備、飛機(jī)和工業(yè)工廠的許多關(guān)鍵或安全相關(guān)應(yīng)用的原因。
由于CAN協(xié)議在硬件中的完全實現(xiàn),微控制器系統(tǒng)的負(fù)載減少了(每條消息只有一個中斷)。許多供應(yīng)商和幾乎所有可用的MCU都提供了各種第7層協(xié)議,如CANopen、DeviceNet和J1939,從而降低了風(fēng)險并縮短了上市時間。
汽車應(yīng)用顯然需要符合汽車級標(biāo)準(zhǔn)的IC。對于該領(lǐng)域以外的應(yīng)用,例如前面提到的工業(yè)自動化和物聯(lián)網(wǎng)示例,這里有幾個很好的CAN收發(fā)器IC可以滿足這些應(yīng)用需求。MAX3051為3.3V、1Mbps、低電源電流CAN收發(fā)器IC,主要用于不需要汽車行業(yè)規(guī)定的嚴(yán)格故障保護(hù)的應(yīng)用。它具有四種操作模式:高速、斜率控制、待機(jī)和停機(jī)。在斜率控制模式下,發(fā)射器的壓擺率可以調(diào)節(jié)到高達(dá)500Kbps的數(shù)據(jù)速率。這減少了由端接不當(dāng)?shù)碾娎|引起的EMI和反射,并可能允許使用非屏蔽雙絞線。
圖2.基本的MAX3051收發(fā)器電路。
MAX3051輸入共模范圍為-7V至+12V,超過ISO 11898規(guī)范。該器件采用 8 引腳 SO 和 SOT23 封裝,工作溫度范圍為 -40°C 至 +85°C。該芯片提供 ±12kV HBM ESD 保護(hù)、熱關(guān)斷和電流限制。
另一個值得注意的CAN收發(fā)器IC是MAX13054A。這款 2Mbps CAN 收發(fā)器具有高保護(hù)級別和 8 引腳 SO 封裝。它具有 ±65V 過壓故障保護(hù),并集成了高 ±25kV ESD HBM 保護(hù),以及 ±25V 的輸入共模范圍、短路保護(hù)和熱關(guān)斷。一個非常堅固的設(shè)備。
該芯片提供非常寬的1.62至5.5V邏輯電源范圍,以緩解接口困難。在待機(jī)模式下,發(fā)射器關(guān)閉,接收器切換到低電流/低速狀態(tài)。監(jiān)視總線以檢測喚醒事件。待機(jī)模式僅需要 11μA 的電源電流。收發(fā)器包括一個顯性超時,以防止由控制器錯誤或TXD輸入故障引起的總線鎖定。大型網(wǎng)絡(luò)上的最大速度可能受到節(jié)點數(shù)量、布線類型或短截線長度的限制。芯片的溫度范圍為-40°至125°C,采用8引腳SOIC封裝(MAX13054AEASA+)。
圖3.使用MAX13054A收發(fā)器的多點CAN總線。
MAX13054(無A后綴)有點不同。此版本完全兼容 ISO11898 標(biāo)準(zhǔn),根據(jù) IEC 8-61000-4 具有 ±2kV ESD 和 ±80V 故障保護(hù)。其他規(guī)格,包括封裝,與MAX13054A相似。它可用于汽車或擴(kuò)展溫度范圍。
強大的CAN接口
仍然受到設(shè)計工程師的歡迎,這是有充分理由的。人氣還在增長。在可預(yù)見的未來,CAN總線將成為一股重要的力量,也是滿足各種應(yīng)用領(lǐng)域許多通信需求的絕佳解決方案。
審核編輯:郭婷
-
控制器
+關(guān)注
關(guān)注
112文章
16444瀏覽量
179161 -
CAN
+關(guān)注
關(guān)注
57文章
2766瀏覽量
464211
發(fā)布評論請先 登錄
相關(guān)推薦
評論