I'm confused by the fact that PLCopen MC-blocks used to control servo drives from a PLC have separate acceleration and deceleration parameter. For instance, MC_MoveAbsolute.

I don't understand what happens when you need to switch directions?

For instance, if one MC_MoveAbsolute with Acceleration1 and Deceleration1 went in one direction and then you cancel this mid-way by calling another MC_MoveAbsolute with Acceleration2 and Deceleration2. Which of these four parameters is going to be used initially when dropping velocity down to zero, which when accelerating in the new direction and which when finally reaching the target?

My other question is when is this distinction even useful?

I could understand if they had a parameter for max acceleration in positive direction and max acceleration in negative direction, for instance for carrying load up and down against gravity or for load which is more stable against forces in one direction than the other. But what kind of load requires one set of acceleration and deceleration parameters in one direction and is then ok when those same parameters are used in the other direction? The forces involved will actually be reversed so this requires the programmer to always be careful about swapping the parameters depending on the direction of motion.

  • 2
    \$\begingroup\$ Warning: "My other question is " with get your question removed for :needs focus". \$\endgroup\$ Oct 21, 2023 at 14:26
  • 1
    \$\begingroup\$ @DavideAndrea In this case, however, the “other question” is a logical follow up from the first. The first question is “How does this work?” and the second question is “Why?” \$\endgroup\$
    – Ben Miller
    Oct 21, 2023 at 18:14

1 Answer 1


I only have a useful answer to your second question. High friction loads are often easier to control with a gentler acceleration but can stop very quickly. If the load is high friction in both directions, then the acceleration and deceleration are not direction dependent.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.