Motion planning

Your robot arm needs to move from one pose to another without colliding with the table, the walls, or itself. To move safely, the planner must reason about the arm’s kinematic model, the workspace geometry, and the motion constraints you impose.

Viam’s motion service plans a collision-free path and executes it, using a frame system you describe and obstacles you declare. You tell it where to go; it handles the search.

This section covers motion planning for arms and gantries. For GPS-based autonomous navigation with mobile bases, see Navigation.

Start here

New to Viam’s motion service? Work through a short quickstart that uses fake components so you can run it on any machine:

How it works

Each Move request to the motion service runs the same pipeline: it reads the frame system to know where every component sits, reads the arm’s kinematic model to know what joint configurations are reachable, applies any obstacles and constraints you declare, and returns a collision-free path from the current pose to your target.

Core topics

Other how-tos

Concept pages

Reference