Frage: Welche Schritte sind erforderlich, um einen Absolutwertgeber (Resolver, Singleturn-Absolutwertgeber, Multiturn-Absolutwert) in Verbindung mit dem Funktionsblock
L_CamControl aus der Technologie-Bibliothek
LenzeCamControl1Vxxyy (xx = Versionshauptstand, yy = Versionsnebenstand) zu verwenden? Wie erfolgt das Referenzsetzen in dieser Konfiguration?
Antwort:
Damit bei Betrieb eines Absolutwertgebers in Verbindung mit dem Funktionsblock L_CamControl stets die richtige Istposition ermittelt wird, müssen folgende Voraussetzungen erfüllt sein:
Es muß ein Rückführsystem mit absoluter Lageerkennung verwendet werden. Dieses sind Resolver (Erkennung der absoluten Lage auf +/- eine halbe Motorumdrehung) Singleturn-Absolutwertgeber (Erkennung der absoluten Lage auf +/- eine halbe Motorumdrehung) Multiturn-Absolutwertgeber (Erkennung der absoluten Lage innerhalb von 4096 Motorumdrehungen) Es muß eine ServoPLC mit einem Betriebssystem V6.x vorhanden sein (niedrigere Stände unterstützen die für diese Funktion zwingend erforderlichen PERSISTENT-Variablen nicht). Kontrollieren Sie Ihr DDS-Projekt auf folgende Eigenschaften:
Im DDS-Projekt muss unter <Resourcen> => <Steuerungskonfiguration> der Systembaustein VAR_Persistent eingebunden sein. Unter Codestelle C0025/000 muss das korrekte Lagerückführsystem eingestellt sein (z.B unter <Resourcen> => <Codestelleninitialisierung>). Der Funktionsblock L_CamControl muß verwendet werden, um die notwendigen Größen für den MCTRL-Block zu bilden und das Rückführsystem korrekt auszuwerten. Die Ein-/Ausgangsvariablen L_CamControl.dnActPos_p und L_CamControl.dnActPosInSave_p müssen auf globale Variablen vom Typ PERSISTENT verbunden sein (%QD171.0 ... 7). Führen Sie zum Setzen der Referenz folgende Schritte durch:
Schalten Sie auf den Hilfsintegrator (L_CamControl.bSelMainPos = FALSE) und setzen Sie den Antrieb still (n = 0). Sperren Sie den Regler (DCTRL_bCinh_b = TRUE), z.B. über die Klemme 28. Setzen Sie den Hilfsintegrator über L_CamControl.bResetAux = TRUE auf den Lageistwert, um ggf. einen bestehenden Schleppfehler zu löschen. Schreiben Sie den gewünschten Lagewert in Inkrementen in die Codestelle C0098/000. Der gewünschte Lagewert wird hiermit in MCTRL_dnPos_p übernommen. Setzen Sie L_CamControl.bResetAux auf FALSE zurück. Übergeben Sie den gewünschten Lagewert in Inkrementen an den Hilfsintegrator (Signal L_CamControl.dnLoadAuxPos_p). Übernehmen Sie diesen Wert mit einer positiven Flanke am Steuereingang L_CamControl.bLoadAuxPos. Der Regler kann nun wieder freigegeben werden. Im anliegenden Beispielprojekt ist beispielhaft diese Funktion 'Referenzsetzen' durch ein Betätigen des Digitaleinganges E1 bei Reglersperre programmiert.