I think ( don't know for sure ) that if we have an instant stator current, Istat, that induces a B-field ( Bstat ) which has an angle α to Brotor,
then the Istat is decomposed into Id = Istat * cos α , Iq = Istat * sin α.

In this way Id will not yield any torque, because BId has an angle to Brotor = 0.

BIq has angle to Brotor = 90°, so Iq will yield a torque.

That's why a vector-controlled system tries to control Id to be zero, thus increasing the efficiency of the motor.

Controlling a synchronous motor, you don't need these Id's and Iq's: You just measure the angular position of the rotor by means of an encoder, then induce a current in the stator that will create a Bstat, that is perpendicular to the Brotor.

I think ( don't know for sure ) that if we have an instant stator current, Istat, that induces a B-field ( Bstat ) which has an angle α to Brotor,
then the Istat is decomposed into Id = Istat * cos α , Iq = Istat * sin α.

In this way Id will not yield any torque, because BId has an angle to Brotor = 0.

BIq has angle to Brotor = 90°, so Iq will yield a torque.

That's why a vector-controlled system tries to control Id to be zero, thus increasing the efficiency of the motor.

Controlling a synchronous motor, you don't need these Id's and Iq's: You just measure the angular position of the rotor by means of an encoder, then induce a current in the stator that will create a Bstat, that is perpendicular to the Brotor.