Help with my programmed robot

Hey. Ive got a few questions.
I have two small 3V DC motors hooked up to a small transistor circuit, hooked up to an ArduinoUno.
The questions is; How to provide the right amount of power to the motors and to the Arduino?

Because Ive got one 3V coin cell battery connected to each of the motors. And the Arduino is powered by two 9V batteries with a 5V regulator. I tried to program it to travel 4.30m. But it slows down alot because of the power diminishing… Am I not giving it the proper energy to go the distance?

youtube.com/watch?v=5bHPKU4ybHY

This is where i got the circuit. Im new to all this stuff to. At 2:20 is where it shows the schematic and then the code and how he wires it up.

please help thanks.

One coin-cell is usually not enough to power a motor. Try using several of them in parallel. You can test if your coin cell is enough for your motor by powering it directly for the required amount of time and check its performance.