I'm totally in the dark
Yes, it seems so. :-)
The cubic spline controller (and all other trajectory controllers) are for robot arms, not for the robot base. That means the trajectories are joint trajectories, not trajectories in 2D or 3D cartesian space. If you want the robot base to follow a trajectory, you basically have to write your own code.
What move_base
does is navigation. It provides an action interface that accepts 2D cartesian coordinates. The move_base
node will try to reach the coordinate given using local and global path planners, taking the map of the environment into account and avoiding collisions with obstacles. This means you have obstacle avoidance, but you don't have full control over the path that move_base
chooses to reach its goal.
So, what do you want? If you want the robot to drive along a series of waypoints while doing obstacle avoidance, and you don't really care about the exact path the robot chooses, use move_base
. If you want the robot to follow a spline through a series of waypoints, and you care very much about the path being exactly on that spline, but you don't want obstacle avoidance, write your own code that directly publishes to the cmd_vel
topic (see this tutorial).