通信功能与总线接口附件-CANopen协议简介与应用开发.pptVIP

通信功能与总线接口附件-CANopen协议简介与应用开发.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通信功能与总线接口附件-CANopen协议简介与应用开发

* * * * * * * * * * * * * * * * * * * * * * 对象字典(Object Dictionary)是CANopen协议最核心的概念。 通信子协议区对每个节点通用的 * * 对象字典的结构确定下来之后,还要定义对象字典的接口,即与之配套的寻址和访问函数,这样做的好处是使对象字典封闭起来,有效 * 各种状态的任务说一下 * * 由前所述,CANopen提供的各项服务依赖的参数都存储在对象字典中,管理者要想读取网络节点服务的具体配置,或者配置服务的参数,须提供远程访问对象字典的功能模块。 * 详细规定了5个协议,说明重要性 * * 系统软件总体框架 CAN驱动模块 状态管理和 反馈模块 实时过程数 据传输模块 参数读取 和配置模块 紧急事件 处理模块 对象字典 模块 CANopen软件模块组成 用户 应用 程序 2.3 软件功能模块设计 CAN 驱 动模块 CAN控制 器初始化 模块 CAN中 断处理 模块 CAN报 文发送 模块 2.3.1 CAN驱动程序 2.3.2 对象字典 对象字典是CANopen的核心概念,它存储了节点的所有信息。是一个有序的对象组,每个对象采用一个16位的索引值来寻址,同时定义了一个8位的子索引用于访问数据结构中的单个元素。 对象字典实体结构 对象字典功能框图 对象字典 实体 读函数 写函数 对象字典模块 0001H-0FFFH数据类型定义区(可选) 1000H-1FFFH通信子协议区(必要) 2000H-5FFFH制造商特定协议区(可选) 6000H-9FFFH标准设备子协议区(必要) 存储电流电压输入信号、电压控制信号、启/停、手/自动…. 实现方案 单片机计算资源紧缺,采用静态结构体数组 结构简单,易于实现 访问效率高 对象字典接口函数 getODentry、setODentry 与对象字典配套使用 访问指定对象 控制访问行为,杜绝非法访问,防止数据损坏 2.3.3 状态控制 在节点内部运行着一个状态机,状态转换由管理者控制,节点在不同的状态下执行不同的任务,各个功能模块的使能情况也不同。 1 启动远程节点 2 暂停远程节点 3 进入预操作状态 4 重置节点 5 重置节点通信 6 初始化完成后自动进入预操作状态 状态转换过程 功能可用性控制 调用相应的功能模块时检查功能使能表。 只有服务被使能,调用才生效。 从节点上电后在状态机里运行,状态受管理者控制,设计从节点的软件总体流程如下: 2.3.4 状态反馈 节点可以通过一种叫做心跳的方式周期性地向主站汇报当前的状态。 生产者/消费者模式 检测节点是否在线 监视节点状态 定时器中断处理发送,定时值取自对象字典。 2.3.5 实时过程数据传输 引入CANopen的目的之一:更规范和有效地传输实时过程数据。 两个问题: I/O数据什么时候被传输? 数据如何封装? 利用CANopen协议中的PDO(Process Data Object )功能 基于生产者/消费者模式。 多种传输模式。 数据长度被限制为1~8字节。 数据内容由映射参数对象决定,双方都知道。 多种传输模式 同步周期 异步 同步 同步非周期 远程帧预触发 事件预触发 远程帧触发 事件触发 映射参数 包含一个对象字典中对象的列表,这些对象映射到PDO报文里,包括对象的数据长度。生产者和消费者必须知道这个映射,才能解释PDO报文的内容。 实时过程数据传输模块组成 接收PDO 报文模块 发送PDO 报文模块 建立PDO 报文模块 实时过程数据传输模块 CAN驱动模块 建立PDO函数 被发送和接收模块调用。 根据映射参数表建立PDO报文。 发送和接收模块 实现PDO报文的各种传输方式。 处理收到的PDO报文。 发送PDO 模块 同步 周期 发送功能 同步 远程帧 预触发 发送功能 异步 事件 触发 发送功能 接收PDO 模块 同步 事件 预触发 发送功能 PDO数 据处理 功能 异步 远程帧 触发 发送功能 2.3.6 参数读取和设置 管理者如何配置和读取节点服务的参数? 利用CANopen协议的SDO (Service Data Object)功能。 对象字典的远程访问接口 用来配置和读取节点的参数 基于客户端/服务器模式 对象字典安全要求高,数据项长度不一,访问须遵循一定的规范。 SDO服务定义了5个协议:启动域下载 ,域分段下载,启动域上传 ,域分段上传和域传送中止。 访问协议体现在SDO报文命令字中。 SDO服务实现 关键是解析SDO命令字。命令字前三位只有0、1、2、3、4这几种类型,对其进行分类并按照协

文档评论(0)

pangzilva + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档