Position PID
Position PID is the mode used when high positioning accuracy is required. Usually, no compliance is
assumed in this mode, so the actuator will try to hold the read position as close to the commanded value as
possible. One must be aware that position mode is actually made out of two PID controllers - the inner loop
which is the velocity PID discussed earlier and the position PID working on top of the velocity loop. This is
why it is essential to first take care of the velocity controller, considering the highest velocity that may occur
in the system between the corresponding position commands in time. When both high and very low
velocities are needed in a system it might be necessary to change the velocity PID gains on the fly, depending
on the commanded velocity in each trajectory segment. When the velocity PID is ready the next step is to
adjust the position PID gains so that a required actuator response is achieved. Since position readout is
much less noisy compared to velocity it is recommended to first pick a kP value that will allow the motor to
get to a setpoint position. In the next step kI and kD can be varied, together with the kI limiting factor
(windup). One should remember the position PID output limit which is called MaxVelocity. This is a
parameter that will limit the maximum commanded velocity and thus may limit actuator performance. It
should be set to a value that is close to the actual trajectory segment maximum achievable velocity. Making
it too high when very low velocities are required may result in oscillations.
Impedance PD
The impedance mode is relatively straightforward to get started with since there are only two main
parameters that affect the response of the actuator. The easiest way is to think of a motor as a combination
of a torsional spring with a damper, where kP is the spring constant, and kD is the damping coefficient. The
higher the kP gain the more accurate positioning is achieved, but also, when itʼs set too high oscillations may
be introduced. This is why a damping coefficient should be introduced. It makes the response more
“smooth”, usually less aggressive, and minimizes overshoot. It can be thought of as placing the motor in a
viscous fluid where the viscosity of the fluid is the damping coefficient. This mode, however, can introduce
steady-state error due to the lack of integral term. If high positioning accuracy is needed be sure to read
about position PID mode.
Current PI
Current/torque PI is the lowest level controller. Its gains are not directly user-configurable, however, they can
be modified using the bandwidth parameter. Please see the
section for more insight on the topic.
2.5. Safety limits
There are safety limits imposed on the maximum phase current as well as maximum torque and velocity to
ensure a safe operation of the drive. Safety limits are there to protect the controller and the motor from
overheating and the surrounding environment from too-powerful actuator movements.
Warning: setting the max current limit to above the maximum continuous current may damage the
MD80 controller if the maximum torque is commanded for a prolonged period.
www.mabrobotics.pl