Regarding the sensorless speed control of a BLDC, I have some doubt about what may happen in the following two scenarios when the rotor's position is unknown

  1. the start-up from zero
  2. with an initial rotation different from zero

In (1) I would like just to know if I can close two generic contacts without knowing the initial position of the rotor. In (2) I wonder if I can drive in open-loop a 3-phase input voltage and expecting that after a transient (but systematic response) that the rotor follows the synchronization.

Can you help me please to figure it out?


1 Answer 1


Sensorless motor control works by measuring the voltage induced in the stator coils by the rotor magnets as they move past (this is called back EMF). Since this is directly related to rotor position and speed, it can be reliably used instead of an external sensor. However, there is no back EMF when the motor is stationary, so there is no way to tell what the initial rotor position is.

The normal way to deal with this during startup is to provide a ramping open loop signal that the motor will 'follow' until it spins up to a speed where back EMF sensing will work. It is not too dissimilar to operating the motor like a stepper. The main issue is that if the motor load is higher (or could be higher) than the torque output during this synchronous phase, the motor may fail to start. In addition, low speed performance will be very poor (rough, low efficiency) which is why you don't see sensorless techniques used with servo systems or (most) traction motors.

So it is possible to do what you want, and your proposal in point (2) is the normal way to achieve this, provided the load you have has acceptable low speed characteristics.

  • \$\begingroup\$ Thanks for the answer. In 1) I must at least take care that the ramping ("blind") open loop signal is at least 120° delayed, right ? In 2) my fear is that I close the first couple of contacts right when the back-emf touches the max value \$\endgroup\$
    – cyberdyne
    Feb 19, 2019 at 10:40
  • \$\begingroup\$ @cyberdyne I'm not quite sure what you're asking. What are the 'contacts' doing? \$\endgroup\$
    – Jon
    Feb 19, 2019 at 10:49
  • \$\begingroup\$ Sorry, it was bad asked: In 2) I am afraid I close the circuit right at the instant in which stator and rotor fields are continuously one in front the other and then do not ensure the certain angle to generate the torque. \$\endgroup\$
    – cyberdyne
    Feb 19, 2019 at 11:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.