MOSFET - can't control DC Motor

Thread Starter

lukas.vitek911

Joined Nov 15, 2023
4
Hi!

I am working on a university project. We are building a vehicle similiar to the BattleBots competition.
Everything is working well but I have a problem with a 12 VDC motor controlled with transistor/MOSFET.

I am using this motor water pump: https://www.twinschip.com/Mini_Water Pump_12V4.8W_240L_H

I tried using it with regulated laboratory source, it's working well between 6 and 12 Volts.
I created a basic MOSFET circuit and later a NPN Transistor circuit with Arduino (as in attachment), which would control the voltage to the pump.
These circuits work with all DC motors that I have, but not with the water pump one.
I know it says its brushless but I don't believe it as the motor has only 2 wires and the power can be controled with the voltage from the laboratory source.

Can anyone help how to control the power of the pump with arduino? What should I do?


Thank you for your help.

Lukas
 

Attachments

MaxHeadRoom

Joined Jul 18, 2013
28,513
It could well be BLDC (brushless), for example PC fans are brushless and only have two conductors, the use an internal detector IC and also do the switching internal.
In the exploded view, it shows no brushes. i.e. Brushless.
Are you using BLDC to control the pump or just ON/OFF with the Mosfet etc.?
 
Last edited:

Thread Starter

lukas.vitek911

Joined Nov 15, 2023
4
Thank you all for fast replies. So probably it is a brushless motor. Can you help how to control the power of it with arduino?
I tried using the following:
  • Adafruit TB6612 motor driver
  • MOSFET IRB4410
  • NPN transistor TIP120

None of them worked unfortunately.

Thank you for your time.
 

MaxHeadRoom

Joined Jul 18, 2013
28,513
Probably will need a method using a variable voltage rather than switching, using PWM e.g. etc.
There are many other cheap DC motors that could do the job.
 

MisterBill2

Joined Jan 23, 2018
17,790
The motor absolutely is a brushless version. If the speed command is a duty cycle then use a filter capacitor to smooth the pulses into a constant voltage. That may take a fair size electrolytic capacitor.
 

sghioto

Joined Dec 31, 2017
5,369
If the speed command is a duty cycle then use a filter capacitor to smooth the pulses into a constant voltage.
This works converting the Arduino PWM output to a DC voltage and using IC1 to drive Q1 in a linear mode. There will be a max output of only appx 11.3 volts with a 12 volt supply. Q1 will require a heat sink.
1700169454577.png
 
Last edited:

Janis59

Joined Aug 21, 2017
1,819
How far I see, the moror is kW mighty, thus the currents is no much less than 100A, therefore thermal loss on the junction will be at least 6 V*100A=600W what is damn much to be able to cool. With MOSFET it eases but not so much, for example 50 miliOhm*100A^2=500W. The only realistic way out is PWM where thermal power may be reduced dramatically.

The second inability source is Arduino having few mA of output current. The same time 100 A harvesting in paralelled 2N3055 at beta=20 demands at least 5A of base current or larger. Thene imminently must be applied the current booster between Arduino and output booster.
 

MisterBill2

Joined Jan 23, 2018
17,790
It seems that Janis is thinking about a different motor. The unique brushless motor is indeed 4.8 watts and 12 volts. So not sure where the 100 amp motor comes in. Possibly cranking the big V8 engine on that battlebot, maybe???
 

eetech00

Joined Jun 8, 2013
3,820
Not much duty cycle control headroom if using Arduino PWM.
Avg current must be about 333ma to start the fan, so DC must operate at approx 85-90% with available Arduino PWM frequencies.
 
Top