現(xiàn)場總線CAN綜述報告
3.3CAN的報文格式
在總線中傳送的報文,每幀由7部分組成,見圖3。CAN協(xié)議支持兩種報文格式,其唯一的不同是標(biāo)識符(ID)長度不同,標(biāo)準(zhǔn)格式為11位,擴(kuò)展格式為29位。在標(biāo)準(zhǔn)格式中,報文的起始位稱為幀起始(SOF),然后是由11位標(biāo)識符和遠(yuǎn)程發(fā)送請求位(RTR)組成的仲裁場。
RTR位標(biāo)明是數(shù)據(jù)幀還是請求幀,在請求幀中沒有數(shù)據(jù)字節(jié)??刂茍霭?biāo)識符擴(kuò)展位(IDE),指出是標(biāo)準(zhǔn)格式還是擴(kuò)展格式。它還包括一個保留位(ro),為將來擴(kuò)展使用。它的最后四個字節(jié)用來指明數(shù)據(jù)場中數(shù)據(jù)的長度(DLC)。數(shù)據(jù)場范圍為0~8個字節(jié),其后有一個檢測數(shù)據(jù)錯誤的循環(huán)冗余檢查(CRC)。
應(yīng)答場(ACK)包括應(yīng)答位和應(yīng)答分隔符。發(fā)送站發(fā)送的這兩位均為隱性電平(邏輯1),這時正確接收報文的接收站發(fā)送主控電平(邏輯0)覆蓋它。用這種方法,發(fā)送站可以保證網(wǎng)絡(luò)中至少有一個站能正確接收到報文。報文的尾部由幀結(jié)束標(biāo)出。在相鄰的兩條報文間有一很短的間隔位,如果這時沒有站進(jìn)行總線存取,總線將處于空閑狀態(tài)。
3.4數(shù)據(jù)錯誤檢測
不同于其它總線,CAN協(xié)議不能使用應(yīng)答信息。事實(shí)上,它可以將發(fā)生的任何錯誤用信號發(fā)出。CAN協(xié)議可使用五種檢查錯誤的方法,其中前三種為基于報文內(nèi)容檢查。
3.4.1循環(huán)冗余檢查(CRC)
在一幀報文中加入冗余檢查位可保證報文正確。接收站通過CRC可判斷報文是否有錯。
3.4.2幀檢查
這種方法通過位場檢查幀的格式和大小來確定報文的正確性,用于檢查格式上的錯誤。
3.4.3.應(yīng)答錯誤
如前所述,被接收到的幀由接收站通過明確的應(yīng)答來確認(rèn)。如果發(fā)送站未收到應(yīng)答,那么表明接收站發(fā)現(xiàn)幀中有錯誤,也就是說,ACK場已損壞或網(wǎng)絡(luò)中的報文無站接收。CAN協(xié)議也可通過位檢查的方法探測錯誤。
3.4.4總線檢測
有時,CAN中的一個節(jié)點(diǎn)可監(jiān)測自己發(fā)出的信號。因此,發(fā)送報文的站可以觀測總線電平并探測發(fā)送位和接收位的差異。
3.4.5位填充
一幀報文中的每一位都由不歸零碼表示,可保證位編碼的最大效率。然而,如果在一幀報文中有太多相同電平的位,就有可能失去同步。為保證同步,同步沿用位填充產(chǎn)生。在五個生。在五個連續(xù)相等位后,發(fā)送站自動插入一個與之互補(bǔ)的補(bǔ)碼位;接收時,這個填充位被自動丟掉。例如,五個連續(xù)的低電平位后,CAN自動插入一個高電平位。CAN通過這種編碼規(guī)則檢查錯誤,如果在一幀報文中有6個相同位,CAN就知道發(fā)生了錯誤。如果至少有一個站通過以上方法探測到一個或多個錯誤,它將發(fā)送出錯標(biāo)志終止當(dāng)前的發(fā)送。這可以阻止其它站接收錯誤的報文,并保證網(wǎng)絡(luò)上報文的一致性。當(dāng)大量發(fā)送數(shù)據(jù)被終止后,發(fā)送站會自動地重新發(fā)送數(shù)據(jù)。作為規(guī)則,在探測到錯誤后23個位周期內(nèi)重新開始發(fā)送。在特殊場合,系統(tǒng)的恢復(fù)時間為31個位周期。
但這種方法存在一個問題,即一個發(fā)生錯誤的站將導(dǎo)致所有數(shù)據(jù)被終止,其中也包括正確的數(shù)據(jù)。因此,如果不采取自監(jiān)測措施,總線系統(tǒng)應(yīng)采用模塊化設(shè)計。為此,CAN協(xié)議提供一種將偶然錯誤從永久錯誤和局部站失敗中區(qū)別出來的辦法。這種方法可以通過對出錯站統(tǒng)計評估來確定一個站本身的錯誤并進(jìn)入一種不會對其它站產(chǎn)生不良影響的運(yùn)行方法來實(shí)現(xiàn),即站可以通過關(guān)閉自己來阻止正常數(shù)據(jù)因被錯誤地當(dāng)成不正確的數(shù)據(jù)而被終止。
3.4.6CAN可靠性
為防止汽車在使用壽命期內(nèi)由于數(shù)據(jù)交換錯誤而對司機(jī)造成危險,汽車的安全系統(tǒng)要求數(shù)據(jù)傳輸具有較高的安全性。如果數(shù)據(jù)傳輸?shù)目煽啃宰銐蚋?或者殘留下來的數(shù)據(jù)錯誤足夠低的話,這一目標(biāo)不難實(shí)現(xiàn)。從總線系統(tǒng)數(shù)據(jù)的角度看,可靠性可以理解為,對傳輸過程產(chǎn)生的數(shù)據(jù)錯誤的識別能力。
殘余數(shù)據(jù)錯誤的概率可以通過對數(shù)據(jù)傳輸可靠性的統(tǒng)計測量獲得。它描述了傳送數(shù)據(jù)被破壞和這種破壞不能被探測出來的概率。殘余數(shù)據(jù)錯誤概率必須非常小,使其在系統(tǒng)整個壽命周期內(nèi),按平均統(tǒng)計時幾乎檢測不到。計算殘余錯誤概率要求能夠?qū)?shù)據(jù)錯誤進(jìn)行分類,并且數(shù)據(jù)傳輸路徑可由一模型描述。如果要確定CAN的殘余錯誤概率,我們可將殘留錯誤的概率作為具有80~90位的報文傳送時位錯誤概率的函數(shù),并假定這個系統(tǒng)中有5~10個站,并且錯誤率為1/1000,那么最大位錯誤概率為10—13數(shù)量級。例如,CAN網(wǎng)絡(luò)的數(shù)據(jù)傳輸率最大為1Mbps,如果數(shù)據(jù)傳輸能力僅使用50%,那么對于一個工作壽命4000小時、平均報文長度為80位的系統(tǒng),所傳送的數(shù)據(jù)總量為9×1010。在系統(tǒng)運(yùn)行壽命期內(nèi),不可檢測的傳輸錯誤的統(tǒng)計平均小于10—2量級。換句話說,一個系統(tǒng)按每年365天,每天工作8小時,每秒錯誤率為0.7計算,那么按統(tǒng)計平均,每1000年才會發(fā)生一個不可檢測的錯誤。
四.應(yīng)用舉例
某醫(yī)院現(xiàn)有5臺16T/H德國菲斯曼燃?xì)忮仩t,向洗衣房、制劑室、供應(yīng)室、生活用水、暖氣等設(shè)施提供5kg/cm2的蒸汽,全年耗用天然氣1200萬m3,耗用20萬噸自來水。醫(yī)院采用接力式方式供熱,對熱網(wǎng)進(jìn)行地域性管理,分四大供熱區(qū)。其中冬季暖氣的用氣量很大,據(jù)此設(shè)計了基于CAN現(xiàn)場總線的分布式鍋爐蒸汽熱網(wǎng)智能監(jiān)控系統(tǒng)?,F(xiàn)場應(yīng)用表明:該樓宇自動化系統(tǒng)具有抗干擾能力強(qiáng),現(xiàn)場組態(tài)容易,網(wǎng)絡(luò)化程度高,人機(jī)界面友好等特點(diǎn)。
五.存在問題
目前現(xiàn)場總線技術(shù)在我國的應(yīng)用已取得很大進(jìn)展,但也存在一些問題,制約了其推廣。
在工程應(yīng)用方面,工程投資比較大。雖然各種現(xiàn)場總線都把節(jié)省費(fèi)用當(dāng)成自己的主要優(yōu)點(diǎn),但在實(shí)際應(yīng)用中現(xiàn)場總線的投資比傳統(tǒng)控制系統(tǒng)要大。一是試用的系統(tǒng)規(guī)模太?。欢窃囉玫南到y(tǒng)并不分散或者是利用原有布線的改造項目,因此無法充分發(fā)揮現(xiàn)場總線節(jié)省電纜的優(yōu)勢。
其次,調(diào)試和運(yùn)行維護(hù)比較難。由于現(xiàn)階段熟練掌握現(xiàn)場總線的應(yīng)用技術(shù)和開發(fā)技術(shù)的人才少,企業(yè)在調(diào)試和運(yùn)行時經(jīng)常會遇到困難。因此,企業(yè)在選擇系統(tǒng)集成商時,應(yīng)選擇技術(shù)力量比較強(qiáng),比較有經(jīng)驗(yàn)的單位。
再者,與傳統(tǒng)控制系統(tǒng)相比優(yōu)點(diǎn)不明顯。以智能化現(xiàn)場儀表為基礎(chǔ)的現(xiàn)場總線系統(tǒng)與傳統(tǒng)系統(tǒng)相比,其優(yōu)點(diǎn)不僅在于控制方面,更多的在于自診斷、自校正等自動管理方面。但是,目前國內(nèi)用的系統(tǒng)大多數(shù)太小,沒有把管理自動化和遠(yuǎn)程診斷功能納入系統(tǒng),因此無法發(fā)揮現(xiàn)場總線系統(tǒng)降低運(yùn)行維護(hù)費(fèi)用的優(yōu)勢。
在技術(shù)方面,當(dāng)總線切斷時,系統(tǒng)有可能產(chǎn)生不可預(yù)知的后果,用戶希望這時系統(tǒng)的效能可以降低,但不能崩潰,這一點(diǎn)目前許多現(xiàn)場總線不能保證;現(xiàn)有的防爆規(guī)定限制了總線長度和總線上所掛設(shè)備的數(shù)量,也就限制了現(xiàn)場總線節(jié)省電纜優(yōu)點(diǎn)的發(fā)揮;系統(tǒng)組態(tài)參數(shù)過分復(fù)雜,不容易掌握。但組態(tài)參數(shù)設(shè)定得好壞,對系統(tǒng)性能影響很大。
在應(yīng)用中,現(xiàn)場總線的開放、互聯(lián)性及互操作性決定了與之俱來的不可避免的安全問題。
外部網(wǎng)是一個由現(xiàn)場總線實(shí)現(xiàn)的自動化系統(tǒng),是和企業(yè)的Intranet緊密結(jié)合在一起的,存在著與Internet普通應(yīng)用相同的種種威脅,包括竊聽、盜取資料、非法獲取控制權(quán)、進(jìn)行破壞、阻礙通信等。要解決這些問題,必須建立起一套適合企業(yè)的針對現(xiàn)場總線應(yīng)用的安全策略。
在Intranet內(nèi)部,人們?nèi)菀追潘删?。由于現(xiàn)場總線多應(yīng)用于化工、電氣及樓宇自動化控制中,這些場合都要求系統(tǒng)連續(xù)運(yùn)行,因此現(xiàn)場總線可能受到的攻擊時間與普通應(yīng)用相比長得多。
基于安全情況,可以考慮將各子系統(tǒng)設(shè)計得較為獨(dú)立,使一個子系統(tǒng)受到破壞不會影響到整個系統(tǒng);采用通信控制器將總線與以太網(wǎng)相聯(lián),改善通信控制器的功能,可以起到一定程度的安全防范作用,包括拒絕非法訪問,危險時將總線與以太網(wǎng)隔離等;進(jìn)行合理的冗余設(shè)計,以提高系統(tǒng)穩(wěn)定性。
六.結(jié)論
綜上所述,現(xiàn)場總線并不是為解決傳統(tǒng)控制系統(tǒng)不能解決的問題而出現(xiàn)的,它的主要優(yōu)點(diǎn)是更靈活、更開放,并為采用新型系統(tǒng)維護(hù)方式和企業(yè)管理模式提供了可能。但對于以價格為首選條件的場合,系統(tǒng)規(guī)模較小、控制對象分布比較集中的場合,以及沒有擴(kuò)展設(shè)備智能診斷和管理要求的場合,現(xiàn)場總線并不一定是最佳選擇。
參考文獻(xiàn)
[1]饒運(yùn)濤等,現(xiàn)場總線CAN原理與應(yīng)用技術(shù),北京:北京航空航天大學(xué)出版社,2007.8
[2]鄔寬明,CAN總線原理和應(yīng)用系統(tǒng)設(shè)計.北京:北京航空航天大學(xué)出版社,2002.3
[3]韓兵,現(xiàn)場總線控制系統(tǒng)應(yīng)用實(shí)例.北京:北京航空航天大學(xué)出版社,2006.8
評論