0

有人可以帮助我了解 CANOpen 协议在 CAN 总线上增加了多少开销。换句话说,如果一个节点正在生成一个 8 字节的应用数据的 CANOpen PDO 消息,那么 CANOpen 协议本身会增加多少头/开销?我不是在谈论 CAN 总线本身的开销,即 CRC、DLC、RTR、EOF 和其他位。使用 CANOpen 与直接使用 CAN 相比,总线上的额外负载是多少。谢谢。

4

1 回答 1

2

没有这样的“CANopen 协议”,它是整个应用层的名称。简而言之,CANopen 使用的实际协议归结为:

  • NMT 帧,网络管理。控制节点和整个网络的状态。
  • SDO 帧,服务数据对象。单个节点的配置。
  • PDO 帧,过程数据对象。实际的数据帧。

还有其他各种特殊用途的,如 EMGY、LSS 等,但以上是主要的。

换句话说,如果一个节点正在生成一个 8 字节的应用数据的 CANOpen PDO 消息,那么 CANOpen 协议本身会增加多少头/开销?

PDO 的开销为零。您在 8 字节 PDO 帧中获得 8 字节有效负载。

SDO 和各种 NMT 有一些开销,通常是 1 个字节。

于 2020-03-06T12:31:27.903 回答