1 / 29

制定一个主 / 从通讯协议

制定一个主 / 从通讯协议. Version 1.10 版 2006 年 5 月. 目录. 协议设计要素分析 协议组成 主 / 从通讯协议 CAN 网络编程与调试 应用实例. 协议设计要素分析. 构建一个网络,需要解决的关键技术问题有: 总线传输信息的速率、容量、优先等级、节点容量等技术问题; 高电磁干扰环境下的可靠数据传输; 确定最大传输时的延时大小; 网络的容错技术; 网络的监控和故障诊断功能. 协议设计要素分析. 在 CAN 总线协议的设计过程中,需要考虑以下主要的因素: CAN 报文的分配 数据通讯的实现 网络管理 设备建模.

gelsey
Download Presentation

制定一个主 / 从通讯协议

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 制定一个主/从通讯协议 Version 1.10版 2006年5月

  2. 目录 • 协议设计要素分析 • 协议组成 • 主/从通讯协议 • CAN网络编程与调试 • 应用实例

  3. 协议设计要素分析 • 构建一个网络,需要解决的关键技术问题有: • 总线传输信息的速率、容量、优先等级、节点容量等技术问题; • 高电磁干扰环境下的可靠数据传输; • 确定最大传输时的延时大小; • 网络的容错技术; • 网络的监控和故障诊断功能

  4. 协议设计要素分析 • 在CAN总线协议的设计过程中,需要考虑以下主要的因素: • CAN报文的分配 • 数据通讯的实现 • 网络管理 • 设备建模

  5. CAN报文的分配 • CAN报文的分配 • 报文ID的分配 • 报文标识符分配的方法被认为是基于CAN-bus 的系统的主要结构元素 • 报文相关的优先权和报文的等待时间 • 报文滤波适用性、合理的通讯结构适用性和标识符使用的效率 • 标准帧:11位ID • 扩展帧:29位ID

  6. CAN报文的分配 • CAN报文的分配 • CAN报文数据的分配 • CAN报文为短帧报文,最多可以传送8个数据字节 • 实际应用中往往需要传送大于8个字节的数据,因此对于报文数据部分的分配需要考虑对于分段传送的需要 • 报文数据部分的合理使用:服务数据和应用数据

  7. CAN报文的分配 • 报文格式的定义 • 报文ID的定义 • CAN2.0A 帧:11位ID • CAN2.0B 帧:29位ID • 报文数据的定义 • 每帧报文最多最多8bytes数据

  8. CAN报文格式 • CAN2.0B 帧格式

  9. 数据通讯模式 • 数据通讯的方式规定了网络中各设备之间数据交换的规则 • 主从/多主 • 命令/响应模式 • 在一般的通讯过程中常采用命令/响应的方式 • 在基于命令/响应模式的通讯网络中,由主控设备发送命令帧,受控设备接收到命令帧以后向主控设备发送响应帧,从而实现数据交换

  10. 数据通讯模式 • 命令/响应模式

  11. 数据通讯模式 • 数据通讯模式的确定 • CAN总线的特性: • 多主结构,根据优先权对总线进行访问 • 无破坏性的基于优先权的逐位仲裁 • 通讯效率和总线利用率

  12. 数据通讯模式 • 灵活的通讯模式

  13. 网络管理 • 对于整个网络,一些突发的事件必须处理,例如节点的故障 • 网络中的错误或者异常必须能够检测和显示,并且通过某种方式进行处理 • 节点网络状态(启动、通讯异常时动作) • 提供简单的节点监控和有效的错误处理措施,可以在一定程度上提高系统的通讯可靠性,并利于系统的维护

  14. 设备建模 • 在网络中除了定义通讯以外,还要求对于网络中相似设备的功能类型进行定义,满足对于设备的互用性和可交换性的需求 • 如何制定标准设备的规范 • 设备子协议Device Profile 的原则 • 设备必备功能 • 设备可选功能 • 扩展性的考虑

  15. 协议组成 • 协议的组成部分 • 报文传输协议 • 报文格式定义 • 设备的定义

  16. 主/从通讯协议 • 主/从通讯协议,在一般简单网络中是一个可靠易于实现的协议模式 • 通讯报文数据结构通常定义

  17. 主/从通讯协议:示例 • CAN报文格式(标准帧)定义: • CAN ID分配: • CAN 报文数据定义

  18. Example • 演示一个实际的CAN-bus应用单元: • 采用CAN2.0B帧,29位ID码,响应命令时无返回帧。 • 响应的目的地址码(ID): 0x00 00 00 33 • 命令码(CMD): 00 启动设备,有显示(声或光),返回帧无; 01 停止设备,关显示(声或光),返回帧无; 02 读取参数,返回帧有,此命令帧保留未用。

  19. Notes • 需要仔细考虑ID部分的合理分配; • 兼容多种通讯方式(点对点、广播); • 超过8字节数据的传输使用分帧方式; • 应用层协议会影响验收滤波器设置; • 总线的通讯效率与应用层有关。

  20. CAN网络编程与调试 • CAN网络编程 • 主控节点 • PLC • 工控PC • 受控节点 • 节点的硬件设计 • 节点的软件设计

  21. CAN网络编程与调试 • CAN网络调试 • 单个节点的调试 • 软硬件的调试 • CAN通讯的调试 • 硬件设备的应用(示波器、逻辑分析仪)

  22. CAN网络编程与调试 • 网络通讯的调试 • 网络环境的测试 • 严苛环境下的测试(高总线负载、强干扰环境、故障的设定) • CANalyst分析仪的应用或者其他工具的应用

  23. CAN网络编程与调试 • 网络故障 • 硬件故障 • 设计原因 • 其他因素 • 软件故障 • 设计原因 • 其他因素 • 网络拓扑 • 总线拓扑 • 线缆的选择

  24. 通讯协议的选择 • 通讯协议的选择 • 根据需要选择合适的通讯协议 • 标准的协议:DeviceNet CANopen • 自定义协议 • 标准协议的优点 • 开发工具及资料丰富,市场认知度高 • 开发周期较长,开发难度较高 • 自定义协议 • 与实际系统应用密切相关,易于实现 • 局限性:厂家自定义,不宜推广

  25. Modbus协议 • Modbus协议介绍 • Modbus就是工业控制的网络协议中的一种 • Modbus协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式

  26. Modbus协议 • 当在一Modbus网络上通信时,此协议决定了每个控制器需要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus协议发出。 • 在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。 Modbus协议支持主/从通讯方式,同时也支持使用对等技术通讯

  27. Modbus协议 • Modbus协议帧结构 • 问题:如何将Modbus协议应用到CAN总线中?

  28. 自定义协议实例 • 协议帧格式

  29. 谢谢!

More Related