Hallöchen! Ich versuche gerade eine Beckhoff LC5100 Klemme mit einem AVR an zu sprechen. Erstmal habe ich mich hier ran gehalten: http://www.fischl.de/usbtin/canopen/ Ich kann erfolgreicht den Knoten initialisieren, Reseten und den Status abfragen. Wenn ich jedoch versuche einen Digitalen Ausgang zu setzen (0x03 an 0x200+nodeID) antwortet die Klemme: ID: 83 Data: 00 81 91 04 00 06 02 01 und versetzt sich zurück in den Pre-Operational Status. Weiß jemand, was diese Nachricht bedeutet und warum das passiert? Gruß, Marc
Okay hab den abschnitt gefunden: EC0: Error Code Low-Byte. Nicht genutzt (stets null) EC1: Error Code High-Byte. 0x81 = Kommunikationsfehler EReg: Error Register. 0x91 =Kommunikationsfehler Bitfeld 0: Comm 0x04 Falsche PDO-Länge parametriert Bitfeld 1: DevErr Bitfeld Geräte-Fehler: Null EMCY Trigger: 0x06 Falsche PDO-Länge parametriert (Mapping überprüfen). Info 0: parametrierte (erwartete) PDO-Länge in Bytes Info 1: aktuelle PDO-Länge (ergibt sich aus den addierten Längen dergemappten Objekte) Jetzt frage ich mich: was für ein 2. datenbyte erwartet die Klemme?
Auch diese Sache habe ich gelöst. Wenn ich jemandem Erkläre was mein Problem ist kommts oft von allein :) Ich habe 6 klemmen a 2 Ausgänge = 12 Bit um alle zu schalten also 2 Bytes zur Übertragung. Ich lasse das hier mal stehen, damit jemand zukünftig vielleicht schneller auf die Lösung kommt.