-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
We probably shouldn't be having anything except the controller send velocity commands to the base, or else we end up with a number of async or fighting issues. Having a separate server to process these commands seems a little unnecessary and adds to the complexity of the project. I think a good goal is to make sure anything touching the cmd_vel should be handled through their the controller or defined recoveries (where I'm personally of the opinion that the recoveries themselves should actually call controller methods).
I propose that the actions of spinning, backup, stop can remain, but they should be header primatives for the controller and recoveries to use, not act as a separate server. For things like stop or backup, I think we'd be fine just removing those primatives altogether as backup should really only be called in 1 particular recovery case (probably doesnt have use else where) and stop is just sending an empty Twist() it might be overkill to try to separate that out.
The project is starting to get a little hard to follow and this is a relatively simple but high impact way of simplifying the uses. Lets discuss below