Driving a 12v 3A DC Diaphragm Pump

Hello!

Preface:
I haven't attempted an Arduino project in a long time. My original forum account didn't even exist anymore. I remember I had an Arduino Mega that I was using with several gizmos: RFID readers, Linear Actuators, and even Motors. In my last project with a Motor I believe I had a DC Brushless motor that I was controlling with a MOSFET. I could send a PWM signal to the MOSFET to adjust the voltage to the Motor and change the speed. It's been a while, and things have changed, among them I see that people now use some integrated chips, Drivers, to drive their motors.

Problem:
Very simply, I want to create a circuit to control my irrigation system, powered by this 12v 3A DC Diaphragm Pump and be able to adjust the speed at which it pumps using an Arduino MKR WiFi 1010 all powered from the same 12V 60W power supply. I've been doing some research to try to get an idea how to do this, but I am really unsure if it is possible to use variable voltages with a Diaphragm pump, and what to use to drive a pump with those specs. I also always get confused how to know if I will need some resistors and how to power it all from the same supply. I don't have the parts yet so changes/recommendations are welcome.

Thank you for any help in advance,
-Falven

How about filling a reservoir then letting gravity water the plants.

I think the controlling DC pump is the same as controlling a DC motor. See controlling DC motor with L298N driver

How about filling a reservoir then letting gravity water the plants?

Unfortunately that is not an option as this is a small garden on an apartment balcony. Hanging a container of water is too dangerous. I also do not have running water which is why I will be pumping.

I think the controlling DC pump is the same as controlling a DC motor. See controlling DC motor with L298N driver

Right, that is part of the question. Looking to verify if driving a Diaphragm Pump is the same as driving a motor.

It should work great if you get the hardware and software tuned in! Since it is unidirectional a single MOSFET will work, a N-Channel being the easiest to implement. See if you can get something in a logic level with a 30 Amp or greater range in a avalanche rated MOSFET. If so connect the drain to the motor, the other end of the motor goes to the 12V. The source connects to the ground of the battery which is also connected to your arduino, the motor cannot be connected to the arduino. Put something in the 10K range to ground of your favorite PWM pin and then connect that with a 50 Ohm resistor to the gate of the MOSFET. Power the Arduino with the 12V battery connected to Vin. The reason for the hefty MOSFET is for me it is generally cheaper to use silicone instead of heatsink. Most of what you did in the past should apply. Have fun!

1 Like

Remember, you will be starting the motor under load, so the current necessary to move the motor will be a high value.
Paul

1 Like

Hey guys, during the forum downtime I ended up purchasing this 15A Single DC Motor Driver. Hopefully this works. But I appreciate the responses.

It looks like you made a good choice!

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.