Considering the equations shown in User's Guide, Machine and inverter, we can write the transfer function of the drive as:


Note: To avoid influence of the current ripple on control, the measured current is filtered. The small time constants of the inverter and the smoothing filter are summed up: Tσ=Td;+TsI

Choosing a PI-controller


we get the transfer function of the open loop:


Compensating the bigger time constant Ta, i.e. Ti=Ta, the transfer function of the closed loop gets:


According to the absolute optimum, we check the absolute of this transfer function, trying to keep it = 1 for a wide frequency range:

Comparing the coefficients in numerator and denominator, we find:

The optimal proportional gain is found as kp = Ra Ta / (2 Tσ).

The transfer function of the current controlled drive gets:

The numerator's zero can be compensated by a first order filter of the reference, resulting in:

The first order with substitute time constant Tsub = 2 Tσ is an approximation used for the design of the further controllers.

Note: The induced voltage Vi = kφ ω can be calculated from measured speed and acts like a disturbance. Therefore Vi should be used as a feed-forward for the current controller. Furthermore, the voltage that can be applied to the drive is limited. Therefore we use a
limited PI controller with feed-forward and anti-windup.

The example CurrentControlled applies a reference torque step to the torque controlled drive at stand still, the load torque is linearly dependent on speed.

The current controller causes a constant armature current, that causes constant torque delivered by the machine. Speed will rise up to that point of operation, where that torque is in balance with the load torque.

Generated at 2020-06-04T01:38:10Z by OpenModelicaOpenModelica 1.16.0~dev-420-gc007a39 using GenerateDoc.mos