How does o-drive determine q-axis current

How does O-drive determine q-axis current without knowing the motor’s winding
type (wye vs delta)? For example, does it assume all motors are wye wound?

I’m aware that there’s a transformation from line current (what can be measured by the drive) to q-axis current, but
that relationship depends on the winding type, so I was wondering how this transformation is possible without knowing the winding type. It seems possible, since all line current goes to q-axis current with proper, in-phase commutation (i.e. d-axis current is zero). Can anyone help me understand this?

The math in the ODrive firmware always assumes wye configuration.

This means that if you connect a motor that is actually delta-wound, the true phase current amplitude (and thus Iq) will be sqrt(3) lower than what ODrive thinks and the true phase voltage amplitude (in this case line-to-line voltage amplitude) will be sqrt(3) higher than what ODrive thinks.
Likewise if you measured phase resistance and inductance with the ODrive, the values you get out will be off by a factor of 3.

However practically it doesn’t make a difference, unless you care about the absolute values inside the motor. The factors all cancel out so that from the outside the delta and wye configurations are indistinguishable. The true power that is delivered to the motor will be equivalent to what the ODrive thinks, regardless of motor configuration.

1 Like