BLDC.Utilities.ElectronicCommutator

# .BLDC.Utilities.ElectronicCommutator

Polyphase electronic commutator

## Information

For every Hall signal `uC[k]=true`, the phasor `exp(-j*orientation[k])` is added, else zero. Taking the argument (angle) of the resulting phasor, the rotor position with an uncertainty of `±π/(2*m)` is determined.

The fire signals are determined by comparing the rotor position is compared with the orientation of phases. Phase(s) aligned with the rotor position (positive or negative) are set inactive (open). Phases ahead +90° of the rotor position are connected with `pwm`, phases behind -90° of the rotor position are connected with `not pwm`.

The signal `pwm` is either determined by the input, or set to the parameter `ConstantPWM` (determining the direction).

#### Note:

Phases with orientation within a span of `±π/(2*m)` around `rotorPosition±π/2` are choosen as active, the remaining as inactive (open). The electronic commutator is working properly for odd number of phases, even number of phases nees further investigation.

Generated at 2026-05-12T20:19:03Z by OpenModelicaOpenModelica 1.26.7 using GenerateDoc.mos