git commit -m "first commit"

This commit is contained in:
2026-05-28 10:29:58 +07:00
commit 167c52aeb6
2048 changed files with 740251 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Changelog for package mbf_msgs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0.3.2 (2020-05-25)
------------------
* add impassable outcome code for recovery behaviors
* enable different goal tolerance values for each action
0.3.1 (2020-04-07)
------------------
0.3.0 (2020-03-31)
------------------
* add some more error codes, e.g. out of map, or map error
* unify license declaration to BSD-3
0.2.5 (2019-10-11)
------------------
0.2.4 (2019-06-16)
------------------
* Add check_point_cost service
* Change current_twist for last_cmd_vel on exe_path/feedback
0.2.3 (2018-11-14)
------------------
* Add outcome and message to the action's feedback in ExePath and MoveBase
0.2.1 (2018-10-03)
------------------
0.2.0 (2018-09-11)
------------------
* Concurrency for planners, controllers and recovery behaviors
* Adds concurrency slots to actions
0.1.0 (2018-03-22)
------------------
* First release of move_base_flex for kinetic and lunar
ca

View File

@@ -0,0 +1,49 @@
cmake_minimum_required(VERSION 2.8.3)
project(mbf_msgs)
find_package(catkin REQUIRED
COMPONENTS
actionlib_msgs
genmsg
geometry_msgs
message_generation
message_runtime
nav_msgs
std_msgs
)
add_service_files(
DIRECTORY
srv
FILES
CheckPoint.srv
CheckPose.srv
CheckPath.srv
)
add_action_files(
DIRECTORY
action
FILES
GetPath.action
ExePath.action
Recovery.action
MoveBase.action
)
generate_messages(
DEPENDENCIES
actionlib_msgs
geometry_msgs
nav_msgs
std_msgs
)
catkin_package(
CATKIN_DEPENDS
actionlib_msgs
geometry_msgs
message_runtime
nav_msgs
std_msgs
)

View File

@@ -0,0 +1,3 @@
# Move Base Flex Messages, Services and Actions {#mainpage}
This move_base_flex messages package provides the action definition files for the actions GetPath, ExePath, Recovery and MoveBase. The action servers providing these actions are implemented in [mbf_abstract_nav](wiki.ros.org/mbf_abstract_nav).

View File

@@ -0,0 +1,60 @@
# Follow the given path until completion or failure
nav_msgs/Path path
# Controller to use; defaults to the first one specified on "controllers" parameter
string controller
# use different slots for concurrency
uint8 concurrency_slot
# Optionally overrule goal tolerances
bool tolerance_from_action
float32 dist_tolerance
float32 angle_tolerance
---
# Predefined success codes:
uint8 SUCCESS = 0
# 1..9 are reserved as plugin specific non-error results
# Predefined error codes:
uint8 FAILURE = 100 # Unspecified failure, only used for old, non-mfb_core based plugins
uint8 CANCELED = 101
uint8 NO_VALID_CMD = 102
uint8 PAT_EXCEEDED = 103
uint8 COLLISION = 104
uint8 OSCILLATION = 105
uint8 ROBOT_STUCK = 106
uint8 MISSED_GOAL = 107
uint8 MISSED_PATH = 108
uint8 BLOCKED_PATH = 109
uint8 INVALID_PATH = 110
uint8 TF_ERROR = 111
uint8 NOT_INITIALIZED = 112
uint8 INVALID_PLUGIN = 113
uint8 INTERNAL_ERROR = 114
uint8 OUT_OF_MAP = 115 # The start and / or the goal are outside the map
uint8 MAP_ERROR = 116 # The map is not running properly
uint8 STOPPED = 117 # The controller execution has been stopped rigorously.
# 121..149 are reserved as plugin specific errors
uint32 outcome
string message
geometry_msgs/PoseStamped final_pose
float32 dist_to_goal
float32 angle_to_goal
---
# Outcome of most recent controller cycle. Same values as in result
uint32 outcome
string message
float32 dist_to_goal
float32 angle_to_goal
geometry_msgs/PoseStamped current_pose
geometry_msgs/TwistStamped last_cmd_vel # last command calculated by the controller

View File

@@ -0,0 +1,55 @@
# Get a path from start_pose or current position to the target pose
# Use start_pose or current position as the beginning of the path
bool use_start_pose
# The start pose for the path; optional, used if use_start_pose is true
geometry_msgs/PoseStamped start_pose
# The pose to achieve with the path
geometry_msgs/PoseStamped target_pose
# Planner to use; defaults to the first one specified on "planners" parameter
string planner
# use different slots for concurrency
uint8 concurrency_slot
# Optional: how many meters/radians away from the goal can end the created path. The final pose of the
# path must be within tolerance range (position and orientation) for MBF to return a success outcome.
bool tolerance_from_action
float32 dist_tolerance
float32 angle_tolerance
---
# Predefined success codes:
uint8 SUCCESS = 0
# 1..9 are reserved as plugin specific non-error results
# Possible error codes:
uint8 FAILURE = 50 # Unspecified failure, only used for old, non-mfb_core based plugins
uint8 CANCELED = 51 # The action has been canceled by a action client
uint8 INVALID_START = 52 #
uint8 INVALID_GOAL = 53
uint8 NO_PATH_FOUND = 54
uint8 PAT_EXCEEDED = 55
uint8 EMPTY_PATH = 56
uint8 TF_ERROR = 57
uint8 NOT_INITIALIZED = 58
uint8 INVALID_PLUGIN = 59
uint8 INTERNAL_ERROR = 60
uint8 OUT_OF_MAP = 61
uint8 MAP_ERROR = 62
uint8 STOPPED = 63 # The planner execution has been stopped rigorously.
# 71..99 are reserved as plugin specific errors
uint32 outcome
string message
nav_msgs/Path path
float64 cost
---

View File

@@ -0,0 +1,60 @@
# Extension of move_base_msgs/MoveBase action, with more detailed result
# and feedback and the possibility to specify lists of applicable plugins
geometry_msgs/PoseStamped target_pose
# Controller to use; defaults to the first one specified on "controllers" parameter
string controller
# Planner to use; defaults to the first one specified on "planners" parameter
string planner
# Recovery behaviors to try on case of failure; defaults to the "recovery_behaviors" parameter value
string[] recovery_behaviors
# Optionally overrule controller's goal tolerances
bool tolerance_from_action
float32 dist_tolerance
float32 angle_tolerance
---
# Predefined success codes:
uint8 SUCCESS = 0
# Predefined general error codes:
uint8 FAILURE = 10
uint8 CANCELED = 11
uint8 COLLISION = 12
uint8 OSCILLATION = 13
uint8 START_BLOCKED = 14
uint8 GOAL_BLOCKED = 15
uint8 TF_ERROR = 16
uint8 INTERNAL_ERROR = 17
# 21..49 are reserved for future general error codes
# Planning/controlling failures:
uint8 PLAN_FAILURE = 50
# 51..99 are reserved as planner specific errors
uint8 CTRL_FAILURE = 100
# 101..149 are reserved as controller specific errors
uint32 outcome
string message
# Configuration upon action completion
float32 dist_to_goal
float32 angle_to_goal
geometry_msgs/PoseStamped final_pose
---
# Outcome of most recent controller cycle. Same values as in MoveBase or ExePath result.
uint32 outcome
string message
float32 dist_to_goal
float32 angle_to_goal
geometry_msgs/PoseStamped current_pose
geometry_msgs/TwistStamped last_cmd_vel # last command calculated by the controller

View File

@@ -0,0 +1,30 @@
# Run one of the recovery behavior listed on recovery_behaviors parameter
string behavior
# use different slots for concurrency
uint8 concurrency_slot
---
# Predefined success codes:
uint8 SUCCESS = 0
# Possible server codes:
uint8 FAILURE = 150
uint8 CANCELED = 151
uint8 PAT_EXCEEDED = 152
uint8 TF_ERROR = 153
uint8 NOT_INITIALIZED = 154
uint8 INVALID_PLUGIN = 155
uint8 INTERNAL_ERROR = 156
uint8 STOPPED = 157 # The recovery behaviour execution has been stopped rigorously.
uint8 IMPASSABLE = 158 # Further execution would lead to a collision
# 171..199 are reserved as plugin specific errors
uint32 outcome
string message
string used_plugin
---

View File

@@ -0,0 +1,29 @@
<package>
<name>mbf_msgs</name>
<version>0.3.2</version>
<description>
The move_base_flex messages package providing the action definition files for the action GetPath, ExePath, Recovery and MoveBase. The action servers providing these action are implemented in <a href="http://wiki.ros.org/mbf_abstract_nav">mbf_abstract_nav</a>.
</description>
<author email="santos@magazino.eu">Jorge Santos</author>
<author email="spuetz@uni-osnabrueck.de">Sebastian Pütz</author>
<maintainer email="santos@magazino.eu">Jorge Santos</maintainer>
<maintainer email="spuetz@uos.de">Sebastian Pütz</maintainer>
<license>BSD-3</license>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>std_msgs</build_depend>
<build_depend>nav_msgs</build_depend>
<build_depend>geometry_msgs</build_depend>
<build_depend>actionlib_msgs</build_depend>
<build_depend>genmsg</build_depend>
<build_depend>message_runtime</build_depend>
<build_depend>message_generation</build_depend>
<run_depend>std_msgs</run_depend>
<run_depend>nav_msgs</run_depend>
<run_depend>geometry_msgs</run_depend>
<run_depend>actionlib_msgs</run_depend>
<run_depend>message_runtime</run_depend>
</package>

View File

@@ -0,0 +1,24 @@
uint8 LOCAL_COSTMAP = 1
uint8 GLOBAL_COSTMAP = 2
nav_msgs/Path path # the path to be checked after transforming to costmap frame
float32 safety_dist # minimum distance allowed to the closest obstacle (footprint padding)
float32 lethal_cost_mult # cost multiplier for cells marked as lethal obstacle (zero is ignored)
float32 inscrib_cost_mult # cost multiplier for cells marked as inscribed obstacle (zero is ignored)
float32 unknown_cost_mult # cost multiplier for cells marked as unknown space (zero is ignored)
uint8 costmap # costmap in which to check the pose
uint8 return_on # abort check on finding a pose with this state or worse (zero is ignored)
uint8 skip_poses # skip this number of poses between checks, to speedup processing
bool path_cells_only # check only cells directly traversed by the path, ignoring robot footprint
# (if true, safety_dist is ignored)
---
uint8 FREE = 0 # robot is completely in traversable space
uint8 INSCRIBED = 1 # robot is partially in inscribed space
uint8 LETHAL = 2 # robot is partially in collision
uint8 UNKNOWN = 3 # robot is partially in unknown space
uint8 OUTSIDE = 4 # robot is completely outside the map
uint32 last_checked # index of the first pose along the path with return_on state or worse
uint8 state # path worst state (until last_checked): FREE, INFLATED, LETHAL, UNKNOWN...
uint32 cost # cost of all cells traversed by path within footprint padded by safety_dist
# or just by the path if path_cells_only is true

View File

@@ -0,0 +1,14 @@
uint8 LOCAL_COSTMAP = 1
uint8 GLOBAL_COSTMAP = 2
geometry_msgs/PointStamped point # the point to be checked after transforming to costmap frame
uint8 costmap # costmap in which to check the point
---
uint8 FREE = 0 # point is in traversable space
uint8 INSCRIBED = 1 # point is in inscribed space
uint8 LETHAL = 2 # point is in collision
uint8 UNKNOWN = 3 # point is in unknown space
uint8 OUTSIDE = 4 # point is outside the map
uint8 state # point state: FREE, INFLATED, LETHAL, UNKNOWN or OUTSIDE
uint32 cost # cost of the cell at point

View File

@@ -0,0 +1,19 @@
uint8 LOCAL_COSTMAP = 1
uint8 GLOBAL_COSTMAP = 2
geometry_msgs/PoseStamped pose # the pose to be checked after transforming to costmap frame
float32 safety_dist # minimum distance allowed to the closest obstacle
float32 lethal_cost_mult # cost multiplier for cells marked as lethal obstacle (zero is ignored)
float32 inscrib_cost_mult # cost multiplier for cells marked as inscribed obstacle (zero is ignored)
float32 unknown_cost_mult # cost multiplier for cells marked as unknown space (zero is ignored)
uint8 costmap # costmap in which to check the pose
bool current_pose # check current robot pose instead (ignores pose field)
---
uint8 FREE = 0 # robot is completely in traversable space
uint8 INSCRIBED = 1 # robot is partially in inscribed space
uint8 LETHAL = 2 # robot is partially in collision
uint8 UNKNOWN = 3 # robot is partially in unknown space
uint8 OUTSIDE = 4 # robot is completely outside the map
uint8 state # pose state: FREE, INFLATED, LETHAL, UNKNOWN or OUTSIDE
uint32 cost # total cost of all cells within footprint padded by safety_dist