如何规范通讯数据类型如何规范通讯数据类型摘要:当前的通讯方式各式各样,通讯协议也是五花八门,如何让通讯更加稳定可靠,这是很多工程师的棘手问题.
本文将运用国际规范的通讯标准解说其通讯协议的定义方式.
过程数据对象PDO(Processdataobject)PDO属于过程数据用来传输实时数据,即单向传输,无需接收节点回应CAN报文来确认,从通讯术语上来说是属于"生产消费"模型PDO,如图1所示,就像食品销售柜台,生产者摆出"食品",但只有"需要"的消费者才会来买,没有指向性.
图1生产者消费者模型数据长度被限制为1~8字节.
最多只要1帧就可以把一条信息或者一个变量传递结束.
PDO的CAN-ID定义PDO通信比较灵活,广义上只要符合PDO范围内的所有CANID都可以作为节点自身的TPDO或者RPDO使用,也称为COB-ID,不受功能码和Node-ID限制,如图2所示.
图2PDO的CANID规则而在PDO预定义中,人为规定了TPDO和RPDO,规定了Node-ID在PDO中的位置,规定了PDO的编号,如表1所示.
表1PDO的CAN-ID定义PDO分为TPDO(发送PDO)和(接收RPDO),发送和接收是以CANopen节点自身为参考(如果CAN主站或者其他从站就相反).
TPDO和RPDO分别有4个数据对象,每种数据对象就是1条CAN报文封装,这些都是数据收发的容器,就像图3所示,水果箩筐为使用者准备好,就看使用者在里面放什么水果了.
图3PDO和SDO就像水果箩筐当然,如果某个节点需要传递的资源特别多,则有出现例如TPDO5之类的数据对象,而它们的CAN-ID定义就需要打破预定义的规则,比如我们可以定义Node-ID为1的节点中TPDO5是182h,这里的PDO的COB-ID中的低7位不再是表示Node-ID.
其实所有的PDO的COB-ID与Node-ID无必然规则上的联系.
PDO的传输形式PDO的两种传输方式:同步传输和异步传输.
如图4所示,1、2为异步传输,3、4为同步传输.
图4PDO的传输形式异步传输(由特定事件触发)其触发方式可有两种,第一种是由设备子协议中规定的对象特定事件来触发(例如,定时传输,数据变化传输等).
第二种是通过发送与PDO的COB-ID相同的远程帧来触发PDO的发送.
目前应用中的异步传输基本都采用第一种.
同步传输(通过接收同步对象实现同步)同步传输就是通过同步报文让所有节点能在同一时刻进行上传数据或者执行下达的应用指令,可以有效避免异步传输导致的应用逻辑混乱和总线负载不平衡的问题.
一般发送同步报文的节点是NMT主机.
同步传输又可分为周期传输(循环)和非周期传输(无循环).
周期传输则是通过接收同步对象(SYNC)来实现,可以设置1~240个同步对象触发.
非周期传输是由远程帧预触发或者由设备子协议中规定的对象特定事件预触发传送.
PDO的通信参数PDO通信参数,定义了该设备所使用的COB-ID、传输类型、定时周期等.
RPDO通讯参数位于对象字典索引的1400hto15FFh,TPDO通讯参数位于对象字典索引的1800hto19FFh.
每条索引代表一个PDO的通信参数集,其中的子索引分别指向具体的各种参数.
如表2所示.
表2PDO的通信参数Numberofentries参数条目数量:即本索引中有几条参数;COB-ID:即这个PDO发出或者接收的对应CAN帧ID;发送类型:即这个PDO发送或者接收的传输形式,通常使用循环同步和异步制造商特定事件较多;Inhibittime生产禁止约束时间(1/10ms):约束PDO发送的最小间隔,避免导致总线负载剧烈增加,比如数字量输入过快,导致状态改变发送的TPDO频繁发送,总线负载加大,所以需要一个约束时间来进行"滤波",这个时间单位为0.
1ms;Eventtimer事件定时器触发的时间(单位ms):定时发送的PDO,它的定时时间,如果这个时间为0,则这个PDO为事件改变发送.
SYNCstartvalue同步起始值:同步传输的PDO,收到诺干个同步包后,才进行发送,这个同步起始值就是同步包数量.
比如设置为2,即收到2个同步包后才进行发送.
PDO的映射参数PDO映射参数是初学者学习CANopen时的一个难点,它包含了一个对象字典中的对象列表,这些对象映射到相应的PDO,其中包括数据的长度(单位,位),对于生产者和消费者都必须要知道这个映射参数,才能够正确的解释PDO内容.
就是将通信参数、应用数据和具体CAN报文中数据联系起来.
RPDO通讯参数1400hto15FFh,映射参数1600hto17FFh,数据存放为2000h之后厂商自定义区域;TPDO通讯参数1800hto19FFh,映射参数1A00hto1BFFh,数据存放为2000h之后厂商自定义区域.
为了更加直观地表现映射,表3模拟TPDO1,将参数、应用数据、CAN报文数据联合起来展示,不同的映射采用不同的颜色.
表3PDO在对象字典中的映射关系CANtransmission(CAN发送报文)TPDO1(CAN-ID=181h)Datafield:数据域4个字节表4TPDO的数据域请读者阅读3遍以上,如果还是无法理解.
请打开广州致远电子的CANopen主站卡管理软件CANManagerforCANopen,导入XGate-COP10模块从站协议栈模块的EDS文件,来真实感受一下.
点击配置从站,"高级"中进行感性认识.
USBCAN-E-P与PCI-5010-P主站卡可为PC机拓展出CANOpen通讯接口,实现CANOpen协议的数据通信.
作为CANOpen网络的管理者,实现全部的CANOpen网络管理(NMT)功能.
justhost怎么样?justhost服务器好不好?JustHost是一家成立于2006年的俄罗斯服务器提供商,支持支付宝付款,服务器价格便宜,200Mbps大带宽不限流量,支持免费更换5次IP,支持控制面板自由切换机房,目前JustHost有俄罗斯6个机房可以自由切换选择,最重要的还是价格真的特别便宜,最低只需要87卢布/月,约8.5元/月起!总体来说,性价比很高,性价比不错,有需要的朋友可以...
buyvm正式对外开卖第四个数据中心“迈阿密”的块存储服务,和前面拉斯维加斯、纽约、卢森堡一样,依旧是每256G硬盘仅需1.25美元/月,最大支持10T硬盘。配合buyvm自己的VPS,1Gbps带宽、不限流量,在vps上挂载块存储之后就可以用来做数据备份、文件下载、刷BT等一系列工作。官方网站:https://buyvm.net支持信用卡、PayPal、支付宝付款,支付宝付款用的是加元汇率,貌似...
onevps最新消息,为了更好服务中国区用户:1、网站支付方式新增了支付宝,即将增加微信;原信用卡、PayPal方式不变;(2)可以切换简体中文版网站,在网站顶部右上角找到那个米字旗,下拉可以换中国简体版本。VPS可选机房有:中国(香港)、新加坡、日本(东京)、美国(纽约、洛杉矶)、英国(伦敦)、荷兰(阿姆斯特丹)、瑞士(苏黎世)、德国(法兰克福)、澳大利亚(悉尼)。不管你的客户在亚太区域、美洲区...
异步传输为你推荐
0.21网易yeah美要求解锁iPhone怎么用爱思手机助手解锁苹果手机?360防火墙在哪里设置360安全防护中心在哪瑞东集团道恩集团的集团简介zhuo爱大涿爱— 金鱼花火 、 歌词给我翻译过来。!免费代理加盟怎样免费加盟代理淘宝shopex模板SHOPEX模板 修改整体宽度帝国cms教程如何使用帝国CMS模板discuz论坛申请这个论坛是在哪里申请的dedecmsdedecms真那么好用,那么强吗
便宜域名注册 服务器配置技术网 外国服务器 哈喽图床 卡巴斯基永久免费版 好看qq空间 七夕快乐英文 双十一秒杀 91vps 卡巴斯基试用版 怎么建立邮箱 超级服务器 1元域名 ebay注册 英雄联盟台服官网 学生服务器 阵亡将士纪念日 apnic 存储服务器 shuangcheng 更多