《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 業(yè)界動態(tài) > 輕松掌握CANOpen最難理解的對象字典

輕松掌握CANOpen最難理解的對象字典

2016-01-09

摘要:CANopen是一種架構在控制局域網(wǎng)路(Controller Area Network, CAN)上的高層通訊協(xié)議其中對象字典是協(xié)議中最為核心的概念,透徹掌握其相關內(nèi)容,,運用CANOpen將會如魚得水,,游刃有余,。

CANopen對象字典(OD: Object Dictionary)是CANopen協(xié)議最為核心的概念,。所謂的對象字典就是一個有序的對象組,,描述了對應CANopen節(jié)點的所有參數(shù),,包括通訊數(shù)據(jù)的存放位置也列入其索引,,這個表變成可以傳遞形式就叫做EDS文件(電子數(shù)據(jù)文檔Electronic Data Sheet)。對象字典,,就像體檢表,,具備這個人每個功能的參數(shù),便于用人單位(主站)進行合理分配工作,。如圖 1所示,。

圖 1  對象字典與體檢表

每個對象采用一個16位的索引值來尋址,這個索引值通常被稱為索引,,其范圍在0x0000到0xFFFF之間,。為了避免數(shù)據(jù)大量時無索引可分配,所以在某些索引下也定義了一個8 位的索引值,,這個索引值通常被稱為子索引,,其范圍是0x00到0xFF之間。

每個索引內(nèi)具體的參數(shù),,最大用32位的變量來表示,,即Unsigned32,四個字節(jié),。

每個CANopen設備都有一個對象字典,,使用電子數(shù)據(jù)文檔(EDS文件)來記錄這些參數(shù),,而不需要把這些參數(shù)記錄在紙上,。對于CANopen網(wǎng)絡中的主節(jié)點來說,不需要對CANopen從節(jié)點的每個對象字典項都訪問,。

CANopen對象字典中的項由一系列子協(xié)議來描述,。子協(xié)議為對象字典中的每個對象都描述了它的功能、名字,、索引,、子索引,、數(shù)據(jù)類型,以及這個對象是否必需,、讀寫屬性等等,,這樣可保證不同廠商的同類型設備兼容。

CANopen協(xié)議的核心描述子協(xié)議是DS301,,其包括了CANopen協(xié)議應用層及通信結構描述,,其它的協(xié)議子協(xié)議都是對DS301 協(xié)議描述文本的補充與擴展。在不同的應用行業(yè)都會起草一份CANopen設備子協(xié)議,,子協(xié)議編號一般是DS4xx ,。

對象字典概述

表 1所示,為對象字典索引區(qū)域定義,,其中標綠色底紋的通訊對象子協(xié)議區(qū)制造商特定子協(xié)議區(qū)是用戶需要關注的區(qū)域,。

表 1  對象字典概述

Index range索引范圍

Description描述

0000h

Reserved保留

0001h to 025Fh

Data types數(shù)據(jù)類型

0260h to 0FFFh

Reserved保留

1000h to 1FFFh

Communication profile area通訊對象子協(xié)議區(qū)

2000h to 5FFFh

Manufacturer-specific profile area制造商特定子協(xié)議區(qū)

6000h to 9FFFh

Standardized profile area標準化設備子協(xié)議區(qū)

A000h to AFFFh

Network variables網(wǎng)絡變量(符合IEC61131-3)

B000h to BFFFh

System variables用于路由網(wǎng)關的系統(tǒng)變量

C000h to FFFFh

Reserved保留

通訊對象子協(xié)議區(qū)(Communication profile area)

通訊對象子協(xié)議區(qū)(Communication profile area)定義了所有和通信有關的對象參數(shù),如表 2所示,,標綠色底紋的索引范圍1000h to 1029h為通用通訊對象,,所有CANopen節(jié)點都必須具備這些索引,否則將無法加入CANopen網(wǎng)絡,。其他索引根據(jù)實際情況進行分配與定義,。

表 2  通訊對象子協(xié)議區(qū)

Index range索引范圍

Description描述

1000h to 1029h

General communication objects通用通訊對象

1200h to 12FFh

SDO parameter objects SDO參數(shù)對象

1300h to 13FFh

CANopen safety objects 安全對象

1400h to 1BFFh

PDO parameter objects PDO參數(shù)對象

1F00h to 1F11h

SDO manager objects SDO管理對象

1F20h to 1F27h

Configuration manager objects配置管理對象

1F50h to 1F54h

Program control object程序控制對象

1F80h to 1F89h

NMT master objects網(wǎng)絡管理主機對象

通用通訊對象(General communication objects)

由于通用通訊對象十分重要,NMT主站(CANopen主站)在啟動時,,通常都全部或者部分讀取所有從站中通用通訊對象中的索引,,所以所有的通用通訊對象都必須在CANopen從站中實現(xiàn),使用者也必須熟知這些索引地址與其含義,。如表 3所示,。

表 3  通用通訊對象

Index索引

Object對象

Name名字

1000h

VAR變量

Device type設備類型

1001h

VAR變量

Error register錯誤寄存器

1002h

VAR變量

Manufacturer status register制造商狀態(tài)寄存器

1003h

ARRAY數(shù)組

Pre-defined error field預定義錯誤場

1005h

VAR變量

COB-ID Sync message同步報文COB標識符

1006h

VAR變量

Communication cycle period同步通信循環(huán)周期(單位us)

1007h

VAR變量

Synchronous windows length同步窗口長度(單位us)

1008h

VAR變量

Manufacturer device name制造商設備名稱

1009h

VAR變量

Manufacturer hardware version制造商硬件版本

100Ah

VAR變量

Manufacturer software version制造商軟件版本

100Ch

VAR變量

Guard time守護時間(單位ms)

100Dh

VAR變量

Life time factor壽命因子(單位ms)

1010h

VAR變量

Store parameters保存參數(shù)

1011h

VAR變量

Restore default parameters恢復默認參數(shù)

1012h

VAR變量

COB-ID time stamp時間報文COB標識符(發(fā)送網(wǎng)絡時間)

1013h

VAR變量

High resolution time stamp高分辨率時間標識

1014h

VAR變量

COB-ID emergency緊急報文COB標識符

1015h

VAR變量

Inhibit time emergency緊急報文禁止時間(單位100us)

1016h

ARRAY數(shù)組

Consumer heartbeat time消費者心跳時間間隔(單位ms)

1017h

VAR變量

Producer heartbeat time生產(chǎn)者心跳時間間隔(單位ms)

1018h

RECORD記錄

Identity object廠商ID標識對象

1019h

VAR變量

Sync.counter overflow value同步計數(shù)溢出值

1020h

ARRAY數(shù)組

Verify configuration驗證配置

1021h

VAR變量

Store EDS存儲EDS

1022h

VAR變量

Storage format存儲格式

1023h

RECORD記錄

OS command操作系統(tǒng)命令

1024h

VAR變量

OS command mode操作系統(tǒng)命令模式

1025h

RECORD記錄

OS debugger interface操作系統(tǒng)調(diào)試接口

1026h

ARRAY數(shù)組

OS prompt操作系統(tǒng)提示

1027h

ARRAY數(shù)組

Module list模塊列表

1028h

ARRAY數(shù)組

Emergency consumer緊急報文消費者

1029h

ARRAY數(shù)組

Error behavior錯誤行為

 

制造商特定子協(xié)議(Manufacturer-specific Profile)

對象字典索引2000h to 5FFFh為制造商特定子協(xié)議,通常是存放所應用子協(xié)議的應用數(shù)據(jù),。而上文所描述的通訊對象子協(xié)議區(qū)(Communication profile area)是存放這些應用數(shù)據(jù)的通信參數(shù),。比如廣州致遠電子的XGate-COP10從站模塊規(guī)定了:

lRPDO的通訊參數(shù)存放在1400h to 15FFh 映射參數(shù)存放在1600h to 17FF數(shù)據(jù)存放為2000h 之后廠商自定義區(qū);

lTPDO的通訊參數(shù)存放在1800h to 19FFh  映射參數(shù)存放在1A00h to 1BFF數(shù)據(jù)存放為2000h 之后廠商自定義區(qū),。

對于在設備子協(xié)議中未定義的特殊功能,,制造商也可以在此區(qū)域根據(jù)需求定義對象字典對象。因此這個區(qū)域?qū)τ诓煌膹S商來說,,相同的對象字典項其定義不一定相同,。

標準化設備子協(xié)議(Standardized profile area)

標準化設備子協(xié)議,為各種行業(yè)不同類型的標準設備定義對象字典中的對象,。目前已有十幾種為不同類型的設備定義的子協(xié)議,,例如 DS401、DS402、DS406等,,其索引值范圍為0x6000~0x9FFF,。同樣,這個區(qū)域?qū)τ诓煌臉藴驶O備子協(xié)議來說,,相同的對象字典項其定義不一定相同,。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權歸版權所有權人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權者。如涉及作品內(nèi)容,、版權和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。