Compare commits

...

2 Commits

Author SHA1 Message Date
chyoo b9da8b0c30 Tune MKMini Reeds-Shepp navigation 2026-08-19 09:53:09 +09:00
chyoo d23e15c5dc Refine MKMini 2D navigation costmap 2026-08-12 14:05:05 +09:00
2 changed files with 9 additions and 20 deletions
@@ -5,7 +5,10 @@
<root main_tree_to_execute="MainTree">
<BehaviorTree ID="MainTree">
<PipelineSequence name="NavigateToPose">
<RateController hz="1.0">
<!-- Reeds-Shepp direction choices can flip when a car-like path is
recomputed every second. The static Gazebo world only needs a
low-rate refresh while the controller follows the current arc. -->
<RateController hz="0.1">
<ComputePathToPose goal="{goal}" path="{path}" planner_id="GridBased"/>
</RateController>
<FollowPath path="{path}" controller_id="FollowPath"/>
@@ -81,24 +81,10 @@ global_costmap:
footprint: "[ [0.44, 0.42], [0.44, -0.42], [-0.44, -0.42], [-0.44, 0.42] ]"
resolution: 0.05
track_unknown_space: true
plugins: ["static_layer", "obstacle_layer", "inflation_layer"]
plugins: ["static_layer", "inflation_layer"]
static_layer:
plugin: "nav2_costmap_2d::StaticLayer"
map_subscribe_transient_local: True
obstacle_layer:
plugin: "nav2_costmap_2d::ObstacleLayer"
enabled: True
observation_sources: scan
scan:
topic: /scan
max_obstacle_height: 2.0
clearing: True
marking: True
data_type: "LaserScan"
raytrace_max_range: 8.0
raytrace_min_range: 0.0
obstacle_max_range: 6.0
obstacle_min_range: 0.0
inflation_layer:
plugin: "nav2_costmap_2d::InflationLayer"
cost_scaling_factor: 2.0
@@ -121,16 +107,16 @@ planner_server:
max_iterations: 3000000
max_on_approach_iterations: 5000
max_planning_time: 10.0
# Normal navigation should remain forward-only. Reeds-Shepp creates
# forward/reverse cusps that Regulated Pure Pursuit can oscillate on.
motion_model_for_search: "DUBIN"
# Test car-like paths that can reverse to leave constrained spaces.
motion_model_for_search: "REEDS_SHEPP"
angle_quantization_bins: 144
analytic_expansion_ratio: 3.5
analytic_expansion_max_length: 5.0
# tricycle_drive uses a 0.72 m wheelbase with a 0.5 rad steering limit.
# 0.72 / tan(0.5) is 1.32 m; keep a small planning margin.
minimum_turning_radius: 1.35
change_penalty: 0.0
# Prefer a continuous arc over avoidable forward/reverse oscillation.
change_penalty: 1.0
non_straight_penalty: 1.5
cost_penalty: 5.0
retrospective_penalty: 0.1