我正在尝试使用Python canopen
库和USB2CAN
适配器与canopen
402设备进行通信。
到目前为止,我还无法超越定义网络的最基本示例。
该脚本始终因错误而崩溃:
“ AttributeError:'Usb2canBus'对象没有属性'_filters'”
有关python-的文档可以提及usb2can
设备未实现过滤器,但似乎暗示它仍然应该可用。
有人成功使用usb2can适配器和Python吗?
我找不到任何例子,有人可以指出我一个例子吗?
以下是python canopen文档中包含的非常基本的示例之一。
与上述其他大多数操作一样,此操作因上述过滤器错误而失败。
import canopen
import time
#define network
network = canopen.Network()
#establish connection
network.connect(channel='ED000200', bustype='usb2can', bitrate=500000)
# This will attempt to read an SDO from nodes 1 - 127
network.scanner.search()
# We may need to wait a short while here to allow all nodes to respond
time.sleep(0.05)
for node_id in network.scanner.nodes:
print("Found node %d!" % node_id)
#close connection
network.disconnect()
在此示例中,我希望打印网络上的节点列表,可能为空列表,因为未添加任何节点。
相反,我得到了错误:
AttributeError:'Usb2canBus'对象没有属性'_filters'