0
我建立了一个由3个引擎组成的CANOpen网络,每个引擎都有自己的CANOpen从站。我有一个Hilscher CifX板作为CANOpen主设备。是否可以通过SDO轮询CANOpen变量,如果是这样,怎么办?
我已经通过将RPDO和TPDO直接读入Hilscher主板的进程内存来实现正确的引擎命令。
现在,我尝试通过Sycon.NET(Hilscher配置工具)设置网络,以将附加变量映射到PDO,但我想捕获的变量未出现在列表中。我认为这是因为EDS为这些变量提供PDO Mapping = 0
。
我想读取这些变量的值每20ms左右。我可以通过SDO轮询设备吗?如果是这样,怎么样?
@ M.Neubauer:谢谢。我查看了DS301,并可以将您的示例映射到“Initiate SDO Upload”协议的消息结构。我看到“加速传输”位是从属设备响应的一部分(在我的情况中)。这是否意味着在这种情况下从机可以选择传输模式?是否有保证,由于数据不超过4个字节,从机总是选择使用快速传输? –
是的,它由主机决定传输模式。我认为大部分实施都会加快转移。但可以通过分段上传传输少于4个字节的数据。所以没有保证。 – mkninc
所以我很好的贯彻整个服务。 –