來源 | 安富萊電子
編排 | strongerHuang
之前給大家分享過很多關于CAN的文章: CANOpen系列教程 CAN-FD協(xié)議你了解多少? 第三代CAN技術即將到來
今年CAN總線35周年了,給大家分享一下CAN總線的歷史。
1986年2月,Robert Bosch GmbH在汽車工程師協(xié)會(SAE)大會上推出了控制器局域網(wǎng)(CAN)串行總線系統(tǒng)。這是有史以來最成功的網(wǎng)絡協(xié)議之一誕生的時刻。如今,歐洲幾乎所有汽車都配備了至少一個CAN網(wǎng)絡。CAN還用于其他類型的車輛,從火車到輪船,以及工業(yè)控制中,CAN是最主要的總線協(xié)議之一,甚至可能是全球領先的串行總線系統(tǒng)。
嵌入式專欄
1
從構思到第一個芯片
在1980年代初期,博世的工程師正在評估現(xiàn)有的串行總線系統(tǒng),以探討其在汽車中的可能用途。由于沒有可用的網(wǎng)絡協(xié)議能夠滿足汽車工程師的要求,因此Uwe Kiencke于1983年開始開發(fā)新的串行總線系統(tǒng)。
新的總線協(xié)議主要是要增加新的功能 --- 減少線束不是CAN發(fā)展背后的驅動力。奔馳的工程師很早就參與了新的串行總線系統(tǒng)的規(guī)范制定階段,英特爾作為潛在的主要半導體供應商也參與了進來。來自德國Braunschweig-Wolfenbüttel的應用科學大學(現(xiàn)為Ostfalia University of Applied Science)的Wolfhard Lawrenz教授被聘為顧問,他將新的網(wǎng)絡協(xié)議命名為“Controller Area Network(控制器區(qū)域網(wǎng)絡)”。來自卡爾斯魯厄大學的Horst Wettstein教授也提供了學術幫助。
1986年2月,CAN誕生了:在底特律的SAE大會上,新的總線系統(tǒng)被稱為“Automotive Serial Controller Area Network(汽車串行控制器局域網(wǎng))”。Uwe Kiencke,Siegfried Dais和Martin Litschel介紹了多主網(wǎng)絡協(xié)議。它基于一種非破壞性仲裁機制,該機制允許總線訪問具有最高優(yōu)先級的幀而沒有任何延遲。沒有中心控制器。此外,CAN之父(上述人員以及博世員工Wolfgang Borst,Wolfgang Botzenhard,Otto Karl,Helmut Schelling和Jan Unruh)已經(jīng)實現(xiàn)了幾種錯誤檢測機制。錯誤處理還包括自動斷開故障總線節(jié)點,以保持其余節(jié)點之間的通信。傳輸?shù)膸皇怯蓭l(fā)送器或幀接收器的節(jié)點地址(幾乎在所有其他總線系統(tǒng)中)識別的,而是由它們的內(nèi)容識別的。表示幀有效載荷的標識符,還具有指定幀在網(wǎng)絡段內(nèi)的優(yōu)先級。
隨后,許多介紹該創(chuàng)新通信協(xié)議的演講和出版物,直到1987年中期(比計劃提前兩個月),英特爾才交付了第一款CAN控制器芯片82526。這是CAN協(xié)議的第一個硬件實現(xiàn)。在短短四年內(nèi),一個想法就變成了現(xiàn)實。此后不久,飛利浦半導體推出了82C200。CAN控制器的這兩個最早的祖先在接受過濾和幀處理方面有很大的不同。一方面,與飛利浦選擇的BasicCAN實施相比,英特爾所青睞的FullCAN概念要求所連接的微控制器的CPU負載更少。另一方面,F(xiàn)ullCAN設備在可以接收的幀數(shù)方面受到限制。BasicCAN控制器還需要更少的硅。在當今的CAN控制器中,實現(xiàn)了接受過濾和幀處理這兩種概念的混合。這使BasicCAN和FullCAN的誤導性術語過時了。
嵌入式專欄
2
標準化和規(guī)格
博世CAN規(guī)范(2.0版)已于1990年代初提交國際標準化。在發(fā)生了幾場政治糾紛之后,尤其是涉及到法國一些主要汽車制造商開發(fā)的“車載區(qū)域網(wǎng)絡”(VAN,Vehicle Area Network),ISO 11898標準于1993年11月發(fā)布。除了CAN協(xié)議外,它還標準化了物理層,速率高達1 Mbit / s。同時,ISO 11519-2對通過CAN的低功耗,容錯數(shù)據(jù)傳輸方式進行了標準化。由于該標準存在缺陷,因此從未實施。在1995年,ISO 11898標準通過附錄進行了擴展,該附錄描述了使用29位CAN標識符的擴展幀格式。
不幸的是,所有已發(fā)布的CAN規(guī)范和標準化都包含錯誤或不完整。為避免不兼容的CAN實施方案,Bosch確保所有CAN芯片均符合Bosch CAN參考模型。此外,由Wolfhard Lawrenz教授領導的德國Braunschweig-Wolfenbüttel應用科學大學已經(jīng)進行了幾年的CAN一致性測試。所使用的測試模式基于ISO 16845一致性測試計劃標準系列。今天,多家測試機構可提供CAN一致性測試服務。
修訂后的CAN規(guī)范已標準化。ISO 11898-1描述了“ CAN數(shù)據(jù)鏈路層”,ISO 11898-2標準化了“非容錯” CAN物理層,而ISO 11898-3指定了“容錯CAN物理層”。ISO 11992系列(卡車和拖車接口)和ISO 11783(農(nóng)業(yè)和林業(yè)機械)系列指定了基于SAE J1939網(wǎng)絡方法的應用程序配置文件。它們不兼容,因為物理層規(guī)范不同。
嵌入式專欄
3
CAN時代的先鋒
盡管CAN最初被開發(fā)用于汽車,但最初的應用來自不同的市場領域。特別是在北歐,CAN在早期已經(jīng)非常流行。在芬蘭,電梯制造商Kone 使用了CAN總線。瑞典工程辦公室Kvaser向一些紡織機械制造商(Lindauer Dornier和Sulzer)及其供應商建議將CAN作為機器內(nèi)部的通信協(xié)議。在Lars-Berno Fredriksson的領導下,這些公司成立了“ CAN紡織品用戶小組”。到1989年,他們制定了溝通原則,有助于在1990年代初塑造發(fā)展環(huán)境“ CAN Kingdom”。盡管相對于OSI參考模型,CAN Kingdom不是應用程序層。
在荷蘭,飛利浦醫(yī)療系統(tǒng)決定將CAN用于其X射線機的內(nèi)部聯(lián)網(wǎng),從而加入了工業(yè)CAN用戶。主要由Tom Suters開發(fā)的“ Philips消息規(guī)范”(PMS)代表了CAN網(wǎng)絡的第一個應用層。來自德國Weingarten應用科學大學的Konrad Etschberger教授也有相同的想法,在他負責的Steinbeis過程自動化轉移中心(STZP)中,他開發(fā)了類似的協(xié)議。
盡管第一個標準化的高層協(xié)議開始出現(xiàn),但大多數(shù)CAN開拓者還是采用了整體法。通信功能,網(wǎng)絡管理和應用程序代碼是一種軟件。即使某些用戶希望采用模塊化的方法,但他們?nèi)杂袑S薪鉀Q方案的缺點。增強和維護CAN高層協(xié)議的必要努力被低估了 ---今天仍然部分是正確的。
在1990年代初,是時候成立了一個用戶小組,以推廣CAN協(xié)議并促進其在許多應用中的使用。1992年1月,當時的《 VMEbus》雜志編輯(出版商:Franzis)的Holger Zeltwanger吸引了用戶和制造商一起建立了一個中立的平臺,用于CAN的技術增強以及串行總線系統(tǒng)的市場營銷。兩個月后,“ CAN in Automation”(CiA)國際用戶和制造商小組正式成立。在早期,CAN通訊已經(jīng)出版。
僅幾周后發(fā)布的第一份技術出版物涉及物理層:CiA建議僅使用符合ISO 11898的CAN收發(fā)器。如今,制造商專用的EIA-485收發(fā)器在CAN網(wǎng)絡中非常普遍,那個時候,并不總是兼容,應該已經(jīng)完全消失了。
CiA的首要任務之一是規(guī)范CAN應用層。利用飛利浦醫(yī)療系統(tǒng)公司和STZP提供的現(xiàn)有材料,并在CiA其他成員的幫助下,開發(fā)了“ CAN應用程序層”(CAL),也稱為“綠皮書”。在使用CAN制定規(guī)范時,CiA的主要任務之一是組織CAN專家與那些希望在CAN上變得更多知識的專家之間的信息交換。因此,自1994年以來,舉行了國際CAN會議(iCC)。
LAV(德國農(nóng)業(yè)車輛協(xié)會)追求另一種學術方法。自1980年代后期以來,已經(jīng)開發(fā)了基于CAN的農(nóng)用車輛總線系統(tǒng)(LBS)。但是在這項工作可以成功完成之前,國際委員會已決定支持美國的解決方案J1939(ISO 11783)。此應用程序配置文件也基于CAN,由SAE卡車和公共汽車協(xié)會的委員會定義。J1939是一種非模塊化方法,非常易于使用,但也非常不靈活。
還為卡車開發(fā)了CAN的標準化??ㄜ嚭屯宪囍g的網(wǎng)絡標準化為ISO11992。該協(xié)議基于J1939,從2006年起必須在歐洲使用。汽車的趨勢是向OSEK-COM和OSEK-NM,通信協(xié)議和網(wǎng)絡管理邁進。兩者均已提交國際標準化。到目前為止,汽車制造商一直在使用專有軟件解決方案。
嵌入式專欄
4
從理論到實踐
當然,將CAN內(nèi)核實現(xiàn)到其微控制器中的半導體供應商主要集中在汽車行業(yè)。自1990年代中期以來,英飛凌科技公司(以前為西門子半導體公司)和摩托羅拉公司(外包為飛思卡爾,后來被NXP收購)已經(jīng)向歐洲汽車制造商及其供應商運送了大量CAN控制器。自1990年代末以來,遠東半導體供應商也開始提供CAN控制器。NEC在1994年推出了他們傳奇的CAN芯片72005,但為時過早-該組件在商業(yè)上并不成功。
自1991年以來,奔馳一直在其汽車中使用CAN。第一步,通過CAN連接負責發(fā)動機管理的電子控制單元。1995年,寶馬在其7系汽車中使用了帶有五個ECU(電子控制單元)的樹/星拓撲CAN網(wǎng)絡。第二步,跟隨人體電子設備所需的控制單元。實現(xiàn)了兩個物理上分離的CAN網(wǎng)絡,通常通過網(wǎng)關連接。其他汽車制造商也沿用了奔馳的方式,通常在乘用車中實現(xiàn)兩個CAN網(wǎng)絡。如今,他們都在自己的車輛中實現(xiàn)了多個CAN網(wǎng)絡。
在1990年代初期,美國機械工程公司Cincinnati Milacron的工程師與Allen-Bradley和Honeywell Microswitch共同成立了一家合資公司,以基于CAN的控制和通信項目。但是,不久之后,重要的項目成員換了工作,合資企業(yè)瓦解了。但是Allen-Bradley和Honeywell分別繼續(xù)工作。這導致了至少在較低的通信層中非常相似的兩個高層協(xié)議“ DeviceNet”和“智能分布式系統(tǒng)”(SDS)。1994年初,Allen-Bradley將DeviceNet規(guī)范移交給了“開放DeviceNet供應商協(xié)會”(ODVA),這促進了DeviceNet的普及。Honeywell未能在SDS上采取類似的方式,這使SDS看起來更像是Honeywell微動的內(nèi)部解決方案。DeviceNet是專為工廠自動化而開發(fā)的,因此,它本身就是Profibus-DP和Interbus等協(xié)議的直接對手。提供現(xiàn)成的即插即用功能,DeviceNet已成為美國這個特定細分市場中領先的總線系統(tǒng)。
在歐洲,幾家公司嘗試使用CAL。盡管CAL方法在學術上是正確的,并且可以在工業(yè)應用中使用它,但是每個用戶都需要設計一個新的配置文件,因為CAL是真正的應用程序層。CAL可以看作是獨立于應用程序的CAN解決方案必不可少的學術步驟,但它從未在該領域獲得廣泛認可。
自1993年以來,在Esprit項目ASPIC的范圍內(nèi),由博世領導的歐洲財團一直在開發(fā)CANopen的原型。它是用于生產(chǎn)單元內(nèi)部網(wǎng)絡的CAL配置文件。在學術方面,來自德國羅伊特林根應用科學大學的Gerhard Gruhler教授和來自英國紐卡斯爾大學的Mohammed Farsi博士參加了有史以來最成功的Esprit活動之一。項目完成后,CANopen規(guī)范移交給了CiA,以進行進一步的開發(fā)和維護。1995年,發(fā)布了經(jīng)過完全修訂的CANopen通信配置文件,并在短短五年內(nèi)成為歐洲最重要的標準化嵌入式網(wǎng)絡。
第一個CANopen網(wǎng)絡用于內(nèi)部機器通信,尤其是驅動器。CANopen提供了很高的靈活性和可配置性。高層協(xié)議已用于多個非常不同的應用領域(工業(yè)自動化,航海電子,軍用車輛等),同時其國際標準為EN 50325-4(2003)。CANopen尤其在歐洲使用。意大利的注塑機,德國的木鋸和機器,英國的卷煙機,法國的起重機,奧地利的搬運機以及瑞士的鐘表制造機只是工業(yè)自動化和機械制造中的幾個例子。在美國,推薦將CANopen用于叉車并將其用于信件分揀機中。
CANopen不僅定義了應用程序層和通信配置文件,而且還定義了可編程系統(tǒng)以及不同設備,接口和應用程序配置文件的框架。這是整個行業(yè)(例如印刷機,海事應用,醫(yī)療系統(tǒng))決定在1990年代后期使用CANopen的重要原因。
借助DeviceNet和CANopen,可以使用兩個標準化的(IEC 62026-3或EN 50325-4 / 5)應用層,以滿足不同的工業(yè)自動化市場的需求。DeviceNet針對工廠自動化進行了優(yōu)化,而CANopen特別適合于各種機器控制中的嵌入式網(wǎng)絡。這使得專有的應用程序層已過時。定義特定于應用程序的應用程序層的必要性已成為歷史(也許,對于某些專用的大容量嵌入式系統(tǒng)而言除外)。
嵌入式專欄
5
時間觸發(fā)的通訊
在2000年初,一個由數(shù)家公司組成的ISO特別工作組為CAN幀的時間觸發(fā)傳輸定義了一個協(xié)議。Bernd Mueller博士,Thomas Fuehrer博士和其他博世員工,以及半導體行業(yè)和學術研究專家共同定義了協(xié)議“ CAN上的時間觸發(fā)通信”(TTCAN,Time-triggered communication on CAN)。
這種CAN擴展可以實現(xiàn)時間等量的幀傳輸和通過CAN的閉環(huán)控制的實現(xiàn),而且還可以在x-by-wire的應用中使用CAN。由于CAN協(xié)議未更改,因此可以通過同一物理總線系統(tǒng)傳輸時間觸發(fā)幀和事件觸發(fā)幀。但是,汽車行業(yè)尚未采用TTCAN。而且,工業(yè)用戶很少使用時間觸發(fā)的協(xié)議擴展。他們改用CANopen中指定的同步傳輸功能,可以說是一種軟時間觸發(fā)方法。
嵌入式專欄
6
當局批準
在90年代后期,發(fā)明了幾種基于CAN的專有安全協(xié)議。幸存下來的是德國Pilz生產(chǎn)的Safetybus p。在1999年,CiA開始開發(fā)CANopen-Safety協(xié)議,該協(xié)議已獲得德國TüV的批準。經(jīng)過標準化機構的大量參與之后,此CANopen擴展(CiA 304)在EN 50325-5(2009)中進行了國際標準化。
DeviceNet使用CIP安全協(xié)議擴展。全球領先的船級社之一的德國勞埃德船級社(Germanischer Lloyd)已批準了適用于海事應用的CANopen框架(CiA 307)。除其他外,該框架規(guī)定了從默認的CANopen網(wǎng)絡到冗余總線系統(tǒng)的自動切換。如今,這些功能已在CiA 302系列其他CANopen應用層功能中得到了概括和指定。
嵌入式專欄
7
CAN FD開發(fā) 2011年初,通用汽車和博世開始著手開發(fā)一些有關提高吞吐量的CAN協(xié)議。當將越來越多的軟件包下載到電子控制單元(ECU)時,汽車行業(yè)尤其受苦。高性能通信系統(tǒng)必須縮短這項耗時的任務。通過引入第二個比特率來提高CAN傳輸速度的想法并不新鮮。自2000年初以來,已有幾位學者發(fā)表了研究方法。但是,沒有一個研究者能夠說服汽車制造商。博世與其他CAN專家合作,預先開發(fā)了CAN FD規(guī)范,該規(guī)范于2012年在德國哈姆巴赫城堡舉行的第13屆國際CAN會議上正式推出。在ISO的標準化過程中,發(fā)現(xiàn)了所提出的錯誤檢測機制中的一些學術缺陷。這需要對CAN FD協(xié)議進行審查,并引入其他防護措施(例如,填充位計數(shù)器)。這就是為什么存在非ISO CAN FD協(xié)議的原因,該協(xié)議與ISO 11898-1中標準化的ISO CAN FD協(xié)議不兼容。
戴姆勒公司的Mark Schreiner博士為設計CAN FD網(wǎng)絡提供了很多提示和知識。他的許多想法都包含在CAN FD節(jié)點的CiA 601系列以及系統(tǒng)設計建議和規(guī)范中。
嵌入式專欄
8
CAN的未來是光明的 隨著CAN FD協(xié)議的引入,CAN技術的壽命得以延長。汽車行業(yè)已經(jīng)開始為下一代車載網(wǎng)絡采用CAN FD協(xié)議??梢灶A期,所有未來的應用程序都將使用CAN FD協(xié)議。不管它們是否需要更高的帶寬都沒關系。您仍然可以將CAN FD與單個位定時設置一起使用。有效負載長度無論如何都可以在0到64字節(jié)之間配置。對于那些需要更多帶寬并需要混合拓撲的用戶,CiA已開發(fā)了所謂的SIC(信號改善電路)收發(fā)器規(guī)范(CiA 601-4)。最初的想法來自日本Tier-1供應商Denso。
CiA還開發(fā)了基于CAN FD下層的CANopen FD協(xié)議。特別是對于工業(yè)運動控制應用,非常適合更高的傳輸速率和更長的有效載荷(最大64字節(jié))。CiA還參與了使用SAE J1939系列中指定的現(xiàn)有參數(shù)組的商用車,基于CAN FD的應用層的開發(fā)。
嵌入式專欄
9
第三代CAN 2018年底,CiA開始開發(fā)第三代基于CAN的數(shù)據(jù)鏈路層協(xié)議CAN XL。 它是應大眾汽車的要求啟動的。 Carsten Schanze和Alexander Mueller提供了許多最初的想法。2020年由于疫情,取消了國際CAN會議的執(zhí)行,今年的國際CAN會議改為線上舉行,主題是CAN XL。CAN XL速度提升至10Mbps。
同時保持CAN協(xié)議的優(yōu)勢以及與CAN和CAN FD的兼容性。下面是CAN FD和CAN XL的混合網(wǎng)絡:
(1)CiA CAN XL規(guī)范于2018年12月開始,目標是在2019年底之前擁有OSI第2層規(guī)范(稱為CAN XL協(xié)議),第二步,將開始進行ISO標準化。
(2)經(jīng)典CAN是1Mbps,CAN FD最高2Mbps,CAN FD-SiC是5-8Mbps,CAN XL是10Mbps。
免責聲明: 本文素材來源網(wǎng)絡,版權歸原作者所有。如涉及作品版權問題,請與我聯(lián)系刪除。
------------ END ------------
免責聲明:本文內(nèi)容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!