Simple behaviors using move_base without planner ?
Helllo,
I have a base_controller for my robot. I want to generate some simples behavior (turn 90°, move slowly 1 meter backward ...).
Until now, I was using navigation_stack alongside TEB_local_planner to move my robot. I feel like this stack is too heavy given the simple behavior I want to implement.
I am currently developping a very simple "odom based controller" which apply constant cmd_vel and watch the odom to know when to stop.
Are you aware of some piece of code that would fit my requirements? I have found this repo which may contain some interesting stuff but I am not sure to understand what is it for...
Thanks!
Do you want the robot to avoid obstacles why turning or moving backward?
No (I do use some range sensors though).
In this case I would skip the navigation stack. The question is why? There can always be an unexpected obstacle behind your robot you would just driver over in this case.
Thank you for your comments! I will go for a simple "odom based control loop" (basically send cmd_vel until odom say we reached the goal).
To answer the "why" question : because I need it ! That's just 1 of many way of moving of my robot. I do filter the velocity command based on range sensor, but I don't want to "try to avoid them by calculating a valid path arround it". If anyone is reading this and have implemented it some other way feel free to answer :-)
It sounds like you just want a node publishing to
/cmd_vel
and subscribed to/odom
, and that node should have a method for each type of movement, which publishes a constant command until the/odom
data neets some condition. Is that right? If so, I don't know of a specific implementation, but it should be fairly straightforward to implement yourself working from the publisher/subscriber tutorials. If I have missed your point, my apologies, but please clarify. Are you trying to implement this as a plugin fornavigation
?FYI this would have been the answer I was looking for : ros-controls