Close

Entry 4: back to basics

A project log for Reverse Engineering: Brushless DC Motor Controller

With a pile of BLDC controllers lying around, and none that do exactly what I want: better to re-use the parts than start over from scratch!

jorj-bauerJorj Bauer 05/20/2017 at 13:430 Comments

So, with the magic smoke released from those controllers, I won't be reverse engineering them any more.

What, exactly, was the point here again? Is there more to do?

Why yes, there is. The reason I was reverse engineering these was to be able to control two controllers as one unit - so that they move at the same speed. I thought if I could hijack the built-in logic, I'd be able to build replacement firmware that would do that.

This, I guess, is the moment when I decide how I'm going to move forward on that given that the original plan didn't work out.

New plan: using two *new* controllers, which are admittedly slightly mismatched, let's tap in to the sensors and see if we can build an external controller that can both sense and control the speed of them. Together.

I have two of these:

... perhaps I can tap in to the sensors as they're entering the controllers, and be clever enough with the logic driving the two controllers to get what I want.

There's a slight hurdle. I need a reverse. That's a showstopper, because they don't have a reverse. Let's open it up and see what's in there...

Well, well - that "CCW" that I've badly soldered looks good. Pull it to ground, and guess what happens? Reverse. Sweet. So, some quick soldering in both and we can start testing...

Add an extra set of wires coming from the hall effect sensors, to see what we can sense...

... with this teensy 3.1.

In theory, the teensy should be able to read the pulses from the sensors and interpret them to assess speed of each motor. Then with some control circuitry, it should be able to adjust the speed of each to achieve whatever result it wants.

And, eureka, it mostly works!

In that last image, you can clearly see the succession showing which direction the motor's moving. And the pulse length is the amount of time that sensor stays active, so it's inversely proportional to the speed. (Slower? Longer pulses.)

Some judicious application of booze, and add one digital potentiometer, and it's time to start thinking about PID controllers...

Discussions