0
\$\begingroup\$

I'm designing my own ESC for a simple quadcopter drone. The ESC is powered directly from a 4S LiPo battery, and I'm now working on the back-EMF voltage sensing needed for sensorless commutation. The microcontroller I'm using is an STM32F103C8T6, and the motor control method is standard 6-step trapezoidal commutation. My idea is to connect each of the three motor phases to a resistor divider and feed the scaled outputs into three ADC channels on the MCU. I would also use another resistor divider on the battery voltage to generate a VDD/2 reference. In software, I would compare each floating phase voltage to this VDD/2 value in order to detect zero crossings.

My question is whether this approach is suitable and reliable for a drone ESC. In other words, is it acceptable to sense the back-EMF directly through resistor dividers and read it with ADC channels on an STM32F103, comparing each reading in software against a VDD/2 reference for zero-crossing detection when using 6-step commutation?

The schematic (so far):

enter image description here

The BLDC motor that I'm using (iFlight XING-E Pro 2207 2750Kv):

enter image description here

\$\endgroup\$
2
  • \$\begingroup\$ There are many open source ESC projects on the interwebs. See how they solve the problem. You might want to consider adding current sensing. Tip - avoid using references when you can simply join the points using a wire as it makes the schematic easier to read. A reference implies the other node is remote or there is multiple nodes associated. Also with resistors you would normally specify 10k, not 10kR. To eliminate decimal points, 2.2R would be 2R2, 2.2k would be 2k2. \$\endgroup\$ Commented Nov 15 at 22:15
  • \$\begingroup\$ @Kartman I believe what you are saying to avoid is labels, not references; to me, "references" means either voltage/current references (for feeding into an ADC/DAC), or reference designators. The thing where you label a wire to indicate it's connected to another wire somewhere else has always been called a "label" in my experience. \$\endgroup\$ Commented Nov 15 at 23:37

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.