Sir, i want to ask sir. I want to control motor DC 12 volt by using PWM from arduino. The circuit i'm using is as you can see below :

And motor DC i'm using with is :

The motor DC is not as big as can be seen in the picture. It's only 4 cm x 4 cm size.
What i want to ask is that, when i connect motor DC directly to the 5 volt supply, the motor is moving. But when i connect it using arduino as the circuit i've already attached, and apply 100% duty cycle of PWM or 50%, it can't move at first time. It needs 'help' to move first with my hand, and then the motor is working greatly like when i directly connect it to the 5 volt supply. How can this happen ?
It's like this motor when i'm controlling it using arduino, it needs like a 'STARTER' to move. But when i just connect it to the 5 volt supply, it works greatly, no need 'help' of my hand to get start.
I also attach the arduino ground, emitter of the transistor and 5 volt supply ground together.
Thank you sir for your help.

And motor DC i'm using with is :

The motor DC is not as big as can be seen in the picture. It's only 4 cm x 4 cm size.
What i want to ask is that, when i connect motor DC directly to the 5 volt supply, the motor is moving. But when i connect it using arduino as the circuit i've already attached, and apply 100% duty cycle of PWM or 50%, it can't move at first time. It needs 'help' to move first with my hand, and then the motor is working greatly like when i directly connect it to the 5 volt supply. How can this happen ?
It's like this motor when i'm controlling it using arduino, it needs like a 'STARTER' to move. But when i just connect it to the 5 volt supply, it works greatly, no need 'help' of my hand to get start.
I also attach the arduino ground, emitter of the transistor and 5 volt supply ground together.
Thank you sir for your help.