I am a software developer by trade, having put together a few beginner Arduino projects and such.

My next project entails an underwater roller-coaster (without loops, just going over the surface, so maybe more like a train). I don't really know where to start when it comes to selecting the right motor.

I have learned that brushless motors can be used in water, so that is a good start. Now it comes to choosing size, power consumption, RPM and torque. Basically I want the motor to be as small as possible, as I want the carriage on the track to be around 6x6 cm in total.

I will most likely 3d print the track with teeth and somehow attach the carriage to the track and pull it forwards with a gear.

The train will not have to go fast, say.. 1cm-2cm per second?

If I take 2cm per second with a gear of 2cm in diameter we would need 2/(2/2 (=radius) \* 2 \* pi) = .31 rotations per second, is 20 rotations per minute? Is this calculation correct?

If this is correct, what kind of power should I be looking at? And would it be possible to battery power that?

P.S I also just found stepper motors might be able to withstand water, any experience?