Limiting

Limiting 1:

Diese Corefunction ist für eine Begrenzung aller Achsfunktionen zuständig. Die Art der Begrenzung fällt abhängig der Antriebstechnologie aus. Beispielsweise können elektrische Achsen im Drehmoment und hydraulischen Achsen im Druck begrenzt werden. Für Achsen vom Typ FB_AxisNcBase sind folgende Bausteine intern automatisch verfügbar:

Diese Corefunction gehört zu den dauerhaft aktiven Corefunctions.

Syntax:

FUNCTION_BLOCK FB_Limiting EXTENDS FB_Corefunction

Limiting 2: Eigenschaften

Name

Typ

Zugriff

Beschreibung

InitState

BOOL

Get, Set

Die Corefunction ist nicht vollständig und erfolgreich initialisiert.

FB_Limiting

Actual

LREAL

Get

Aktueller Istwert der limitierten Größe (Drehmoment/Druck)

CmdReference

LREAL

Get, Set

Referenzwert für die Skalierung des in einer Corefunction kommandierten Wertes. Typischerweise wird hier 100 % vorgegeben.

EffectiveSetpoint

LREAL

Get

Effektiver Wert, der zurzeit an die Ausgabe gegeben wird.

ExternalMode

BOOL

Get

TRUE, sobald ein externes Limiting nach dem veralteten Schema mit I_LimitingFb zugewiesen wurde.

IdleValue

LREAL

Get, Set

Der Leerlaufwert für die Limitierung, auf den die Achse nach einem Kommando zurückfällt.

MaxValue

LREAL

Get, Set

Die wirkende Begrenzung der Limitierung für jegliches Kommando.

Mode

I_LimitingMode

Get

Auswahl des Betriebsmodus der Limitierungsfunktion.

Output

I_LimitingOutput

Get, Set

Schnittstelle auf das Ausgabeelement für die Limitierung.

SetpointCmded

LREAL

Get, (Set)

Sollwert, der von der aktiven Corefunction derzeit vorgegeben wird.

SetpointDirection

E_AdaptableDirection

Get, (Set)

Richtung, die von der aktiven Corefunction derzeit vorgeben wird.

Transition

I_LimitingTransition

Get

Konfiguration des Überganges zwischen kommandierter und im Leerlauf aktiver Limitierung.

ActualTorque1

LREAL

Get, Set

Aktueller Drehmoment-Istwert der Achse.

Alternativ: Actual

Activate1

BOOL

Get, Set

Aktiviert die Verwendung des ActiveValue als aktives Limit.

Alternativ: Cmd()

ActiveValue1

LREAL

Get

Aktuell ausgebbarer Limitierungswert

Alternativ: EffectiveSetpoint

ConnectedToDrive1

BOOL

Get

Ein interner Verbindungsaufbau zu einer Antriebseinheit wurde hergestellt.

Alternativ: MotionParams.HasAutoLimiting

DefaultFb1

I_LimitingFb

(Get, Set)

Zugriff auf den Standard-Baustein für die Drehmomentlimitierung, wenn ein spezifisches Handling verwendet wird.

Alternativ: SetExternal()

Direction1

E_AdaptableDirection

Get, Set

Richtung in der das Drehmomentlimit wirken soll.

Alternativ: SetpointDirection

NominalValue1

LREAL

Get, Set

Der vorgegebene Wert durch eine Corefunction

Alternativ: SetpointCmded

ReferenceValue1

LREAL

Get, Set

Referenzwert für den maximalen Kommando-Wert des Limits.

Alternativ: CmdReference

FB_Corefunction

FailedState

BOOL

Get, Set

Wenn gleichzeitig IsActivated TRUE ist: Signalisiert das Fehlschlagen eines akzeptierten Kommandos.

Wenn gleichzeitig IsActivated FALSE ist: Signalisiert die Ablehnung eines Kommandos.

HasFeedback

BOOL

Get

Die Corefunction hat auf ein anstehendes Kommando reagiert.

IsActivated

BOOL

Get

Die Corefunction hat ein akzeptiertes Kommando anstehen.

IsLocalCmd

BOOL

Get

Signalisiert, dass die Achse mit einem Kommando dieser Corefunction belegt ist.

ReadyState

BOOL

Get, Set

Die Corefunction ist betriebsbereit, aber zu diesem Zeitpunkt nicht kommandierbar.

Mögliche Gründe sind:
- Die Achse ist nicht freigegeben.
- Eine andere Corefunction ist aktiv.
- Die Corefunction unterstützt keine Kommandos.

1Obsolete

Limiting 3: Methoden

Name

Beschreibung

[INTERN] Cmd(bActivate)

Aktiviert/Deaktiviert die Vorgabe einer Limitierung durch eine Corefunction.

Diese Methode sollte nicht aus der Applikation heraus aufgerufen werden.

Limiting 4: Schnittstellen

Typ

Beschreibung

I_Corefunction

Standardschnittstelle auf FB_Corefunction.

I_Limiting

Standardschnittstelle auf FB_Limiting.

I_LimitingDev

Erweiterte Schnittstelle zur Einbindung in eine Corefunction.

I_LimitingOutput

Interne Implementierung der Ausgabeschnittstelle

I_LimitingFb1

Schnittstelle zur Implementierung einer externen Limitierungsfunktion

Alternativ: /

1Obsolete

Beispiel:

// configuration of some settings
iAxisBase.Limiting.CmdReference := 100.0; // %
iAxisBase.Limiting.Mode.Adaptive := TRUE;
iAxisBase.Limiting.Transition.HoldLow := TRUE;

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.1.4024.71
TwinCAT v3.1.4026.19

PC oder CX (x64, x86)

Tc3_PlasticFunctions (>= v12.14.0.0)