Configure Nominal Output Torque in Motor Configuration

We control our axes using the MpAxisBasic (mapp Motion) function block and generally use identical values for acceleration and deceleration.

We perform axis autotuning according to the procedure described in the following documentation:

For some mechanical systems with ball screw axes, the motor torque must be limited according to the manufacturer’s specifications. Since this torque limit is static and does not need to be adjusted during operation, we configured it in the motor settings under Gearbox, as described here:

The configured torque limitation works correctly during both acceleration and deceleration. However, we observed that the position controller and speed controller do not appear to take the reduced torque capability into account. As a result, the axis may generate following errors because the demanded acceleration or deceleration can no longer be achieved within the available torque limit.

Increasing the controller tolerances (for example by using Automatic 2) can reduce these errors, but this is not the solution we are looking for.

One option would be to use the MpAxisTorqueLimitType parameter of MpAxisBasic. However, this parameter does not support the direction setting mcDIR_BOTH.

For vertical axes, limiting torque in only one direction is often insufficient. During deceleration, gravity can cause the required motor torque to exceed the configured limit, so a bidirectional torque limitation is required.

What is the recommended approach for implementing a symmetric torque limit that is considered by the motion control loops and avoids unnecessary following errors?

Should MC_LimitLoad be used instead, since it supports mcDIR_BOTH, or is there a preferred solution that works together with the torque limit configured in the motor parameters?

Hi @simon.buschor ,
I see we asked same question in our motion internal channel so I report Philipp’s answer:

via LimitLoad on MpAxisBasic the torque can be limited, internally the ParIDs LIM_T1_POS/NEG are written.

Those torque limits written via the LimitLoad command from MpAxisBasic just affect the accelerating torque limits, not the decelerating torque limits.

How / Where do i set value of the “T2 Lim_T2_ not” ? (Using Mapp Motion)

Can be done with MC_BR_LimitLoad_AcpAx. There all 4 quadrants can be limited.

Ciao
Valerio

If your movement profile has a certain acceleration, which causes a higher torque than limited, you should decrease the acceleration of your movement profile. This is not done automatically.