CAN0pen網(wǎng)絡(luò)管理與特殊協(xié)議解刨
摘要:人們使用CAN取代RS485,主要是看重其可以突發(fā)發(fā)送的實時性優(yōu)勢,而在多節(jié)點、長距離應(yīng)用中,如果沒有做好優(yōu)化,CAN總線和RS485比起來并無優(yōu)勢,那要如何讓CAN通訊完勝我們的傳統(tǒng)通信呢?讓CANOpen來給你答案。
本文引用地址:http://www.ex-cimer.com/article/283234.htm在CANopen創(chuàng)立之初,即使在CAN總線應(yīng)用最廣泛的汽車電子行業(yè),網(wǎng)絡(luò)中的CAN節(jié)點數(shù)量和需要通訊的信息都是比較少的。人們使用CAN取代RS485,主要是看重其可以突發(fā)發(fā)送的實時性優(yōu)勢,而在多節(jié)點、長距離應(yīng)用中,CAN總線和RS485比起來并無優(yōu)勢,比如同樣的波特率下,CAN的通信距離只能達到RS485的0.6-0.8倍,而多節(jié)點通信CAN無法進行任意的突發(fā)發(fā)送,不得不遵循RS485那樣的輪詢通信機制,否則會導(dǎo)致?lián)矶?,如圖 1所示。就像這個十字路口的汽車,如果車只有10輛,即使沒有交通燈,根本不會擁堵。而如果有100輛,如果任意行駛,就會發(fā)生嚴重擁堵。
圖 1 CAN的突發(fā)優(yōu)勢和多節(jié)點擁堵
CANopen的創(chuàng)始人是非常了解CAN總線這個特征,所以在設(shè)計CANopen時,對其定義為小網(wǎng)絡(luò)、控制信號的實時通訊:
報文傳輸采用CAN標準幀格式。即11bit的ID域,以盡量減小傳輸時間;
網(wǎng)絡(luò)控制報文均采用數(shù)據(jù)最小字節(jié)數(shù)。比如心跳報文,只有1個字節(jié)數(shù)據(jù);
實時更新的過程數(shù)據(jù)無需接收方報文應(yīng)答。即采用生產(chǎn)消費模型,降低總線負載;
需要接收方確認的配置參數(shù)一般都是采用快速單字傳輸。即1個報文最多傳送1個32字節(jié)的參數(shù)變量,避免了分幀引起的實時性降低。
以上這些定義都是為了節(jié)約時間開銷,最大限度保證實時性。同時為了減小簡單網(wǎng)絡(luò)的組態(tài)工作量,CANopen定義了強制性的缺省標識符(CAN幀ID)分配表,以減少使用者與維護者的學習時間,快速上手。
網(wǎng)絡(luò)管理(NMT)與特殊協(xié)議(Special protocols)報文ID分類
雖然CANopen的通訊發(fā)揮了CAN的特色,所有節(jié)點通信地位平等,運行時允許自行發(fā)送報文,但CANopen網(wǎng)絡(luò)為了穩(wěn)定可靠可控,都需要設(shè)置一個網(wǎng)絡(luò)管理主機NMT-Master(Network Management-Master),就像一個交響樂團的指揮家,所有節(jié)點的啟動、停止都是有他進行指揮,如圖 2所示。
圖 2 NMT-Master就像交響樂指揮家
NMT主機一般是CANopen網(wǎng)絡(luò)中具備監(jiān)控的PLC或者PC(當然也可以是一般的功能節(jié)點),所以也成為CANopen主站。相對應(yīng)的其他CANopen節(jié)點就是NMT從機(NMT-slaves)。
NMT主機和NMT從機之間通訊的報文就稱為NMT網(wǎng)絡(luò)管理報文。管理報文負責層管理、網(wǎng)絡(luò)管理和ID分配服務(wù)。例如,初始化、配置和網(wǎng)絡(luò)管理(其中包括節(jié)點保護)。網(wǎng)絡(luò)管理中,同一個網(wǎng)絡(luò)中只允許有一個主節(jié)點、一個或多個從節(jié)點,并遵循主從模式。
另外,為了協(xié)調(diào)各個節(jié)點的同步、心跳、時間、錯誤提示等通訊控制,CANopen還定義了一系列特殊協(xié)議(Special protocols)報文。如表 1所示,為CANopen預(yù)定義報文(Pre-defined CAN-IDs)的NMT報文和特殊協(xié)議報文。
表 1 NMT與特殊協(xié)議的CAN-ID定義
CAN-ID就是這類報文的COB-ID,其中讀者必須需要記住的是綠色底紋的這些常用的CAN-ID含義,在研發(fā)和應(yīng)用CANopen中,這三類是最為常用的NMT與特殊協(xié)議報文。
USBCAN-E-P與PCI-5010-P主站卡可為PC機拓展出CANOpen通訊接口,實現(xiàn)CANOpen協(xié)議的數(shù)據(jù)通信。作為CANOpen網(wǎng)絡(luò)的管理者,實現(xiàn)全部的CANOpen網(wǎng)絡(luò)管理(NMT)功能。
評論