feat: support Yahboom in shared Nav2 control
This commit is contained in:
@@ -0,0 +1,112 @@
|
|||||||
|
# Yahboom Pi5 differential-drive profile. Vehicle owns /scan, /odom and TF.
|
||||||
|
controller_server:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: false
|
||||||
|
controller_frequency: 20.0
|
||||||
|
min_x_velocity_threshold: 0.001
|
||||||
|
min_y_velocity_threshold: 0.0
|
||||||
|
min_theta_velocity_threshold: 0.001
|
||||||
|
failure_tolerance: 0.5
|
||||||
|
progress_checker_plugin: progress_checker
|
||||||
|
goal_checker_plugins: [goal_checker]
|
||||||
|
controller_plugins: [FollowPath]
|
||||||
|
progress_checker:
|
||||||
|
plugin: nav2_controller::SimpleProgressChecker
|
||||||
|
required_movement_radius: 0.08
|
||||||
|
movement_time_allowance: 10.0
|
||||||
|
goal_checker:
|
||||||
|
plugin: nav2_controller::SimpleGoalChecker
|
||||||
|
xy_goal_tolerance: 0.15
|
||||||
|
yaw_goal_tolerance: 0.2
|
||||||
|
stateful: true
|
||||||
|
FollowPath:
|
||||||
|
plugin: dwb_core::DWBLocalPlanner
|
||||||
|
debug_trajectory_details: false
|
||||||
|
min_vel_x: -0.05
|
||||||
|
max_vel_x: 0.2
|
||||||
|
max_vel_theta: 1.0
|
||||||
|
min_speed_xy: 0.0
|
||||||
|
max_speed_xy: 0.2
|
||||||
|
acc_lim_x: 1.5
|
||||||
|
decel_lim_x: -1.5
|
||||||
|
acc_lim_theta: 3.2
|
||||||
|
decel_lim_theta: -3.2
|
||||||
|
vx_samples: 20
|
||||||
|
vtheta_samples: 20
|
||||||
|
sim_time: 1.7
|
||||||
|
transform_tolerance: 0.2
|
||||||
|
xy_goal_tolerance: 0.15
|
||||||
|
trans_stopped_velocity: 0.05
|
||||||
|
short_circuit_trajectory_evaluation: true
|
||||||
|
stateful: true
|
||||||
|
critics: [RotateToGoal, Oscillation, BaseObstacle, GoalAlign, PathAlign, PathDist, GoalDist]
|
||||||
|
BaseObstacle.scale: 0.02
|
||||||
|
PathAlign.scale: 24.0
|
||||||
|
PathAlign.forward_point_distance: 0.1
|
||||||
|
GoalAlign.scale: 18.0
|
||||||
|
GoalAlign.forward_point_distance: 0.1
|
||||||
|
PathDist.scale: 24.0
|
||||||
|
GoalDist.scale: 18.0
|
||||||
|
RotateToGoal.scale: 24.0
|
||||||
|
RotateToGoal.slowing_factor: 5.0
|
||||||
|
RotateToGoal.lookahead_time: -1.0
|
||||||
|
|
||||||
|
local_costmap:
|
||||||
|
local_costmap:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: false
|
||||||
|
global_frame: odom
|
||||||
|
robot_base_frame: base_footprint
|
||||||
|
rolling_window: true
|
||||||
|
width: 3
|
||||||
|
height: 3
|
||||||
|
resolution: 0.05
|
||||||
|
footprint: "[[-0.165,-0.08],[-0.165,0.08],[0.125,0.08],[0.125,-0.08]]"
|
||||||
|
update_frequency: 5.0
|
||||||
|
publish_frequency: 2.0
|
||||||
|
plugins: [obstacle_layer, inflation_layer]
|
||||||
|
obstacle_layer:
|
||||||
|
plugin: nav2_costmap_2d::ObstacleLayer
|
||||||
|
observation_sources: scan
|
||||||
|
scan:
|
||||||
|
topic: /scan
|
||||||
|
data_type: LaserScan
|
||||||
|
marking: true
|
||||||
|
clearing: true
|
||||||
|
max_obstacle_height: 1.0
|
||||||
|
inflation_layer:
|
||||||
|
plugin: nav2_costmap_2d::InflationLayer
|
||||||
|
inflation_radius: 0.30
|
||||||
|
cost_scaling_factor: 3.0
|
||||||
|
|
||||||
|
behavior_server:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: false
|
||||||
|
costmap_topic: local_costmap/costmap_raw
|
||||||
|
footprint_topic: local_costmap/published_footprint
|
||||||
|
cycle_frequency: 10.0
|
||||||
|
behavior_plugins: [backup, drive_on_heading, wait]
|
||||||
|
backup:
|
||||||
|
plugin: nav2_behaviors/BackUp
|
||||||
|
drive_on_heading:
|
||||||
|
plugin: nav2_behaviors/DriveOnHeading
|
||||||
|
wait:
|
||||||
|
plugin: nav2_behaviors/Wait
|
||||||
|
global_frame: odom
|
||||||
|
robot_base_frame: base_footprint
|
||||||
|
transform_tolerance: 0.2
|
||||||
|
|
||||||
|
velocity_smoother:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: false
|
||||||
|
smoothing_frequency: 20.0
|
||||||
|
scale_velocities: false
|
||||||
|
feedback: OPEN_LOOP
|
||||||
|
max_velocity: [0.2, 0.0, 1.0]
|
||||||
|
min_velocity: [-0.05, 0.0, -1.0]
|
||||||
|
max_accel: [1.5, 0.0, 3.2]
|
||||||
|
max_decel: [-1.5, 0.0, -3.2]
|
||||||
|
odom_topic: /odom
|
||||||
|
odom_duration: 0.1
|
||||||
|
deadband_velocity: [0.0, 0.0, 0.0]
|
||||||
|
velocity_timeout: 1.0
|
||||||
@@ -0,0 +1,112 @@
|
|||||||
|
# Yahboom Pi5 differential-drive profile. Vehicle owns /scan, /odom and TF.
|
||||||
|
controller_server:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: true
|
||||||
|
controller_frequency: 20.0
|
||||||
|
min_x_velocity_threshold: 0.001
|
||||||
|
min_y_velocity_threshold: 0.0
|
||||||
|
min_theta_velocity_threshold: 0.001
|
||||||
|
failure_tolerance: 0.5
|
||||||
|
progress_checker_plugin: progress_checker
|
||||||
|
goal_checker_plugins: [goal_checker]
|
||||||
|
controller_plugins: [FollowPath]
|
||||||
|
progress_checker:
|
||||||
|
plugin: nav2_controller::SimpleProgressChecker
|
||||||
|
required_movement_radius: 0.08
|
||||||
|
movement_time_allowance: 10.0
|
||||||
|
goal_checker:
|
||||||
|
plugin: nav2_controller::SimpleGoalChecker
|
||||||
|
xy_goal_tolerance: 0.15
|
||||||
|
yaw_goal_tolerance: 0.2
|
||||||
|
stateful: true
|
||||||
|
FollowPath:
|
||||||
|
plugin: dwb_core::DWBLocalPlanner
|
||||||
|
debug_trajectory_details: false
|
||||||
|
min_vel_x: -0.05
|
||||||
|
max_vel_x: 0.2
|
||||||
|
max_vel_theta: 1.0
|
||||||
|
min_speed_xy: 0.0
|
||||||
|
max_speed_xy: 0.2
|
||||||
|
acc_lim_x: 1.5
|
||||||
|
decel_lim_x: -1.5
|
||||||
|
acc_lim_theta: 3.2
|
||||||
|
decel_lim_theta: -3.2
|
||||||
|
vx_samples: 20
|
||||||
|
vtheta_samples: 20
|
||||||
|
sim_time: 1.7
|
||||||
|
transform_tolerance: 0.2
|
||||||
|
xy_goal_tolerance: 0.15
|
||||||
|
trans_stopped_velocity: 0.05
|
||||||
|
short_circuit_trajectory_evaluation: true
|
||||||
|
stateful: true
|
||||||
|
critics: [RotateToGoal, Oscillation, BaseObstacle, GoalAlign, PathAlign, PathDist, GoalDist]
|
||||||
|
BaseObstacle.scale: 0.02
|
||||||
|
PathAlign.scale: 24.0
|
||||||
|
PathAlign.forward_point_distance: 0.1
|
||||||
|
GoalAlign.scale: 18.0
|
||||||
|
GoalAlign.forward_point_distance: 0.1
|
||||||
|
PathDist.scale: 24.0
|
||||||
|
GoalDist.scale: 18.0
|
||||||
|
RotateToGoal.scale: 24.0
|
||||||
|
RotateToGoal.slowing_factor: 5.0
|
||||||
|
RotateToGoal.lookahead_time: -1.0
|
||||||
|
|
||||||
|
local_costmap:
|
||||||
|
local_costmap:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: true
|
||||||
|
global_frame: odom
|
||||||
|
robot_base_frame: base_footprint
|
||||||
|
rolling_window: true
|
||||||
|
width: 3
|
||||||
|
height: 3
|
||||||
|
resolution: 0.05
|
||||||
|
footprint: "[[-0.165,-0.08],[-0.165,0.08],[0.125,0.08],[0.125,-0.08]]"
|
||||||
|
update_frequency: 5.0
|
||||||
|
publish_frequency: 2.0
|
||||||
|
plugins: [obstacle_layer, inflation_layer]
|
||||||
|
obstacle_layer:
|
||||||
|
plugin: nav2_costmap_2d::ObstacleLayer
|
||||||
|
observation_sources: scan
|
||||||
|
scan:
|
||||||
|
topic: /scan
|
||||||
|
data_type: LaserScan
|
||||||
|
marking: true
|
||||||
|
clearing: true
|
||||||
|
max_obstacle_height: 1.0
|
||||||
|
inflation_layer:
|
||||||
|
plugin: nav2_costmap_2d::InflationLayer
|
||||||
|
inflation_radius: 0.30
|
||||||
|
cost_scaling_factor: 3.0
|
||||||
|
|
||||||
|
behavior_server:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: true
|
||||||
|
costmap_topic: local_costmap/costmap_raw
|
||||||
|
footprint_topic: local_costmap/published_footprint
|
||||||
|
cycle_frequency: 10.0
|
||||||
|
behavior_plugins: [backup, drive_on_heading, wait]
|
||||||
|
backup:
|
||||||
|
plugin: nav2_behaviors/BackUp
|
||||||
|
drive_on_heading:
|
||||||
|
plugin: nav2_behaviors/DriveOnHeading
|
||||||
|
wait:
|
||||||
|
plugin: nav2_behaviors/Wait
|
||||||
|
global_frame: odom
|
||||||
|
robot_base_frame: base_footprint
|
||||||
|
transform_tolerance: 0.2
|
||||||
|
|
||||||
|
velocity_smoother:
|
||||||
|
ros__parameters:
|
||||||
|
use_sim_time: true
|
||||||
|
smoothing_frequency: 20.0
|
||||||
|
scale_velocities: false
|
||||||
|
feedback: OPEN_LOOP
|
||||||
|
max_velocity: [0.2, 0.0, 1.0]
|
||||||
|
min_velocity: [-0.05, 0.0, -1.0]
|
||||||
|
max_accel: [1.5, 0.0, 3.2]
|
||||||
|
max_decel: [-1.5, 0.0, -3.2]
|
||||||
|
odom_topic: /odom
|
||||||
|
odom_duration: 0.1
|
||||||
|
deadband_velocity: [0.0, 0.0, 0.0]
|
||||||
|
velocity_timeout: 1.0
|
||||||
@@ -15,7 +15,7 @@ from nav2_common.launch import RewrittenYaml
|
|||||||
ARGUMENTS = [
|
ARGUMENTS = [
|
||||||
DeclareLaunchArgument('sim_mode', default_value='true'),
|
DeclareLaunchArgument('sim_mode', default_value='true'),
|
||||||
DeclareLaunchArgument('log_level', default_value='info'),
|
DeclareLaunchArgument('log_level', default_value='info'),
|
||||||
DeclareLaunchArgument('robot', default_value='turtlebot3', choices=['mkmini', 'fr09', 'turtlebot3']),
|
DeclareLaunchArgument('robot', default_value='turtlebot3', choices=['mkmini', 'fr09', 'turtlebot3', 'yahboom']),
|
||||||
DeclareLaunchArgument('level', default_value='2d'),
|
DeclareLaunchArgument('level', default_value='2d'),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user