Benutzer-Werkzeuge

Webseiten-Werkzeuge


pc:canopen

CANOpen mit Python

Hier erstmal nur ein kleines Demo- Script, wie man in Python mit CANOpen arbeiten könnte…

canopenscan.py
import sys
import time
import can
import canopen
 
 
can_configs = can.detect_available_configs(interfaces='pcan')
channels=[]
for config in can_configs:
    channels.append(config["channel"])
for index, channel in enumerate(channels):
    print(index+1,channel)
selection=int(input("Welcher Kanal soll's sein?"))
print("Suche auf ", channels[selection-1])
network = canopen.Network()
# network.connect(channel='can0', interface='socketcan')
# network.connect(interface='kvaser', channel=0, bitrate=250000)
network.connect(interface='pcan', channel=channels[selection-1], bitrate=250000)
# network.connect(interface='ixxat', channel=0, bitrate=250000)
# network.connect(interface='nican', channel='CAN0', bitrate=250000)
 
while True:
    network.scanner.reset()
    network.scanner.search()
    time.sleep(1)
    print("-"*40)
    for node_id in sorted(network.scanner.nodes):
        print (f"{node_id} ({hex(node_id)})")
        #= int(node_id[0])
pc/canopen.txt · Zuletzt geändert: von admin