您好!欢迎访问深圳市易测电气有限公司网站!
专业的传感器与智能自动化方案提供商专注位移传感器行业
全国咨询热线:137-2888-0902
联系我们
微信扫一扫

【 微信扫码咨询 】

137-2888-0902

0755-85271862

CANopen磁致伸缩位移传感器 (两磁块-同步) 通讯范例

作者:易测电气技术团队 浏览量:250 时间:2026-08-24

这一页是 19 系列 CANopen 磁致伸缩位移传感器在两磁块、同步模式下的通讯范例。两磁块指的是同一根测杆上挂了两个磁环,可以同时测两个位置,比如一台设备上同时监控主油缸和辅助油缸。跟单磁块相比,两磁块多了一路 PDO;跟异步相比,数据回传由控制器的 SYNC 讯息触发。

CANopen磁致伸缩位移传感器 同步通讯范例(德敏哲Germanjet)

CANopen磁致伸缩位移传感器 (两磁块-同步) 通讯范例德敏哲Germanjet

CANopen磁致伸缩位移传感器 (两磁块-同步) 通讯范例德敏哲Germanjet

两个磁块走两路 PDO

传感器把两个磁环的位置分别放在两个不同的 PDO 里送出,靠 cob-id 区分,不需要在数据里额外加标志位:

PDO cob-id 对应磁块 数据长度 内容
PDO1 0x1FF 磁块一 7 字节 位移(4 字节) + 速度(2 字节) + 0x00
PDO2 0x2FF 磁块二 7 字节 位移(4 字节) + 速度(2 字节) + 0x00

同步模式下的报文流程

时序 发送者 cob-id dlc data 说明
0 传感器 0xFF 0 n/a EMCY 讯息(电源启动)
1 控制器 0x000 2 0x01 0x00 启动所有节点
2 传感器 0x1FF 7 位移 + 速度 磁块一
3 传感器 0x2FF 7 位移 + 速度 磁块二
4 控制器 0x080 0 n/a SYNC 讯息
5 传感器 0x1FF 7 位移 + 速度 磁块一
6 传感器 0x2FF 7 位移 + 速度 磁块二

需要说明的是,两个磁块的 PDO 映射取自同系列两磁块案例,SYNC 触发机制取自同系列同步案例,实际 PDO 映射以该型号的 EDS 文件为准。程序里按 cob-id 分两路缓存即可,两路数据的解析方式完全一样。

位移值的换算

位移字段同样是低位先发。例如磁块一收到 0x02 0x83 0x00 0x00,倒过来拼成 0x00008302 = 33538,分辨率 0.005mm 时代表 33538 × 0.005mm = 167.69mm。磁块二的解析方式完全相同,只是取的是另一路 PDO。

示例数据(LSB first) 拼成的十六进制 十进制 分辨率 0.005mm 对应位移
0x02 0x83 0x00 0x00 0x00008302 33538 167.69mm
0x00 0x00 0x00 0x00 0x00000000 0 0mm(零点)
0xE8 0x28 0x00 0x00 0x000028E8 10472 52.36mm

现场调试注意

  • 两个磁块要分先后:通常按靠电缆端远近区分,装配前先确认哪个是磁块一,避免接线时对调。
  • 两路数据要缓存到不同寄存器:很多故障是程序里两路混用同一个地址,表现为两个位置数值交替跳变。
  • SYNC 周期不要超过实际需要:周期越短总线负载越高,按控制环路的实际采样需求设定即可。
  • 终端电阻与屏蔽接地:与单磁块组网要求相同,总线首尾各一个 120Ω,屏蔽层在控制器侧单端接地。

如果这一页没覆盖你的工况,可以先翻问答合集里是否已有同类情形:位移传感器常见问题解答。

常见问题

CANopen 两磁块同步模式怎么工作?

两个磁环的位置分别放在两个不同的 PDO 里送出,靠 cob-id 区分:PDO1 的 cob-id 是 0x1FF 对应磁块一,PDO2 是 0x2FF 对应磁块二。与异步的差别是数据回传由控制器的 SYNC 讯息(cob-id 0x080)触发,控制器发一拍、传感器回一拍。

CANopen 同步和异步怎么选?

数据发送时机上,异步由传感器按自身周期发出,同步是控制器发 SYNC 后回传;总线占用上,异步由传感器决定、节点多时容易拥塞,同步由控制器统一安排、可控;采样时刻一致性上,异步各节点互不对齐,同步在同一 SYNC 下各节点对齐。单轴、对时刻要求不高的场合用异步;多轴联动、需要同步采样的场合用同步。

CANopen 两个磁块怎么分出先后?

通常按靠电缆端远近区分,装配前先确认哪个是磁块一,避免接线时对调。两路数据要缓存到不同寄存器,很多故障是程序里两路混用同一个地址,表现为两个位置数值交替跳变。

CANopen 的 SYNC 讯息里带数据吗?

不带。SYNC 的 cob-id 是 0x080,数据长度 0 字节,是一条空报文,起的是「打拍子」的作用。传感器进入启动状态仍然靠那条启动讯息,SYNC 不负责唤醒设备,所以程序里的顺序是初始化时发一次启动讯息,之后按需要的采样周期循环发 SYNC。

CANopen 的插座针脚怎么定义?

针脚 1 为 CAN(−),针脚 2 为 CAN(+),针脚 3 与 4 不接,针脚 5 为 +24V 电源,针脚 6 为 0Vdc。终端电阻总线首尾两端都要有 120Ω,屏蔽层焊接到插头外壳上并必须在控制器一侧接地。