Velocity Auto-tuning

Note

This feature is available since OBLAC Drives 19.0

The general purpose of the velocity control loop auto-tuning is to design controller gains based on user specifications and the identified model of the set-up. The procedure calculates gains for the PI velocity controller.

Prerequisites

Before conducting velocity auto-tuning check the following:

  1. The System Identification has been executed successfully.

  2. The obtained model corresponds to the current configuration of the system. Otherwise the identification procedure should be repeated.

  3. If there is a gearbox in between, the gear ratio should be specified.

  4. Make sure that the sensors are mounted properly and calibrated.

Limitations

  • The procedure uses a linear mathematical model of the system. If there are strong nonlinearities there will be a difference between the actual and the requested performance.

  • Max bandwidth of 100 Hz is specified because of 1 kHz EtherCAT frequency.

How to use

  1. The controller gains are updated automatically every time the sliders are dragged and released.

  2. There are 2 sliders that allow users to specify the demanded performance of the control loop:

    1. Damping ratio is a parameter of an oscillatory system that reduces oscillations. In the velocity control loop, this parameter controls overshoot and rise time. The damping ratio can be divided into 2 regions:

      1. Underdamped < 1: overshoot is allowed, results in a sharper response.
        Example of a velocity control loop step response with a damping ratio of 0.4:
        ../../../../_images/vel_1.png
      2. Overdamped > 1: no overshoot, results in a less sharp response.
        Example of a velocity control loop step response with a damping ratio of 2:
        ../../../../_images/vel_2.png

        A damping ratio higher than 1 may lead to undershoot and non-zero steady state error.

    2. Bandwidth (also called 3 dB bandwidth) is a characteristic of a control loop that characterizes sharpness of the control loop. It is a frequency the system may follow while keeping 71% of the amplitude.
      Example of velocity control loop 10 Hz sine wave tracking with a requested bandwidth of 10 Hz:
      ../../../../_images/vel_3.png

      An example of velocity control loop 10 Hz sine wave tracking with a requested bandwidth of 80 Hz:

      ../../../../_images/vel_4.png

Next steps

After tuning your motion control system, you can for example improve performance by using these features:

Cogging Torque Compensation

Removes ripples caused by magnetic interaction between motor rotor and stator.

Feedback signal filtering

Digital filters can be used to remove unwanted frequencies such as noise or nonlinear effects.

Gain scheduling

Applies controller gains which will change dynamically regarding the current speed.

F.A.Q.

# Do I need to manually adjust controller gains after the auto-tuning?

  • Usually, sliders provide enough flexibility to achieve demanded performance.

# Can I define other velocity/torque units in the custom firmware?

  • The auto-tuning will provide gains only for default units.

# What if my encoder has low resolution?

  • This will definitely result in worse performance compared to higher resolution encoders. Additionally, the velocity signal used in system identification might have multiple zeros that may result in incorrect model.

# Do I have to repeat system identification and tuning after I attached a load to the system?

  • It is better to repeat both procedures. If it is not possible to repeat the system identification, auto-tuning still can be used. But the resulting settling time will differ from the requested.

# What if the system is unstable after auto-tuning?

  • Try to input smaller bandwidth.

  • Check the motor and sensor configuration parameters.

  • Check the velocity signal in the playground in the torque control mode. Ensure that it shows correct data during manual rotation of the shaft.

  • Soften filters in position/velocity control loops. They might introduce delay.

# What if the test signals trigger overcurrent/undervoltage?

  • Reduce the test signal amplitude or frequency.

  • Reduce bandwidth.

  • Check the configuration of the motor and sensor.

  • Make sure that correct power supply is used.

# How do filters influence the auto-tuning?

  • Using a velocity filter results in a phase delay based on the filter order and its cutoff frequency. It is recommended to perform a system identification and tuning after filters were configured. Be careful, filters severely reduce stability due to phase delay.