Electronic – 3.3V input to 5V output for motor control

motorroboticsvoltage

I wanted to connect my DC motor to raspberry PI and control it with PWM pin. Problem is that gpio pins are 3.3V in PI and I have pololu 10:1 DC motor which I would like to run on 5V(to make it faster).

How can I convert those 3.3V to 5V for motor? Can I just simply connect PWM and GND pins to motor to steer it?

Best Answer

All you need is a N channel FET to act like a low side switch:

You have to make sure the FET has sufficiently low on resistance with 3.3 V gate drive. The example I show is 80 mΩ maximum with 2.5 V gate drive.

You didn't say what the maximum motor current is, but you have to make sure the FET can handle it. Also check the FETs dissipation at the maximum current.

Note the diode. It is not optional. It protects the FET against the inductive kickback from the motor when switched off, which happens every PWM cycle. It also allows current to continue flowing during the off phase of the PWM, which is important for efficiency.