# H-Bot Pulley Assembly - 'Normalizing' Diagonal Movement Speed

Given a traditional H-Bot pulley assembly with 2 stepper motors, how would I calculate the RPM's needed to limit diagonal movement speed to that of comparable horizontal/vertical speed? Would I simply scale the RPM's while maintaining the same ratio?

Example: Let's establish that running both steppers at full speed moves us horizontally by 'x' and vertically by zero.

Running only one stepper (say 100% speed) gives 45 degree movement by '0.5x' both horizontally and vertically... which equals the hypotenuse sqrt(2(.5*x)^2)... which is larger than x.

Would I simply squareroot the RPM of the single stepper motor, then divide by 2, then squareroot, then multiply by 2?

Additional questions: What is the relationship between RPM's, pulley diameter, and distance travelled assuming all pulleys are the same diameter? Am I thinking about this correctly, or should I be thinking in terms of steps?

I plan on user control via joystick with arduino (no pre-programming).

Final note: distance/precision is of no concern to me. My only concern is ensuring diagonal movements are comparable to equal intensity horizontal/vertical movement (as stated in the title)

• What is a H-Bot? One of these? Add a diagram into your question (giving credit if it's not yours) and show where the motors are. Commented May 11 at 9:12
• Work it step by step. Lets say motor angular step is dm, dn. Write out expression for dx = f(dm,dn) and dy = f(dm,dn) .... and then solve for the diagonal case when dx=dy Commented May 11 at 17:32