Cheap DC motor control

I don't really know which section to put this in... Motors, Programming or other!

I have one of the very small, cheap dc electric motors which I have fitted into a model vehicle. Presently it is driven through a 2N2222. So far so good.

In order to control the motor's speed I use PWM. However, when starting from zero, once the pulse width gets to a certain value the vehicle shoots off like the proverbial scalded cat. So I am thinking along the lines of reducing the frequency of the PWM in order to hopefully give the motor a 'kick' at the lower pulse widths in order to start it rotating.

Has anyone else had experience of this sort of thing?

Merry Christmas

David.

Are you 100% sure that the drive transistor isn't saturating fully on at some stage, rather than pulsing in sync with the PWM signal.

No I'm not, and I'll check that out later.

dannable:
I don't really know which section to put this in... Motors, Programming or other!

I have one of the very small, cheap dc electric motors which I have fitted into a model vehicle. Presently it is driven through a 2N2222. So far so good.

In order to control the motor's speed I use PWM. However, when starting from zero, once the pulse width gets to a certain value the vehicle shoots off like the proverbial scalded cat. So I am thinking along the lines of reducing the frequency of the PWM in order to hopefully give the motor a 'kick' at the lower pulse widths in order to start it rotating.

Has anyone else had experience of this sort of thing?

Merry Christmas

David.

The PWM frequency is a fixed value and would not have an effect on what you are seeing. The PWM outputs a variable 'duty cycle' value of from 0 to 255 to represent 0% to 100% of power applied to the motor. However each motor will have a different starting value where it will just start to turn and because of motor friction and mechanical load placed on it will never be pwm value of 1 just starts to turn. So by experimentation you are going the have to find the 'magic' pwm minimum value X that just starts the motor to turn and then you will know that the usable pwm range for your motor/load condition will be from pwm X to pwm 255. Once you find the proper usable range of pwm values you can use then just restrict your sketch to using just those values.

That makes sense?

Lefty

Oh yes, that all makes sense. It's just that I'm likening it to a similar situation I experienced as a youngster with a model railway / railroad. With the simple variable resistance controller you could get better control by using the half wave rectification feature. I'm assuming that this gave the motor half as many 'jolts' a second as full wave thus giving finer control? Hence my thoughts about reducing the PWM frequency?

Of course this could all be the product of a fertile imagination!