BM_MoveRelative

 

 

Beschreibung

Das Motion Control Kommando BM_MoveRelative führt eine kontrollierte Bewegung um die angegebene relative Position zum Zeitpunkt der Aufschaltung aus.

Parameter Eingang

Datentyp

Beschreibung

Execute

BOOL

Flankensensitive Ausführung

Distance

REAL

Relative Distanz der Bewegung; [Inc]

Velocity

REAL

Betrag der Geschwindigkeit der Zielpositionierung; [Inc/ms]

Acceleration

REAL

Betrag der Beschleunigung innerhalb der Zielpositionierung; [Inc/ms²]

Deceleration

REAL

Betrag der Verzögerung innerhalb der Zielpositionierung; [Inc/ms²]

Jerk

REAL

Betrag des Sprungs; [Inc/ms³]

Direction

BOOL

Positionierung Richtung;

 

 

Parameter Ausgang

Datentyp

Beschreibung

Done

BOOL

Zielposition erreicht. Die Achse wechselt in den Zustand Standstill

Moving

BOOL

Positionierung gestartet und Ziel nicht erreicht.

Busy

BOOL

Parameter Lesen/Schreiben aktiv.

CommandAborted

BOOL

Abbruch durch ein anderes Motion Control Kommando, BM_Stop oder Errorstop

Error

BOOL

Parameter Lesen/Schreiben Fehler; ErrorID ist gültig

ErrorID

DWORD

Kommunikation ErrorID-Siemens Fehlerliste

Parameter

Ein- und Ausgang

Datentyp

Beschreibung

Axis

UDT

BM Motion Control Achsvariable

 

Beschreibung

Das Kommando BM_MoveRelative führt eine kontrollierte relative Positionierung ausgehend vom Positionsistwert durch. Ist eine absolute Positionierung mit dem Zustand Standstill abgeschlossen, so wird die absolute Position um den Eingang Distance relativ geändert.
Das Kommando schließt mit Done = TRUE und dem Zustand Standstill ab. Mit Execute = TRUE erfolgt eine flankensensitive Ausführung, wobei die Eingangswerte übernommen werden und das Kommando an dem an Axis definierten Antrieb umgesetzt wird. Ein erneutes Aufschalten des Kommandos erfordert ein FALSE nach TRUE Wechsel am Eingang Execute, wobei dieser Wechsel zur Ausführungszeit des Kommandos mit neuen Eingangswerten eine erneute relative änderung des Positionierzieles darstellt.

Bewegungskommando:

Die flankensensitive Ausführung bewirkt einen Abbruch des aktiven Bewegungskommandos. Die Ausführung von Abbruch wird mit BM_Stop, fehlender Betriebsbereitschaft an BM_Power oder Errorstop abgebrochen. Bei der Ergebnismeldung ist immer nur eines der Ausgangsbits Done, Busy, CommandAborted aktiv.

Flankensensitive Ausführung:

Zur Ausführung des Kommandos kann der Eingang Execute ein Zyklus TRUE sein. Anschließend wird das Kommando ausgeführt, das Ergebnis Done nur einen Zyklus lang gemeldet. wenn Eingang Execute = 1, Anschließend wird das Kommando ausgeführt, das Ergebnis Done =1. Done wird zurückgestzt, wenn Eingang Execute =0.


 

Diagramm für Flankensensitive Ausführung:

Diagramm 1:

Diagramm 2:

Zustandskontrolle über BM_ReadStatus:
Aus Zustand:        Standstill, DiscreteMotion, ContinuousMotion, SynchronizedMotion.
Nach Zustand:      DiscreteMotion.

 

Empfohlene Task:  OB1.

 

Hinweis:

Die resultierende Zielposition muss innerhalb der Positionierstrecke liegen und kann mit geräteseitigen sowie Software-Endschalter begrenzt werden. Wird der Zustand DiscreteMotion in einen anderen Bewegungszustand, z. B. ContinuousMotion verlassen, so ist anschließend gegebenenfalls eine Referenzfahrt (BM_Home) durchzuführen.

Ein Befehl von "BM_MoveRelative" darf nicht aktiviert werden, bevor einem Befehl von andere Funktion Bausein noch nicht erfolgreich ausgeführt wurde.

Und Kommando sollte nicht aktiviert werden bei "BM".AXIS[x].DRIVE.BM_AXIS_STATUS.ParmRW_Active =1, Error durch BM_Reset zurücksetzen.

 

Eingang Execute:

TRUE:  Flankensensitive Ausführung, die Eingangsparameter werden übernommen.
FALSE: Keine Ausführung, oder Reset der FC-Ausgänge, wenn Initialised bereits TRUE ist zum Zeitpunkt Execute=FALSE.

Eingang Distance:

Vorzeichenbehaftete Angabe der relativen Distanz in Inkrementen. Bei Baumüller Antrieben entspricht eine Achsumdrehung einer Auflösung von 65536 Inkrementen, die auch Benutzereinheiten genannt werden.

Eingang Velocity:

Angabe als Betrag in Inkrementen pro Millisekunden. Es handelt sich um die maximale Geschwindigkeit der Zielpositionierung die nicht notwendigerweise erreicht werden muss.

Eingang Acceleration:

Positive Beschleunigung als Betrag in Inkrementen pro Millisekunden².

Minimal: 0.07 [Inc/ms²], maximal: 655.35 [Inc/ms²]

Default: 2.00 [Inc/ms²]

Eingang Deceleration:

Negative Beschleunigung als Betrag in Inkrementen pro Millisekunden.

Minimal: 0.07 [Inc/ms²], maximal: 655.35 [Inc/ms²]

Default: 2.00 [Inc/ms²]

Eingang Jerk:

Sprung der Beschleunigungspositionierung. Betrag in Inkrementen pro Millisekunden³.

Minimal: 0.07 [Inc/ms³], maximal: 655.35 [Inc/ms³]

Default: 0.25 [Inc/ms³]

Ausgang Done:

TRUE = Positionierung ist ausgeführt. Achse wechselt in den Zustand Standstill.
FALSE = Kommando aktiv oder nicht möglich.

Ausgang Moving:

TRUE: Zielposition noch nicht Erreicht bei einer gestarteten Positionierung.
FALSE: nicht aktiv.

 

Ausgang Busy:

TRUE:  die Service Kommunikation für Parameter Lesen/Schreiben aktiv.

FALSE: nicht aktiv.

Ausgang CommandAborted:

TRUE: Abbruch durch ein anderes Motion Control Kommando, BM_Stop Kommando,

Errorstop oder fehlender Betriebsbereitschaft an BM_Power.

FALSE: nicht aktiv.

Ausgang Error:

TRUE: ein Fehler bei Service Kommunikation für Parameter Lesen/Schreiben vorhanden Info an ErrorID gültig und Error Info. siehe S7 Beschreibung.

FALSE: Kein Fehler aktiv.

Ausgang ErrorID:

die Information von Service Kommunikation Fehler(genaue Info. siehe S7 Beschreibung)

Ein- und Ausgang Axis:

Ein-/Ausgang Parameter Axis ist Nummer von angesteuerte bmaXX Antrieb Gerät.

Am Ein- und Ausgang Axis wird die BM Motion Control Referenz vom Type CPU1500_BM_AXIS_REF angeschlossen. Bei der Programmierung mit der Datenbausteinvorlage "DB5" wird die Variable wie folgt verwendet: "BM.AXIS[x]"

Dabei ist "x" die Achsennummer des Antriebs.

 

 

Zurück zur Übersicht