CAN笔记(18) 对象字典

  • 1. 对象字典
  • 2. 对象字典概述
  • 3. 通讯对象子协议区
  • 4. 通用通讯对象
  • 5. 制造商特定子协议区
  • 6. 标准化设备子协议区

1. 对象字典

CANOpen 对象字典(OD: Object Dictionary) 是 CANopen 协议最为核心的概念
所谓的对象字典就是一个有序的对象组
描述了对应 CANOpen 节点的所有参数,包括通讯数据的存放位置也列入其索引
这个表变成可以传递形式就叫做 EDS 文件(电子数据文档 Electronic Data Sheet)
每个 CANOpen 设备都有一个对象字典
使用电子数据文档(EDS 文件)来记录这些参数,而不需要把这些参数记录在纸上

对象字典,就像体检表,具备这个人每个功能的参数,便于用人单位(主站)进行合理分配工作

每个对象采用一个 16 位的索引值来寻址
这个索引值通常被称为索引,其范围在 0x0000 到 0xFFFF 之间

为了避免数据大量时无索引可分配,所以在某些索引下也定义了一个 8 位的索引值
这个索引值通常被称为子索引,其范围是 0x00 到 0xFF 之间

每个索引内具体的参数,最大用 32 位的变量来表示,即 Unsigned32,四个字节

对于 CANOpen 网络中的主节点来说
不需要对 CANOpen 从节点的每个对象字典项都访问

CANOpen 对象字典中的项由一系列子协议来描述
子协议为对象字典中的每个对象都描述了它的功能、名字、索引、子索引、数据类型
以及这个对象是否必需、读写属性等等
这样可保证不同厂商的同类型设备兼容

CANOpen 协议的核心描述子协议是 DS301,也就是之前提及的CiA 301
其包括了 CANOpen 协议应用层及通信结构描述
其它的协议子协议都是对 DS301 协议描述文本的补充与扩展
在不同的应用行业都会起草一份 CANOpen 设备子协议,子协议编号一般是 DS4xx


2. 对象字典概述

对象字典索引区域定义

其中标绿色底纹的 通讯对象子协议区制造商特定子协议区 是用户需要关注的区域


3. 通讯对象子协议区

通讯对象子协议区(Communication profile area)定义了所有和通信有关的对象参数

标绿色底纹的索引范围 1000h~1029h为 通用通讯对象
所有 CANopen 节点都必须具备这些索引,否则将无法加入 CANopen 网络

而其他索引根据实际情况进行分配与定义


4. 通用通讯对象

由于通用通讯对象十分重要
NMT 主站(CANOpen 主站) 在启动时, 通常都全部或部分读取所有从站中通用通讯对象中的索引
所以,所有的通用通讯对象都必须在CANOpen 从站中实现

必须熟知这些索引地址与其含义


5. 制造商特定子协议区

对象字典索引 2000h~5FFFh为制造商特定子协议(Manufacturer-specific Profile)
通常是存放所应用子协议的应用数据

而上文所描述的通讯对象子协议区存放这些应用数据的通信参数

对于在设备子协议中未定义的特殊功能,制造商也可以在此区域根据需求定义对象字典对象
因此这个区域对于不同的厂商来说,相同的对象字典项其定义不一定相同


6. 标准化设备子协议区

标准化设备子协议,为各种行业不同类型的标准设备定义对象字典中的对象
目前已有十几种为不同类型的设备定义的子协议,例如 DS401、 DS402、 DS406 等
其索引值范围为 0x6000~0x9FFF

同样,这个区域对于不同的标准化设备子协议来说,相同的对象字典项其定义不一定相同


参考:

《CANopen 轻松入门》


相关推荐:

CAN笔记(17) 预定义报文ID
CAN笔记(16) CANOpen简介
CAN笔记(15) STM32-M4 CAN通讯
CAN笔记(14) STM32-M4 寄存器
CAN笔记(13) STM32-M4 bxCAN


谢谢!

CAN笔记(18) 对象字典相关推荐

  1. Hadoop学习笔记—18.Sqoop框架学习

    Hadoop学习笔记-18.Sqoop框架学习 一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据 ...

  2. Ext.Net学习笔记18:Ext.Net 可编辑的GridPanel

    Ext.Net GridPanel 有两种编辑模式:编辑单元格和编辑行. 单元格编辑: 行编辑: 可以看出,单元格编辑的时候,只有单元格会进入编辑模式,而行编辑模式中则对编辑行的所有可编辑字段统一进行 ...

  3. 华为HCIA-datacom 学习笔记18——SDN与NFV概述

    华为HCIA-datacom 学习笔记18--SDN与NFV概述 SDN与NFV概述 1.计算机时代的演进 1.1大型机 专门的硬件 专门的操作系统 专门的应用.(稳定性能好,但封闭) 1.2小型机 ...

  4. 2020-4-12 深度学习笔记18 - 直面配分函数 5 ( 去噪得分匹配,噪声对比估计NCE--绕开配分函数,估计配分函数)

    第十八章 直面配分函数 Confronting the Partition Function 中文 英文 2020-4-8 深度学习笔记18 - 直面配分函数 1 ( 配分函数概念,对数似然梯度) 2 ...

  5. Go语言编程笔记18:软件测试

    Go语言编程笔记18:软件测试 图源:wallpapercave.com 软件测试也是软件开发的重要组成部分,本篇文章将探讨如何使用Go的标准库和第三方库对程序进行测试. testing Go的标准库 ...

  6. Python学习笔记18:实操案例十五(记录用户登录日志,模拟淘宝客服自动回复)

    Python学习笔记18:实操案例十五(记录用户登录日志,模拟淘宝客服自动回复) 网课传送门:https://www.bilibili.com/video/BV1Sw411Z779?p=168& ...

  7. [网络安全学习篇18]:ACL及实验(千峰网络安全视频笔记 18 day)

    引言:我的系列博客[网络安全学习篇]上线了,小编也是初次创作博客,经验不足:对千峰网络信息安全开源的视频公开课程的学习整理的笔记整理的也比较粗糙,其实看到目录有300多集的时候,讲道理,有点怂了,所以 ...

  8. 【计算机网络学习笔记18】防火墙技术、入侵检测技术

    [计算机网络学习笔记18]防火墙技术.入侵检测技术 一.防火墙 防火墙 (firewall) :一种访问控制技术,通过严格控制进出网络边界的分组,禁止任何不必要的通信,从而减少潜在入侵的发生,尽可能降 ...

  9. 不是方阵有逆矩阵吗_吴恩达机器学习笔记18逆矩阵、矩阵转置

    本文是吴恩达<机器学习>视频笔记第18篇,对应第1周第18个视频. "Linear Algebra review(optional)--Inverse and transpose ...

  10. 影像组学视频学习笔记(18)-使用MRIcroGL软件格式转换、勾画ROI、Li‘s have a solution and plan.

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(18)主要介绍: 使用MRIcroGL软件进行格式转换.勾画ROI并保存为mask文件 MRIcroGL 是一款免费.开源的轻量级软件: ...

最新文章

  1. redis和memcached的区别(总结)
  2. 它身上的飞秋 战衣给他添上了英武的气势
  3. 解决Ajax中的缓存问题
  4. php公众号客服消息图文,微信公众号开发系列-发送客服消息(示例代码)
  5. SQL2008数据类型
  6. java找三个数最大_用Java程序找最大的数字(4)
  7. 中国双导体发热电缆行业市场供需与战略研究报告
  8. 计算机过程控制系统李向舜pdf,2010-2011学年一学期(16-19周)考试安排表(1)
  9. 记因循环依赖的解决方案
  10. 解决xshell6评估过期,需采购问题
  11. 201621123031 《Java程序设计》第13周学习总结
  12. vasp能装在window系统里吗_vasp 5.4.4 在win10/Ubuntu 18.04上的安装
  13. Line3d安装;bundler+pmvs;opencv_contrib
  14. office2016鼠标右键没有新建word等
  15. 叶酸修饰的羧化石墨烯氧化物,Folic acid-graphene(COOH)
  16. TypeError: Cannot set properties of undefined (setting ‘xx‘)
  17. 2015——致我那终将逝去的青春
  18. Windows XP Professional With SP3 VOL[MSDN原版]+正版密钥
  19. ClusterMap:用于空间基因表达的多尺度聚类分析 | 空间转录组分析工具推荐
  20. Synchronized代码块锁的是什么?全局锁?对象锁?

热门文章

  1. 在C# 获取当前应用网址
  2. 如何使用ILSpy 把发布版本反编译成源码
  3. lucene 索引中文档的属性建立与不建立带来的影响总结
  4. Linux网络服务-Web Service之【apache的功能、安装、配置文件介绍以及实验实例】(三)...
  5. mysql开机自启动设置
  6. mysql 多机房灾备,TFS多机房容灾策略
  7. Mysql 如何通过binlog日志恢复数据
  8. JavaScript对象的深入理解 (一)
  9. Hoshin Kanri在丰田的应用
  10. 使用WIM格式进行WES 7 (windows embedded standard )的安装