I am working on a exhaust chuffing script for a steam locomotive and I don’t know how exactly i would get rpms without irl measurements. If it helps the diameter of the wheel is 6.8 studs and the from what i know the circumference is 21.352 studs using diameter times pi.

I’m not sure this is what you are asking but one stud is = to 0.28 meters

Ok well that’s the problem with me making an engine is its built with its own scaling. What I want to know flat out simple is how many times does a 6.8 stud cylinder rotate in one minute.

Is the wheel actually rotating? Because if that is the case than using part.AssemblyAngularVelocity will get you the angular velocity of the part, which can then be used to find the amount of rotations per minute.

If that is not the case than you can divide the total distance the locomotive traveled in a given time period by the circumference in the wheel to get the total number of rotations.

well it is rotating but i wasnt sure what the e-(some random number here) after all the really massive numbers meant when i tried angular velocity. its also in radians correct?

The angular speed of a wheel is the forward speed of the train divided by that wheel’s radius.

From here:

The direction of the angular velocity is perpendicular to the wheel, based on the right-hand rule.

So if a train was moving at `V`

meters/second and one of it’s wheels was `2R`

meters wide, then the wheel would be spinning at `V/R`

radians/second. Multiplied by 60 seconds/minute and 1 rev/2pi radians, the wheel’s RPM would be `(V * 30) / (R * pi)`

revolutions per minute.

One thing I forgot to add to the angular velocity is that you have to divide it by 360 degrees to get the total number of rotations, and it is in radians, so you will have to convert it using math.deg().

I also suggest using the later equation (speed (or distance / time) / circumference) to get the number of rotations, as that will most likely provide a more consistent and accurate result than using the first equation.