CANOpen过程数据对象报文
来源:互联网 发布:js 点击radio 触发事件 编辑:程序博客网 时间:2024/06/06 20:24
PDO被用来传输实时数据,数据从一个生产者传到一个或多个消费者,采用无确认的方式。在CANOpen网络中,一般情况下从站之间是不进行交互的,所以这个生产者或指主站。比如主站发送一个远程索取报文,多个从站接收到该报文之后开始发送应答PDO。再比如主站发送同步报文,从站接收到同步报文之后判断是否回应PDO报文。
数据长度被限制为1~8字节。这就要看一下PDO报文格式了,如下图PDO请求(左),PDO数据报文(右):
PDO数据内容只有它映射参数对象定义,生产者和消费者知道这个PDO的数据内容
首先在CANOpen字典中,需要定义两个PDO参数,通信参数和映射参数。
从站接收到PDO远程请求之后,通过对比PDO通信参数中所指定的COB-ID和接收消息中COB-ID来确定是否回应主站并确定这是第几个PDO通道,并通过映射参数得知该通道要回应什么样的值。
同样,主站也是根据通信参数和映射参数来确定是否接收并未将该值存放至何处。
通信参数:
映射参数:
在PDO通信参数中:
PDO可以指定禁止时间,避免由于高优先级信息的数据量太大,始终占用总线。而使其它优先级较低的数据无力竞争总线的问题。禁止时间单位100us。
PDO可以指定一个事件定时周期,当超过定时 时间后,一个PDO传输可以被触发(不需要触发位)。事件周期由16位无符号整数定义,单位1ms。
PDO传输模式
异步触发模式
远程索取模式
同步触发模式
同步周期模式
同步非周期模式
注:PDO的同步传输模式:同步传输(通过接收SYNC对象实现同步),同步传输又可分为非周期和周期传输,非周期传输是由远程帧预触发或者由设备子协议中规定的对象特定事件预触发传送。周期传输则是通过接收同步对象(SYNC)来实现
PDO的异步传输模式:其触发方式可有两种,第一种是通过发送与PDO的COB-ID相同的远程帧来触发PDO的发送(传输类型为253),第二种是由设备子协议中规定的对象特定事件来触发(例如,定时传输,数据变化传输等,传输类型为255)
- CANOpen过程数据对象报文
- CANOpen服务数据对象报文
- CANopen协议报文处理
- CANOpen报文类型
- CANopen协议报文处理
- CANOpen生命保护/心跳报文
- CANOpen基本对象字典
- CANopen对象字典
- CANopen对象字典
- CANOpen的几种操作以及数据
- ldp报文协商过程
- 8583 报文解析过程
- IP数据报文格式
- XML报文转JAVA对象-JAVA对象转XML报文
- xml 报文转对象方法
- CANOpen学习指南
- CANOpen学习指南
- CANOpen学习指南
- EventBus使用
- POJ---1611 The Suspects【并查集】
- VS+Qt+PCL 实战:CloudViewer
- linux开机流程与主要启动记录区(MBR)
- Nginx日志切割
- CANOpen过程数据对象报文
- menu不显示icon图标的问题
- 题目1015:还是A+B 九度OJ
- 高通平台学习----常用缩写(持续更新中)
- java 调用apache.commons.codec的包简单实现MD5加密
- 重载运算符 前加后加
- HDU 1176 免费馅饼(DP)
- Android中Spannable的用法
- CANOpen服务数据对象报文