新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線系統在現代汽車中的應用

        CAN總線系統在現代汽車中的應用

        作者: 時間:2013-01-06 來源:網絡 收藏
          一、概述
          往往使用大量來控制其正常行駛。當執行一個較復雜的控制時,需要在設備之間進行大量的數據交換。當控制系統變得復雜時,交換數據的信號線連接將變得更復雜,同時費用將提高。

          對于一般控制,設備間連鎖可以通過串行網絡完成。因此,BOSCH公司開發了CAN總線(C ontroller Area Network),并已取得國際標準化組織認證(ISO11898),其總線結構可參照I SO/OSI參考模型。同時,國際上一些大的半導體廠商也積極開發出支持CAN總線的專用芯片。通過CAN總線,傳感器、控制器和執行器由串行數據線連接起來

        。它不僅僅是將電纜按樹形結構連接起來,其通信協議相當于ISO/OSI參考模型中的數據鏈路層,網絡可根據協議探測和糾正數據傳輸過程中因電磁干擾而產生的數據錯誤。CAN網絡的配制比較容易,允許任何站之間直接進行通信,而無需將所有數據全部匯總到主計算機后再行處理。

          二、CAN在國外的發展


          對機動車輛總線和對現場總線的需求有許多相似之處,即較低的成本、較高的實時處理能力和在惡劣的強電磁干擾環境下可靠的工作。奔馳S型轎車上采用的就是;美國商用車輛制造商們也將注意力轉向CAN總線;美國一些企業已將CAN作為內部總線應用在生產線和機床上。同時,由于CAN總線可以提供較高的安全性,因此在醫療領域、紡織機械和電梯控制中也得到廣泛應用。

          三、CAN的工作原理


          當CAN總線上的一個節點(站)發送數據時,它以報文形式廣播給網絡中所有節點。對每個節點來說,無論數據是否是發給自己的,都對其進行接收。每組報文開頭的11位字符為標識符,定義了報文的優先級,這種報文格式稱為面向內容的編址方案。在同一系統中標識符是唯一的,不可能有兩個站發送具有相同標識符的報文。當幾個站同時競爭總線讀取時,這種配置十分重要。

          CAN總線的報文發送和接收參見圖1。當一個站要向其它站發送數據時,該站的CPU將要發送的數據和自己的標識符傳送給本站的CAN芯片,并處于準備狀態;當它收到總線分配時, 轉為發送報文狀態。CAN芯片將數據根據協議組織成一定的報文格式發出,這時網上的其它站處于接收狀態。每個處于接收狀態的站對接收到的報文進行檢測,判斷這些報文是否是發給自己的,以確定是否接收它。

          由于CAN總線是一種面向內容的編址方案,因此很容易建立高水準的控制系統并靈活地進行配置。我們可以很容易地在CAN總線中加進一些新站而無需在硬件或軟件上進行修改。當所提供的新站是純數據接收設備時,數據傳輸協議不要求獨立的部分有物理目的地址。它允許分布過程同步化,即總線上控制器需要測量數據時,可由網上獲得,而無須每個控制器都有自己獨立的傳感器。

          四、位仲裁


          要對數據進行實時處理,就必須將數據快速傳送,這就要求數據的物理傳輸通路有較高的速度。在幾個站同時需要發送數據時,要求快速地進行總線分配。實時處理通過網絡交換的緊急數據有較大的不同。一個快速變化的物理量,如汽車引擎負載,將比類似汽車引擎溫度這樣相對變化較慢的物理量更頻繁地傳送數據并要求更短的延時。

          CAN總線以報文為單位進行數據傳送,報文的優先級結合在11位標識符中,具有最低二進制數的標識符有最高的優先級。這種優先級一旦在系統設計時被確立后就不能再被更改。總線讀取中的沖突可通過位仲裁解決。如圖2所示,當幾個站同時發送報文時,站1的報文標識符為011111;站2的報文標識符為0100110;站3的報文標識符為0100111。所有標識符都有相同的兩位01,直到第3位進行比較時,站1的報文被丟掉,因為它的第3位為高,而其它兩個站的報文第3位為低。站2和站3報文的4、5、6位相同,直到第7位時,站3的報文才被丟失。注意,總線中的信號持續跟蹤最后獲得總線讀取權的站的報文。在此例中,站2的報文被跟蹤。這種非破壞性位仲裁方法的優點在于,在網絡最終確定哪一個站的報文被傳送以前,報文的起始部分已經在網絡上傳送了。所有未獲得總線讀取權的站都成為具有最高優先權報文的接收站,并且不會在總線再次空閑前發送報文。

          CAN具有較高的效率是因為總線僅僅被那些請求總線懸而未決的站利用,這些請求是根據報文在整個系統中的重要性按順序處理的。這種方法在網絡負載較重時有很多優點,因為總線讀取的優先級已被按順序放在每個報文中了,這可以保證在實時系統中較低的個體隱伏時間。

          對于主站的可靠性,由于CAN協議執行非集中化總線控制,所有主要通信,包括總線讀取 (許可)控制,在系統中分幾次完成。這是實現有較高可靠性的通信系統的唯一方法。
          五、CAN與其它通信方案的比較


          在實踐中,有兩種重要的總線分配方法:按時間表分配和按需要分配。在第一種方法中 ,不管每個節點是否申請總線,都對每個節點按最大期間分配。由此,總線可被分配給每個站并且是唯一的站,而不論其是立即進行總線存取或在一特定時間進行總線存取。這將保證在總線存取時有明確的總線分配。在第二種方法中,總線按傳送數據的基本要求分配給一個站 ,總線系統按站希望的傳送分配(如:Ethernet CSMA/CD)。因此,當多個站同時請求總線存取時,總線將終止所有站的請求,這時將不會有任何一個站獲得總線分配。為了分配總線,多于一個總線存取是必要的。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 利津县| 旬邑县| 宜州市| 毕节市| 平邑县| 商南县| 芜湖县| 正蓝旗| 定南县| 南江县| 临泽县| 孙吴县| 五大连池市| 顺平县| 辛集市| 永和县| 桦川县| 奇台县| 射洪县| 武冈市| 安阳县| 德惠市| 泾源县| 周口市| 海兴县| 永昌县| 石狮市| 崇文区| 江津市| 清水河县| 军事| 沁阳市| 天峻县| 鄱阳县| 保山市| 灵丘县| 新巴尔虎右旗| 会同县| 金昌市| 延庆县| 乡宁县|