《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > CAN總線(xiàn)原理介紹

CAN總線(xiàn)原理介紹

2015-05-08

  CAN是Controller Area Network的縮寫(xiě),,即“局域網(wǎng)控制器”的意思,可以歸屬于工業(yè)現(xiàn)場(chǎng)總線(xiàn)的范疇,通常稱(chēng)為CAN BUS,,即CAN總線(xiàn),,是目前國(guó)際上應(yīng)用最為廣泛的開(kāi)放式現(xiàn)場(chǎng)總線(xiàn)之一,。
  CAN總線(xiàn)最早用在汽車(chē)電子領(lǐng)域,,世界上一些著名的汽車(chē)制造廠(chǎng)商都采用CAN總線(xiàn)來(lái)實(shí)現(xiàn)汽車(chē)內(nèi)部控制系統(tǒng)與各檢測(cè)和執(zhí)行機(jī)構(gòu)間的數(shù)據(jù)通信。由于CAN總線(xiàn)在數(shù)據(jù)通信方面表現(xiàn)出來(lái)的高可靠性,、實(shí)時(shí)性和靈活性,,其應(yīng)用領(lǐng)域已經(jīng)成汽車(chē)電子領(lǐng)域擴(kuò)展到自動(dòng)控制、航空航天,、航海,、工業(yè)控制、醫(yī)療器械,、安全防護(hù)等領(lǐng)域,。
  CAN總線(xiàn)規(guī)范從CAN1.2規(guī)范發(fā)展為兼容CAN1.2規(guī)范的CAN2.0規(guī)范(CAN2.0A為標(biāo)準(zhǔn)格式,CAN2.0B為擴(kuò)展格式),,目前應(yīng)用的CAN器件大多符合CAN2.0規(guī)范。
  ?CAN總線(xiàn)發(fā)展史
  1986年,,Bosch在SAE(汽車(chē)工程人員協(xié)會(huì))大會(huì)上提出CAN總線(xiàn)概念,;
  1987年,,Intel推出第一片CAN控制芯片82526,隨后Philips半導(dǎo)體也推出82C200,;
  1993年,,CAN的國(guó)際標(biāo)準(zhǔn)ISO11898/ISO11519公布。ISO11898為高速應(yīng)用,,ISO11519為低速應(yīng)用,;
  1994年開(kāi)始有了國(guó)際CAN學(xué)術(shù)年會(huì)ICC。同年,,美國(guó)汽車(chē)工程師協(xié)會(huì)以CAN為基礎(chǔ)制定了SAEJ1939標(biāo)準(zhǔn),,用于卡車(chē)和巴士控制和通信網(wǎng)絡(luò)。
  ?CAN總線(xiàn)特點(diǎn)
  1).可以多主方式工作,,網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)均可以在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,,而不分主從,通信方式靈活,。
  2).網(wǎng)絡(luò)上的節(jié)點(diǎn)可分成不同的優(yōu)先級(jí),,可以滿(mǎn)足不同的實(shí)時(shí)要求。
  3).采用非破壞性位仲裁總線(xiàn)結(jié)構(gòu)機(jī)制,,當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)向網(wǎng)絡(luò)上傳送信息時(shí),,優(yōu)先級(jí)低的節(jié)點(diǎn)主動(dòng)停止數(shù)據(jù)發(fā)送,而優(yōu)先級(jí)高的節(jié)點(diǎn)可不受影響地繼續(xù)傳送數(shù)據(jù),。
  4).可以點(diǎn)對(duì)點(diǎn),,一點(diǎn)對(duì)多點(diǎn)及全局廣播幾種傳送方式接收數(shù)據(jù)。
  5).直接通信距離最遠(yuǎn)可達(dá)10km(速率4Kbps以下),。
  6).通信速率最高可達(dá)1MB/s(此時(shí)距離最長(zhǎng)40m),。
  使用非屏蔽雙絞線(xiàn)傳輸時(shí),傳輸速率與傳輸距離的關(guān)系如下圖所示,。

QQ截圖20150508141317.png

  7).節(jié)點(diǎn)數(shù)最多可達(dá)110個(gè),。
  8).采用短幀結(jié)構(gòu),每一幀的有效字節(jié)數(shù)為8個(gè),。
  9).每幀信息都有CRC校驗(yàn)及其他檢錯(cuò)措施,,數(shù)據(jù)錯(cuò)誤率極低。
  10).通信介質(zhì)可采用雙絞線(xiàn),,同軸電纜和光纖,,一般采用廉價(jià)的雙絞線(xiàn)即可。
  11).節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下,,具有自動(dòng)關(guān)閉總線(xiàn)的功能,,切斷它與總線(xiàn)的聯(lián)系,以使總線(xiàn)上的其他操作不受影響,。
  ?CAN總線(xiàn)的仲裁
  CAN總線(xiàn)采用CSMA/CD(Carrier Sense Multiple Access with collision Detect,,載波監(jiān)測(cè)多路訪(fǎng)問(wèn)/沖突檢測(cè))技術(shù),。“載波監(jiān)測(cè)”的意思是指在總線(xiàn)上的每個(gè)節(jié)點(diǎn)在發(fā)送信息報(bào)文前都必須監(jiān)測(cè)到總線(xiàn)上有一段時(shí)間的空閑狀態(tài),?!岸嗦吩L(fǎng)問(wèn)”的意思是一旦此空閑狀態(tài)被監(jiān)測(cè)到,那么每個(gè)節(jié)點(diǎn)都有均等的機(jī)會(huì)來(lái)發(fā)送報(bào)文,?!皼_突檢測(cè)”是指在兩個(gè)節(jié)點(diǎn)同時(shí)發(fā)送信息時(shí),節(jié)點(diǎn)本身首先會(huì)檢測(cè)到出現(xiàn)沖突,,然后采取相應(yīng)的措施來(lái)解決這一沖突情況,。此時(shí)優(yōu)先級(jí)高的報(bào)文先發(fā)送,低優(yōu)先級(jí)的報(bào)文發(fā)送會(huì)暫停,。這就是CAN總線(xiàn)的仲裁,,仲裁過(guò)程是不會(huì)對(duì)報(bào)文產(chǎn)生破壞的。
  CAN總線(xiàn)上每個(gè)設(shè)備都有一個(gè)11位的ID信息,,各設(shè)備的優(yōu)先級(jí)是根據(jù)其ID來(lái)確定的,,ID的序號(hào)越小,其優(yōu)先級(jí)越高,。下圖為CAN總線(xiàn)上傳輸?shù)臄?shù)據(jù)幀格式,,從圖上可知,傳輸開(kāi)始標(biāo)識(shí)符SOF后面緊跟的就是11位標(biāo)識(shí)ID,,CAN總線(xiàn)就是據(jù)此進(jìn)行仲裁工作的,。


QQ截圖20150508141337.png

  ?CAN總線(xiàn)的拓?fù)浣Y(jié)構(gòu)
  CAN總線(xiàn)的拓?fù)浣Y(jié)構(gòu)如下,CAN hub是用于多分支擴(kuò)展用的,,可以省去,。CAN總線(xiàn)和分支的末端都需要垮接一個(gè)120歐姆的電阻來(lái)終結(jié),防止信號(hào)反射,。

QQ截圖20150508141345.png

  ?CAN總線(xiàn)的邏輯電平
  CAN總線(xiàn)具有兩種邏輯狀態(tài),,隱性和顯性。隱性狀態(tài)下,,VCAN_H和VCAN_L都被固定為平均電壓電平,,兩者之間的電壓差為0;顯性狀態(tài)下,,VCAN_H和VCAN_L的電平分別為3.5V和1.5V,,兩者差分電壓大于2V,如下圖所示,。

QQ截圖20150508141351.png

  ?常用CAN總線(xiàn)芯片
  CAN芯片有CAN控制器和CAN收發(fā)器,,在實(shí)際電路中,這兩種芯片需要配合起來(lái)應(yīng)用。
  常用CAN控制器芯片有:P87C591,,XAC37,,SJA1000,;
  常用CAN收發(fā)器芯片有:PCA82C250,,PCA82C251,PCA82C252,,TJA1040,,TJA1041,TJA1050,,TJA1053,,TJA1054。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話(huà):010-82306118,;郵箱:[email protected],。