制定一个主从通讯协议-Read

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

主/从通讯协议
主/从通讯协议,在一般简单网络中是一个可靠易 于实现的协议模式
通讯报文数据结构通常定义
主/从通讯协议:示例
CAN报文格式(标准帧)定义:
CAN ID分配:
ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0
源地址
功能码
CAN 报文数据定义
报文格式的定义
报文ID的定义
CAN2.0A 帧:11位ID CAN2.0B 帧:29位ID
报文数据的定义
每帧报文最多最多8bytes数据
CAN报文格式
CAN2.0B 帧格式
ID28 ID27 ID26 ID25 ID24 ID23 ID22 ID21 ID20 ID19 ID18 SRR IDE ID17 ID16 ID15 rev
Modbus协议
Modbus协议帧结构
地址码
8 bits
功能码
8 bits
数据部分
N×8bits
校验
16 bits
问题:如何将Modbus协议应用到CAN总线 中?
自定义协议实例
协议帧格式
ID10 ID9 ID8 ID7 ID6 ID5 ID4
目的地址
Fend
Fcnt
DLC3 ~ DLC0
、故障的设定) CANalyst分析仪的应用或者其他工具的应用
CAN网络编程与调试
网络故障
硬件故障
设计原因 其他因素
软件故障
设计原因 其他因素
网络拓扑
总线拓扑 线缆的选择
通讯协议的选择
通讯协议的选择
根据需要选择合适的通讯协议
标准的协议:DeviceNet CANopen 自定义协议
制定一个主从通讯协议Read
2020年7月13日星期一
目录
协议设计要素分析 协议组成 主/从通讯协议 CAN网络编程与调试 应用实例
协议设计要素分析
构建一个网络,需要解决的关键技术问题 有:
总线传输信息的速率、容量、优先等级、节点 容量等技术问题;
高电磁干扰环境下的可靠数据传输; 确定最大传输时的延时大小; 网络的容错技术; 网络的监控和故障诊断功能
协议设计要素分析
在CAN总线协议的设计过程中,需要考虑 以下主要的因素:
CAN报文的分配 数据通讯的实现 网络管理 设备建模
CAN报文的分配
CAN报文的分配
报文ID的分配
报文标识符分配的方法被认为是基于CAN-bus 的系 统的主要结构元素
报文相关的优先权和报文的等待时间 报文滤波适用性、合理的通讯结构适用性和标识符
使用的效率 标准帧:11位ID 扩展帧:29位ID
CAN报文的分配
CAN报文的分配
CAN报文数据的分配
CAN报文为短帧报文,最多可以传送8个数据字节 实际应用中往往需要传送大于8个字节的数据,因此
对于报文数据部分的分配需要考虑对于分段传送的 需要 报文数据部分的合理使用:服务数据和应用数据
CAN报文的分配
通讯效率和总线利用率
数据通讯模式
灵活的通讯模式
网络管理
对于整个网络,一些突发的事件必须处理 ,例如节点的故障
网络中的错误或者异常必须能够检测和显 示,并且通过某种方式进行处理
节点网络状态(启动、通讯异常时动作)
提供简单的节点监控和有效的错误处理措 施,可以在一定程度上提高系统的通讯可 靠性,并利于系统的维护
设ห้องสมุดไป่ตู้建模
在网络中除了定义通讯以外,还要求对于 网络中相似设备的功能类型进行定义,满 足对于设备的互用性和可交换性的需求
如何制定标准设备的规范
设备子协议Device Profile 的原则 设备必备功能 设备可选功能 扩展性的考虑
协议组成
协议的组成部分
报文传输协议 报文格式定义 设备的定义
CAN网络编程与调试
CAN网络编程
主控节点
PLC 工控PC
受控节点
节点的硬件设计 节点的软件设计
CAN网络编程与调试
CAN网络调试
单个节点的调试
软硬件的调试 CAN通讯的调试 硬件设备的应用(示波器、逻辑分析仪)
CAN网络编程与调试
网络通讯的调试
网络环境的测试 严苛环境下的测试(高总线负载、强干扰环境
主从/多主 命令/响应模式
在一般的通讯过程中常采用命令/响应的方式 在基于命令/响应模式的通讯网络中,由主控设
备发送命令帧,受控设备接收到命令帧以后向 主控设备发送响应帧,从而实现数据交换
数据通讯模式
命令/响应模式
数据通讯模式
数据通讯模式的确定
CAN总线的特性:
多主结构,根据优先权对总线进行访问 无破坏性的基于优先权的逐位仲裁
Modbus协议
当在一Modbus网络上通信时,此协议决定了每个 控制器需要知道它们的设备地址,识别按地址发 来的消息,决定要产生何种行动。如果需要回应 ,控制器将生成反馈信息并用Modbus协议发出。
在其它网络上,包含了Modbus协议的消息转换为 在此网络上使用的帧或包结构。这种转换也扩展 了根据具体的网络解决节地址、路由路径及错误 检测的方法。 Modbus协议支持主/从通讯方式, 同时也支持使用对等技术通讯
标准协议的优点
开发工具及资料丰富,市场认知度高 开发周期较长,开发难度较高
自定义协议
与实际系统应用密切相关,易于实现 局限性:厂家自定义,不宜推广
Modbus协议
Modbus协议介绍
Modbus就是工业控制的网络协议中的一种
Modbus协议定义了一个控制器能认识使用的 消息结构,而不管它们是经过何种网络进行通 信的。它描述了一控制器请求访问其它设备的 过程,如何回应来自其它设备的请求,以及怎 样侦测错误并记录。它制定了消息域格局和内 容的公共格式
DATA0 DATA1 DATA2 DATA3 DATA4 DATA5 DATA6 DATA7
分段 目标 标识 地址
附加参数
Example
演示一个实际的CAN-bus应用单元:
采用CAN2.0B帧,29位ID码,响应命令时无返回帧。 响应的目的地址码(ID):
0x00 00 00 33
命令码(CMD):
Data Length Code (0 ~ 8)
ID3 ID2 ID1 ID0 Function code
数据部分( 0~8字节 )
00 启动设备,有显示(声或光),返回帧无; 01 停止设备,关显示(声或光),返回帧无; 02 读取参数,返回帧有,此命令帧保留未用。
Notes
需要仔细考虑ID部分的合理分配; 兼容多种通讯方式(点对点、广播); 超过8字节数据的传输使用分帧方式; 应用层协议会影响验收滤波器设置; 总线的通讯效率与应用层有关。
ID14 ID13 ID12 ID11 ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0 RTR 0/1
DLC3 ~ DLC0 Data Length Code (0 ~ 8)
数据部分( 0~8字节 )
数据通讯模式
数据通讯的方式规定了网络中各设备之间 数据交换的规则
相关文档
最新文档