Brushless DC Motor Control --- But with a twist!

Hello Everyone,

I am working on a problem and haven’t been able to find any literature about it! I am trying to make a device which can control a brushless DC motor (BLDC). The tricky part is, I need it to do a lot more then just turn on, off, brake and reverse. I need the motor to turn a certain number of rotations, or partial rotations. I don’t know if that is possible with an ESC of if it need to be controlled straight from something else. From the research I have done it looks like I will need a sensored BLDC motor for sure. Any input?

Perhaps I need to use a stepper motor instead?

Also, I need something that reacts extremely fast and I believe a BLDC motor or stepper motor are my only two options, otherwise a servo would be fine but I am open to whatever :slight_smile:



I’m using DYS 30A ESC. The problem is two of my ESC’s are working fine. And I’m currently involved in a quadcopter project without Radio. The other two ESCs are not working unless they are connected to the wireless joystick.

The code i used is,

Servo m1;

void setup()
void loop()
for(int i=60;i<65;i++)

The motor arms, then it starts to spin, when it reaches 65 it again starts from 60. This is how I test whether it is running or not. Two of my ESC are not passing this test at all. But when connected to wireless and when the throttle is given High, armed and then changing the throttle makes it working. Kindly help me out.

Thanks Venkisagunner, I appreciate the input. Are you using senseless motors?

Also, I thought I should add, for my application I am looking at ultra fast response and only moving .5 to 9 rotations sometimes even less then that. Do you think that ESC would work for that?

You can't achieve that with a normal ESC, you need hall sensors and an encoder probably.

Thanks MarkT, I figured as much any suggestions on hardware? I need fast and precise movement with no more than 10 rotations.

Seen these?