if you look inside books for a motor control, you will find always control circuits with a PI-current control. It does not really make sense to me, because it means that you have always a steady-state error if you do not compensate the back-emf voltage somehow.

A simple example:

The motor (dc-motor or non-salient synchronous motor in q-reference system) can be modelled as:

Vin = (L*s+R)*I+K_v*K_m*I/(J*s)

L:=motor inductance

R:= winding resistance

K_m:=factor Torque/Current

K_v:=factor (Back-emf voltage)/speed

J:=inertia

s:=Laplacian variable

Vin:=Input voltage (Uq)

I:=current

It results in the following system:

G(s) = I/Vin=J*s/((L*s+R)*(J*s)+K_m*K_v)

The PI-controller has the function:

K(s)=K_p*(1+K_i/s)

The closed-loop transfer function is:

T(s)=K(s)*G(s)/(1+K(s)*G(s))

It results in a closed-loop bode plot and step function as attached.

Why is the steady-state error disregarded? How is it done in professional inverter systems?

Note: Friction is disregarded in this case. If you consider friction, you will shift the zero in the open-loop transfer function. But sometimes friction is very small and can be disregarded. Is it maybe a problem for this kind of modelling?

Thank you for your answer.

Sebastian