CANOpen多客户机单服务器SDO通信



因为SDO通信是点对点通信。是否有一种方式CANOpen服务器可以与两个不同的客户端在同一时间为同一对象进行通信?

例如:Node-1 (Server): ID-5, OD:6023h,长度:100字节节点2(客户端):ID-10节点3(客户端):ID-11

Node-2和Node-3能否同时从Node-1上传6023h ?

如果不是,这是对CANOpen协议的限制吗?

对于给定的can标识符只能有一个发送器,否则无法解决总线冲突。因此,不可能为单个SDO服务器存在多个SDO客户机。

然而,一个CANopen设备可以包含/托管多个逻辑SDO服务器,这可能允许它们为多个SDO客户机提供服务。

编程时&通过相应的配置,CANopen节点还可以充当网关,接受来自多个SDO客户机的连接,并将它们路由到另一个SDO服务器。但我不知道是否有一个标准的协议。

同样,主要规则是对于给定的CAN标识符只有一个发送器。

不,那不可能。SDO是一种请求-响应协议,本质上是一对一的。如果您希望同时与多个客户机通信,请使用PDOs,这基本上是一种发布-订阅协议。

最新更新