Need help learning how/selecting a motor

Hello all, this is my first go at arduino, motors, and… well all of this really. Please forgive me if this is andumb question but:

I have a 3 lb weight that needs to be lifted and dropped vertically about 8” at a constant speed, and i want to be able to program in how many cycles of this action happen.

I would like it to be able to cycle at max speed around 120-180 RPM.

My setup is the weight guided by 2 linear rails and bearings. I was thinking of using a stepper motor with about 4nM of torque, and a 4” arm to change rotation to reciprocation. I am open to other solutions, but my question is, how do i find a stepper that can maintain constant speed as the weight changes from going up to falling down, and maintain that speed?

I have found steppers that are geared, direct drive, ones that say they are 4 nM, but have no RPM specifications, and i dont want to buy the wrong motor. Can you guys please give a newbie a hand? Much appreciated!