Fehlerhafte Lageinitialisierung bei ABS-Gebern mit unterschiedlicher Motor- Encoderanbaulage und Eintrag eines Offset in C3012

Betrifft welche Produkte?
ESP-SPAC-POS1 (Software Package Positioner V3.1)

Wie sieht die Reaktion aus?
Der Istwert-Integrator (g_dnActualPositionReal) wird beim Einschalten der PLC mit einem falschen Positionswert geladen.

Wann tritt das Problem auf?
Diese Einschränkung tritt nur bei Anwendungen auf, bei denen ein Absolutwertgeber Multiturn (SCM60/70, SRM50 oder andere Absolutwertgeber mit Stegmann Hiperface-Schnittstelle) als Lagerückführung eingesetzt werden. Das Problem tritt auf, wenn zusätzlich der Offset des Referenzmaß Systems ungleich Null (C3012 <> 0) eingestellt wird und die Einstellungen für Motor- und Encoderanbaulage unterschiedlich sind (C3000 <> C3001). In diesem Fall wird die absolute Lage in der Initialisierungs-Phase fälschlicherweise negiert.

Diagnosemöglichkeiten?
Nachvollziehbar ist der Mangel, wenn der Offset des Referenzmaß Systems mit einem Wert ungleich Null beschrieben (z. B. C3012 = 100000) und anschließend die Referenz mit g_bHomePositionSet:=TRUE gesetzt wird. Die aktuelle Position g_dnActualPositionReal zeigt dann den Wert aus C3012 an. Nach einem Aus- und Wiedereinschalten der Steuerspannung der PLC muss der Positionswert vom Absolutwertgeber gelesen und der Positionsintegrator neu gesetzt werden. Es ist zu beobachten, dass der Integrator genau mit dem Inversen des zuvor eingestellten Offsets geladen wird (g_dnActualPositionReal = -100000).

Kurzfristige Maßnahmen/Empfehlungen?
Auf die Initialisierung der absoluten Lage beim Einschalten kann nicht direkt Einfluss genommen werden, es ist jedoch möglich, die korrekte Lage direkt nach dem Einschalten neu zu berechnen und den Integrator zu setzen. Mit diesem Anfangswert für die Position können dann ohne Einschränkungen die Positionssequenzen gestartet werden.

Der Mechanismus zum Berechnen und Setzen der korrekten Lage kann prinzipiell folgendermaßen realisiert werden:
  • einmaliges Setzen einer booleschen 'Bedingung zum Berechnen der Lage' in der PLC_ColdStart(PRG)
  • vor dem Starten der Berechnung sollte zusätzlich abgewartet werden, bis das Template den Zustand 'Init' verlassen hat und sich im 'Stand By' befindet (g_byOperationState=0)
  • Rücksetzen der Referenzposition (g_bHomePositionReset:=TRUE) und Sperren des Antriebsreglers
  • Berechen der neuen aktuellen Position nach folgender Formel ActPosNeu = 2 * (C3012 in Inkrementen) - MCTRL_dnPos_p
  • Beschreiben des Referenzmaß Offsets (3012) mit dem berechneten Wert über L_ParWrite
  • Speichern der neuen Offset-Vorgabe durch temporäres Setzen von C0003 = 1 ebenfalls über einen L_ParWrite
  • Setzen der Referenzposition (g_bHomePositionSet:=TRUE) und anschließender Freigabe des Antriebsreglers
  • Zurücksetzen der 'Bedingung zum Berechnen der Lage'

Anmerkungen:
Dieser zusätzliche Prozess der Lageinitialisierung im Anwenderteil dauert einige Programmzyklen. Erst nach Ablauf darf das eigentliche Anwenderprogramm freigegeben werden. Dies kann durch eine Verriegelung mit der 'Bedingung zum Berechnen der Lage' realisiert werden.

Vorsicht bei aktiven Lasten!
Da der Antriebsregler zum Setzen der Referenz gesperrt sein muss, kann der Motor für diesen kurzen Zeitraum kein Drehmoment aufbringen. Dies ist in der Regel nicht erforderlich, da ein Motor mit aktiver Last im Einschaltaugenblick mechanisch gebremst wird.

Die Eingabegrenzen der Codestelle C3012 liegen bei +/-214000 units. Da nur diese Codestelle zum Übertragen der berechneten Lage genutzt werden kann, schränkt dies den nutzbaren Darstellungsbereich der Lage ein.

Bewertung:
Die Bedingungen für das Auftreten der Funktionseinschränkung fallen nur in wenigen Anwendungen zusammen. Das Verhalten tritt nachvollziehbar bei jedem Einschalten der PLC auf. Bei der Inbetriebnahme ist die Funktionseinschränkung bereits ersichtlich. Die beschriebene kurzfristige Maßnahme ist bereits erfolgreich eingesetzt worden, kann jedoch durch die Einschränkung des Fahrbereichs nicht in jedem Fall verwendet werden.

URL zur Verlinkung dieses AKB-Artikels: https://www.lenze.com/de-de/go/akb/200413373/0/
Kontaktformular