How Important is The Speed of My Mobile Robot?

The velocity of a mobile robot is entirely up to the user. A robot that moves too fast might be more difficult to control whereas a robot that moves too slowly tends to appear sluggish. Given the diversity of robots possible, there is no set standard (nor should there be) for determining a robot’s ideal speed. In a competition setting such as Sumo robotics, it is not always the fastest robot that wins (classic tortoise vs. the hare argument).

Consider the DARPA urban challenge as an example. Teams designed full-scale autonomous vehicles (often based around commercial passenger vehicles) and programmed them to navigate random urban terrain. Although the passenger vehicles which these robots were based on are capable of speeds of 150+ kilometers per hour, they were constrained to far less than this for safety reasons. Having their vehicles move at slower speeds also gave the onboard artificial intelligence more time to react to unforeseen situations, and in the event of a collision, there would (hopefully) not be significant loss of investment.

Kinetic Energy

Along with velocity comes the concept of kinetic energy (KE). In simple terms, "kinetic energy" can be described as the energy an object of a given total mass (m) has when it is moving at a given velocity (v):

KE = 0.5*m*v2

In order for a moving object to come to rest, it must lose all of its kinetic energy. In cars, the brakes use friction to dissipate the energy, which is converted to heat. Slow moving robots can often be stopped simply by cutting power and letting the gear down and inefficiencies (including internal friction) bring the robot to a stop. For faster moving robots, it is best to slow down the robot gradually rather than “putting on the brakes”. Regenerative braking (a feature in many DC motor controllers) allows the battery to be charged when the wheels spin.

Momentum

An object's relative linear momentum can be defined as:

p=m*v

m: the object’s total mass

v: object’s velocity (as a vector)

When two objects collide, momentum is conserved (so long as there are no external forces acting on the system). A large, fast-moving robot has significantly more momentum than a small, slow-moving robot and is therefore much harder to stop. You should consider momentum if your robot is heavy, fast-moving, fires projectiles or may encounter collisions (such as robot sumo).

Velocity vs. speed

The definitions of speed and velocity are not the same. “Speed” is a value that is inherently positive and the average speed of an object can be calculated as the displacement divided by the time interval. Average “velocity” is a value that depends on the net displacement of an object and is a vector that can be positive or negative.

What to do?

If you are new to robotics, start slow! Start with a simple 2WD skid steering robot about the size of your hand; components at this size are relatively inexpensive, and the motors and wheels are made for relatively slow speeds. This will allow you to test your code without worrying about your robot getting away from you or breaking apart after ramming an immovable object.

If you are designing a larger robot, you should calculate kinetic energy (especially at maximum velocity) as well as momentum. This will help you determine if the motors you selected are enough to stop the robot on an incline.


This is a companion discussion topic for the original entry at https://community.robotshop.com/tutorials/show/how-important-is-the-speed-of-my-mobile-robot