Open Core Interface - MLPI
MLPI-MotionLogicProgrammingInterface(mlpi4Java)  1.26.2
com.boschrexroth.mlpi.Movement Class Reference

Inherits com.boschrexroth.mlpi.MlpiComponent.

Collaboration diagram for com.boschrexroth.mlpi.Movement:
Collaboration graph

Public Member Functions

native void home ()
 
native void setAbsoluteMeasurement ()
 
native void power (boolean power)
 
native void moveVelocity (double velocity, double acceleration, double deceleration, double jerk)
 
native void moveAbsolute (double position, double velocity, double acceleration, double deceleration, double jerk)
 
native void moveRelative (double distance, double velocity, double acceleration, double deceleration, double jerk)
 
native void moveAdditive (double distance, double velocity, double acceleration, double deceleration, double jerk)
 
native void stop (boolean stop, double deceleration, double jerk)
 
native void gearIn (Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust)
 
native void gearInPos (Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, Motion.StartMode startMode, Motion.SyncDirection syncMode)
 
native void flexProfile (Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, int setSelection, boolean useSwitchingPos, double switchingPosition, Motion.ProfileStartPoint profileEntry, double masterOffset, double slaveOffset, Motion.SyncType syncMode, double syncVelocity, double syncAcceleration, Motion.ProfileExecutionMode executionMode)
 
native void wait (int timeout)
 
native void phasingSlave (double phaseShift, double velocity, double acceleration, double deceleration)
 
native void phasing (double phaseShift, double velocity, double acceleration, double deceleration)
 
native void torqueControl (double torque, double torqueRamp)
 
native void camIn (Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, double camShaftDistance, Motion.SyncDirection syncMode, Motion.StartMode startMode, Motion.CamTableId camId)
 
native void synchronOut ()
 
native void openCyclicPositionChannel ()
 
native void openCyclicVelocityChannel ()
 
native void openCyclicAnalogChannel ()
 
native void openCyclicTorqueChannel ()
 
native void writeCyclicPosition (double cyclicValue)
 
native void writeCyclicVelocity (double cyclicValue)
 
native void writeCyclicAnalog (double cyclicValue)
 
native void writeCyclicTorque (double cyclicValue)
 
native void moveContinuousAbsolute (double position, double endVelocity, double velocity, double acceleration, double deceleration, double jerk)
 
native void moveContinuousRelative (double distance, double endVelocity, double velocity, double acceleration, double deceleration, double jerk)
 

Detailed Description

Type Element Description
AxisRef _axisRef Defines the axis through the definition of control and axis number.
long _motionHandle actual motion handle

Definition at line 75 of file Movement.java.

Member Function Documentation

native void com.boschrexroth.mlpi.Movement.home ( )

This method commands to home an axis. Only axes with incremental encoders can be homed. If the axis has an absolute encoder, the command "set absolute measurement" must be used.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().home();
Note:
This method maps to the mlpiCore function mlpiMotionHome, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.setAbsoluteMeasurement ( )

This method commands to "set absolute measurement" of an axis. Only axis with absolute encoders can be used with this function.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().setAbsoluteMeasurement();
Note:
This method maps to the mlpiCore function mlpiMotionSetAbsoluteMeasurement, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.power ( boolean  power)

This method commands power to the drive. This is only necessary for a real axis. Virtual axis can be moved without giving power to the axis.

Parameters
[in]power1: Power on, 0: Power off.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().power(true);
// wait some time till the drive has switched to power
connection.motion().axes(axisNo).movement().wait(1000);
Note:
This method maps to the mlpiCore function mlpiMotionPower, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveVelocity ( double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands a velocity movement. Once the commanded velocity had been reached, the axis will continue to run with this velocity until another command is issued.

Parameters
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveVelocity(100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveVelocity, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveAbsolute ( double  position,
double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands an absolute movement. This means that the axis will move to a given target position.

Parameters
[in]positionTarget position in drives unit.
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveAbsolute(90, 100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveAbsolute, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveRelative ( double  distance,
double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands a relative movement. The relative position is added to the current position and is used as new target. The difference between this and an additive movement is that the position offset is added to the current position, not the target position. So a movement command which is currently running will be interrupted and only the position offset is added to the current position.

Parameters
[in]distanceDistance in drives unit.
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveRelative(90, 100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveRelative, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveAdditive ( double  distance,
double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands an additive movement. The additive position is added to the target position and is used as new target. It can be used to add a relative position to the already commanded movement.

Parameters
[in]distanceDistance in drives unit (is added to the target position).
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveAdditive(90, 100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveAdditive, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.stop ( boolean  stop,
double  deceleration,
double  jerk 
)

This method commands a stop of motion to the drive.

Note
After calling this function with TRUE you have to call it again with FALSE to get axis from state 'Stopping' to state 'Standstill' command and to make the axis accept new commands.
Parameters
[in]stop1: stopping, 0: exit Stopping mode. Important Note: This command is special in the way that it has to be called once with 'stop' = TRUE. This will bring the axis to a standstill. Once the axis is standing still, the command has to be called again with 'stop' = FALSE in order to enter the PLCopen 'Stand Still' mode.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().stop(true, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
connection.motion().axes(axisNo).movement().stop(false, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionStop, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.gearIn ( Motion.AxisRef  masterAxis,
int  numerator,
int  denominator,
double  fineadjust 
)

This method commands velocity synchronization to the master.

Parameters
[in]masterAxisReference to the master axis.
[in]numeratorGear ratio numerator.
[in]denominatorGear ratio denominator.
[in]fineadjustFine adjust for gear in %.
Example Java:
int axisNo = 2;
AxisRef axisMaster = new AxisRef(1, 1);
connection.motion().axes(axisNo).movement().gearIn(axisMaster, 1, 1, 0);
Note:
This method maps to the mlpiCore function mlpiMotionGearIn, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.gearInPos ( Motion.AxisRef  masterAxis,
int  numerator,
int  denominator,
double  fineadjust,
Motion.StartMode  startMode,
Motion.SyncDirection  syncMode 
)

This method commands position synchronization to the master.

Parameters
[in]masterAxisReference to the master axis.
[in]numeratorGear ratio numerator.
[in]denominatorGear ratio denominator.
[in]fineadjustFine adjust for gear in %.
[in]startModeSynchronization mode.
[in]syncModeSynchronization direction.
Example Java:
int axisNo = 2;
AxisRef axisMaster = new AxisRef(1, 1);
connection.motion().axes(axisNo).movement().gearInPos(axisMaster, 1, 1, 0, StartMode.STARTMODE_ABSOLUTE, SyncDirection.SYNC_SHORTESTWAY);
Note:
This method maps to the mlpiCore function mlpiMotionGearInPos, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.flexProfile ( Motion.AxisRef  masterAxis,
int  numerator,
int  denominator,
double  fineadjust,
int  setSelection,
boolean  useSwitchingPos,
double  switchingPosition,
Motion.ProfileStartPoint  profileEntry,
double  masterOffset,
double  slaveOffset,
Motion.SyncType  syncMode,
double  syncVelocity,
double  syncAcceleration,
Motion.ProfileExecutionMode  executionMode 
)

This method commands an axis to synchronize to the master by using a flex profile. The command can only be used on IndraDrives with interpolation in the control or with Sercos drives.

Parameters
[in]masterAxisReference to the master axis.
[in]numeratorGear ratio numerator.
[in]denominatorGear ratio denominator.
[in]fineadjustFine adjust for gear in %.
[in]setSelectionSelects the active set.
[in]useSwitchingPosDetermines whether switching position will be used.
[in]switchingPositionSwitching position.
[in]profileEntrySwitching conditions.
[in]masterOffsetMaster offset.
[in]slaveOffsetSlave offset.
[in]syncModeSynchronization type.
[in]syncVelocitySynchronization velocity.
[in]syncAccelerationSynchronization acceleration.
[in]executionModeExecution mode.
Example Java:
int axisNo = 2;
connection.motion().axes(axisNo).movement().flexProfile(axisMaster, 1, 1, 0, 0, false, 0.0, ProfileStartPoint.SLAVE_ORIGIN_MASTER_ORIGIN, 0, 0, SyncType.SYNC_RAMPIN_SHORTESTWAY, 100, 100, ProfileExecutionMode.EXECUTE_CYCLIC);
Note:
This method maps to the mlpiCore function mlpiMotionFlexProfile, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.wait ( int  timeout)

This method waits until a given motion command is done or an error occurs. An optional timeout can be given to the function.

Parameters
[in]timeoutTimeout in milliseconds for motion command to finish.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function utilMotionWait, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.phasingSlave ( double  phaseShift,
double  velocity,
double  acceleration,
double  deceleration 
)

This method commands an axis to perform a slave phase offset when the drive is synchronized to the master. The command can also be executed when unsynchronized, but it will only take effect when synchronizing the axis.

Parameters
[in]phaseShiftPhase shift in drives unit (master or slave).
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().phasingSlave(90, 100, 10, 10);
Note:
This method maps to the mlpiCore function mlpiMotionPhasingSlave, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.phasing ( double  phaseShift,
double  velocity,
double  acceleration,
double  deceleration 
)

This method commands an axis to perform a master phase offset when the drive is synchronized to the master. The command can also be executed when unsynchronized, but it will only take effect when the axis is synchronized.

Parameters
[in]phaseShiftPhase shift in drives unit (master or slave).
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().phasing(90, 100, 10, 10);
Note:
This method maps to the mlpiCore function mlpiMotionPhasing, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.torqueControl ( double  torque,
double  torqueRamp 
)

This method commands a move torque.

Parameters
[in]torquePhase shift in drives unit (master or slave).
[in]torqueRampVelocity in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().torqueControl(1, 1);
Note:
This method maps to the mlpiCore function mlpiMotionTorqueControl, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.camIn ( Motion.AxisRef  masterAxis,
int  numerator,
int  denominator,
double  fineadjust,
double  camShaftDistance,
Motion.SyncDirection  syncMode,
Motion.StartMode  startMode,
Motion.CamTableId  camId 
)

This method commands an axis to synchronize to the master by using a cam table.

Parameters
[in]masterAxisReference to the master axis.
[in]numeratorGear ratio numerator.
[in]denominatorGear ratio denominator.
[in]fineadjustFine adjust for gear in %.
[in]camShaftDistanceCam shaft distance in slave units.
[in]syncModeSynchronization direction.
[in]startModeSynchronization mode.
[in]camIdID of the Cam table to be used.
Example Java:
int axisNo = 2;
AxisRef axisMaster = new AxisRef(1, 1);
connection.motion().axes(axisNo).movement().camIn(axisMaster, 1, 1, 0, 4, SyncDirection.SYNC_SHORTESTWAY, StartMode.STARTMODE_ABSOLUTE, CamTableId.CAM_TABLE_1);
Note:
This method maps to the mlpiCore function mlpiMotionCamIn, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.synchronOut ( )

This method commands an axis to become unsynchronized. The axis will continue to run with the velocity at the time the command was issued. Can be called after GearIn, GearInPos, FlexProfile and CamIn.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().synchronOut();
Note:
This method maps to the mlpiCore function mlpiMotionSynchronOut, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.openCyclicPositionChannel ( )

This method opens a cyclic channel for cyclic position commands.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().openCyclicPositionChannel();
Note:
This method maps to the mlpiCore function mlpiMotionOpenCyclicPositionChannel, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.openCyclicVelocityChannel ( )

This method opens a cyclic channel for cyclic velocity commands.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().openCyclicVelocityChannel();
Note:
This method maps to the mlpiCore function mlpiMotionOpenCyclicVelocityChannel, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.openCyclicAnalogChannel ( )

This method opens a cyclic channel for cyclic analogue commands.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().openCyclicAnalogChannel();
Note:
This method maps to the mlpiCore function mlpiMotionOpenCyclicAnalogChannel, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.openCyclicTorqueChannel ( )

This method opens a cyclic channel for cyclic torque commands.

Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().openCyclicTorqueChannel();
Note:
This method maps to the mlpiCore function mlpiMotionOpenCyclicTorqueChannel, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.writeCyclicPosition ( double  cyclicValue)

This method commands a cyclic position.

Parameters
[in]cyclicValueCyclic position value.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().writeCyclicPosition(1);
Note:
This method maps to the mlpiCore function mlpiMotionWriteCyclicPosition, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.writeCyclicVelocity ( double  cyclicValue)

This method commands a cyclic velocity.

Parameters
[in]cyclicValueCyclic velocity value.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().writeCyclicVelocity(1);
Note:
This method maps to the mlpiCore function mlpiMotionWriteCyclicVelocity, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.writeCyclicAnalog ( double  cyclicValue)

This method commands a cyclic analog value.

Parameters
[in]cyclicValueCyclic analog value.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().writeCyclicAnalog(1);
Note:
This method maps to the mlpiCore function mlpiMotionWriteCyclicAnalog, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.writeCyclicTorque ( double  cyclicValue)

This method commands a cyclic torque value.

Parameters
[in]cyclicValueCyclic torque value.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().writeCyclicTorque(1);
Note:
This method maps to the mlpiCore function mlpiMotionWriteCyclicTorque, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveContinuousAbsolute ( double  position,
double  endVelocity,
double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands a continuous absolute movement. This means that the axis will move to a given target position and go on with defined end velocity.

Parameters
[in]positionTarget position in drives unit.
[in]endVelocityEnd velocity in drives unit.
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveContinuousAbsolute(90, 75, 100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveContinuousAbsolute, where you can find further documentation.
native void com.boschrexroth.mlpi.Movement.moveContinuousRelative ( double  distance,
double  endVelocity,
double  velocity,
double  acceleration,
double  deceleration,
double  jerk 
)

This method commands a continuous relative movement. The relative position is added to the current position, which is used as new target position and go on with defined end velocity.

Parameters
[in]distanceDistance in drives unit (is added to the target position).
[in]endVelocityEnd velocity in drives unit.
[in]velocityVelocity in drives unit.
[in]accelerationAcceleration in drives unit.
[in]decelerationDeceleration in drives unit.
[in]jerkJerk in drives unit.
Example Java:
int axisNo = 1;
connection.motion().axes(axisNo).movement().moveContinuousRelative(90, 75, 100, 10, 10, 0);
connection.motion().axes(axisNo).movement().wait(10000);
Note:
This method maps to the mlpiCore function mlpiMotionMoveContinuousRelative, where you can find further documentation.

The documentation for this class was generated from the following file: