发布日期:2024-10-03 点击次数:154
控制器向Germanjet德敏哲194CANopen磁致伸缩位移传感器 更改 “CAN 事件计时器” 范例
假设传感器的 node-id 是 0x7F [127 dec] (工厂设置) ,要把 “CAN 事件计时器” (默认 1 ms) 改作 50ms。控制器须先向传感器发出 1 个 SDO ,SDO 的索引为0x1800,子索引为 0x05,数据为0x32 [dec 50]。
传感器收到 SDO 后,向控制器回应一个 SDO 表示 “CAN 事件计时器” 已经变更及生效,但未 储存至 eeprom,若传感器掉电, “CAN 事件计时器” 会回复至未变更前的设置。
控制器须再发出另 1 个 SDO 用来把 “CAN 事件计时器” 储存至 eeprom,SDO 的索引为
0x1010,子索引为 0x01,数据为 0x73 61 76 65。传感器会向控制器回应一个 SDO 表示变更值 已储存。
详细的通讯协议如下:
序号 | 发送者 | cob-id | dlc | data | 注 |
1 | 控制器 | 0x67F (=0x600+ node-id) | 8 | 0x2F 00 18 05 32 00 00 00 | 向节点 0x7F 发出 SDO, 数据是 0x32 (dec 50) ,即 50ms。 |
2 | 传感器 | 0x5FE (=0x580+ node-id) | 8 | 0x60 00 18 05 00 00 00 00 | 节点 0x7F 的 “CAN 事件计 时器” 已更改,并向传感 器回应 SDO。 |
3 | 控制器 | 0x67F (=0x600+ node-id) | 8 | 0x23 10 10 01 73 61 76 65 | 向节点 0x7F 发出 SDO 储 存 “CAN 事件计时器” 至 eeprom。 |
4 | 传感器 | 0x5FF (=0x580+ node-id) | 8 | 0x60 10 10 01 00 00 00 00 | 节点 0x7F 传感器回应 SDO。 |
完成以上通讯后,传感器的 “CAN 事件计时器” 已更改并储存至 eeprom,即使掉电,传感器亦 能从 eeprom取回 “CAN 事件计时器”。
若传感器的 node-id 不是 0x7F (工厂设置),请相应改变 SDO 的 cob-id ,cob-id = 0x600 + 传感器 node-id。若不确定传感器 node-id,可把传感器掉电再启动,传感器会发出 1 个 EMCY 报文,
把 EMCY 报文的 cob-id 减去 0x80,就是传感器 node-id。
- 下一篇:Germanjet德敏哲194系列 CANopen 传感器 更改 baud rate (波特率)范例
- 上一篇:CANopen磁致伸缩位移传感器 (两磁块-异步) 通讯范例德敏哲Germanjet
最新产品