0

在此处输入图像描述

假设我有 deviceA(NodeID 1) 和 deviceB(NodeID2)

  • deviceA 是否发送 TxPDO 180+2 和 deviceB 通过 RxPDO 200+2 接收数据
  • deviceA 是否发送 TxPDO 280+2 和 deviceB 通过 RxPDO 300+2 接收数据
  • RxPDO 是否将数据发送到电缆?还是只是eds文件?

PS,照片来自https://en.wikipedia.org/wiki/CANopen

4

2 回答 2

0

NodeID 仅添加到发送的 PDO 中,关联节点不接收。

所以:

deviceA发送TxPDO 180+2,deviceB通过RxPDO 200+2接收数据 没有,DeviceA发送180+1,DeviceB接收200+1(因为如果他接收,他不能是sender,你说只有2个节点在总线,因此唯一可以添加的 ID 是 1)。

是否 deviceA 发送 TxPDO 280+2 而 deviceB 通过 RxPDO 300+2 接收数据 否,同上解释。RxPDO 是否将数据发送到电缆?还是只是eds文件?RxPDO 是通过电缆发送的。

于 2018-12-16T10:35:38.690 回答
0

PDO 的 COB-ID 列表仅显示默认值。如果网络中的所有设备都有其 PDO 的默认 COB-ID,这意味着它们没有链接在一起,并且没有设备侦听总线上发送的任何 PDO(实际上,它们侦听的 PDO 根本不存在于公共汽车)。默认 COB-ID 确保总线上没有 COB-ID 冲突。

通常,CANopen 主站通过更改每个设备中的 TPDO 和 RPDO COB-ID 来使用 SDO 请求配置总线。因此,DeviceA 发送带有 180+1 的 TPDO,如果您希望 DeviceB 监听 DeviceA,您也将 DeviceB 的 RPDO COB-ID 设置为 180+1。

有人可能会认为,在节点连接在一起之后,一些默认的 RPDO COB-ID 会变得未使用(或浪费)。如果需要超过 4 个 TPDO,设备可以将它们用作 TPDO COB-ID。当然,还有其他方法可以增加 TPDO 的数量。

于 2019-07-18T08:51:32.267 回答