Id and Iq: The d-q Frame in Motor Control Explained

Introduction

Ask any FOC engineer about a running motor and they will talk about two numbers, Id and Iq, not about the three phase currents the motor actually draws. That is not jargon for its own sake. It is the whole trick that makes vector control work.
In the d-q frame, Iq is the quadrature-axis current that produces torque, while Id is the direct-axis current that sets the rotor flux, or field. Field Oriented Control steers these two steady, DC-like quantities instead of three oscillating phase currents. That is why a well-tuned AC drive can feel as direct as a brushed DC motor.

What Is the d-q Frame?

The d-q frame is a rotating reference frame that spins together with the rotor. Instead of measuring current on the three fixed motor phases, you measure it on two axes that turn with the magnetic field: the direct axis (d), aligned with the rotor flux, and the quadrature axis (q), ninety electrical degrees ahead of it.

Id and Iq: The d-q Frame in Motor Control Explained 1
Getting there takes two coordinate transforms. The Clarke transform reduces the three phase currents (abc) to two currents on a fixed two-axis frame. The Park transform then rotates that frame so it follows the rotor, giving you d and q. The two transforms together are the core of Field Oriented Control.
The payoff is a clean split. Each axis controls one physical thing.
d (Id)
q (Iq)
What it controls
Rotor flux / magnetizing field
Torque
”Typical
Takeaway: the d-q frame turns one rotating current vector into two independent knobs, flux and torque.

Why Two Axes? From AC Phases to DC-Like Currents

Look at the three phase currents on an oscilloscope and you see three sine waves, each shifted by 120 degrees. Their amplitude and phase both change with speed and load. A controller that has to track a moving sine wave in real time has a hard job, and a simple PI controller does it poorly.
The d-q frame fixes this. Because the frame rotates with the rotor, a steady operating point that looks sinusoidal in the phases becomes constant in d-q. At a fixed torque and speed, Id and Iq sit still. A PI controller holds a constant target with almost no error, which is exactly what you want.
So the reason for two axes is practical, not academic. Steady values are controllable values. Splitting the current into Id and Iq is what lets two ordinary PI loops run a three-phase motor with precision.

Iq: the Torque-Producing Current

Iq is the part of the stator current that lies on the quadrature axis, perpendicular to the rotor flux. That perpendicular position is what makes it produce torque efficiently.

Id and Iq: The d-q Frame in Motor Control Explained 2

Iq and Torque

For most surface-magnet motors, torque is close to Iq times the torque constant Kt:
T ≈ Kt × Iq
This near-linear link is the reason FOC feels like controlling a DC motor. Command a torque, divide by Kt, and you have your Iq target. The torque constant ties motor current to shaft torque, and you can read more in torque control.

Controlling Iq in Closed Loop

In a running drive, a PI controller compares the measured Iq to its target and adjusts the q-axis voltage until they match. That Iq loop is the torque loop. When you ask a FOC controller for a certain torque, under the hood it is regulating Iq. Hold Iq steady and the torque stays steady, even as the rotor spins and the phase currents keep sweeping through their sine waves.
Takeaway: Iq sets torque, and the Iq PI loop is how a FOC drive delivers a torque command.

Id: the Field / Magnetizing Current

Id is the part of the current on the direct axis, aligned with the rotor flux. It changes the magnetic field rather than the torque. How you use Id depends on the motor type.

Id ≈ 0 in Normal Operation (PMSM/BLDC)

A surface-mount permanent magnet motor already has its field from the magnets. It does not need stator current to make flux. So for a surface PMSM or BLDC motor, the controller holds Id at zero during normal running.
The reason is efficiency. Current on the d axis would add heat and copper loss without adding torque. Keeping Id near zero puts every available amp on the q axis, which gives the most torque per amp. This is often called maximum-torque-per-ampere operation.

Negative Id = Field Weakening

There is a useful exception. Above the motor’s base speed, the back-EMF rises until it nearly matches the supply voltage, and the controller runs out of headroom to push more current. Driving Id negative weakens the rotor field, which lowers the back-EMF and lets the motor spin faster.
The trade-off is real. Field weakening generally reduces the torque available at high speed, since some current capacity now goes to Id instead of Iq. See field weakening for how that balance works.

Id in Induction Motors (ACIM)

Induction motors are different. They have no magnets, so the rotor flux has to come from the stator. Here Id is not zero. It carries the magnetizing current that builds the field, while Iq still carries the torque. The d-q split is the same idea, but in an ACIM both axes do real work all the time.
Takeaway: Id shapes the field. Hold it near zero on a PMSM for best efficiency, push it negative to reach higher speed, and use it to magnetize an induction motor.

Id, Iq and Saliency

Some motors, such as interior permanent magnet (IPMSM) and synchronous reluctance designs, have a rotor that is magnetically uneven. The inductance on the d axis differs from the inductance on the q axis. This property is called saliency.
In a salient motor, a carefully chosen Id can add reluctance torque on top of the magnet torque, so the torque no longer depends on Iq alone. A controller can place the current vector at an angle that uses both effects, squeezing more torque from the same amps. The strength of the effect is set by the saliency ratio, the ratio between the two axis inductances.

Seeing Id and Iq in SOLO Motion Terminal

SOLO controllers run FOC natively and expose Id and Iq as live values, so you can watch the torque and field currents while the motor runs. You can try this on any of our motor controllers.

Id and Iq: The d-q Frame in Motor Control Explained 3

Conclusion

The d-q frame is the heart of Field Oriented Control. By rotating the reference frame with the rotor, FOC turns three sweeping phase currents into two steady numbers. Iq sets the torque, through the simple relation T ≈ Kt × Iq, and its PI loop is the torque loop. Id sets the field: near zero for an efficient PMSM, negative for field weakening, and a real magnetizing current in an induction motor. That clean split into torque and flux is what makes a three-phase AC motor as controllable as a DC one. To see Id and Iq on real hardware, a controller that runs FOC out of the box, like a SOLO motor controller, is the quickest place to start.

FAQ

What is the difference between Id and Iq?

Id is the direct-axis current, aligned with the rotor flux, and it controls the magnetic field. Iq is the quadrature-axis current, ninety electrical degrees ahead, and it produces torque. Splitting the stator current into Id and Iq is what lets FOC control field and torque on their own.

Why is Iq called the torque current?

Iq lies perpendicular to the rotor flux, which is the position where current produces torque most effectively. For most motors, torque is close to Iq times the torque constant Kt, so Iq maps almost directly to shaft torque.

Why is Id usually set to zero?

On a surface permanent magnet motor, the magnets already supply the field, so d-axis current would only add heat without adding torque. Holding Id near zero gives the most torque per amp. The main exception is field weakening, where Id is driven negative to reach higher speed.

What is the d-q frame used for in FOC?

The d-q frame is a rotating reference frame aligned with the rotor. It converts the three oscillating phase currents into two steady, DC-like values, Id and Iq, so that simple PI controllers can regulate field and torque with precision.

Share This

Share This

Share this post with your friends!