Variable Voltage for Brushless DC motor control (DC30A-1230 mini waterpump)

hi,

I'm trying to control 20 brushless DC mini waterpumps to create a fountain game but I am having problems regulating the speed o the motors with my microcontroller.

I tried te L298 and it works on a regular motor but obviously not on a brushless motor. (it just switches on and off..)

The waterpump motor has 2 wires.. Can I use a ESC or how would anyone be able to control the speed of the motors.. Do I need to use a MOSFET ?

thanks in advance!

UPDATE: the motors have an internal controller that responds to dc voltage changes. So I need to control the voltage leven from 2.5V to 12V. Anyone know how ? Do I need a DAC ?

What I know as a brushless DC motor would normally have 3 wires and would be controlled by an ESC in the same way as a servo

Can you please post a link to the motor or more details of it and the pump

Sure,
the exact model is in the title: DC30A-1230
here is a brochure with some specs: https://www.bldcpump.com/downloads/BLDC%20PUMP%20DC30A.pdf

I will try to lok for a more detailed datasheet but it is not easy to find.

I actually only need to control speed in 1 direction (from 0 to maximum power)

So I found a paper that uses these pumps and they say they have an internal controller which can be controlled through voltage level.
Screenshot 2021-06-17 at 12.30.36

Now your challenge is to output a variable voltage with sufficient current

What would I need to achieve this ? some DAC circuit ? the motor do not need that much current. And it had been done in the paper but they don't don't include a circuit or smth similar..

Sorry, not something that I have any experience of

Can this be done with a digital potentionmeter?

Most likely not. Digipots supply voltage, not current, some 10 mA us my memory.

I expect that you will get little in the way of variation in pumping by varying the voltage , due to motor and pump characteristic .
You need to try it with a variable power supply and see how it works before worrying about how to do it .
You might think about some form of motorised butterfly valve to control the flow instead ?? Or one big pump and several valves ?

Well actually somebody else already did it..
How did they do it?

Here is the project repo https://github.com/AlexanderTAdams/PumpSpark-Fountain-Development-Kit

It seems like they made a seperate board that is controlled via serial interface that can variable supply voltage to the pumps..
they call it an 8 channel brushless pump controller in this video:

https://dl.acm.org/doi/10.1145/2598510.2598599

1 Like

I have a similar pump (not the same as yours). Mine had the brushless controller inside the pump housing. I can vary the pump speed (within reason, I've not attempted to go from 0 to full) by varying the voltage.

Now, how fast do you want the pumps to respond. If this is a game and a fast response is required the solution might be different than if a slow response was acceptable.

Actually if I can reliably change 20 voltages for 20 pumps with a microcontroller I would be happy. Fast or slow:) I just dont know where to start. So any help would be much appreciated!

I would start with something like this 16 PWM output board

The other 4 you need could likely be outputted from the arduino itself. I would start with 20 LEDs and prove your concept before moving to the actual pumps.

BTW I've not used this board.
I believe there are other similar devices. I'm sure others in the forum can help you with any board detail questions you might have.

@JohnRob

Is a PWM output what is required here ? I thought that the requirement was a variable voltage output

Oops, I missed a step in my previous post.

To use this PWM output you would have to RC filter the output.

  1. If your pump electronics is sensitive to input voltage ripple you will have to add a substantial RC to smooth out the PWM pulses. And making response slower.

  2. If you pump doesn't mind ripple, the RC can be smaller and the response faster.

This assumes you pump varies flow with input voltage, which your project depends on.

To be clear: PWM is not possible, I tried and it just starts at a certain point at full speed.
I need variable voltage control. So i was thinking digital potentiometers but i need them to be able to handle 12volts..

Oh i see! I did not read your second post;)
The RC filter might work..

I would probably need a nice beefy electrolytic capacitor then!

I might get away with some ripple though..

I’ll update when I can! Thanks :pray:

Not to be obstinate but what frequency PWM did you use and did you filter the PWM?

image

You need a (voltage) programmable buck converter.