Motor stops at low PWM value

Hello guys. I have arduino uno clone(ch340),L298N motor driver and two standart basic motors like in the picture. I have directly connected motors to out sockets on motor driver. everything works but when I reduce pwm value to below 50 motor stops and makes a humming. 60 is the lowest i can get so far without losing stablility but i need lower speed for my project but lower pwm value gets more humming there. is there a solution to achive lower speeds and eliminate humming?

3v-6v-dc-oyuncak-motor-dc-motor-china-22546-96-O.jpg

You could try increasing motor speed and then reduce final output speed through mechanical gearing. Or go to a stepper motor.

You can use some clever tricks to control a motor below its minimum speed but that doesn't get you very far. It's best to run the motor at a speed that it actually likes and use a gearbox to get the speed you like.

What power supply? A weak power supply may be related to your problem. The L298N drops a lot of voltage so if you only have a 6V supply then the motor never gets more than 4V. You can run a 6V motor on 9V or even 12V so long as you keep the PWM under control.

MorganS:
You can use some clever tricks to control a motor below its minimum speed but that doesn't get you very far. It's best to run the motor at a speed that it actually likes and use a gearbox to get the speed you like.

What power supply? A weak power supply may be related to your problem. The L298N drops a lot of voltage so if you only have a 6V supply then the motor never gets more than 4V. You can run a 6V motor on 9V or even 12V so long as you keep the PWM under control.

I'm feeding l298n with 12v 1a adapter. Arduino gets 5v regulated power comes out of L298N.

dougp:
You could try increasing motor speed and then reduce final output speed through mechanical gearing. Or go to a stepper motor.

Thats not an option to me. There's no way to alter it w/o breaking.Its a solid piece.

With a simple control system there will be a power setting at which a motor can no longer rotate due to the combination of friction and load.

If you have a feedback system that allows the Arduino to monitor the motor speed it can adjust the power to keep the motor running at a specified speed.

...R

esercankutay:
Hello guys. I have arduino uno clone(ch340),L298N motor driver and two standart basic motors like in the picture. I have directly connected motors to out sockets on motor driver. everything works but when I reduce pwm value to below 50 motor stops and makes a humming. 60 is the lowest i can get so far without losing stablility but i need lower speed for my project but lower pwm value gets more humming there. is there a solution to achive lower speeds and eliminate humming?

That's entirely normal. Brushed DC motors have static friction from the brushes which means below
a certain current level they stop as the available torque is less than the brush friction torque.

Ways to get low speed control include:

  1. reduction gearing - though this obviously reduces maximum speed.
  2. using a stepper motor (open-loop position control)
  3. using a servomotor (closed-loop position control)
    Adding an encoder and PID loop to a DC motor and its driver allows your own control loop to be created.

esercankutay:
I'm feeding l298n with 12v 1a adapter. Arduino gets 5v regulated power comes out of L298N.
Thats not an option to me. There's no way to alter it w/o breaking.Its a solid piece.

So far you have only shown the catalog photo of the motor. What else is in your project? We can't see what you see.