MC_MoveRelative
This FB serves to carry out a relative positioning. After reaching the target position, the axis is at standstill if no further motion commands are pending.
|
|
|
|
MC_MoveRelative |
|
|
|
|
|---|---|---|---|---|---|---|---|
|
AXIS_REF |
- |
|
Axis |
Done |
|
- |
BOOL |
|
BOOL |
- |
|
Execute |
Busy |
|
- |
BOOL |
|
BOOL |
- |
|
ContinuousUpdate |
Active |
|
- |
BOOL |
|
LREAL |
- |
|
Distance |
CommandAborted |
|
- |
BOOL |
|
LREAL |
- |
|
Velocity |
Error |
|
- |
BOOL |
|
LREAL |
- |
|
Acceleration |
ErrorID |
|
- |
L_IE1P_Error |
|
LREAL |
- |
|
Deceleration |
|
|
|
|
|
LREAL |
- |
|
Jerk |
|
|
|
|
|
MC_BUFFER_MODE |
- |
|
BufferMode |
|
|
|
|
|
|
|
|
|
|
|
|
|
Inputs
|
Name Data type |
Information/possible settings |
|
|---|---|---|
|
Axis |
Transfer of the axis data structure |
|
|
Execute BOOL |
FALSE รค TRUE |
Start positioning. |
|
ContinuousUpdate BOOL |
Continuous acceptance of the profile parameters |
|
|
FALSE |
The profile parameters ( Distance , Velocity , Acceleration , ...) are accepted with a rising edge at Execute . |
|
|
TRUE |
The profile parameters are accepted continuously, i.e. during the execution, the motion profile may change. |
|
|
Distance LREAL |
Distance to be traversed in [unit]
|
|
|
Velocity LREAL |
Maximum velocity in [unit/s] for approaching the target position
Special case : Velocity = 0: The default value defined in subindex 40 is used for the velocity. |
|
|
Acceleration LREAL |
Maximum acceleration in [unit/s 2 ] Special case : Acceleration = 0: The default value defined in subindex 41 is used for the acceleration. |
|
|
Deceleration LREAL |
Maximum deceleration in [unit/s 2 ] Special case : Deceleration = 0: The default value defined in subindex 41 is used for the acceleration. |
|
|
Jerk LREAL |
Maximum jerk in [unit/s 3 ] Special case : Jerk = 0: The default value defined in subindex 43 is used for the jerk. |
|
|
BufferMode |
Mode for processing successive motion commands |
|
Outputs
In the following example, two FB instances of MC_MoveRelative are connected in series as a cascade.
-
Case
: FB2 will only be started after FB1 has reached its commanded distance "6000" (with a velocity = "0").
- The Done output of FB1 starts the execution of FB2.
- FB2 traverses the axis by the commanded distance "4000".
-
Case
: FB2 is started (by means of a test signal) before FB1 has reached its commanded distance.
- The execution of FB1 is aborted ( CommandAborted = TRUE).
- FB2 adds the distance "400" to the current position "3250" and traverses the axis to the resulting position "7250".
Example: Linking two MC_MoveRelative commands
Motion axes (AXIS_REF)