MC_MoveContinuousAbsolute

../_images/0f681ff935754a820a33139000983a50

Function Block MC_MoveContinuousAbsolute

This Function Block commands a controlled motion to a specified absolute position ending with the specified velocity.

Note

  • If the commanded position is reached and no new motion command is put into the buffer, the axis continues to run with the specified “EndVelocity”.
  • The Function Block will start the axis with state DiscreteMotion, while positioning.
  • It will change to state Continuous Motion (meaning: it will not stop by itself) with EndVelocity <> 0.
  • It will change to standstill with EndVelocity=0.

See the following chapter to check if this Function Block is supported by the used axis implementation: Overview

For this Function Block there is a visualization in the Library MC_Blocks_AC500_V11.

See the following chapter for a list of available data types: Overview

One use case for MC_MoveContinuousAbsolute is a linear cutter. One linear axis that is carrying a laser device that is used to cut a workpiece.

  1. Move the laser with fast velocity over the position lrStartCutPos. The laser is off during this movement.

    ../_images/d89c9e029a68c61c0a33139000224bbc
  2. Turn back and make sure to have the speed lrCutVelocity when at lrStartCutPos. At this position, switch the laser on.

    ../_images/0daa5a639a695fbc0a33139000938093
  3. Travel over the work piece with this constant speed while the laser is on.

    ../_images/06f783c59a69ea030a33139000cfddf2
  4. When reaching lrEndCutPos switch off the laser and move back to idle position with fast velocity.

    ../_images/9cfad30c9a6a992b0a331390013859e1

During the cutting process the laser must be moved with a fix velocity, no acceleration or deceleration phase can be tolerated. The laser must be moved to its waiting position after the cutting was done.

Example MC_MoveContinuousAbsolute

The explained movement can be achieved with the Function Block MC_MoveContinuousAbsolute in the following way:

../_images/fba61b6a9a7073ef0a331390012a39b9

Example MC_MoveContinuousAbsolute

Started with a rising edge of xStartCuttingCycle, the instance mca of MC_MoveContinuousAbsolute will move the axis with lrFastVelocity over lrStartCutPos, turn back and have the speed lrCutVelocity when reaching lrStartCutPos again in negative direction. In this point in time, InEndVelocity is set, and the laser is switched on. As no other motion Function Block interrupts this movement, MC_MoveContinuousAbsolute will keep travelling in negative direction with the current speed. After the axis has overstepped the position lrEndPos, where the laser is switched off, the MC_MoveAbsolute instance ma moves the axis with high speed to its idle position.

../_images/36d35b7e9a77846d0a331390003e98e0

Example MC_MoveContinuousAbsolute timing diagram