Skip to content

What does it do, exactly? (v2)

Tyler Tian edited this page Mar 24, 2019 · 3 revisions

RobotPathfinder is a motion profiling and static path generation library primarily targeted for use in the FIRST Robotics Competition, with Tank drive (aka Skid-Steer drive) robots. In a nutshell, it exists to help robots drive more accurately and much more efficiently in autonomous mode.

Driving autonomously can be a challenge. The only way to guarantee precision is to only drive in straight lines and turn in place, which is painfully inefficient. The robot has to speed up to drive a distance, and then come to a full stop again to turn, and repeat. RobotPathfinder does two things to avoid this problem: it generates a smooth and efficient path guided by a number of waypoints, and based on a number of constraints such as the maximum velocity and acceleration of the wheels, it creates a plan for the robot to accurately drive the generated path.

Path graph
An example path generated by RobotPathfinder, with the waypoints:

  • (0, 0), facing in the positive Y-axis
  • (-10, 14), facing in the positive Y-axis
  • (0, 25), facing in the positive X-axis

Trajectory
A trajectory, or plan for the robot to drive out the path above. The hypothetical robot has max speed of 8 ft/sec, max acceleration of 6 ft/sec and a base plate 2 feet wide.