Laserscan data does not match the static map
I'm working on an Odroid XU4, have the navigation running and using the RPLIDAR A1 with its rplidar_ros package. I use a static map with the size of 100 x 125 pixel and a resolution of 0.05 meter/pixel. When I localize my robot in the map the laserscan data does not match the static map, so the points are beyond the walls in the map. Additionally the walls as displayed by the lidar are a little bit curved even though they should be straight. What did I miss?
These are my config files:
costmap_common_params.yaml
obstacle_range: 2.5
raytrace_range: 3.0
footprint: [[-0.170, -0.220], [-0.170, 0.220], [0.170, 0.220], [0.170, -0.220]]
inflation_radius: 0.30
global_costmap_params.yaml
global_costmap:
global_frame: /map
robot_base_link: base_link
update_frequency: 1.0
publish_frequency: 0.5
static_map: true
rolling_window: false
map_type: costmap
plugins:
- {name: slam_map, type: "costmap_2d::StaticLayer"}
slam_map:
subscribe_to_updates: true
trinary_costmap: false
local_costmap_params.yaml
local_costmap:
global_frame: odom
robot_base_frame: base_link
update_frequency: 1.0
publish_frequency: 0.5
static_map: false
rolling_window: true
width: 4.0
height: 4.0
resolution: 0.05
map_type: costmap
plugins:
- {name: laser_scanner, type: "costmap_2d::ObstacleLayer"}
- {name: inflation, type: "costmap_2d::InflationLayer"}
laser_scanner:
observation_sources: rplidar
rplidar: {sensor_frame: laser, data_type: LaserScan, topic: scan, expected_update_rate: 1.5, observation_persistence: 0.0, marking: true, clearing: true, inf_is_valid: true}
Map.yaml
image: Map.pgm
resolution: 0.050000
origin: [0.000000, 0.000000, 0.000000]
occupied_thresh: 0.65
free_thresh: 0.196
negate: 0
I think I am facing similar problems. Were you able to figure this out?
No not really. I had some problems with my odometry. Optimizing that helped but the curved lines were still there.
Is the problem solved. i'm having a similar problem