CAN總線是一種高性能、高可靠性的串行通訊協(xié)議總線,主要用于實(shí)時(shí)應(yīng)用的場合,如汽車中的各種不同元件之間的通信。CAN總線采用雙絞線來傳輸信號,具有高性能、高可靠性、實(shí)時(shí)性等優(yōu)點(diǎn)。同時(shí),CAN總線具有完整性的串行數(shù)據(jù)通訊、提供實(shí)時(shí)支持、傳輸速率高達(dá)1Mb/s、11位的尋址以及檢錯能力等特點(diǎn)。在汽車行業(yè)中,CAN總線已經(jīng)成為國際上應(yīng)用最廣泛的現(xiàn)場總線之一,廣泛應(yīng)用于汽車和其他自動化領(lǐng)域中。
CAN總線的工作原理基于廣播方式,通過標(biāo)識符來識別數(shù)據(jù)是否發(fā)送給自己的,并使用差分信號傳輸來保證可靠性和實(shí)時(shí)性。
CAN總線數(shù)據(jù)傳輸原理,從一個節(jié)點(diǎn)向其他節(jié)點(diǎn)發(fā)送數(shù)據(jù)。當(dāng)一個節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),該節(jié)點(diǎn)的CPU將將要發(fā)送的數(shù)據(jù)和標(biāo)識符發(fā)送給本節(jié)點(diǎn)的CAN芯片,并使其進(jìn)入準(zhǔn)備狀態(tài)。一旦該CAN芯片收到總線分配,就變?yōu)榘l(fā)送報(bào)文狀態(tài),該CAN芯片將要發(fā)送的數(shù)據(jù)組成規(guī)定的報(bào)文格式發(fā)出。此時(shí),網(wǎng)絡(luò)中的其他節(jié)點(diǎn)都處于接收狀態(tài),所有節(jié)點(diǎn)都要先對其進(jìn)行接收,通過檢測來判斷該報(bào)文是否是發(fā)給自己的。(CAN總線通信實(shí)現(xiàn)CAN報(bào)文帶ID標(biāo)識教程)
CAN總線使用差分信號傳輸,通過在CANH和CANL上傳輸差分信號來表示數(shù)字信號。差分信號傳輸方式具有抗干擾能力強(qiáng)和可靠性高的優(yōu)點(diǎn)(如何提高CAN總線抗干擾能力?)。在同一系統(tǒng)中標(biāo)識符是唯一的,不可能有兩個站發(fā)送具有相同標(biāo)識符的報(bào)文。當(dāng)幾個站同時(shí)競爭總線讀取時(shí),這種配置十分重要。當(dāng)一個站要向其他站發(fā)送數(shù)據(jù)時(shí),該站的CPU將要發(fā)送的數(shù)據(jù)和自己的標(biāo)識符傳送給本站的CAN芯片,并處于準(zhǔn)備狀態(tài);當(dāng)它收到總線分配時(shí),轉(zhuǎn)為發(fā)送報(bào)文狀態(tài)。CAN芯片將數(shù)據(jù)根據(jù)協(xié)議組織成一定的報(bào)文格式發(fā)出,這時(shí)網(wǎng)上的其他站處于接收狀態(tài)。一張圖看懂CAN總線的原理:
根據(jù)圖1中簡單來說CAN總線就如兩根黃線,通信的原理就好比開一個電話會議,大家都同時(shí)撥進(jìn)來,然后有各種不同的狀態(tài),比如:一個人說話,其他人聽;或者多個人同時(shí)想發(fā)言,但也會讓其中一個人先說,其他人聽;還有一個人要求另一個人來說;還有些掉線了,卡頓了等等。
為了確保每次電話會議針對上述情況正確有效地進(jìn)行,我們需要一些每個人都應(yīng)該遵守的規(guī)則或協(xié)議。CAN總線通信與這種電話會議形式既有相似之處,也有不同之處。那究竟什么是CAN總線通信?
CAN總線是一種用于不同控制單元之間數(shù)據(jù)傳輸?shù)膶?dǎo)線。CAN總線協(xié)議是ISO國際標(biāo)準(zhǔn)化的串行通信協(xié)議,由兩個系列組成:ISO-11898和ISO-11519。其定義有:
·ISO-11898定義了通信速率為125 kbps ~1Mbps 的高速CAN通信標(biāo)準(zhǔn),屬于閉環(huán)總線,傳輸速率可達(dá)1Mbps,總線長度 ≤ 40米,如圖2。
·ISO11519定義了通信速率為10~125 kbps 的低速CAN通信標(biāo)準(zhǔn),屬于開環(huán)總線,傳輸速率為40kbps時(shí),總線長度可達(dá)1000米,如圖2。
圖2
CAN總線會有終端電阻,一般來說都是120歐姆,實(shí)際上在設(shè)計(jì)的時(shí)候,也是兩個60歐姆的電阻串起來的,而總線上一般有兩個120歐姆的節(jié)點(diǎn)。CAN總線終端電阻的作用有三個:
1、提高干擾防護(hù)能力,快速消除高頻低能量信號;
2、確??偩€快速進(jìn)入隱藏狀態(tài),這樣寄生電容器的能量可以更快地耗散;
3、通過將它們放置在總線兩端以減少反射能量來提高信號質(zhì)量。
圖3
在學(xué)習(xí)CAN總線時(shí),經(jīng)常會看到CAN總線的電平分為顯性電平與隱性電平,那么什么是顯性的和隱性的呢?顯式和隱式邏輯0與邏輯1之間的對應(yīng)關(guān)系是什么?CAN通信邏輯0和1,顯式和隱式。
電信號的傳輸是通過區(qū)分高電壓和低電壓來進(jìn)行的,就像CAN通信一樣。CAN總線的兩條信號線是CAN高(CAN_H)和CAN低(CAN_L)。關(guān)于CAN的邏輯0和邏輯1以及CAN總線的顯式和隱式方面,編制了以下圖表,以使每個人都能清楚地理解。
如下圖4 所示:
圖4
注 1:在實(shí)際開發(fā)中,兩條線路的電壓都以默認(rèn)值波動,這也是使用差動傳輸減少誤差和噪聲干擾的優(yōu)點(diǎn);
注 2:CAN總線采用“線路和”規(guī)則進(jìn)行總線套利,即如果同時(shí)發(fā)送多個CAN信號,有些發(fā)送1,有些發(fā)送0,只要有0,則當(dāng)前總線為0(1&0=0)。因此,總線上的顯式平面由邏輯“0”表示,而隱式平面則由邏輯“1”表示;
雖然差分信號有較好的抗干擾能力,但是長距離信號傳輸時(shí),我們通常會采用雙絞線進(jìn)行數(shù)據(jù)傳輸,以此來從物理上減弱噪聲對信號傳輸過程中的耦合。
圖5 消除電容耦合
圖6 消除電感耦合
圖7 消除對外界的干擾
上述的電位差(差分電平)與邏輯電平是通過CAN收發(fā)器實(shí)現(xiàn)的。在傳輸過程中,CAN控制器將CPU傳輸?shù)男盘栟D(zhuǎn)換為邏輯電平。CAN收發(fā)器接收到邏輯電平后,將其轉(zhuǎn)換為差分電平并輸出到CAN總線。
圖9 CAN信號發(fā)送
在接收過程中,CAN收發(fā)器發(fā)送CAN_H和CAN_L線路上傳輸?shù)牟铍娖奖晦D(zhuǎn)換為邏輯電平并輸出到CAN控制器,然后CAN控制器將邏輯電平轉(zhuǎn)換為相應(yīng)的信號并發(fā)送到CPU。
圖10 CAN信號接收
簡單地說,這意味著變送器通過CAN收發(fā)器改變總線電平,并將其信息傳輸?shù)?/span>CAN總線。接收器通過監(jiān)測總線電平將總線上的信息讀取到自己的CAN收發(fā)器中。
如上所示,CAN總線有兩種架構(gòu),兩種形式的CAN信號,以及發(fā)送和接收CAN信號的兩個過程。
CAN總線的拓?fù)浣Y(jié)構(gòu)包括CAN總線、CAN收發(fā)器和設(shè)備節(jié)點(diǎn)。其中,用來傳輸CAN總線信號的媒介叫做CAN總線,由CAN_H和CAN_L兩根線組成;連接CAN總線和設(shè)備節(jié)點(diǎn),用來轉(zhuǎn)換邏輯電平和物理信號的單元電路叫做CAN收發(fā)器;通過CAN收發(fā)器連接在總線上的設(shè)備叫做設(shè)備節(jié)點(diǎn)。此外,不同的CAN標(biāo)準(zhǔn)僅物理層不同,傳輸介質(zhì)和傳輸速率也有所不同。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動化的發(fā)展,提升資源利用率,更多產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)和企業(yè)公眾號(微信號:cdebyte)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!
7 X 24 銷售服務(wù)熱線
4000-330-990深圳辦事處柯經(jīng)理:18218726658 杭州辦事處戴經(jīng)理:17512568697
常州辦事處崔經(jīng)理:15906110783 南京辦事處葛經(jīng)理:17626012283
業(yè)務(wù)郵箱:support@cdebyte.com
全國銷售投訴電話:19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號B5棟(前臺座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號-3