《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > CANopen協(xié)議之CAN總線簡介

CANopen協(xié)議之CAN總線簡介

2009-07-21
作者:致遠(yuǎn)電子

1 引言
  隨著汽車工業(yè)的發(fā)展,20世紀(jì)80年代中期,率先由Bosch公司研發(fā)出新一代的汽車總線即控制器局域網(wǎng)CAN(Controller Area Network)總線,CAN總線具有布線簡單、典型的總線型結(jié)構(gòu)、可最大限度地節(jié)約布線與維護(hù)成本、穩(wěn)定可靠、實(shí)時(shí)、抗干擾能力強(qiáng)、傳輸距離遠(yuǎn)等特點(diǎn),這些都決定了CAN總線必定是一種成功的總線。CAN總線一經(jīng)推出,不僅在汽車行業(yè)得到廣泛的推廣與應(yīng)用,在諸如航天、電力、石化、冶金、紡織、造紙等領(lǐng)域也得到廣泛應(yīng)用。在自動化儀表、工業(yè)生產(chǎn)現(xiàn)場和數(shù)控機(jī)床等系統(tǒng)中也越來越多地使用了CAN總線,CAN總線的未來發(fā)展依然充滿活力,有著巨大的發(fā)展空間。
  由于CAN總線本身只定義ISO/OSI模型中的第一層(物理層)和第二層(數(shù)據(jù)鏈路層),通常情況下CAN總線網(wǎng)絡(luò)都是獨(dú)立的網(wǎng)絡(luò),所以沒有網(wǎng)絡(luò)層。在實(shí)際使用中,用戶還需要自己定義應(yīng)用層的協(xié)議,因此在CAN總線的發(fā)展過程中出現(xiàn)了各種版本的CAN應(yīng)用層協(xié)議,現(xiàn)階段最流行的CAN應(yīng)用層協(xié)議主要有CANopen、DeviceNet和J1939等協(xié)議。
  本系列文章主要介紹CAN總線、基于CAN總線的應(yīng)用層協(xié)議——CANopen,以及CANopen設(shè)備的應(yīng)用及組網(wǎng)方式。本文主要介紹CAN總線相關(guān)的概念及網(wǎng)絡(luò)結(jié)構(gòu)。
2 CAN總線特點(diǎn)
  CAN總線采用差分信號傳輸,通常情況下只需要兩根信號線(CAN-H和CAN-L)就可以進(jìn)行正常的通信。在干擾比較強(qiáng)的場合,還需要用到屏蔽地即CAN-G(主要功能是屏蔽干擾信號),CAN協(xié)議推薦用戶使用屏蔽雙絞線作為CAN總線的傳輸線。在隱性狀態(tài)下,CAN-H與CAN-L的輸入差分電壓為0 V(最大不超過0.5 V),共模輸入電壓為2.5 V。在顯性狀態(tài)下,CAN-H與CAN-L的輸入差分電壓為2 V(最小不小于0.9 V),如圖 1所示。

?


  其物理傳輸層詳細(xì)和高效的定義,使得CAN總線具有其他總線無法達(dá)到的優(yōu)勢,注定其在工業(yè)現(xiàn)場總線中占有不可動搖的地位,CAN總線通信主要具有如下優(yōu)勢和特點(diǎn)。
  (1)CAN總線上任意節(jié)點(diǎn)均可在任意時(shí)刻主動地向其他節(jié)點(diǎn)發(fā)起通信,節(jié)點(diǎn)沒有主從之分,但在同一時(shí)刻優(yōu)先級高的節(jié)點(diǎn)能獲得總線的使用權(quán),在高優(yōu)先級的節(jié)點(diǎn)釋放總線后,任意節(jié)點(diǎn)都可使用總線。
  (2)CAN總線傳輸波特率為5 kb/s~1 Mb/s,在5 kb/s的通信波特率下最遠(yuǎn)傳輸距離可以達(dá)到10 km,即使在1 Mb/s的波特率下也能傳輸40 m的距離。在1 Mb/s波特率下節(jié)點(diǎn)發(fā)送一幀數(shù)據(jù)最多需要134 μs。
  (3)CAN總線采用載波監(jiān)聽多路訪問、逐位仲裁的非破壞性總線仲裁技術(shù)。在節(jié)點(diǎn)需要發(fā)送信息時(shí),節(jié)點(diǎn)先監(jiān)聽總線是否空閑,只有節(jié)點(diǎn)監(jiān)聽到總線空閑時(shí)才能夠發(fā)送數(shù)據(jù),即載波監(jiān)聽多路訪問方式。在總線出現(xiàn)兩個(gè)以上的節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù)時(shí),CAN協(xié)議規(guī)定,按位進(jìn)行仲裁,按照顯性位優(yōu)先級大于隱性位優(yōu)先級的規(guī)則進(jìn)行仲裁,最后高優(yōu)先級的節(jié)點(diǎn)數(shù)據(jù)毫無破壞地被發(fā)送,其他節(jié)點(diǎn)停止發(fā)送數(shù)據(jù)(即逐位仲裁無破壞的傳輸技術(shù))。這樣能大大地提高總線的使用效率及實(shí)時(shí)性。
  (4)CAN總線所掛接的節(jié)點(diǎn)數(shù)量主要取決于CAN總線收發(fā)器或驅(qū)動器,目前的驅(qū)動器一般都可以使同一網(wǎng)絡(luò)容量達(dá)到110個(gè)節(jié)點(diǎn)。CAN報(bào)文分為兩個(gè)標(biāo)準(zhǔn)即CAN2.0A標(biāo)準(zhǔn)幀和CAN2.0B擴(kuò)展幀,兩個(gè)標(biāo)準(zhǔn)最大的區(qū)別在于CAN2.0A只有11位標(biāo)識符,CAN2.0B具有29位標(biāo)識符。
  (5)CAN總線定義使用了硬件報(bào)文濾波,可實(shí)現(xiàn)點(diǎn)對點(diǎn)及點(diǎn)對多點(diǎn)的通信方式,不需要軟件來控制。數(shù)據(jù)采用短幀發(fā)送方式,每幀數(shù)據(jù)不超過8 B,抗干擾能力強(qiáng),每幀接收的數(shù)據(jù)都進(jìn)行CRC校驗(yàn),使得數(shù)據(jù)出錯(cuò)機(jī)率極大限度地降低。CAN節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動關(guān)閉功能,避免了對總線上其他節(jié)點(diǎn)的干擾。
  (6)CAN總線通信介質(zhì)可采用雙絞線、同軸電纜或光纖,選擇極為靈活,可大大節(jié)約組網(wǎng)成本。
3 CAN控制器介紹
  隨著CAN總線的不斷發(fā)展壯大,符合CAN2.0A和CAN2.0B協(xié)議的獨(dú)立芯片越來越多。如NXP公司推出的SJA1000及SJA1000F,可以直接與普通單片機(jī)組合,使該單片機(jī)具有CAN通信的能力。隨著CAN需求的日益增大,芯片廠商也把CAN控制器直接集成到芯片內(nèi)部,例如NXP公司的LPC2119、LPC2294、LPC2378等。以下主要以LPC2378的集成CAN控制器為例,對CAN控制器作一個(gè)介紹。
  LPC2378 CAN控制器結(jié)構(gòu)如圖2所示。該控制器是一個(gè)帶有發(fā)送和接收緩沖器的串行接口,但它并不含有驗(yàn)收過濾器。驗(yàn)收過濾器是一個(gè)獨(dú)立的模塊,能夠?qū)λ蠧AN通道進(jìn)行CAN標(biāo)識符過濾。


  LPC2378 CAN控制器工作流程主要分為發(fā)送過程和接收過程。
  (1)發(fā)送過程
  CAN控制器完全受處理器控制,CPU通過內(nèi)部總線向CAN控制器的發(fā)送寄存器里填寫需要發(fā)的數(shù)據(jù),然后啟動CAN控制器的發(fā)送使能,發(fā)送的數(shù)據(jù)分別經(jīng)過位流管理器(變成在總線上發(fā)送的二進(jìn)制碼)、錯(cuò)誤管理邏輯(負(fù)責(zé)檢測總線狀態(tài)及發(fā)送是否出現(xiàn)錯(cuò)誤)及位時(shí)序邏輯(管理數(shù)據(jù)在總線上的發(fā)送時(shí)序)、CAN收發(fā)器(負(fù)責(zé)把位流數(shù)據(jù)轉(zhuǎn)換成CAN總線能夠傳輸?shù)牟罘蛛娖?,這樣就完成了一幀CAN數(shù)據(jù)的發(fā)送,如圖3所示。


  (2)接收過程
  CAN數(shù)據(jù)的接收與CAN數(shù)據(jù)的發(fā)送是一個(gè)相反的過程,如圖4所示。當(dāng)CAN收發(fā)器檢測到CAN總線上有數(shù)據(jù)時(shí),CAN收發(fā)器把CAN總線上的差分信號轉(zhuǎn)換成位流數(shù)據(jù),經(jīng)過錯(cuò)誤管理器及位時(shí)序邏輯單元對位數(shù)據(jù)流和時(shí)序進(jìn)行檢查,再經(jīng)過位流管理器把位流數(shù)據(jù)轉(zhuǎn)換成字節(jié)數(shù)據(jù)并存放到接收緩沖器中,當(dāng)一幀數(shù)據(jù)接收完了之后則由接收緩沖器產(chǎn)生數(shù)據(jù)接收中斷(通知CPU已經(jīng)接收到一幀新數(shù)據(jù)),并將產(chǎn)生的各種狀態(tài)通過改變狀態(tài)寄存器的值來表示。


  以上主要介紹LPC2378 CAN工作流程,CAN2.0A/B標(biāo)準(zhǔn)協(xié)議在CAN控制器中都得以實(shí)現(xiàn),用戶只需要操作相關(guān)的CAN寄存器就可以控制CAN控制器動作(控制器的具體操作請參考LPC2378數(shù)據(jù)手冊),因此可以大大提高CAN節(jié)點(diǎn)的開發(fā)時(shí)間,提高工作效率。
4 CAN總線網(wǎng)絡(luò)結(jié)構(gòu)
  作為一個(gè)總線型網(wǎng)絡(luò),其結(jié)構(gòu)如圖5所示,其組網(wǎng)與維護(hù)相當(dāng)方便。CAN總線具有在線增減設(shè)備,即總線在不斷電的情況下也可以向網(wǎng)絡(luò)中增加或減少節(jié)點(diǎn)。一條總線最多可以容納110個(gè)節(jié)點(diǎn),通信波特率為5 kb/s~1 Mb/s,在通信的過程中要求每個(gè)節(jié)點(diǎn)的波特率保持一致(誤差不能超過5%),否則會引起總線錯(cuò)誤,從而導(dǎo)致節(jié)點(diǎn)的關(guān)閉,出現(xiàn)通信異常。


5 CAN總線應(yīng)用層協(xié)議
  由于CAN總線只定義了ISO/OSI中的物理層和數(shù)據(jù)鏈路層,因此對于不同的應(yīng)用出現(xiàn)了不同的應(yīng)用層協(xié)議,為了使不同廠商的產(chǎn)品能夠相互兼容,世界范圍內(nèi)需要通用的CAN應(yīng)用層通信協(xié)議,在過去的20年中涌現(xiàn)出許多的協(xié)議,不過到現(xiàn)在為止能夠廣泛被承認(rèn)的協(xié)議卻不多,現(xiàn)在CAN應(yīng)用層協(xié)議主要有以下三種:
  (1)在歐洲等地占有大部分市場份額的CANopen協(xié)議,主要應(yīng)用在汽車、工業(yè)控制和自動化儀表等領(lǐng)域,目前由CIA負(fù)責(zé)管理和維護(hù);
  (2)J1939是CAN總線在商用車領(lǐng)域占有絕大部分市場份額的應(yīng)用層協(xié)議,由美國機(jī)動車工程師學(xué)會發(fā)起,現(xiàn)已在全球范圍內(nèi)得到廣泛的應(yīng)用;
  (3)DeviceNet協(xié)議在美國等地占有相當(dāng)大的市場份額,主要用于工業(yè)通信及控制和儀器儀表等領(lǐng)域。
  在以后的文章中將向讀者重點(diǎn)介紹CANopen協(xié)議的基本概念及CANopen相關(guān)設(shè)備的使用及組網(wǎng)方法。
  現(xiàn)階段我國在工業(yè)領(lǐng)域與歐洲和美國等其他的發(fā)達(dá)國家存在較大的差距。CAN總線作為新型現(xiàn)場總線已經(jīng)漫延到生活生產(chǎn)的各個(gè)領(lǐng)域,能夠提高生產(chǎn)效率以及降低生產(chǎn)成本,成為工業(yè)現(xiàn)場總線的發(fā)展趨勢。
  廣州致遠(yuǎn)電子有限公司提供各種接口的CAN卡、CAN總線分析儀、CAN網(wǎng)關(guān)及網(wǎng)橋、CAN卡的OPC服務(wù)器以及CAN相關(guān)的測試工具。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 久久久久88色偷偷 | yin乱的日子小说 | 日韩精品免费一区二区三区 | 国产成人综合久久亚洲精品 | 国产精品久久久亚洲第一牛牛 | 性激烈的欧美三级视频中文字幕 | 日韩高清第一页 | 最近在线观看免费完整视频 | 午夜日韩精品 | 狠狠干狠 | 99精品欧美一区二区三区美图 | 日韩午夜片 | 天天艹夜夜艹 | 黄色免费网站视频 | 成年人在线免费 | 国产成人精品久久免费动漫 | 全部免费特黄特色大片视频 | 下面一进一出好爽视频 | 在线观看精品福利片香蕉 | 国产免费一区二区 | 免费永久在线观看污污的网站 | 免费成人福利视频 | 亚洲成人一区在线 | 激情久久久久久久久久久 | 亚洲天堂日韩在线 | 国产一区二区三区在线观看免费 | 91啪国自产中文字幕在线 | 国产精品亚洲午夜不卡 | 一级做a毛片在线看 | 日本精a在线观看 | 成年大片免费播放视频人 | 美妇乱人伦小说目录 | 精品国产一级在线观看 | 日本一道高清不卡免费 | avtt亚洲天堂 | 中国女人free性hd国浯 | 欧美久在线观看在线观看 | 粉色视频导航 | 午夜影院福利社 | 免费在线亚洲 | 免费在线看黄色片 |