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.
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.
Never seen servo motor so stiff :)
that’s great. Really clever and yes – it increases dynamics significantly. Just for example – when I’ve started with VSD-E some years ago I’ve made a test with the same motor using once the VSD-E and then a Hi-End servo driver from a fabulous European company. The test was pretty simple – rotate the motor at max. speed (3000 rpm) in positive direction, then without any ramp with “infinite” acceleration, turn it in opposite direction – there is a jump in the speed setpoint of 6000 rpm. The result was: 11 ms for VSD-E against 14 ms for the other drive. The main reason: VSD-E has a current loop resp. delay of 50 us (20 KHz PWM), the other drive – 62.5 us (16 KHz).
3 ms aren’t much, but that’s why we have chosen the “unknown” VSD-E for this project. The main task there was to realize 8 positionings/second, each one about 1/2 revolution. It works.
I love seeing all this fine tuning, and brilliant finish touches.
I know how much work can go into some seemingly small thing like this, it is appreciated.