Planner and stereo vision camera
In the planner algorithm I use, my robot creates a new path against sudden obstacles according to the lidar data and reaches the target via the new path. But even though the stereo vision camera sees the obstacle, it does not update on the road and continues to go over the obstacle. What might be the cause?
[EDIT]
I am using the Neo Local Planner algorithm on the robot. I use stereo vision camera and Lidar as hardware.
1 . I give the target point with "'2D Nav Goal" from the RVIZ environment to make my robot go to the red dot in picture 1.
Image 1: https://pasteboard.co/a8zsIfn7WwYi.jpg
2 . In Picture 2, my robot forms its path with the planner and starts its path in that direction.
Image 2: https://pasteboard.co/xnXHTFwfjx19.jpg
3 . You can see the obstacles that occur when my robot sees the obstacles created by the point cloud data it receives from the camera in the picture 3-4-5, respectively. However, my robot continues on its way without making any turns against these obstacles and crashes into the obstacle.
Image 3: https://pasteboard.co/nsJsfjb9mwLc.jpg
Image 4: https://pasteboard.co/ESvIFsMMwqLI.jpg
Image 5: https://pasteboard.co/gpDn0yiMcMwt.jpg
My parameters are as follows:
common_costmap_params.yaml
obstacle_range : 7.0
raytrace_range : 7.5
max_obstacle_height : 20
footprint: [[-0.375,-0.375],[-0.375,0.375],[0.375,0.375],[0.375,-0.375]]
footprint_padding: 0.01
resolution: 0.05
inflation_layer:
inflation_radius: 0.4
cost_scaling_factor: 25.0
obstacle_layer:
map_type: costmap track_unknown_space: true
observation_persistence: 0.2
observation_persistence_duration: 0.2 min_obstacle_height: 0.1
max_obstacle_heighht: 2.0
observation_sources: laser_scan_sensor point_cloud_voxel_cam1
laser_scan_sensor: {sensor_frame:laser, data_type: LaserScan, topic:scan, marking: true, clearing: true}
point_cloud_voxel_cam1: {sensor_frame: camera1_link, data_type: PointCloud2, topic: /voxel_grid1/output, marking:true, clearing: true}rgbd_obstacle_layer_cam1:
enabled: true voxel_decay: 15.0
decay_model: 0
voxel_size: 0.05
track_unknown_space: true
max_obstacle_height: 1.75
unknown_threshold: 15.0
mark_threshold: 0
update_footprint_enabled: true
combination_method: 1
obstacle_range: 5.0 origin_z: 0.0
publish_voxel_map: true
transform_tolerance: 0.2
mapping_mode: false
map_save_duration: 60.0
observation_sources: rgbd1_mark rgbd1_clearrgbd1_mark:
data_type: PointCloud2 topic: /voxel_grid1/output marking: true clearing: false min_obstacle_height: 0.3 max_obstacle_height: 1.0 expected_update_rate: 0.0 observation_persistence: 0.0 inf_is_valid: false filter: "passthrough" voxel_min_points: 0 clear_after_reading: true
rgbd1_clear:
data_type: PointCloud2 topic: /voxel_grid1/output marking: false clearing: true min_z: 0.3 max_z: 2.0 vertical_fov_angle: 0.8745 horizontal_fov_angle: 1.5 decay_acceleration: 5.0 model_type: 0
local_costmap_params.yaml
local_costmap:
global_frame: odom
robot_base_frame: base_footprintupdate_frequency: 18.0
publish_frequency: 11.0
transform_tolerance: 0.2static_map: true
rolling_window: truewidth: 15 height: 15 origin_x: 0.0
origin_y: 0.0plugins:
- {name: obstacle_layer, type: "costmap_2d::ObstacleLayer"} - {name: rgbd_obstacle_layer_cam1, type: "spatio_temporal_voxel_layer/SpatioTemporalVoxelLayer"} - {name: inflation_layer, type: "costmap_2d::InflationLayer"}
global_costmap_params.yaml
global_costmap:
global_frame: map
robot_base_frame: base_footprintupdate_frequency: 15.0
publish_frequency: 12.0
transform_tolerance: 0.5static_map: true
width: 17
height: 17
plugins: - {name: static_layer, type: "costmap_2d::StaticLayer"} - {name: obstacle_layer, type: "costmap_2d::ObstacleLayer"} - {name: inflation_layer, type: "costmap_2d::InflationLayer"}
neo_planner.yaml
NeoLocalPlanner:
# The x acceleration limit of the robot in meters/sec^2
acc_lim_x : 0.3
# The rotational acceleration ...
You should add some more details to help us understand your problem. Can you edit your question to add some code snippets implementing what you have described? Also a real example with pictures may help!
Question updated.