网站地图
原理与结构
原理与结构
您的位置: 首页 >> 原理与结构 >> 德敏哲CANopen位移传感器19系列PDO输出格式详解

德敏哲CANopen位移传感器19系列PDO输出格式详解

发布时间:2026-07-30
德敏哲CANopen位移传感器19系列PDO输出格式详解

德敏哲CANopen位移传感器(19 系列磁致伸缩式)走的是标准 CANopen 那套,符合 CANopen DS-406 V3.1(通信部分按 CiA DS301)。报文就三类:PDO 传实时数据、SDO 改配置、SYNC 与应急和节点保护管节奏和故障。现场对接卡住,多半卡在不知道那 8 个字节里装了什么、COB-ID 怎么算出来。下面把输出格式一层层拆开,对象字典给到具体索引,照着对就能通。

磁致伸缩位移传感器
图:磁致伸缩位移传感器产品实拍(易测电气)

德敏哲CANopen位移传感器在总线上跑的哪三类报文

  • 过程数据对象 PDO:实时数据,一帧最多 8 字节,装磁环的位置、速度和 CAM 信息。一台传感器最多认 4 个磁铁。单帧的数据格式是 32 位位置、16 位速度、8 位数值限制;传输方式分异步(按周期发)和同步(跟着 SYNC 发)。
  • 服务数据对象 SDO:改参数用的,有请求—应答握手,慢但可靠,配置阶段全靠它。传的是对象字典里的一条索引,报文里带 16 位索引和 8 位子索引。
  • 同步对象 SYNC、应急对象 EMCY、节点保护与心跳:SYNC 让总线上所有传感器按同一时刻采样;EMCY 往上报故障;心跳或节点保护做在线监控,主站据此判断从站在不在。

记住这个分工,调试顺序就清楚了:先用 SDO 把参数写对,再看 PDO 的数据对不对,最后才去调同步和心跳。反过来先抓 PDO 数据,往往抓到的是一堆没配好的默认值。

一个 PDO 的 8 个字节到底装了什么

CANopen 数据帧(标准帧,DLC ≤ 8) COB-ID 11 位 32 位位置值(字节 0~3) 小端:低字节在前 16 位速度(4~5) 不用则填 0 状态位(6) 8 位 第 7 字节按映射放保留位或第二磁铁数据; 多磁铁装不下同一个 PDO,要拆到不同 PDO 分开发。 注:以上是单磁铁常规映射,实际以厂家 EDS 与现场映射为准。
图:TPDO 一帧的结构——COB-ID 加最多 8 个数据字节,位置值按小端排,先低字节后高字节
字节位内容现场怎么理解
0~332 位位置值磁环实时位置,小端排布,字节 0 是最低位
4~516 位速度值没用速度功能时一般为 0,别把它当成位置的一部分
68 位数值限制/状态位磁铁数量、超限等标志,判故障时先看这一字节
7保留或第二磁铁数据由 PDO 映射决定,多磁铁需拆到不同 PDO

COB-ID 怎么算:一张默认分配表

CANopen 的 COB-ID 不用你去猜,默认分配就是「功能基地址 + 节点号」,节点号一般取 1~127,0 留给主站,别用。比如节点号设为 1,那 TPDO1 就是 0x180 + 1 = 0x181,SDO 接收是 0x600 + 1 = 0x601。改节点号,整张表跟着平移。

报文默认 COB-ID说明
NMT0x000主站发,管从站状态启动/停止
SYNC0x080广播,同步采样用
EMCY 应急0x080 + 节点号从站主动报故障
TPDO10x180 + 节点号传感器往上发的过程数据
PDO2/3/40x280/0x380/0x480 + 节点号多磁铁或分流数据时用
RPDO10x200 + 节点号主站往下发给传感器
SDO 接收/发送0x600 + 节点号/0x580 + 节点号配置参数与应答
心跳与节点保护0x700 + 节点号在线监控
现场碰得最多的一条:节点号重复。现象是总线时通时断、两个设备抢同一组 COB-ID,主站收上来的位置一会儿大一会儿小。原因基本都是上电前没把节点号跟 PLC 组态对齐,或者拿两台默认节点号相同的传感器直接并上去。处理办法是先断电、用地址设置器逐台改号、贴标签,再上电。

对象字典:要改的参数在哪个索引

对象字典是 CANopen 的「参数总目录」,每条参数一个 16 位索引,加 8 位子索引。下面这些是现场最常动的,量一下再写,比来回试快得多。

索引名称作用与常用值
0x1000设备类型低 16 位是 profile 号,406 对应 0x0196
0x1005SYNC 的 COB-ID默认 0x080,改同步 ID 才动
0x1006同步周期单位 µs,写 0 表示不用同步传输
0x1014EMCY 的 COB-ID默认 0x080 + 节点号
0x1017生产者心跳时间单位 ms,写 0 关闭心跳
0x1018身份对象厂商、型号、版本、序列号,组态核对用
0x1400/0x1600RPDO1 通讯参数/映射收进来的数据怎么摆,一般不改
0x1800/0x1A00TPDO1 通讯参数/映射传输类型、事件计时器,发出字节怎么排
0x6000 段DS-406 测量值对象位置等实测值,具体索引以厂家 EDS 为准

0x1800 里有两个要分清的子索引:一个是传输类型,写 0 是同步非周期、写 1~240 表示每 n 个 SYNC 发一次、写 254 或 255 是事件驱动(也就是异步);另一个是事件计时器,16 位、单位 ms,写 0 关闭,写 1 就是 1 ms 一帧,写满 65535 约 65.535 s 一帧。参数改小能提实时性,但总线上帧一多,负载就上去了。

报文实例:节点 1 的一帧 TPDO1 长什么样

把参数代入就看得见了。节点号取 1,TPDO1 的 COB-ID 就是 0x181。假设映射里只放了 32 位位置值,那么一帧就是 COB-ID = 0x181、DLC = 4、数据 4 个字节。位置值 123456 换成十六进制是 0x0001E240,小端发出来就是 40 E2 01 00。

如果映射成「32 位位置 + 16 位速度」,速度给 100(0x0064),一帧就是 DLC = 6,数据为 40 E2 01 00 64 00。再加上 8 位状态位,就是 DLC = 7 的 40 E2 01 00 64 00 00。用抓包工具对着这个排法看,字节顺序对不对一眼就分得出来。

顺序反了会怎样?现象是主站上看到的位置是个大得离谱的数、而且完全跟着真实位移对不上。原因就是字节序理解成高字节在前,位置值整个被拆散。处理很简单:位置类参数一律按小端接收,或者干脆在 PLC 里做一次字节交换,改完立刻能对上。

配置顺序:EDS、节点号、波特率、PDO 映射

  1. 导 EDS:EDS 是传感器的电子数据表,随光盘或厂家提供。先导进组态软件,对象字典和默认映射才会自己出来,别手工敲。
  2. 定节点号:用 CANopen 地址设置器写号,一般走 LMT 或 LSS 服务;主控不支持这两种服务时,用设置器外接 24VDC 直接给传感器设置。
  3. 波特率全网一致:这一条没有商量余地。CAN 的距离和速率是反着来的,参考值见下表,实际布线按厂家要求核算。
  4. 配 PDO 映射:按 PLC 那边要的数据格式定位置、速度、状态各占几字节,改完存进非易失区,再断电复电确认参数没丢。
  5. 通联测试:看心跳、看 EMCY、比对位置值与实际位移,三样都正常才算完。
波特率理论最大段长备注
1 Mbit/s约 25 m短距离多节点首选
500 kbit/s约 100 m设备内部总线常用
250 kbit/s约 250 m车间级中等距离
125 kbit/s约 500 m长距离常用档
50 kbit/s约 1000 m更远就得再降速

还有一条容易漏:总线两端各要一个 120Ω 终端电阻,中间节点不能挂。少了终端电阻,短距离可能看着没事,距离一长或者节点一多就开始丢帧、心跳超时;多了电阻,信号幅度被压低,同样不稳。

装到液压油缸上有几条硬要求

  • 测杆用 M18×1.5 这类螺纹法兰固定,配套安装件优先选非磁化材料,螺钉、隔片也一样,别带磁性。
  • 密封按 O 型圈加固定圈的方式做;活塞杆上的钻孔最小 13 mm,压力峰值别超过去,测杆必要时加保护套防磨损。
  • 位置磁铁不能蹭测杆,缸装式建议配安装法兰和 B 类电气系统。
  • 要满足 EMC 辐射要求,外壳做屏蔽并与机械地连接,屏蔽层单点接地。
  • 需要防钢渣、防热辐射的场合,把油缸和安装件用保护罩罩住,别让高温直接烤传感器。

常见问题

问:德敏哲CANopen位移传感器19系列的一个 PDO 能带几个磁铁?
答:传感器整机最多认 4 个磁铁,但一帧 PDO 只有 8 字节,装不下 4 组数据。常规做法是一个 PDO 对应一个磁铁的位置信息,多磁铁拆到不同 PDO 分开发,具体排法看厂家 EDS 和现场映射。

问:节点号主控不支持 LMT/LSS 时怎么设?
答:用 CANopen 地址设置器,外接 24VDC 就能把节点号写进去,不需要主站参与。写之前先断总线,写完逐台贴标签,避免两台设备撞号。

问:TPDO 收上来的位置值很大、明显不对,是哪里的问题?
答:先查字节序。位置值是 32 位小端,如果按高字节在前解析,数字会整个不对。其次查 PDO 映射的长度对不对——映射里多放了速度字节,PLC 那边却只按 4 字节取,解析就错位了。

问:CAN 总线拉得远,波特率和距离怎么配?
答:距离和速率反着来,125 kbit/s 对应约 500 m 是常用组合,再快就得缩短距离。布线上先按最远那台设备估长度,再定速率,两端补上 120Ω 终端电阻。

问:改完参数断电就没了,怎么回事?
答:参数写完要存进非易失区再断电,直接断电源有些参数不会保留。规范做法是改完存盘、断电复电,再读回对象字典核对一遍,确认没回到默认值。

德敏哲CANopen位移传感器19系列的报文解析、EDS 配置与节点设置,易测电气 CANopen 位移传感器工程师欢迎您的咨询。

版权所有:深圳市易测电气有限公司 备案号:粤ICP备19052563号 网安粤公网安备 44030602003587号 技术支持:星海互联