- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CANopen对象字典生成的办法
CANopen 对象字典生成办法
CANopen 协议是一种基于控制器局域网 (CAN)的应用层协议 该协议具有实时高效、
组网灵活和产品兼容性高等优势 CANopen 协议在国内越来越受到青睐 其应用领域也越
来越多广泛 不仅应用于过程与生产自动化等领域 还涉及到医疗、铁路、军事、太阳能等
等领域。目前CANopen 协议由 CiA (CAN in Automation)组织负责管理与推广。
对象字典是 CANopen 通信接口与应用程序之间接口 是 CANopen 协议的重要组成部分。
在 CANopen 网络中 每个标准的 CANopen 设备都有一个对象字典 用来描述 CANopen 设备的
全部功能。
一般在 CANopen 配置或者开发工程中 对象字典的创建与管理是一个不可缺少的步骤
同时也是保证CANopen 正常通讯的重要保障。如果 CANopen 系统工程相对比较简单 人工编
写对象字典是可行的。但是如果面对系统较复杂、通讯量庞大的 CANopen 工程 单纯用人工
编写对象字典是很低效的 同时也很容易出现编写错误 可能给 CANopen 工程带来潜在的危
险。为了提高对象字典的编辑效率 同时最大限度地避免对象字典的编辑错误 本文描述的
一个快速可靠的对象字典生成器 ODBuilder 为 CANopen 工程的对象字典生成与修改提供一
个很好的解决方案。
一、对象字典结构与 EDS 文件描述
1.1 对象字典结构
对象字典是一个有序的对象组 每个对象采用一个 16 位的索引值来寻址 为了允许访
问数据结构中的单个元素 同时定义了一个 8 位的子索引。对象字典中索引值
0000- 0x0FFF 是数据类型的定义 具体类型有固定的分区。而一个 CANopen 节点的对象字
典相关的常用范围在 0x1000 到 0x9FFF 之间。其中 索引 1000h-1FFFh 描述的是通信
对象 (COB) 如设备类型 错误寄存器 支持的 PDO 数量等等 该参数定义了 CANopen
接口的通信功能。索引 2000h-5FFFh 是预留给制造商定义的特定对象。索引 000h-9FFFh 是用
于标准化设备子协议的对象描述 例如 I/O 模块子协议、驱动与运动控制设备子协议、传感
器与测量设备子协议、医疗器材子协议、电梯子协议等等。CANopen 对象字典通用结构如表
1 所示。
索引 对象
0000h 未用 (Not used)
0001 - 001F 静态数据类型 (标准数据类型 如 Boolean
Integer 16)
0020 - 003F 复杂数据类型
(预定义由简单类型组合成的结构
如 PDOCommPar SDOParameter)
0040 - 005F 制造商规定的复杂数据类型
1
0060 - 007F 设备子协议规定的静态数据类型
0080 - 009F 设备子协议规定的复杂数据类型
00A0 - 0FFF 保留 (Reserved)
1000 - 1FFF 通讯子协议区域
(如设备类型 错误寄存器 支持的 PDO 数量)
2000 -
文档评论(0)