汽車(chē)為什么選擇了CAN總線(xiàn)技術(shù)?
1. 汽車(chē)為什么選擇了CAN總線(xiàn)技術(shù)?
本文引用地址:http://dyxdggzs.com/article/201612/329646.htm現在總線(xiàn)技術(shù)有很多種。從成本上講,RS-232/485的成本都比CAN低;速度上講,工業(yè)以太網(wǎng)等也都不錯。為什么唯獨CAN在汽車(chē)電子中得到親睞?
從成本上來(lái)說(shuō),CAN比UART、RS-232/485高,但比以太網(wǎng)低;從實(shí)時(shí)性來(lái)說(shuō):CAN的實(shí)時(shí)性比UART 和以太網(wǎng)高,為了保證安全,車(chē)用通信協(xié)議都是按周期性主動(dòng)發(fā)送,不論是CAN還是LIN,對實(shí)時(shí)性要求高的消息其發(fā)送周期都小于10ms(每輛車(chē)都有好幾 條這樣的消息),發(fā)動(dòng)機、ABS和變速器都有幾條這樣的消息;從可靠性來(lái)說(shuō),CAN有一系列事故安全措施,這是UART和以太網(wǎng)都不具備的,多點(diǎn)冗余也是 UART(點(diǎn)對點(diǎn)傳輸)和工業(yè)以太網(wǎng)(數據傳輸距離短)難于實(shí)現的,所以CAN出現后,由于價(jià)格的原因,最初應用得最多的地方并不是汽車(chē),而是對成本不敏 感的工業(yè)控制和醫療設備,如:工業(yè)上的DEVICENET、SDS、CANOPEN,醫療上MRI等。至于工業(yè)以太網(wǎng)的產(chǎn)生,其背景與個(gè)人PC的普及是分 不開(kāi)的,現在工業(yè)控制中的PCBASED就是一個(gè)例子,但汽車(chē)控制是不能用一臺PC的,要達到汽車(chē)控制的要求,成本上也不容許。而LIN的傳輸過(guò)程只有 20Kbps,顯然不能作為獨立的汽車(chē)總線(xiàn)控制要求,一般它只配合CAN在汽車(chē)上做輔助之用。
其次總線(xiàn)是一個(gè)系統,總線(xiàn)上的速度僅僅是系統中的一個(gè)因素,ElexRay雖然只有20MBPS但它在一個(gè) 16BIT的MCU上都能跑起來(lái),100MHZ以太網(wǎng)雖快,但一個(gè)32BIT的MCU很難達到20MBPS.況且還要涉及到系統的安全性,類(lèi)似冗 余,BUS安全等。所以綜合考慮,汽車(chē)選擇了CAN總線(xiàn)技術(shù)。
2. 汽車(chē)CAN總線(xiàn)技術(shù)到底是怎么一回事?
Can-Bus總線(xiàn)技術(shù)是“控制器局域網(wǎng)總線(xiàn)技術(shù)(Controller Area Network-BUS)”的簡(jiǎn)稱(chēng),它具有極強的抗干擾和糾錯能力,最早被用于飛機、坦克等武器電子系統的通訊聯(lián)絡(luò )上。
通過(guò)遍布車(chē)身的傳感器,汽車(chē)的各種行駛數據會(huì )被發(fā)送到“總線(xiàn)”上,這些數據不會(huì )指定唯一的接收者,凡是需要這些數據 的接收端都可以從“總線(xiàn)”上讀取需要的信息。Can總線(xiàn)的傳輸數據非???,可以達到每秒傳輸32bytes有效數據,這樣可以有效保證數據的實(shí)效性和準確 性。傳統的轎車(chē)在機艙和車(chē)身內需要埋設大量線(xiàn)束以傳遞傳感器采集的信號,而Can-Bus總線(xiàn)技術(shù)的應用可以大量減少車(chē)體內線(xiàn)束的數量,線(xiàn)束的減少則降低 了故障發(fā)生的可能性。
Can-Bus技術(shù)在汽車(chē)的應用,可以減少了汽車(chē)車(chē)體內線(xiàn)束和控制器的接口數量,避免了過(guò)多線(xiàn)束存在的互相干涉、磨 損等隱患,降低了汽車(chē)電氣系統的故障發(fā)生率。各種傳感器的信息可以實(shí)現共享。另外,在Can-Bus技術(shù)的幫助下,汽車(chē)的防盜性、安全性都得到了較大幅度 提升。例如:在啟動(dòng)車(chē)輛時(shí),確認鑰匙合法性的信息會(huì )通過(guò)Can-Bus總線(xiàn)進(jìn)行傳遞,其校驗的信息比以往的防盜系統更為豐富。車(chē)鑰匙、發(fā)動(dòng)機控制器和防盜 控制器互相存儲對方信息,校驗碼中還摻雜了隨即碼,從而大幅提高防盜能力。校驗信息通過(guò)Can-Bus傳遞大幅提高了信息傳遞的可靠性,使防盜系統的工作 穩定可靠。就目前而言,Can-Bus總線(xiàn)技術(shù)一般使用在科技含量較高的中、高檔轎車(chē)上。
3. 采用汽車(chē)CAN總線(xiàn)技術(shù)有哪些優(yōu)點(diǎn)?
現代汽車(chē)中所使用的電子控制系統和通訊系統越來(lái)越多,如發(fā)動(dòng)機電控系統、 自動(dòng)變速器控制系統、防抱死制動(dòng)系統(ABS)、自動(dòng)巡航系統(ACC)和車(chē)載多媒體系統等;這些系統之間、系統和汽車(chē)的顯示儀表之間、系統和汽車(chē)故障診 斷系統之間均需要進(jìn)行數據交換,如此巨大的數據交換量,如仍然采用傳統數據交換的方法,即用導線(xiàn)進(jìn)行點(diǎn)對點(diǎn)的連接的傳輸方式將是難以想象的,據粗略估計, 如采用普通線(xiàn)索,一個(gè)中級轎車(chē)就需要線(xiàn)索插頭300個(gè)左右,插針總數將達到2000個(gè)左右,線(xiàn)索總長(cháng)超過(guò)1. 6Km,不但裝配復雜而且故障率會(huì )很高。因此,用串行數據傳輸系統取而代之就成為必然的選擇。
數據在串聯(lián)總線(xiàn)上可以一個(gè)接一個(gè)的傳送,所有參加CAN總線(xiàn)的分系統都可以通過(guò)其控制單元上的CAN總線(xiàn)接口進(jìn)行數 據的發(fā)送和接收,CAN總線(xiàn)是一個(gè)多路傳輸系統,當某一單元出現故障時(shí)不會(huì )影響其他單元的工作,CAN總線(xiàn)對不同數據的傳輸速率不一樣,對發(fā)動(dòng)機電控系統 和ABS等實(shí)時(shí)控制用數據實(shí)施高速傳輸,對車(chē)身調節系統(如空調)的數據實(shí)施低速傳輸,其他如多媒體系統和診斷系統則為中速傳輸,速率在兩者之間,這樣的 區分提高了總線(xiàn)的傳輸效率。
數據總線(xiàn)如何能實(shí)現多路傳輸的呢?原來(lái)數據總線(xiàn)有三部分組成:1)數據傳輸線(xiàn),2)地址傳輸線(xiàn),3)發(fā)送單元和接收 單元之間的傳送控制線(xiàn)。數據按CPU的指令以一定的模式傳輸到指定的地址,而傳輸模式則由軟件控制的。這樣,汽車(chē)總線(xiàn)與計算機中的“BUS”就很類(lèi)似了, 不難理解。
4. 汽車(chē)CAN總線(xiàn)的發(fā)展趨勢
傳統的CAN是基于事件觸發(fā)的,信息傳輸時(shí)間的不確定性和優(yōu)先級反轉是它固有的缺點(diǎn)。為了滿(mǎn)足汽車(chē)控制對實(shí)時(shí)性和傳 輸消息密度不斷增長(cháng)的需要,改善CAN總線(xiàn)的實(shí)時(shí)性能非常必要。于是,傳統CAN與時(shí)間觸發(fā)機制相結合產(chǎn)生了TTCAN(Time- Triggered CAN)。
TTCAN總線(xiàn)和傳統CAN總線(xiàn)系統的區別是:總線(xiàn)上不同的信息定義了不同的時(shí)間槽(Timer Slot)。在同一時(shí)間槽內,總線(xiàn)上只能有一條信息傳輸,這樣避免了總線(xiàn)仲裁,也保證了信息的實(shí)時(shí)性。TTCAN系統需要全局時(shí)間同步,但采用傳統CAN 控制器很難實(shí)現TTCAN,因此新推出的CAN控制器如Microchip的MCP2515就增加了與TTCAN相關(guān)的硬件資源,它們在軟件配合下就能實(shí) 現TTCAN。
評論