Thema:
Ausgangssituation:
Der Antrieb läuft im EPOS4 "PPM - Profile Position Mode" oder "PVM - Profile Velocity Mode" sehr gut und gleichmässig, aber beim Betrieb mit einem Master (z.B. Beckhoff TwinCAT oder maxon's MasterMACS) ist der Antrieb in den Betriebsarten "CSP - Cyclic Synchronous Position" oder "CSV - Cyclic Synchronous Velocity" sehr unruhig und bewegt sich eher ruckhaft.
Fragestellung:
- Woran liegt das?
- Wurden die Reglerparameter nicht optimal getuned?
Grundlagen:
Der "PPM - Profile Position Mode" wie auch der "CSP - Cyclic Synchronous Position" Mode nutzen intern den selben Positions- und Stromregler und die identischen Reglerparameter. Der "PVM - Profile Velocity Mode" wie auch der "CSV - Cyclic Synchronous Velocity" Mode nutzen intern den selben Drehzahl- und Stromregler und die identischen Reglerparameter. Sofern ein unruhiger Motorlauf nur beim CSP oder CSV Mode auftreten, kann die Ursache nicht an den Reglerparametern oder Ergebnissen des Auto-Tuning liegen sondern muss mit dem "Zusammenspiel" oder Datenaustausch zwischen Master und EPOS4 in Zusammenhang stehen.
Der Unterschied zwischen PPM und CSP (bzw. PVM und CSV) ist, dass im CSP (bzw. CSV) der externe Master (z.B. Beckhoff TwinCAT + NC-Library oder maxon's MasterMACS) die Bahnberechnung ausführt und aktualisierte "Target position" (-> Objekt 0x607A) bzw. "Target velocity" (-> Objekt 0x60FF) Werte im präzisen zyklischen Takt (gebunden an das Master SYNC Signal) an die EPOS4 vorgeben muss.
Weitere Informationen zu den einzelnen einzelnen Betriebsarten und den Verantwortlichkeiten bzw. Tasks von Master und EPOS4 bei jeder Betriebsart finden sich auch in dem folgenden verlinkten Support Center Dokument und dem dort am Ende angehängten PDF:
-> EPOS4 / IDX: Reglerstruktur, Betriebsarten und Bus-Zykluszeiten
Da der EPOS4 Positions- und Drehzahlregler-Takt mit 0.4 ms schneller als der Bus-Zyklus ist, führt die EPOS4 eine Interpolation zwischen den vorgegebenen "Target position" bzw. "Target Velocity" Werten durch. Es wird hierbei die Differenz zwischen der letzten "Target position" und neuen "Target position" (bzw. letzter "Target velocity" und neuer "Target velocity") auf Basis des konfigurierten "Interpolation time period value" (-> Objekt 0x60C2/01) in Zwischenpositionen zerlegt, welche als "Position demand value" (-> Objekt 0x6062) bzw. "Velocity demand value" (-> Objekt 0x606B) im 0.4 ms Takt des Positions- bzw. Drehzahlreglers als Sollwerte verwendet werden. Hiermit wird sichergestellt, dass der Antrieb am Ende jeden Bus-Zyklus, d.h. beim erwarteten Eintreffen der neuen "Target position" bzw. "Target velocity" den letzten Zielwert zeitgenau erreicht hat und eine kontinuierliche Bewegung entsteht.
Für eine korrekte Interpolation und gleichmässige kontinuierliche Bewegung muss(!) der "Interpolation Time Period Value" (-> Objekt 0x60C2/01) identisch zu dem effektiven Bus SYNC-Zyklus des Masters (SPS) konfiguriert werden. Eine fehlende oder fehlerhafte Konfiguration führt dazu, dass die "Target Position" bzw. "Target velocity" direkt oder falsch interpoliert in den Positions- bzw. Drehzahlregler übernommen wird und die Zwischenpositionen nicht korrekt sind. Aus Anwendersicht führt dies zu einer seh- und hörbaren ruckartigen Motorbewegung. Detailliert betrachtet setzt sich jede Bewegung, die auf einem fehlerhaften "Interpolation time period value" basiert, innerhalb jeden Bus-Zyklus aus einem kurzen Bewegungsstart und folgenden Stopp zusammen. Die "Target position" bzw. "Target velocity" wird zu einem falschen (meist zu frühen) Zeitpunkt erreicht wird und die EPOS4 muss auf den nächsten Update der "Target position" bzw. "Target velocity" (= zyklische Datenübertragung) warten.
Lösung:
Häufigste Problemursache:
Die häufigste Ursache für eine unruhige Motorbewegung, die ausschliesslich im CSP oder CSV Mode beobachtet wird, ist die fehlende oder nicht zutreffende Konfiguration des "Interpolation time period value" (-> Objekt 0x60C2/01).
Wichtig:
Der "Interpolation time period value" (-> Objekt 0x60C2/01) muss entsprechend der Bus-Zykluszeit des EtherCAT-Master konfiguriert werden.
Ergänzende Informationen:
- Detaillierte Informationen zu dem Objekt "Interpolation time period value" (0x60C2/01) finden sich in der "EPOS4 Firmware Specification":
- Das Objekt "Interpolation time period value" (0x60C2/01) kann entweder direkt von dem Anwendungsprogramm des Masters konfiguriert werden oder auch manuell mit dem EPOS Studio "Object Dictionary" Tool. Es müssen hierzu die folgenden Schritte ausgeführt werden:
- Zustand bei der Default-Konfiguration:
- Mit einem Doppelklick in die Zeile "Interpolation time period value" muss der Wert entsprechend der vom Master verwendeten SYNC Periode (z.B. 10 ms) angepasst werden:
- Abschliessend muss nach der erfolgreichen Änderung mit einem Rechtsklick das Pop-up Menu des Object Dictionary aufgerufen und dort der Eintrag "Save All Parameters" ausgewählt werden. Dies stellt sicher, dass die aktualisierte Einstellung in der EPOS4 abgespeichert wird und somit aus nach dem Aus-/Einschalten oder einem Reset weiterhin gültig ist:
- Zustand bei der Default-Konfiguration:
Weitere potentielle Ursachen:
Weitere mögliche Fehlerursache bei einem unruhigen Motorlauf sind auch:
- Ein Master von dem die Bus-Zyklusdauer nicht präzise eingehalten wird oder einzelne Bus-Zyklen komplett fehlen.
Hinweis:
Bei EtherCAT-basierenden Systemen meldet die EPOS4 bei fehlenden oder stark abweichenden Bus-Zyklen typisch einen "EtherCAT communication cycle time error" (0x8184), "RPDO timeout" (0x8250) oder auch "EtherCAT PDO communication error" (0x8280) Fehler. - Ein Master von welchem "Target position" bzw. "Target velocity" Werte vorgegeben werden, denen der Antriebsstrang physikalisch nicht folgen kann oder die komplett falsch sind.
Querverweis:
Für die korrekte Integration der EPOS4 in dem Systemmanager eines Beckhoff TwinCAT Masters beachten Sie bitte die Hinweise in dem Kapitel "6.3 Beckhoff TwinCAT Integration" in der "EPOS4 Application Notes Collection".
Kommentare
0 Kommentare
Zu diesem Beitrag können keine Kommentare hinterlassen werden.