Dagu Gear Motor Pain

I have been flumoxed by a motor issue recently, and was wondering if others had some strategy dealing with it successfully.

I have a Dagu GA25Y370 133 RPM 6V DC gear motor.  I've connected it to an BBB Arduino clone through some TIP 122 transistors.
To get the motor to start turning I have to go to nearly 100% duty cycle on the PWM.  This is undesirable, as I would like fine control at low speeds.
The motor turns rapidly once started.  After starting, PWM can be used to control it down to about 55% PWM.

Thinking this might be a problem with lack of current I put a huge cap on the power rails, and connected it to a computer power supply.  
Regrettably, this did not help.  I also tried with 9V DC, this moved the starting PWM lower (about 80%) but at 9V DC the speed was equivalent or faster than 100% 5V.
Maybe doubling up on the Transistors?  Although, I find it strange the current transistors are not even getting warm to the touch in all the experimentation so far.  I don't have any FETs currently, so that is not an option.
I'm trying to "fix the problem at the source".  But, at the moment, I can only think of a programming strategy that sends 100% PWM to the motor the amount of time just to get it started (however long that is), then quickly drops the PWM down to 50%.  Yarrgh...
Any idea's welcomed.

 

Had a similar problem with

Had a similar problem with my Pacman robot. OddBot and Gareth gave me the tip to pulse the motor at a lower PWM frequency. 50 or 100Hz should be ok, Arduino normally runs  PWM at 500Hz. This trick works really great.

Thanks RobotFreak !

You ROCK !

My understanding are the pins are bound to particular multipliers 9&10 are bound as are 3 & 11, and 5 & 6.
Pins 9,10 & 3,11 are defaulted to 500, but the ones I was using were 5 & 6 which defaults @ 1000.

Your suggestion worked.  The only “strange part” was I had to go in the opposite direction.

These are my observations @ 9 V DC :

62 Hz - did not move the motor at all even at analogWrite 255 or 100% duty.

250 Hz - moved the motor at analogWrite 255, but other strange loss of control (serial from computer) occurred - possible brown out?

1000 Hz - same

8000 Hz  - a little better

62000 Hz - motor starts to move at analogWrite 140 - fine control down to 98 just before stalling, and of course the bonus of no audible whine !

I guess this is just dependent on so many variables, e.g. harmonics, size, current, magnet strength, gearbox friction, etc etc - that I’m not going to try to figure it out,  I’ll just sing praises to you !

I want to assume the

I want to assume the gearmotors are greased, but that can make a world of difference.

I have not disassembled them to check.

Do you have a similar motor?

I have mico metal gear

I have mico metal gear motors and plastic solarbotics gearmotors through pololu.  The Tamiya gearbox is where I have been able to see the difference between non-greased and greased motors, and its hard to get them started when not greased due to friction.

Thanks for the tip rogue

I’ll have to tear the bot apart to get to the motors… but if I can’t find any other solution, I’ll be giving that a try.