|
公司基本資料信息
|
CAN屬于現(xiàn)場總線的范疇,它是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡。較之許多RS-485基于R線構(gòu)建的分布式控制系統(tǒng)而言,基于CAN總線的分布式控制系統(tǒng)在以下方面具有明顯的優(yōu)越性:
網(wǎng)絡各節(jié)點之間的數(shù)據(jù)通信實時性強
首先,CAN控制器工作于多種方式,網(wǎng)絡中的各節(jié)點都可根據(jù)總線訪問優(yōu)先權(quán)(取決于報文標識符)采用無損結(jié)構(gòu)的逐位仲裁的方式競爭向總線發(fā)送數(shù)據(jù),且CAN協(xié)議廢除了站地址編碼,而代之以對通信數(shù)據(jù)進行編碼,這可使不同的節(jié)點同時接收到相同的數(shù)據(jù),這些特點使得CAN總線構(gòu)成的網(wǎng)絡各節(jié)點之間的數(shù)據(jù)通信實時性強,并且容易構(gòu)成冗余結(jié)構(gòu),提高系統(tǒng)的可靠性和系統(tǒng)的靈活性。而利用RS-485只能構(gòu)成主從式結(jié)構(gòu)系統(tǒng),通信方式也只能以主站輪詢的方式進行,系統(tǒng)的實時性、可靠性較差;
CAN總線設備有很多種,比如USBCAN分析儀,比如說CAN數(shù)據(jù)轉(zhuǎn)換器,等等等等。以上這些CAN設備在與CAN線進行連接的時候,往往會有如下方法:
1、如果CAN設備的CAN接頭樣式是OBD類型的,那我們直接將OBD接頭插入OBD接口里就行。如果設備A的CAN接頭是OBD類型,B設備不是,那我們就使用一個OBD轉(zhuǎn)接頭連在CAN接頭是OBD的設備上,這樣就可以進行后續(xù)的連線了。
2、如果CAN設備的CAN接頭樣式是DB9的,基本道理同OBD。
3、如果CAN設備的CAN接頭樣式是鳳凰端子的,那使用一把螺絲刀松緊端子接頭的擋板然后連線就可以了。
CAN總線報文的CRC校驗場后面會有一個ACK應答場,發(fā)送報文的節(jié)點發(fā)出的ACK(1Bit)為“1”,正確應答的節(jié)點(報文數(shù)據(jù)校驗通過正確)會將總線上的這個ACK位電平拉成“0”,表示正確應答。
若A節(jié)點廣播報文后,發(fā)現(xiàn)該報文的ACK始終為“1”,則其收發(fā)器將從緩存中自動重發(fā)該幀,直到有節(jié)點正確接受ACK為“0”或者A節(jié)點離線
CAN總線用戶接口簡單,編程方便。網(wǎng)絡拓撲結(jié)構(gòu)采用總線式結(jié)構(gòu)。這種網(wǎng)絡結(jié)構(gòu)簡單、成本低,并且采用無源抽頭連接,系統(tǒng)可靠性高。通過CAN總線連接各個網(wǎng)絡節(jié)點,形成多主機控制器局域網(wǎng)(CAN)。信息的傳輸采用CAN通信協(xié)議,通過CAN控制器來完成。各網(wǎng)絡節(jié)點一般為帶有微控制器的智能節(jié)點完成現(xiàn)場的數(shù)據(jù)采集和基于CAN協(xié)議的數(shù)據(jù)傳輸,節(jié)點可以使用帶有在片CAN控制器的微控制器,或選用一般的微控制器加上獨立的CAN控制器來完成節(jié)點功能。