最近打算用Python做一个CANopen的主站,在此使用CANopen for Python做了一个SDO读取数据的测试例程。其发送数据使用了python-can,可参考上一篇博文《调用python-can库使用周立功CAN接口卡发送数据》。
以USBCAN-2E-U接口卡,500k波特率,发送SDO为例,代码如下:
import canopen
network = canopen.Network()
network.connect(bustype='canalystii', channel=0, baud=500000)
node = network.add_node(1, './ds301.eds')
Producer_Heartbeat_Time = node.sdo['Producer Heartbeat Time']
print(Producer_Heartbeat_Time.raw)
network.disconnect()