In an attempt to control the speed of a DC motor with fairly large current draw (up to 1.8 amps) using PWM, I designed the circuit below:
Unfortunately, I am unable to do more than simply turn the motor on and off. At about 50% duty cycle, the motor turns on and remains the same speed, regardless of how much I vary the cycle, turning off once it's below a 50% duty cycle. I'm fairly confident that this has something to do with the discharge rate of the transistor's internal capacitors, but I'm not too sure how to go about solving this. Any ideas?
For reference, the gate to ground resistor is 10k, while the gate to Arduino resistor is at a value of 330 ohms.
Here's the schematic. Apparently, Fritzing is complaining about the diode, saying that it's placed incorrectly, and doesn't do anything, if someone could check it out, I would greatly appreciate :)