Maximizing the bandwidth of Torque Control

The latest achievement in IONI servo drive development was the maximization of torque control bandwidth. IONI actuates motor by a 20 kHz pulse width modulated (PWM) power output which essentially means switching the supply voltage between 0V and supply voltage (HV+) very fast causing the desired current to flow in the motor coils. Drive samples coil currents once at every PWM cycle and also re-calculates the PWM duty cycles on every cycle.

Last couple of we have spent perfecting the torque controller speed without sacrificing the dynamic range or smoothness. Bandwidth of controller is dictated by two factors: update rate and delay. Update rate was already at maximum (every cycle) but previously the delay was one full PWM cycle (50 µs). By optimizing code enough, drive is able to complete torque control calculations within half PWM cycle (<25 µs) which shortens the delay by 25 µs.

High bandwidth torque control timing diagram. Torque controller has the highest bandwidth when update rate is at maximum and delay at minimum.

High bandwidth torque control timing diagram demonstrating half PWM cycle delay and full PWM frequency update rate. Torque controller has the highest bandwidth when the update rate is at the maximum and delay at the minimum.

Ok, 25 µs doesn’t sound much. But it actually is more notable than it first seems. This change yields 30-50% boost in torque control bandwidth which can be seen sharper change of torque without causing any overshoot. This allows us to set position and velocity control gains higher without losing stability. In the end, the result is more stable and more stiff servo motor.

Torque controller step response with one PWM cycle torque control delay (top) and half PWM cycle delay ( bot). Notice the overshoot caused by the additional delay.

Torque controller step response with one PWM cycle torque control delay (top) and half PWM cycle delay (bot) without changing torque controller gains. Notice the overshoot caused by the additional delay. The overshoot can be cured by lowering torque control gains, but that also reduces bandwidth.

Never seen servo motor so stiff :)

Granity gets better

While we develop IONI, we are also developing Granity setup software. Yesterday’s little innovation was to add visual aids for displaying the reason why drive is not in active state.

Granity status page now visualizes the reason why drive is idling

No more guesswork! Status page now tells the reason why drive is idling.

IONI in production!

The first production batch of IONI went into production! We should see final devices arrive in February. While we wait, we will be finishing firmware, documentation and Granity to the point where we can start shipping drives immediately after arrived & tested.