新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 現(xiàn)場總線CAN綜述報(bào)告

        現(xiàn)場總線CAN綜述報(bào)告

        作者: 時間:2016-12-16 來源:網(wǎng)絡(luò) 收藏

        3.3CAN的報(bào)文格式

        在總線中傳送的報(bào)文,每幀由7部分組成,見圖3。CAN協(xié)議支持兩種報(bào)文格式,其唯一的不同是標(biāo)識符(ID)長度不同,標(biāo)準(zhǔn)格式為11位,擴(kuò)展格式為29位。在標(biāo)準(zhǔn)格式中,報(bào)文的起始位稱為幀起始(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),這時正確接收報(bào)文的接收站發(fā)送主控電平(邏輯0)覆蓋它。用這種方法,發(fā)送站可以保證網(wǎng)絡(luò)中至少有一個站能正確接收到報(bào)文。報(bào)文的尾部由幀結(jié)束標(biāo)出。在相鄰的兩條報(bào)文間有一很短的間隔位,如果這時沒有站進(jìn)行總線存取,總線將處于空閑狀態(tài)。

        3.4數(shù)據(jù)錯誤檢測

        不同于其它總線,CAN協(xié)議不能使用應(yīng)答信息。事實(shí)上,它可以將發(fā)生的任何錯誤用信號發(fā)出。CAN協(xié)議可使用五種檢查錯誤的方法,其中前三種為基于報(bào)文內(nèi)容檢查。

        3.4.1循環(huán)冗余檢查(CRC)

        在一幀報(bào)文中加入冗余檢查位可保證報(bào)文正確。接收站通過CRC可判斷報(bào)文是否有錯。

        3.4.2幀檢查

        這種方法通過位場檢查幀的格式和大小來確定報(bào)文的正確性,用于檢查格式上的錯誤。

        3.4.3.應(yīng)答錯誤

        如前所述,被接收到的幀由接收站通過明確的應(yīng)答來確認(rèn)。如果發(fā)送站未收到應(yīng)答,那么表明接收站發(fā)現(xiàn)幀中有錯誤,也就是說,ACK場已損壞或網(wǎng)絡(luò)中的報(bào)文無站接收。CAN協(xié)議也可通過位檢查的方法探測錯誤。

        3.4.4總線檢測

        有時,CAN中的一個節(jié)點(diǎn)可監(jiān)測自己發(fā)出的信號。因此,發(fā)送報(bào)文的站可以觀測總線電平并探測發(fā)送位和接收位的差異。

        3.4.5位填充

        一幀報(bào)文中的每一位都由不歸零碼表示,可保證位編碼的最大效率。然而,如果在一幀報(bào)文中有太多相同電平的位,就有可能失去同步。為保證同步,同步沿用位填充產(chǎn)生。在五個生。在五個連續(xù)相等位后,發(fā)送站自動插入一個與之互補(bǔ)的補(bǔ)碼位;接收時,這個填充位被自動丟掉。例如,五個連續(xù)的低電平位后,CAN自動插入一個高電平位。CAN通過這種編碼規(guī)則檢查錯誤,如果在一幀報(bào)文中有6個相同位,CAN就知道發(fā)生了錯誤。如果至少有一個站通過以上方法探測到一個或多個錯誤,它將發(fā)送出錯標(biāo)志終止當(dāng)前的發(fā)送。這可以阻止其它站接收錯誤的報(bào)文,并保證網(wǎng)絡(luò)上報(bào)文的一致性。當(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è)計(jì)。為此,CAN協(xié)議提供一種將偶然錯誤從永久錯誤和局部站失敗中區(qū)別出來的辦法。這種方法可以通過對出錯站統(tǒng)計(jì)評估來確定一個站本身的錯誤并進(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ī)造成危險(xiǎn),汽車的安全系統(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)計(jì)測量獲得。它描述了傳送數(shù)據(jù)被破壞和這種破壞不能被探測出來的概率。殘余數(shù)據(jù)錯誤概率必須非常小,使其在系統(tǒng)整個壽命周期內(nèi),按平均統(tǒng)計(jì)時幾乎檢測不到。計(jì)算殘余錯誤概率要求能夠?qū)?shù)據(jù)錯誤進(jìn)行分類,并且數(shù)據(jù)傳輸路徑可由一模型描述。如果要確定CAN的殘余錯誤概率,我們可將殘留錯誤的概率作為具有80~90位的報(bào)文傳送時位錯誤概率的函數(shù),并假定這個系統(tǒng)中有5~10個站,并且錯誤率為1/1000,那么最大位錯誤概率為10—13數(shù)量級。例如,CAN網(wǎng)絡(luò)的數(shù)據(jù)傳輸率最大為1Mbps,如果數(shù)據(jù)傳輸能力僅使用50%,那么對于一個工作壽命4000小時、平均報(bào)文長度為80位的系統(tǒng),所傳送的數(shù)據(jù)總量為9×1010。在系統(tǒng)運(yùn)行壽命期內(nèi),不可檢測的傳輸錯誤的統(tǒng)計(jì)平均小于10—2量級。換句話說,一個系統(tǒng)按每年365天,每天工作8小時,每秒錯誤率為0.7計(jì)算,那么按統(tǒng)計(jì)平均,每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è)計(jì)了基于CAN現(xiàn)場總線的分布式鍋爐蒸汽熱網(wǎng)智能監(jiān)控系統(tǒng)。現(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ī)模太小;二是試用的系統(tǒng)并不分散或者是利用原有布線的改造項(xià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)菀追潘删琛S捎诂F(xiàn)場總線多應(yīng)用于化工、電氣及樓宇自動化控制中,這些場合都要求系統(tǒng)連續(xù)運(yùn)行,因此現(xiàn)場總線可能受到的攻擊時間與普通應(yīng)用相比長得多。

        基于安全情況,可以考慮將各子系統(tǒng)設(shè)計(jì)得較為獨(dú)立,使一個子系統(tǒng)受到破壞不會影響到整個系統(tǒng);采用通信控制器將總線與以太網(wǎng)相聯(lián),改善通信控制器的功能,可以起到一定程度的安全防范作用,包括拒絕非法訪問,危險(xiǎn)時將總線與以太網(wǎng)隔離等;進(jìn)行合理的冗余設(shè)計(jì),以提高系統(tǒng)穩(wěn)定性。

        六.結(jié)論

          綜上所述,現(xiàn)場總線并不是為解決傳統(tǒng)控制系統(tǒng)不能解決的問題而出現(xiàn)的,它的主要優(yōu)點(diǎn)是更靈活、更開放,并為采用新型系統(tǒng)維護(hù)方式和企業(yè)管理模式提供了可能。但對于以價(jià)格為首選條件的場合,系統(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è)計(jì).北京:北京航空航天大學(xué)出版社,2002.3

        [3]韓兵,現(xiàn)場總線控制系統(tǒng)應(yīng)用實(shí)例.北京:北京航空航天大學(xué)出版社,2006.8


        上一頁 1 2 下一頁

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 鄂尔多斯市| 鄯善县| 崇信县| 巴马| 监利县| 衡水市| 英超| 长乐市| 江永县| 涿州市| 砀山县| 浮山县| 兴安盟| 余干县| 分宜县| 鹤庆县| 共和县| 黄浦区| 苏尼特左旗| 简阳市| 迭部县| 南江县| 尤溪县| 屏东市| 德令哈市| 汤阴县| 辽宁省| 威远县| 宜城市| 肃宁县| 望城县| 武宁县| 平罗县| 凤阳县| 清流县| 通许县| 拜城县| 灵石县| 三原县| 双城市| 海宁市|