新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CANOpen網絡管理與特殊協議解刨

        CANOpen網絡管理與特殊協議解刨

        作者: 時間:2016-12-13 來源:網絡 收藏
        在CANopen創立之初,即使在CAN總線應用最廣泛的汽車電子行業,網絡中的CAN節點數量和需要通訊的信息都是比較少的。人們使用CAN取代RS485,主要是看重其可以突發發送的實時性優勢,而在多節點、長距離應用中,CAN總線和RS485比起來并無優勢,比如同樣的波特率下,CAN的通信距離只能達到RS485的0.6-0.8倍,而多節點通信CAN無法進行任意的突發發送,不得不遵循RS485那樣的輪詢通信機制,否則會導致擁堵,如圖1所示。就像這個十字路口的汽車,如果車只有10輛,即使沒有交通燈,根本不會擁堵。而如果有100輛,如果任意行駛,就會發生嚴重擁堵。

        本文引用地址:http://www.104case.com/article/201612/329285.htm

        圖1 CAN的突發優勢和多節點擁堵

        CANopen的創始人是非常了解CAN總線這個特征,所以在設計CANopen時,對其定義為小網絡、控制信號的實時通訊:

        • 報文傳輸采用CAN標準幀格式。即11bit的ID域,以盡量減小傳輸時間;

        • 網絡控制報文均采用數據最小字節數。比如心跳報文,只有1個字節數據;

        • 實時更新的過程數據無需接收方報文應答。即采用生產消費模型,降低總線負載;

        • 需要接收方確認的配置參數一般都是采用快速單字傳輸。即1個報文最多傳送1個32字節的參數變量,避免了分幀引起的實時性降低。

        以上這些定義都是為了節約時間開銷,最大限度保證實時性。同時為了減小簡單網絡的組態工作量,CANopen定義了強制性的缺省標識符(CAN幀ID)分配表,以減少使用者與維護者的學習時間,快速上手。

        網絡管理(NMT)與特殊協議(Special protocols)報文ID分類

        雖然CANopen的通訊發揮了CAN的特色,所有節點通信地位平等,運行時允許自行發送報文,但CANopen網絡為了穩定可靠可控,都需要設置一個網絡管理主機NMT-Master(Network Management-Master),就像一個交響樂團的指揮家,所有節點的啟動、停止都是有他進行指揮,如圖2所示。


        圖2 NMT-Master就像交響樂指揮家

        NMT主機一般是CANopen網絡中具備監控的PLC或者PC(當然也可以是一般的功能節點),所以也成為CANopen主站。相對應的其他CANopen節點就是NMT從機(NMT-slaves)。

        NMT主機和NMT從機之間通訊的報文就稱為NMT網絡管理報文。管理報文負責層管理、網絡管理和ID分配服務。例如,初始化、配置和網絡管理(其中包括節點保護)。網絡管理中,同一個網絡中只允許有一個主節點、一個或多個從節點,并遵循主從模式。

        另外,為了協調各個節點的同步、心跳、時間、錯誤提示等通訊控制,CANopen還定義了一系列特殊協議(Special protocols)報文。如表 1所示,為CANopen預定義報文(Pre-defined CAN-IDs)的NMT報文和特殊協議報文。

        表1 NMT與特殊協議的CAN-ID定義

        Object對象

        Specification規范

        CAN-ID

        NMT網絡管理命令

        CiA301

        000h

        Global failsafe command全局故障安全命令

        CiA304

        001h

        Flying master動態主站

        CiA302-2

        071h to 076h

        Indicate active interface標示活動接口

        CiA302-6

        07Fh

        Sync同步報文

        CiA301

        080h

        Emergency緊急報文

        CiA301

        081h to 0FFh(080h +node-ID)

        Time stamp時間戳報文

        CiA301

        100h

        Safety-relevant data objects安全相關數據對象

        CiA301

        101h to 180h

        CAN-ID就是這類報文的COB-ID,其中讀者必須需要記住的是綠色底紋的這些常用的CAN-ID含義,在研發和應用CANopen中,這三類是最為常用的NMT與特殊協議報文。

        USBCAN-E-P與PCI-5010-P主站卡可為PC機拓展出CANOpen通訊接口,實現CANOpen協議的數據通信。作為CANOpen網絡的管理者,實現全部的CANOpen網絡管理(NMT)功能。

        CANopen主站卡系列



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 祁连县| 阿克苏市| 隆化县| 大宁县| 遂宁市| 荣昌县| 理塘县| 夏邑县| 庆云县| 凌源市| 清苑县| 商洛市| 阳新县| 乳山市| 栾城县| 白朗县| 江都市| 金平| 象山县| 朔州市| 武鸣县| 五原县| 荆门市| 古交市| 江陵县| 思南县| 邯郸县| 峡江县| 工布江达县| 大姚县| 德钦县| 平利县| 陕西省| 五大连池市| 中江县| 宜都市| 浙江省| 开远市| 修水县| 家居| 稻城县|