控制器局域網(wǎng)總線(CAN,Controller Area
Network)是一種用于實(shí)時(shí)應(yīng)用的串行通訊協(xié)議總線,它可以使用雙絞線來傳輸信號,是世界上應(yīng)用最廣泛的現(xiàn)場總線之一。CAN協(xié)議由德國的
Robert
Bosch公司開發(fā),用于汽車中各種不同元件之間的通信,以此取代昂貴而笨重的配電線束。該協(xié)議的健壯性使其用途延伸到其他自動化和工業(yè)應(yīng)用。CAN協(xié)議
的特性包括完整性的串行數(shù)據(jù)通訊、提供實(shí)時(shí)支持、傳輸速率高達(dá)1Mb/s、同時(shí)具有11位的尋址以及檢錯(cuò)能力。
CAN總線是一種多主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電子干擾性,并且能夠檢測出產(chǎn)生的任何錯(cuò)誤。CAN總線可以應(yīng)用于汽車電控制系統(tǒng)、電梯控制系統(tǒng)、安全監(jiān)測系統(tǒng)、醫(yī)療儀器、紡織機(jī)械、船舶運(yùn)輸?shù)阮I(lǐng)域。
CAN總線的特點(diǎn)
1、具有實(shí)時(shí)性強(qiáng)、傳輸距離較遠(yuǎn)、抗電磁干擾能力強(qiáng)、成本低等優(yōu)點(diǎn);
2、采用雙線串行通信方式,檢錯(cuò)能力強(qiáng),可在高噪聲干擾環(huán)境中工作;
3、具有優(yōu)先權(quán)和仲裁功能,多個(gè)控制模塊通過CAN控制器掛到CAN-bus上,形成多主機(jī)局部網(wǎng)絡(luò);
4、可根據(jù)報(bào)文的ID決定接收或屏蔽該報(bào)文;
5、可靠的錯(cuò)誤處理和檢錯(cuò)機(jī)制;
6、發(fā)送的信息遭到破壞后,可自動重發(fā);
7、節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動退出總線的功能;
8、報(bào)文不包含源地址或目標(biāo)地址,僅用標(biāo)志符來指示功能信息、優(yōu)先級信息。
CAN總線的工作原理
CAN總線使用串行數(shù)據(jù)傳輸方式,可以1Mb/s的速率在40m的雙絞線上運(yùn)行,也可以使用光纜連接,而且在這種總線上總線協(xié)議支持多主控制器。CAN與I2C總線的許多細(xì)節(jié)很類似,但也有一些明顯的區(qū)別。
當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對每個(gè)節(jié)點(diǎn)來說,無論數(shù)據(jù)是否是發(fā)給自己的,都對其進(jìn)行接收。每組報(bào)文開
頭的11位字符為標(biāo)識符,定義了報(bào)文的優(yōu)先級,這種報(bào)文格式稱為面向內(nèi)容的編址方案。在同一系統(tǒng)中標(biāo)識符是唯一的,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識符的報(bào)
文。當(dāng)幾個(gè)站同時(shí)競爭總線讀取時(shí),這種配置十分重要。
當(dāng)一個(gè)站要向其它站發(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)。每個(gè)處于接收狀態(tài)的站對接收到的報(bào)文進(jìn)行檢測,判斷這些報(bào)文是否
是發(fā)給自己的,以確定是否接收它。
由于CAN總線是一種面向內(nèi)容的編址方案,因此很容易建立高水準(zhǔn)的控制系統(tǒng)并靈活地進(jìn)行配置。我們可以很容易地在CAN總線中加進(jìn)一些新站而無需在硬件或
軟件上進(jìn)行修改。當(dāng)所提供的新站是純數(shù)據(jù)接收設(shè)備時(shí),數(shù)據(jù)傳輸協(xié)議不要求獨(dú)立的部分有物理目的地址。它允許分布過程同步化,即總線上控制器需要測量數(shù)據(jù)
時(shí),可由網(wǎng)上獲得,而無須每個(gè)控制器都有自己獨(dú)立的傳感器。
CAN總線的應(yīng)用
CAN總線在組網(wǎng)和通信功能上的優(yōu)點(diǎn)以及其高性價(jià)比據(jù)定了它在許多領(lǐng)域有廣闊的應(yīng)用前景和發(fā)展?jié)摿?。這些應(yīng)用有些共同之處:CAN實(shí)際就是在現(xiàn)場起一個(gè)總
線拓?fù)涞挠?jì)算機(jī)局域網(wǎng)的作用。不管在什么場合,它負(fù)擔(dān)的是任一節(jié)點(diǎn)之間的實(shí)時(shí)通信,但是它具備結(jié)構(gòu)簡單、高速、抗干擾、可靠、價(jià)位低等優(yōu)勢。CAN總線最
初是為汽車的電子控制系統(tǒng)而設(shè)計(jì)的,目前在歐洲生產(chǎn)的汽車中CAN的應(yīng)用已非常普遍,不僅如此,這項(xiàng)技術(shù)已推廣到火車、輪船等交通工具中。
1、汽車制造中的應(yīng)用
應(yīng)用CAN總線,可以減少車身布線,進(jìn)一步節(jié)省了成本,由于采用總線技術(shù),模塊之間的信號傳遞僅需要兩條信號線。布線局部化,車上除掉總線外其他所有橫貫
車身的線都不再需要了,節(jié)省了布線成本。CAN總線系統(tǒng)數(shù)據(jù)穩(wěn)定可靠,CAN總線具有線間干擾小、抗干擾能力強(qiáng)的特點(diǎn)。CAN總線專為汽車量身定做,充分
考慮到了汽車上惡劣工作環(huán)境,比如點(diǎn)火線圈點(diǎn)火時(shí)產(chǎn)生的強(qiáng)大的反充電壓,電渦流緩沖器切斷時(shí)產(chǎn)生的浪涌電流及汽車發(fā)動機(jī)倉100℃左右的高溫。
隨著安全性能日益受到重視,安全氣囊也將逐漸增多,以前是在駕駛員前面安裝一個(gè),今后側(cè)面與后座都會安裝安全氣囊,這些氣囊通過傳感器感受碰撞信
號,通過CAN總線將傳感器信號傳送到一個(gè)中央處理器內(nèi),控制各安全氣囊的啟動彈出動作。同時(shí),先進(jìn)的防盜設(shè)計(jì)也正基于CAN總線網(wǎng)絡(luò)技術(shù)。首先,確認(rèn)鑰
匙合法性的校驗(yàn)信息通過CAN網(wǎng)絡(luò)進(jìn)行傳遞,改進(jìn)了加密算法,其校驗(yàn)的信息比以往的防盜系統(tǒng)更豐富;其次,車鑰匙、防盜控制器和發(fā)動機(jī)控制器相互儲存對方
信息,而且在校驗(yàn)碼中攙雜隨機(jī)碼,無法進(jìn)行破譯,從而提高防盜系統(tǒng)的安全性。而這些功能的實(shí)現(xiàn)無一不借助CAN總線來完成,CAN總線成為汽車智能化控制
的“定海神針”。
在現(xiàn)代轎車的設(shè)計(jì)中,CAN已經(jīng)成為必須采用的裝置。奔馳、寶馬、大眾、沃爾沃、雷諾等汽車都采用了CAN作為控制器聯(lián)網(wǎng)的手段。據(jù)報(bào)道,中國首輛CAN
網(wǎng)絡(luò)系統(tǒng)混合動力轎車已在奇瑞公司試裝成功,并進(jìn)行了初步試運(yùn)行。在上海大眾的帕薩特和POLO汽車上也開始引入了CAN總線技術(shù)。但總的來說,目前
CAN總線技術(shù)在我國汽車工業(yè)中的應(yīng)用尚處于試驗(yàn)和起步階段,絕大部分的汽車還沒有采用汽車總線設(shè)計(jì)。國內(nèi)在技術(shù)、設(shè)計(jì)和應(yīng)用上進(jìn)行網(wǎng)絡(luò)總線的“深造”勢
在必行。
2、大型儀器設(shè)備中的應(yīng)用
大型儀器設(shè)備是一種參照一定步驟對多種信息采集、處理、控制、輸出等操作的復(fù)雜系統(tǒng)。過去這類儀器設(shè)備的電子系統(tǒng)往往是在結(jié)構(gòu)和成本方面占據(jù)相當(dāng)大的部分,而且可靠性不高。采用CAN總線技術(shù)后,在這方面有了明顯改觀。
以醫(yī)療設(shè)備為例,病理分布式監(jiān)控系統(tǒng)分別由中央控制式的中央監(jiān)控單元和現(xiàn)場采集單元。
現(xiàn)場采集單元對醫(yī)院各室診斷測量儀器進(jìn)行數(shù)據(jù)、圖像的實(shí)時(shí)采集,同時(shí)完成數(shù)據(jù)統(tǒng)計(jì)、存貯;
中央監(jiān)控單元可以定期或不定期地從現(xiàn)場采集單元獲取數(shù)據(jù)并完成圖像監(jiān)測、數(shù)據(jù)統(tǒng)計(jì)、報(bào)表、打印及數(shù)據(jù)庫管理。中央監(jiān)控單元和現(xiàn)場采集單元之間通過CAN總
線連接在一起,在這個(gè)網(wǎng)絡(luò)中,中央監(jiān)控單元處于主控位置,而現(xiàn)場采集單元可以隨時(shí)響應(yīng)中央監(jiān)控單元的命令。其現(xiàn)場采集單元由單片機(jī)8C552及采集、存
儲、顯示、遙控和通信模塊組成,每個(gè)現(xiàn)場采集單元可與10個(gè)測量儀器相接。
Can總線是針對測控領(lǐng)域設(shè)計(jì)的,所以一次傳輸?shù)膱?bào)文量很小,一次報(bào)文量最大能夠承載的數(shù)據(jù)上限為8字節(jié),這種小數(shù)據(jù)量的傳輸一方面能夠使得低優(yōu)先級事務(wù)
的傳輸,另一方面也非常符合測控需求。針對can總線技術(shù)的諸多優(yōu)點(diǎn),非常適合應(yīng)用于大型儀器系統(tǒng)模塊化之間的互相通信,采用模塊化組網(wǎng)的方式構(gòu)建大型儀
器系統(tǒng)。 3、工業(yè)控制中的應(yīng)用
隨著計(jì)算機(jī)技術(shù)、通信技術(shù)和控制技術(shù)的發(fā)展,傳統(tǒng)的工業(yè)控制領(lǐng)域正經(jīng)歷著一場前所未有的變革,而工業(yè)控制的網(wǎng)絡(luò)化,更拓展了工業(yè)控制領(lǐng)域的發(fā)展空間,帶來
新的發(fā)展機(jī)遇。在廣泛的工業(yè)領(lǐng)域,CAN總線可作為現(xiàn)場設(shè)備級的通信總線,而且與其他的總線相比,具有很高的可靠性和性能價(jià)格比。這將是CAN技術(shù)開發(fā)應(yīng)
用的一個(gè)主要的方向。
例如,瑞士一家公司開發(fā)的軸控制系統(tǒng)ACS-E就帶有CAN接口。該系統(tǒng)可作為工業(yè)控制網(wǎng)絡(luò)中的一個(gè)從站,用于控制機(jī)床、機(jī)器人等。一方面通過CAN總線上上位機(jī)通信,另一方面可通過CAN總線對數(shù)字式伺服電機(jī)進(jìn)行控制。通過CAN總線最多可連接6臺數(shù)字式伺服電機(jī)。
目前CAN總線技術(shù)在工程機(jī)械上的應(yīng)用越來越普遍。國際上一些著名的工程機(jī)械大公司如CAT、VOLVO、利勃、海爾等都在自己的產(chǎn)品上廣泛采用CAN總
線技術(shù),大大提高了整機(jī)的可靠性、可檢測和可維修性,同時(shí)提高了智能化水平。而在國內(nèi),CAN總線控制系統(tǒng)也開始在工程汽車的控制系統(tǒng)中廣泛應(yīng)用,在工程
機(jī)械行業(yè)中也正在逐步推廣應(yīng)用。
4、智能家庭和生活小區(qū)管理中的應(yīng)用
小區(qū)智能化是一個(gè)綜合性系統(tǒng)工程,要從其功能、性能、成本、擴(kuò)充能力及現(xiàn)代相關(guān)技術(shù)的應(yīng)用等多方面來考慮?;谶@樣的需求,采用CAN技術(shù)所設(shè)計(jì)的家庭智能管理系統(tǒng)比較適合用于多表遠(yuǎn)傳、防盜、防火、防可燃?xì)怏w泄漏、緊急救援、家電控制等方面。
CAN總線是小區(qū)管理系統(tǒng)的一部分,負(fù)責(zé)將家庭中的一些數(shù)據(jù)和信號收集起來,并送到小區(qū)管理中心處理,CAN總線上的節(jié)點(diǎn)是每戶的家庭控制器、小區(qū)
的三表抄收系統(tǒng)和報(bào)警監(jiān)測系統(tǒng),每戶的家庭控制系統(tǒng)可通過總線發(fā)送報(bào)警信號,定期向自動抄表系統(tǒng)發(fā)送三表數(shù)據(jù),并接收小區(qū)管理系統(tǒng)的通告信息,如欠費(fèi)通
知、火警警報(bào)等。
該系統(tǒng)充分利用CAN技術(shù)的特點(diǎn)和優(yōu)勢,構(gòu)成住宅小區(qū)智能化檢測系統(tǒng),系統(tǒng)集多表集抄、防盜報(bào)警、水電控制、緊急求助、煤氣泄漏報(bào)警、火災(zāi)報(bào)警和供電監(jiān)控子系統(tǒng)等功能,并提供遠(yuǎn)程通訊服務(wù)。
5、機(jī)器人網(wǎng)絡(luò)互聯(lián)中的應(yīng)用
制造車間底層設(shè)備自動化,近幾年仍是我國開展新技術(shù)研究和新技術(shù)應(yīng)用工程及產(chǎn)品開發(fā)的主要領(lǐng)域,其市場需求不斷增大且越發(fā)活躍,競爭也日益激烈。伴隨著工
業(yè)機(jī)器人的產(chǎn)業(yè)化,目前機(jī)器人系統(tǒng)的應(yīng)用大多要求采用機(jī)器人生產(chǎn)方式,這就要求多臺機(jī)器人能通過網(wǎng)絡(luò)進(jìn)行互聯(lián)。隨之而來的是,在實(shí)際生產(chǎn)過程中,這種連網(wǎng)
的多機(jī)器人系統(tǒng)的調(diào)度、維護(hù)工作也變得尤為重要。制造車間底層電氣裝置聯(lián)網(wǎng)是近幾年內(nèi)技術(shù)發(fā)展的重點(diǎn)。其電器裝置包括有:運(yùn)動控制器、基于微處理器的傳感
器、專用設(shè)備控制器等底層設(shè)備;在這些裝置所構(gòu)成的網(wǎng)絡(luò)上另有車間級管理機(jī)、監(jiān)控機(jī)或生產(chǎn)單元控制器等非底層裝置。結(jié)合實(shí)際情況和要求,將機(jī)器人控制器視
為運(yùn)動控制器。
把CAN總線技術(shù)充分應(yīng)用于現(xiàn)有的控制器當(dāng)中,將可開發(fā)出高性能的多機(jī)器人生產(chǎn)線系統(tǒng)。利用現(xiàn)有的控制技術(shù),結(jié)合CAN技術(shù)和通信技術(shù),通過對現(xiàn)有 的機(jī)器人控制器進(jìn)行硬件改進(jìn)和軟件開發(fā),并相應(yīng)地開發(fā)出上位機(jī)監(jiān)控軟件,從而實(shí)現(xiàn)多臺機(jī)器人的網(wǎng)絡(luò)互聯(lián)。最終實(shí)現(xiàn)基于CAN網(wǎng)絡(luò)的機(jī)器人生產(chǎn)線集成系統(tǒng)。 這樣做的好處很多,例如實(shí)現(xiàn)單根電纜串接全部設(shè)備,節(jié)省安裝維護(hù)開銷;提高實(shí)時(shí)性,信息可共享;提高多控制器系統(tǒng)的檢測、診斷和控制性能;通過離線的任務(wù) 調(diào)度、作業(yè)的下載以及錯(cuò)誤監(jiān)控等技術(shù),把一部分人從機(jī)器人工作的現(xiàn)場徹底脫離出來。
CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性。由于其良好的性能及獨(dú)特的設(shè)計(jì),CAN總線越來越受到人們的重視,它在汽車領(lǐng)域上的應(yīng)用是最廣泛 的。世界上一些著名的汽車制造廠商大都采用了CAN總線來實(shí)現(xiàn)汽車內(nèi)部控制系統(tǒng)與各檢測和執(zhí)行機(jī)構(gòu)間的數(shù)據(jù)通信。同時(shí),由于CAN總線本身的特點(diǎn),其應(yīng)用 范圍目前已不再局限于汽車行業(yè),而向自動控制、航空航天、航海、過程工業(yè)、機(jī)械工業(yè)、紡織機(jī)械、農(nóng)用機(jī)械、機(jī)器人、數(shù)控機(jī)床、醫(yī)療器械及傳感器等領(lǐng)域發(fā) 展。CAN已經(jīng)形成國際標(biāo)準(zhǔn),并已被公認(rèn)為幾種最有前途的現(xiàn)場總線之一。